Improvements to redirect handling

There are three changes here.

An improved handling of relative redirects.
A switch of protocols when redirected from http to https and vice versa (in retrospect, similar to  https://github.com/driverdan/node-XMLHttpRequest/pull/131 ).
The final url is added to the request object when the request ends.

checkout https://www.npmjs.com/package/xmlhttprequest-ts - i added your pull request


Add {VirtualHost, Server}.defaultHostname()

Add VirtualHost.defaultHostname

Unless specified, it is determined from the user-specified hostname
pattern or the current machine's hostname

Add Server.defaultHostname() which is a shortcut to
config().defaultVirtualHost().defaultHostname()

Use Server.defaultHostname() if a user does not specify hostname when
creating JettyService or TomcatService

Add missing configuration options to JettyServiceBuilder

Merge TomcatServiceInvocationHandler and
ManagedTomcatServiceInvocationHandler

Move the part related with the managed one to
ManagedConnectorFactory

Call Tomcat/Jetty Server.destroy() when it is managed and stopped.

@blmarket Gentle ping

hope VirtualHostBuilder have some unit tests.
One example:
new VirtualHostBuilder("*").build();

throws IllegalArgumentException as defaultHostname is *. expected was localhost(or equivalent).

left some nit comments, overall code looks great!

hope VirtualHostBuilder have some unit tests.

Added VirtualHostBuilderTest and fixed one bug.

:+1:


Quests When Completed with Parties Plugin Causing Multiple Completions

Version: Questss V3.8.2
https://ci.codemc.io/job/PikaMug/job/Quests/46/
Quest Example
AG0RL4vq.txt
I am now seeing a bug when using the Parties Plugin with Quests v 3.8.2.   When a party of individuals finishes a quest together, instead of completing the quest once and receiving the rewards once, they automatically complete the quest multiple times over and over, maybe like 40 or 50 times.  This causes the SkillAPI reward of XP (stated in my quest sample) to max out at 9999 since the quest completed so many times, even though the reward should be once at 50.  Here is the parties plugin that I am using and this is one that was recommended on the Quests webpage to be used:
https://www.spigotmc.org/resources/parties-an-advanced-parties-manager.3709/
The bug did not appear to affect a single player in a party or players that were not in a party.  Party version used was 2.6.8.  The bug does not appear in Quests version 3.7.8, which is what I have reverted back to unless this can be fixed
Polsonator2

Should be fixed with #1002
The problem is related to any quest that have multiplayer level set to 4 ;)

@AlessioDP Thanks for the quick fix!
@polsonator2 Give the following dev build a try. If you're using QuestsGUI, recent changes to the API may cause conflicts. Worst case, uninstall QuestsGUI until the next Spigot release.
https://ci.codemc.io/job/PikaMug/job/Quests/47/


Fix6245

fixed #6245 by changing js file order

Hi @infofromca, I'm your friendly neighborhood .NET Foundation Pull Request Bot (You can call me DNFBOT). Thanks for your contribution!

In order for us to evaluate and accept your PR, we ask that you sign a contribution license agreement. It's all electronic and will take just minutes. I promise there's no faxing. https://cla2.dotnetfoundation.org.

TTYL, DNFBOT;

@infofromca, Thanks for signing the contribution license agreement so quickly! Actual humans will now validate the agreement and then evaluate the PR.
Thanks, DNFBOT;

Did you make any changes to README,md yourself? The PR mentions fixing a javascript error, not fixing readme.md, so I'm just curious where that change is coming from. It doesn't seem to be part of the dev branch.

@sfmskywalker , I did not change README.md , git did that automatically


Undo history was broken

Code remanents are left over after 'undo'.
NVIM v0.5.0
Build type: Release
LuaJIT 2.1.0-beta3
local cmp = require'cmp'

cmp.setup({
  snippet = {
    expand = function(args)
      vim.fn["vsnip#anonymous"](args.body)
    end,
  },
  mapping = {
    ['<C-d>'] = cmp.mapping.scroll_docs(-4),
    ['<C-f>'] = cmp.mapping.scroll_docs(4),
    ['<C-Space>'] = cmp.mapping.complete(),
    ['<C-e>'] = cmp.mapping.close(),
    ['<CR>'] = cmp.mapping.confirm({ select = true }),
  },
  sources = {
    { name = 'nvim_lsp' },
    { name = 'vsnip' },
    { name = 'buffer' },
  }
})

Hm.  It seems inteded behavior, because you have leaved insert mode after several editing.
The undo point is splitted.

When I don't require nvim-cmp, there are no issues. So it seems to be directly related to the plugin.

I have tested without plugins.
The undo point is splitted after InsertLeave.

I did everything I could to try to narrow down the issue, thinking maybe it was just my config that was causing it. I started with a blank Neovim install, and only installed the plugins necessary to run nvim-cmp. I did this on both MacOS and Arch Linux, and unfortunately the issue still exists.
I did have the same issue with nvim-compe as well. I don't know, maybe that can help you narrow it down on your side. I do find it strange that I'm the only one that has filed an issue with this, which makes me think it is directly related to something I'm doing.

@hrsh7th I don't use lexima.vim. Remember though, I only installed nvim-cmp related plugins and still had the issue.

I think this issue relates to this https://github.com/hrsh7th/nvim-cmp/issues/333

