C# Xamarin: Error when calling grps methods on Xamarin.ios

Exception:
"Method not found: System.Buffers.IBufferWriter'1<byte> Grpc.Core.SerializationContext.GetBufferWriter()"
Technologies used:
NUGET:
  -  Grpc.Core, Grpc.Core.Api and Grpc.Core.Xamarin - 2.37.1 and earlier
  -  Xamarin.Forms - <IP_ADDRESS>7 and later
 IOS 14.4.2
 MACOS BIG SUR 11.2
 VISUAL STUDIOS FOR MAC Latest Release

Description
The error presumably appeared after updating macos to big sur version
Previously worked fine.
Before the Grpc.Core.Xamarin library came along, the solution was Fixing gRPC Xamarin iOS linking errors
After the release of Grpc.Core.Xamarin built without additional solutions
When building from Windows, I get this error:
Unknown command line argument: '/Users/{MyUserName}/Library/Caches/Xamarin/mtbs/builds/{MyProjectName}.iOS/79473c737e8c8d9b0aa02afef81762802e6976d389d702a1384c1ab21b8076c1/bin/iPhone/Debug/device-builds/ipad7.5-14.4.2/{MyProjectName}.iOS.exe'	{MyProjectName}.iOS

The command that caused the error:
 /Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin/mtouch @/Users/{MyUserName}/Library/Caches/Xamarin/mtbs/builds/{MyProjectName}.iOS/79473c737e8c8d9b0aa02afef81762802e6976d389d702a1384c1ab21b8076c1/obj/iPhone/Debug/device-builds/ipad7.5-14.4.2/response-file.rsp "--gcc_flags=-LC:/Users/{MyUserName}/.nuget/packages/grpc.core.xamarin/2.37.1/build/Xamarin.iOS10/../../native/ios/universal -lgrpc_csharp_ext -force_load C:/Users/{MyUserName}/.nuget/packages/grpc.core.xamarin/2.37.1/build/Xamarin.iOS10/../../native/ios/universal/libgrpc_csharp_ext.a -LC:/Users/{MyUserName}/.nuget/packages/grpc.core.xamarin/2.37.1/build/Xamarin.iOS10/../../native/ios/universal -lgrpc -force_load C:/Users/{MyUserName}/.nuget/packages/grpc.core.xamarin/2.37.1/build/Xamarin.iOS10/../../native/ios/universal/libgrpc.a -ObjC -lc++ -lsqlite3 -lz -ObjC -lc++ -lsqlite3 -lz -lc++ -ObjC -ObjC -lc++ -ObjC -lc++ -ObjC -lc++ -ObjC -lc++ -ObjC -lc++ -ObjC -lc++ -ObjC -ObjC -lc++ -ObjC -lc++ -ObjC -lc++ -lz -ObjC -ObjC -lc++ -lsqlite3 -lz -ObjC -lc++ -lsqlite3 -lz -ObjC -lc++ -lsqlite3 -lz -lc++ -ObjC -ObjC -lc++ -ObjC -lc++ -ObjC -lc++ -ObjC -lc++ -ObjC -lc++ -ObjC -lc++ -ObjC -ObjC -lc++ -ObjC -lc++ -ObjC -lc++ -lz -ObjC -ObjC -lc++ -lsqlite3 -lz -LC:/Users/{MyUserName}/.nuget/packages/grpc.core.xamarin/2.37.1/build/Xamarin.iOS10/../../native/ios/universal -lgrpc_csharp_ext -force_load C:/Users/{MyUserName}/.nuget/packages/grpc.core.xamarin/2.37.1/build/Xamarin.iOS10/../../native/ios/universal/libgrpc_csharp_ext.a -LC:/Users/{MyUserName}/.nuget/packages/grpc.core.xamarin/2.37.1/build/Xamarin.iOS10/../../native/ios/universal -lgrpc -force_load C:/Users/{MyUserName}/.nuget/packages/grpc.core.xamarin/2.37.1/build/Xamarin.iOS10/../../native/ios/universal/libgrpc.a"

the method described above and other methods found did not help
Everything works just fine in Xamarin.Android, thanks a lot!
Sorry for my English

[ ]

I'm going to close issue this since we're not going to pursuit Unity/Xamarin support in Grpc.Core anymore.

The Grpc.Core implementation is now in maintenance mode and we're only going to focus on critical and security fixes.
Supporting Unity/Xamarin simply presents too much maintenance overhead and it's also difficult to test with the test infrastructure available to us
The Unity/Xamarin support has always been classified as "experimental", so discontinuing the support shouldn't be too surprising.

See the recent update on gRPC C# for more details.
Note that in practice, running Grpc.Core on Unity/Xamarin might still be possible (there is nothing in principle that would prevent it from working), but it will be completely at your own risk and it's simply not one of the use cases the grpc team will help you with as Grpc.Core on Unity/Xamarin is now considered as "not supported" by us (but you might still be able to get help from the community).


Offer PInvoke.ILMerge NuGet package the merge P/Invokes into consuming assembly

I expect some folks will more readily consume the work of this project if they can merge the P/Invokes they use into their assembly rather than shipping all the unused ones as well in a separate assembly.
A NuGet package that uses ILMerge as a build step may allow this process to be very easy for consumers to opt into.

This is a really interesting feature I would personally use it if it were available.
I am wondering how much ILMerge MSBuild task NuGet package project could help us to solve this issue or if we really need to implement our own version due to some limitation.
I will try to accomplish the goal of this issue using that package and I''l come back with some feedback.

After some tests it doesn't seem to offer a full control over what to merge or in which order (also see this comment form the author).
Any way if we create a nuget package that, base on configuration, it allows us to choose assemblies to merge using ILMerge within MSBuild, that could be useful in more than one scenario. So I don't know if the name "PInvoke.ILMerge" is too specific and this feature deserve its own project.
Thoughts?

Thanks for the investigation, @jmelosegui. It's been a long time since I've used ILMerge. I recall that it can demote merged types' visibility from public to internal, which would be useful. I hope it also can drop unused types and methods.
I suspect that comment you linked to about ILMerge being rather unused lately is probably true. And the complexity of a general purpose project is probably going to be higher than the specific case of merging in libraries from this project.
So I think the first thing to do is find out how well we can get it to work by hand. And assess whether it's valuable to pursue at all. Then we can go on to see if it's specialized enough in that scenario to warrant a PInvoke specific kind of package.

Personally I don't find the merging so useful but it might interest some authors. Especially library authors that want to provide a small self-contained lib. But I think that using git submodules to reference this repo and including only the needed files would be easier than the complexities of an IL level merge.
Regarding the merge tool https://github.com/gluck/il-repack is an OSS and maintained alternative to ILMerge that could be investigated.

I hope it also can drop unused types and methods.

As far as I know it's more the domain of the mono linker project than the merge tools. And mono linker isn't really maintained (It evolved into the Xamarin packager for android/iOS but that's not OSS.

@AArnott

I hope it also can drop unused types and methods.

ILMerge don't offer that feature. Maybe we can evaluate a tool like Mono.Cecil to do some static analysis and strip off the "unused" methods and types after the merge.
Thougths?

Yes, I'm sure we could build it. There would be complications although I expect we could work through them.
I'm totally cool with not spending time on this till we have would-be customers asking for it.


Introduce Primer::Alpha::Tooltip component

Related to: https://github.com/github/accessibility/issues/670
Context
This PR introduces a more accessible tooltip component, upstreamed after proven usage in dotcom. This also introduces a new "pattern" of having the related custom element code living in PVC rather than a separate repo. This is a decision we came to at  UI engineering code review. If we change our mind later, we can always move it.
Upstream decisions

I decided to house the tooltip CSS in the shadow DOM upon discussion with @koddsson. I also referenced the encapsulation example shown in viewcomponent.org.
This introduces a new "pattern" of having the related custom element code living in PVC rather than a separate custo element repo. This is a decision we came to at  UI engineering code review. If we change our mind later, we can always move it.

Thoughts
We should probably not expose this Tooltip in component docs, because I fear misuse and tooltip abuse. Instead, we should update API of components we think should support tooltip. Related: https://github.com/github/accessibility/issues/802 and https://github.com/github/primer/issues/438.

Tooltip looks good based off it's rendering in local dev docs.
Though, it looks like vercel preview uses the JS pulled in from npm package. How can we have vercel preview deploy our new JS code?

The test failure I'm getting is for blankslate which is a totally unrelated component. Why?

@owenniblock Thanks for the review! We do have browser tests to test behaviors for JS components, like this test/system/tooltip_test.rb!

The docs are wonderful, great job!
I feel comfortable with it as it is, I see it meets all the criteria to be in Alpha and it looks good overall.
After reading the docs carefully I'm convinced we should list it on the component index.
I understand the hesitation as we could start seeing unintended usages, but I'd rather lint against those than remove it from the docs site index. The Tooltip will be searchable in the codebase anyway, so I'd rather have an explicit linter against this.

Thank you so much @hectahertz for thorough review :)

I'd rather lint against those than remove it from the docs site index.

I totally agree something like an ERB lint rule would be most ideal to block bad tooltip usage! I investigated this earlier in the tooltip work and found there are limitations with using a static code linter against something like: Don't set tooltips on static elements.
As an example, there might be ERB code like:
<%= render_inline(Issues::ProgressComponent.new(size: :small, id: "progress-1")) %>
<%= render_inline(Primer::Alpha::Tooltip.new(for_id: "progress-1", text: "This labels the progress component", type: :description)) %>

With an ERB linter, it's impossible to know what the HTML output of this Issues::ProgressComponent is, since we need the Rails app running to know what the final markup is.
Though we don't have an ERB lint rule, we do have a couple custom axe rules for this tooltip. The downside is axe is non-blocking and it depends on developer to run the app locally.
I'd be up for discussing other options for how we can flag bad tooltip usage without ERB! One idea that I explored in the past was having accessibility checks in existing Rails controller tests. I thought this could be too wild so I abandoned it 😛.
If we can have a reliable way to block bad tooltip usage, I'd be up for exposing this to consumers!

@koddsson unrelated to the changes, might u know what this message is (when I run npm run prepare)?:
app/components/primer/primer.js → app/assets/javascripts/primer_view_components.js...
(!) `this` has been rewritten to `undefined`
https://rollupjs.org/guide/en/#error-this-is-undefined
app/components/primer/alpha/tooltip.js
1: var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
                                 ^
2:     if (kind === "m") throw new TypeError("Private method is not writable");
3:     if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");

js seems to be working fine so I'm not sure if I need to worry about it

@koddsson unrelated to the changes, might u know what this message is (when I run npm run prepare)?:

Yeah, it's a warning that we ignore in other places where we use Rollup so I added the same ignore to this PR.
Context: https://github.com/rollup/rollup/issues/3788


update robot protocol

The improvements need a clear concept before starting implementing.
The push protocol is necessary to handle restricted network setups. It comes with limitations (bandwidth and latency) and overhead though. A websocket won't have these limitations, but might not work in all cases.

[ ] prefer websocket with push protocol fallback
[ ] send connected peripherals with each push (or heartbeat in the case of websockets), sensors or encoder will contain their mode and value as well
[ ] publish new endpoint under versioned urls. this allows us to keep older version alive for some time

