Removed classroom reference from README lol

You missed a reference to Classroom :shipit:

Gah! Thanks! Should've ctrl-f'd! :expressionless:


Lower cost per printer for network printing

Raspberry pi's are expensive, and greatly increase the cost of a print farm if required per printer.
What if there was a low-cost esp32-based controller that could sub in for the raspi+CPQ plugin, that hooked up to the printer via USB and:

Fetches IPFS files and streams them to the microSD embedded in the printer
Starts the print and monitors its state
Runs event scripts (perhaps pulled from a local website, or stored in EEPROM)

If it cost $4 instead of $150 per printer, that'd greatly lower the barrier to entry for prospective print farmers.

Fleshing this out a bit more...
Hardware

1-3 linux PCs, each hosting an octoprint server with CPQ and PeerPrint installed
A farm of printers, each with an ESP32 board attached via USB. The boards should probably be ethernet style to reduce wireless chatter and increase reliability. A custom board may be the best option in the end, as using a wired ESP32 as a USB host device doesn't seem to be very common currently.

Software
Note that gRPC is currently not supported on ESP32. Furthermore, logic for selecting useful work is currently in Python and runs via the CPQ plugin repository.

Use the IPFS client library for ESP32 to "cat" a file from the IPFS server straight onto the SD card of the printer.
Integrate the virtual COM Port USB host library to allow serial comms between an ESP32 and the 3D printer.
Expose an API endpoint from the CPQ plugin that proxies esp32 device requests to mutate the queue. This reuses the state machine in driver.py to control the printer, and effectively turns the ESP32 device into a "serial over ethernet" controller with a bit more printer-specific smarts.

Next Steps:

Try out the IPFS client library and the VCP USB host library - if it can't fetch a file, write to SD, and then start the print, then the core idea is flawed.
Buy a few ESP32 boards with ethernet and try to replicate (1)
Convert "the driver" object in CPQ into a dictionary of drivers, keyed by the ID of the printer. Dynamically create/destroy these drivers as printers come online/offline.
Separate out the on_update code in a way that allows OctoPrint or the ESP32s to trigger state transitions.
Hack together some form of basic MDNS rendezvous that provisions the ESP32 peers with the URL of the IPFS server(s), the CPQ host(s), and any other relevant network details on boot.

As an alternative, there's this proof of concept of USB/IP via ESP32-S2: https://github.com/chegewara/esp32-usbip-poc
This is basically hooking up all the printers via "ethernet USB" to a single PC however, which doesn't sound super great for reliability. I'd rather the core "host" logic be on the controllers themselves, and not on the OctoPrint server. Otherwise a restart of the OctoPrint server could take down all the active printers.

Also discovered the new XIAO ESP32S3 Sense modules from seeed studio that incorporate an OV2640 camera. Definitely more expensive to install, but this could be really useful for spaghetti detection / initial QA of parts.

Thinking about behavior a bit, I imagine a setup like the following:
Config and connection flow
If not configured, self-host AP and allow configuration via simple HTTP interface. Configurable settings:

SSID
Password
Connection retries until self-host AP
Broadcast port
Broadcast period (seconds)
Idle time before broadcast

It may be useful to implement an auto-provision script that finds and connects to these self-hosted APs and provides specific configuration.
When configured, the device will connect to the wifi and broadcast its IP address on the given port for the PeerPrint server to discover. Broadcasting will cease when it receives a command. If it doesn't receive a command for a while, it'll begin broadcasting again.
Command flow
The PeerPrint server can send the following commands to an HTTP endpoint (followed by example responses):
{"command": "download", "cid": "<ipfs CID>", "src": "<ipfs server address>"} --> {"written": N, "status": "ok", "printer": "idle"}
{"command": "run_script", "script": "<gcode commands>"} --> {"status": "ok", "printer": "busy"}
{"command": "get_state"} --> {"status": "ok", "printer": "paused"}

download should use a modified version of https://github.com/exmgr/ipfs-client-esp32 to fetch the file from src and write it via GCODE to the SD on the printer.
run_script should execute the gcode directly on the printer. get_state should return current state of the printer.

Check out https://github.com/probonopd/WirelessPrinting
It emulates enough of the OctoPrint API to let e.g., PrusaSlicer discover it via Zeroconf and print to it like if it was an OctoPrint instance.

fetch the file from src and write it via GCODE to the SD on the printer.

I have never found a way to do this (fast).
Instead, WirelessPrinting uses a microSD card connected to the ESP.
What we didn't have so far is USB host mode, but it seems like you have figured that part out:
https://github.com/probonopd/WirelessPrinting/issues/123

Check out https://github.com/probonopd/WirelessPrinting
It emulates enough of the OctoPrint API to let e.g., PrusaSlicer discover it via Zeroconf and print to it like if it was an OctoPrint instance. I've been using it for years to do all my 3D printing.

Very cool :) using a "standard" API certainly opens up a lot of possibilities.

fetch the file from src and write it via GCODE to the SD on the printer.

I have never found a way to do this (fast). Instead, WirelessPrinting uses a microSD card connected to the ESP and stores the GCODE there.

Gotcha. I was hoping to not require a microSD slot on the board as that bumps up the price. Did you try GCODE based SD writing by any chance? What was the performance like for that?

What we didn't have so far is USB host mode, but it seems like you have figured that part out: probonopd/WirelessPrinting#123

Yup - I mostly just mashed together the existing esp-idf examples into something barely functional. I see your project uses the Arduino framework... AFAIK there's not a decent port to an arduino lib yet from the IDF examples. I tried a couple, none of them really seemed well supported.
In any case, I see some collaboration potential here :)

Did you try GCODE based SD writing by any chance? What was the performance like for that?

I didn't really try it as I was told it would be slooow. Maybe worth a try nevertheless.

In any case, I see some collaboration potential here :)

Cool  :+1:


[bug]: Channels in WaitingClose for many months already

Background
I have two channels in the WaitingClose state for many months already.
I am unable to get rid of them.
"waiting_close_channels": [
{
"channel": {
"remote_node_pub": "0306dc1dc707635e81c3cd90c60abc0b98009fc55d3ecb078b2704091cb7f1863c",
"channel_point": "0cd21e4d15ec9b52a82dd48c267621c8af42922ff23fd68d15714dff715bd1f9:1",
"capacity": "1000000",
"local_balance": "996530",
"remote_balance": "0",
"local_chan_reserve_sat": "10000",
"remote_chan_reserve_sat": "10000",
"initiator": "INITIATOR_LOCAL",
"commitment_type": "ANCHORS",
"num_forwarding_packages": "0",
"chan_status_flags": "ChanStatusBorked|ChanStatusCommitBroadcasted|ChanStatusLocalCloseInitiator",
"private": false
},
"limbo_balance": "996530",
"commitments": {
"local_txid": "646501adb403f81aafca85746c83e965473462db8920c345050eb943c16f9576",
"remote_txid": "0f5f46eadbe9708c97a14397650ef5d3dfa77f3bd1dfdc375dbdeee60362ddbf",
"remote_pending_txid": "",
"local_commit_fee_sat": "2810",
"remote_commit_fee_sat": "2810",
"remote_pending_commit_fee_sat": "0"
},
"closing_txid": "646501adb403f81aafca85746c83e965473462db8920c345050eb943c16f9576"
},
{
"channel": {
"remote_node_pub": "03c4c5c4d04e3f8dbf47d9ebdf20db6cd6d704b8f03f3e70797b21b76df3f1c73b",
"channel_point": "bb8d441dcb57dd59ba2920f1d9a6380bfd7d08751f67e576951cb5f81fadfc3f:0",
"capacity": "120000",
"local_balance": "117834",
"remote_balance": "0",
"local_chan_reserve_sat": "1200",
"remote_chan_reserve_sat": "1200",
"initiator": "INITIATOR_LOCAL",
"commitment_type": "STATIC_REMOTE_KEY",
"num_forwarding_packages": "0",
"chan_status_flags": "ChanStatusBorked|ChanStatusCommitBroadcasted|ChanStatusLocalCloseInitiator",
"private": false
},
"limbo_balance": "117834",
"commitments": {
"local_txid": "c0b50b3324c6b0acfbe56edd295d02100c4e8a7914d67fd0799fd6af2bea3272",
"remote_txid": "ee373b6d9f39b90188c8170844834ba64e38bf04777074a547828c39a845802c",
"remote_pending_txid": "",
"local_commit_fee_sat": "2166",
"remote_commit_fee_sat": "2166",
"remote_pending_commit_fee_sat": "0"
},
"closing_txid": "c0b50b3324c6b0acfbe56edd295d02100c4e8a7914d67fd0799fd6af2bea3272"
}
]
Your environment

version of lnd - 0.16.2-beta - but issue occurred already in some previous version
which operating system (uname -a on *Nix) - Windows 10 PRO
version of btcd, bitcoind, or other backend - Bitcoin Core verze v24.0.1

Steps to reproduce
I am not sure what happened, probably there was some issue during the opening.
The opening transaction is not found in the blockchain and chaennels have never been opened.
Later I tried to force close them. Channels are still in this state.
Expected behaviour
I would expect that after a certain time, it will disappear.
I tried to force-close it, but it is still there.
Actual behaviour
It is listed as pending closing. I am unable to get rid of it.

It is possible that the txs were never propagated through the network/dropped from the mempool(s).
In this case you won't be able to force close the channel because it was never open. You can use the lncli abandonchannel subcommand to make your node "forget" about these channels.
Disclaimer : for anyone reading this in the future. The use of abandonchannel can lead to loss of funds. If the channel ever confirmed after using the command your node would not be able to close (recover) the funds. You need to be sure that the channel did not confirmed and if possible make sure that it would not be able to confirm in the future (spend the input utxos)

Thanks @positiveblue for your answer.
Is it possible to get lnd for Windows but built in debug mode?
The standard version shows [lncli] rpc error: code = Unknown desc = AbandonChannel RPC call only available in dev builds

Try lncli abandonchannel --help and read the instructions carefully. No dev build needed.

Aha, perfect, thanks. I used lncli abandonchannel --i_know_what_i_am_doing
Those channels disappeared. Problem solved.


Error checking fastq-multx version

Line 536 seems to be generating an error on my system.
https://github.com/hepcat72/htseq2multx/blob/916e9aa05fccf389c28aefc22e4742a59ff19211/htseq2multx.pl#L536
sh: 1: Syntax error: Bad fd number

The following extra and modified options apply specifically to the htseq2multx.pl wrapper (as opposed to barcode_splitter).

optional arguments:
  -h, --help            Supply twice to show this message and exit.
  --version             Supply once to get the barcode_splitter version that
                        this wrapper emulates.  Supply twice to get a more
                        verbose version of the barcode_splitter version that
                        this wrapper emulates and the version of this wrapper.

configuration arguments:
  --fastq-multx PATH    Path to the fastq-multx installation.  Default is to use
                        the PATH in the user's environment.
  --debug               Supply this flag to output the fastq-multx command on
                        standard error and not delete the temporary barcode
                        file.
ERROR: The fastq-multx executable appears to not be fastq-multx according to the first 2 lines of its usage.  Use the --fastq-multx option described above to supply fastq-multx.