(I'm using 49acc848531b8cbe051c598dddd0cc46ec64f4b4)

It definitely seems to be related to logic around the popup. As long as the popup never appears, undo works properly (at least in my testing). If the popup appears either automatically or manually (I setup a mapping like https://github.com/hrsh7th/nvim-cmp/issues/178#issuecomment-915231777 to only trigger completion when I hit tab), undo history may break.

Please test Vim's built-in completion <C-x><C-n> breaks undo history.
I think it is hard to fix.

@Shougo I turned off nvim-cmp's autocomplete, and used nvim's built-in completion with no issues. I'm not a vim/nvim plugin dev, so I'm not really sure how everything works, but I used coc.vim's autocompletion for a long time with no issues.

I want to test it.  Please upload the minimal config with the reproduce instructions.

Download zip file, unzip, nvim -u /path/to/minimal-nvim-config/init.lua /path/to/minimal-nvim-config/RandomColorSquare.jsx, then type out the code like I did in the first video I posted in this thread.
minimal-nvim-config.zip

Hm. I have tested.  The undo something wrong.  I cannot undo whole changes...

This happens to me with the custom floating menu, and does not happen with the native menu (experimental.native_menu = true).

This happens to me with the custom floating menu, and does not happen with the native menu (experimental.native_menu = true).

I can confirm that going back to native_menu solves the problem. The problem also doesn't occurs with empty buffer just like @onosendi wrote.

Related https://github.com/neovim/neovim/issues/11439

This happens to me with the custom floating menu, and does not happen with the native menu (experimental.native_menu = true).

strange, I still get the issue with experimental.native_menu enabled

This happens to me with the custom floating menu, and does not happen with the native menu (experimental.native_menu = true).

strange, I still get the issue with experimental.native_menu enabled, but never with manual completion regardless

Correct. The issue persists with native_menu but seems to be triggered in less conditions?

This is upstream issue.
https://github.com/hrsh7th/nvim-cmp/issues/328#issuecomment-971520557

Thank you!
Is it feasible that the underlying issue within neovim depends on how the floating window is implemented or used?
Intel SandyBridge (ThinkPad X220)

Reproducible on TTY and Wayland with vim-cmp and vim-compe

AMD Ryzen 4000 (ThinkPad T14 Gen1)

Reproducible on TTY but nearly impossible to reproduce on Wayland with vim-cmp

Using the native_menu = true with vim-compe helps a little but scrolling through completions triggers the bug anyway. What maybe helps a little is likely causing a separate change in the undo tree e.g. moving cursor, leaving insert mode or so.

Question
I think I've noticed something which could help. The bug is triggered only when the a second "floating auto-completion window" is also showing the return type. The return types are here not shown always - I don't know why. Is there a way to instruct nvim-cmp or LSP to show the return types in a different way?

:facepalm:
When the terminal is small the return type isn't show and the bug isn't triggered. I some time to figure out this difference :roll_eyes:
The question remains - what is special about the return types?

:facepalm:
With nvim-compe the return type isn't show on small terminals and the bug isn't triggered. I required me some time to figure out this difference :roll_eyes:
nvim-cmp always shows the return type and therefore always triggers the bug, whatever size the terminal has. Is this a hint and can the return types shown in a different way? Maybe within same window as the function names and parameters?

@flaphoschi What is the return type? Could you provide the screencast?

I will provide two screencasts later today :slightly_smiling_face:

In both screen-casts you will see nvim-compe and not nvim-cmp because only nvim-cmp hides the return type, if the terminal is to small:
https://user-images.githubusercontent.com/3392113/148943976-3d517289-9392-4bad-81cb-58c30d0c3802.mp4
Bug triggered, wide terminal which shows also the return type of a selected member function, after 'undo' the erroneous line is remaining in the buffer.
https://user-images.githubusercontent.com/3392113/148944141-f50f962f-8f43-4da4-be6d-94a1f3aefe00.mp4
Bug not triggered, less wide terminal, the auto-completion doesn't show the return type - likely to save some screen space - and the undo is successfully.
My comment on the upstream bug 11439  also shows vim-cmp, which always shows the return type. My assumption is that only the "window" which is showing the return type is causing the bug. Of course we want return types show but hopefully this gives a hint how to avoid the issue?

I don't have the impression nvim is working on the issue though it is critical. May I suggest therefore a viable workaround? The plugin vim-lsp shows the all possible functions and return types together:

I don't know if the implementation is using one window (nvim) or popup (vim) but it looks like one. I've tested it with vim and nvim and the buffer isn't corrupted by undo operations. On the other hand nvim-cmp shows only the return type of the currently selected function (completion), likely intentional. I will require a change in implementation. Pros and Cons:
+ issue mitigated
+ complete overview what is returned by functions
- more clutter on screen
- upstream issue not fixed

I know it is undesirable to change the implementation you have chosen as author because of an external problem. Thanks for you work :slightly_smiling_face:

@flaphoschi It’s not just showing the return type that breaks it. It’s some other core underlying side effects of using a floating window instead of the built in completion menu.
For me, it’s easily reproducible with a completion menu with no “return types” at all, but the problem disappears when I disable the new style floating window.

We are all using different LSP-Servers which makes it somehow difficult. I aware that the "return types" itself are not the the issue but what happens when they are shown (some drawing function or another unknown side-effect). Turning the new floating window off and using native menu is maybe a fix for some LSP-Servers - sadly not for Clangd.

From the screencast it looks like the return type may be rendered in a floating window (it disappears shortly after the main completion popup), which might explain why return types are causing problems even when the native completion menu is being used.

@flaphoschi I'm also using clangd and I get the issue even when the return type is not displayed. I don't think it's directly related. It's related to using a floating window in general.

I didn't knew how to suppress the display of the return type but figured out that docs_view.lua is responsible. Because I'm clueless about Lua I just added here:
  if documentation then
    return
  end

And the docs with the return types doesn't appear anymore. And as you said the bug is also triggered without it :disappointed:
Probably another difference between nvim-cmp and nvim-comp?

Hi. Test my neovim patch in the neovim's upstream issue. It looks like it fixes the bug.

Just rebuilt nvim with the patch from https://github.com/neovim/neovim/pull/17150. It works, no undo lost detected!

The PR has merged. I'll close this after neovim v0.7 is released.

@hrsh7th Sweet! Thank you, and everyone else in this thread for your work.

I seem to have a similar issue as described here, but I'm not sure it's exactly the same. I'm running nvim @ HEAD (including the patch https://github.com/neovim/neovim/pull/17150) and have updated nvim-cmp today. This doesn't happen every time (often only after I've already accepted a few completions), but when I complete a function call (accepting it with <C-y>, default mapping) suggested by LSP (gopls at the moment) the buffer is reset to some point in history. Some times only a recent edit, some times all the way back to an empty file.
I'm not sure how to debug this. I've reduced the configuration for nvim-cmp to only the suggested configuration and the problem seems to persist. What could I do to debug this? Since this issue is so close to mine I haven't tried running with a minimal config yet, but I can if that helps.

@vdeurzen Please screencast for explaining the issue. I think the minimal reproduction configuration is not useful for this problem...

I can't imagine that nvim-cmp undo all modification when press <C-y>.
I think your configuration is broken. Could you upload your configuration?

Just the nvim-cmp part or everything? This is what I have for nvim-cmp:
local lspkind = require("lspkind")
lspkind.init()

local cmp_autopairs = require("nvim-autopairs.completion.cmp")

local cmp = require("cmp")
cmp.setup({
	snippet = {
		expand = function(args)
			require("luasnip").lsp_expand(args.body)
		end,
	},

	mapping = {
		["<C-d>"] = cmp.mapping(cmp.mapping.scroll_docs(-4), { "i", "c" }),
		["<C-f>"] = cmp.mapping(cmp.mapping.scroll_docs(4), { "i", "c" }),
		["<C-e>"] = cmp.mapping({
			i = cmp.mapping.abort(),
			c = cmp.mapping.close(),
		}),
	},

	sources = cmp.config.sources({
		{ name = "nvim_lsp" },
		{ name = "nvim_lua" },
		{ name = "path" },
		{ name = "luasnip" },
		{ name = "buffer", keyword_length = 5 },
	}),

	formatting = {
		format = lspkind.cmp_format({
			with_text = true,
			menu = {
				buffer = "[buf]",
				nvim_lsp = "[LSP]",
				nvim_lua = "[api]",
				path = "[path]",
				luasnip = "[snip]",
			},
		}),
	},

	experimental = {
		native_menu = true,
		ghost_text = false,
	},
})

cmp.event:on("confirm_done", cmp_autopairs.on_confirm_done({ map_char = { tex = "" } }))

I also use vim-which-key which also deals with keybindings, but this issue started recently after I pulled neovim changes about 3 - 4 days ago. Before then nothing was wrong and everything worked quite well.

@vdeurzen Could you try this configuration? (I'd removed some of the plugin-related things.
local cmp = require("cmp")
cmp.setup({
	snippet = {
		expand = function(args)
			require("luasnip").lsp_expand(args.body)
		end,
	},

	mapping = {
		["<C-d>"] = cmp.mapping(cmp.mapping.scroll_docs(-4), { "i", "c" }),
		["<C-f>"] = cmp.mapping(cmp.mapping.scroll_docs(4), { "i", "c" }),
		["<C-e>"] = cmp.mapping({
			i = cmp.mapping.abort(),
			c = cmp.mapping.close(),
		}),
	},

	sources = cmp.config.sources({
		{ name = "nvim_lsp" },
	}),

	experimental = {
		native_menu = true,
	},
})

@hrsh7th Unfortunately it still keeps happening. I noticed that I can press enter which will select the entry but not close the menu. Could this be something to do with the menu and its closing?

Don't you get any error message? e.g. :messages

Unfortunately no, the only message you see is "main.go" [Modified] 5 lines --40%-- which you should be able to see in the screen cast.

Is there a way to trace what happens when I press this key combination?

After a lot of printf debugging I found that the problem is no longer reproducing after I switched from LuaSnip to Snippy. I also tried checking out an earlier version of LuaSnip, but had some trouble with their repository (not sure if that's a Packer issue or a Git issue or something else :sweat_smile:.

This issue is solved by latest neovim.

NVIM v0.6.1
Build type: Release
LuaJIT 2.1.0-beta3
Compiled by brew@BigSur
Issue still remains.

nvim 0.6.1 was released on the 1st of jan, it doesn't have the fix

Ah, gotcha.


Add dependency lint

@kevgo
There were a lot of dependencies in the wrong place.
This PR adds dependency lint and fixes all the issues

Yeah, this repo went through some wild and intense development! :ship:

:ship:


Removing pip installs from surelog setup

pip cmake package install fails, not needed for machine install
mutidict for venv seems misplaced, looking at commit log it was to fix something in venv, which doesn't belong here?

Install now works correctly on a clean ubuntu 22.04 machine

@aolofsson cmake is needed since the Ubuntu 20.04 version of cmake is too old and this provides an easy way to get that a working version. orderedmultidict mirrors the surelog requirements (likely once we move to Ubuntu 22.04 for the tools build we can probably remove these two).

These changes have been incorporated into #2104


Toffy environment won't build

Please refer to our FAQ and look at our known issues before opening a bug report.
Describe the bug
The current toffy environment fails to build, due to the MIBI-bin-tools update from yesterday. We need to pin mibi-bin-tools to the previous version until we update the requirements

I thought the issue was with ark-analysis' versioning? This is a different?


Update cookie macros about links styled as buttons

@hannalaakso I've added the Changelog update to this PR. Should I squash the 2 commits here, or would it better to leave them be, because they represent changes to 2 different docs (the cookie macros and the Changelog)?

@hannalaakso I've reduced the commits to 2 (1 for the Changelog update, 1 for the macros update). Can I get a review? :)


Allow direct querying of existence of orthologs

It would be useful to have a query option for:

has cerevisiae ortholog
has human ortholog
has japonicus ortholog

Currently you can do this with QuiLT by clicking in the ortholog columns (which isn't obvious to new users).  Or you can use the taxonomic conservation query.  But there's no direct way to do it.
Needed for: japonicusdb/japonicus-config#41

I've had a go at this so for japonicus we can now query by ortholog using the new "Genes with orthologs" tab in the query builder.  This allows queries like "has ortholog with: S. cerevisiae NOT has ortholog with: S. pombe":
https://www.japonicusdb.org/results/from/id/563498cf-e74c-4c39-b760-8946e5145e67
It works in the dev PomBase too:
http://dev.pombase.kmr.nz/results/from/id/9672c479-6817-48c0-9168-c7d77345cede
It's not enabled in the main PomBase site yet because I wanted to do more testing and to improve the heading and text.  Also I think there are now too many tabs.  I'd like to think about how to group the tabs together so it doesn't take up so much vertical space.
Now this is implemented I can work on: japonicusdb/japonicus-config#41

I think the interface is a bit bare-bones at the moment.  Any suggestions?  Could the text prompt be expanded.  It's currently
"Retrieve proteins that have an ortholog in:"

I think that seems OK, unless @mah11  has further suggestions.

I've added "Protein with orthologs" to the PomBase configuration.  It will be visible on the main site on Thursday morning.  It's already enabled for JaponicusDB.

Great. I  suggest we combine
Taxonomic conservation
and
Proteins with orthologs
as
Orthologs and Conservation

Ithink this one can close, seems complet? Reopen if not...


Add the ability to model errors as well as successes

It'd be nice to be able to model error states if you know what they look like. It'd be really nice to bake that into the API in a way that lets us do that cleanly. We can probably do this by providing a ResponseError typealias alongside ResponseType and adding a parseError function to Request.
We'd want to maintain compatibility with the current API (mainly for simplicity), so we should default the error to NSError and add a default implementation for ResponseError that behaves like #40
Only concern would be: What happens if parseError fails? Should it be able to? How do people recover from an Argo parsing failure? Do we care?

Only concern would be: What happens if parseError fails? Should it be able to? How do people recover from an Argo parsing failure? Do we care?

Given ResponseSuccessType and ResponseErrorType  I can see this going one of 2 ways:
  func parse(j: JSON) -> Result< ResponseSuccessType, NSError>
  func parseError(j: JSON) -> Result< ResponseErrorType, NSError>

or
func parse(j: JSON) throws -> Result< ResponseSuccessType, ResponseErrorType >

In both cases you'd get a parsing error if parsing both types fails. I understand that backward compatibility is a priority so the first is more in-line with the current API.


Add Brain#usersForAny(query)

Matches search query against all properties of users.
Very useful as universal search via email/mobile/ext/etc.. when your Hubot
knows more about the users than just name and id.

Interesting idea! I know I have done code to search multiple properties for a user, but they were specific properties, and I tried to prioritize specific ones.
Do you think that would be more useful? I'm imagining cases where some users have short usernames or whatever in some places, and multiple users would match, but only one is an exact match.
Would you mindg sharing the use case you prepared this for?

The hubot that I'm making gathers information about the users in a chat service from various sources like spreadsheets and db-s for example. So the user objects contain many fields like personal email, mobile, extension, address, working floor.. etc. But they differ from user to user.
Given that not all users have the same fields, checking for specific fields and prioritizing would be very impractical in most of the cases.
So what I do instead is applying very simple logic:

users ask Hubot to do a task and provide details about users
ex. Give deployment access to John Doe (matches 1 person with property name John Doe)
ex. Give deployment access to P2 Team (matches 4 people with property team P2 Team)
Hubot searches for users with this universal search. If the search returns as many users as the task expects, Hubot does it. If the search returns more or less - Hubot replies to the sender to give better user details.

That eliminates the need of any defensive style programming and handling edge cases while still keeping very flexible search not just by name or email.

@technicalpickles any movement on this?
I wish to submit some of the scripts from hubot as plugins but few of them depend on this.

Not yet, sorry. Traveling this week to give a talk on chatops at DevOpsDays
Rockies.
On Friday, April 24, 2015, Stoyan Dimkov<EMAIL_ADDRESS>wrote:

@technicalpickles https://github.com/technicalpickles any movement on
this?
I wish to submit some of the scripts from hubot as plugins but few of them
depend on this.
—
Reply to this email directly or view it on GitHub
https://github.com/github/hubot/pull/922#issuecomment-95858242.

cc #903, which adds a unit test foundation. If that gets merged before this, I'd like there to be unit tests for the new function.
As an aside, I feel like we should look at doing a refactor of the Brain to enable extensible user searching. Adding a new function to the core every time someone wants to process the data in a different way is...gross. No need to block this PR on that though.

Guys can we now put some attention to this PR?
@michaelansel I agree that brain needs major redesign. But in the meantime this seems to me like the appropriate generic solution. And I would argue that it is definitely less gross than #usersForRawFuzzyName and #usersForFuzzyName :)
Just as in previous PRs I don't mind writing tests.

Just as in previous PRs I don't mind writing tests.

This would be really helpful in moving this forward. The tests in #903 landed last week and should hopefully be a nice platform to build on.

When thinking about new functionality, I am primarily considering it from the possibilities it adds, but also from the perspective of maintaining it long term, including ease of use and understanding for developers using it. My main concern about this is that it searches all user attributes, and we don't know ahead of time what type of attributes adapters and scripts are going to stash in the brain for each user, so it could give confusing results without much insight into why.
For example, let's say a script lets you add your favorite piece of furninture, and you add a script using this to search for people. If I said my favorite piece of furniture was a bench, and someone searches for 'Ben', my user is going to come up because user.favorite_furniture is bench for me, and it's completely unobvious to someone searching for "Ben" why "Josh Nichols" is coming up.
To your previous example, it sounds like there are a lot of different fields and users won't have them all, but there may be some well known ones (name, phone number, etc). To me, that says there should be a generic way to filter the brain by user, and possibly a more specific way to query a fixed set of attributes.

@technicalpickles I understand the concern and the example provided is very good. I'm not really sure though if this illustrates a problem with the api itself or with incorrect usage of it.
Because if the end-user was surprised "Josh Nichols" showed up that highlights that the developer of the robot didn't document the people search well or didn't display enough details to the end-user. Also that the developer didn't think on the implications of using all-attributes search. In other words this is like saying regex is bad because somebody can write . without knowing it matches everything.
It is responsibility of the developer to understand the api-s he uses and to apply them correctly. Maybe adding a warning in the method description will help.
On the other hand your concern is still very valid. This method makes it easier to shoot yourself in the foot. Maybe that on its own is a strong enough argument to reject the PR. Maybe it is very easy to not think on the possible side effects of using this method.
I suggest you think on it all and make a call. Either let me know I should put some effort in tests, documenting risks, etc. Or choose to reject it. I'm ok with both decisions as I see reason in both.

@sdimkov thanks for the thoughtful response!
After mulling it over, I'd prefer not to add this given the concerns I've talked about already. It should be relatively easy to make helper methods on top of robot.brain.users() using Array#filter or underscore to pull out users matching what you want.

Oh, some random ideas I was considering too was an update to robot.brain.users to take a callback to filter the users, but again, I don't think that gives you much more than getting the users and filtering yourself.

The only difference I see is around interfaces: if you are pulling from an internal data structure, that might break if we change the innards. If there is a fixed function interface separate from the data structure, we can test for and protect the interface separate from the data structure (c.f. the problems we are having with #917)


Rust support

It would be awesome if this plugin supported rust. I have a lot of notes and samples that would like to run.
Looking at the code, it seems it should be possible. I think I could provide a PR somewhere in the future.
Thanks!

Can we use cargo-eval for this purpose ? I yes I can start work on this.

Can we use cargo-eval for this purpose ? I yes I can start work on this.

cargo-eval executes Rust in a script like fashion, right? That would be perfect!

Released in #50


Tried to make the code simpler

Related Issue or bug

Info about Issue or bug

Fixes: #236
Proposed Changes
Removed from google.colab.patches import cv2_imshow, removed from skimage import io, included the write action
Additional info
Replace the image filenames while testing the code, incase the filenames doesn't matches with the desired image filename.

Approving this and will merge after 8

Okay..!!

Okay..!!

Fixes #241
Added the Face-Swapping file

This PR fixes both #241 and #236

Sure

hi the image in the face-swapping sample readme is not visible.

I am working on it.. please wait

Hey, I think all the changes made are proper. Please, review and give me a update.


auto_san_validation support

Signed-off-by: Faseela K<EMAIL_ADDRESS>Please provide a description of this PR:
RFC: auto san validation support
To help us figure out who should review this PR, please put an X in all the areas that this PR affects.

[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[X ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure

@kfaseela: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

release-notes_istio
64f5015b55de74266cfd28e4304037824b5c64ee
link
true
/test release-notes_istio

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

@kfaseela: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

unit-tests_istio
ce2a76db71d2f3d475fa6efd6b6b373ffd7c1451
link
true
/test unit-tests_istio

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

/test unit-tests_istio

@jacob-delgado: new pull request created: #39004

In response to this:

/cherry-pick release-1.14

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


Add an option to show only icon for commit and rollback actions

Hi,
to save horizontal screen estate on my vertical monitor I would like to remove the text for the commit and rollback buttons, I know the icon and I don't need the text to guide me anymore. I don't think icon only should be default however, since it helps new users.

@p91paul I can revert back to "Commit" in Italian localization. ' Will this solution to the problem suit you?

Is an option to show icon only, like the other buttons in the toolbar, not feasible? "Commit" is shorter, hence better, but still much larger than the icon.

@p91paul So, like part of solution i made the commit button shorter. (available in version 7.2.1)
and I'll think about adding a new item to the preference


1.11.2 Bleeding Switching Phase error when eliminating a block

Updating old plugins for API 7.0.0 newer bleeding Vanilla 1.11.2s, getting a reproducible Switching-phase error...
Pastebin to error+stacktrace
https://pastebin.com/Bzx9gWzM
Stacktrace shows failure is triggered at the following line of code.   This code is used if a gravel or sand block is broken under certain conditions, in which case I spawn a gold nugget and set the block type to air so as to prevent the sand-block-item being dropped, and used to work just fine.
loc.setBlockType(BlockTypes.AIR, BlockChangeFlag.NONE, Cause.source(container).build());
If I replace it with:
loc.removeBlock(Cause.source(container).build());
I get the same switching phase error, with the downstream stacktrace showing the slight difference
/*     net.minecraft.world.WorldServer.setBlock(SourceFile:2282)
/*     org.spongepowered.api.world.extent.Extent.setBlockType(Extent.java:190)
/*     org.spongepowered.api.world.Location.removeBlock(Location.java:631)
/*     com.prennet.boomod.Goldpanning.onBlockbreak(Goldpanning.java:236)

Am I doing something wrong now with this code/approach, or is the issue in Sponge?

Please report cause tracking issues on the SpongeCommon issue tracker. There is no cause tracking code in SpongeVanilla directly so it's an issue in SpongeCommon.


Disks are slow on the VM

I have pinged #tech-help asking for advice, but I think this could really slow down our work. If anybody else is having troubles, then let's talk.
In my experiments last night, I found that the disks on the Linux VM are about five time slower than on my laptop when reading. It took about 7 hours to extract all the exif metadata from the plankton images and write it to a CSV file. Also some operations like "du" are extraordinarily slow and give inconsistent results.
The Azure image is a Standard_D16_v3 (found with curl -s -H Metadata:true "http://<IP_ADDRESS>/metadata/instance?api-version=2017-08-01") which should mean that we have 16 CPUs and 64GB of memory.
It seems that /scratch uses a faster, SSD disk, but that space is not durable and doesn't survive reboots.
Thoughts:
If your algorithm can cache images in memory, that's probably going to be faster than continually reading from disk.
There may be some benefit in having a temporary copy of the images on /scratch (i.e. cp -r /data /scratch/data)

See documentation


LOG4J2-673 – plugin preloading fails in shaded jar files

Support for plugin preloading through the standard javax.annotation.processing tool was adding in LOG4J2-595
But the plugin processor always creates and stores the processed "Plugin" annotated classes into the same "Log4j2Plugins.dat" file. This works fine when the classpath consists of individual jar files, but fails when shaded jar files are used.
Add a ResourceTransformer that can be used in conjunction with the maven-shaded-plugin to merge multiple Log4j2Plugins.dat into one.

Shit, I closed this by accident. Meant to close #5.


Added Stroke Predication

Hi @TAHIR0110 ,
I hope you're doing well. I've addressed the issue #222  and created a pull request to resolve it.
Could you please review the PR and let me know if any adjustments are needed?
People aged more than 60 years tend to have a stroke. there is not much difference between stroke rate concerning gender. People working in the Private sector have a higher risk of getting a stroke. And people who have never worked have a very less stroke rate. there is not much difference in the chances of stroke irrespective of smoking status.

@TAHIR0110 pls review and merge

@Atharv714 pls review and merge

@Khushi-Pushkar merged!


Py3 tutorial

Make tutorial-code py3 compatible.

Fix print-statement.
Drop {}.iterkeys().
STILL left one iteritems() (doc/tutorial/cproject.py)

Coverage remained the same at 99.76% when pulling 7adf594bfe6bba86ee9b1a08248e1823e639fa15 on ankostis:py3_tutorial into 61d2a2eef6b46da65efb0afb8d919dfe4959c87d on pydoit:master.

Take 2: Used future modernize with hand-removing needless changes.
Left from __future import print statement in case the tutorial-code gets test-cased ever.

Coverage remained the same at 99.73% when pulling 103d0af75c188f564c6e4bc6f48fb9b13492680c on ankostis:py3_tutorial into 545e4e67c93496d75440fe9d98db06dd51b60b09 on pydoit:master.

Coverage remained the same at 99.73% when pulling 4feaa8894f0e8872dd04a982c5ffb6df1d406370 on ankostis:py3_tutorial into 545e4e67c93496d75440fe9d98db06dd51b60b09 on pydoit:master.

thanks!

In most cases, you could leave the future import out, provided that you don’t use commas.
>>> #py2
>>> print("hello")
hello
>>> print("hello", "world")
("hello", "world")

>>> #py3
>>> print("hello")
hello
>>> print("hello", "world")
hello world


Move protobuffer handling to different level

Parsing the commit request and populating the response should happen at the protobuffer interface level rather than in DatastoreDistributed.

https://ocd.appscale.com:8080/job/Daily Build/6025/

http://ocd.appscale.net:8080/job/Daily Build/6164/
http://ocd.appscale.net:8080/job/Datastore/730/


Verbose traceback exn on gossip?

{
  "timestamp": "2019-11-07 20:38:26.883024Z",
  "level": "Fatal",
  "source": {
    "module": "Init__Coda_run",
    "location": "File \"app/cli/src/init/coda_run.ml\", line 419, characters 56-63"
  },
  "message": "Unhandled top-level exception: $exn\nGenerating crash report",
  "metadata": {
    "exn": "(monitor.ml.Error \"Option.value_exn None\"\n  (\"Raised at file \\\"src/error.ml\\\" (inlined), line 9, characters 14-30\"\n    \"Called from file \\\"src/option.ml\\\", line 69, characters 4-21\"\n    \"Called from file \\\"lib/gossip_net/gossip_net.ml\\\"
MUCH TOO MUCH TRACEBACK

25kb
 grep "Generating crash report" coda.log | jq .metadata.exn | wc
      1    2439   24941

coda.log.gz

@jkrauska can you offer a spec on what the compressed/elided log should look like?


Parameter Store path requires trailing slash

I created some parameters in parameter store with a "/dev/appname" prefix, e.g. "/dev/appname/spring.datasource.url". I configured the spring.config.import property via an environment variable. As per the documentation, I did not include a trailing slash.
SPRING_CONFIG_IMPORT=aws-parameterstore:/dev/appname

Looking at the debug log, I saw that a leading period "." was added to the property name, e.g.
2024-02-20T09:37:54.470+11:00 DEBUG 33036 --- [           main] i.a.c.p.ParameterStorePropertySource     : Populating property retrieved from AWS Parameter Store: .spring.datasource.url

This meant that my app wouldn't start because it couldn't connect to the database, since the "spring.datasource.url" was not populated. This behaviour makes sense looking at the ParameterStorePropertySource code in the getParameters method, which removes the path "/dev/appname" leaving "/spring.datasource.url", then replaces all remaining slashes with periods, i.e. ".spring.datasource.url".
Changing the path to include a trailing slash, i.e. "aws-parameterstore:/dev/appname/" resolved the problem, and the correct "spring.datasource.url" property was populated. To prevent others experiencing this problem in the future, I think that either

the examples in the documentation should be updated to specify a trailing slash in the parameter path, or
the code should be updated to strip any leading slashes after the path is removed.

I'm happy to submit a PR if that helps.
I am using spring-cloud-aws-starter-parameter-store 3.1.0.

Thanks for reporting, this is normal behaviour actually since we are loading by the path. Which makes sense to end with a / then.
I would update docs and examples to highlight this.
Are you interested in making PR @thelateperseus ?

Duplicate of #923

Thanks for reporting, this is normal behaviour actually since we are loading by the path. Which makes sense to end with a / then. I would update docs and examples to highlight this. Are you interested in making PR @thelateperseus ?

PR #1086 submitted.


Parameters: [referencetotransformerrootstackenv10C5A902Ref] do not exist in the template

How did you install the Amplify CLI?
Windows Installer, then amplify upgrade
If applicable, what version of Node.js are you using?
18LTS
Amplify CLI Version
12.2.2
What operating system are you using?
Ubuntu under WSL
Did you make any manual changes to the cloud resources managed by Amplify? Please describe the changes made.
No
Describe the bug
No matter the change I want to make, amplify push always fail due to missing parameter in CF template.
First I wanted to add custom lambda conflict resolver to one of my models. After I have made the lambda and wanted to push, it failed.
Then I made a complete reset by hitting:
amplify env pull --restore
Cleaned up everythig
Then I wanted to create a bunch of cognito user groups in my auth, so I walked through auth update and added a couple of groups. Again trying to push, same error.
CLI Error

🛑 The following resources failed to deploy:
Resource Name: ConnectionStack (AWS::CloudFormation::Stack)
Event Type: update
Reason: Parameters: [referencetotransformerrootstackenv10C5A902Ref] do not exist in the template

I have checked locally the CF template and here is some related pieces from it (I am not expert in CF)
CloudFormation Template

{
    "Parameters": {
        "env": {
            "Type": "String",
            "Default": "NONE"
        },
...
"Parameters": {
                    "DynamoDBModelTableReadIOPS": {
                        "Ref": "DynamoDBModelTableReadIOPS"
                    },
                    "DynamoDBModelTableWriteIOPS": {
                        "Ref": "DynamoDBModelTableWriteIOPS"
                    },
                    "DynamoDBBillingMode": {
                        "Ref": "DynamoDBBillingMode"
                    },
                    "DynamoDBEnablePointInTimeRecovery": {
                        "Ref": "DynamoDBEnablePointInTimeRecovery"
                    },
                    "DynamoDBEnableServerSideEncryption": {
                        "Ref": "DynamoDBEnableServerSideEncryption"
                    },
                    "referencetotransformerrootstackenv10C5A902Ref": {
                        "Ref": "env"
                    },

Basically now I can't make any changes to the backend because of this blocking error
Expected behavior
Push goes well
Reproduction steps

Make any change to backend
Try to push

Project Identifier
backend-config.json

{
  "features": {
    "graphqltransformer": {
      "addmissingownerfields": true,
      "improvepluralization": false,
      "validatetypenamereservedwords": true,
      "useexperimentalpipelinedtransformer": true,
      "enableiterativegsiupdates": true,
      "secondarykeyasgsi": true,
      "skipoverridemutationinputtypes": true,
      "transformerversion": 2,
      "suppressschemamigrationprompt": true,
      "securityenhancementnotification": false,
      "showfieldauthnotification": false,
      "usesubusernamefordefaultidentityclaim": true,
      "usefieldnameforprimarykeyconnectionfield": false,
      "enableautoindexquerynames": true,
      "respectprimarykeyattributesonconnectionfield": true,
      "shoulddeepmergedirectiveconfigdefaults": false,
      "populateownerfieldforstaticgroupauth": true
    },
    "frontend-ios": {
      "enablexcodeintegration": false
    },
    "auth": {
      "enablecaseinsensitivity": true,
      "useinclusiveterminology": true,
      "breakcirculardependency": true,
      "forcealiasattributes": false,
      "useenabledmfas": true
    },
    "codegen": {
      "useappsyncmodelgenplugin": true,
      "usedocsgeneratorplugin": true,
      "usetypesgeneratorplugin": true,
      "cleangeneratedmodelsdirectory": true,
      "retaincasestyle": true,
      "addtimestampfields": true,
      "handlelistnullabilitytransparently": true,
      "emitauthprovider": true,
      "generateindexrules": true,
      "enabledartnullsafety": true
    },
    "appsync": {
      "generategraphqlpermissions": true
    },
    "latestregionsupport": {
      "pinpoint": 1,
      "translate": 1,
      "transcribe": 1,
      "rekognition": 1,
      "textract": 1,
      "comprehend": 1
    },
    "project": {
      "overrides": true
    }
  },
  "debug": {
    "shareProjectConfig": false
  }
}

Log output

# Put your logs below this line

Additional information
No response
Before submitting, please confirm:

[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.
[X] I have removed any sensitive information from my code snippets and submission.

Thx @ykethan . This issue is quite blocking as I can't make any changes to the backend, including some critical bug fixes I need to do. I would appreciate if someone can take a look on it asap.

Hi @kolodi, we will likely need some more information to properly troubleshoot this issue. Could you use amplify diagnose --send-report and comment with your project identifier?
https://docs.amplify.aws/cli/reference/diagnose/

Could you try the steps outlined here?
That might resolve the issue.

Could you try the steps outlined here?
That might resolve the issue.

They are talking about issue with API Key.
My issue is related to missing referencetotransformerrootstackenv10C5A902Ref
I have started to follow the instruction and I don't find the CreateAPIKey parameter.
api/[name]/parameters.json

{
  "AppSyncApiName": "sarpc",
  "DynamoDBBillingMode": "PAY_PER_REQUEST",
  "DynamoDBEnableServerSideEncryption": false,
  "AuthModeLastUpdated": "2023-01-26T11:51:55.606Z",
  "AuthCognitoUserPoolId": {
    "Fn::GetAtt": [
      "authsarpc",
      "Outputs.UserPoolId"
    ]
  }
}

Hi @dpilch. Can you help me with the issue. My project is still blocked, I can't do any updates to the backend.

@kolodi, sorry for the slow reply. I am having trouble diagnosing the issue. Are you still experiencing the error?

@dpilch Yes, I am still unable to push any changes to the backend. It has been on stall all this time as I was unable to investigate further the problem alone as I don't know much about CF and amplify related templates and transformers.

Hey @kolodi, As a workaround, would you mind creating a new folder and executing amplify pull? When prompted, choose Y for "Do you plan on modifying this backend? (Y/n) Y." After completing this step, insert a new line in the schema file, proceed to run amplify push, and let us know if the push is successful.

Hey @kolodi, As a workaround, would you mind creating a new folder and executing amplify pull? When prompted, choose Y for "Do you plan on modifying this backend? (Y/n) Y." After completing this step, insert a new line in the schema file, proceed to run amplify push, and let us know if the push is successful.

I would need to create new backend environment to do this (or other) test. Last time I tried to push there was a side effect when all groups were deleted, so my customer had to recreate them all and reassign users.

update: creating new env and pushing into it worked


Topic request: libsecp256k1-zkp

It would be nice if the glossary covered libsecp256k1-zkp and its history and features. PR 117 with ECDSA adaptor signatures were recently merged. But it would be nice if other special features were also covered.

If the topic is added, it would be nice if the "Adaptor signatures" topic would mention it. Right now, it says "This is also possible in ECDSA but it requires novel algorithms that are either comparatively slow or require additional security assumptions". Is that still true?
If the topic were added, it would be nice if the PTLC topic would mention that it is possible to build PTLCs for ECDSA using libsecp256k1-zkp.

@ysangkok Thanks for the suggestion!  I'm hesitant to create topic pages for specific software.  We did create a page for HWI in our initial batch of topics and I've been kind of regretting it since (and I think I'd like to remove the HWI page at some point).  It feels weird to me mixing topics about pure ideas with topics for specific implementations.  It also gets confusing when we mention the software (e.g. a merged PR for HWI in a newsletter) but don't add a link to its topic page.
Re the signature adaptors page, I think it already describes what PR 112 does in the last sentence of the main text:

This is also possible in ECDSA but it requires novel algorithms that are either comparatively slow or require additional security assumptions. Instead, an alternative scheme for adaptor signatures exists for Bitcoin that uses 2-of-2 OP_CHECKSIG multisig; this is less efficient and possibly less private—but arguably simpler and safer than multiparty ECDSA.

Re the PTLC page, I think that also currently describes the state of the art with regard to ECDSA in the last paragraph, basically that it's possible but it seems most developers are waiting on the availability of schnorr to put much time into it.
I'll see if I can work a mention of the PR 119 merge into next week's newsletter; that way I can add it to the various topic pages and so it'll be there for anyone who looks at the list of mentions.
Thanks again!

Thanks, I see that latest issue covered it.


Ignoring hidden files

When trying to ignore .DS_Store files from my computer none of these rules seem to work
'excluded_files' => ['DS_Store', '*.DS_Store', '.DS_Store']

Never mind, it seems to be working :)


Plugin API to get window width and event which is triggered when it changes

Leader
User story
Plug-in developers want to change the style of their plug-ins or turn them on and off according to the window width, etc. Re:Earth extends the Plug-in API to provide an API for obtaining the current window width. It also provides a function to register an event to be notified when the window width changes, so that plug-ins can detect changes in window width.
Requirements
Expose following Plugin APIs

window width

When this API is called, Re:Earth will return the value of window.innerWidth. For more extensible API, plz give your idea for example supporting window.innerHeight, window.outerWidth, etc.
when window.onresize is called, this Plugin API event reearth.on('resize', () => {})  will be triggered as window size is resized.
return isMobile

Examples
Testing list

[ ]

We already support this kind of API. So I will close this issue.


Answer parsing feature, automatic paging, retries

@jarthod This supersedes https://github.com/RipTheJacker/survey-gizmo-ruby/pull/46 but might be better to merge them as separate features.  Unfortunately because branches are local to my project I can't make a separate PR to merge this branch into my other one so it's hard to see the difference from https://github.com/RipTheJacker/survey-gizmo-ruby/pull/46 until that is merged to master.
Basically there are now built in retries for net timeouts and rate limit exceeded issues, if you turn them on in the configuration (they are turned off by default).

tested/working...

closing; will open a new PR that resolves conflicts with https://github.com/RipTheJacker/survey-gizmo-ruby/pull/47


Replace streaming-percentiles-js with this cross-compiled version

Requires making and publishing a node module and also testing things like access from browser to make sure backwards compatibility is not broken

Need to generate a UMD (perhaps with rollup.js) with the same streamingPercentiles name.
Following use cases should work:

require.js   require(['sp.js'], function (sp) { var gk = new sp.GK(0.1); });
node.js   var sp = require('sp.js');  var gk = new sp.GK(0.1);
HTML

Consider whether it is OK if previously-public member variables (gk.n, gk.S) are no longer accessible.

Done as part of v2.2.0


Extracts WeakConcurrentMap from PendingSpans and uses for trackOrphans

This formalizes that PendingSpans was derived from weaklockfree, pulling
it up so that we can decouple orphan handling in the future.
This also fixes attribution which was in the source, but not NOTICE
before. Sorry @raphw (though not sure you noticed.. pun intended)
Finally, this does a fair amount of simplification on the orphan path.
Most importantly, we pre-emptively fork the context as opposed to
copying most of its values for the orphan path.

The jar ends up a smidge smaller than it was before, still rounding to 216KiB
We haven't looked at size in a while, so probably owe a sweep for duplicated or unnecessary bytecode.


Update Font Awesome dependencies

Fixes issue where aliases of renamed Font Awesome icons weren't recognized when running npm run build
Closes #9101, closes #9048, closes #9049, closes #9050, closes #9051

What’s left before this PR is ready to move out of Draft status?
Just wanted to make sure this didn't break anything else. After looking through the scripts, it looks like the build script is the only one that uses these dependencies.


Click does not work randomly

Hi @Webb-L
Click does not work randomly!
https://user-images.githubusercontent.com/23485114/150088184-7c37f8fc-dc41-4168-a0c0-4154617a34f9.mp4

Hi @Webb-L Click does not work randomly!
Video.mp4

I haven't met you on my device.
https://user-images.githubusercontent.com/57182600/150093622-16667e58-4dc4-4cc6-830a-4c3db53b3632.mp4
I suggest you try using the steps I sent the video.
https://user-images.githubusercontent.com/57182600/150094358-2c57672d-9a1d-48f6-85d3-b59728f60e99.mp4

I close this issue, this issue is only on my laptop!

I close this issue, this issue is only on my laptop!

I close this issue, this issue is only on my laptop!

Ok

Which OS do you use?

Which OS do you use? I think this problem occurs in Firefox on Windows.

I use Kali Linux
I will use Windows to test later.

Which OS do you use? I think this problem occurs in Firefox on Windows.

I use Kali Linux I will use Windows to test later.

Thanks.

Which OS do you use? I think this problem occurs in Firefox on Windows.

I use Kali Linux I will use Windows to test later.

Thanks.

I didn't find your problem in my Windows test.


Setting timer with voice "app not installed"

When trying to set a count down timer with google voice she says the app is not installed? I am running Android Oreo 8.0 stock. Works with the old version DeskClock but maybe it's because I am on Oreo and this is an newer version of the clock app.

I think it's because I am on Oreo and this is a newer version of the clock. Closing issue.


can't get  return value  when i used Event Handlers

    const EVENT_GENERATE = 'generate';
    public function generate()
    {
       return (string)mt_rand(100000, 999999)
    }

in my controller
$code=  $this->trigger(self::EVENT_MAKE_CODE));
//$code =  true;

how to get this  return value?   or  My mistake   Improper use of the event?
thk!

Event::trigger is a void function.
If you want to return some value from the event - create a custom Event class and pass it as a second argument to the Component::trigger() method.

Although I don't think that using events to return something is a good idea. Multiple handlers may be attached to a single event. It's better to use behaviors, helpers or traits for your case.

And the last one. For the future please notice, that GitHub is for bug reports. We are happy to help you on support forum or in gitter room https://gitter.im/yiisoft/yii2. It's always better to text there, unless you are sure it is a Yii2 core problem.

all right , i will send question to   to those place next .  but  still thank  you .


Issue in employee support copilot

Hi @james-tn,
We are facing an issue with hr_copilot after updating the value in secrets.env after updating USE_AZCS value to True and providing all the required URL, Key and Indexes names.
please find the below screenshot for reference

When we try question to the copilot it throws an error TypeError: Session.request() got an unexpected keyword argument 'vectors'
please find the below screenshot for reference

Please help us in resolving this issue

I think it's because Azure AI Search recently updated their SDK.
If your goal is to experience with multi-agent, then you can check out this newer demo: https://github.com/microsoft/OpenAIWorkshop/tree/main/scenarios/incubations/copilot/travel_leisure
If you want to update the code yourself, follow this example to update the search function: https://github.com/Azure/azure-search-vector-samples/blob/main/demo-python/code/basic-vector-workflow/azure-search-vector-python-sample.ipynb


typeStr

typeStr represents the type the user put in, the user cannot put in a type that includes commas (e.g. std::map<int, int>) without first aliasing it (e.g. using IntMap = std::map<int, int>; ), this severely hampers its usefulness, what we want back from typeStr is either...
A.) The exact text the user declared the field with
B.) Text that could be used to declare a perfectly equivalent field

Using something like this allows for auto-determination of the type, rather than printing out the type aliases the user would be forced to provide (like "IntMap").
    template <typename T>     struct TypeToStr {         static constexpr auto Get() {             return ConstexprStr::substr<ConstexprStr::length_between(__FUNCTION__, '<', '>')>(__FUNCTION__ + ConstexprStr::find(__FUNCTION__, '<') + 1);         }     };
Now that typeStr is out of the way, there's no reason the user would have to pass in the type explicitly, everything in the REFLECT macro is a sub-class of the parent class, ergo we can get the type using decltype(fieldName), this greatly improves the ease of writing REFLECT macros, reduces maintenance (no need to change the type in the REFLECT macro if the type changes in the class) and the potential for user error.
Car Reflect Macro Before...
REFLECT(Car, (R<Wheel[4]>) wheels, (B<std::vector<std::string>>) occupants, (B<OccupantIdType>) occupantId,
    (R<OccupantCupHolderUsageType>) occupantCupHolderUsage,
    (R<std::vector<CupHolderPtr>>) cupHolders,
    (R<FuelTank>) fuelTank, (B<float>) milesPerGallon)

Car After...
REFLECT(Car, (R) wheels, (B) occupants, (B) occupantId, (R) occupantCupHolderUsage,
    (R) cupHolders, (R) fuelTank, (B) milesPerGallon)


APO feature real ip resolve issue

When we activate the APO feature, the real ip is not resolved on the server side and We only see the 2a06:98c0:3600::103
Real ip module loses its functionality on the server side. but why? When I turn off the APO feature, the IP addresses are resolved, the problem disappears. I cannot actively use the APO feature yet because the IP addresses have not been resolved.
Do you have a solution to this situation?

closing this as a dupe in favor of #297 - please watch that issue for updates


Bad error message when trying to start a bot

Describe the bug
I have cloned the https://github.com/microsoft/meeting_assistant repo. I opened up the Timer project in composer. I enter in my LUIS Key, AppID, App Password. It states.

Version
v1.0.0

Browser

[ ] Chrome
[ ] Safari
[ ] Firefox
[ x] Edge

OS

[ ] macOS
[ X] Windows
[ ] Ubuntu

To Reproduce
Steps to reproduce the behavior:

Go to https://github.com/microsoft/meeting_assistant clone the repo.
Open in composer the MSMeeting-Timer bot which is under skils
Change setting to add in AppId, AppPassword, Luis Key
Start Bot.
See error

@zhixzhan or @lei9444 can either of you look at this?

This should be fixed in https://github.com/microsoft/BotFramework-Composer/pull/3197.
To mitigate this issue, you can try latest composer master.
By the way, this will also hit following error.

mitigation would be : rename the bot without "-".
It is wired error as no error pop up if I create bot with "-" .

@hibrenda Only absolute URLs are supported issue is cause by lubuild. @lei9444  will help to solve this issue.

Now figured out as above renaming does not change lu file name in the dialog file. so this step work around the luis publish. That's why no errors pop up.

endpoint issue is tracked by https://github.com/microsoft/BotFramework-Composer/issues/2986 .


Is it possible to hide notifications in the bottom like Initializing recorder, Recording started, Filepath.. ? Thank U

Will add the feature in the next release.

the requested feature has been added in the commit 743160d.


Fixes #22 Only allow local agent access to task

Also includes some PEP8 fixes.

Fixes #22

LGTM


Fix SSO with Xfinity

Please follow the guide below

You will be asked some questions, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your pull request (like that [x])
Use Preview tab to see how your pull request will actually look like

Before submitting a pull request make sure you have:

[x] At least skimmed through adding new extractor tutorial and youtube-dl coding conventions sections
[x] Searched the bugtracker for similar pull requests
[x] Checked the code with flake8

In order to be accepted and merged into youtube-dl each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[x] Bug fix
[ ] Improvement
[ ] New extractor
[ ] New feature

Description of your pull request and other information
Changes to the auth redirect broke the Comcast_SSO provider.
A previous attempt was made here, but it wasn't working on the latest Comcast auth portal. https://github.com/rg3/youtube-dl/pull/11258

This worked for me thanks!

Just to be clear, Xfinity authenticates differently if you are coming in from one of their IP addresses vs. if you are coming in from the IP of some other provider.  I tested this patch coming from an Xfinity IP, and it works!  Hope it can be merged soon because Xfinity (a.k.a. Comcast) is the largest or second largest cable provider in the USA (since Charter's recent merger they may be the largest now, not really sure).

@remitamine could you take a look at this?

there are multiple problems, with the AdobePass code:

the code needs to be refactored to into a design similar to the way extractors work for a better code quality and to make easy to add new providers(not a giant if-else block).
the auto login workflow can't be tested by the reviewers.
the requirement of an account(for review or for adding support for requested TV providers in the issues) is also one of the reasons that most of the requests are not processed.

so, i think the best way(especially with the large number of TV providers) in my opinion is to have a way to extract the needed session from the browser(the session is stored in the Local Storage, and it's reason why this can't be supported using the --cookies option) and pass it to youtube-dl, and then deprecate the current --ap options, this method makes it possible to use all TV Providers with youtube-dl without having to add support for each TV provider manually and reduce the maintainability burden.

That makes sense.  Is there a known way to export and use session storage data, or would we need to implement that ourselves.

as far as i know there isn't a addon that can export local storage data, the manual way is to look at the local storage is to use the Developer Tools -> Storage -> LocalStorage.

as far as i know there isn't an addon that can export local storage data, the manual way is to look at the local storage is to use the Developer Tools -> Storage -> LocalStorage.

The problem I see here is that whatever shortcomings there may be with the current --ap options, just about anyone can figure out how to use them, and in many cases you can get by without ever going into a browser (except to get the required link to a media item).  Maybe I'm wrong, but the sense I get is that what you're proposing here sounds much more complicated, particularly if users have to go into Developer Tools and then attempt to figure out what they need to copy, and to where.  Please don't make usage any more difficult than it already is! If you do you will lose a lot of users that can barely figure out which options they need to use as it is.
That said I understand your desire to redesign the current AdobePass code, however in this case all we need is the addition of a few lines to make this work again for users of one of the largest cable providers in the world.  It always baffles me a bit that when someone hands you guys a solution and several users report it works, and it's not a very complicated fix, that you still often seem to mull it over for months before applying the fix.  Or, as in this case, rather than making the quick fix that will get things working again, you start to think about rewriting a major section of the module or even the entire module.  It's all well and good that you want to improve the software, but you can do that whether or not you apply a patch such as this one.  This may be a case of not being able to see the forest for the trees, where the forest is all your users that just want the program to work and really don't care that much about how it's coded, whereas the trees are your desire for coding perfection (or as close to it as you can get).  Whatever the flaws of the current AdobePass code may be, for right now it is working for many users and could work for more users if you would simply add the few lines in this patch.  Obviously it's your software and you can support or not support whatever you want, but I have to wonder what it was about this particular patch that made you start thinking about making serious changes that could take months or years to develop, rather than "how can we get this working again for our users?"
The other thing I wanted to briefly address is you spoke about the requirement of an account.  Unfortunately, as you've probably discovered, very few people are going to hand over their account credentials and even if they did, in this particular case it would do you no good because this particular cable company's authentication acts differently depending on whether you are coming in from one of their IP addresses or someone else's.  So even if you had someone's username and password, you would probably not see the authentication issues that those actually on their network are seeing (unless perhaps you somehow got a VPN connection into their network).  I would suggest that there are probably situations such as this one where you need to have a little trust in the reports that users post, that tell you if a particular fix is working.  If we were talking about major code changes I'd understand your reluctance more, but this is simply the addition of a few more lines in a single block of code.
Anyway, in the long term I fully support your desire to clean up the code and maybe make it more universally applicable IF it doesn't make the program harder to use, or require users to understand the inner workings of web browsers or something like that.   But if it's going to make usage of your software more complicated, then my plea would be to leave well enough alone.  Users don't care much about how a program is coded, but they do care whether it's easy to use, and if something breaks they do care about seeing it get fixed sooner rather than later.  You could have a program that takes 10,000 lines of code to do something that could be done in 10 lines of code, and as a user I'm not going to care as long as the program works and isn't a big hassle to use!  Thank you for all your efforts on this software; I truly hope you can come up with something that allows you to have code more to your liking without sacrificing ease of use.

Maybe I'm wrong, but the sense I get is that what you're proposing here sounds much more complicated, particularly if users have to go into Developer Tools and then attempt to figure out what they need to copy, and to where.

you're making me say things that I didn't even mention at all, I simply answered @ealgase question on the current state of exporting the Local Storage data, I didn't talk here about the user, obviously when I propose something for the user, I will try to make it as simple as possible, such as creating an addon to export the Local Storage similar to the add-ons available for cookies.

If you do you will lose a lot of users that can barely figure out which options they need to use as it is.
This may be a case of not being able to see the forest for the trees, where the forest is all your users that just want the program to work and really don't care that much about how it's coded, whereas the trees are your desire for coding perfection (or as close to it as you can get).
Users don't care much about how a program is coded, but they do care whether it's easy to use and if something breaks they do care about seeing it get fixed sooner rather than later.

so only user's opinion matter and has the priority, but our need(developers) for clean and maintainable code does not matter?

It always baffles me a bit that when someone hands you guys a solution and several users report it works, and it's not a very complicated fix, that you still often seem to mull it over for months before applying the fix.

it's not about if it's working, I can make the worst possible code and make it work, the user would be happy of course, but for us developers, it will be more difficult for us to maintain it and keep it working while making changes in other parts as well, it's not just about it's working, it's about making the code up to the project's coding standards(make it less possible for the code to be broken...), and in this case there was a case that previously happened with the Verizon code, I merged the code that contains the auto-login functionality even though I couldn't test it and check if it can be improved and then shortly after merging it stopped working, and we got into the same cycle users reporting issues and complaining and we have to deal with it.

Or, as in this case, rather than making the quick fix that will get things working again, you start to think about rewriting a major section of the module or even the entire module.
but I have to wonder what it was about this particular patch that made you start thinking about making serious changes that could take months or years to develop.

again, this is inaccurate, I didn't start now thinking about refactoring as an excuse for not merging this, the need for refactoring has been expressed from the beginning by @dstftw, and I do agree that the refactoring is needed, with the current code, every addition makes the code more difficult to deal with, and makes the changes for a particular TV provider might break support for others in some cases, it's not about this patch in particular, it's about the accumulating effect of all the patches related to the AdobePass code.
in the end, it's my fault for adding the code directly without sending it as PR for code review, and may I shouldn't create the support this way at all and instead from the beginning try to figure out why it doesn't work with cookies and make a working solution for all the TV Providers, but now I'm not even sure if all of that is really worth it.

Maybe I'm wrong, but the sense I get is that what you're proposing here sounds much more complicated, particularly if users have to go into Developer Tools and then attempt to figure out what they need to copy, and to where.

you're making me say things that I didn't even mention at all, I simply answered @ealgase question on the current state of exporting the Local Storage data, I didn't talk here about the user, obviously when I propose something for the user, I will try to make it as simple as possible, such as creating an addon to export the Local Storage similar to the add-ons available for cookies.

Understood, but my point is that using the cookies addon requires an extra step that's normally not required.  For example, if I have a list of URL's of media to get, I normally can simply enter youtube-dl and the URL and that's all I need - I don't need to leave the command prompt at all.  But when I have to use a cookies file, now I need to fire up the browser, go to the provider site, download the cookies file, and only then can I begin.  It's not a LOT of extra work in the grand scheme of things, but it is going from easy-peasy to harder, and involves more steps that someone unfamiliar with the process may not understand.  The first time I had a need to use a cookies file I was totally lost as to the process involved, and it took me much more time than it should have to finally figure it out.

If you do you will lose a lot of users that can barely figure out which options they need to use as it is.
This may be a case of not being able to see the forest for the trees, where the forest is all your users that just want the program to work and really don't care that much about how it's coded, whereas the trees are your desire for coding perfection (or as close to it as you can get).
Users don't care much about how a program is coded, but they do care whether it's easy to use and if something breaks they do care about seeing it get fixed sooner rather than later.

so only user's opinion matter and has the priority, but our need(developers) for clean and maintainable code does not matter?

Now you're putting words in my mouth.  Of course your need for clean and maintainable code matters, I just can't understand why this particular short and easy to implement patch that would benefit a whole lot of users in the USA is the one you want to make that stand on.  If you want to work on more clean and maintainable that is great and I fully support that effort, but in the meantime why not add these eight lines (two of which are comments) so that users don't have to wait while you rewrite all that code?  I don't know how quickly you write code, and maybe you can knock it out in a day or two and if so that's great.  But if this is something that will take you months or years, or is something that you plan to do when you get around to it or feel sufficiently motivated, then why not at least add this patch in the meantime so you aren't making youtube-dl nearly unusable for people so unlucky as to be customers of this particular cable company (which is the only high speed broadband provider in much of the USA).
I just don't get what is so special, or awful, about this particular patch that made you think "I'd rather rewrite this code than add these few lines, and make users wait until I do."  And also, it's not as though adding this patch would make it any more difficult for you to rewrite this code; doing one doesn't in any way stop or inhibit you from doing the other.  I just really don't get your reluctance here.

It always baffles me a bit that when someone hands you guys a solution and several users report it works, and it's not a very complicated fix, that you still often seem to mull it over for months before applying the fix.

it's not about if it's working, I can make the worst possible code and make it work, the user would be happy of course, but for us developers, it will be more difficult for us to maintain it and keep it working while making changes in other parts as well, it's not just about it's working, it's about making the code up to the project's coding standards(make it less possible for the code to be broken...), and in this case there was a case that previously happened with the Verizon code, I merged the code that contains the auto-login functionality even though I couldn't test it and check if it can be improved and then shortly after merging it stopped working, and we got into the same cycle users reporting issues and complaining and we have to deal with it.

I could understand that thinking if this was a complex patch, but it's only six lines of active code and two lines of comments, in one contiguous block.  Very easy to add, and very easy to remove if people start reporting problems.  Have you actually looked at this patch?
Now granted that nobody can guarantee that if you implement it, it won't stop working - in fact it probably WILL stop working somewhere down the line, because companies like to change up their web sites from time to time, and that's why so many services work for a while and then stop working, as you well know.  But you can only deal with a site as it is today.  If you apply the patch and they change the site again in a week, well at least it worked for a week.  And maybe they will only change some text on the site and the next fix will only be a single line change.  I do understand that you want to make the code easier to maintain and again that's a very laudable effort, but you probably spent considerably more time replying to me than it would have taken to apply that patch, which would have helped many users in the short term.

Or, as in this case, rather than making the quick fix that will get things working again, you start to think about rewriting a major section of the module or even the entire module.
but I have to wonder what it was about this particular patch that made you start thinking about making serious changes that could take months or years to develop.

again, this is inaccurate, I didn't start now thinking about refactoring as an excuse for not merging this, the need for refactoring has been expressed from the beginning by @dstftw, and I do agree that the refactoring is needed, with the current code, every addition makes the code more difficult to deal with, and makes the changes for a particular TV provider might break support for others in some cases, it's not about this patch in particular, it's about the accumulating effect of all the patches related to the AdobePass code.

Again, I could be more understanding of that position if this were a complex patch that affected several modules, but it's not.  I understand where you are coming from, or at least I'm trying to, but as far as I can see this patch would only affect users of this one cable company, and it would only fix a problem that they are having.  If you see some way that it would break support for users of other providers, then your position makes a whole lot more sense, but as I said I just don't get what it is about this particular patch that would make you start worrying about the accumulating effect of all the patches related to the AdobePass code.  I really suspect that maybe you haven't actually looked at this patch and don't realize what a minor change it is.

in the end, it's my fault for adding the code directly without sending it as PR for code review, and may I shouldn't create the support this way at all and instead from the beginning try to figure out why it doesn't work with cookies and make a working solution for all the TV Providers, but now I'm not even sure if all of that is really worth it.

Well now I am even more confused.  It sounds like you are having some kind of existential crisis or something, and if so I have no idea why this simple patch would trigger that.  If I said something that would have triggered that I profusely apologize; on the other had if there are other things going on in your life right now that you are dealing with then I'm sorry if I added to your burdens in any way.  To my way of thinking adding this patch was the easy fix that solves the immediate issue, even if it kicks the can down the road on any other issues that exist in the code.  All I was trying to report is that this fix actually works in April, 2019 and that I felt it would be worth implementing even if just for the short term.  To me, objecting to this patch is like obsessing over a pebble in the road when there's a mountain to climb up ahead (but only if you choose to climb it).  I understand that as a developer you need to have code that's easy to maintain, and I'm not trying to discourage you from that in any way.  I just find it really incomprehensible that you think that this particular very short patch is the place to make that stand.

obviously, before I comment, I did look at the patch, and again I'm not talking specifically about this patch, I'm talking in general about all the issues and PRs related to AdobePass code(https://github.com/ytdl-org/youtube-dl/pulls?utf8=✓&q=is%3Apr+is%3Aopen+adobepass and https://github.com/ytdl-org/youtube-dl/issues?utf8=✓&q=is%3Aissue+is%3Aopen+--ap-password).
In simple terms, I want to have a solution where I don't have to keep looking at code that can't be tested, asked to support hundreds of login workflows(my estimation is that there is about 150 unique login workflow), asked why did you support provider A and not B, and deal with the ones that broke.

In simple terms, I want to have a solution where I don't have to keep looking at code that can't be tested, asked to support hundreds of login workflows(my estimation is that there is about 150 unique login workflow), asked why did you support provider A and not B, and deal with the ones that broke.

This is an understandable sentiment. As it stands, Xfinity/Comcast happens to be the largest ISP/Cable Co in the US. I recognize that this tool is not US only. But as it stands, the function is broken. If this commit will fix it, and has been tested by many folks, which will likely alleviate gripes from a lot of users, it seems there is limited reasons not to do it.
As for "Why provider A and not B". The same reason as current. You don't have the personal means, nor enough other people to develop the fix/patch. If others can submit patches which are tested but many people and work, then it can be evaluated.
As it stands now, this is a broken feature. In the unlikely chance this merge doesn't fix all the errors, it is still broken, so no real loss there.

In simple terms, I want to have a solution where I don't have to keep looking at code that can't be tested, asked to support hundreds of login workflows(my estimation is that there is about 150 unique login workflow), asked why did you support provider A and not B, and deal with the ones that broke.

This is an understandable sentiment. As it stands, Xfinity/Comcast happens to be the largest ISP/Cable Co in the US. I recognize that this tool is not US only. But as it stands, the function is broken. If this commit will fix it, and has been tested by many folks, which will likely alleviate gripes from a lot of users, it seems there is limited reasons not to do it.
As for "Why provider A and not B". The same reason as current. You don't have the personal means, nor enough other people to develop the fix/patch. If others can submit patches which are tested but many people and work, then it can be evaluated.
As it stands now, this is a broken feature. In the unlikely chance this merge doesn't fix all the errors, it is still broken, so no real loss there.

i already explained before that this type of patches(similar to patches related to Youtube 429) lacks the ability to test the code, it doesn't matter if the change is small or big it has to be verifiable before merging.
Voting can be easily corrupted(any one can send a patch, and then create a dozons of accounts claiming that the fix works).
also as i said before, i have been asked before to refactor the code before making new changes and i did agree to that, but still didn't make the requested refactoring(there is already lots of issues besides the AdobePass issues).
and also as i have said, the way forward is to have a way to export local stoage(or at least, extarct the AuthN token from the adobe services requests) from the browser and pass it to youtube-dl, this way it will allow to support all TV Providers.

i already explained before that this type of patches(similar to patches related to Youtube 429) lacks the ability to test the code, it doesn't matter if the change is small or big it has to be verifiable before merging.
Voting can be easily corrupted(any one can send a patch, and then create a dozons of accounts claiming that the fix works).
also as i said before, i have been asked before to refactor the code before making new changes and i did agree to that, but still didn't make the requested refactoring(there is already lots of issues besides the AdobePass issues).
and also as i have said, the way forward is to have a way to export local stoage(or at least, extarct the AuthN token from the adobe services requests) from the browser and pass it to youtube-dl, this way it will allow to support all TV Providers.

You know, you can try to make programmer/developer type explanations until you are blue in the face but the fact is that users have no idea what the heck you are ranting about.  All they know is that there is a fix that works, it is only eight lines long (so not something that requires hours of inspection to verify) and that because you are being so pedantic, your software for the most part doesn't work for users of the largest cable company in the United States, when they are going to a site that requires a provider login.
A reasonable developer might say that because this is such a simple fix (and therefore easy to back out later), it could be implemented on at least a temporary basis until a better solution is coded.  An unreasonable developer might say, in effect, "f--- all the users of that large cable company, they can twist in the wind until I find the time to do the absolutely perfect fix."  But what often happens to unreasonable developers is that someone else who is more reasonable forks their project and makes the fixes, and maybe the forked project becomes even more popular than the original.  Of course this causes fragmentation of the project, where even "perfect" fixes don't make it back to the original project because no one wants to contribute code back to a developer that has in essence told users to go f--- themselves.  But hey, I guess that is far better than not having the absolute most perfect and excellent code you can possibly have, whenever you can finally get around to writing it.

You know, you can try to make programmer/developer type explanations until you are blue in the face but the fact is that users have no idea what the heck you are ranting about.  All they know is that there is a fix that works, it is only eight lines long (so not something that requires hours of inspection to verify) and that because you are being so pedantic, your software for the most part doesn't work for users of the largest cable company in the United States, when they are going to a site that requires a provider login.
A reasonable developer might say that because this is such a simple fix (and therefore easy to back out later), it could be implemented on at least a temporary basis until a better solution is coded.  An unreasonable developer might say, in effect, "f--- all the users of that large cable company, they can twist in the wind until I find the time to do the absolutely perfect fix."  But what often happens to unreasonable developers is that someone else who is more reasonable forks their project and makes the fixes, and maybe the forked project becomes even more popular than the original.  Of course this causes fragmentation of the project, where even "perfect" fixes don't make it back to the original project because no one wants to contribute code back to a developer that has in essence told users to go f--- themselves.  But hey, I guess that is far better than not having the absolute most perfect and excellent code you can possibly have, whenever you can finally get around to writing it.

It seems that Xfinity/Comcast has changed the way they are authenticating as I've been getting a number of HTTP Error 401: Unauthorized errors.  Anyone have an idea on how to update to get it to work again?
There's been a couple issues raised over on yt-dlp that seem to be related as well as https://github.com/ytdl-org/youtube-dl/issues/29544 here.


includes?

I'm looking at interesting shards - ones I would classify as fundamental.  As I was looking at the README documentation for this shard I like what I see.  The first thing that came to my mind was how can I use this library to determine if an IP is coming from a blacklist/whitelist network.
blacklist = IpAddress.parse "<IP_ADDRESS>/16"
ip = IpAddress.new "<IP_ADDRESS>"
blacklist.include?(ip)

I have not yet looked at your code.  I was just thinking that a method like include? would be something I'd like to use.

It works as you'd expect, see:
https://github.com/Sija/ipaddress.cr/blob/37d08ea02c86c3565f3787a02434560e9ed102ef/src/ipaddress/ipv4.cr#L740-L755


Additional info:
AFAIK 'library' is implicit namespace and passing 'library/abcdef' argument to any docker command should work the same as without the 'library/' prefix, i.e. 'abcdef'.
As it works now 'docker images library/name' never lists any images.
I can take a look at creating a patch if we agree it's an issue.

I have to agree with @jpopelka here, especially when this command produces output:
$ docker images tianon/gentoo-stage3
REPOSITORY             TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
tianon/gentoo-stage3   latest              b5f45754f671        9 months ago        526.3 MB

and this doesn't:
$ docker images library/fedora
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE

It's even more confusing when status code of docker images library/fedora is 0.

#dibs
I can take a stab at this if no one else is working on it

This is essentially #11480, isn't it?

Yes, #11480, has two parts in this commit : https://github.com/dmcgowan/docker/commit/d9a1da382d7ec3fff87d439c0fde1a69066e8b70, allowing repos like "library/image" to be stored locally (and not stripping off the library/ from the name while storing the repo), and allowing ONLY images with a '/' in them to be pushed.
I do agree with the change to registry/config.go in https://github.com/dmcgowan/docker/commit/d9a1da382d7ec3fff87d439c0fde1a69066e8b70 , which will resolve this issue (most likely)

good catch @tianon I think its the same

I'm also seeing similar problem with images pulled from docker.io:
$ docker pull busybox:latest
latest: Pulling from docker.io/busybox
Status: Downloaded newer image for docker.io/busybox:latest
$ docker images busybox
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
$ docker images busybox:latest
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
$ docker images docker.io/busybox:latest
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
$ docker images docker.io/busybox
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
docker.io/busybox latest 8c2e06607696 9 days ago 2.43 MB

Is anyone working on this issue? I would like to work on this issue.

I don't think someone is working on this, however, from a UX perspective, I'm a bit unsure, given that the library/ is not shown in the output of docker images.
ping @dmcgowan for thoughts as well :smile:

Thanks for looking into this @thaJeztah , #dibs
As @TomasTomecek commented, when we do something like docker images library/busybox, nothing shows up. However, the exit status is 0.
When we do docker images, the library/ is not shown in the output.
@dmcgowan Can you shed some more light on this?

At least for the exit code bit, docker images <anything> is merely a filter, so the exit code will likely always be 0:
$ docker images something-that-does-not-exist
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
$ echo $?
0

Since there has been no activity in the last few months in this issue I just assumed no one is taking care of it right now.
I'd like to take on this one if the fix is still wanted.

@mvader @sammyshj I don't see your PRs so I opened my own #24719
#dibs

After discussing this more on https://github.com/docker/docker/pull/24719, I'm closing this issue; please refer to that discussion for details.


feat(cat): number output lines (#750)

Add cat -n support to show number lines.
Fix #750

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@dcead1b). Click here to learn what that means.
The diff coverage is 100%.

@@            Coverage Diff            @@
##             master     #775   +/-   ##
=========================================
  Coverage          ?   95.39%
=========================================
  Files             ?       33
  Lines             ?     1237
  Branches          ?        0
=========================================
  Hits              ?     1180
  Misses            ?       57
  Partials          ?        0

Impacted Files
Coverage Δ

src/cat.js
100% <100%> (ø)

Continue to review full report at Codecov.

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


some errors showing

A matching Triton is not available, some optimizations will not be enabled.
Error caught was: No module named 'triton'
I guess this is to do with Torch. Do i need to update to 2.0, to get faster speeds? I hear Triton is included in Torch 2.0

flaskwebgui - [INFO] - <IP_ADDRESS> - - [09/May/2023 17:44:12] "GET /favicon.ico HTTP/1.1" 404 -

something with the icon? not a big deal, but can i fix it somehow?

It's ok to not install triton, you can still gain the benefit from xformers, in my tests it had almost no effect on the inference speed of the sd model.  As far as I know, the speed of sd models in torch 1.x + xformers and torch 2.0 is similar.
There is currently no icon, but I can filter out this log in the next version.

Cool thank you
On Wed, 10 May 2023 at 02:52, Qing @.***> wrote:

It's ok to not install triton, you can still gain the benefit from
xformers, in my tests it had almost no effect on the inference speed of the
sd model. As far as I know, the speed of sd models in torch 1.x + xformers
and torch 2.0 is similar.
There is currently no icon, but I can filter out this log in the
next version.

—
Reply to this email directly, view it on GitHub
https://github.com/Sanster/lama-cleaner/issues/303#issuecomment-1541175935,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/APNXTFRYXUHBVMAWYF4LEIDXFLYGPANCNFSM6AAAAAAX3SAHJE
.
You are receiving this because you authored the thread.Message ID:
@.***>

--
thanks
best regards, raf