for the txt4 controller plugin we revised the protocol and documented it in the Github wiki. It supports everything we currently require. We close the ticket, even if a complete redesign of the whole robot-server communication makes sense, but we don't have the time to work on that.


use a json file to provide a common settings library

this library is shared between rickshaw-run, the endpoint scripts,
and client-server-script

the settings are queried from the file using new functionality added
to the toolbox project

I'm expecting this PR to fail CI initially because it depends on this PR: https://github.com/perftool-incubator/toolbox/pull/41


Question about improve mask

Hi, thanks for sharing.
I have train YOLACT++ on my dataset which has only single category. In some pictures the target  is bevel. So the bounding boxes will including part of another target. But sometime there is predicting mask on another target in the bounding boxes area. How should I avoid this problem？
Another question, is the threshold in the Figure 2 of paper in config.py？ Can I modify it?
Thanks for the answer.

I'm confused why the proto mask have a blank, is there a problem with my training?


Automated Package Upgrade

:tada: This PR is included in version 7.0.208 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


fix: Make not to skip floatwin if it is focusable

Problem
One of the difference between Neovim's floating window and Vim's popup window is focusable.
And since Neovim has global statusline (laststatus=3), we can see statusline of floating window.
But currently lightline skipes floating window and the statusline is rendered as inactive.
Solusion
Make not to skip floatwin if it is focusable.

I'm thinking about better checking of floatwin. Please wait to merge...

I use relative option of nvim_win_get_config() instead of win_gettype() because if floatwin has 'previewwindow' option detection is not working.

I think autocmd window is not focusable, so we can omit checking win_gettype().

Also I'd like you to squash the commits.

Ok, then I have omitted to check floatwin and only check focusable.

Could you use with the patch applied for a few days and if it does not cause any problems, let me merge, thanks.

I modified the test code from Neovim to try it out and confirmed that the autocommand window is not focusable.
Also this patch has been working properly for several days.
func Test_autocmd_window()
  %bwipeout!
  edit one.txt
  tabnew two.txt
  vnew three.txt
  tabnew four.txt
  tabprevious
  let g:blist = []
  augroup aucmd_win_test1
    autocmd!
    autocmd BufEnter * call add(g:blist, [expand('<afile>'),
          \ win_gettype(bufwinnr(expand('<afile>'))),
          \ nvim_win_get_config(bufwinid(expand('<afile>'))).focusable])
  augroup END

  doautoall BufEnter
  call assert_equal([
        \ ['one.txt', 'autocmd', v:false],
        \ ['two.txt', '', v:true],
        \ ['four.txt', 'autocmd', v:false],
        \ ['three.txt', '', v:true],
        \ ], g:blist)

  augroup aucmd_win_test1
    autocmd!
  augroup END
  augroup! aucmd_win_test1
  %bwipeout!
endfunc
call Test_autocmd_window()

Because of nvim_open_win() always invokes BufEnter autocmd even not focused (https://github.com/neovim/neovim/issues/15300), I have added check for it.

That's an issue of NeoVim. I liked the previous patch but now I'm hesitant to merge this PR.

Reverted. Following code is a workaround for the bug. Can I add this to the troubleshooting section of the help file?
-- from https://github.com/neovim/neovim/pull/15981
local util = require "vim.lsp.util"
local orig = util.make_floating_popup_options
---@diagnostic disable-next-line: duplicate-set-field
util.make_floating_popup_options = function(width, height, opts)
  local orig_opts = orig(width, height, opts)
  orig_opts.noautocmd = true
  return orig_opts
end

The code should better be written in NeoVim wiki or somewhere, or help them fix the issues completely, but not in lightline doc. Thanks anyway for the patch.

Thank you for reviewing!

Hello @4513ECHO. Looks like your commit collides not only with neovim builtin lsp, but also with https://github.com/lewis6991/gitsigns.nvim plugin, which also have floatwin popups. Yes, gitsigns config have an option to pass noautocmd to his floatwins, but I'm afraid about other plugins that also use floatwins. In result, many users have to investigate whats happening and apply fixes to their own configs for each concrete plugin.
At first, I'm proposing either adding a config option to lightline to disable this new behavior, or revert this commit until we find better way detecting focusable windows without damaging existing users setups.
P.S. to be honest, I'm not seeing any benefits of being able to see statusline for floatwins. They are usually(?) not editable, so not more can be done inside them, and if you want to see basic info like buffer line numbers / cursor position / number of words, you can press g<C-g>. Will be interesting if you share your use case.

Hi @UnkwUsr. sorry for the delay in replying to you.
I am using a fuzzy finder called ddu.vim and wanted to display the information from it on the status line on the ddu floating window as well. In the end I made a new plugin, which I hope will help.
The bug in the Neovim itself seems to have already been fixed by https://github.com/neovim/neovim/pull/25078. The workaround I presented is no longer needed, please consider upgrading your version of Neovim.
Translated with DeepL.com (free version)


Uses string instead of list in RedisChatHistory

This is a premature optimization after having reviewed the code. The same logic applies to the Python API.
Given that the history is append-only, read-or-delete-all, using a Redis String instead of a List is cheaper and more performant.
This PR affects the proposed change, and also uses a transaction for atomicity if TTL needs to be set.

Seems reasonable - will need to be part of a minor bump though.

Actually - I think better to stick to the same format as the Python library. Some people do use both libs and expect consistent serialization. Will ping you on Slack.


can not omit file path of modules.

modules: kernel/drivers/hid/hid-apple.ko.xz in booster.yaml work.
but
modules: hid-apple
modules: hid-apple.ko.xz
modules: kernel/drivers/hid/hid-apple.ko
fails.
I want to omit .xz at least.
Because ko in package may compressed with other format in the future.
modules: ntfs3,exfat is possible.

kernel/drivers/hid is not in
https://github.com/anatol/booster/blob/6bdf45b08df4078a2d7d13e63e81623d4f02462d/generator/generator.go#L64-L77
is it related?

Linux kernel modules naming is a bit confusing. The module filenames use dash symbol ("-") while the module names use underscore ("_"). So modules: hid_apple should work for you.
All filenames use module directory as a starting point. modules: hid-apple.ko.xz this is going to work only if the fie is in root of the tree e.g. /usr/lib/modules/5.11.6-arch1-1/hid-apple.ko.xz

I want to omit .xz at least. Because ko in package may compressed with other format in the future.

I makes sense, will look at it.

kernel/drivers/hid is not in the list

Currently this directory is not in the filter list but it can be added if it is really needed. It needs a rationale though. Are kernel/drivers/hid for keyboard drivers primarily?

Thankyou.modules: hid_apple worked.
Would you add to document about

The module filenames use dash symbol ("-") while the module names use underscore ("_").
I need hid_apple to use my keyboard.

Would you add to document about

Feel free to update the documentation yourself. It is very easy to do, just click the "Edit" button on the file e.g. https://github.com/anatol/booster/edit/master/docs/manpage.md anf github will create a PR.


Please add images for 16.19.0

Hey @calebmeyer, with our newly released cypress/factory image, you can recreate any of our docker images without needing to wait on us to release new versions!
Using cypress/factory, you can instead add args for the versions you want and consume the factory directly.
cypress/base equivalent using factory
ARG NODE_VERSION='16.19.0'
ARG YARN_VERSION='1.22.19'

FROM cypress/factory:latest

<whatever steps you want>

cypress/browsers equivalent using factory
ARG NODE_VERSION='16.19.0'
ARG YARN_VERSION='1.22.19'
ARG CHROME_VERSION='109.0.5414.74-1'
ARG EDGE_VERSION='109.0.1518.52-1'
ARG FIREFOX_VERSION='109.0'

FROM cypress/factory:latest

<whatever steps you want>

cypress/included equivalent using factory
ARG NODE_VERSION='16.19.0'
ARG YARN_VERSION='1.22.19'
ARG CHROME_VERSION='109.0.5414.74-1'
ARG EDGE_VERSION='109.0.1518.52-1'
ARG FIREFOX_VERSION='109.0'
ARG CYPRESS_VERSION='12.4.0'

FROM cypress/factory:latest

<whatever steps you want>

Check out our cypress factory docs for more info: https://github.com/cypress-io/cypress-docker-images/tree/master/factory


Fix bug that prevents distributing multiple required files

Currently it is not possible to upload more than one required file to the agent hosts. This aims to fix that.

Thanks!


infer_schema! reaches the recursion limit easily

Setup
Versions

Rust: rustc 1.21.0-nightly (2bb8fca18 2017-08-23)
Diesel: 0.16.0

Problem Description
What are you trying to accomplish?
Having diesel automatically infer the schema for a table with more than ~10 columns.
It looks like the default recursion limit for macros is 64 which can be quite easy to reach with 6 lines of code being generated for each database column.
What is the expected output?
Diesel compiles with no issues.
What is the actual output?
error: recursion limit reached while expanding the macro `table_body`
  --> src\database\schema.rs:1:1
   |
1  | / table! {
2  | |     /// Representation of the `users` table.
3  | |     ///
4  | |     /// (Automatically generated by Diesel.)
...  |
84 | |     }
85 | | }
   | |_^
   |
   = help: consider adding a `#![recursion_limit="128"]` attribute to your crate
   = note: this error originates in a macro outside of the current crate

Steps to reproduce

You can use pretty much any schema, just pad it with a bunch of extra blank documentation comments.
table! {
    /// Representation of the `users` table.
    ///
    /// (Automatically generated by Diesel.)
    users (id) {
        /// The `id` column of the `users` table.
        ///
        /// Its SQL type is `Int4`.
        ///
        /// (Automatically generated by Diesel.)
        id -> Int4,
    }
    ///
    /// etc...
    ///
}

Checklist

[x] I have already looked over the issue tracker for similar issues.

That is sadly a problem we can't easily solve in Diesel. For now, just follow the compiler's advice: Add the #![recursion_limit="128"] attribute.
Personally, I set this to 1024 at the first error just to not have to deal with this again. Also, IIRC, the default (64 apparently) was recently increased in rustc, so maybe you'll see this error less often in the future.
That said, we could solve this in Diesel: We'd need to replace the macro with a procedural macro. That is not an easy feat (the macro is quite complex and has a lot of edge cases), and not currently our focus. We'll absolutely look more deeply into this once the next batch of proc-macro features becomes stable in rustc, though.

Oh, or do you have a quick fix for this in mind? I've not looked into it more deeply, but if there was an easy change we could make to consume more doc attribute tokens per macro call we'd reduce the table macro's call stack drastically. (Still, not something I really want to spend much time on—there are more pressing matters—but I'd accept a PR for this for sure!)

Hi, so the trouble I'm having is that any table with more than 24 columns (these are extant tables) throws this error. I can run diesel print-schema fine. It outputs the right schema. So since apparently !infer_schema("dotenv:DATABASE_URL", "foo") is equivalent to diesel print-schema -s foo I'm surprised this isn't working correctly.
I tried doing diesel print-schema -s foo > src/models.rs but even then it hits the recursion limit for some reason. Can you explain what the problem is exactly?

So basically my understanding of it is that the recursion limit is hit when expanding the table! macro that is generated from the diesel print-schema/!infer_schema("dotenv:DATABASE_URL", "foo") commands.
Like killercup said, the way the table! macro expands is the older(?) recursive style macros instead of a procedural style, so that every line inside the macro body is a recursively parsed.
So unless the macro gets re-written which has a lot of problems in itself, the only real solution is increasing the recursion limit of your program.

