Ability to  Cordon/Drain Nodes

Add in what draining nodes means

Cordon, uncordon and drain nodes work similarly to how they do in the native version of Kubernetes (https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/#use-kubectl-drain-to-remove-a-node-from-service). However, rancher adds a few more state definitions for the node.
A brief introduction to each of these actions and state transitions for the node -
These actions are only available on worker nodes.
Cordon -
A node usually stays in "active" state if things are functioning properly. When you want no new pods to get scheduled on this node anymore, you select "cordon" option on the node and it goes into "cordoned" state.
Drain -
When you want the existing pods on this node to get evicted and move to some other node (satisfying other constraints on remaining "active" nodes), you select the "drain" option on node.
You can drain the node when it's either in "active" or "cordoned" state. If you drain the node from "active" state, it'll first go to "cordoned" state and then start the draining process. This means that in addition to moving the existing pods, no new pods will be scheduled on this node.
You can set a couple of options while choosing this action :=

Even if there are pods not managed by a ReplicationController, ReplicaSet, Job, DaemonSet or StatefulSet.
These kind of pods won't get rescheduled to a new node, since they do not have a controller. Kubernetes expects you to have your own logic that handles the deletion of these pods. Kubernetes forces you to choose this option (which will delete/evict these pods) or drain won't proceed.

Even if there are DaemonSet-managed pods.
Similar to above, if you have any daemonsets, drain would proceed only if this options is selected. Even when this option is on, pods won't be deleted since they'll immediately be replaced.  On startup, Rancher currently has a few daemonsets running by default in the system, so this option is turned on by default.

Even if there are pods using emptyDir.
If a pod uses emptyDir to store local data, it might be not be safe to delete it, since the data in the emptyDir will be deleted once the pod is removed from the node. Similar to the first option, Kubernetes expects the implementation to decide what to do with these pods. Choosing this option will delete these pods.

Grace Period
Grace period is the timeout given to each pod for cleaning things up, so they will have chance to exit gracefully. For example, when pods might need to finish any outstanding requests, roll back transactions or save state to some external storage. If negative, the default value specified in the pod will be used.

Timeout
Timeout is the amount of time drain should continue to wait before giving up. (A known issue to this in 2.1 is kubectl currently doesn't respect this timeout (https://github.com/kubernetes/kubernetes/pull/64378)). This would be fixed in later versions, once Kubernetes 1.12 is released.

If there's any error related to drain input options and requires you to change some input value, you'll see that the node goes into "cordoned" state since the drain failed. You can either chose to give proper values again by selecting "drain" again or "uncordon" the node.
After this, the node is marked into "draining" state. You'll have the option to "stop drain" at any point when the node is "draining". This will stop the ongoing drain process and the node will go into "cordoned" state.
Once drain successfully completes, the node will be makred as "drained". You can then power off or delete the node.
Uncordon -
You can "uncordon" the node when it is in either "cordoned" or "drained" state, since both the states allow no new pods to be scheduled on a node. "Uncordon" makes the node schedulable again and marks is as "active".

@MBishop17 let me know the changes needed and if this requires more information, thank you!

Will do Kinara. Thanks for drafting it 😊
From: Kinara Shah<EMAIL_ADDRESS>Reply-To: rancher/docs<EMAIL_ADDRESS>Date: Monday, September 17, 2018 at 11:49 AM
To: rancher/docs<EMAIL_ADDRESS>Cc: Mark Bishop<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [rancher/docs] Ability to Cordon/Drain Nodes (#669)
@MBishop17https://github.com/MBishop17 let me know the changes needed and if this requires more information, thank you!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/rancher/docs/issues/669#issuecomment-422128117, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AkDxfH7PVtkObGWn_N5XJTreFbgLo2E2ks5ub-62gaJpZM4WK0mg.


Add #add_envelope_signers method

Adding signer recipients is a feature we needed in a project. The docs describe several other envelope recipient types beside signers, but we didn't need them, so this change does not attempt to handle these other types.
I noted in the comments that making this more general to add other recipient types is a possibility; it looks like #61 was heading in that direction but hasn't seen any activity in several months.

Merged, thanks Dan!


Add EDA App

Description
What title says
Issue(s) addressed

fixes #<issue_number>
fixes JCSDA/soca-bundle/issues/<issue_number>

Testing

How were these changes tested?
Not tested yet, work in progress

What compilers / HPCs was it tested with?
Orion intel

Are the changes covered by ctests? (If not, tests should be added first.)
Not yet

Still need to add tests etc hence just a draft PR

closing, as this is reaalllly old. We'll reopen when we start to focus on EDA


When creating a route respect the default key that was being checked, also add a new key 'notFound' to create a NotFoundRoute

Hey @natew,
First off, this is such an awesome project! Thank you so much for putting so much effort into it, it saved me a good week to just grab a setup and just go.
So, using reapp-routes I saw there was a check for route.default. I assume that at one time this was passed via opts? I also added support for notFound.
However, I don't think this is right since you should only be able to set one at time. Should I change this to be 'type' and the caller can pass a const? I am impartial how it is done, as long as the API allows it.

Hey @Sean-Der, thank you. It's the results of months of trying to figure out how to piece it all together, so I'm happy people are using it.
I see what you mean. Perhaps @ryanflorence or @mjackson would have thoughts on the syntax:
now:
  route('app',
    route('page', { default: true})
    route('404', { notFound: true })
  )

potentially:
route('404', { type: route.default })

or (with more functions):
defaultRoute('404')

Also, should only be one notFound and only one Default (per-parent). We could handle this in the React way (detect if wrong programmatically and warn).

Personally I like
route('404', { type: route.DEFAULT })
But I might be biased (since that is the first thing that came to my mind).
However, I am really not in tune with idiomatic ES6 patterns just yet, so that might not be right.
Also, when I update the PR I will make sure to include warns! Thanks for grabbing this so fast.

@natew what do you think of this syntax instead? The PR has been updated with this behavior
 import {notFoundRoute, defaultRoute} from 'reapp-routes';

  module.exports = ({ routes, route }) =>
    routes({dir: 'views'}, require,
      route('wrapper', '/', { dir: '' },
        route('home', {type: defaultRoute}),
        route('login'),
        route('404', {type: notFoundRoute})
      )
    );

I like it but I have one worry. I'd want the syntax to not require a new import, which should work with your changes as is like this:
  module.exports = ({ routes, route, defaultRoute, notFoundRoute }) =>
    routes({dir: 'views'}, require,
      route('wrapper', '/', { dir: '' },
        route('home', {type: defaultRoute}),
        route('login'),
        route('404', {type: notFoundRoute})
      )
    );

Which to me is a little confusing, people may try using defaultRoute or notFoundRoute as functions. Which brings me back to the {type: route.default}. Or maybe:
  module.exports = ({ routes, route, type }) =>
    routes({dir: 'views'}, require,
      route('wrapper', '/', { dir: '' },
        route('home', {type: type.default}),
        route('login'),
        route('404', {type: type.notFound})
      )
    );

Another idea, since we are making this library automate and DRY things, is to infer automatically. Perhaps the first route in the list is the "default", and any route named "404" is automatically noFound. To me this verges on "too magical" though, but who knows.
@ryanflorence mentioned working on these features for react-router so would be good to get his opinion on it as well.  Though I like that this library is decoupled from it in a way.
Another thing I need to do is get the syntax better for changing the default dir. To me the orders wrong and the need for the first route to use { dir: '' } is unnecessary. Next time I get some  extra time I'll check it out.

A final option would be to allow types directly, but this requires more argument shifting logic on our end (does typeof arg === Symbol` work with babel?):
  module.exports = ({ routes, route, type }) =>
    routes({dir: 'views'}, require,
      route('wrapper', '/', { dir: '' },
        route('home', type.default),
        route('login'),
        route('404', type.notFound)
      )
    );

Oh I really like the argument shifting logic if we get typeof arg === 'Symbol' !
I agree with you on automatic route type setting being 'too magical' it would be really annoying to get bit by that magic. I don't think it would add that much documentation if there was just a block that said 'there are the route types available, their behavior and how to set them'
thanks for looking at this! and will watch out for @ryanflorence input, and update the PR as needed

By the way I found a bug that was preventing the current method from working and pushed a fix today, so this should work:
route('name', { default: true })


WebHook support for gitlab.org

Example payload:
{
  "before": "95790bf891e76fee5e1747ab589903a6a1f80f22",
  "after": "da1560886d4f094c3e6c9ef40349f7d38b5d27d7",
  "ref": "refs/heads/master",
  "user_id": 4,
  "user_name": "John Smith",
  "repository": {
    "name": "Diaspora",
    "url": "git@localhost:diaspora.git",
    "description": "",
    "homepage": "http://localhost/diaspora",
  },
  "commits": [
    {
      "id": "b6568db1bc1dcd7f8b4d5a946b0b91f9dacd7327",
      "message": "Update Catalan translation to e38cb41.",
      "timestamp": "2011-12-12T14:27:31+02:00",
      "url": "http://localhost/diaspora/commits/b6568db1bc1dcd7f8b4d5a946b0b91f9dacd7327",
      "author": {
        "name": "Jordi Mallach",
        "email"<EMAIL_ADDRESS>      }
    },
    // ...
    {
      "id": "da1560886d4f094c3e6c9ef40349f7d38b5d27d7",
      "message": "fixed readme",
      "timestamp": "2012-01-03T23:36:29+02:00",
      "url": "http://localhost/diaspora/commits/da1560886d4f094c3e6c9ef40349f7d38b5d27d7",
      "author": {
        "name": "GitLab dev user",
        "email": "gitlabdev@dv6700.(none)",
      },
    },
  ],
  "total_commits_count": 4,
};

GitLab support would be great! Has there been any consideration for this since the issue opened?

@jameswritescode I'm personally probably not going to add support, but would gladly merge it if it was contributed.

@TkTech Can you consider this, please? GitLab.com is pretty nice compared to the likes of Bitbucket and it offers free private repos, which is nice.

Notifico is open source, PRs accepted :)

This should be very similiar to Github. Might even just work with the Github hooks, haven't really looked into the details.
Could probably be done by inheriting from the Github hook and only implementing handle_request.

No idea, but I would appreciate you looking into this. My other solution is GitLab--> Slack --> IRC and it's rather clunky.

Great, it works nice. BTW, do you please plan to deploy this support into http://n.tkte.ch/? Thanks!

Bump. @TkTech


Removed controls animation during transitions

Removed controls animation during transitions
I've added a new flag - controlsAnimationEnabled that now will depend on:

uiProps value;
isAppeared - if the view has appeared ;
isTransition - if current changes in layout are not triggered by transition.

Broken:

Fixed:

I'm looking forward to approval.


rust-tools: hover_with_actions is deprecated, please setup a keybind to :RustHoverActions is on_attach instead

this error appeared since the last update and I have no idea how to make it disappear, tried adding a keybind using noremap, didnt work
nvim version = v0.7.2

What does your setup look like?

init.vim
`lua require('config')
call plug#begin()
Plug 'andweeb/presence.nvim'
Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'neovim/nvim-lspconfig'
Plug 'simrat39/rust-tools.nvim'
Plug 'hrsh7th/nvim-cmp'
Plug 'hrsh7th/cmp-nvim-lsp'
Plug 'hrsh7th/cmp-vsnip'
Plug 'hrsh7th/cmp-path'
Plug 'hrsh7th/cmp-buffer'
Plug 'hrsh7th/vim-vsnip'
call plug#end()
lua require'lspconfig'.rust_analyzer.setup({})
" Set completeopt to have a better completion experience
" :help completeopt
" menuone: popup even when there's only one match
" noinsert: Do not insert text until a selection is made
" noselect: Do not select, force user to select one from the menu
set completeopt=menuone,noinsert,noselect
" Avoid showing extra messages when using completion
set shortmess+=c
" Configure LSP through rust-tools.nvim plugin.
" rust-tools will configure and enable certain LSP features for us.
" See https://github.com/simrat39/rust-tools.nvim#configuration
lua <<EOF
local nvim_lsp = require'lspconfig'
local opts = {
tools = { -- rust-tools options
autoSetHints = true,
hover_with_actions = false,
inlay_hints = {
show_parameter_hints = false,
parameter_hints_prefix = "",
other_hints_prefix = "",
},
},
-- all the opts to send to nvim-lspconfig
-- these override the defaults set by rust-tools.nvim
-- see https://github.com/neovim/nvim-lspconfig/blob/master/doc/server_configurations.md#rust_analyzer
server = {
    -- on_attach is a callback called when the language server attachs to the buffer
    -- on_attach = on_attach,
    settings = {
        -- to enable rust-analyzer settings visit:
        -- https://github.com/rust-analyzer/rust-analyzer/blob/master/docs/user/generated_config.adoc
        ["rust-analyzer"] = {
            -- enable clippy on save
            checkOnSave = {
                command = "clippy"
            },
        }
    }
},

}
require('rust-tools').setup(opts)
EOF
" Setup Completion
" See https://github.com/hrsh7th/nvim-cmp#basic-configuration
lua <<EOF
local cmp = require'cmp'
cmp.setup({
-- Enable LSP snippets
snippet = {
expand = function(args)
vim.fn"vsnip#anonymous"
end,
},
mapping = {
[''] = cmp.mapping.select_prev_item(),
[''] = cmp.mapping.select_next_item(),
-- Add tab support
[''] = cmp.mapping.select_prev_item(),
[''] = cmp.mapping.select_next_item(),
[''] = cmp.mapping.scroll_docs(-4),
[''] = cmp.mapping.scroll_docs(4),
[''] = cmp.mapping.complete(),
[''] = cmp.mapping.close(),
[''] = cmp.mapping.confirm({
behavior = cmp.ConfirmBehavior.Insert,
select = true,
})
},
-- Installed sources
sources = {
{ name = 'nvim_lsp' },
{ name = 'vsnip' },
{ name = 'path' },
{ name = 'buffer' },
},
})
EOF`
I managed to get rid of the error by setting hover_with_actions to false, but I would like to setup a keybind to :RustHoverActions
do you have any idea ?
thanks

https://github.com/simrat39/rust-tools.nvim#setup Just follow the instructions here, hover_with_actions was removed so that's why the warning is there.

https://github.com/simrat39/rust-tools.nvim#setup Just follow the instructions here, hover_with_actions was removed so that's why the warning is there.

I did try it, but still got the warning 😕

And make sure you removed the option hover_with_actions = true in
local opts = {
    -- ...
    tools = {
        -- ...
        hover_with_actions = true, --< Remove that property
    },
}
require('rust-tools').setup(opts)

@simrat39 Now, I think it's safe to close this issue 🤔


feat: Support multi workers for Linux

Since Linux support multiple workers, I will try to implement it so it can communicate between each other.
Todo:

[x] Implement locking for tasks
[x] Implement WS dispatching between process.

Now it pass the correct worker number and will tell if it's the first worker or not much better than file locking


please add refraction correction to the terminator

Please update your wonderful javascript using the calculation of the terminator that includes an averaged atmoshpheric refraction addition: that I (chaim) explained how to calculated in the following post:
http://physics.stackexchange.com/questions/28563/hours-of-light-per-day-based-on-latitude-longitude-formula/320092#320092
The calculation manner is as following.  After calculating the percentage of dayligh for any latitude,  calculate the longitude of noon for any time, and the day night terminator at that latitude will be a half of the percentage of daylight in angle on either direction of the noon position.  Thank you!

Thanks for your suggestion. It's unfortunately not quite straightforward to implement this. Leaflet.Terminator internally computes the hour angle of the Sun for each longitude and not the hour angle of the sunset, i.e., you need to solve the equation
cos \theta_s = sin \phi sin \delta + cos \phi cos \delta cos h

for \phi. This is trivial if \theta_s = 90°, which is currently what the code does. The general case requires some spherical trigonometry, which I currently don't have the time for. I'd be happy to take somebody else's solution (or even better a PR). Otherwise it'll be a while before I get to this.

Dear Jorg:The hour angle of sunset from noon is actually the opposite of the hour angle from noon to sunrise.  I looked into your code and you already calculate all the terms necessary to calculate the total hours of daylight which can be easily used to calculate the terminator with any zenith angle.  (For standard refraction, the zenith angle is 90.8333.)  I will send you a more detailed explanation this evening on how to modify your calculations to calculate it.  The rest requires your expertise on setting up the polygons, which is different from the way it is done now especially close to the equinox since the terminator is no longer a square wave but flares out in the Arctic region (since the day is longer there due to the refraction.)  Could you please look first at my (chaim) solution at the following link:
http://physics.stackexchange.com/questions/28563/hours-of-light-per-day-based-on-latitude-longitude-formula/320092#320092
Thank you!Chaim
  From: Jörg Dietrich<EMAIL_ADDRESS>
To: joergdietrich/Leaflet.Terminator<EMAIL_ADDRESS>Cc: chaimkeh<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Sent: Tuesday, March 21, 2017 10:48 AM
Subject: Re: [joergdietrich/Leaflet.Terminator] please add refraction correction to the terminator (#7)
Thanks for your suggestion. It's unfortunately not quite straightforward to implement this. Leaflet.Terminator internally computes the hour angle of the Sun for each longitude and not the hour angle of the sunset, i.e., you need to solve the equationcos \theta_s = sin \phi sin \delta + cos \phi cos \delta cos h
for \phi. This is trivial if \theta_s = 90°, which is currently what the code does. The general case requires some spherical trigonometry, which I currently don't have the time for. I'd be happy to take somebody else's solution (or even better a PR). Otherwise it'll be a while before I get to this.—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Here's more details.  I will use the terminology of your javascript, l.terminator.js.Within your_hourAngle function, you calculate the gst.  That is basically all you need to calculate the longitude of noon at any UTC.
That is, the sun is due south at longitude_noon ( i.e., noon on the earth at a certain UTC time), where
 longitude_noon = lst15 - sunPos.alpha + UTC15 degrees,
 where lng = 0  (i.e., set lng = 0 since we want the local meridian of Greenwich, i.e., time in UTC),
where,
 UTC = computer time - time zone of computer.
The day terminator will be at an hour angle, ha, of sunrise to the West of longitude_sun and a hour angle, ha of sunset to the East of longitude_sun.  The hour angle of sunrise and sunset at any latitude, lat, is equal in magnitude to:
ha = arccos (cos(90.833) /(cos(lng)*cos(sunPos.delta)) - tan(lng)*tan(sunPos.delta))  (convert to degrees)
As you see, you already calculate everything you need to know to determine a more realistic terminator.  You just need to modify _hourAngle to calculate longitude_noon, and then create a function to calculate ha, and then the terminator at any latitude = lat will be symmetric about longitude_noon at the following longitudes.
longitudes = longitude_sun +/- ha degrees.
If the expression in the arccos above is greater than 1, then it is either perpetual day or night depending on the value of the declination (which you calculate as sunPos.delta) as follows:
For latitude, lat > 0 (Northern Hemisphere)If sunPos.delta > 0 then it is perpetual daylightIf sunPos.delta < 0 then it is perpetual night
For latitude, lat <0 (Sourthern Hemisphere)If sunPos.delta > 0 then it is perpetual nightIf sunPos.delta < 0 then it is perpetual day
You can use the above method to plot any sort of setting and twilight by just changing the Zenith Angle.  For sunrise/sunset it is customary to use 90.833 degrees as I used above.  For twilight, refraction can be ignored.  Therefore, for civil twilight, the zenith angle is 96 degrees, nautical twilight it is 102 degrees, for astronomical twilight it is 108 degrees. It would be really useful to allow the user to change that in the javascript.
In my opinion, if your application was changed to calculate a terminator with refraction it should have a very big impact on all sorts of sites that need to display the terminator, e.g., flight tracking apps.  Almost everybody today uses the non physical approximation of no refraction.  That is a shame since the more physical calculation is not difficult at all.
Yours,Chaim
  From: Jörg Dietrich<EMAIL_ADDRESS>
To: joergdietrich/Leaflet.Terminator<EMAIL_ADDRESS>Cc: chaimkeh<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Sent: Tuesday, March 21, 2017 10:48 AM
Subject: Re: [joergdietrich/Leaflet.Terminator] please add refraction correction to the terminator (#7)
Thanks for your suggestion. It's unfortunately not quite straightforward to implement this. Leaflet.Terminator internally computes the hour angle of the Sun for each longitude and not the hour angle of the sunset, i.e., you need to solve the equationcos \theta_s = sin \phi sin \delta + cos \phi cos \delta cos h
for \phi. This is trivial if \theta_s = 90°, which is currently what the code does. The general case requires some spherical trigonometry, which I currently don't have the time for. I'd be happy to take somebody else's solution (or even better a PR). Otherwise it'll be a while before I get to this.—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Dear Chaim,
Many thanks for your detailed explanation. I agree having the zenith angle as a configure option would be very nice to have, e.g., to plot twilight in addition to a sharp terminator. As I said the logic right now is that I assumed there would be a unique solution for latitude at every longitude. With a zenith angle different from 90° this is not correct anymore.
It'll be a few weeks before I can implement this, but it's definitely on my to do list.


full screen / no mouse scrolling doesn't work in tmux 2.2

I noticed, that mouse scrolling in man pages, less and vim (and probably others) doesn't work anymore with tmux 2.2 (from debian testing)
I have the feature set in .tmux.conf
set -g @emulate-scroll-for-no-mouse-alternate-buffer 'on'

<prefix>? tells me I have these defined:
bind-key    -T root   WheelUpPane      if-shell -F -t = #{mouse_any_flag} "send-keys -M" "         if -Ft= ''           'send-keys up ; send-keys up ; send-keys up ; send-keys up ; send-keys up ; '           "                          if -Ft= '#{pane_in_mode}'               'send-keys -M ; send-keys -M ; send-keys -M ; send-keys -M ; send-keys -M ; '               'copy-mode ; send-keys -M ; send-keys -M ; send-keys -M ; send-keys -M ; send-keys -M ; '           "       "
bind-key    -T root   WheelDownPane    if-shell -F -t = #{mouse_any_flag} "send-keys -M" "         if -Ft= ''           'send-keys down ; send-keys down ; send-keys down ; send-keys down ; send-keys down ; '           ' send-keys -M ; send-keys -M ; send-keys -M ; send-keys -M ; send-keys -M ; '       "

leaving copy-mode at the bottom of the screen doesn't work either.

My recommendation: make sure your tmux plugin tmux-scroll-copy-mode is up to date.
That output is what it looks like if you're running an older version of the plugin. If you installed using Tmux Plugin Manager (tpm), you need to run the update command, and then type all, or just tmux-scroll-copy-mode.
By default, unless you've changed it, update your plugins with <prefix>U.
After you do that, can you let me know how it looks? Thanks!

I've got this same issue. Using Urxvt + Tmux 2.2 + TPM, all plugins updated. Relevant settings:
set-option -g mouse on
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'NGDaly/tmux-scroll-copy-mode'
set -g @scroll-down-exit-copy-mode "on"
set -g @scroll-in-moused-over-pane "on"
set -g @scroll-without-changing-pane "on"
set -g @emulate-scroll-for-no-mouse-alternate-buffer "on"
set -g @prevent-scroll-for-fullscreen-alternate-buffer "on"
run '~/.tmux/plugins/tpm/tpm'

Scrolling in NeoVim works quite well
Scrolling in Vim is broken (scrolling enters copy mode but doesn't scroll).
Scrolling in Vim when another pane is active puts that pane in copy-mode without actually scrolling it or the Vim pane (NeoVim works as expected).
Scrolling in a plain terminal pane works quite well, but doesn't exit copy mode at the bottom.
Scrolling in Less is broken (scrolling shows more of the terminal history).

I have the same problems in Gnome Terminal as Urxvt.

Assuming that you didn't just make a typo when typing that up in this post, you've spelled my username wrong. 😛

set -g @plugin 'NGDaly/tmux-scroll-copy-mode'

Should be:
set -g @plugin 'NHDaly/tmux-scroll-copy-mode'
I'd guess very strongly that will fix your problem.

@NHDaly Lol, that's just a typo in my issue. Well spotted! But in my ~/.tmux.conf file it's spelled correctly and still exhibits the behaviour I described.

:) Haha okay sounds good.
Hmm, that's super weird. Can you start by pasting here the output of tmux list-keys -T root?
For example, for me it looks like this:
bind-key -T root MouseDown1Pane   select-pane -t = ; send-keys -M
bind-key -T root MouseDown1Status select-window -t =
bind-key -T root MouseDown3Pane   select-pane -m -t =
bind-key -T root MouseDrag1Pane   if-shell -F -t = #{mouse_any_flag} "if -Ft= "#{pane_in_mode}" "copy-mode -M" "send-keys -M"" "copy-mode -M"
bind-key -T root MouseDrag1Border resize-pane -M
bind-key -T root WheelUpPane      if-shell -F -t = #{mouse_any_flag} "send-keys -M" "         if -Ft= '#{alternate_on}'           'send-keys up ; send-keys up ; '           "                          if -Ft= '#{pane_in_mode}'               'send-keys -M ; send-keys -M ; '               'copy-mode -e -t= ; send-keys -M ; send-keys -M ; '           "       "
bind-key -T root WheelDownPane    if-shell -F -t = #{mouse_any_flag} "send-keys -M" "         if -Ft= '#{alternate_on}'           'send-keys down ; send-keys down ; '           ' send-keys -M ; send-keys -M ; '       "

Also, this won't affect anything, but prevent-scroll-for-fullscreen-alternate-buffer is deprecated and now it just does the same thing as emulate-scroll-for-no-mouse-alternate-buffer, so you can just remove that line from your config. But that shouldn't be the cause of your problem.

Oops.

The ouput of that command is as follows:
bind-key -T root C-h              if-shell "tmux display -p '#{pane_current_command} #T' | grep -iqE '(vim|VIM)'" "send-keys C-h" "select-pane -L"
bind-key -T root C-j              if-shell "tmux display -p '#{pane_current_command} #T' | grep -iqE '(vim|VIM)'" "send-keys C-j" "select-pane -D"
bind-key -T root C-k              if-shell "tmux display -p '#{pane_current_command} #T' | grep -iqE '(vim|VIM)'" "send-keys C-k" "select-pane -U"
bind-key -T root C-l              if-shell "tmux display -p '#{pane_current_command} #T' | grep -iqE '(vim|VIM)'" "send-keys C-l" "select-pane -R"
bind-key -T root C-\              if-shell "tmux display -p '#{pane_current_command} #T' | grep -iqE '(vim|VIM)'" "send-keys C-\" "select-pane -l"
bind-key -T root MouseDown1Pane   select-pane -t = ; send-keys -M
bind-key -T root MouseDown1Status select-window -t =
bind-key -T root MouseDown3Pane   if-shell -F -t = #{mouse_any_flag} "select-pane -t=; send-keys -M" "select-pane -mt="
bind-key -T root MouseDrag1Pane   if-shell -F -t = #{mouse_any_flag} "if -Ft= "#{pane_in_mode}" "copy-mode -M" "send-keys -M"" "copy-mode -M"
bind-key -T root MouseDrag1Border resize-pane -M
bind-key -T root WheelUpPane      if-shell -F -t = #{mouse_any_flag} "send-keys -M" "         if -Ft= ''           'send-keys up ; send-keys up ; send-keys up ; '           "                          if -Ft= '#{pane_in_mode}'               'send-keys -M ; send-keys -M ; send-keys -M ; '               'copy-mode ; send-keys -M ; send-keys -M ; send-keys -M ; '           "       "
bind-key -T root WheelUpStatus    previous-window
bind-key -T root WheelDownPane    if-shell -F -t = #{mouse_any_flag} "send-keys -M" "         if -Ft= ''           'send-keys down ; send-keys down ; send-keys down ; '           ' send-keys -M ; send-keys -M ; send-keys -M ; '       "
bind-key -T root WheelDownStatus  next-window
bind-key -T root M-l              send-keys C-l
bind-key -T root C-S-Up           resize-pane -U 15
bind-key -T root C-S-Down         resize-pane -D 15
bind-key -T root C-S-Left         resize-pane -L 25
bind-key -T root C-S-Right        resize-pane -R 25

For reference, my full ~/.tmux.conf file is here: https://github.com/zeorin/dotfiles/blob/5dd75fb/.tmux.conf

Hmm, that's super weird. And you're sure your plugin is updated?
Your WheelUpPane looks identical to @stfl's above, and I'm pretty sure that's why your seeing the the problem you describe. I'm not sure why it would be set to that value, though.
 But d157c5fb was just a README update I pushed yesterday; you might also see 5e4c864d2f96be01000f692fe0f04cf50128a8df if you haven't updated today and that should be okay too.
And then run tmux source ~/.tmux.conf just to be sure and verify that you still see the same value for WheelUpPane.

I found (most) of the cause of these issues. The scripts weren't POSIX-compatible, but on some systems were interpreted by a strict POSIX-compatibility-only shell. I've created a PR: #20, that fixes this.
Lack of mouse scrolling functionality in VIm is still an issue, though.

Actually, Vim scrolling works just fine by sending the up/down arrow keys. I had this in my .vimrc:
	" unmap keys I shouldn't be using
	inoremap <esc> <nop>
	inoremap <up> <nop>
	inoremap <down> <nop>
	inoremap <left> <nop>
	inoremap <right> <nop>
	nnoremap <up> <nop>
	nnoremap <down> <nop>
	nnoremap <left> <nop>
	nnoremap <right> <nop>

Which I'd put there to train myself to only use hjkl instead of the arrow keys. That was years ago and I don't need these no-op bindings anymore. As far as I'm concerned this issue is fixed.

Oh awesome, that's a good find.
Hmm, but still though, I think Vim shouldn't be getting up arrow keys, it should be getting mouse scroll events. I probably didn't even notice because i haven't umapped my arrow keys.
I thought this is what the if-shell -F -t = #{mouse_any_flag} "send-keys -M" "..." part of the line was supposed to check for: i.e. if the pane already has some sort of mouse interactions bit enabled (such as vim having mouse support turned on) just send the keys through to vim.
Actually, can you check: do you have mouse-mode enabled in vim? (:set mouse? should echo mouse=a.)
In fact, I have verified this: on my system, I am sending proper mouse scroll events to vim if mouse=a and I'm sending up arrow keys if mouse= (disabled).

Hi, sorry, fell asleep. In Vim I have mouse mode set as you describe. When I start Vim using vim -u NONE (don't load plugins or read any initialization files), there's no scrolling at all. When I then run :set mouse=a, it scrolls by moving the cursor and only the file as a whole when the top or bottom is reached. My Vim version is 7.4, patches 1-1689 on my Ubuntu machine.
Perhaps you have a setting in your .vimrc (other than :set mouse=a) which effects whether scrolling is accepted? Or a terminal override in your .tmux.conf?
I use NeoVim mostly, so I'm not that concerned. This might be slightly sub-optimal scrolling behaviour, but when I do have to use Vim instead of NeoVim (e.g. can't install out-of-repo software on a remote machine or something), this is good enough.
IMO, you can close this if you like. But if you want to investigate further, I'd be happy to help.

Yeah, I'd love to help try to figure this out!
I'll go ahead and close this issue since I think we've covered the reason you and @stfl were seeing broken behavior. Thanks again for the PR. :)
I've opened #21 and we can keep investigating there?

Ah thanks. Just had a look again. It works again now.
Thank you.


Updates procedure TOC links

Signed-off-by: Paul S. Schweigert<EMAIL_ADDRESS>Fixes a few broken links in the table of contents for the PROCEDURES page
/assign @carlisia

/lgtm
/approve


proposal(template func): add filter function to filter list

There are many list item in k8s yaml, like ports, volumes and mounts:
ports:
- protocol: TCP
  port: 80
  name: http
  targetPort: 9376
- protocol: TCP
  port: 443
  name: https
  targetPort: 12345

Currently when dealing with list in template, we have to range then if check what we want. The experience is not good.
How about provides a filter function to do it? I have custom in our own project, it looks like below:
{{- with .Values.ports | filter "name" "http" | first }}
wantPort: {{ .port }}
{{- end -}}

Which supports struct field and map key, and results a clean template code. So how about adding one?

Hello, any ideas or I just send the pr first?


Look at STAC query spec and see how it could be extended, replaced to provide faceted search

https://github.com/radiantearth/stac-api-spec/blob/master/item-search/README.md#query

@rsmith013 pls forward the link to Ryan :)

https://github.com/radiantearth/stac-api-spec/blob/dev/fragments/filter/README.md

It looks like the hard work has already been done. The query extension to the STAC api-spec is deprecated in order to follow the OGC CQL (Common Query Language) and there is a filter extension on the dev branch of the api-spec which details how this would work: https://github.com/radiantearth/stac-api-spec/blob/dev/fragments/filter/README.md
It looks to me like this is exactly what we are after:
/queryables – returns the list of available facets for searching and each facets json-schema document can expose the acceptable values to UIs
/queryables is available at both the root level, individual collection and there is growing support for a cross collection implementation (akin to the opensearch description document where all “queryables” are available and are restricted as your search restricts) https://github.com/opengeospatial/ogcapi-features/issues/576
Saves us re-inventing the wheel!


Add PostComment API

Closes #28

Yes, I think even after seeing I'm still partial to calling this Comment and not PostComment.

I'll finish this up.

Looks good to me. 👍


Workflow stopped for no activity

 This scheduled workflow is disabled because there hasn't been activity in this repository for at least 60 days. Enable this workflow to resume scheduled runs.

As one who finds this workflow useful, might it be poked to resume?

Combine this with old logs getting deleted:

The logs for this run have expired and are no longer available.

And the repository becomes not very useful.
I just reenabled the workflow.
Ideally we could:

have an action that creates empty heartbeat commits just to keep activity and scheduled jobs
write the logs back to the repo either on main or a branch for the event type.

2 would be really cool

@tvalenta happy to give you write if you're interested in contributing either of these solutions.

Actually let me attempt option 2 quickly

Thanks! I'm happy to open a PR, too, for any futureness.

Okay, the contexts are now getting saved in the contexts directory. This should have the dual effect of:

persisting the contexts beyond the actions log expiration
creating scheduled activity on the repo to prevent the workflow from getting disabled

Might have to wait up to a week for the scheduled context to get generated.
Thanks @tvalenta for your interested and help. Feel free to propose any more ideas that would be helpful.

Just saw the schedule event type contexts were created and are materialized at schedule.json and schedule.gron. The gron format makes it easier to find the absolute path of a nested variable.


Global services try to deploy on host that never activate

Rancher versions: 6/14
Steps to Reproduce:

Create a host that will fail to activate
Go to Containers and look at the global system scaling groups

Results:  All global scaling groups are trying to add a container to the host that errored.  It should not try to deploy to failed hosts.

Version - 2.0 master 10/10
Verified fixed


Server returns next_page_token instead of nextPageToken

As defined in the protocol.

The serializer converts snake case to camel case for protobufs.


issue #959 - Added CancerIQ to friends page

Added CancerIQ to the friends page as per the details included in issue 959 (https://github.com/rust-lang/rust-www/issues/959)

Thanks!


[WebToolsE2E][Aspire]Error "Aspire.Hosting.Dcp.dcpctrl.ExecutableReconciler[0]failed to start Executable" pop up when run Aspire Starter Application use vs in this configuration VS 17.10 Preview 3 + SDK 9.0 P3 + Aspire 9.0 P3 + 17.10 P4 FB

REGRESSION INFO
Doesn't repro  in this configuration :VS 17.10 Preview 3 + SDK 9.0 P3 + Aspire 9.0 P3
INSTALL STEPS

Clean machine: Win11 x64 23h2 ENU
Install VS 17.10 Preview 3 + SDK 9.0 P3 + Aspire 9.0 P3 + 17.10 P4 FB

REPRO STEPS

New Project > .NET Aspire Starter Application > Framework: .NET 9.0 (Preview)> Create
Build the solution and run it

Note:   When use cmd to create and run project, this issue not repro.
use "dotnet new aspire-starter -o projectname" create project.
use "dotnet run" run project.
ACTUAL  Error "Aspire.Hosting.Dcp.dcpctrl.ExecutableReconciler[0]failed to start Executable" pop up

in https://localhost:17136 page, the state is "Unknown", the endpoints is "None".

EXPECTED No error pop up

@BillHiebert "unexpected EOF" typically means the IDE endpoint did not like the request and closed the socked. Is there a way to learn why?

Bill is telling me Aspire 9.0 does not have latest DCP yet. That would explain the issue

@joperezr,  how do we get the latest DCP integrated into the Preview 9 branch?

Yes. Visual Studio 17.10-preview4 requires Aspire 8 preview5 which contains the security enhancements to the IDE/DCP connection

Correct, 9.0 branch (vNext) still has 0.2.1 version of DCP. There are merges that happen from main -> vnext which updates 9.0 branch, but the current one seems to be currently blocked: https://github.com/dotnet/aspire/pull/3599
I can take a peek at it and unblock it.

Hmm. 0.2.1 should be fresh enough no matter what the VS side is.
@v-yuwzh could you reach to me via email?

@karolz-ms , I don't get your email,  If you need any information about this bug, please let me know!

@v-yuwzh no worries, I found yours ☺

Same problem.
Who decided?
VS 17.10 Preview 4

I checked out the workload on the machine that @v-yuwzh shared with me. The DCP component version there turned out to be quite old:
PS C:\Program Files\dotnet\packs\Aspire.Hosting.Orchestration.win-x64\9.0.0-preview.3.24210.17\tools> .\dcp.exe version
{"version":"0.1.60","commitHash":"67e0cb7547eb6b3c27fc12d94557b865640805ec","buildTimestamp":null}

That is the version that does not include recent, security-related protocol changes, so the VS is rejecting its request.
@joperezr I can see that vnext branch indeed refers to DCP 0.2.2 so I am not quite sure why the workload observed has this old DCP version. Any ideas?

It's a crutch. But it works!
Copy folders
C:\Program Files\dotnet\packs\Aspire.Hosting.Orchestration.win-x64\8.0.0-preview.5.24201.12\tools
Paste into folder
C:\Program Files\dotnet\packs\Aspire.Hosting.Orchestration.win-x64\9.0.0-preview.3.24210.17\tools
If you don't have the 8.0.0-preview.5.24201.12 folder
It is necessary to downgrade the project version to net. 8 and install package version 8.0.0-preview.5.24201.12

@karolz-ms think of vNext branch as 9.0 main branch, meaning it's usually the one that has the most recent changes. When we snapped release/9.0-preview3 branch off from vNext, the version of DCP was still a bit old, but vNext has now received latest changes from main which updated DCP. This means that our next 9.0 preview (9.0 preview 4) will have these changes now and will use the new DCP.
@Zombach Sorry that you are hitting this issue too, I would advise against manually copying/replacing files under C:\Program Files\dotnet\. Instaed, a better workaround would likely be to update the version of Aspire you are using to 9.0 preview 4 builds from vNext branch, by running dotnet workload update --skip-sign-check --source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet9/nuget/v3/index.json. This will get you the latest build of the 9.0 workload which should have the updated DCP.

@joperezr makes sense, thank you.
I am going to close this issue as "not planned" since we have no plans to patch 9.0 preview 3, but the fix is coming in 9.0 preview 4.

dotnet workload update --skip-sign-check --source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet9/nuget/v3/index.json

Thank you. Everything works great.


getsockopt: connection refused in tests with pkcs11 tag

As I'm developing in the trustmanager and the code is almost done, I'm trying to test it.
But go test -v -tags pkcs11 gives a lot of "getsockopt: connection refused" Errors. As this I think shouldn't have a relation to my development on the trustmanager/pkcs11 files I wonder if I'm testing correctly or if I have to start some testserver or something before testing.
here is some example output:
=== RUN   TestClientKeyGenerationRotation
ERRO[0004] could not reach http://<IP_ADDRESS>:44139: Get http://<IP_ADDRESS>:44139/v2/: dial tcp <IP_ADDRESS>:44139: getsockopt: connection refused
--- FAIL: TestClientKeyGenerationRotation (1.01s)
        Error Trace:    integration_test.go:1493
        Error:          No error is expected but got client is offline

=== RUN   TestKeyRotation
ERRO[0005] could not reach http://<IP_ADDRESS>:43269: Get http://<IP_ADDRESS>:43269/v2/: dial tcp <IP_ADDRESS>:43269: getsockopt: connection refused
--- FAIL: TestKeyRotation (1.01s)
        Error Trace:    integration_test.go:1564
        Error:          No error is expected but got client is offline

=== RUN   TestKeyRotationNonRoot
ERRO[0006] could not reach http://<IP_ADDRESS>:37461: Get http://<IP_ADDRESS>:37461/v2/: dial tcp <IP_ADDRESS>:37461: getsockopt: connection refused
--- FAIL: TestKeyRotationNonRoot (0.98s)
        Error Trace:    integration_test.go:1653
        Error:          No error is expected but got client is offline

The notary client integration tests start up a local server.  The tests should automatically set it up - I'm not sure why it's unable to reach the server, though.

thanks @cyli the tests run okay on CircleCI. So I don't know what's the issue doing it locally. But there are misbehaviours or at least strange behaviours on CircleCI as well I think, as the same code sometimes passes a container and sometimes doesn't.
https://circleci.com/gh/theupdateframework/notary/5292#config/containers/2
https://circleci.com/gh/theupdateframework/notary/5291#tests/containers/3
Is it possible to trigger a rebuild without forcepushing to the forked repo, as this doesn't feel right, just to trigger a rebuild ?

I looked into some older CircleCI Tests and saw that container 2 shows up a lot of connection refused messages as well.
For example in the following: https://circleci.com/gh/theupdateframework/notary/5286#tests/containers/2
Tests pass, so it's not blocking any development, but someone may look into it at some time.


Add Timings

Dump heiarchal data on how long portions of the code take.
Sampling data could be included someday too.
Im thinking a python script to analyze the data and print out critical subsections of the data.
I'd be willing to try and implement this (at least the timings and python script).
Im thinking just timing plugin events for now.
Async events would be included
Example format:
"packet.chat" 12980
  "event.ChatEvent" 12900
    "net.evil.ChatFilterListener#destroyChat" 11000
    "net.stupid.ChatFilterListener#stupidStuff" 1600
    "net.smart.ChatFilstupidStuff"onChat" 300

The script would analyze and just display the evil listener, and its parents.

Any update on this one ? :)

I think it is a valid idea to have inbuilt timings, however there are external tools like Yourkit available which do the same thing already, so the priority might not be that high.

You wouldn't run YourKit in production, would you ? ;)

yes?

Thats a point.

Plenty of people run yourkit in production.
You get the best performance metrics if you run it in production.

You're right, @Techcable

I now think this would be better handled by a sampling plugin, as suggested by Champ on IRC.


Dev

Current coverage is 88.23%

Branch #11 has no coverage reports uploaded yet.

No diff could be generated. No reports for greenkeeper-eslint-2.5.0 found.

Powered by Codecov. Updated on successful CI builds.


meanIOU after every epoch for PascalVOC

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is.
Since, I am not able to understand why my mAP is 0 in every epoch, I would like to quantify the mean IOU of the class over each epoch. If you could direct me and you think you already do that in the code.
Describe the solution you'd like
A clear and concise description of what you want to happen.
np.avg(iou_arrays)
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

not going to do this


Sync again: migrate Renovate config, add GHA version pins and specs

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: colindean:x: sca[bot]sca[bot] seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Default to use font with programming ligatures if they are installed

Just a suggestion, VSCode should set editor.fontLigatures to true if it finds programming ligature fonts in the user's system 👍

This feature request will not be considered in the next 6-12 months roadmap and as such will be closed to keep the number of issues we have to maintain actionable. Thanks for understanding and happy coding!


[EN] Feedback for: /tools/iterate/inspect-styles/shortcuts.html

Hi,
I love chrome dev tools. Most of the time I wrote code on the "Sources" section.
I used lots of different editors including: WebStorm, IntelliJ, Atom, Sublime Text, Eclipse etc.
I believe moving inside the sources tab is critical. I think the following shortcuts are necessary:
Ctrl + Page UP => Previous file
Ctrl + Page Down => Next file
Ctrl + 1..9 => 1st file... last File
Ctl + Alt + UP Arrow -> Previous Function
Ctl + Alt + UP Down -> Next Function
Refactoring:
Ctrl+Shift+ R = Rename
...

Thanks for your suggestion. Please file a bug at http://crbug.com/new for anything DevTools-related. This bug tracker is just for the documentation of DevTools.


MySQL DB encoding problem

System information:

4.2.0-35-generic #40~14.04.1-Ubuntu
DBeaver ver. <IP_ADDRESS>002011957

Connection specification:

MySQL ver. 5.7.19

Describe your question:
Hello,
I have several legacy MySQL databases which are created in latin1 charset but in fact data is stored in UTF8 encoding.
So I have to use "SET NAMES latin1" query each time I connect to these databases, no matter I do it manually or from scripts. After that query everything is alright with encoding.
But in DBeaver I cannot change the encoding using "SET NAMES latin1".

(by the way, MySQL Workbench shows database contents in proper encoding after "SET NAMES latin1" query)
So the question is: may there be any kind of workaround for this situation?
mysql> select @@character_set_client, @@character_set_results, @@character_set_connection;                                                                                +------------------------+-------------------------+----------------------------+
| @@character_set_client | @@character_set_results | @@character_set_connection |
+------------------------+-------------------------+----------------------------+
| utf8                   | utf8                    | utf8                       |
+------------------------+-------------------------+----------------------------+
1 row in set (0,00 sec)

mysql> select * from roles limit 3;
+--------+----------+----------------------------------------------------------+
| idrole | rolename | roletitle                                                |
+--------+----------+----------------------------------------------------------+
|      1 | admin    | ÐÐ´Ð¼Ð¸Ð½Ð¸ÑÑ‚Ñ€Ð°Ñ‚Ð¾Ñ€                               |
|      2 | guest    | Ð“Ð¾ÑÑ‚ÑŒ                                               |
|      3 | default  | ÐŸÐ¾ ÑƒÐ¼Ð¾Ð»Ñ‡Ð°Ð½Ð¸ÑŽ                                  |
+--------+----------+----------------------------------------------------------+
3 rows in set (0,00 sec)

mysql> SET NAMES latin1;
Query OK, 0 rows affected (0,00 sec)

mysql> select * from roles limit 3;
+--------+----------+----------------------------+
| idrole | rolename | roletitle                  |
+--------+----------+----------------------------+
|      1 | admin    | Администратор              |
|      2 | guest    | Гость                      |
|      3 | default  | По умолчанию               |
+--------+----------+----------------------------+
3 rows in set (0,00 sec)

mysql> SHOW CREATE TABLE roles;
| roles | CREATE TABLE `roles` (
  `idrole` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `rolename` varchar(45) NOT NULL,
  `roletitle` varchar(254) NOT NULL,
  PRIMARY KEY (`idrole`),
  UNIQUE KEY `rolename` (`rolename`)
) ENGINE=MyISAM AUTO_INCREMENT=22 DEFAULT CHARSET=utf8 |

I have the same problem

Wow guys, I'm work the same job as you but I haven't got those problem because I'm use DataGrip

Hey guys @eloscuro @frops
I'm not sure that it will be working properly. But, try it
How about changing your driver property option characterEncoding and Cp1252 is Java-Style Character Encoding Name and also it is associated with latin1

MySQL documentation says that
Warning
Do not issue the query SET NAMES with Connector/J, as the driver will not detect that the character set has been changed by the query, and will continue to use the character set configured when the connection was first set up.
And I referred to 5.6 Using Character Sets and Unicode

[Feature request] Warning if "SET NAMES" with MYSQL. Message will be with url https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-reference-charsets.html
Similar mechanism can be in PostgreSQL and Oracle DB.

Hey guys @eloscuro @frops
I'm not sure that it will be working properly. But, try it
How about changing your driver property option characterEncoding and Cp1252 is Java-Style Character Encoding Name and also it is associated with latin1

Hello @dorbae , thank you for your answer.
I tried to change this option but I am unable to change anything inside that tab ("Driver properties").
These properties are just not editable at all. :-(

[Feature request] Warning if "SET NAMES" command with MYSQL. Message will be with url https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-reference-charsets.html
Similar mechanism can be in PostgreSQL and Oracle DB.

Well, that might be a good idea, at least it will be less confusing, but it doesn't solve the problem.. :-(

@eloscuro

These properties are just not editable at all. :-(

What OS do you use, could you post a screenshot? They must be editable (as it is one of the main instruments for connection configuration).

@serge-rider
Linux Mint 18.3 Sylvia KDE 64-bit
When I click to this field nothing happens...

@eloscuro it seems to be a Linux-specific issue. However it works fine on Ubuntu.
Could you check error/debug logs for any errors? https://github.com/dbeaver/dbeaver/wiki/Log-files

@serge-rider I have the same problem on Mac OS.

@frops you mean problem with MySQL encoding or problem with properties eitor?
Do you use the most recent dbeaver version? what is your MacOS version?

Hello, @eloscuro @frops @serge-rider
I tried it as you did and I also had the same problem.
However, other options were changed exactly. So, I tried to change characterEncoding as not Cp1252 but cp1252 (I used a lowercase letter 'c' and I don't know why 'Cp1252' is not applied)
And it worked. I'm not still sure that this change can solve your encoding problem. But try it!
Thank you


multiple "Employed Population"

These should maybe be combined:
-- https://datacommons.org/browser/Count_Person_Employed
-- https://datacommons.org/browser/dc/nm9hcklgg5zb3

Closing since these now have different names and definitions


Inconsistent Status Reason for Cancelled PipelineRun/TaskRun

The PipelineRunReasonCancelled const is Cancelled while TaskRunReasonCancelled is TaskRunCancelled.
Why I think it would make sense for these statuses to be consistent is that the PipelineRun/TaskRun condition reason is usually used to report that status of runs to end users through tkn and the dashboard. It's a bit odd to have to choose one of these format styles in order to report the reason a PipelineRun or TaskRun didn't succeed.
I could also see including the resource name as part of the reason as helpful in some cases (e.g., PipelineRunCancelled being the status of TaskRuns as opposed to TaskRunCancelled since the PipelineRun cancellation causes the cancel of associated TaskRuns).
/kind feature

/remove-lifecycle stale


chore: remove refs to deprecated io/ioutil

Codecov Report
Attention: 4 lines in your changes are missing coverage. Please review.

Comparison is base (b617c97) 38.27% compared to head (509e8aa) 38.29%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2717      +/-   ##
==========================================
+ Coverage   38.27%   38.29%   +0.02%
==========================================
  Files         637      637
  Lines       38149    38149
==========================================
+ Hits        14600    14610      +10
+ Misses      21938    21931       -7
+ Partials     1611     1608       -3

Files
Coverage Δ

common/cmdarg/arg.go
0.00% <0.00%> (ø)

main/commands/helpers/fs.go
0.00% <0.00%> (ø)

infra/conf/geodata/memconservative/cache.go
0.00% <0.00%> (ø)

... and 8 files with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Unable to change skybox color

I'm not sure if there was a recent update to 117 but now I'm unable to change the skybox color from tan.

Nevermind... Seasonal Theme defaulted to automatic


Cutouts: why are they zoomed on opening?

When opening a new object page, the cutouts are often automatically zoomed (js code)... This might be mitigated by specifying range=[min, max] in the axis_template definition.

@karpov-sv -- any ideas? It is definitely happening in one of the clientside callbacks linked_zoom_plots_xaxis_js or zoom_cutouts_js -- but I cannot find what is wrong there...
Tips: if you want to test locally on your computer, just checkout the branch issue/689/noapi -- it is still WIP, but you can already deploy the code locally as I externalise the API part:
pip install -r requirements.txt
python index.py
# go to localhost:24000

Yes, I remember this thing, I tried to track it down back then... It is due to some race conditions in events related to zooming, I was unable to easily fix it.
Will try to look at it again

Ah -- I think I got it. Inspecting relayout_data more closely, it was in the form of e.g. [{autorange: true}, undefined, undefined] when all components did not have the time to initialise properly -- and [{autorange: true}, {autorange: true}, {autorange: true}] otherwise. So checking for undefined avoids the problem.


Add multi range slider component

Description
Similar to the range component, with the possibility of choosing the upper and lower limit and displaying its values on the top of the handle
Additional context
No response

Duplicate #979


bug fixes and user experience enhancement

. fixed documentation issues with Assertions and Verifications
. added the ability to copy the default properties from inside the engine jar
. added src/test/resources folder initialization
. created ProjectStructureFactory class which will initialize the project structure on startup
. updated engine version
Signed-off-by: Mohab Mohie<EMAIL_ADDRESS>

 Here is an overview of what got changed by this pull request:

Issues
======
- Added 1

Complexity increasing per file
==============================
- src/main/java/com/shaft/tools/io/ProjectStructureFactory.java  4

See the complete overview on Codacy


Provide an option to auto-update homebrew and check for update when you open a terminal

Provide a detailed description of the proposed feature
Currently homebrew update runs only when you try to install something and if something is missing or wrong, you are left in-a-fix
One of the example is below

What I believe can be done is what Oh-My-Zsh(https://ohmyz.sh/) does with auto-update?
It's behavior as below

you can set auto-update on or off
when you open a terminal, if internet is connected, it will look for an update and ask you if you want to update or not
since you can do things in parallel you would say "yes"

Please consider this feature
We can take some inspiration from source code here: https://github.com/ohmyzsh/ohmyzsh/blob/master/tools/check_for_upgrade.sh
What is the motivation for the feature?
This saves you time, effort and most important being in zone to get things done "in advance".
I have seen my productivity been broken because things were just not ready and then you get distracted(sometimes)

How will the feature be relevant to at least 90% of Homebrew users?
This feature will be deal-breaker(I think) for 90+% of Homebrew users!
It will not make you a 10x developer...but you may feel like one.

Inspired by oh-my-zsh

What alternatives to the feature have been considered?
I feel the only alternative is to set an alarm or reminder on a frequency basis and do things manually(ewww)
Automation is word of the "year", right?

You may be interested in https://github.com/Homebrew/homebrew-autoupdate.
In case that isn't enough, note that you can also always set up your own automation (e.g. using launchd) so that you get exactly the behaviour you are looking for.

Many thanks @carlocab


Please fix

Seerrbridge problem auto click , it skip , before i use it very good,

Please see the latest release and let me know if this is fixed.
https://github.com/Woahai321/SeerrBridge/releases/tag/v0.3.5
If this does not fix your issue, please provide further details as this request is quite vague.


fix: transaction claiming slow

Describe the bug
Description of the bug here.

Many time testnet completed, generally no issue found but, sometimes its a bit slow it
might be RPC related or network problem.
0x408FC152eD2c8180e389D7759A5e48cd5431CE1D
Steps to reproduce
0x408FC152eD2c8180e389D7759A5e48cd5431CE1D
Additional context
Additional context here.

Good

L2 => L1 has to wait for block header to sync between chains, is not nearly instant like L1 => L2.


Villagers and fletching table

i was playing a little bit and seems like villagers will not take the fletching table for the fletcher profession maybe because the mod modified the table and villagers don't detect the table as a workstation

It is another mod that has the conflict, I have the same problem and I thought it was another mod (in my case easy villager) but I did an adventure with that mod and this one, and I managed to convert it, even though it does not always work outside the easy villager.
Either way, I'm trying to find the other mod that's causing the conflict.

duplicate of #285


Install Error: TASK [Ensure {{ ansible_user }} user is added to the docker group

I received this error message when working through the install.
I looked at the list of users on the system and the user 'ansible_user' does not exist.
Error:
TASK [Ensure {{ ansible_user }} user is added to the docker group.] ****************************************************
fatal: [<IP_ADDRESS>]: FAILED! => {"msg": "The task includes an option with an undefined variable. The error was: 'ansible_user' is undefined\n\nThe error appears to be in '/home/pi/internet-pi/tasks/docker.yml': line 44, column 3, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n- name: Ensure {{ ansible_user }} user is added to the docker group.\n  ^ here\nWe could be wrong, but this one looks like it might be an issue with\nmissing quotes. Always quote template expression brackets when they\nstart a value. For instance:\n\n    with_items:\n      - {{ foo }}\n\nShould be written as:\n\n    with_items:\n      - "{{ foo }}"\n"}
Full install output:
pi@pi3b2:~/internet-pi $ ansible-playbook main.yml
[DEPRECATION WARNING]: Ansible will require Python 3.8 or newer on the controller starting with Ansible 2.12. Current
version: 3.7.3 (default, Jan 22 2021, 20:04:44) [GCC 8.3.0]. This feature will be removed from ansible-core in version
2.12. Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
PLAY [internet_pi] *****************************************************************************************************
TASK [Gathering Facts] *************************************************************************************************
ok: [<IP_ADDRESS>]
TASK [Load configuration.] *********************************************************************************************
ok: [<IP_ADDRESS>]
TASK [Ensure apt cache is up to date.] *********************************************************************************
ok: [<IP_ADDRESS>]
TASK [Check if Docker is already present.] *****************************************************************************
ok: [<IP_ADDRESS>]
TASK [Download Docker install convenience script.] *********************************************************************
skipping: [<IP_ADDRESS>]
TASK [Run Docker install convenience script.] **************************************************************************
skipping: [<IP_ADDRESS>]
TASK [Ensure Docker is started.] ***************************************************************************************
ok: [<IP_ADDRESS>]
TASK [Ensure dependencies are installed.] ******************************************************************************
ok: [<IP_ADDRESS>]
TASK [Install Docker Compose using Pip.] *******************************************************************************
ok: [<IP_ADDRESS>]
TASK [Ensure {{ ansible_user }} user is added to the docker group.] ****************************************************
fatal: [<IP_ADDRESS>]: FAILED! => {"msg": "The task includes an option with an undefined variable. The error was: 'ansible_user' is undefined\n\nThe error appears to be in '/home/pi/internet-pi/tasks/docker.yml': line 44, column 3, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n- name: Ensure {{ ansible_user }} user is added to the docker group.\n  ^ here\nWe could be wrong, but this one looks like it might be an issue with\nmissing quotes. Always quote template expression brackets when they\nstart a value. For instance:\n\n    with_items:\n      - {{ foo }}\n\nShould be written as:\n\n    with_items:\n      - "{{ foo }}"\n"}
PLAY RECAP *************************************************************************************************************
<IP_ADDRESS>                  : ok=7    changed=0    unreachable=0    failed=1    skipped=2    rescued=0    ignored=0

Having the same issue.

error along the same lines
fatal: [<IP_ADDRESS>]: FAILED! => {"msg": "The task includes an option with an undefined variable. The error was: 'ansible_user' is undefined\n\nThe error appears to be in '/home/pi/internet-pi/tasks/docker.yml': line 44, column 3, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n- name: Ensure {{ ansible_user }} user is added to the docker group.\n  ^ here\nWe could be wrong, but this one looks like it might be an issue with\nmissing quotes. Always quote template expression brackets when they\nstart a value. For instance:\n\n    with_items:\n      - {{ foo }}\n\nShould be written as:\n\n    with_items:\n      - "{{ foo }}"\n"}

Presuming you're running ansible on the pi you're intending to use. Should be fixed by adding ansible_user=pi to the end of the <IP_ADDRESS> line in the inventory.

Presuming you're running ansible on the pi you're intending to use. Should be fixed by adding ansible_user=pi to the end of the <IP_ADDRESS> line in the inventory. No need to create an additional user.

This works to correct the error.

Presuming you're running ansible on the pi you're intending to use. Should be fixed by adding ansible_user=pi to the end of the <IP_ADDRESS> line in the inventory. No need to create an additional user.

Correct, running this local. Adding 'ansible_user=pi' to the end of the local install line of inventory.ini fixed this error. Thanks for the resolution!

@telorand Indeed! I just added a commit with that now, since a lot of people are running into this issue!


[SSR]bug: transition group lacks of attributes and classes

Version
3.2.26
Reproduction link
codesandbox.io
Steps to reproduce
Create transition-group with tag and class, on SSR it won't have any data attribute if needed or class provided
What is expected?
To have all attributes/classes provided by code
What is actually happening?
It doesn't have any attributes/classes provided by code

It's 3.2.29 and the bug still remaining! @LinusBorg


Is there any overlap between svit and llava sft data?

Great work! I'd like to know is there any overlap between svit and llava_instruct_150k data ? Thanks a lot!

Hi @aprilehannibal, the images of SVIT is from Visual Genome, which is originally sourced from MS-COCO. And the images in llava_instruct_150k is from MS-COCO as well. There may be some overlaps of images between these two datasets, but the instructions and responses are different, as they are generated separately with different prompts.


typing issues with nextauth middleware

Do you have any idea why I'm getting these type errors:
import { createMiddleware } from "next-easy-middlewares";
import {withAuth} from "next-auth/middleware";

const customWithAuth = withAuth({
    pages: {
        signIn: "/login",
        error: "/not-found",
    },
});

const middlewares = {
    '/dashboard:path*': customWithAuth,
    '/ebay-callback': customWithAuth,
    '/ebay-auth': customWithAuth,

};

export default createMiddleware(middlewares);

I am getting the below errors:
Argument of type '{ '/dashboard:path*': NextMiddlewareWithAuth; '/ebay-callback': NextMiddlewareWithAuth; '/ebay-auth': NextMiddlewareWithAuth; }' is not assignable to parameter of type 'MiddlewareConfig'.
  Property ''/dashboard:path*'' is incompatible with index signature.
    Type 'NextMiddlewareWithAuth' is not assignable to type 'MiddlewareFunction | MiddlewareFunction[]'.
      Type 'NextMiddlewareWithAuth' is not assignable to type 'MiddlewareFunction'.
        Target signature provides too few arguments. Expected 2 or more, but got 1.

I am trying to use the NextAuth middleware.

Hi, good catch!
I will look into this in next few deys.
Thanks for reporting :D
P.S. If you want you can make an PR :> haha

@adambirds thanks for kind words and such great workaround!
I will look further to improve package types instead of generating workarounds :D
Happy coding!

I will fix that when #13 is merged (there will be an example of usage with next-auth also available)

Hi @adambirds!
Hope everything currently works for you, but I had improved typings in package, so there is a much easier way to use other packages middlewares without depending on them inside package.
Here you will find example with next-auth:
https://github.com/z4nr34l/next-easy-middlewares/blob/main/examples/next-auth/src/middleware.ts
Remember to upgrade your package to latest version!
npm install next-easy-middlewres@latest
pnpm add next-easy-middlewres@latest
bun add next-easy-middlewres@latest
yarn add next-easy-middlewres@latest
If you will run into trouble with that again feel free to reopen this issue.
Happy coding!


Input is not calling onClick or onChange when click outside, but still selecting

I'm trying to use the custom selection to select multiple or all rows elements in my application. I used it as described in storybook. But I'm having a problem that if you select outside the checkbox it is not triggering my functions, but still selecting the elements. I also notice that the same thing is happening after cloning and running on my computer.
I am passing an onClick function (and a dummy onChange, because react is complaining if I only use onClick) but it's only triggering my functions when I click on the input. When I click outside it is still selecting, but none of my functions are being called.
Bellow, I recorded a gif of my problem. When I select all, it prints true for each of my items. Each item print it's check value too.

Notice that nothing is printed when selected outside the box.
Also, the problem persists if I include clickToSelect: true to select using the entire row.
Someway to avoid the selection when clicking outside? Or a way to trigger the events when clicking outside?
P.S.: I notice that in the first version (react-bootstrap-table) this works well, even if you click outside or in the entire row.

@tfcb93 firstly sorry for lately reply, I'm wondering where you put your console log?
Let me explain selection behavior:

No matter user click on checkbox or selection column which must trigger selection event, even clickToSelect is false
for custom selection case, so far we allow developer to custom the checkbox/radio button instead of whole td cell and actually, the on click event is binding on td cell which mean you don't need to add click event on checkbox/radio button.

So let me know where's your console log so that I can help you to check.
Any suggestion is welcome, I can help, thanks!

Hi, @AllenFang Thanks for the answer and sorry to only replying to it now.
I mostly copied the example done in the storybook.
const selectRow = {
    mode: 'checkbox',
    selectionHeaderRenderer: ({ indeterminate, ...rest }) => (
    <input
       type="checkbox"
       ref={ (input) => {
       if (input) input.indeterminate = indeterminate;
       } }
       { ...rest }
       onClick={() => console.log(rest.checked)}
       onChange={()=>{}}
    />
    ),
      selectionRenderer: ({ mode, ...rest }) =>
    <div>
    <input
       type={ mode }
       checked={rest.checked}
       disabled={rest.disabled}
       rowindex={rest.rowIndex}
       onClick={() => console.log(rest.checked)}
       onChange={()=>{}}
    />
  </div>
}

And added it to the BootstrapTable tag:
<BootstrapTable bootstrap4
  striped
  bordered={false}
  selectRow={ selectRow }
  {...props.baseProps} />

I hope this can helps you.
P.S.: I had to add onChange={()=>{}} because React creates a warning if I do it without an onChange method.

@tfcb93 I see. It's meet my expectation. Like I said above
because you add onClick event on input instead of td which means if user clicking on outside of checkbox, your onClick event callback will not be called. but the reason of selection still work is actually we bind a onClick event on td element.
In you case, if you want know some row is select or not, I will suggest you to use selectRow.onSelect
here is an online example
Let me know if you still have any question, thanks

Thanks a lot! This works perfectly for me!


Parameters are defined backwards

"a" is the lock and "b" is the irql.
Note that this would be clear if descriptive parameter names were used instead of "a" and "b".

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

ID: 831fb347-ca21-4bca-a0c1-a1dd4b0155ec
Version Independent ID: b1ecd8b4-dfc0-7564-b6ec-88407ff1ad37
Content: KeAcquireSpinLock macro
Content Source: wdk-ddi-src/content/wdm/nf-wdm-keacquirespinlock.md
Product: windows-hardware
GitHub Login: @windows-driver-content
Microsoft Alias: windowsdriverdev

Hi @HollisTech
Thanks for pointing this out. This is now fixed. Should be live soon.
Page Writer


[New Feature]: Add Ballerina to Windows Package Manager

Description
It would be great if Ballerina could be added to the Windows Package Manager.
Then, Ballerina could be installed on Windows with this command winget install ballerina which would be quite convenient.
Also, other programming languages (like python and rust) have adopted this Package Manager.
Describe your problem(s)
Easily install ballerina via winget
Describe your solution(s)
Create a PR in the winget-pkgs repository to add ballerina: https://github.com/microsoft/winget-pkgs
Related area
-> Other Area
Related issue(s) (optional)
No response
Suggested label(s) (optional)
No response
Suggested assignee(s) (optional)
No response

I've created a PR here https://github.com/microsoft/winget-pkgs/pull/178059 to add Ballerina 2201.10.0 to winget. After this is merged, I would also like to add version 2201.10.1.

Since ballerina is running in a jar and is not a compiled programm it is currently not possible to be added.


Make accumulate_state work with TransactionEffectsV2

Description
Describe the changes or additions included in this PR.
Test Plan
How did you test the new or updated feature?

If your changes are not user-facing and not a breaking change, you can skip the following section. Otherwise, please indicate what changed, and then add to the Release Notes section as highlighted during the release process.
Type of Change (Check all that apply)

[ ] protocol change
[ ] user-visible impact
[ ] breaking change for a client SDKs
[ ] breaking change for FNs (FN binary must upgrade)
[ ] breaking change for validators or node operators (must upgrade binaries)
[ ] breaking change for on-chain data layout
[ ] necessitate either a data wipe or data migration

Release notes

Hi @lxfind , PTAL this PR. I didn't create an accumulate_effects_v3 as we discussed because I don't know whether TransactionEffectsV2 and simplified_unwrap_then_delete options are independent or not. If so, we probably need a accumulate_effects_v4 to cover all the combination of TransactionEffectsV2 and simplified_unwrap_then_delete. Therefore I created a modified_at_digests which can work with both V1 effects and V2 effects. PTAL and let me know what do you think.
Also, I assume existing test cases should cover that digests are wrong? I tried to play with the code to see if I can get some test failures, but right now my local test runs generate too many test failures even with the clean main branch. This is probably because some environment setup that I still need to figure out...

As for your question, our protocol config is linear. We first enabled simplified_unwrap_then_delete, and latter enabled effects_v2.

Thanks @lxfind for the explanation! Also, I assume that accumulate_effects would never be called with a list of mixed V1 and V2 effects?
If that's the case, I think a v3 function maybe cleaner and cause less confusion. So I modified the PR to that. PTAL

Could you try to run the single node benchmark with checkpoint executor component (and with a small checkpoint size), see if there are throughput improvements?

Hi @lxfind , I was looking at this today, and based on the current benchmark, the improvement is not so much and here is what I observed:
Benchmark using current main and this PR, there is almost no improvement. This is because all the data can fit into memory and DB never tries to flush data to disk.
So I modified some DB setup (reduce write buffer size) to have moderate disk interaction, and in this case, the main has 16.5k TPS and with this PR, the TPS increases to 17K.
Digging deeper, currently, the CPU time is mostly spending on transaction execution. And finalize checkpoint takes 6% of CPU time and object reading inside accumulate_effects takes 1.3% of CPU (here is a flame graph

). So basically that's what we are saving.
As suggested by @mystenmark , I may use tracing to take a look at the actual latency savings by this PR.

Did you play with different benchmark parameters and see if it makes a difference?
The accumulator code does a batch object read, which only becomes an issue when you have relatively small checkpoints. So I would expect to see some differences when checkpoint size is small (e.g. < 5) and maybe with better input object num, in no-move mode so that execution time is minimum. Also you may need to run it on latest main so that the package cache optimization is already in.

Did you play with different benchmark parameters and see if it makes a difference? The accumulator code does a batch object read, which only becomes an issue when you have relatively small checkpoints. So I would expect to see some differences when checkpoint size is small (e.g. < 5) and maybe with better input object num, in no-move mode so that execution time is minimum. Also you may need to run it on latest main so that the package cache optimization is already in.

Hi @lxfind, I tried checkpoint size = 1, 10, 100 and the results are very similar (marginal improvement with this PR). However, I only use the move workload. I can try the no-move workload tomorrow.
The above results already include the package cache optimization. Without the optimization, the transaction execution takes more than 95% of CPU... (and as you observed, most of them are in reading package objects).

Hi @lxfind , I played with it earlier and changing to use more input objects does make a difference. I tried 10 and 20 input objects respectively, and there is about 10% TPS increase with this PR.
However, there is not much difference between move and no-move. Transaction execution still takes majority of the time.


Docs Add Join Community Files of EN & CN Verison

Proposed changes
Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


Interactive tutorials

Is your feature request related to a problem? Please describe.
Interactive tutorials to help users get started. It will make it more immersive user experience
Describe the solution you'd like
Something like this: https://www.npmjs.com/package/react-interactive-tutorials
Describe alternatives you've considered
Documented steps like tutorials.shabados.com are good but sometimes you just want to get started without reading things but to still want to know somewhat.

Too difficult to interactively guide user to download and place a file in their file explorer. This would also be a lot of time and effort for a very low impact improvement/feature.


Improve documentation

Open a project wiki & transfer most of the README's contents.
Add more examples (e.g. snippet of code to access and expose Repeater Matrix Fields)

The docs are improved now and moved to Wiki. More examples will follow soon.

The docs are improved now and moved to Wiki. More examples will follow soon.


nonComVisibleBaseClass Error

Hi,
I used moq version 4.0.10827 to mock an Com object and when i upgrade to 4.2.1510.2205 i get an nonComVisibleBaseClass error when the test execute:

    [Guid("0339CD56-9BA3-477D-801B-E5F73D37EABE")]
    [TypeLibType(4160)]
    public interface IDaemonCli
    {
        // methods & propperties ...
        [DispId(1)]
        void CloseLog();
       ....
    }

[CoClass(typeof(DaemonCliClass))]
[Guid("0339CD56-9BA3-477D-801B-E5F73D37EABE")]
public interface DaemonCli : IDaemonCli
{
}

[ClassInterface(0)]
[Guid("D94FBC81-06EC-4EAA-B73F-794051487691")]
[TypeLibType(2)]
public class DaemonCliClass : IDaemonCli, DaemonCli
{
        // ... definitions of all methods of the com obj
       [DispId(1)]
       public virtual void CloseLog();
       ....
}

The mock is created as this :
[TestClass]
[Serializable]
    public abstract class Test : IDisposable
    {
         protected static Mock<DaemonCli> DaemonClientMock { get; private set; }
         static Test()
        {
            Test.DaemonClientMock = new Mock<DaemonCli>();
            // here are all the setup on the DaemonClientMock
        }

The mock is injected in the tested code as this :
typeof(LoggedServiceBase).GetProperty(
                PropertySupport.ExtractPropertyName(() => this.batchClassService.Logger),
                BindingFlags.Public | BindingFlags.Instance)
                .SetValue(this.batchClassService, Test.DaemonClientMock.Object, null);

The Exception is raised when the mock is used by the tested class:
freeMindCom.SetLog(this.Logger);

Any help would be appreciated.
Thanks

Any advice ?
May i have to implement an additional interface on the mock ?
CConnes

The way you're "injecting" the mock is totally weird (dependencies should be explicitly passed via ctors or public property setters, failing that.
Other than that, I've never done COM with Moq, so I've no idea. Maybe ask on Castle.DynamicProxy?

Thanks, i 'll make a try on Castle.


feat: Implement durable objects + service environments

Using this issue for tracking the work to make sure durable objects, with migrations and all, works with wrangler2.

🎉 🎉 🎉


Implement script editor hover hint with description

Supersedes #41502
Closes  godotengine/godot-proposals#1393
Right now this is just a rebase and basic conversion of #41502 to master, (including CodeEdit changes) I tried to ensure it has a bare minimum functionality testing it, it does properly display the hints, but some things are as of now missed, and I seem to have not gotten documentation to work properly, it'll stay a draft until I can clean this up a bit.
This is no longer a direct conversion of #41502, there are things I missed in implementing this proposal in full, I'm not entirely confident this is even a totally correct implementation, hence why I left the initial convert commit (despite being somewhat bugged) unchanged for now and the big reason its still a draft, (the initial conversion was still fairly bugged too and sort of re-implemented rich text popup functionality in CodeEdit) however this does implement many more improvements, alongside some few bugs. I committed this to get eyes on it and to improve this beyond what I've been able to do from this point.
Improvements

Hover hints appear on the line below the first character of the hovered symbol
Supports hover hints for annotations
Uses editor settings to enable and modify the hint display
Relies upon RichTextLabel inside a PopupPanel to display hint text

The hint can't currently be focused but it does use a duplicate of the _add_text_to_rt function from /editor/editor_help.cpp.

Local variables should be able to support descriptions
All inbuilt classes can display hover hints with descriptions
CodeEdit only has a new symbol_hovered(symbol : String, symbol_column_line : Vector2) signal that ScriptTextEditor relies on for hover hints
Added get_word_line_column_at_pos(mouse_pos : Vector2) -> Vector2i to TextEdit

Duplicates get_word_at_pos but retrieves the line and column of the first character of the word, used by the symbol_hovered signal to abstract the need for retrieving the mouse position.

Known Issues

The RichTextLabel may overflow the popup in some cases
Short symbols may erroneously be wrapped by the RichTextLabel inside the popup
Hovered symbols may feel incorrect since they do not account for the last character, for single character identifiers this can result in a very deceptively tiny region to activate the hint. (this appears to be the fault of get_word_at_pos)
Symbols inside a $ may be treated as the type they are named after regardless of whether they're actually based on that type (for example if you named a Popup as PopupMenu, the symbol hint for $PopupMenu will display a hint for PopupMenu)

All right, I'll see what I can do.

@Spartan322 Note that there is another PR #80044.

Yeah I'm aware, I've gotten busy and haven't had as much time to work on this.


Make BlockEnv configurable

Some opcodes rely on information in BlockEnv, e.g. COINBASE, NUMBER, BLOCKHASH.
Ref https://docs.rs/revm/latest/revm/interpreter/primitives/struct.BlockEnv.html

Quickly addressed in #20.
Feel free to re-open if you need more; our API is still very messy & experimental 🙏.


Proposal: extend AsciiSignalIO to allow extra information in a JSON file or in file header

At present, AsciiSignalIO.read_segment takes several optional arguments describing how the CSV file is structured.
I propose to add support for having this information either:
(i) in a JSON file that would accompany the text file with the data, or
(ii) in a "header" block in the file, with a simple "# name = value" format
The name of the JSON file could either be specified alongside the filename, or could follow a standard pattern, e.g. if the datafile was named "foo.txt" then the IO would automatically look for a file called "foo_about.json" or "foo_map.json"

I agree, this would be a good extension. I talked to a number of people at the Bernstein Conference, who would appreciate this feature. In my opinion json sounds like the better approach since it is more flexible and keeps the actual csv file clean.

Yes, we seem to have a lot of data in HBP using plain text files for ephys data.
I was thinking we could support both options (external JSON file and internal comments). The advantage of JSON is that you don't need to modify the original data file, but the advantage of internal comments is that everything is in one file.


Open hain by plugin

Hey,
it would be nice to have something like pluginContext.app.show() to open the Hain-Window again.
Little use-case: I develop a twitter plugin right now and need to generate oAuth-Tokens with my webserver and it would be nice to open Hain after generating them.
thanks,
~ Kenneth

I think this is a good feature for plugins

and i think app.show('some input'); can be useful.

I use the new open method to "keep" Hain opened after opening an URL from the RSS feed.
But for some reason I have to add a timeout of 100ms, otherwise the window does not re-open
https://github.com/mistic100/hain-plugin-rss/blob/0f60e0ffc59dc35270eba67b4fb39c2a0bc3027b/index.js#L221-L227

@mistic100 shell.openExternal doesn't close hain, Losing focus makes hain close itself.
I don't understand a benefit for keeping hain from closing. could you explain it?

Typically when browsing the RSS feed, it's handy to open multiple items in the browser and then read them all. Instead of open one, reopen Hain, navigate to the feed, open another, etc.

Okay, I got it. I will try to implement it.

Resolved at v0.3.0 (See https://github.com/appetizermonster/hain/blob/v0.3.0/docs/plugin-context-app.md)


Add test case for #1339

What type of PR is this?
Adds test case for #1339

What this PR does / why we need it:
Adds test case that represents a bug a Kueue user ran into.
Which issue(s) this PR fixes:

Special notes for your reviewer:
Does this PR introduce a user-facing change?

NONE

/ok-to-test

@nstogner Thank you for creating this PR to reproduce bugs. I cherry-picked this commit into this:
https://github.com/kubernetes-sigs/kueue/pull/1342/commits/a264858a60cd5c11f843140b81e75d3c3a821b23


BUG: stats: Fix handling of float32 inputs for the boost-based ufuncs.

The C++14 code for calling the underlying C++ function that does
the actual scalar calculation for a ufunc had a bug where the
float arguments were implicitly cast to double while the function
expected float, resulting in incorrect output.
The fix here is to remove the C++14 version of the code, and
use only the less elegant C++11 code.
Closes gh-15961

With just the first commit of this PR, the only tests that failed were the new boost ufunc tests for the data type np.longdouble on the Windows Meson platform.  The log showed that the tests start failing when the data type of the inputs was np.longdouble, and after a few failures, Python crashed with an access violation.  I suspect this is related to how the long double type is handled by the compiler.  It appears that on the Meson Windows platform, gcc is used to build SciPy, and C files (but not C++ files) are compiled with the option -mlong-double-64 (for compatibility with the MSVC compiler):
https://github.com/scipy/scipy/blob/084df9925bb95cffc5429a5da997b6501d17d249/scipy/meson.build#L6-L13
We now have C++ code that works with the long double type, so it seems we should compile all C and  C++ code with the same option (at least all code that uses the long double type). I suspect something is not right in how this option is being used currently, but at the moment I don't know what the correct settings should be.
In a follow-up commit, I tried changing the global compiler arguments with
    add_global_arguments('-mlong-double-64', language: ['c', 'cpp'])

With that change, the test suite crashed at the first import of the boost ufunc extension module in stats, before any actual tests were run.
I then tried tweaking meson.build in scipy/stats/_boost (the latest commit has one of my shots in the dark), but still got a crash on the import of the boost ufunc extension modules.
In summary: the first commit here fixes gh-15961, but the fix seems to expose a problem with how we handle the long double type on the Windows platform when building with mingw.

In my last commit, I fixed the problem with the long double data type on the Windows Meson job (which uses mingw) by not generating long double ufunc loops in Windows for the stats boost-based ufuncs.  So on Windows, a ufunc such as scipy.stats._boost._beta_cdf will have the ufunc type signatures ['fff->f', 'ddd->d']; on other platforms, the signatures will also include 'ggg->g'.  Since on the MSVC builds, long double is the same as the double, there is no real loss by doing this.  The only failure now is the one unrelated timeout.

@WarrenWeckesser it seems like the plan was to remove the C++11 code instead (Cc @mckib2 who wrote this code). I believe we can now use C++14 unconditionally, see http://scipy.github.io/devdocs/dev/toolchain.html#c-language-standards.

In my last commit, I fixed the problem with the long double data type on the Windows Meson job (which uses mingw) by not generating long double ufunc loops in Windows for the stats boost-based ufuncs. So on Windows, a ufunc such as scipy.stats._boost._beta_cdf will have the ufunc type signatures ['fff->f', 'ddd->d']; on other platforms, the signatures will also include 'ggg->g'. Since on the MSVC builds, long double is the same as the double, there is no real loss by doing this. The only failure now is the one unrelated timeout.

This seems quite reasonable to me. Over time I'd expect we will drop long double completely, since it's more or less obsolete (not only on Windows).

@WarrenWeckesser it seems like the plan was to remove the C++11 code instead (Cc @mckib2 who wrote this code). I believe we can now use C++14 unconditionally,

Ah, I just saw your detailed comment about trying to fix the C++14 version and ending up with very similar code to the current C++11 implementation. So this is fine - and if needed/desired, the C++14 version can be reinstated.
I completely agree that we should not have two code paths here depending on compile options / compiler capability.

Right, the details are explained in https://github.com/scipy/scipy/issues/15961#issuecomment-1126786894.  The C++11 code is also compatible with C++14, so it is perhaps better to just call it the working C++ code.  To be clear, accepting this PR doesn't mean the code can't be compiled with C++14.

In a follow-up commit, I tried changing the global compiler arguments with
    add_global_arguments('-mlong-double-64', language: ['c', 'cpp'])

With that change, the test suite crashed at the first import of the boost ufunc extension module in stats, before any actual tests were run.
I then tried tweaking meson.build in scipy/stats/_boost (the latest commit has one of my shots in the dark), but still got a crash on the import of the boost ufunc extension modules.
In summary: the first commit here fixes gh-15961, but the fix seems to expose a problem with how we handle the long double type on the Windows platform when building with mingw.

It's not clear to me from the code comments in scipy/meson.build why we cannot add -mlong-double-64 for C++, or why it isn't needed. It'd be good to extend that comment a bit so that is clearer to the next person who runs into a C++ longdouble issue - @carlkl, matthew-brett can you comment on this?

@WarrenWeckesser it seems like the plan was to remove the C++11 code instead (Cc @mckib2 who wrote this code). I believe we can now use C++14 unconditionally,

Ah, I just saw your detailed comment about trying to fix the C++14 version and ending up with very similar code to the current C++11 implementation. So this is fine - and if needed/desired, the C++14 version can be reinstated.
I completely agree that we should not have two code paths here depending on compile options / compiler capability.

Sorry, just getting back from long work travel and sickness.  The C++14 solution always seemed "cleaner" to me with the auto deduction template pack capabilities, but if it's faulty or doesn't work right, I agree removing it for the C++11 was the way to go here.  It may however need to be expanded in the future if there are any distributions that require more arguments than are currently supported


Refactoring HTTP/2 code

Refactoring HTTP/2 code

definition of Pseudo-Header
convert_header functions between h1 and h2

Pseudo headers are already defined in hdrs/HTTP.h.
Header conversion is done by hdrs/VersionConverter.cc.


Easier referencing of channels in non-config spaces

A big annoyance in staging videos (for me at least) is typing out many names for big collaborations. An easy solution would be to use numbered indices to reference a specific channel in the config for the pull command. It would require it to be printed out, but it would work. Regular channel names should still work in place of numbers in case a collaborator is not in the config file.
A clear issue would be differentiating between small character-count names and the number index. A patch solution to that would be to limit the indexing to the first 100 channels in the pull list, starting at 0 and going to 99. Beyond that you'll need to type the name, because you're crazy enough to be using VodBot to manage videos for over 100 channels.

The basic Idea I have for this now is that it should pull all the names of channels from the config, and list them out like it does for heads and games when asking about thumbnail generation. A maximum of 999 channels should be displayed, since Twitch's restrictions on usernames require names longer than 3 characters. All numbers (under 999, or strings of length 3) should be assumed to be indices for this channel list stated earlier, and otherwise be taken as literal strings to use for channel linking.


why Files Indexed is zero

2017-06-23 00:49:20,495 [INFO][diskover] Connecting to Elasticsearch
2017-06-23 00:49:20,499 [INFO][diskover] Checking for ES index: diskover-20170623
2017-06-23 00:49:20,502 [WARNING][diskover] ES index exists, deleting
2017-06-23 00:49:20,558 [INFO][diskover] Creating ES index
Crawling: [100%] |########################################| 229/229
2017-06-23 00:49:21,125 [INFO][diskover] Finished crawling
2017-06-23 00:49:21,126 [INFO][diskover] Directories Crawled: 229
2017-06-23 00:49:21,126 [INFO][diskover] Files Indexed: 0
2017-06-23 00:49:21,126 [INFO][diskover] Elapsed time: 0.635111093521
tonyzhang@Ubuntu16:~/data/web/esphp$

what was the full command that you used to crawl including all cli options? diskover default with no flags will scan the current directory and only index files 5+ MB and 30+ days ago modified time. To change this you need to set -m and -s flags. Run diskover with -h for cli options. Also check out the wiki https://github.com/shirosaidev/diskover/wiki which has a lot of documentation on how to use. If the files indexed is still 0, try running with --debug and see if there are any warning or errors.

also check diskover.cfg to see file/dir exclusions to make sure those are set right for you.