I'm not sure that all those redirects are needed, and they don't all seem to be portable to sh, but this seems simpler and works (at least in my case):
my $output  = `($fastq_multx 2>&1 ) | head -n 2`;

I'm not sure that all those redirects are needed, and they don't all seem to be portable to sh, but this seems simpler and works (at least in my case):
my $output  = `($fastq_multx 2>&1 ) | head -n 2`;

Yeah. I always forget the merge stdout/err syntax. I figured all that probably wasn't necessary, but ATT, I didn't bother doing a second google search.

This is addressed in the current PR.  Though please re-open if your tests show it's not fixed.


Set redirectUrl using hostname

The redirectUrl is hardcoded (http://localhost:8080) therefore it doesn't work when the app is deployed on Gitpod (or other cloud providers). Refactor to use the hostname header.

Closed by #14


Does this project have a source code?

Does this project have a source code?

I tried to use basic command line tools and Ubuntu configuration settings.


Question about usuage of Human 3.6M

Thanks for your work!
I have a question about the step using camera parameters convert 3D pose in world coordinate to camera coordinate. Actually, Human 3.6M provideds the 3D pose positions in each camera systems--D3_Positions_mono. And what is the difference between D3_Positions_mono and 3D pose position in camera system you got

Hi @zhangyahu1,
I think they are the same. Could you compute the difference and let me know?
Cheers,

Sure.


Decide what to do with pages for prefixed CSS items

Our CSS docs include about 177 pages documenting prefixed CSS properties, selectors, and so on.

These are usually in worse shape than standard items, so will take more work to fix.
It will often be difficult to find the information we need (for example, formal syntax can't be taken from the spec if there is no spec, and BCD may be hard to work out for old features)
It's likely that we will want to archive some of them if they describe old features that no modern browsers support any more.

We should do an analysis of the pages we have that document prefixed features and:

decide which ones we should archive, and archive them
work out which updates are needed for the rest, and who will be able help us to supply them.

Acceptance criteria

[ ] we have decide which prefixed pages to archive, and have archived them
[ ] we know which updates are needed to the rest

I spent today doing some analysis of pages that document prefixed CSS properties. The full details are in this sheet: https://docs.google.com/spreadsheets/d/1xjzL96ihaXfeKyGHyyRAvikg0Zl7558cJ_wJcHwv5AE/edit#gid=1373766696.
The sheet groups pages by vendor and page type: so there is a section for -moz properties, one for -webkit properties, one for -moz selectors, and so on.
For each page I wrote:

the last browser version that supported the feature, or "current" if it seems to be still supported
whether the page includes the information that the recipe expects. Pages missing this information will be more work to fix. Note that "Formal syntax" and "Formal definition" don't mean that they actually have these H2 sections, just that the page contains the information via a call to {{csssyntax}} or {{cssinfo}}. I've written "n/a" when the recipe does not expect the things.
any interesting notes
in a few cases, a recommendation on whether to archive the page or not. We should eventually fill in more of these I guess.

Overview
-moz properties

21 pages
could possibly archive a few
most have formal syntax and formal definition
several are missing BCD

-ms properties

44 pages
all are missing BCD
many are missing examples
all have unclear support status

-webkit properties

19 pages
most pages have quite complete content

-moz selectors

40 pages
many are marked "Mainly intended to be used by theme developers."
many are marked "Internal only since Firefox 58"
many are missing examples and/or BCD

-ms selectors

14 pages
many are IE-only
many are missing examples and/or BCD

-webkit selectors

16 pages
most are in good shape
one needs to be split into 7 pages

-moz media features

16 pages
almost all are marked "Internal only since Firefox 58"
almost all are missing examples and BCD

-ms media features

1 page
missing examples and BCD

-webkit media features

6 pages
mostly in good shape

Questions

which of the -moz properties should we archive?
what should we do with all the -ms properties and selectors? Which browsers support them? What level of support do we provide for IE these days?
what should we do with -moz selectors that are intended for theme developers?
what should we do with -moz selectors and media features that are marked internal only?

which of the -moz properties should we archive?

All that have been unsupported for at least two years
All that are XUL or internal only

what should we do with all the -ms properties and selectors? Which browsers support them? What level of support do we provide for IE these days?

Archive all of them. Given the state the pages are in, they look quasi archived to me already. By archiving, we make it even more clear to web devs that these should never be used again. (Microsoft agreed to archiving and we did that for JS docs already, should continue with CSS now)

what should we do with -moz selectors that are intended for theme developers?

The pages look super small to me and don't provide a lot of info. I propose to write a single document that presents relevant current CSS selectors for theme developers and archive all these old reference pages that are of questionable usefulness in their current form anyway.

what should we do with -moz selectors and media features that are marked internal only?

Archive everything.

+1; I think this is a pretty reasonable plan. Trying to get these pages passing the linter is far from a good use of our time.

@caitmuenster , I'm looking into cleaning up some old CSS pages, and a number of them are marked as "Mainly intended to be used by theme developers." - see rows 91-105 of this sheet: https://docs.google.com/spreadsheets/d/1xjzL96ihaXfeKyGHyyRAvikg0Zl7558cJ_wJcHwv5AE/edit#gid=1373766696.
But I wonder if this is even true any more, since as I understand it only WebExtensions-based themes are supported. So are these pages now obsolete from the point of view of theme developers?

(can the spreadsheet be made public?)
https://jsbin.com/tocalayisi/edit?html,css,output suggests that :-moz-focusring at least is web-accessible (try focusing the button via tab). So I'd be cautious about how many of these can "just" be removed.

(can the spreadsheet be made public?)

Done! Although I don't know how to make it editable to one group and just viewable to another. So now it's view-only for everyone.

https://jsbin.com/tocalayisi/edit?html,css,output suggests that :-moz-focusring at least is web-accessible (try focusing the button via tab). So I'd be cautious about how many of these can "just" be removed.

I didn't read anything in https://github.com/mdn/sprints/issues/3491#issuecomment-659352120 that says -moz-focusring is up for archival. The only -moz features up for archival are:

those not supported in Firefox for at least 2 years
those marked internal-only
those marked "mainly intended for theme developers"

https://jsbin.com/tocalayisi/edit?html,css,output suggests that :-moz-focusring at least is web-accessible (try focusing the button via tab). So I'd be cautious about how many of these can "just" be removed.

I didn't read anything in #3491 (comment) that says -moz-focusring is up for archival

It's in the row range you asked about in https://github.com/mdn/sprints/issues/3491#issuecomment-659525855 as being intended for theme devs, which is what I looked at after @caitmuenster asked around about that side of things. If we're keeping it, great.

Sorry for any confusion. For theme-specific features I'm interested in ones marked "Mainly intended for theme developers". All of these (except one, row 118) are in the range 90-105. But not everything in that range is also marked "Mainly intended for theme developers".
Having said that. Some items that are marked "Mainly intended for theme developers" are also available to web content. For example :-moz-broken. So perhaps these ought to be kept too?
(Note: we're not actually talking about removing anything, we're talking about "archiving", which means moving them outside the /Web part of the site.)

Adding a note from @Elchi3 on Slack:

when archiving a page and it has bcd, please remove the data from bcd and add plain text to the section like done here https://wiki.developer.mozilla.org/en-US/docs/Archive/Web/JavaScript/Array.unobserve#Browser_compatibility

I've archived the -ms ones and filed https://github.com/mdn/browser-compat-data/pull/6407 to remove BCD.

I've archived some -moz prefixed features:
properties:
-moz-window-shadow
-moz-text-blink
-moz-stack-sizing
-moz-border-top-colors
-moz-border-right-colors
-moz-border-left-colors
-moz-border-bottom-colors
selectors:
:-moz-full-screen-ancestor
:-moz-system-metric + subpages
media features:
-moz-mac-graphite-theme
-moz-maemo-classic
-moz-os-version
-moz-scrollbar-end-backward
-moz-scrollbar-end-forward
-moz-scrollbar-start-backward
-moz-scrollbar-start-forward
-moz-scrollbar-thumb-proportional
-moz-touch-enabled
-moz-windows-accent-color-in-titlebar
-moz-windows-classic
-moz-windows-compositor
-moz-windows-default-theme
-moz-windows-glass
-moz-windows-theme
I've also filed https://github.com/mdn/browser-compat-data/pull/6418 to remove BCD for those features that had it.


Update nf-winuser-getkeyboardlayoutnamea.md

AFAIK this method works on a per-thread basis.

Reassigning to @Karl-Bridge-Microsoft since this is keyboard related.


Draft: feat: Makes data_reader dask compatible

Codecov Report

Merging #34 (792546b) into next (0631e56) will decrease coverage by 1.92%.
The diff coverage is 21.87%.

:exclamation: Current head 792546b differs from pull request most recent head 1efdd25. Consider uploading reports for the commit 1efdd25 to get more accurate results

@@            Coverage Diff             @@
##             next      #34      +/-   ##
==========================================
- Coverage   88.94%   87.01%   -1.93%
==========================================
  Files          18       18
  Lines        1013     1040      +27
  Branches      204      211       +7
==========================================
+ Hits          901      905       +4
- Misses         67       89      +22
- Partials       45       46       +1

Impacted Files
Coverage Δ

deirokay/parser/treaters.py
85.34% <20.00%> (-2.71%)
:arrow_down:

deirokay/parser/parser.py
67.70% <22.72%> (-13.88%)
:arrow_down:

Continue to review full report at Codecov.

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


Provide a way to unsubscribe from events

I'm using the bloc pattern and register handlers in bloc constructors. When a bloc goes out of scope, I'd like to unregister the handlers in my dispose method. Currently, blocs that fall out of scope keep registering more handlers. This results in "dead" handlers being called.
I've seen this implemented as eventBus.off(handler) in other event bus implementations.
Would it be possible to get this functionality?

This is already possible. You need to save the subscription in a variable like this:
StreamSubscription loginSubscription = eventBus.on<UserLoggedInEvent>().listen((event) {
  print(event.user);
});

loginSubscription.cancel();

@marcojakob It would be great to have this mentioned in the documentation. That way, we don't have to look into issues section on GitHub.

@cnayan It's in there already: https://github.com/marcojakob/dart-event-bus#about-dart-streams


further finding for issue#232: shardformer is not installed after i run pip install -v .

root cause： no init.py file under shardformer folder.


Python: Clarification about get_request_settings_class

Describe the bug
With the upgrade of SK Python 0.4.4.dev there was a breaking change to our custom implementation of TextCompletionClientBase. Whereas the TextCompletionClientBase does not contain an abstract method get_request_settings_class, creating a semantic function with the custom text completion is not possible without defining that function.
I could not find documentation around the expectation for defining this function.
To Reproduce
Running the following code will produce an error ('CustomTextCompletion' object has no attribute 'get_request_settings_class'):
from typing import Any, AsyncGenerator, List, Optional, Union
from semantic_kernel.connectors.ai.open_ai.request_settings.open_ai_request_settings import (
    OpenAIRequestSettings,
)
from semantic_kernel.connectors.ai.text_completion_client_base import (
    TextCompletionClientBase,
)
from semantic_kernel.connectors.ai.open_ai.services.azure_text_completion import AzureTextCompletion
import semantic_kernel as sk

class CustomTextCompletion(TextCompletionClientBase):
    def __init__(self) -> None:
        self.inner = AzureTextCompletion(base_url="<redacted>", api_key="<redacted>", deployment_name="<redacted>")

    async def complete_async(self, prompt: str, settings: OpenAIRequestSettings, logger: Optional[Any] = None) -> Union[str, List[str]]:
        return await self.inner.complete_async(prompt=prompt, settings=settings, logger=logger)

    async def complete_stream_async(self, prompt: str, settings: OpenAIRequestSettings, logger: Optional[Any] = None) -> AsyncGenerator[Union[str, List[str]], None]:
        return self.inner.complete_stream_async(prompt=prompt, settings=settings, logger=logger)

kernel = sk.Kernel()
kernel.add_text_completion_service(service_id="default", service=CustomTextCompletion())

prompt_config = sk.PromptTemplateConfig()
prompt_template = sk.PromptTemplate("{{$input}}", kernel.prompt_template_engine, prompt_config)
function_config = sk.SemanticFunctionConfig(prompt_config, prompt_template)
function = kernel.register_semantic_function("default", "default", function_config)

Adding an implementation for def get_request_settings_class(self) -> type[AIRequestSettings] to the class addresses the issue.
Expected behavior
This does not throw an error, as in v0.4.3.dev. As an alternative, it would be great to have some documentation on what changes are required for implementing a custom text (or chat) completion client. Specifically, this would be about documenting the requirements for adding an implementation for get_request_settings_class(self) -> type[AIRequestSettings].
Platform

OS: WSL2 on Windows 11
IDE: VS Code
Language: Python
Source: pip, v0.4.4.dev

Thanks for reaching out, we have been making a lot of changes as we move towards v1. This one is indeed expected in each service because we now parse whatever settings are being passed to the right class by calling this function and then taking AIRequestSettings object and passing that to the specific class for your service. Of course when that is already the right class it should that step. In one of the py samples this is explained as well, but do let me know if you need additional help on this.

Thanks for the clarification. When I looked through the samples (also by doing a full-text search) I did not find one that mentions get_request_settings_class. Could you link the mentioned example for future reference?
If implementing get_request_settings_class is now required, should it be part of the TextCompletionClientBase abstract base class to indicate that this implementation is required?

This sample uses it directly: https://github.com/microsoft/semantic-kernel/blob/de9b8d87040febb45bcd445cbcee03fde2e4df37/python/samples/kernel-syntax-examples/azure_chat_gpt_api.py#L42 and it is part of the AIServiceClientBase class (https://github.com/microsoft/semantic-kernel/blob/main/python/semantic_kernel/connectors/ai/ai_service_client_base.py), which underpins all service types, the TextCompletionClientBase acts more like a mixin, thanks for raising this, I will have a look to see how we can clarify the setup, naming and documentation for this! The AIServiceClientBase also has a field for the ai_model_id which will become more important as we start adding pieces service selector methods, which will use/expect that field to be present.


fetch the pod name via label due to upgrade issue

https://github.com/open-cluster-management/backlog/issues/14139
Signed-off-by: Song Song Li<EMAIL_ADDRESS>

let me fork repo and resubmit the PR.


Allow to programmaticallly use the compiler

It seems that currently kestrel can only be compiled from CLI.
It would be better to also expose a JS api.
Example
import { compile } from 'kestrel-lang';

const kestrelJsonConfig = {};

const compilationOutcome = await compile(kestrelJsonConfig);

Those APIs are actually available already!
However

Those are highly unstable, as the prototype is in a very early phase
I'll probably need to setup the repo in a way that pure APIs are split from APIs that do side effects - e.g. files manipulations or lsp server. This way it will be possible to use the api's in the browser, e.g. for online playgrounds


Better Integration with camel

As a user of the extension  io.quarkiverse:quarkus-artemis-jms who also uses camel
when I define ConnectionFactorys via a configuration file (application.properties/application.yml)
then I want that that those ConnectionFactorys are automatically registered in the camel context, so that I can use them via their name, e.g.:
from(jms("queue:in").connectionFactory("<default>"))
    .to(jms("queue:out").connectionFactory("named"));

As a user of the extension  io.quarkiverse:quarkus-artemis-jms who also uses camel
when I define ConnectionFactorys as beans in my application that have an @io.smallrye.common.annotation.Identifier("...")
then I want that that those ConnectionFactorys are automatically registered in the camel context, so that I can use them via their name, e.g.:
from(jms("queue:in").connectionFactory("named"))
    .to(jms("queue:out").connectionFactory("externally-defined"));

As a user of the extension  io.quarkiverse:quarkus-artemis-jms who also uses camel
when I use only one ConnectionFactory (either through configuration or externally defined)
then I want that this connection factory is registered automatically, and I do not have to set it explicitly, e.g.:
from(jms("queue:in"))
    .to(jms("queue:out"));

Thanks @turing85 and I think the case 1 and case 3 should be supported in camel-quarkus-jms already. It could register all the beans from quarku-arc container automatically. In case 2, if  @Identifier is recognized as bean, it should be good too. So I wonder if all the integration tests with camel-quarkus-jms could be moved to camel-quarkus/integration-tests/jms-artemis-client to see if they pass.

For more details on case 1 and 3, see this, this and this comment.
Short summary: as of now, all parts implemented in this enhancement are needed; none of them are automated by camel.

Hi @turing85
I think this could be similar with https://github.com/apache/camel-quarkus/issues/4063. We add the @Identifier Qualifier, and it makes looking for  ConnectionFactory bean failing.  So I think we have to register a CamelBeanQualifierResolverBuildItem such like https://github.com/apache/camel-quarkus/blob/main/extensions-support/jdbc/deployment/src/main/java/org/apache/camel/quarkus/support/jdbc/deployment/JdbcSupportProcessor.java#L37
I will figure it out.

Well, the root cause is that we was missing configurator.name(name); in ArtemisJmsProcessor.java. After adding it, all the camel-jms tests should work.

@turing85 Please check https://github.com/quarkiverse/quarkus-artemis/pull/125

And for case 2 it also need @Named("externally-defined") to make the ConnectionFactory to be looked up for camel-quarkus registry.


feat: allow configuring stream limits

The registrar defaults to only allowing 1x inbound and 1x outbound stream per protocol so allow configuring more than that.
I've plucked some defaults out of the air, these will need tuning to make sure they're not too restrictive or permissive.

Isn't the max incoming/outgoing streams per-connection? So you'd only need 1 in both direction?

probably need to change the comments here: https://github.com/libp2p/js-libp2p-interfaces/blob/master/packages/interface-registrar/src/index.ts#L15
I've been so confused by the errors I'm seeing running lodestar. Definitely related to this.

I think the incoming and outgoing limits should be the same no?
We're doing some funky thing where we open two streams (one inbound, one outbound) per peer, and we read on one and write to the other. I can't find anything in the spec that suggests that this is necessary though...
Since streams are duplexes, we should be able to handle both inbound and outbound traffic on one?

Since streams are duplexes, we should be able to handle both inbound and outbound traffic on one?

Yes, one stream should suffice.

I think the incoming and outgoing limits should be the same no?

I'm not sure - my thinking was you wouldn't want a remote peer to connect to you then open a ton of streams and potentially fill up the incoming message buffer for each one, but you might want to open a ton of streams to a remote peer which is why I set it to be asymmetric.

Isn't the max incoming/outgoing streams per-connection? So you'd only need 1 in both direction?

They are per-connection limits, yes but an application might have some weird requirement that needs multiple simultaneous streams?  I was definitely seeing IPFS test failures around IPNS over pubsub that were failing until I exposed the stream limits locally and upped the values.

probably need to change the comments here

If they are confusing people then yes, most likely.

I think these defaults are too permissive. Gossipsub is a little different than many other protocols in that streams between peers are long-lived, and you only really need a single one. I'm not even sure what it means to have multiple gossipsub inbound or outbound streams for a single peer. (would published messages be pushed out to all streams? only the most recent?)
Current behavior is we only currently 'track' two steams per peer (one inbound, one outbound).
If more inbound streams are created, they will overwrite the prior inbound stream:
https://github.com/ChainSafe/js-libp2p-gossipsub/blob/master/src/index.ts#L609 and
https://github.com/libp2p/js-libp2p-pubsub/blob/master/src/peer-streams.ts#L87

https://github.com/libp2p/js-libp2p/pull/1301 increases the default stream limits so we can go with these for now, we can always tune further at a later date.
Talking to some of the libp2p folk, single, full-duplex or long-lived half-duplex gossipsub streams remove a bit of flexibility around things like low-power devices which may not be able to hold a connection open forever and may just want to periodically connect to send a message so I guess we should handle multiple incoming streams, also ones that only exist for the duration of one message, etc.

Codecov Report

Merging #293 (ef0e1a3) into master (8486c39) will increase coverage by 1.06%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #293      +/-   ##
==========================================
+ Coverage   80.47%   81.53%   +1.06%
==========================================
  Files          42       43       +1
  Lines        9104     9501     +397
  Branches      826      918      +92
==========================================
+ Hits         7326     7747     +421
+ Misses       1778     1754      -24

Impacted Files
Coverage Δ

src/index.ts
70.79% <100.00%> (+1.34%)
:arrow_up:

test/gossip.spec.ts
95.53% <100.00%> (+0.75%)
:arrow_up:

src/utils/index.ts
100.00% <0.00%> (ø)

src/score/peer-score.ts
87.66% <0.00%> (ø)

src/utils/has-gossip-protocol.ts

src/stream.ts
100.00% <0.00%> (ø)

test/signature-policy.spec.ts
99.06% <0.00%> (ø)

test/utils/create-pubsub.ts
78.18% <0.00%> (+1.71%)
:arrow_up:

... and 3 more

Continue to review full report at Codecov.

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


Beta - Waypoint: Target the same element with multiple jQuery Selectors

Challenge http://beta.freecodecamp.com/challenges/waypoint-target-the-same-element-with-multiple-jquery-selectors has an issue. Please describe how to reproduce it, and include links to screenshots if possible.
In the description "button-primary" should be replaced with "btn-primary".
Use the addClass() jQuery function to give the element one new class for each selector: "animated", "shake", and "button-primary".
The first three validation also have some text issues (see screenshot):

duplicate of #1529
Happy Coding!

I am having an issue with the #target1 id since the site was updated. It won't let me pass when I write the code as it is above. The requirement "Your #target1 element should have the classes animated‚ shake and btn-primary." goes unchecked. Any ideas?

Same issue. I suspect there might be a problem with the test, have to go back and look though, I just kept moving after the error.

The challenge seems to be contradicting itself. It asks you to add one each class using the different selectors but also asks you to have #target1 id have all 3. Can't seem to get all checkmarks no matter how I go about it.

Try using "button-primary" instead. I read somewhere that the test code was
searching for "button" and not ".btn" Not sure if or when it was fixed.
On Tue, Aug 18, 2015, 11:12 PM Daniel<EMAIL_ADDRESS>wrote:

[image: image]
https://cloud.githubusercontent.com/assets/13267128/9347947/3d05d120-45e5-11e5-865f-9866cd96136f.png
The challenge seems to be contradicting itself. It asks you to add one
each class using the different selectors but also asks you to have #target1
id have all 3. Can't seem to get all checkmarks no matter how I go about it.
—
Reply to this email directly or view it on GitHub
https://github.com/FreeCodeCamp/FreeCodeCamp/issues/1553#issuecomment-132429843
.

I have run into the same problem here.  I would attach a screenshot, but now I can't connect to the site.  I tried the suggestion of using the "button" over "btn" even though it was fixed, and still didn't get my #target1 checked green.  I was going to head to the next lesson, see what code is there, and try and reproduce it back into this lesson.  But I can't connect for whatever reason at the moment.

GOT IT!!! They missed a space between the first two words (animated and shake)  Here is a screen shot. get your check and keep on trucking!!

I think they have corrected the error, I just tried "animatedshake" (with and without the space in between) and it accepted it.

Hi there, I'm having the same issue. I've tried all the above but can't get it..Here is the code:
$("button")addClass("animated shake btn-primary");
$(".btn")addClass("animated shake btn-primary");
$("#target1")addClass("animated shake btn-primary");
I would appreciate any help.

Hello Diane!
I'm not in front of my laptop at the moment, but wanted to quick respond to you with what I found last night.
I skipped to the next lesson to see if the proper code was listed, as that is sometimes the case.  It looked different but I cut and pasted it anyways, but of course didn't work.
I began to play with the #target1 line with those 3 words. I played with spacing, and stumbled upon it. But, in trying to recreated it, it wouldn't work again. I managed to get a screenshot though, and I have it on github and can forward you the link later this morning.
The thing I found was they missed a space between "animated" and "shake", so my #target1 line at the end looked like this
("animatedshake btn-primary")
I hope it works for you, and I will be online later this morning and find the screenshot for you if you would still like it.
Sent from my Samsung Epic™ 4G
Diane Primpas<EMAIL_ADDRESS>wrote:
Hi there, I'm having the same issue. I've tried all the above but can't get it..Here is the code:
$("button")addClass("animated shake btn-primary");
$(".btn")addClass("animated shake btn-primary");
$("#target1")addClass("animated shake btn-primary");
I would appreciate any help.
—
Reply to this email directly or view it on GitHub.

Here is the screen shot.  sorry it took so long.
On Wed, Aug 19, 2015 at 7:11 AM, Diane Primpas<EMAIL_ADDRESS>wrote:

Hi there, I'm having the same issue. I've tried all the above but can't
get it..Here is the code:
$("button")addClass("animated shake btn-primary");
$(".btn")addClass("animated shake btn-primary");
$("#target1")addClass("animated shake btn-primary");
I would appreciate any help.
—
Reply to this email directly or view it on GitHub
https://github.com/FreeCodeCamp/FreeCodeCamp/issues/1553#issuecomment-132566810
.

I am having issues with them test as well.

Try separating your classes for target1 with commas.  This worked for me:
$("#target1").addClass("animated, shake, btn-primary");

here is what worked for me and what didn't work also...

You already target your #target1 by type button and class .btn , you don't have to write all to class of #target1 - just write btn-primary for it but as far as I see you have problems for punctutation. Use " not ' . That will solve your problem. Here is the code;
$("button") .addClass("animated");
$(".btn") .addClass("shake");
$("#target1") .addClass("btn-primary");

Thaks @tolgazafer74
it works

@tolgazafer74 - your suggestion worked for me as well, but it seems utterly inconsistent with the instructions.

worked for me as well.

deeeeeeeeeeeeeeeeeeeaaaaaammmm.


support for dividing table for internal storage

What type of PR is this?
/kind feature

What this PR does / why we need it:
Which issue(s) this PR fixes:
Fixes https://github.com/clusterpedia-io/clusterpedia/issues/601
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

support for dividing table for internal storage

I'll test the results later.

The test results:

Create pediacluster cr:

apiVersion: cluster.clusterpedia.io/v1alpha2
kind: PediaCluster
metadata:
  name: cluster-example
spec:
  apiserver: "https://<IP_ADDRESS>:6443"
  caData:
  tokenData:
  certData:
  keyData:
  syncResources:
    - group: apps
      resources:
        - deployments
    - group: ""
      resources:
        - pods

After runing clustersynchro-manager component and generate these tables in clusterpedia database:

@Iceber The pr basic feature have been completed, can we have reveiw first?

/retest

/retest

here are test results:
apiVersion: cluster.clusterpedia.io/v1alpha2
kind: PediaCluster
metadata:
  name: cluster-example
spec:
  apiserver: "https://<IP_ADDRESS>:6443"
  caData:
  tokenData:
  certData:
  keyData:
  syncResources:
    - group: apps
      resources:
        - deployments
    - group: ""
      resources:
        - pods

[root@master01 ~]# kubectl  get pediacluster
NAME              READY   VERSION   APISERVER
cluster-example   True    v1.29.2   https://<IP_ADDRESS>:6443
[root@master01 ~]#

# DivisionPolicy is "None"

mysql> show tables;
+------------------------+
| Tables_in_clusterpedia |
+------------------------+
| resources              |
+------------------------+
1 row in set (0.01 sec)
mysql>

[root@master01 ~]# kubectl --cluster clusterpedia get deploy -A
NAMESPACE             CLUSTER           NAME                                  READY   UP-TO-DATE   AVAILABLE   AGE
clusterpedia-system   cluster-example   clusterpedia-apiserver                1/1     1            1           3h17m
clusterpedia-system   cluster-example   clusterpedia-clustersynchro-manager   1/1     1            1           3h17m
clusterpedia-system   cluster-example   clusterpedia-controller-manager       1/1     1            1           3h17m
kube-system           cluster-example   cilium-operator                       2/2     2            2           77d
kube-system           cluster-example   coredns                               2/2     2            2           84d
kubeflow              cluster-example   training-operator                     1/1     1            1           24d
volcano-system        cluster-example   volcano-admission                     1/1     1            1           30d
volcano-system        cluster-example   volcano-controllers                   1/1     1            1           30d
volcano-system        cluster-example   volcano-scheduler                     1/1     1            1           30d

[root@master01 ~]# kubectl delete pediacluster cluster-example
pediacluster.cluster.clusterpedia.io "cluster-example" deleted

[root@master01 ~]# kubectl --cluster clusterpedia get deploy -A
Error from server (NotFound): Unable to list "apps/v1, Resource=deployments": the server could not find the requested resource (get deployments.apps)

# DivisionPolicy is "GVR"

mysql> show tables;
+------------------------+
| Tables_in_clusterpedia |
+------------------------+
| apps_v1_deployments    |
| v1_pods                |
+------------------------+
2 rows in set (0.00 sec)

mysql>

[root@master01 clusterpedia]# kubectl --cluster clusterpedia get deploy -A
NAMESPACE             CLUSTER           NAME                                  READY   UP-TO-DATE   AVAILABLE   AGE
clusterpedia-system   cluster-example   clusterpedia-apiserver                1/1     1            1           3h57m
clusterpedia-system   cluster-example   clusterpedia-clustersynchro-manager   1/1     1            1           3h57m
clusterpedia-system   cluster-example   clusterpedia-controller-manager       1/1     1            1           3h57m
kube-system           cluster-example   cilium-operator                       2/2     2            2           77d
kube-system           cluster-example   coredns                               2/2     2            2           84d
kubeflow              cluster-example   training-operator                     1/1     1            1           24d
volcano-system        cluster-example   volcano-admission                     1/1     1            1           30d
volcano-system        cluster-example   volcano-controllers                   1/1     1            1           30d
volcano-system        cluster-example   volcano-scheduler                     1/1     1            1           30d

[root@master01 clusterpedia]# kubectl delete pediacluster cluster-example
pediacluster.cluster.clusterpedia.io "cluster-example" deleted

[root@master01 clusterpedia]# kubectl --cluster clusterpedia get deploy -A
Error from server (NotFound): Unable to list "apps/v1, Resource=deployments": the server could not find the requested resource (get deployments.apps)


feat: add changelogs filter

Summary
As the title suggests.
Test result

What does the filter mean in detail?


💭 Aspect Ratio not work as expected?

Question
How can i take photo or record video with square aspect ratio or specfic aspect ratio? I used photoAspectRatio, videoAspectRatio as 1 but not work. Thanks
What I tried
No response
VisionCamera Version
react-native-vision-camera
Additional information

[ ] I am using Expo
[X] I have read the Troubleshooting Guide
[X] I agree to follow this project's Code of Conduct
[X] I searched for similar questions in the issues page as well as in the discussions page and found none.

Read the Formats documentation.


Link to region model

The old model is still listed here
https://github.com/optimistdigital/nova-page-manager/blob/906cc8e8e1b9118f62a420128590094f9c1841dd/src/Nova/Region.php#L18
but you need to use
NovaPageManager::getRegionModel()

Fixed in 3.5.0
Thank you for reporting!


feat: Drill ODBC/JDBC Impersonation feature

SUMMARY
Added Drill ODBC/JDBC Impersonation feature and necessary translations/docs
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TESTING INSTRUCTIONS

Connect Superset to a Drill Cluster via ODBC/JDBC and activate Impersonation via UI.
ADDITIONAL INFORMATION

[x] Has associated issue: #17352
[ ] Required feature flags:
[x] Changes UI
[ ] Includes DB Migration (follow approval process in SIP-59)

[ ] Migration is atomic, supports rollback & is backwards-compatible
[ ] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[x] Introduces new feature or API
[ ] Removes existing feature or API

Thanks for the PR @Z0ltrix ! This LGTM, but you need to address some linting issues (lines too long etc, please check the python-lint check). Ping @cgivre if you have time to also review this as you're most familiar with Drill.

@villebro On it!

Thanks for the PR @Z0ltrix ! This LGTM, but you need to address some linting issues (lines too long etc, please check the python-lint check). Ping @cgivre if you have time to also review this as you're most familiar with Drill.

Hi @villebro ,
code cleanup done... at least pycharm isnt complaining about this part.
Everything else?
Regards,
Christian

There appears to be some unrelated flakiness on CI. Let me look into what's going on..

@Z0ltrix can you rebase the PR? The flaky test has now been addressed, so this should now pass CI.

@Z0ltrix can you rebase the PR? The flaky test has now been addressed, so this should now pass CI.

@villebro merged with current master and added some unittest.

@Z0ltrix there's one remaining linting error that needs to be resolved before we can hit merge

@Z0ltrix there's one remaining linting error that needs to be resolved before we can hit merge

@villebro reformatted with black formatter, hope this helps


Update index.md

Docs Build status updates of commit 14d0a59:
:warning: Validation status: warnings

File
Status
Preview URL
Details

csidevdocs-public/index.md
:warning:Warning
View
Details

csidevdocs-public/index.md

Line 1, Column 1: [Warning: author-missing - See documentation] Missing required attribute: 'author'. Add the current author's GitHub ID.
Line 1, Column 1: [Warning: title-missing - See documentation] Missing required attribute: 'title'. Add a title string to show in search engine results.
Line 1, Column 1: [Warning: ms-author-missing - See documentation] Missing required attribute: 'ms.author'. Add the current author's Microsoft alias.
Line 1, Column 1: [Warning: ms-prod-and-service - See documentation] Only one of the following attributes can exist: 'ms.prod', 'ms.service'. Use ms.prod for on-premise products, or ms.service for cloud services.
Line 1, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Update Belmarsh visit slots and email addresses

@SteveMarshall Let me know if I need to fix something.

@kyliemulholland The error that's occurring is because the unbookable dates differ. That said, I'll rework it because there's a few conflicts with master…

@kyliemulholland Updated and fixed. Wanna try on preprod?


Add VarNode class for lvar, ivar, cvar and gvar node types

Adds node classes for variables, to have symmetry with the assignment nodes. eg. a lvasgn and lvar for the same variable should have the same value for the #name method.

@marcandre CI is failing on https://github.com/rubocop/rubocop/blob/345be1d50c6f44b8ae1a880f490d5faa1f368945/spec/rubocop/cop/metrics/utils/abc_size_calculator_spec.rb#L345-L360
because of
https://github.com/rubocop/rubocop/blob/2fe4b1a6faca23adff13e1bbff6ecf5b66c6447b/lib/rubocop/cop/metrics/utils/repeated_attribute_discount.rb#L129
Now lvar returns a VarNode, but RepeatedAttributeDiscount uses s(:lvar, ...) which returns a Node, and then it's not considered correctly.
Any ideas?

Any ideas?

Sorry, that's my code 😅 .
It could be adapted so that it creates the right type of node, base on the existence of VarNode or not...?

Is there a way we can update s to return the right class instead of Node for all node types? That probably would be the "best" solution IMO.

It could be adapted so that it creates the right type of node, base on the existence of VarNode or not...?

Do you mean something like:
if defined?(RuboCop::AST::VarNode) ? RuboCop::AST::VarNode.new(...) : s(...)

Or change the test to compare [type, name] instead of the nodes directly.
I don't think we can do this because I think the issue is this fetch: https://github.com/rubocop/rubocop/blob/2fe4b1a6faca23adff13e1bbff6ecf5b66c6447b/lib/rubocop/cop/metrics/utils/repeated_attribute_discount.rb#L114

I've had a little trouble tracing what's happening in that class though so I may be offbase.

@dvandersluis Let me know if you're interested in reviving this PR, so we can drive it to the finish line.

So it looks like in the interim since this was last touched, the s() method was updated to return a specific node type instead of the generic Node, which fixes the issues I described above.
@marcandre @bbatsov if you're able please take a look 🙌

Let me know if you need a release quickly for this, otherwise this will be released soonish

No rush on my end!


please add @tks.he.lo-net2.de

Could you please add<EMAIL_ADDRESS>to your project? Thanks a lot!
The name of my school is 'Theo-Koch-Schule Grünberg' from Germany.

Looks like you opened this pull request by mistake ;)


support minikube v0.10.0 + use kubernetes cluster config to work out if we're running against mini* + various improvements

[merge]


fix(demos): Close drawer when route change for small screen devices

Fixes #1639.

@rubenochiavone Thanks again! 💎


[MetricsAdvisor] Add validation for updating DataFeed.Administrators

Possibly depends on: https://github.com/Azure/azure-sdk-for-net/issues/17765
No new tests need to be added, but the set up and validation in the DataFeedLiveTests.UpdateWithEveryMember can be improved.
The setup is expected to happen in the helper method SetOptionalMembers, while the validation happens in ValidateUpdatedDataFeedWithOptionalMembersSet, as we do to other properties.

Hi, I am interested in contributing this issue.
I cannot find TODO: add administrator update validation in Azure.AI.MetricsAdvisor solution.
I found similar existing tests in DataFeedLiveTests. (Update...DataFeedWithEveryMemberAnd...)
https://github.com/Azure/azure-sdk-for-net/blob/a4f6ce0975f8e8c467b1521f5a39fdcfcfec56c8/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/tests/MetricsAdvisorAdministrationClient/DataFeedLiveTests.cs#L781-L801
Is this test case a good starting point to contribute this issue?

Hello @ibocon, and thank you for showing interest in contributing!
You're right. We changed these tests a lot after I created this issue, so the TODO comment was lost at some point.
The tests you mentioned were recently merged into a single UpdateWithEveryMember test, where we expect to validate the DataFeed.Administrators property:
https://github.com/Azure/azure-sdk-for-net/blob/dc6d5577ec3b6cb2fd97c5316d9b21c73a0e1922/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/tests/MetricsAdvisorAdministrationClient/DataFeedLiveTests.cs#L367-L392
I'll update the issue description accordingly.
Also, I mentioned this issue may depend on https://github.com/Azure/azure-sdk-for-net/issues/17765, but as long as we don't trigger the bug in our tests, it won't be blocking.
I'll assign this issue to you. Let me know if you have any questions!

@kinelski I have a question.
According to comments on SetOptionalMembers and ValidateUpdatedDataFeedWithOptionalMembersSet in DataFeedLiveTests.cs and the issue description you recently updated, What I need to do is to check dataFeed.Administrators is not changed or changed correctly after call adminClient.UpdateDataFeedAsync(dataFeedToUpdate). Do I understand correctly what is expected be solved?
https://github.com/Azure/azure-sdk-for-net/blob/dc6d5577ec3b6cb2fd97c5316d9b21c73a0e1922/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/tests/MetricsAdvisorAdministrationClient/DataFeedLiveTests.cs#L970-L978
https://github.com/Azure/azure-sdk-for-net/blob/dc6d5577ec3b6cb2fd97c5316d9b21c73a0e1922/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/tests/MetricsAdvisorAdministrationClient/DataFeedLiveTests.cs#L1135-L1138
If I understand it right way, I can see code that solving issue in ValidateUpdateedDataFeedWithOptionalMembersSet method.
https://github.com/Azure/azure-sdk-for-net/blob/dc6d5577ec3b6cb2fd97c5316d9b21c73a0e1922/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/tests/MetricsAdvisorAdministrationClient/DataFeedLiveTests.cs#L1140-L1147
So, I read DataFeed.Administrators document to search other things to validate.

If MetricsAdvisorKeyCredential authentication will be used, the string must be the user's email address. If AAD authentication will be used instead, the string must uniquely identify the user's principal. For instance, for a ClientSecretCredential, the string must be the client ID.

I can see current test code does not validate client ID, but I can not sure it is worth to test.
Or should I do prepare live test, even if it will be failed by #17765?


Updated API schema, SDK endpoint now uses feathersjs

Implementing multiple tasks/features in a single commit 🥇

Updated the API schema. You now need HasId<...> wrapped around your object if you know it's going to have an ID. Also made the /generatesdk endpoint a REST compliant end point. Also improved BuildStatusChip's performance slightly (was originally creating a totally new Styled component whenever it was rendered); because of this, I also swapped out mui-next's withStyles method for the react-jss equivalent (they're inter-operable, to knowledge, and I needed to pass props into different style classes.
Oh and I changed model/Specification to model/Spec cause it's getting too tiring to type out all the time.

@hferrier
I'm willing to resolve all the merge conflicts :P


Fix block synchronization issue in IBFT

Description
Relevant issues: https://github.com/0xPolygon/polygon-sdk/issues/162
This PR fixes that node cannot sync block with peer sometimes. It happens that node cannot join IBFT network.
The fixes consist of following bug fixes:
(1) Syncer doesn't have peer list
In IBFT initialization calles syncer.start() after setupSnapshot() is done. syncer.start() start loop to subscribe to connection event to know peer. But syncer.start() won't get connection events if setupSnapshot() takes much time to finish because establishing connections is done before syncer.start() is called.
This PR fixes order or calls.
(2) peer's number is not correct
IBFT can know peer's latest block number when it calles BestPeer() in syncer. But this number is zero until syncer receives block from the peer. For that reason, IBFT cannot sync block until some peers send latest block to the node. But syncer can know peer's latest block number on handshaking. So this PR lets syncer initialize peer's number when it adds peer.
(3) Close gRPC stream
Node broadcasts to even closed peers and shows error log. This PR lets syncer delete closed peer from peer list after disconnected.
Changes include

[x] Bugfix (non-breaking change that solves an issue)
[ ] New feature (non-breaking change that adds functionality)
[ ] Breaking change (change that is not backwards-compatible and/or changes current functionality)

Breaking changes
Please complete this section if any breaking changes have been made, otherwise delete it
Checklist

[x] I have assigned this PR to myself
[x] I have added at least 1 reviewer
[x] I have tested this code
[ ] I have updated the README and other relevant documents (guides...)
[ ] I have added sufficient documentation both in code, as well as in the READMEs

Additional comments
Please post additional comments in this section if you have them, otherwise delete it

@Kourin1996 what is the point of the two statuses here?
This status contains a hash and number
https://github.com/0xPolygon/polygon-sdk/blob/develop/protocol/syncer.go#L29
But there is also a number and hash with a comment of "current status" right under it.
What is the difference?

Hi, @mrwillis. Thank you for your question. I investigated current implementation and I fixed following points:
(1) Remove hash and number from syncPeer and use status.Number always.
(2) syncPeer's Status is not updated when syncer receives update message from peer. So let syncer update status in this case.


Section <IP_ADDRESS> - Garbage Time Metrics

Currently listed as over 95% or under .05%.
Obviously, .05% is a typo.
Author Note: I kind of want to run a garbage time filter with .05 just to see how hilariously skewed the results are.

Completed in page proofs.


"window is not defined" error when using server-side rendering

When trying to load the module through webpack I'm getting a reference error that it can't find the window object:
/myApp/node_modules/hellosign-embedded/umd/embedded.development.js:10
})(window, function() {
   ^

ReferenceError: window is not defined
    at Object.<anonymous> (/myApp/node_modules/hellosign-embedded/umd/webpack:/HelloSign/webpack/universalModuleDefinition:10:2)
    at Module._compile (internal/modules/cjs/loader.js:688:30)
    at Module._extensions..js (internal/modules/cjs/loader.js:699:10)
    at Object.require.extensions.(anonymous function) [as .js] (/myApp/node_modules/babel-register/lib/node.js:152:7)
    at Module.load (internal/modules/cjs/loader.js:598:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
    at Function.Module._load (internal/modules/cjs/loader.js:529:3)
    at Module.require (internal/modules/cjs/loader.js:636:17)
    at require (internal/modules/cjs/helpers.js:20:18)
    at Object.<anonymous> (/myApp/node_modules/hellosign-embedded/index.js:1:

My versions of webpack dependencies:
"copy-webpack-plugin": "^4.0.0",
"html-webpack-plugin": "^3.2.0",
"webpack": "^2.2.0",
"webpack-dev-middleware": "^1.9.0",
"webpack-hot-middleware": "^2.15.0",
"webpack-isomorphic-tools": "^3.0.0",

Hmm I'm now realizing that because I have a webpack setup that uses SSR during development and to facilitate a dist build that it fails when it attempts to access the window object while going through the SSR configuration. Looks like you guys haven't enabled the library to worth with SSR yet.

I'll take a look at this -- thanks for reporting.

Give hellosign-embedded@next a shot. If that works for you'll I'll release to latest :)

Nope looks like the same thing:
myApp/node_modules/hellosign-embedded/umd/embedded.development.js:6281
        return window && document && document.all && !window.atob;
        ^

ReferenceError: window is not defined
    at myApp/node_modules/hellosign-embedded/umd/webpack:/HelloSign/node_modules/style-loader/lib/addStyles.js:23:1
    at myApp/node_modules/hellosign-embedded/umd/webpack:/HelloSign/node_modules/style-loader/lib/addStyles.js:12:1
    at ./node_modules/style-loader/lib/addStyles.js.module.exports (myApp/node_modules/hellosign-embedded/umd/webpack:/HelloSign/node_modules/style-loader/lib/addStyles.js:80:1)
    at Object../src/sass/embedded.scss (myApp/node_modules/hellosign-embedded/umd/webpack:/HelloSign/src/sass/embedded.scss?98d9:16:73)
    at __webpack_require__ (myApp/node_modules/hellosign-embedded/umd/webpack:/HelloSign/webpack/bootstrap:19:1)
    at Object.0 (myApp/node_modules/hellosign-embedded/umd/embedded.development.js:9393:1)
    at __webpack_require__ (myApp/node_modules/hellosign-embedded/umd/webpack:/HelloSign/webpack/bootstrap:19:1)
    at ./node_modules/common-tags/es/TemplateTag/TemplateTag.js.Object.defineProperty.value (myApp/node_modules/hellosign-embedded/umd/webpack:/HelloSign/webpack/bootstrap:83:1)
    at myApp/node_modules/hellosign-embedded/umd/embedded.development.js:97:10
    at webpackUniversalModuleDefinition (myApp/node_modules/hellosign-embedded/umd/webpack:/HelloSign/webpack/universalModuleDefinition:3:1)

I have webpack 2 not webpack 4 which is what is capable of utilizing the globalObject property of the webpack config that you added. I would love to switch to webpack 4 but could take a while based on how complicated our setup is. I think it might have to use the concept of the target being pointed to node or something like that. I found this that kinda talks about it:
http://blog.jakoblind.no/ssr-webpack-bundle/

Appears to be a slightly different issue, but still related (using window within a node environment).
Unfortunately, I don't have any SSR environments to try to troubleshoot this with. Would you be able to clone this repo and try to fix it locally? If you can resolve it, please submit a PR with your solution :)
When you clone the repo, cd into the project folder and run npm link. This will create a global hellosign-embedded module that you can require in your project if you uninstall the local module. Alternatively, you can install HelloSign Embedded from a file path. If you make changes to the source code, be sure to npm run build or have npm run build -- --watch running at all times. If you makes changes to webpack you'll need to re-run the build script.

Appears to be a slightly different issue, but still related (using window within a node environment).
Unfortunately, I don't have any SSR environments to try to troubleshoot this with. Would you be able to clone this repo and try to fix it locally? If you can resolve it, please submit a PR with your solution :)
When you clone the repo, cd into the project folder and run npm link. This will create a global hellosign-embedded module that you can require in your project if you uninstall the local module. Alternatively, you can install HelloSign Embedded from a file path. If you make changes to the source code, be sure to npm run build or have npm run build -- --watch running at all times. If you makes changes to webpack you'll need to re-run the build script.

Actually, you might try adding this to your app's codebase somewhere:
https://github.com/reactjs/react-chartjs/issues/57#issuecomment-271106746

Hmm I just tried this and it got me past that initial problem of window not being defined, but then it just failed on document not being defined. So I went down a little rabbit hole trying to see how much I would need to stub out in order to get past all the undefined browser properties and it is really starting to turn into a mess to get it all stubbed out and it's still not getting past it all.
I found the jsdom-global package that people have used to make testing in node get past all these browser properties, and that wasn't enough so I found someone else who suggested stubbing out even more. So I'll keep trying a little longer but so far this is how much I've added to get past undefined properties that are being used in the hellosign-embedded library:
require('jsdom-global')();
const jsdom = require('jsdom');

const { JSDOM } = jsdom;
const DOM = new JSDOM('<!doctype html>');
const { window } = DOM;

window.Object = Object;
window.Math = Math;

global.window = window;
global.document = window.document;
global.navigator = {
  userAgent: 'node.js',
};

function copyProps(src, target) {
  const props = Object.getOwnPropertyNames(src)
    .filter(prop => typeof target[prop] === 'undefined')
    .map(prop => Object.getOwnPropertyDescriptor(src, prop));
  Object.defineProperties(target, props);
}
copyProps(window, global);

Hey @grimunit, just wanted to check in.
Are you up and running? If so what have you done to solve your problem? Or are you still blocked?

Unfortunately I had to get prioritized on to other things. Right now I'm just using the older CDN version for my react app because that's currently working. And then for the other bundle that's just meant for processing the signature requests in the native app I'm using the newer npm imported version since that isn't server-rendered at all.

We are having the same issue with hellosign-embedded where it is not working when using server-side rendering:
ReferenceError: window is not defined
    at Object.<anonymous> (/myApp/node_modules/hellosign-embedded/umd/webpack:/HelloSign/webpack/universalModuleDefinition:10:2)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Module.require (internal/modules/cjs/loader.js:692:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.<anonymous> (/myApp/node_modules/hellosign-embedded/index.js:1:18)
    at Module._compile (internal/modules/cjs/loader.js:778:30)

If your library import looks like this
const Library from require('library-package');
do
const isBrowser = typeof window !== 'undefined';
const Library = isBrowser ? require('library-package'): undefined;
If the import looks like this
const { Library } from require('library-package');
do
const isBrowser = typeof window !== 'undefined';
const Library = isBrowser ? require('library-package').Library: undefined;
This solved "window is not defined" problem for me. Hope this is helpful.

This should now be fixed in<EMAIL_ADDRESS>Thanks for your patience!

@nathanbuchar this doesn't work for me in v2.7.2

I started using a dynamic import to make this work with Next.js. I also haven't tried v2.7.2 yet so perhaps that will allow me to eliminate some of this.
pages/index.js
const HelloSign = dynamic(() => import('../components/HelloSign').then(mod => mod.HelloSignNoSSR), {
  loading: () => <Bar />,
  ssr: false,
})

// use <HelloSign /> component

components/HelloSign.js
import Hellosign from 'hellosign-embedded'

export const HelloSignNoSSR = props => {
  const client = new HelloSign({ clientId: process.env.HS_CLIENT_ID })
  const options = {
    testMode: DEV && true,
    skipDomainVerification: DEV && true,
    container: props.container.current,
    allowCancel: true,
    ...(props.redirectUrl) && { redirectTo: props.redirectUrl },
  }
  client.open(props.signatureUrl, options)
  client.on('sign', () => {
    client.close()
    return props.onSigned()
  })
  client.on('message', data => {
    return props.onMessage(data)
  })
  return <></>
}

And you can also load HelloSign client after component mounted componentDidMount or useEffect if you're using hooks this way:
import('hellosign-embedded').then((module) => {
  helloSignClient = new module.default({
    clientId: clientId
  })
  helloSignClient.open(appUrl, {
    container: document.getElementById('hellosign-document-container'),
    height: 800,
    skipDomainVerification: true,
    ...
  })
})

so this way hellosign-embedded package will have access to window object.

Actually, you might try adding this to your app's codebase somewhere:
if (typeof window === 'undefined') {
  global.window = {}
}

Via reactjs/react-chartjs#57 (comment)

It worked and saved my day.

if (typeof window === 'undefined') {
global.window = {}
}
On Which File you Add this Code?

if (typeof window === 'undefined') {
global.window = {}
}
On Which File you Add this Code?

You have to use in startup file.
Mostly index.js file.

Are there any proper solutions to this? This error still persists even in 2.9 version.


dpi problems full screen -> minimize -> restore

Hello,
I am using Windows 10 with 250 DPI (4k display). I am connecting to another computer via this command line
wfreerdp.exe /v:xxxx:3390 /f /u:xxxx /p:xxx /clipboard /gdi:hw -themes +compression /bpp:8 /codec-cache:jpeg
this starts FreeRDP in full screen mode and everything is perfect - without scroolbars.
Then we click on "Minimize" button on green Freerdp titlebar-toolbar and Freerdp minimizes.
Again we want to get back to FreeRdp - we click on FreeRDP icon on windows taskbar and it returns to RDC in fullscreen but with scroolbars. Becausde of scrollbars everything is much slower and we cannot access windows taskbar on RDC easily.
So first goint into fullscreen works fine but after minimize - return there are scroll bars!

Any help how we can resolve this or any idea where is the bug?
Attached is video of reproducing the issue.
Ashampoo_Snap_2017.08.07_09h41m18s_001_.zip

@ivancx you should have a look at https://github.com/FreeRDP/FreeRDP/wiki/BugReporting so that we have enough information

I reported all information needed about the bug.
Operating system, latest wfreerdp.exe availble (August 3rd 2017), command line, reproducing steps, and video what happends.
The bug is that after minimize -> restore, wfreerdp window get scroolbars which they should be there.


Resolve suggestions

This includes a handful of changes to align with recommendations from the dask teams, a fix for a bug in the AzureDatalakeFilesystem class caused by not accepting **kwargs in the _open method, and pins fsspec requirement to <0.6.0, to maintain compatibility.

What is the bug with fsspec 0.6.0?
On November 13, 2019 10:48:35 PM EST, Greg Hayes<EMAIL_ADDRESS>wrote:

This includes a handful of changes to align with recommendations from
the dask teams, a fix for a bug in the AzureDatalakeFilesystem class
caused by not accepting **kwargs in the _open method, and pins fsspec
requirement to <0.6.0, to maintain compatibility.
You can view, comment on, or merge this pull request online at:
https://github.com/hayesgb/adlfs/pull/17
-- Commit Summary --

Removed filesystem-spec submodule
Ran black over core.py, setup.py, and tests.py
Moved documentation in both the filesystem classes for adherence to
style guides
Added protocol='adl' to AzureDatalakeFilesystem class
Added continuation lines and formating to docs
Added **kwargs to ADLFS _open
Added **kwarg arguments to inherited methods and pinned fsspec
<0.6.0 as fix to bug reading on Datalake Gen1

-- File Changes --
M .gitmodules (3)
M adlfs/core.py (343)
M setup.py (35)
-- Patch Links --
https://github.com/hayesgb/adlfs/pull/17.patch
https://github.com/hayesgb/adlfs/pull/17.diff
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/hayesgb/adlfs/pull/17

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.

More of a comment about compatibility.  The self.reduce method in spec.py == 0.6.0 expects to get self.storage_args.  This doesn’t exist in 0.5.2, which is what I have been using for adlfs.  For now I’ve pinned adlfs to use fssepc<0.6.0.

On Nov 13, 2019, at 9:52 PM, Martin Durant<EMAIL_ADDRESS>wrote:
What is the bug with fsspec 0.6.0?
On November 13, 2019 10:48:35 PM EST, Greg Hayes<EMAIL_ADDRESS>wrote:

This includes a handful of changes to align with recommendations from
the dask teams, a fix for a bug in the AzureDatalakeFilesystem class
caused by not accepting **kwargs in the _open method, and pins fsspec
requirement to <0.6.0, to maintain compatibility.
You can view, comment on, or merge this pull request online at:
https://github.com/hayesgb/adlfs/pull/17
-- Commit Summary --

Removed filesystem-spec submodule
Ran black over core.py, setup.py, and tests.py
Moved documentation in both the filesystem classes for adherence to
style guides
Added protocol='adl' to AzureDatalakeFilesystem class
Added continuation lines and formating to docs
Added **kwargs to ADLFS _open
Added **kwarg arguments to inherited methods and pinned fsspec
<0.6.0 as fix to bug reading on Datalake Gen1

-- File Changes --
M .gitmodules (3)
M adlfs/core.py (343)
M setup.py (35)
-- Patch Links --
https://github.com/hayesgb/adlfs/pull/17.patch
https://github.com/hayesgb/adlfs/pull/17.diff
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/hayesgb/adlfs/pull/17

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub https://github.com/hayesgb/adlfs/pull/17?email_source=notifications&email_token=ADADBNRTPIIBFTGUWYN3OP3QTTDRNA5CNFSM4JNFHVMKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEEAPZ7I#issuecomment-553712893, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADADBNQXL5XF3XK7QU7VOJ3QTTDRNANCNFSM4JNFHVMA.

If you derive from AbstractFileSystem, then you will have self.storage_args automatically set up for you in the metaclass, you should not need to do anything.


BUG: Mac Ledger Index1+ broken

ASGARDEX: V0.12.2
LedgerLive: v2.39.2
Firmware: 2.1.0
THORChain App: 2.0.2 (expert mode disabled)
MacOS: Monterey v12.3.1 (Apple M1)
Index0 works for both Send and Deposit.
Index1+ broken with timeout error.

Worked by another check - seems to be a node (rpc) timeout before.


Router and application tagging

We're considering running a Deis cluster to host a bunch of services in geographically-separated regions.  This is mostly for data-location-compliance, but also plays a major role in application speed.
While the tags will allow us to schedule apps onto specific hosts (grouped by region), everything still travels through the same router, which negates the speed and bring the compliance into question.
Would it be possible to run multiple routers with tags, which can then only route apps with the appropriate tags?
For instance:
www.example.com -> uk.deis.example.com -> UK router -> UK hosts, and
www.example.net -> us.deis.example.com -> US router -> US hosts
The alternative seems to be running multiple clusters, but then we're looking at 4x everything and additional client-side complexity.  Ideally an app-level config should set the region and everything flows from there.
(For clarity: IP-level restrictions wouldn't help here -- all apps are still publicly accessible, but we wouldn't pass data through a region unless the user or host is actually there.)

Ok.  This is an advanced question!
It sounds like what you're asking for is predicated on the notion of running a deis cluster that spans multiple regions.  My initial reaction was that the higher latency between nodes in two different regions is likely to cause some grief with etcd and result in an unstable cluster, but it looks like you can work around this by following some of the advice here:
https://coreos.com/etcd/docs/latest/tuning.html
You'd also have to peer the networks in the two regions so nodes can still communicate with one another using private IPs.  I you were using Amazon and VPCs, for example, this documentation would be a good starting point:
http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-peering.html
As long as you have those concerns addressed first, here's how I would proceed from there:
In each of your two regions, tag a small, fixed number of nodes appropriately such that they are eligible to host deis-router-- let's say three per region, for instance.  That gives you a total of six machines that could host a router.  Scale your routers up to six and you'll be guaranteed three running in each region since no machine that can host a router will host more than one.
From there you can use DNS to simply route traffic for the two region-specific domains to a load balancer that's in front of the three routers in one region or the load balancer that's in front of the other three routers in the other region.
All that being said.  I wouldn't necessarily recommend this.

The alternative seems to be running multiple clusters, but then we're looking at 4x everything and additional client-side complexity.

I'm not sure where the 4x comes from.  Regardless of whether you run one cluster that spans two regions or just run two clusters, you'd end up needing a certain amount of capacity in each region and you'd incur the associated costs.  I don't see any specific cost savings by having it be one cluster.  Again, if using AWS, for example, you'd also incur additional charges for the VPC peering.
One definite disadvantage of the architecture you're shooting for is that you'd have one giant cluster that would take your operations down in two geographic regions if it fails, as opposed to having two separate clusters that would fail independently of one another.
Last, but not least, we've never tried this.  I couldn't vouch for how well things like Ceph will work with the additional latency factored in.

Thanks for the detailed answer.  The 4x comes from four regions that we operate in, 3 in AWS and 1 bare metal.
This looks like a fun project, but given your answer I'm inclined to agree that it probably isn't worth the trouble or risk.
My next question would then be how to have the deis client-side tool auto-discover between multiple clusters, but I'll search a bit more first :)

The client requires you to authenticate to the controller, so that limits the client to using one cluster as a time.  To switch, you log out of one and into the next.  That's definitely inconvenient if you want to push the same app to four clusters.  This is not to mention you'd also have to juggle multiple git remotes for the pushes.
What I'd recommend is using some CI server like Jenkins to accomplish that instead.  The deployment workfliw becomes one where you merge into some branch that Jenkins watches to kick off a deploy.  That could optionally trigger a test suite first and then a chain of jobs, where each one deploys the app to a specific region by logging in to the correct cluster and pushing to the correct remote.  You get a lot of other benefits from that workflow as well, including notifications when deployments are triggered, completed, or failed.

The client requires you to authenticate to the controller, so that limits the client to using one cluster as a time. To switch, you log out of one and into the next. That's definitely inconvenient if you want to push the same app to four clusters.

Actually this is no longer true: the deis client now supports multiple profiles and you can switch between them with the DEIS_PROFILE environment variable.

What I'd recommend is using some CI server like Jenkins to accomplish that instead. The deployment workflow becomes one where you merge into some branch that Jenkins watches to kick off a deploy. That could optionally trigger a test suite first and then a chain of jobs, where each one deploys the app to a specific region by logging in to the correct cluster and pushing to the correct remote. You get a lot of other benefits from that workflow as well, including notifications when deployments are triggered, completed, or failed.

I strongly agree with @krancour's suggestion of using a CI server like Jenkins to manage deployment pipelines, but I would further recommend building the docker images on the CI server and using deis pull deployments (until deis push is available), instead of using git push to ensure consistency between clusters.

We're already using Jenkins to manage deploys for our shared systems (specifically for consistency and speed), but not for deploys that are region-specific. Setting the DEIS_PROFILE in a tiny wrapper should be very easy then.
I agree that anything which runs across regions should be as consistent as possible, so extending the Jenkins setup makes sense here.  Could maybe add some tooling to easily create Jenkins jobs for new projects so that everything goes through there.
Thanks.


Complete brief documentation

The following functions are not yet documented:

[ ] type
[ ] push_back
[ ] operator+=
[ ] swap
[ ] find
[ ] count
[ ] dump
[ ] parse
[ ] operator==, operator!=, operator<, operator<=, operator>, operator>=
[ ] std::swap
[ ] std::hash
[ ] operator<<, operator>>
[ ] operator"" _json

Closed this issue: The documentation is no longer maintained in the Wiki, but as Doxygen documentation here: http://nlohmann.github.io/json


SendMail.cs documentation for Password

It's not clear to me why the Send-SPOMail command in SendMail.cs requires a password and what kind of password it should be. There's no PoSh comment to help out on this.

Thanks for reporting this!
The cmdlet indeed can use a bit more explaining. It is actually sending out an email through Office365 SMTP service, so not using SharePoint. This means that it requires a valid outgoing user account (-From) and a password. It also requires a valid Server parameter which is the SMTP host to use. The reason for this cmdlet is that SharePoint online only allows you to mail to users within the environment, e.g. valid SharePoint users, whereas using this cmdlet you can basically send an email to anyone. It does require you to have an O365 mail account though.
It effectively a not really used cmdlet, and it has its flaws. I plan to deprecate it actually, as there are better/more functional ways to send out email through PowerShell.

Thanks for elaborating on this. Its indeed quite confusing in its current shape. Would never have guessed that the above applies to it, so maybe better to remove it indeed :)

Send-SPOMail now supports both sending mail using the Office365 SMTP Service and SharePoint itself. The cmdlet description has been updated to reflect this in PR #424


Retweet will be displayed

Retweet no longer appear in a separate tab as of today.
Could you please check?

Can confirm. Retweets are showing up in the "following" tab.

Twitter deployed a change which broke all timeline functionality, which is being tracked in this issue: 327


Establish PR-handling policies

https://docs.google.com/document/d/1oMJITHK9blV6UzTTgJIu-UnNsP_QfYNP26s9_5ILq3E/edit#

Done.


Unable to use it in VS code Arm 64 PC

Before submitting your bug report

[X] I believe this is a bug. I'll try to join the Continue Discord for questions
[X] I'm not able to find an open issue that reports the same bug
[ ] I've seen the troubleshooting guide on the Continue Docs

Relevant environment info
- OS: Windows 11
- Continue version: 0.8.54 - 2024-10-15
- IDE version: vs code 1.94.2
- Model: surface laptop 7
- config.json:

Description
continue-0.8.54-win32-arm64\out\build\Release\node_sqlite3.node is not a valid Win32 application.
\?\c:\Users\vikra.vscode\extensions\continue.continue-0.8.54-win32-arm64\out\build\Release\node_sqlite3.node
To reproduce
No response
Log output
continue-0.8.54-win32-arm64\out\build\Release\node_sqlite3.node is not a valid Win32 application.
\\?\c:\Users\vikra\.vscode\extensions\continue.continue-0.8.54-win32-arm64\out\build\Release\node_sqlite3.node

@vikrantSinghOnGithub Thanks for the report—I'm going to close this in favor of a pre-existing duplicate, where I'll be giving updates as we work on the solution: https://github.com/continuedev/continue/issues/839


Upgrade MarkLogic Node Client API (from 38)

Problem Description
New version of ML Node Client API is released and we need to upgrade.
From @bh635:
@sk969 and @guoxinji,

I received a notification that MarkLogic Node Client API 3.0.0 was released.  We're presently using v2.8.0 (https://git.yale.edu/lux-its/lux-backend/blob/main/package.json)

Updates include:

-	Addressed “Dicer” and other security vulnerabilities
-	Support for Node 18
-	Support for MarkLogic cloud and basePath URLs
-	New DMSDK features
-	Change in signature for existing DMSDK APIs
-	Support for “unnest” functions

Release notes:

-	Release Notes - https://github.com/marklogic/node-client-api/releases/tag/3.0.0
-	Documentation - https://docs.marklogic.com/guide/node-dev/datamovement#id_61539

cc: @pc754

Blockers

Build fails on Ubuntu containers

To do

[x] Determine current status - what fails on what version(s) of the platform
[x] Send bug report to MarkLogic - N/A anymore
[x] Upgrade - done

The upgrade is done. The latest version of node seems to have fixed the problem.
Propose close.

Closing per UAT


regressions when upgrading Pico PIO USB to 0.5.3

usb3sun d59f48b6d3e4939538a4ba5fd8dfc1c40b121cac
Microsoft Wired Keyboard 600 (045E:0750)

Pico PIO USB

0.5.2 = works
9357706baa587f8b23010e5751cfb77354d4a08e = works
58879cfa0eca5725d8db6443ec17f8896a321042 = Control FAILED
0.5.3 = Control FAILED
successful workaround in picopiousb1.patch.txt

cause seems to be sekigon-gonnoc/Pico-PIO-USB#88

sof_count mask increases from 0x1f (5-bit) to 0x7ff (11-bit)
0x3ff (10-bit) = Control FAILED
0x1ff (9-bit) = works

when upgrading Adafruit TinyUSB Library to 3.1.0 (#13), the failure mode is different, but the same workaround works
[1:1] Class Request: 21 0A 00 00 01 00 00 00
on EP 81 with 0 bytes: FAILED
HID xfer callback
  Get Report callback (1, 0)
[1] Claimed EP 0x81
  Queue EP 81 with 8 bytes ...
OK
on EP 00 with 8 bytes: FAILED
[1:1] Control FAILED, xferred_bytes = 8
21 0A 00 00 01 00 00 00

HID Get Report Descriptor
[1:1] Get Descriptor: 81 06 00 22 01 00 6A 00
on EP 81 with 0 bytes: FAILED
HID xfer callback
  Get Report callback (1, 0)
[1] Claimed EP 0x81
  Queue EP 81 with 8 bytes ...
OK
on EP 00 with 8 bytes: FAILED
[1:1] Control FAILED, xferred_bytes = 8
81 06 00 22 01 00 6A 00

process_set_config 582: ASSERT FAILED
on EP 81 with 0 bytes: FAILED
HID xfer callback
  Get Report callback (1, 0)
[1] Claimed EP 0x81
  Queue EP 81 with 8 bytes ...
OK
on EP 81 with 0 bytes: FAILED
HID xfer callback
  Get Report callback (1, 0)
[1] Claimed EP 0x81
  Queue EP 81 with 8 bytes ...
OK
on EP 81 with 0 bytes: FAILED
HID xfer callback
  Get Report callback (1, 0)
[1] Claimed EP 0x81
  Queue EP 81 with 8 bytes ...
OK
on EP 81 with 0 bytes: FAILED
[...]


Replace the app stanza with a pkg stanza [Closes #15440]

@adityadalal924 I still have to set up an uninstall and a zap stanza.  However, before I update this PR with it can you please point me out how to test the current modifications? Thank you!

You can check your Cask with brew cask audit gateblu.rb --download and rubocop gateblu.rb
You can test if you need the allow_untrusted by removing it and trying to brew cask install gateblu
For adding the uninstall stanza, use the packageID of  com.octoblu.* (and testing by doing brew cask uninstall gateblu)

I'm not sure why an empty app remains on my /Applications directory.

dylson-macosx:homebrew-cask n370$ ./developer/bin/list_pkg_ids_by_regexp 'com.octoblu.*'
No match.
dylson-macosx:homebrew-cask n370$

And I'm not sure if a zap stanza is necessary at all, look.
dylson-macosx:homebrew-cask n370$ sudo find / -type f -iname 'gateblu'
Password:
find: /dev/fd/3: Not a directory
find: /dev/fd/4: Not a directory
/Users/n370/Projects/Forks/homebrew-cask/.git/logs/refs/heads/gateblu
/Users/n370/Projects/Forks/homebrew-cask/.git/logs/refs/remotes/origin/gateblu
/Users/n370/Projects/Forks/homebrew-cask/.git/refs/heads/gateblu
/Users/n370/Projects/Forks/homebrew-cask/.git/refs/remotes/origin/gateblu
dylson-macosx:homebrew-cask n370$

Yep, looks like a zap stanza is not needed (and that's okay).
Add in an :delete => '/Applications/Gateblu.app' to the uninstall stanza to take care of the errant file left over. Also you should add an empty line between stanzas.
See gog-galaxy.rb for an example.

Also, when making the final changes, please squash your commits and amend the commit message to include the name of the updated cask.

Guys let me know if you need me to take any further action.

Thank you for the contribution. It was merged directly as 0fd1d6b775d6f5e7a28d9cb03685d3f2ad945946 to keep commit history cleaner. Your contribution is still credited to you.

Thank you @adityadalal924. I'll look forward to contribute more as long as I can.


Windows Store: list index out of range

Log shows:
09:29:10.884 WARNING: AllMyGames.AllMyGames: [Windows Store] failed to get logo DPI.PerMonitorAware list index out of range

unfortunately, there's not any other details to go on.

This is not an issue you need to worry about. Unfortunately the windows store app listing contains all kinds of things including libraries that got automatically installed. One of those had no logo (probably because it never gets displayed anyway) There doesn't seem to be a good way to filter that and only include applications/games.
Going forward I will ignore items with no icon.


Note has mistake

Type of issue
Missing information
Description
The Note below the escape sequences is wrong:

For example, the verbatim string @"C:\files.txt" will appear in the watch window as "C:\files.txt".

The watch window actually shows "C:\\files.txt" with two backslashes. Shouldn't be putting the newbies wrong :o).
Page URL
https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/strings/
Content source URL
https://github.com/dotnet/docs/blob/main/docs/csharp/programming-guide/strings/index.md
Document Version Independent Id
3317fd4a-9cd3-57cd-66f7-abb271e302e8
Article author
@BillWagner
Metadata

ID: c7aa6134-64e2-28a7-f7d0-d0c1512f4520
Service: dotnet-csharp
Sub-service: fundamentals

Thanks for pointing this out @PlanetEarthSoftware
I've opened a PR to address the issue.


streaming in WebSocket mode

I'd like to use deep-chat with a websocket connection.
However, I'd like the response from the server to be handled similar to streaming data - chunks will be shown on the same bubble.
Currently, as chunks arrive, they are on separate bubbles.
I had configured with this:
request='{"url": "ws://customapi.com", "websocket": true}'
I added stream=true (and even assigned simulation = true and 6 as well)
Is this possible? Or I should use the Handler?
Apologies if this question has been raised already. Unfortunately I couldn't find anything.
Thanks

Hi, this is possible.
If your websocket responses contain full text and you simply want them to be populated as if they are in a stream, all you need to do is use the simulation property inside stream.
However if you have a websocket connection and want individual responses to update a message bubble, please see the following issue which discusses how this can be done using the connection handler function.

Thank you


findfile() returns invalid path

The problem:
:echo findfile('foo', '://')

I would expect this to return an empty string, but it's ://foo instead.
Use case:
I found this when I used netrw to edit a HTTP resource and an autocmd ran on BufRead that tried to source the invalid path returned by findfile().
The code could use filereadable() to check the validity, but I think findfile() should only return valid paths in the first place.

When the file name looks like a URL, then Vim assumes it's remote and it cannot check if it exists.

But is there any use case to ever return an URL? I mean, without prior knowledge, I'd assume a function called findfile() to always return a valid path.
Maybe something like this:
diff --git i/src/misc2.c w/src/misc2.c
index 7014e1648..38b947f46 100644
--- i/src/misc2.c
+++ w/src/misc2.c
@@ -4837 +4837,4 @@ vim_findfile(void *search_ctx_arg)
-                               if (!path_with_url(file_path))
+                               if (path_with_url(file_path)) {
+                                   *file_path = NUL;
+                                   return file_path;
+                               } else

When the file name looks like a URL, then Vim assumes it's remote and it cannot check if it exists.

I'm not sure I understand. Do you mean that Vim somewhere relies on the current behaviour that I want to change? Is anything speaking against the patch?

Marco Hinz wrote:

When the file name looks like a URL, then Vim assumes it's remote
and it cannot check if it exists.

I'm not sure I understand. Do you mean that Vim somewhere relies on
the current behaviour that I want to change? Is anything speaking
against the patch?

The current behavior is that findfile() expands URLs as if they always
exist.  Changing that might cause trouble, it was intentionally made
this way.
--
Mrs Abbott: I'm a paediatrician.
Basil: Feet?
Mrs Abbott: Children.
Sybil: Oh, Basil!
Basil: Well, children have feet, don't they? That's how they move
around, my dear. You must take a look next time, it's most
interesting.                               (Fawlty Towers)
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Okay, I guess the benefit doesn't outweigh the cost in this case. Closing.


Support multi queries in single file

Is it possibile to put multple queries and/ora mutation and fragments in a single file without create one file per query and then replicate fragments?

No answer from dev. Close this issue


Add new en blog post

I translated my blog about the recent user/developer event into English. Could you proofread it for me?

Part 1 Expanding World of CSS Typeetting

"Typeetting" → "Typesetting"

Development of a Japanese typesetting and processing system with powerful graphics capabilities

"Japanese typesetting and processing system" → "Japanese typesetting system"

Saku sharply criticized…. Andreas also introduced his services, …

"also" → ""
（「サクは…を鋭く批判した。アンドレアスも彼のサービスを紹介した」は不自然）

Our next event is scheduled for October. The next event is scheduled for October,

". The next event is scheduled for October" → ""

It looks fine, but given that the English speakers won't be able to understand the videos in Japanese, I think it's extra important to help them with the abbreviations. Here I noticed "SNS" which I would replace with "social media" unless SNS is a specific site (that I don't know about). The other abbreviation is VFM.

Part 1 Expanding World of CSS Typeetting

"Typeetting" → "Typesetting"

Development of a Japanese typesetting and processing system with powerful graphics capabilities

"Japanese typesetting and processing system" → "Japanese typesetting system"

Saku sharply criticized…. Andreas also introduced his services, …

"also" → ""
（「サクは…を鋭く批判した。アンドレアスも彼のサービスを紹介した」は不自然）

Our next event is scheduled for October. The next event is scheduled for October,

". The next event is scheduled for October" → ""

修正しました！

It looks fine, but given that the English speakers won't be able to understand the videos in Japanese, I think it's extra important to help them with the abbreviations. Here I noticed "SNS" which I would replace with "social media" unless SNS is a specific site (that I don't know about). The other abbreviation is VFM.

Corrected according to the revue. Please check.


Return http 500 err when parsing xml fails

upped some versions
changed base image due to urllib3 missing in py3:alpine
http 500 returned from werkzeug through abort() when we fail to parse a strings as xml

@gabriellsesam @JonasAls89


Fail with install_if in Gemfile

From @SuperSandro2000 on March 31, 2018 10:24
Dependabot fails with install_if in your Gemfile.
Example:
install_if -> { RUBY_PLATFORM =~ /mingw32/ } do
  gem 'win32console', '~> 1.3'
end

It would be quite convenient if Dependabot would understand that basic bundler code or just ignore it instead of failing.
Copied from original issue: dependabot/feedback#114

Thanks for the feedback, I’ll take a look.


When using cli, is it possible to specify OpenAI Key through config file instead of environment variables?

When using cli, is it possible to specify OpenAI Key through config file instead of environment variables

great, thanks!