@Kazakuri Ya I have added that to the top of my main.rs but it's still happening.

This issue is from 2 years ago... I guess nobody got around to it because this still happens if you want to ever use docs on the schema.

@ConnorBP
a) infer_schema! is deprecated and not supported any more.
b) This could easily fixed by increasing the recursion limit as the compiler suggests.

@ConnorBP
a) infer_schema! is deprecated and not supported any more.
b) This could easily fixed by increasing the recursion limit as the compiler suggests.

If infer_schema is deprecated then why is diesel itself using it? I never used infer_schema but the auto generated schema.rs gives me an error about this if I let the generator add comments. Maybe this should be a separate issue about removing the deprecated calls to this function from the schema.rs generator  but either way this ancient issue still exists at the moment. Yes for now I can force the compiler to add more recursion, but that will make building significantly slower than before. I can also disable comments generation, which I did, but that is also not ideal and is a rather clunky workaround for a fundamentally flawed system that has existed for years on ancient rust features and deprecated diesel features.

If infer_schema is deprecated then why is diesel itself using it? I never used infer_schema but the auto generated schema.rs gives me an error about this if I let the generator add comments. Maybe this should be a separate issue about removing the deprecated calls to this function from the schema.rs generator but either way this ancient issue still exists at the moment.

We are talking about different things. infer_schema!, the macro is deprecated. diesel print-schema which uses the same code internally is not deprecated.
Yes for now I can force the compiler to add more recursion, but that will make building significantly slower than before. I can also disable comments generation, which I did, but that is also not ideal and is a rather clunky workaround for a fundamentally flawed system that has existed for years on ancient rust features and deprecated diesel features.
As far as I see there is no real way forward to fix that. We want a macro that is able to handle all cases and provide a consistent API. This makes the macro quite complex, which requires adding those recursion limit attribute. One option here is to make that macro simpler by removing options which would a) break all/some existing code, b) remove some use cases. Another option would be to rewrite that as procedural macro, which requires a huge amount of work without any direct gain. Given that no one has currently much time to work on more urging issues/features I don't think that will happen anytime soon. (Also such a rewrite needs to prove that all existing valid code works, which is no simple task)

We are talking about different things. infer_schema!, the macro is deprecated. diesel print-schema which uses the same code internally is not deprecated.

I am just curious why infer_schema! is for some reason causing errors from the comments in the auto generated file then if it is as you say deprecated and I am not personally using it. My best guess is that the underlying library is itself using this "deprecated" macro. If it is deprecated a better / newer alternative surely exists already and shouldn't it be not using the deprecated macro? Or is there simply no alternative and therefor it shouldn't be "deprecated".

I am just curious why infer_schema! is for some reason causing errors from the comments in the auto generated file then if it is as you say deprecated and I am not personally using it.

This issue is about infer_schema! not about diesel print-schema :wink: (So if you are talking about diesel print-schema your issue probably does not belong here :wink:. As written below, I think it's neither an issue with infer_schema! nor with diesel print-schema but with the table! macro. (To be discussed if this is an real issue or only some minor improvement…))

My best guess is that the underlying library is itself using this "deprecated" macro. If it is deprecated a better / newer alternative surely exists already and shouldn't it be not using the deprecated macro? Or is there simply no alternative and therefor it shouldn't be "deprecated".

Both, infer_schema! and diesel print-schema used the same code internally to generate the corresponding table calls. (Also the problem is neither in infer_schema! nor in diesel print-schema. It's simply that the table! macro is to complex. The same thing could happen while manually writing a lot of table! calls.)


example for suchthat

Not sure how to filter, e.g. needing to pick a non-empty interval (ascending or descending) , trying
var extent = jsc.suchthat(jsc.pair(jsc.number(), jsc.number()), (a, b) => a !== b);

results in this error:
arb.shrink(...).filter is not a function

in the suchthat shrink method.

I know this is pretty old, but it looks like your issue is that pair creates a 2 item list and you are providing a signature for a 2 argument function. Since you appear to be using es2015+ you can just use parameter destructuring and make a minor change to get it working
var extent = jsc.suchthat(jsc.pair(jsc.number(), jsc.number()), ([a, b]) => a !== b);

note that the (a, b) is now ([a, b]) since your function will receive one argument (a 2 item list)

@Koleok is right, thanks.


[Draft] Use Hive MD provider in RelFieldTrimmer

What changes were proposed in this pull request?

Why are the changes needed?

Does this PR introduce any user-facing change?

How was this patch tested?

Duplicate of #2372


Tag sitemap.xml doesn't include images

I think this is actually a throwback to the fact that the sitemap was added before tags had the ability to have images added to them.
They now do (and have done for some time) so the sitemap code needs updating to include the image for tags.
I think there is also an opportunity here to simplify the createUrlNodeFromDatum method which exists in the base generator plus the post, page and user generator. As they all have images now, I think there is some small amount of duplicated code that can be moved back to the base generator.

cc @jgable this might be an excellent opportunity to get your name back on the contrib list if you fancy it :wink:

I am amazed how much of my code you guys still tolerate in the code base. I
should make it a new year's resolution to start committing again. Actually,
I should sit down and ask myself why I stopped, but that's another story
entirely.
I'd actually love to take this small thing on if nobody else snatches it up.
On Tue, Jan 5, 2016 at 8:49 AM Hannah Wolfe<EMAIL_ADDRESS>wrote:

cc @jgable https://github.com/jgable this might be an excellent
opportunity to get your name back on the contrib list if you fancy it [image:
:wink:]
—
Reply to this email directly or view it on GitHub
https://github.com/TryGhost/Ghost/issues/6292#issuecomment-169058291.

I am amazed how much of my code you guys still tolerate in the code base.

Oh we could tolerate a lot, lot more :wink: :grin: :doughnut:


New Logo

click here to download.

It looks too generic and doesn't really fit any of the existing UX or branding. Average user would quickly forget what this icon is for. Sorry, but I don't think it's a good change. There's also the question of what license this icon is under.


region_request: remove backoff for stale read

ref pingcap/tidb#55388
We always retry stale read with snapshot read, so the backoff for it can be removed, because wait for safe ts catching up is meaningless for snapshot read.

@Tema
Yes it would be picked to all the LTS version.


Python 2.7.17

This adds Python 2.7.17 support and sets it as the default Python 2.7 version.

default-pythons updated
appropriate test version bumped
binaries generated

@CaseyFaist Hi! I spotted the build script added here doesn't make use of the base Python 2 script (builds/runtimes/python2) like the other scripts. Was this intentional, or because this PR raced with the landing of #881?
It's just that the script here (builds/runtimes/python-2.7.17) doesn't include the latest sqlite3 symlink parts from python2 and instead uses sqlite3_install which invokes APT?


NBA

Hello,
I receive the following
Traceback (most recent call last):
  File "./NHL-Game-Probabilities/NBA/nba_game_probability_model.py", line 559, in <module>
    main()
  File "./NHL-Game-Probabilities/NBA/nba_game_probability_model.py", line 553, in main
    date, today_games_df = get_todays_games(param, team_list, games_metadf)
  File "./NHL-Game-Probabilities/NBA/nba_game_probability_model.py", line 285, in get_todays_games
    today_games_df['Home Win Prob'] = today_games_df.apply(lambda row: f"{calc_prob(team_name_obj_dict[row['Home Team']], team_name_obj_dict[row['Visiting Team']], param)*100:.2f}%", axis=1)
  File "./virtualenvs/nhl-game-probabilities/lib/python3.10/site-packages/pandas/core/frame.py", line 4081, in __setitem__
    self._set_item_frame_value(key, value)
  File "./virtualenvs/nhl-game-probabilities/lib/python3.10/site-packages/pandas/core/frame.py", line 4209, in _set_item_frame_value
    raise ValueError("Columns must be same length as key")
ValueError: Columns must be same length as key

Hello,
I can't seem to reproduce the error. Could you please provide additional information on how this error was produced?

sorry this seems to be an error on my part! :-)


[Errno 104] Connection reset by peer

I am trying Certipy v4.8.2 against a windows server 2022 (21H2) DC, I am getting the below error:
└─# certipy find -u<EMAIL_ADDRESS>-p xxxx -dc-ip <IP_ADDRESS> -debug
Certipy v4.8.2 - by Oliver Lyak (ly4k)

[+] Authenticating to LDAP server
[+] Authenticating to LDAP server
[-] Got error: socket ssl wrapping error: [Errno 104] Connection reset by peer
Traceback (most recent call last):
  File "/usr/local/lib/python3.11/dist-packages/certipy/lib/ldap.py", line 77, in connect
    self.connect(version=ssl.PROTOCOL_TLSv1_2)
  File "/usr/local/lib/python3.11/dist-packages/certipy/lib/ldap.py", line 136, in connect
    bind_result = ldap_conn.bind()
                  ^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/ldap3/core/connection.py", line 589, in bind
    self.open(read_server_info=False)
  File "/usr/lib/python3/dist-packages/ldap3/strategy/sync.py", line 57, in open
    BaseStrategy.open(self, reset_usage, read_server_info)
  File "/usr/lib/python3/dist-packages/ldap3/strategy/base.py", line 146, in open
    raise exception_history[0][0]
ldap3.core.exceptions.LDAPSocketOpenError: socket ssl wrapping error: [Errno 104] Connection reset by peer

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.11/dist-packages/certipy/entry.py", line 60, in main
    actions[options.action](options)
  File "/usr/local/lib/python3.11/dist-packages/certipy/commands/parsers/find.py", line 12, in entry
    find.entry(options)
  File "/usr/local/lib/python3.11/dist-packages/certipy/commands/find.py", line 1179, in entry
    find.find()
  File "/usr/local/lib/python3.11/dist-packages/certipy/commands/find.py", line 165, in find
    connection = self.connection
                 ^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/certipy/commands/find.py", line 124, in connection
    self._connection.connect()
  File "/usr/local/lib/python3.11/dist-packages/certipy/lib/ldap.py", line 83, in connect
    self.connect(version=ssl.PROTOCOL_TLSv1)
  File "/usr/local/lib/python3.11/dist-packages/certipy/lib/ldap.py", line 136, in connect
    bind_result = ldap_conn.bind()
                  ^^^^^^^^^^^^^^^^

The server doesn't have a certificate and doesn't even have the CA role installed, it is JUST a domain controller.
Is that what's causing the crash?
Thanks!

UPDATE
I created a selfsigned cert and installed it on the DC and now Certipy works without errors.
Certipy just needs a little bit of error handling, other than that all is fine.

@init5-SF thanks for reporting your results. Based on that, it sounds like this response should say something more like "No certificate installed on the target." ?

hi @altjx
Yes that's pretty much it, some sort of error handling 👍🏼

The reason it fails is because the DC has not been issued a certificate for server authentication. Certipy will try LDAPS by default which requires the server to have a certificate for server authentication. If it doesn't, the server closes the connection. If you want to proceed without adding a certificate on the DC, then switch to plaintext LDAP with -scheme ldap.


Godot crashes when opening the editor

Godot version:
3.2beta build 76678b260
OS/device including version:
OSX
Issue description:
Godot crashes when opening editor
Steps to reproduce:
Open Godot Editor.
Error report dump:
Process:               Godot [1430]
Path:                  /Applications/Godot.app/Contents/MacOS/Godot
Identifier:            org.godotengine.godot
Version:               3.2 (3.2)
Code Type:             X86-64 (Native)
Parent Process:        ??? [1]
Responsible:           Godot [1430]
User ID:               501

Date/Time:             2020-01-09 21:14:10.492 +0000
OS Version:            Mac OS X 10.15.2 (19C57)
Report Version:        12
Bridge OS Version:     3.0 (14Y908)
Anonymous UUID:        A4F0AF91-3EAE-39BE-FF5F-4FC584504C81

Time Awake Since Boot: 1900 seconds

System Integrity Protection: enabled

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_CRASH (SIGABRT)
Exception Codes:       0x0000000000000000, 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

Application Specific Information:
abort() called
Godot(1430,0x1150cadc0) malloc: *** error for object 0x7ff766d3de01: pointer being freed was not allocated

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib        	0x00007fff671b77fa __pthread_kill + 10
1   libsystem_pthread.dylib       	0x00007fff67274bc1 pthread_kill + 432
2   libsystem_c.dylib             	0x00007fff6713ea1c abort + 120
3   libsystem_malloc.dylib        	0x00007fff67234647 malloc_vreport + 548
4   libsystem_malloc.dylib        	0x00007fff6723740e malloc_report + 151
5   org.godotengine.godot         	0x0000000106ead536 btSequentialImpulseConstraintSolver::~btSequentialImpulseConstraintSolver() + 22 (btSequentialImpulseConstraintSolver.cpp:385)
6   org.godotengine.godot         	0x0000000106f48716 SpaceBullet::destroy_world() + 150 (space_bullet.cpp:650)
7   org.godotengine.godot         	0x0000000106f485c5 SpaceBullet::~SpaceBullet() + 69 (cowdata.h:370)
8   org.godotengine.godot         	0x0000000106f487fe SpaceBullet::~SpaceBullet() + 14 (space_bullet.cpp:352)
9   org.godotengine.godot         	0x0000000108eb4f5f World::~World() + 47 (world.cpp:359)
10  org.godotengine.godot         	0x0000000108466c95 Viewport::~Viewport() + 517 (memory.h:119)
11  org.godotengine.godot         	0x000000010841c658 SceneTree::finish() + 104 (memory.h:119)
12  org.godotengine.godot         	0x0000000106d270c6 OS_OSX::run() + 614 (os_osx.mm:2908)
13  org.godotengine.godot         	0x0000000106d2c09b main + 811 (godot_main_osx.mm:102)
14  libdyld.dylib                 	0x00007fff670707fd start + 1

SpaceBullet - probably related to bullet update - #34931.

I was about to report this issue as well. The error log is similar to the one described here. I'm on the lastest version of MacOS Catalina.

See pinned issue #34931.


chore: install clang llvm pkg-config nettle-dev for ci build

What issue does this PR solves?

What issue does this PR solves?

https://github.com/trustification/trustification/actions/runs/9592154199/job/26652821171?pr=1289. according to the issue.


[e2e]: go tag main config-ldflags-assets slsa3

Repo: https://github.com/slsa-framework/example-package/tree/v13.0.646
Run: https://github.com/slsa-framework/example-package/actions/runs/8352823612
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.go.tag.main.config-ldflags-assets.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.go.tag.main.config-ldflags-assets.slsa3.yml
Trigger: push
Branch: v13.0.646
Date: Wed Mar 20 02:11:08 UTC 2024

Repo: https://github.com/slsa-framework/example-package/tree/v13.0.647
Run: https://github.com/slsa-framework/example-package/actions/runs/8365007233
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.go.tag.main.config-ldflags-assets.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.go.tag.main.config-ldflags-assets.slsa3.yml
Trigger: push
Branch: v13.0.647
Date: Wed Mar 20 20:09:31 UTC 2024
Tests are passing now. Closing this issue.


How to use the vue-multiselec min.css file as a static asset within my app.scss

I am trying to load the css as a static asset in my app.scss file but when I try to import the file, npm does not seem to find it and throws a slew of errors.
I am trying to import like so in mt app.scss
@import './node_modules/vue-multiselect/dist/vue-multiselect.min.css';
But I get all this error:
ERROR in ./resources/sass/app.scss
Module build failed (from ./node_modules/css-loader/index.js):
ModuleNotFoundError: Module not found: Error: Can't resolve './node_modules/vue-multiselect/dist/vue-multiselect.min.css'

I know I can require() this path in my resources/app/js file but I want to keep the css and js assets separate.
Anyone know the correct way to import as a static asset into app.scss ?
The docs just show this but do not elaborate
<!-- New step! Add Multiselect CSS. Can be added as a static asset or inside a component. -->
<style src="vue-multiselect/dist/vue-multiselect.min.css"></style>

@torressam333 Hello, I have got the same issue, and were you able to solve this issue?

@kennybuc Hi, actually I was so the issue was a missing tilda when trying to import the vue-multiselect into my app.scss. This is the working line in my app.scss file
@import '~vue-multiselect/dist/vue-multiselect.min.css';
Notice the tilda right before the word "vue"! This did the trick for me. Hope it helps!

@torressam333 Thank you very much for providing the hint to me.
I actually believe that it would work in vue cli app. And I have got a trouble within my nuxt app, and it looks like there should be a setting to enable this plugin. Didn't check yet.
I just ended up with decision to use the pure html instead. Anyway I appreciate for your info.


Removing misleading comment

This contract is not multiowned, nor owned at all.

Fixes #
🚀 Description

[ ] 📘 I've reviewed the OpenZeppelin Contributor Guidelines
[ ] ✅ I've added tests where applicable to test my new functionality.
[x] 📖 I've made sure that my contracts are well-documented.
[ ] 🎨 I've run the JS/Solidity linters and fixed any issues (npm run lint:all:fix).

Thanks @redsquirrel! Actually DayLimit is left over from back when we had a multisig wallet in OpenZeppelin. The contract now isn't useful at all, we should just remove it.

@redsquirrel would you mind updating your PR to remove the contract instead, as suggested by @frangio ?


link club to PlayerProfile

right now, when a club is created, it does not update the club field of the captain PlayerProfile object, not sure how we want to link it. If we have a relation with it, it might be a bit messy because the caption would have 2 variables for club (one as a player, and one additional one as a captain)

PlayerProfile needs to have an instance variable isCaptain and Captain needs to be a role for permissions to be granted for certain actions.
Right now only Club knows who the Captain is.
Also, change transferCaptaincy() method to change Role of new captain and also set the isCaptain boolean variable to true for new captain and false for old captain.


added missing arg storage_file_path

This fixes the simple case in the Google Cloud Storage Ruby sample where a file is uploaded with a destination object name or storage path. The destination path arg was simply left off the CLI handling case for 'upload'.  Not urgent or critical or anything, but I ran into this (just now) in the process of familiarizing myself with how to work with buckets/files in Ruby, so I figure this might save someone else a few minutes.

I signed it (regarding the contributor license agreement).

@frankyn done, thanks!

:) missed that, done now, thanks!

@robertp This is great, thanks!
Did you happen to sign the CLA using the same email address that you use on your git commits<EMAIL_ADDRESS>from your commits here)?
This makes the CLA check happy 😄

@remi darn it, no.  i'll be sure to change my git config info on anything subsequent.  sorry!

No problem!!  Sorry, that's how the little CLA check bot works 😄   You only have to do it once and it works across Google projects :)

@remi hey commit ffc385d4c41b97aa4da28fe8e76e30b439660211 has the email used with the CLA... i'll do another pull request if you want, but is that good enough otherwise? or like do another branch? :) so much time on such a simple thing, at this point i can't give up!

@robertp, could you create another PR with the email you used to sign the CLA? Googlebot isn't happy with the multiple emails.


Tuples: no elimination form

Frank Pfenning from CMU is one of the world's experts on type systems. He has a set of beautiful design principles that provide guidance when developing new type systems. One of these principles, called harmony, governs how the introduction forms and elimination forms for a type interact. An introduction form is an expression that lets you create a value of a given type. An elimination form is an expression that lets you destruct or access the components of a value of a given type.
Unfortunately, unless I missed it, when we added tuples to the language, we forgot to add any elimination forms. So if you create a tuple, you no longer have a way to access its components. (The one exception is in parsers, where a select can be used to destruct a tuple and match it against one or more key sets; but this can't be done in controls.)
control c();
package p(c c);

control myc() {
  tuple<bool, bit<8>> y;
  apply {
    y = { true, 0 };
    // y's components can't be accessed any more
  }

}

p(myc()) main;

To fix this, I think we need to add one of the following to the langauge:

Casts and/or assignments between tuples and structs (acceptable option) with compatible fields (an OK option, but clunky, and implicitly treats structs as ordered, so I don't like it.)
Projection operations on tuples (a good option; what syntax?)
Extend switch to support pattern matching on tuples (a great option; already discussed as a possible language extension in an appendix).

(H/T to the Neptune team at @cornell-netlab who figured this out: @piercedouglis, @minmit, @rachitnigam)

Yes, I was planning to propose tuple field access to the spec, should be very easy to implement.
The syntax I have in mind is tuple.0, tuple.1

I approve, but let's discuss this at the next LDWG meeting before merging.

@jnfoster -- I just wanted to comment on the statement that you do not like structs as ordered collections. There are several places, most notable being the emit() method of packet_out and lookahead() method of packet_in that treat structs as ordered and I think that this is a very useful thing that a lot of programs rely on. I think that things like assignments also treat struct fields in order.
In fact, I stopped using the term "unordered collection" in my training materials. This was true about the metadata in P4_14 (since it didn't have all the usages I mentioned above), but I do not think this is the right thing to say about structs. Fortunately, it looks like the spec doesn't say it either.
What do you think?

I was surprised when you mentioned lookahead() as treating structs as ordered, but found examples of it right in the spec that have probably been there for years.  I don't recall noticing those before.  I have created a separate issue in the spec to consider whether to spell out more precisely what the restrictions on the lookahead operand type is: https://github.com/p4lang/p4-spec/issues/879.   I do not have a proposed answer to that question yet.

if you can have structs in headers this seems quite consistent.

Headers can contain structs: this is from the spec:
where each typeRef is restricted to a bit-string type (fixed or variable), a fixed-width signed integer type, a boolean type, or a struct that itself contains other struct fields, nested arbitrarily, as long as all of the “leaf” types are bit<W>, int<W>, a serializable enum, or a bool.

I agree the spec says you can have structs in headers.  What is slightly surprising to me here is that lookahead has example programs on just structs, with no header type involved at all.  Sure, it is easy to understand the intended meaning, but if that is supported, then why not emit/extract, too?  They all deal with bit order on the wire just as much as lookahead does.

lookahead needs to usually just look at a header fragment (prefix).
The other ones also use the validity bit to signify success.

@mbudiu-vmw -- there are actually a lot of reasons for the code I mentioned in #879. This is how you would typically get user-defined fields in and this generally has to be metadata, so that you do not have to worry about the validity (plus there are a number of other things at play if you consider the fact that you might get only part of the packet in).
This is a useful construct that we support today, so I think we should have it.

Why not use array indexing syntax? Currently, we have tuple.f0, tuple.f1, etc. This looks unnatural to me. How about tuple[0], tuple[1], etc?


Create choose-file-rounded-black.html

closes #1996
Here is the component I have built.
Here is a screenshot of that.

@bhumi-125 add file:border-none in input class

Congrats @bhumi-125 🎉, your PR got merged. To be eligible for the swags from ClueLess.
Don’t forget to star this repository. ⭐


Change port creation calls to include a device_id parameter

In order to support the new port binding scheme we are adding the loadbalancer id as the device id for any ports that are created as part of a loadbalancing service.  This include self ips and snats.

Fixed.


[BUG] Config Resets when starting game.

Describe the bug
Whenever I launch Minecraft with this mod installed, the config will always reset itself to it's default state. (and yes, I am saving the file before closing it.)
To Reproduce

install mod
start game once.
close game, modify config
start game again, and see that options have been reset to default.

Expected behavior
I expected my changes to be kept.
Versions
mod version: 2.4-c
game version: 1.20.1
forge version: 47.2.17
architectury: 9.1.12 forge
balm version: 7.1.2 forge
Additional notes
I am using the modrinth app, though that should make any difference.

It is possible I made errors when editing the config.
I have a number of other mods, but they shouldn't be affecting the config.
I will further test when I get back home.

Yeah I messed up when editing the config. sorry.


Assign initial theme colors

Pantone colors from comp should now be accurate in Sass variables.
Initial attempts at replacing Foundation's default colors.
Assign colors to top nav bar, footer.

 Theme -- Sass Colors


Remove table layout for chat messages (and fix layout issues yet again)

Fixes this:

back into this:

EDIT: So, this still had bugs, so I removed the table layout entirely. This one seems to just play nice now.

I had played with removing the table layout for a bit, and after noticing so many bugs, I simply canceled. I need to test this PR thoroughly before we can merge or we'll do like we've been doing for a few weeks: one step forward, N steps backwards.

Just wondering, what happens with very long names or notices? How do they overflow

@xPaw: they wrap on multiple lines.

Do you have any screenshot of this by any chance?

No, I haven't managed to trigger it yet. So far it seems like it does the same as it did with the table, the nick will just wrap on a second line. But if it were to happen, it would look a bit like this:

But it looks like this instead (but it also does on master):

I can also confirm long messages such as long links wrap properly and don't overflow.

Looks like this messes up existing border color on non-default themes (tested only on Zenburn).

What about using flexbox instead of floats? The textarea already does.

Just curious, why removing the (CSS) table layout? I didn't know much about the use cases for this but it looks like it matches our goal fairly well, no?

@astorije because it keeps exploding, especially with the unread marker?
Good point for the flexbox, will definitely go with that option.

Updated to flexbox

I'm going to stick this PR on my running version and see how it works over the next few days. That's how I found all of the bugs in @astorije's one. But this looks promising, that's for sure.

That's how I found all of the bugs in @astorije's one.

🔪💔😭 ... 😄

See the screenshot in the first post and try to tell me this is normal, expected layout for it. It's horrible.

Agreed, that's gross.
I'll test this as well. Would be pretty awesome if we can get this sh*t behind us once and for all!

That's how I found all of the bugs in @astorije's one.

That's how I test mines 😛 Not uncommon that I do a bunch of updates after opening the PR

Found my first bug.
Copy a line on the chat
Paste it into the textarea
You get 3 lines: the time on 1, the username on the next, and the message on the final one.

Is that a big bug though?
Worst case, can we intercept the copy to put them back into one line? It feels hackish but I don't think there is another option. More importantly, it could let us improve the copy and paste experience, such as wrapping nick with <> and padding the nicks when copying multiple lines.

Is that a big bug though?

What I would really like to figure out is why is it putting in newlines in the first place?

Most likely because of this switch. Again, I don't think there is anything we can do without breaking the layout again. Maybe try with inline-block?

That would be an acceptable solution, yeah.

Right, but definitely for another PR.

@maxpoulin64, given @YaManicKill's last comment and the fact that the 2.0.0 issue list is never ending (we have had 8-12 open issues/PRs there forever now...), do you think we could move that to the next release?
Current master works fine for v2.0.0 I think. Definitely looking forward to extensively test this once the 2.0.0 list is empty though.

As per my previous message, I'm removing this from 2.0.0, I'll get back to testing and reviewing this right after we ship. Though I'm looking forward to this, no reason to actually block release for it.

FYI, not directly related to this PR but still relevant: with flex-direction: column-reverse on the message list, we can almost entirely drop the stickyscroll jQuery plugin. column-reverse changes the way scrolling behaves when the DOM changes to consider the bottom of the element the "sticky" part, so adding a new message automatically scrolls the div down—no JS required! You still need a little JS (~a few lines) to keep the scroll position stuck if a message is added while you're scrolled up, but it's much simpler.
https://github.com/nornagon/lounge/compare/react...nornagon:react-chat#diff-97db1f70168fb5f12457b238ff6052b5R768 if you're curious.

@nornagon That makes selecting messages weird. And copying the messages makes them backwards.

@xPaw oh huh, i missed that! weird, that seems like a bug :/

To change how nicks overflow (instead of jumping to new line, extend it to right, this CSS needs to be added:
#chat .from {
	padding-left: 10px;
	min-width: 134px;
}

@maxpoulin64,  I know you're locally running an older version of that PR, before you moved to flexbox. Do you mind updating your instance to run the latest version, so it lives in prod somewhere before meeting?
I'd love to ship this, but we need to make sure the issues highlighted above are fixed beforehand.

@maxpoulin64, any chance you could be giving another stab at this?

@astorije can you take this over?

@astorije can you take this over?

Will do. Do you have a list of requirements you think are important for this on the top of your head?

@astorije just the stuff me and you pointed out.

This PR was 370 commits behind 😱
I have rebased it and I'm quickly testing it, but if someone (@thelounge/maintainers? @williamboman? @MaxLeiter?) would like to give it a try by merging it on their prod instance to have it run over multiple days, that would be very useful.
In general, does it seem like a good idea to switch from a CSS table layout (this is not evil, calm down 😅) to flexbox? What do we gain and lose?

I've ran this on and off multiple times since it was opened, never ran into issues with it (other than it breaking other PRs such as #759). LGTM

@YaManicKill, @williamboman, I have made a couple changes and rebased with master. Do you mind testing this a bit on your instances? Thanks!


Scroll to top after switching pages

@manasdk:

Hitting next on a list page loads new data fine but I remain at the bottom of the page. This is actually annoying as it requires me to to scroll to top of the page anyway - could we scroll to the top automatically?

Note: I don’t really like putting this in the main controller, so if someone (cc @enykeev) can point me to another place where it would be more appropriate, I’ll gladly change that.

Added a todo for the future. @enykeev: looks good?

Looks awful, but yet again, we are already planning to fix that so yeah, +1


Setting DIfferent Rules for Different Libraries

I couldn't find anywhere to ask a komf question other than here.  If I need to move elsewhere, please tell me.
If it is possible to set different rules for different libraries, I haven't figured out how to do it.  For example, I have three libraries now Comics (for western comics) that I want to have default to left-to-right, Manga (for manga, manhwa, etc.) which should default to right-to-left, and Webtoons which should default to webtoon view.
If this can't be done currently then you can call this a feature request.  I have figured out that I can run three copies of komf in docker each linked to a single library but running three instances feels a bit wasteful of system resources if it can be done in one.

Currently it's not possible, but it'd be a nice feature to have


Add merge_group event trigger to GHA daily workflow

What does this PR do?
This PR modifies the daily.yaml workflow by adding the merge_group event trigger and removing the push trigger for the dev branch.  Merge queues were just enabled for dev so the intent is that the daily workflow will run on PR's pushed to the merge queue.  For more information on merge queues, please see:
https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-a-merge-queue
https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request-with-a-merge-queue
The daily workflow is now triggered as follows:

Run workflow on merge_group event
Run workflow on pushes to main and release branches
Run workflow at 2:30am every day on dev
Run workflow manually

Before submitting

[x] Have you read the contributor guidelines?
[x] Did you run pre-commit on your change? (see the pre-commit section of prerequisites)

Where do we check status if it's not on dev commit history for merge queues?

We're about to find out!

@mvpatel2000 after clicking "Merge when ready" and the confirmation, looks like the PR gets added to the merge queue which is here:
https://github.com/mosaicml/composer/queue/dev
In this case, it started running the daily immediately.  It's currently configured to run up to 3 PR's concurrently and merge after 15 minutes if no other PR's are submitted.


Despite #247 NOPASSWD is still detected

Changelog for 0.13.0 indicates that after #247 the directive NOPASSWD should be excluded from results. However it seems that this is not the case.
Steps to reproduce:

Create a file (eg. sudoers) with the following content:

%wheel ALL=(ALL) NOPASSWD: ALL

(directive is copied from the /etc/sudoers file from an Archlinux install)

Install detect-secrets 0.13.0
Run detect-secrets scan --exclude-files '.venv' --all-files

Expected results:

{
  "exclude": {
    "files": ".venv",
    "lines": null
  },
  "generated_at": "2019-11-07T13:00:15Z",
  "plugins_used": [
    {
      "name": "AWSKeyDetector"
    },
    {
      "name": "ArtifactoryDetector"
    },
    {
      "base64_limit": 4.5,
      "name": "Base64HighEntropyString"
    },
    {
      "name": "BasicAuthDetector"
    },
    {
      "hex_limit": 3,
      "name": "HexHighEntropyString"
    },
    {
      "name": "JwtTokenDetector"
    },
    {
      "keyword_exclude": null,
      "name": "KeywordDetector"
    },
    {
      "name": "MailchimpDetector"
    },
    {
      "name": "PrivateKeyDetector"
    },
    {
      "name": "SlackDetector"
    },
    {
      "name": "SoftlayerDetector"
    },
    {
      "name": "StripeDetector"
    }
  ],
  "results": {},
  "version": "0.13.0",
  "word_list": {
    "file": null,
    "hash": null
  }
}

Actual results:

{
  "exclude": {
    "files": ".venv",
    "lines": null
  },
  "generated_at": "2019-11-07T13:00:15Z",
  "plugins_used": [
    {
      "name": "AWSKeyDetector"
    },
    {
      "name": "ArtifactoryDetector"
    },
    {
      "base64_limit": 4.5,
      "name": "Base64HighEntropyString"
    },
    {
      "name": "BasicAuthDetector"
    },
    {
      "hex_limit": 3,
      "name": "HexHighEntropyString"
    },
    {
      "name": "JwtTokenDetector"
    },
    {
      "keyword_exclude": null,
      "name": "KeywordDetector"
    },
    {
      "name": "MailchimpDetector"
    },
    {
      "name": "PrivateKeyDetector"
    },
    {
      "name": "SlackDetector"
    },
    {
      "name": "SoftlayerDetector"
    },
    {
      "name": "StripeDetector"
    }
  ],
  "results": {
    "sudoers": [
      {
        "hashed_secret": "d87c448044defb778f33158d8ccf94a20531d600",
        "is_verified": false,
        "line_number": 1,
        "type": "Secret Keyword"
      }
    ]
  },
  "version": "0.13.0",
  "word_list": {
    "file": null,
    "hash": null
  }
}

Note: the --exclude-files '.venv' directive was added because detect-secrets was installed in a virtualenv

It looks like the bug is that the FALSE_POSITIVE list are referencing values, not keys (source: https://github.com/Yelp/detect-secrets/blob/master/detect_secrets/plugins/keyword.py#L355).
In this case, the key that is flagged is the existence of PASSWD in NOPASSWD (source), and then the secret value extracted is ALL.

The fix here would be to filter out false positives in both the keys and the values. However, that could be a trickier fix than expected.

also, is there a way to turn off this one detection plugin? detect-secrets --help gives no clue nor does the README. shall I dive into he code?

Try detect-secrets scan --help

Halleluyah! too well hidden for my taste, but I'll take it.

I feel the same way @ira-bv, we haven't done anything hacky around argparse to change the default behavior.


Issue 111

Defined rules:

HTL-10 Use sly tags over redundant markup.
HTL-11 Use existing HTML elements instead of adding extra sly tags.

Coverage increased (+0.05%) to 95.61% when pulling 2706072e5492b591f470836c43d34340df9c68d2 on issue-111 into 00db65dd5ba910cb625b0239effc9b79dfe73341 on master.


skip test_torch_compile_cat_nvfuser_phi2_tanh if bf16 is not available

i'm checking this on a machine with volta gpus

Thank you @crcrpar @tfogal


cmake: 3.19.7 -> 3.21.0

Motivation for this change
New Release: https://cmake.org/cmake/help/v3.21/release/3.21.html
We skipped 3.20, which is documented here: https://cmake.org/cmake/help/v3.21/release/3.20.html
Things done
Recreated application-services.patch due to a conflict.

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Relase notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Bootstrapping fails on aarch64-darwin blocking staging next https://github.com/NixOS/nixpkgs/pull/131928
https://hydra.nixos.org/build/148787706
cc @NixOS/darwin-maintainers

@FRidh https://github.com/NixOS/nixpkgs/pull/131969 is an attempt.

reverted in bd57a30d1ba907783e73fe1d887bf62b8a7c1760


Enhancement: Provide Option to Reverse

Can we get an option to reverse a successful switch?  From Oracle Linux back to CentOS.

I think that's something you should ask the CentOS to develop. It's not something we would consider adding, though.

I think that's something you should ask the CentOS to develop. It's not something we would consider adding, though.


[Feature request] Profile Manager

Idea
Hi would be possible to add the profile manager in order to create multiple profiles on the same container?
Thank you in advance.

Isn't the built-in profile manager doing that already?
about:profiles
You can create and open a different profile there.
I haven't tried passing launch parameters to the container, but -P "profilename" would run Firefox with the specified profile.


Linting: tests and a few items

Figured I might as well follow it through... :) This fixes the remaining...

Thanks!


regression in 4.5 - recursive conditional type with generic input fails to narrow

Bug Report

🔎 Search Terms
4.5 recursive conditional type narrow generic
🕗 Version & Regression Information
4.5.0-dev.20211001

This changed between versions 4.4.3 and 4.5.0-beta

⏯ Playground Link

4.4.3
4.5.0-dev.20211001

💻 Code

type ArrayLength<
    Length extends number,
    CurrentArray extends never[]
> = CurrentArray['length'] extends Length
    ? CurrentArray
    : ArrayLength<Length, [never, ...CurrentArray]>

type WrapArray<T extends unknown[]> = T

//error: Type 'ArrayLength<T, []>' does not satisfy the constraint 'unknown[]'
export type Foo<T extends number> = WrapArray<ArrayLength<T, []>>

🙁 Actual behavior
error: Type 'ArrayLength<T, []>' does not satisfy the constraint 'unknown[]'

🙂 Expected behavior
no error

Is this the same error as https://github.com/microsoft/TypeScript/issues/46183?

yep

why was my issue marked as a duplicate of the newer one lol


extraterm.exe exits with "TypeError: Cannot read property 'cygwinDir' of null"

I'm trying to use Extraterm v5.0 on Windows 7 with a Cygwin 64 install. Debug output also includes this warning "2016-03-17 16:46:41.562 DEBUG [main #0] Couldn't find user configuration file at
C:\Users\UCA\AppData\Roaming\extraterm.json"

It is having trouble finding your cygwin installation directory. It looks in the windows registry at
HKLM\SOFTWARE\Cygwin\setup\rootdir to see if the installer recorded the dir there. If that fails it also looks for cygwin in the default Babun install location ($user_home/.babun/cygwin or something).
I'm cooking up some code now so that people can explicitly say as a command option where cygwin is located. It shouldn't take long.

2016-03-17 20:43:56.415 DEBUG [main #0] Found cygwin installation: C:\cygwin64

Is this lying?

@Freaky Is there or was there ever, a cygwin installation in C:\cygwin64? It sounds reasonable. That is the default installation directory if you use the installer.

There is.
To be clear, here's the full backtrace:
TypeError: Cannot read property 'cygwinDir' of null
at Object.factory (C:\extraterm-0.5.0-win32-x64\resources\app\src\ptyproxy.js:106:52)
at main (C:\extraterm-0.5.0-win32-x64\resources\app\src\main.js:49:40)
at Object.<anonymous> (C:\extraterm-0.5.0-win32-x64\resources\app\src\main.js:584:1)
at Module._compile (module.js:425:26)
at Object.Module._extensions..js (module.js:432:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:313:12)
at Module.require (module.js:366:17)
at require (module.js:385:17)
at Object.<anonymous> (C:\extraterm-0.5.0-win32-x64\resources\app\main.js:8:1)

This hack in ptyproxy.js lets the app launch, albeit I don't actually get a shell, just a "Welcome to Extraterm!":
var sessionProfile = config.expandedProfiles[0];
var pythonExe = findCygwinPython("c:\\cygwin64");

OK, it just looks like it can't find cygwin.

So why does it say "Found cygwin installation"?
Lack of shell is tracked down to the dummy passwd file I made because for some reason cygwin setup didn't make one.

Yup, that's it - duff passwd file causes sessionProfile to be null.  Fixing that lets me roll back my hack.

And this would explain why it's missing and how to generate them if needed: https://stackoverflow.com/questions/28573763/i-am-unable-to-find-the-etc-passwd-file-in-cygwin

I wonder if it is worth the effort to check for a nonsense value from /etc/passwd and then default to /bin/bash.

To be clear, the initial error was there being no /etc/passwd, because cygwin doesn't create one any more.
You should really be using getpwent() rather than poking at it directly.

extraterm also finds my cygwin directory.
2016-03-17 16:46:41.589 DEBUG [main #0] Found cygwin installation: C:\cygwin64

My issue may be related to you parsing the passwd file. I changed my home directory path in the passwd file to point outside of the C:\cygwin64 directory.
UCA:unused:1000:513:U-9J88PS1\UCA,S-1-5-21-1060225852-1179717075-1491434510-1000:/cygdrive/k/home:/bin/bash

Cygwin doesn't create a /etc/passwd anymore?? I guess that is possible.
I would use getpwent() if I had it but Electron (and Extraterm) are not cygwin applications on Windows so they don't have direct access to cygwin's compatibility layer. It doesn't even have direct access to a PTY. This is why is uses Python in cygwin to act as a proxy. This python is inside the cygwin world and bridges the two.

I've spun this missing /etc/passwd problem into its own issue #9 .

I think I've covered the problems discussed in this thread in other issues. v0.6.0 will have these cygwin related fixes.
closing.


Do not validate nested structs when explicitly ignored

When validating structs with nested structs like this:
type Comment struct {
    Text   string `valid:"required"`
    Author User   `valid:"-"`
}

I do not want to validate User for each Comment so having an option to explicitly ignore it is nice. I think this would be expected behavior in such a case.

This change is

It will be much better if there are will be some tests for it. Thanks :)


 I've checked both firefox and safari and they both have the problem so it's not a browser specific issues.
Anyone that can look into this?

If a use dark theme of Firefox, my tables work fine: black background, white text.


There is guide to connect Azure AD?

Hello guy,
I need to a guide to connect a Cloud Service to Azure AD, but I think this guide does not support that, right?
Thanks
Sara Silva

It's in our backlog. Stay tuned.

@saramgsilva  - Does this document address the scenario you are interested in?

I will see, I did not found that page. Thanks


Chef 16 mount resource strips trailing / even for root directory

Description

Since #10614, mount resource is updated to have coerce in mount_point attribute. root directory
There were several issues around for root of the network mount, but the same change is also affecting the plain root directory. After the coercion, it is simply going to be nil. This can be checked in the trace log that I attached in gist by looking at the log
TRACE: mount[/] is enabled at
INFO: mount[/] enabled

This new behavior leaves unwanted consequences like below
vagrant@test-mp-oel-77-chef16.vagrantup.com:~ ( test-mp-oel-77-chef16.vagrantup.com )
12:03:25 $ cat /etc/fstab
/dev/mapper/vg00-rootlv00 / xfs defaults 0 2
/dev/mapper/vg00-rootlv00  xfs defaults 0 2

Chef Version

16.7.34 or after is affected(based on the tag in this repo)
Platform Version

I tested this in Oracle Linux 7.7 but this should be problematic across RHEL based OS at least.
Replication Case

Calling mount resource having '/' on mount_point attribute like below will have the issue.
mount '/' do
  action :enable
  device '/dev/mapper/vg00-rootlv00'
  fstype 'xfs'
end

Client Output

https://gist.github.com/jiokmiso/2b200bf555b5b6fecefbb49367d86fdd
Stacktrace

Closing this since the fix is merged. Thanks @jiokmiso


Re-add aws.py to search_backend

Moves the aws.py script back to the search_backend folder, as it's used by the other repo to help set up OpenSearch
Updates file paths for scripts/notebooks that aren't a part of the main search_backend code
Removes some code that's not general enough for this repo
Minor edit to IndexingPipeline() to allow one of the args to be optional (useful when setting up a BM25 pipeline, where we shouldn't need to specify an embedding model)

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 87.96%. Comparing base (f6fc574) to head (caa1313).

:exclamation:  There is a different number of reports uploaded between BASE (f6fc574) and HEAD (caa1313). Click for more details.
HEAD has 2 uploads less than BASE

Flag
BASE (f6fc574)
HEAD (caa1313)

unittests
4
2

Additional details and impacted files
@@             Coverage Diff              @@
##              main      #48       +/-   ##
============================================
- Coverage   100.00%   87.96%   -12.04%
============================================
  Files            3        4        +1
  Lines          117      133       +16
============================================
  Hits           117      117
- Misses           0       16       +16

Flag
Coverage Δ

unittests
87.96% <ø> (-12.04%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

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


whether model Ae_2d  has  some wrongly setting parameters ?

I have found that the input channels and output channels of the last two deconvolutional layer were wrong according to the 2D AE network parameters in the paper.Please check it again and have it corrected.

I have found that the input channels and output channels of the last two deconvolutional layer were wrong according to the 2D AE network parameters in the paper.Please check it again and have it corrected.

Hi, we set the input channels and output channels in train_utils_ae.py (define the model)
Define the model
fmodel=getattr(models, args.model_name)
self.encoder = getattr(fmodel, 'encoder')(in_channel=Dataset.inputchannel, out_channel=Dataset.num_classes)
self.decoder = getattr(fmodel, 'decoder')(in_channel=Dataset.inputchannel,
out_channel=Dataset.num_classes)
self.classifier = getattr(fmodel, 'classifier')(in_channel=Dataset.inputchannel,
out_channel=Dataset.num_classes)


Item duplicating and voiding

Playing in Sky factory 3.0.8
Steps to reproduce:

Create a simple storage/crafting grid/transmitter
travel far enough for the original system to unload
build a second system using the receiver and crafting grid
link the systems
Items that you put into the secondary system get voided
Items that you take out of the secondary system get duplicated
...

Version (Make sure you are on the latest version before reporting):

Minecraft: 1.10.2
Forge: <IP_ADDRESS>4
Refined Storage: 1.2.22

Does this issue occur on a server? [yes/no]
Yes, have not tested in smp.

Should be fixed in RS for latest MC versions.


Document classical control

This PR adds a docs page for classical control detailing some basic use cases and edge behavior to consider.

CC @augustehirth and @daxfohl.
For @daxfohl: are there any other weird behaviors / use cases you think are worth highlighting here?

Do you want to highlight deferred measurements conversions? There are examples in the tests. https://github.com/quantumlib/Cirq/pull/4849/files
Should also highlight QASM support once it's fixed. (Victory marked it as post 1.0 but it should be a straightforward fix if anyone has time before then #5388).

Also maybe the teleportation circuit would be good to reference

Do you want to highlight deferred measurements conversions?

Done, plus a brief general mention of how transformers interact with classical control. There's something to be said for the fact that transformers are a separate complex topic, but since this will be filed under "Advanced" I think it's reasonable to assume that readers are familiar with (or at least willing to read) the transformers documentation.

Also maybe the teleportation circuit would be good to reference

Copied the example from examples/ into the Basic Conditions section.

@95-martin-orion What else needs to be done for this? After your updates it looks great to me.

Just need approval from maintainers.


Add button and chips to Subjects step

Unit tests will be added in the separate task:  https://github.com/Space2Study-UA-1156/Client-01/issues/181

Don't we have to store data inside the StepContext? https://github.com/Space2Study-UA-1156/Client-01/blob/develop/src/context/step-context.jsx

Makes sense)


handy site for signing .exe?

as requested I will post the link here, hope this helps!
https://stackoverflow.com/questions/252226/signing-a-windows-exe-file
Ruben

Will be looking into this.


Wiki page upload attachment button in edit page not working

When  i am clicking on upload attachment button , in edit page , the popup for upload attachment is showing an empty dialog box with only upload button ###

This is deployed over Frappe cloud with the versions below,
Frappe Framework: v14.27.0 (HEAD)
Wiki: v0.0.1 (HEAD)
URL - wiki.nestorbird.com

I have updated and this didn't work for me. Please find the clip here,
DRIP.webm

Can you try going to File List from desk and click on Add File and see if the file uploader is loaded properly?

Yes, in File List the uploader is working fine but not working on document edit screen as shown in my previous message here.

I have attached the image , please check in Preview

This is also now occurring for us too with recent update. e.__ is not a function when selecting upload attachment when editing a wiki page.

This issue will be resolved in #124

Closing this, since it's not relavant from #124


Error: Quotes are not supported for evaluation message on Angular App

Hello,
Thanks for this helpful package. I tried the demo and it's actually the one that I'm looking for.
So I installed today on a fresh angular app (version 8 and 11) it to my angular app, but unfortunately, I'm getting this error after following the setup from the docs.

I only tried this snippet from the documentation:
<ngx-doc-viewer
  [url]="https://drive.google.com/file/d/0B5ImRpiNhCfGZDVhMGEyYmUtZTdmMy00YWEyLWEyMTQtN2E2YzM3MDg3MTZh/preview"
  viewer="url"
  style="width:100%;height:50vh;"
>
</ngx-doc-viewer>

I hope you can help me. This package is the one I really need. Thank you!

Hello, I had the same error, I fixed it like this :
change the url by adding single quote :
old => "https://drive.google.com/file/d/0B5ImRpiNhCfGZDVhMGEyYmUtZTdmMy00YWEyLWEyMTQtN2E2YzM3MDg3MTZh/preview"
new one => "'https://drive.google.com/file/d/0B5ImRpiNhCfGZDVhMGEyYmUtZTdmMy00YWEyLWEyMTQtN2E2YzM3MDg3MTZh/preview'"

Thank you @joezak-outta !

Thanks @joezak-outta I will update the documentation.


Add print style for panel

Description

Padding and fontsize for panel is currently only defined for @media only screen, so I added a separate styling for @media print.
Panel currently looks like this when printing:

Related Issue(s)

https://github.com/Altinn/app-frontend-react/issues/710
https://github.com/Altinn/app-frontend-react/pull/736

Verification

[x] Your code builds clean without any errors or warnings
[x] Manual testing done (required)
Relevant automated test added (if you find this hard, leave it and we'll help out)
[x] All tests run green

Documentation

User documentation is updated with a separate linked PR in altinn-studio-docs. (if applicable)

Codecov Report
Base: 94.04% // Head: 94.04% // No change to project coverage :thumbsup:

Coverage data is based on head (db49ba2) compared to base (bb5ce7f).
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #249   +/-   ##
=======================================
  Coverage   94.04%   94.04%
=======================================
  Files          82       82
  Lines        1142     1142
  Branches      339      339
=======================================
  Hits         1074     1074
  Misses         59       59
  Partials        9        9

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


change the twitter icon to X

Let me do it. It is ready

I have created a pull request. Please check

done by #15


Add contrast colors Sass map

This commit adds a $contrast-colors Sass map to the variables. This makes it possible to define a custom contrast color for a given color. Closes #23418.
Let's say someone wants the color for btn-secondary to be black:
$contrast-colors: (
  $gray-600: $black
);

Or if you want to restore the Bootstrap v4 Alpha colors:
$blue:   #0275d8;
$green:  #5cb85c;
$teal:   #5bc0de;
$yellow: #ffd500;
$red:    #d9534f;

$theme-colors: (
  secondary: $white
);

$contrast-colors: (
  $blue: $white,
  $white: $gray-600,
  $green: $white,
  $cyan: $white,
  $yellow: $white,
  $red: $white
);

Closing for a simpler approach of adding vars for these two colors: #24426. It's not the per-theme-color approach as here, but it provides some flexibility.


Trinity throws HeaderNotFound error.

What is wrong?
   ERROR  05-28 23:10:05  base_events  Task exception was never retrieved
future: <Task finished coro=<FastChainSyncer.sync() done, defined at /Users/piper/sites/py-evm/p2p/chain.py:161> exception=HeaderNotFound('No header with hash 0x9a9f86051d5b58d5d682d90b84e34f822671b13a9d3dac579d181b566be6a32f found',)>
Traceback (most recent call last):
  File "/Users/piper/sites/py-evm/p2p/chain.py", line 174, in sync
    await self._sync(peer)
  File "/Users/piper/sites/py-evm/p2p/chain.py", line 220, in _sync
    head_number = await self._process_headers(peer, headers)
  File "/Users/piper/sites/py-evm/p2p/chain.py", line 233, in _process_headers
    'body')
  File "/Users/piper/sites/py-evm/p2p/chain.py", line 297, in _download_block_parts
    pending_replies = request_func(missing)
  File "/Users/piper/sites/py-evm/p2p/chain.py", line 361, in request_bodies
    return self._request_block_parts(headers, self._send_get_block_bodies)
  File "/Users/piper/sites/py-evm/p2p/chain.py", line 335, in _request_block_parts
    target_td = self.chaindb.get_score(headers[0].parent_hash)
  File "/Users/piper/sites/py-evm/trinity/utils/mp.py", line 30, in method
    return self._callmethod(method_name, args, kwargs)
  File "/Users/piper/.pyenv/versions/3.6.3/lib/python3.6/multiprocessing/managers.py", line 772, in _callmethod
    raise convert_to_error(kind, result)
evm.exceptions.HeaderNotFound: No header with hash 0x9a9f86051d5b58d5d682d90b84e34f822671b13a9d3dac579d181b566be6a32f found

This happens because _request_block_parts() is called multiple times, with subsets of the header batch originally passed to _process_headers(), but we can only assume our DB contains the header for the parent of the first item in the batch originally passed to _process_headers()


Serial Monitor overflowing with "Got characteristic X.XX change event"

I'm getting serial monitor overflowing with the following data every time I open the application on my iPhone:

HomeKit: [Client<PHONE_NUMBER>] Got characteristic 1.10 change event
HomeKit: [Client<PHONE_NUMBER>] Got characteristic 1.13 change event
HomeKit: [Client<PHONE_NUMBER>] Got characteristic 1.10 change event
HomeKit: [Client<PHONE_NUMBER>] Got characteristic 1.13 change event
HomeKit: [Client<PHONE_NUMBER>] Got characteristic 1.10 change event
HomeKit: [Client<PHONE_NUMBER>] Got characteristic 1.13 change event
HomeKit: [Client<PHONE_NUMBER>] Got characteristic 1.10 change event

and that repeats for long time even I I close the application (maybe still displays what's in the buffer?)
then after some time there the following error:

HomeKit: [Client<PHONE_NUMBER>] Got characteristic 1.10 change event
HomeKit: [Client<PHONE_NUMBER>] Got characteristic 1.13 change event
!!! HomeKit: [Client<PHONE_NUMBER>] error_in_write_data is true, abort write data
!!! HomeKit: [Client<PHONE_NUMBER>] error_in_write_data is true, abort write data
!!! HomeKit: [Client<PHONE_NUMBER>] error_in_write_data is true, abort write data
HomeKit: [Client<PHONE_NUMBER>] Got characteristic 1.10 change event
HomeKit: [Client<PHONE_NUMBER>] Got characteristic 1.13 change event
!!! HomeKit: [Client<PHONE_NUMBER>] error_in_write_data is true, abort write data
!!! HomeKit: [Client<PHONE_NUMBER>] error_in_write_data is true, abort write data
!!! HomeKit: [Client<PHONE_NUMBER>] error_in_write_data is true, abort write data
HomeKit: [Client<PHONE_NUMBER>] Got characteristic 1.10 change event
HomeKit: [Client<PHONE_NUMBER>] Got characteristic 1.13 change event

you have my sketch in #2.
it happens even if I remove the second sensor and use only temperature sensor
the application appears to work OK, but there is definitely something going wrong for that much chatter on the serial monitor...
Please help

I ordered DHT11 for testing, it's on the way to me,
In my experience of usage BME280 (my preferbale device)  I have sent notification to Apple only if difference between new value and old value
For instance
HOMEKIT_CHARACTERISTIC_CURRENT_TEMPERATURE);
if(ch1->value.float_value!=temp}   ///validate if temp is changed
ch1->value.float_value=temp;
homekit_characteristic_notify(ch1,ch1->value);
delay(10);
}
The same for humidity
You can see my usage in
https://github.com/Yurik72/ESPHomeController
It litle bit complex

Yes, this helped! No more chatter on the serial monitor.
You can close that one too. It works perfectly well now with DHT11!

On Apr 11, 2020, at 12:49 AM, Yurik72<EMAIL_ADDRESS>wrote:
I ordered DHT11 for testing, it's on the way to me,
In my experience of usage BME280 (my preferbale device) I have sent notification to Apple only if difference between new value and old value
For instance
HOMEKIT_CHARACTERISTIC_CURRENT_TEMPERATURE);
if(ch1->value.float_value!=temp} ///validate if temp is changed
ch1->value.float_value=temp;
homekit_characteristic_notify(ch1,ch1->value);
delay(10);
}
The same for humidity
You can see my usage in
https://github.com/Yurik72/ESPHomeController https://github.com/Yurik72/ESPHomeController
It litle bit complex
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/Yurik72/ESPHap/issues/5#issuecomment-612358788, or unsubscribe https://github.com/notifications/unsubscribe-auth/AB4H7PZMFU3PMG2QX2FNGDLRMAOJLANCNFSM4MFCIEDA.

Hi, please send me the latest version of your sketch, i will put into examples as well
The problem was that is too fast updating apple... After applying my solution, Apple home is not updating such frequently, but potentially it can be. The final solution is to increase a measurement time or/and compare values with some delta before sending to Apple. I suppose is enough for such purpose . It's only "user" monitor and not so important to see values with couple of second of delay or  with decreasing of accuracy.. Any how i continue working on library to prevent this "user" usage  in such manner and increasing stability on the core

Here it is:

//ESP8266 with DHT11
#include <ESP8266WiFi.h>
#include <ESP8266mDNS.h>
//#include <FS.h>
//#include <SPIFFS.h>
#define STATIC_IP_ADDR
///---DHT11-----///
#include "PietteTech_DHT.h"  // Uncommend if building using CLI
#define DHTTYPE  DHT11       // Sensor type DHT11/21/22/AM2301/AM2302
#define DHTPIN   2           // Digital pin for communications
#define PIN   0           // Digital pin for re-format
//declaration
void dht_wrapper(); // must be declared before the lib initialization
///---DHT11 stop-----///
#ifdef STATIC_IP_ADDR
IPAddress staticIP(192,168,0,91);
IPAddress gateway(192,168,0,1);
IPAddress subnet(255,255,255,0);
#endif
#define HOMEKIT_SHORT_APPLE_UUIDS
#include "coredecls.h"
const char* ssid = "SHAW-62CD10";
const char* password = "251169025293";
float hum;
float temp;
const long userdelay = 3000;            //delay for user input when tarting to format the SPIFFS
unsigned long previousMillis = 0;
unsigned long prevMillis = 0;
const long interval = 15000;
unsigned long currentMillis = 0;
unsigned long currMillis = 0;
extern "C"{
#include "homeintegration.h"
}
#include "homekitintegrationcpp.h"
//homekit_service_t* hapservice={0};
homekit_service_t* temperature;
homekit_service_t* humidity;
String pair_file_name="/pair.dat";
///---DHT11-----///
// Lib instantiate
PietteTech_DHT DHT(DHTPIN, DHTTYPE, dht_wrapper);
int n;      // counter
///---DHT11 stop-----///
//**********************
void init_hap_storage(){
Serial.print("init_hap_storage");
File fsDAT=SPIFFS.open(pair_file_name, "r");
if(!fsDAT){
Serial.println("Failed to read pair.dat");
return;
}
int size=hap_get_storage_size_ex();
char* buf=new char[size];
memset(buf,0xff,size);
int readed=fsDAT.readBytes(buf,size);
Serial.print("Readed bytes ->");
Serial.println(readed);
hap_init_storage_ex(buf,size);
fsDAT.close();
delete []buf;
}
//*****************
//****************
void storage_changed(char * szstorage,int bufsize){
SPIFFS.remove(pair_file_name);
File fsDAT=SPIFFS.open(pair_file_name, "w+");
if(!fsDAT){
Serial.println("Failed to open pair.dat");
return;
}
fsDAT.write((uint8_t*)szstorage, bufsize);
fsDAT.close();
}
//********************
//********************
//////////////////////////////////
void setup() {
disable_extra4k_at_link_time();
Serial.begin(74880);
delay(100);
//Enble format only when pairing fails
prevMillis=millis();
currMillis = prevMillis + userdelay;
//ask for user input
Serial.println("Should I format the SPIFFS? ");  //it should wait for userdelay/1000 seconds for user input
while (currMillis >= prevMillis && (digitalRead(PIN) == HIGH) ){
prevMillis = millis();
delay(1000);
Serial.println(round((userdelay-prevMillis)/1000));
if (currMillis <= prevMillis) {
Serial.println("5 seconds are over");
delay (100);
break;
}
else{ if (digitalRead(PIN) == LOW){
Serial.println("Formating...");
Format();
delay (100);
break;
}
}
}
//
if (!SPIFFS.begin()) {
Serial.print("SPIFFS Mount failed");
} else  {
Serial.println("SPIFFS Mount OK");
}
Serial.print("Attempting connection to: ");
Serial.println(ssid);
delay(10);
WiFi.mode(WIFI_STA);
delay(10);

// Working every time ESP8266 WIFI initialization

if (WiFi.waitForConnectResult() != WL_CONNECTED) {
Serial.println("Not connected");
WiFi.begin((char*)ssid, (char*)password);
} else {
Serial.println("Connected");
}
#ifdef STATIC_IP_ADDR
WiFi.config(staticIP, gateway, subnet);
#endif
Serial.println("");
Serial.println("WiFi connected!");
#ifdef STATIC_IP_ADDR
Serial.print("Static IP address: ");
#else
Serial.print("Dinamic IP address: ");
#endif
Serial.println(WiFi.localIP());
Serial.print("WiFi Status: ");
Serial.println(WiFi.status());
///---Setup homekit device---///
//this is for custom storage usage
// In given example we are using \pair.dat   file in our spiffs system
//see implementation below
Serial.print("Free heap: ");
Serial.println(system_get_free_heap_size());
init_hap_storage();
set_callback_storage_change(storage_changed);
///---Adding Accessory---///
hap_setbase_accessorytype(homekit_accessory_category_thermostat);
///--- init base properties---///
hap_initbase_accessory_service("Environment","SeaMaster","258521521","DHT11_ESP8266","1.0");
temperature = hap_add_temperature_service("Temperature");
humidity = hap_add_humidity_service("Humidity"); //old definition replaced by the line below
///---Setup homekit device stop---///
///---initialize HAP---///
hap_init_homekit_server();
///---initialize HAP stop---///
///---End of setup()---///
}
///---DHT11 interrupt callback---///
void ICACHE_RAM_ATTR dht_wrapper() {
DHT.isrCallback();
}
///---DHT11 interrupt callback stop---///
///////////////////////////////
void loop() {
///---Reading the DHT11 sensor---///
// Reading temperature for humidity takes about 250 milliseconds!
// this sensor should not be polled more often then 2 sec apart
unsigned long currentMillis = millis();
int result = DHT.acquireAndWait(0);

if (currentMillis - previousMillis >= interval) {
// save the last time you read the sensor
previousMillis = currentMillis;
temp = DHT.getCelsius();     // Read temperature as Celsius
hum = DHT.getHumidity();        // Read humidity (percent)
Serial.print("Temperature: ");
Serial.println(temp); // Check if any reads failed and exit early (to try again).
Serial.print("Humidity: ");
Serial.println(hum); // Check if any reads failed and exit early (to try again).
if (isnan(hum) || isnan(temp)) {
Serial.println("Failed to read from DHT sensor!");
return;
}
}
homekit_characteristic_t * ch1= homekit_service_characteristic_by_type(temperature, HOMEKIT_CHARACTERISTIC_CURRENT_TEMPERATURE);
//ch1->value.float_value=temp;
if(ch1->value.float_value != temp){ ///validate if temp is changed
ch1->value.float_value = temp;
homekit_characteristic_notify(ch1,ch1->value);
delay(10);
}delay(10);
homekit_characteristic_t * ch2= homekit_service_characteristic_by_type(humidity, HOMEKIT_CHARACTERISTIC_CURRENT_RELATIVE_HUMIDITY);
//ch2->value.float_value=hum;
if(ch2->value.float_value != hum){ ///validate if temp is changed
ch2->value.float_value = hum;
homekit_characteristic_notify(ch2,ch2->value);
delay(10);
}
hap_homekit_loop(); //what does this exactly do?????
///--- end of the main loop ---///
}
///--- Formating function ---///
void Format(){
// Next lines have to be done ONLY ONCE!!!!!When SPIFFS is formatted ONCE you can comment these lines out!!
Serial.println("Please wait few seconds for SPIFFS to be formatted");
SPIFFS.format();
Serial.println("SPIFFS formatted");
delay(1000);
}

Спасиба, всево харошева,
Jordan

On Apr 13, 2020, at 1:03 PM, Yurik72<EMAIL_ADDRESS>wrote:
Hi, please send me the latest version of your sketch, i will put into examples as well
The problem was that is too fast updating apple... After applying my solution, Apple home is not updating such frequently, but potentially it can be. The final solution is to increase a measurement time or/and compare values with some delta before sending to Apple. I suppose is enough for such purpose . It's only "user" monitor and not so important to see values with couple of second of delay or with decreasing of accuracy.. Any how i continue working on library to prevent this "user" usage in such manner and increasing stability on the core
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/Yurik72/ESPHap/issues/5#issuecomment-613070998, or unsubscribe https://github.com/notifications/unsubscribe-auth/AB4H7P6CI6Z75IKESSJWER3RMNVYHANCNFSM4MFCIEDA.


Update package.json to allow sanity client v6

Fixes:
Could not resolve dependency:
npm ERR! peer<EMAIL_ADDRESS>from<EMAIL_ADDRESS>

I've hit this issue today, too. Hopefully this gets merged in soon.

I've hit this issue this week, too. It would be amazing if it was merged asap

Sorry for the late reply. Since this PR also updates some references in the package.json these changes could not be integrated.
I've created a separate commit with the changes. Version range ^5.0.0 of @sanity/client stays supported, since there aren't any changes in the client interface.


Allow rw locking of texture caches

To reduce thread contention on the IC/TS caches, change from unique
locks to reader-writer locks.

unordered_map_concurrent: Change the shards from spin_lock to
spin_rw_lock. Most operations (insert, erase, holding an iterator,
and find, which returns an iterator) are unique (write) locks. But
the underappreciated retrieve() method is stateless and can be a reader
lock!

In imagecache.cpp, change a bunch of the find() calls and fiddling
with iterators into simpler calls to retrieve(), which should be
able to happen concurrently.

On a highly threaded machine (52 cores) this resulted in a 6% gain
(geometric mean) across a set of production render frames that we like
to test with, but that disguises what's really happening.  Most of the
individual tests in that suite don't change at all (or vary within the
+/- ~1% we expect from timing noise and run-to-run variation.  But a
handful of the tests sped up by 20-40%! So I think you are unlikely
to see any change for a few threads, or even many threads for most
situations. But for highly threaded renderings where the access pattern
really results in the cache locks as a major rendering bottleneck,
this should help a lot.

LGTM!

ok, here goes nothing...


How to build like xxx-client.jar and xxx-client.json

How to build like xxx-client.jar and xxx-client.json

Hey there, i have found a tutorial for a pvp client, but it shows how to export the client here it is! https://www.youtube.com/watch?v=wAfKwpXBWzY

I will make a tutorial on it soon, releasing a json file as well

https://github.com/OxideWaveLength/Minecraft-Hack-BaseClient/wiki/Exporting-the-client#JSon-File