rspec matcher helper for summary lists

Following #6713, this introduces a custom matcher for Summary Lists which does not depend upon the order of the rows.
Also aims to have better error messages to make debugging faster.
Feedback welcome, this is just a quick initial proof-of-concept...

@stevehook @duncanjbrown I've applied this to a few further examples to test the tires a bit. Caught that it wasn't normalising whitespace (no longer the default in Capybara 3+).
Have also added the ViewComponent test helpers, mirroring the setup already on Find. This means that if type: :component you can call render_inline and then have access to rendered_component without having to assign it – see testing ViewComponent (scroll down for the rspec setup).
Suggest we merge this, and then gradually switch tests over on an ad-hoc basis, as doing it all at once will take ages...?


CRUD operation for customer group

Add  form to perform CRUD operation in admin panel

https://github.com/amitsiliguri/ecom/commit/2401e22e4d1624e83897bed806115c93b702a62d


trim_right_matches -> trim_end_matches

relates to https://github.com/Homebrew/homebrew-core/pull/52037
   --> rust/libnewsboat/src/utils.rs:232:12
    |
232 |     rs_str.trim_right_matches(x).to_string()
    |            ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_end_matches`
    |
    = note: `#[warn(deprecated)]` on by default

Coverage remained the same at 54.201% when pulling a82b8d6b247746f6520f82a558819754652fa3f4 on chenrui333:replace-trim_right_matches into 1e87518f2c6cc02fa0a2de42c26815ff343b0d0b on newsboat:master.

Thanks!
FYI, MSRV for master is now 1.40, see #709. I'll update the docs and the CI shortly.

Nice, good to know!!


PhET-iO Testing for the new iframe size feature

From https://github.com/phetsims/studio/issues/167

It would be nice to test this change in isolation before the next RC or Dev test.  To test, try on 2-3 browsers on at least 2 OSes.  I published https://phet-dev.colorado.edu/html/gravity-and-orbits/1.2.0-dev.15/phet-io/ for this test.  Run the Wrapper Index page of a sim and test that "Launch Template" launches a fullscreen iframe without any trouble. Also test that studio => launch launches a fullscreen iframe without any trouble.  Download the HTML and edit it as prescribed in the comments to make it have a fixed size iframe.

I walked through this test with @KatieWoe on one platform, and it looked good.  I think it's sufficient to try 2-3 browsers on at least 2 OSes total.

Chrome on Win 10 looked good.

Looking good on macOS + FF, macOS + Safari, and macOS + Chrome.

That sounds great, and sufficiently tested, thanks!  Closing.


Lockitron Doesn't Work

I have installed homebridge, installed the plug in and I think I've created config file correctly. When I run homebridge in terminal, I get that it's all working and I can see it in my iOS app. However, whenever I trigger lock/unlock/status. It fails for authentication error. What am I missing?  Can someone share their config file?  Am I missing something in the js?  Sorry, totally new to this and I've searched everywhere.
Thanks.

Please move your issue to nfarina/homebridge-lockitron


Adding badges / indicators for Trusted Publishers

Context: the new trusted publishers method rocks, you all rock, and I want as many prominent pypi projects to adopt this as possible.
What's the problem this feature will solve?

Improve discoverability of the Trusted Publishers method
Incentivize projects to migrate to Trusted Publishers
Make it easier for people doing OSS supply chain assessments to see, at a glance, that a project is using Trusted Publishers

Describe the solution you'd like
Now that hydra-zen is using trusted publishers, I want my little pypi badge to display some kind of shield, letting my users know about the enhanced security / advertising to other projects that this is a thing
(gimme a shield with, like, some fierce looking snake on it!)

It would also be nice if hydra-zen's pypi page featured some Trusted Publishers checkmark. Namely, when I am doing a supply chain review, it would be great to see if a project is utilizing this at a glance.
Additional context
Love this new capability! Awesome work!

I think that something similar was proposed by GitHub during the private beta. I think it was mostly concerning the PyPI side badges, not the embedded ones.

Would be nice to have something akin to Mastodon's "verified" checkmarks near the repo link.
That way I can tell at a glance "this is really the project published from that repo".
I guess flagging all other projects linking the same repo would also be nice...

Triaging: this will happen with the completion of #15871 -- when a Trusted Publisher uploads an attestation alongside the normal package upload, we'll mark the project on PyPI's side with a little UI boondoggle.
(I'm not 100% how markdown badges are generated, though, or if PyPI even has any control over those...)

(I'm not 100% how markdown badges are generated, though, or if PyPI even has any control over those...)

We will likely not inject additional badges into a project description, since this is all user-supplied and we have no precedent for modifying it besides rendering it.
I think now that we have a "verified metadata" section, we can elevate the link to the source repository for projects that use trusted publishing for a release instead.
@woodruffw I don't think we need to wait for #15871 to do that though? We can verify the publisher was used without the attestation being present, and I wouldn't want to limit this only to projects that use trusted publishing AND publish attestations.

@woodruffw I don't think we need to wait for #15871 to do that though? We can verify the publisher was used without the attestation being present, and I wouldn't want to limit this only to projects that use trusted publishing AND publish attestations.

Yep -- this was based on an earlier misunderstanding of mine 🙂.
For others' visibility, the current WIP for this does not require #15781: https://github.com/pypi/warehouse/pull/16205


system-wide editable config ?

Hello,
after installation from official Bullseye repo on my Debian installation, I can't find the system-wide config file as the man mention it ?

Neofetch also installs a system-wide editable config file at /etc/neofetch/config.conf (This is where it copies the user config from).

Only two neofetch/config.conf are find on my system, and /etc/neofetch does not exist
root@linology:~# locate neofetch/config.conf
/home/qwrty/.config/neofetch/config.conf
/root/.config/neofetch/config.conf

Any idea ?
Thank you !

The manpage is incorrect as that is (iirc) old behavior. Neofetch's config file is embedded in neofetch's source. You would be correct that there's no system-wide configuration file.

... then how do we set up a default for ALL users?  Why was the default config removed?

So is this being fixed seems like quite a few people want it??

Depending on what your intended use case is, you could put a "global" config in /etc/skel/.config/neofetch/config. This will create a copy of the "global" config file for every new user you create. This allows you to configure the default settings, while allowing the user(s) to extend or modify the file later.

RPi Terminal
whereis neofetch


⚠ API (search) has degraded performance

In c81d938, API (search) (https://api.dev.package-search.services.jetbrains.com/search-packages) experienced degraded performance:

HTTP code: 200
Response time: 2017 ms

Resolved: API (search) performance has improved in dbc9c84 after 18 minutes.


Tracking issue for importing Building dataset: CBECS

Source: https://www.eia.gov/consumption/commercial/
1-Pager: https://docs.google.com/document/d/1yTughxNoqEzHeT7L26lyTI8STb2M3lXDDt6vD0uHcRQ/edit#

Commercial Buildings Energy Consumption Survey (CBECS)  imported.


Feature request.

Hey thanks for creating this… I have a question … do you have any plans for implementing speaker diarization as well.
thank!

Good call! If I can find a plug and play model, then yes

Currently not planned unless someone sends a PR.


refactor: useWindowSize hook to re-render only after resize completion

Changes

Updated useWindowSize hook to prevent component re-renders on every resize event.
Implemented a debounce function for managing the debounce effect.
Configured the debounce duration to 500 milliseconds for useWindowSize hook.

I wonder if we should memoize props.children in RainbowKitProvider (or similar). Any time we re-size the window, switch locale, or throw a modal, I think we might re-render the pass-through children which would an entire DOM tree.
The debounce is okay to optimize the RainbowKit modal re-renders. We do see this ugly flash resizing below, so I think we need to force a min-width to prevent the text resizing. Users traditionally wouldn't see this because the window re-size caught them before the CSS resize

@DanielSinclair I like this idea. Do you think it'll be worth maybe memoizing our own components like <ModalProvider />, <WalletButtonProvider /> and etc instead of props.children ?
I think if we do it with props.children it might include a lot of memory usage since there might be huge apps built on top of us which can include heavy logic.
I'll take a look and plan out more how to improve the performance with memoizing, but if we can get at least the window resizing to not re-render many times at once then it'll be a small performance boost + we can test and plan the whole performance boost in another PR 🙌


ouroboros: init at 0.19.3

Description of changes

Ouroboros (GitHub mirror) is a future networking architecture descended from the Recursive Internetwork Architecture (RINA).  This package provides a prototype userspace implementation of the architecture for Linux.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

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

[x] Fits CONTRIBUTING.md.

Closing due to inactivity.  This version of Ouroboros is now outdated; see https://github.com/NixOS/nixpkgs/pull/267080 for a newer PR.


cardinal: 23.09 -> 23.10

Description of changes
closes https://github.com/NixOS/nixpkgs/issues/263570
https://github.com/DISTRHO/Cardinal/releases/tag/23.10
https://github.com/DISTRHO/Cardinal/compare/23.09...23.10

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

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

[x] Fits CONTRIBUTING.md.

Related side discussion: something I've been thinking of doing lately is adding desktop entries for some audio plugins that are also desktop apps (like this one). Is there any reason these aren't currently being created?

@PowerUser64 I think that'd be cool. I've seen a lot of nixpkgs packages using the makeDesktopItem / copyDesktopItems infra, but not so much for some audio plugins, as you've said.

Oooh I didn't know about copyDesktopItems! I'll probably start by adding these to PR's and go from there. Thanks for your response @minijackson!


Lerc:EncodeTempl missing from final .so

I think this PR by @tmaurer3  introduced a small API issue: https://github.com/Esri/lerc/pull/147
By introducing the EncodeInternal template function, the compiler now fails to include exported versions of either Lerc::EncodeTempl or Lerc:: ComputeCompressedSizeTempl.
$ nm libLerc.so  | c++filt | grep "Lerc::Encode"
0000000000016260 W LercNS::ErrCode LercNS::Lerc::EncodeInternal<signed char>(signed char const*, int, int, int, int, int, int, unsigned char const*, double, unsigned int&, unsigned char*, unsigned int, unsigned int&)
00000000000190b0 W LercNS::ErrCode LercNS::Lerc::EncodeInternal<double>(double const*, int, int, int, int, int, int, unsigned char const*, double, unsigned int&, unsigned char*, unsigned int, unsigned int&)
00000000000185a0 W LercNS::ErrCode LercNS::Lerc::EncodeInternal<float>(float const*, int, int, int, int, int, int, unsigned char const*, double, unsigned int&, unsigned char*, unsigned int, unsigned int&)
0000000000016700 W LercNS::ErrCode LercNS::Lerc::EncodeInternal<unsigned char>(unsigned char const*, int, int, int, int, int, int, unsigned char const*, double, unsigned int&, unsigned char*, unsigned int, unsigned int&)
0000000000017a80 W LercNS::ErrCode LercNS::Lerc::EncodeInternal<int>(int const*, int, int, int, int, int, int, unsigned char const*, double, unsigned int&, unsigned char*, unsigned int, unsigned int&)
0000000000017f20 W LercNS::ErrCode LercNS::Lerc::EncodeInternal<unsigned int>(unsigned int const*, int, int, int, int, int, int, unsigned char const*, double, unsigned int&, unsigned char*, unsigned int, unsigned int&)
0000000000016d90 W LercNS::ErrCode LercNS::Lerc::EncodeInternal<short>(short const*, int, int, int, int, int, int, unsigned char const*, double, unsigned int&, unsigned char*, unsigned int, unsigned int&)
0000000000017400 W LercNS::ErrCode LercNS::Lerc::EncodeInternal<unsigned short>(unsigned short const*, int, int, int, int, int, int, unsigned char const*, double, unsigned int&, unsigned char*, unsigned int, unsigned int&)
000000000001a0f0 T LercNS::Lerc::Encode(void const*, int, LercNS::Lerc::DataType, int, int, int, int, int, unsigned char const*, double, unsigned char*, unsigned int, unsigned int&)

$ nm libLerc.so  | c++filt | grep "Lerc::.*Templ"
00000000000112a0 W LercNS::ErrCode LercNS::Lerc::DecodeTempl<signed char>(signed char*, unsigned char const*, unsigned int, int, int, int, int, int, unsigned char*)
0000000000015310 W LercNS::ErrCode LercNS::Lerc::DecodeTempl<double>(double*, unsigned char const*, unsigned int, int, int, int, int, int, unsigned char*)
0000000000014b00 W LercNS::ErrCode LercNS::Lerc::DecodeTempl<float>(float*, unsigned char const*, unsigned int, int, int, int, int, int, unsigned char*)
0000000000011c40 W LercNS::ErrCode LercNS::Lerc::DecodeTempl<unsigned char>(unsigned char*, unsigned char const*, unsigned int, int, int, int, int, int, unsigned char*)
0000000000013940 W LercNS::ErrCode LercNS::Lerc::DecodeTempl<int>(int*, unsigned char const*, unsigned int, int, int, int, int, int, unsigned char*)
00000000000142f0 W LercNS::ErrCode LercNS::Lerc::DecodeTempl<unsigned int>(unsigned int*, unsigned char const*, unsigned int, int, int, int, int, int, unsigned char*)
00000000000125e0 W LercNS::ErrCode LercNS::Lerc::DecodeTempl<short>(short*, unsigned char const*, unsigned int, int, int, int, int, int, unsigned char*)
0000000000012f90 W LercNS::ErrCode LercNS::Lerc::DecodeTempl<unsigned short>(unsigned short*, unsigned char const*, unsigned int, int, int, int, int, int, unsigned char*)

This means that a user of the library cannot include these template functions in their own code as it leads to:
undefined symbol: _ZN6LercNS4Lerc11EncodeTemplIdEENS_7ErrCodeEPKT_iiiiiiPKhdPhjRj

and
$ c++filt _ZN6LercNS4Lerc11EncodeTemplIdEENS_7ErrCodeEPKT_iiiiiiPKhdPhjRj
LercNS::ErrCode LercNS::Lerc::EncodeTempl<double>(double const*, int, int, int, int, int, int, unsigned char const*, double, unsigned char*, unsigned int, unsigned int&)

@bretttully  The Lerc lib as built only exports the functions defined in the API. To call these medium level functions, the Lerc lib needs to be rebuilt. One way is to drop the C-API, add only the files you need to your own C++ project, then call these *Templ functions directly. Or, the shortest way to try this out:
_ in Lerc.h, add an export command, like this (I'm doing this on windows):
template<> (add "class T" inside the brackets)
__declspec(dllexport)
static ErrCode ComputeCompressedSizeTempl( ...
_ in main.cpp, add #include "../LercLib/Lerc.h"
_ in main.cpp, e.g., after the first lerc_Decode() call, add
unsigned int numberOfBytes = 0;
LercNS::Lerc::ComputeCompressedSizeTempl(zImg3, 5, 1, w, h, 1, 1, maskByteImg3, 0.1, numberOfBytes);
This builds and runs for me.

Yes, that makes sense -- I had just assumed that because these are public not private functions, they would be part of the API: https://github.com/Esri/lerc/blob/master/src/LercLib/Lerc.h#L154
Here is my example use case wrapping calls with numpy arrays with enforced data types.
#include "wrapLerc.hpp"

#include <pybind11/numpy.h>
#include <pybind11/stl_bind.h>

#include <LercLib/Defines.h>
#include <LercLib/Lerc.h>

namespace py = pybind11;

namespace {
static constexpr int LERC_VERSION = -1;  // use the latest

template <typename DataT> struct NumpyInfo {
    using NumpyT = typename py::array_t<DataT, py::array::c_style>;

    NumpyInfo() : info(), data(nullptr), nDim(1), nCols(0), nRows(0), nBands(0) {}

    NumpyInfo(NumpyT array)
        : info(array.request()), data(nullptr), nDim(1), nCols(0), nRows(0), nBands(0) {
        if (info.ptr == nullptr) {
            throw std::runtime_error("The array has no data!");
        }
        data = static_cast<DataT *>(info.ptr);
        if (info.ndim == 2) {
            nBands = 1;
            nRows = info.shape[0];
            nCols = info.shape[1];
        } else if (info.ndim == 3) {
            nBands = info.shape[0];
            nRows = info.shape[1];
            nCols = info.shape[2];
        } else {
            throw std::runtime_error("LERC compression requires a 2D or 3D array");
        }
        if (array.size() != nCols * nRows * nBands) {
            throw std::runtime_error("Failed to correctly extract array size");
        }
    }

    /// numpy buffer protocol
    py::buffer_info info;
    /// Raw image data, row by row, band by band. This is a raw pointer being kept alive by (at least) `this->info`
    DataT *data;
    /// number of values per pixel (for us, this is always 1)
    const int nDim;
    /// data shape
    int nCols, nRows, nBands;
};

/// Calculate the size of the required buffer size
template <typename DataT> struct LercBufferSize {
    using RasterInfo = NumpyInfo<DataT>;
    using RasterT = typename RasterInfo::NumpyT;

    static uint32_t calculate(const RasterT &raw, double maxZError) {
        RasterInfo raster(raw);
        return calculateImpl(raster, maxZError);
    }

    static uint32_t calculateImpl(const RasterInfo &raster, double maxZError) {
        // We don't care about the mask
        int nMasks = 0;
        LercNS::Byte *pValidBytes = nullptr;
        // size of outgoing Lerc blob
        uint32_t bs = 0;
        auto status = LercNS::Lerc::ComputeCompressedSizeTempl<DataT>(
            raster.data, LERC_VERSION, raster.nDim, raster.nCols, raster.nRows,
            raster.nBands, nMasks, pValidBytes, maxZError, bs
        );
        if (status != LercNS::ErrCode::Ok) {
            throw std::runtime_error("Failed to fetch the number of bytes required for the buffer");
        }
        return bs;
    }
};

template <typename DataT> struct LercCompressor {
    using RasterInfo = NumpyInfo<DataT>;
    using RasterT = typename RasterInfo::NumpyT;

    static void applyInPlace(RasterT &raw, double maxZError) {
        RasterInfo raster(raw);
        impl(raster, maxZError);
    }

    static RasterT apply(const RasterT &raw, double maxZError) {
        RasterT rawCopy(raw.request());
        RasterInfo raster(rawCopy);
        impl(raster, maxZError);
        return rawCopy;
    }

  private:
    static void impl(RasterInfo &raster, double maxZError) {
        // We don't care about the mask
        int nMasks = 0;
        LercNS::Byte *pValidBytes = nullptr;

        // --- get the buffer size
        uint32_t numBytesNeeded = LercBufferSize<DataT>::calculateImpl(raster, maxZError);

        // --- encode
        // buffer to write to, function will fail if buffer too small
        std::vector<LercNS::Byte> lercBlob(numBytesNeeded, 0);
        auto pLercBlob = lercBlob.data();

        uint32_t numBytesUsed = 0;  // num bytes written to buffer
        auto status = LercNS::Lerc::EncodeTempl<DataT>(raster.data, LERC_VERSION, raster.nDim, raster.nCols,
                                                       raster.nRows, raster.nBands, nMasks, pValidBytes, maxZError,
                                                       pLercBlob, numBytesNeeded, numBytesUsed);
        if (status != LercNS::ErrCode::Ok) {
            throw std::runtime_error("Failed to encode data");
        }

        // --- decode
        status = LercNS::Lerc::DecodeTempl<DataT>(raster.data, pLercBlob, numBytesUsed, raster.nDim, raster.nCols,
                                                  raster.nRows, raster.nBands, nMasks, pValidBytes);
        if (status != LercNS::ErrCode::Ok) {
            throw std::runtime_error("Failed to decode data");
        }
    }
};

template <typename DataT> void wrapLercImpl(py::module &m) {
    auto doc = py::doc("Note, it is assumed that if `raster.ndim == 3` it is arranged as "
                       "`raster.shape = (n_bands, n_rows, c_cols)`");

    using LBS = LercBufferSize<DataT>;
    m.def("buffer_size", &LBS::calculate, doc, py::arg("raster").noconvert(), py::arg("max_z_error"));

    using LC = LercCompressor<DataT>;
    m.def("apply_in_place", &LC::applyInPlace, doc, py::arg("raster").noconvert(), py::arg("max_z_error"));
    m.def("apply", &LC::apply, doc, py::arg("raster").noconvert(), py::arg("max_z_error"),
          py::return_value_policy::move);
}
}  // namespace

namespace cpputils {
namespace python {

void wrapLerc(py::module &m) {
    auto mLerc = m.def_submodule("lerc");
    wrapLercImpl<unsigned char>(mLerc);  // uint8_t
    wrapLercImpl<unsigned short>(mLerc);  // uint16_t
    wrapLercImpl<float>(mLerc);
    wrapLercImpl<double>(mLerc);
}
}  // namespace python
}  // namespace cpputils

@bretttully  So you suggest the use of PyBind11 for a more elegant and modern way to call from python into the Lerc lib. I'm not familiar with this, it looks interesting.
However, here are some arguments against it:
_ We want to have a general C API which can be used by any language, not just python.
_ So far Lerc has no external dependency. This would add one.
_ Lerc lib is small, has only a handful of API functions. The PyBind11 include files appear to be of roughly the same size as our Lerc lib (in lines of code).
_ The PyBind11 license file would need to be honored and made part of all software packages downstream. It would need to be added to the documentation of all software that uses Lerc.
To justify the use of PyBind11, it would have to make Lerc in python noticeably faster. So if you are game, feel free to continue along this line.

Sorry, I wasn't advocating you should move your code to pybind11, just showing an example of how I am using your C++ API in my own project (that does use pybind11 for a number of utilities I want to expose to python). That example code worked on 2.2 but now fails at runtime with 3.0 because the template functions are not exported to Lerc.so
That being said, conda/mamba/boa+pybind11 makes for a quite nice build and deploy of compiled python binaries so maybe I'll fork and play around. I have no idea how this would impact on the other languages, however.


support convs with groups>1 in TTNN needed for MobilenetV2

Describe the solution you'd like
We need to add support for groups>1 for the convs in MobilenetV2.
to test, from saichand/mobilenet_v2_ops_unit_tests
run: pytest tests/ttnn/unit_tests/operations/test_conv2d.py::test_mobilenetv2_conv_gs_groups
Additional context
customer feature
GS - e150
OS: [e.g. Ubuntu 20.04]

related to #4903 that is currently being worked on

Resolved with new conv-api


lyxal: Watch amritsardigitalacademy.in

lyxal requests the watch of the watch_keyword amritsardigitalacademy\.in. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

amritsardigitalacademy\.in has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Ryan M in Charcoal HQ


Add multiarch GH Actions workflows

Adds armv7h, aarch64, and riscv64 builds on Ubuntu 22.04 to GitHub Actions, with dependency caching enabled for significantly faster builds.

aarch64 version is having a bad day, will give it a bit (watch TLOU), re-run the workflow and see where it goes from there.


Homatics Box R 4K plus added

What is this for? The subfolder 1 I mean

Sorry its just issue..

Please drop these two commits and force push the pr.

I will made new


environment settings and README File

added environment settings and readme file.
Readme file need more information and detail.
Maybe we can open new branches for each week and update and link each branch with details.

updated readme file with how to run the app.


Maker repords  >700 connections

Our maker metrics seem to be off at the moment.
From times, it reports >1k of connections, now, after a restart, we have >700.

My assumption is that this PR was not kosher and now takers who connect again are counted twice :
https://github.com/itchysats/itchysats/pull/2053


Pig Icon

A simple pig icon, it can be used in any context that relates, for example my team want to use like a Money Vault in a financial app.
Something like this:

I would also like this kind of icon, to denote a piggy bank, savings, budget section of an app I'm currently building. I can't think of any other icons to use as a workaround for this, so open to suggestions :)

Added piggy-bank in v2.0.0


[Suggestion] Add a validation when inputting document ID

OS: Win10
Build Version: 20200626.4
Repro steps:

Drill down from Core(SQL) account --> Database --> Collection --> Document.
Right click document --> Select "Create Document..." --> Input "!#@$" for document ID.

Actual:
There is an error "Id contains illegal chars", but this is expected.

Suggestion:
Add a validation when inputting document ID.

This issue has become stale and is at risk of being closed. The community has 60 days to upvote the issue. If it receives 5 upvotes we will keep it open and take another look. If not, we will close it. To learn more about how we handle issues, please see our documentation.
Happy Coding!

:slightly_frowning_face: In the last 60 days, this issue has received less than 5 community upvotes and we closed it. Still a big Thank You to you for taking the time to create it! To learn more about how we handle issues, please see our documentation.
Happy Coding!


Incorrect entery on non english keyboard layouts

When using a non english keyboard layout things are sometimes incorrectely typed, for example with a swedish keyboard layout @ is entered as " and $ is entered as ¤. I would guess this is because some symbols are placed differently on a swedish keyboard e.g. shift + 2 is @ on english keyboards and " on swedish.

Take a look through firecat53/keepmenu#155 and see if any of the suggestions there (using xdotool, etc.) help sort out the issue. If you can't sort it, my only suggestion is to use password_chars and password_char_presets to specifically assign allowed keys that are correctly typed for you. It's not ideal...

Thank you, but unfortunately I were not able to get that to work. Instead I set my default layout to us and bound capslock to toggle to se layout, like this:
$ setxkbmap -query
...
layout:     us,se
options:    grp:caps_toggle,grp_led:caps

This way bwm uses the deafault layout and I can use a swedish layout, not the cleanest solution but it works.

I'm glad you found a workaround at least! It's been a challenge for both of these projects finding a combination of launcher and 'typer' (xdotool, ydotool, wtype, etc) that works for all keyboard layouts and special characters.
Are you currently using xdotool or pynput? If you ever switch to Wayland, please update me on if or what you able to get working for you.
I'll leave this open for now.

I was actually able to get it to work after some further tinkering. I use NixOS and even though my layout is set to se in my config I need to run setxkbmap se to get xdotool to work correctly. So by adding displayManager.sessionCommands = "setxkbmap se"; in my config I could get bwm to work using xdotool.

Great, glad you got it working! Looks like that's documented in docs/configure.md but I can see why NixOS would make that not as clear.
If you do end up getting it working on Wayland at some point, please let me know. Thanks! I'll close this for now. Re-open if necessary.


Swarm service, with overlay network, fails to remove all containers

Output of docker version:
Client:
 Version:      1.12.1
 API version:  1.24
 Go version:   go1.6.3
 Git commit:   23cf638
 Built:        Thu Aug 18 05:02:53 2016
 OS/Arch:      linux/amd64

Server:
 Version:      1.12.1
 API version:  1.24
 Go version:   go1.6.3
 Git commit:   23cf638
 Built:        Thu Aug 18 05:02:53 2016
 OS/Arch:      linux/amd64

Output of docker info:
Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 4
Server Version: 1.12.1
Storage Driver: overlay2
 Backing Filesystem: extfs
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: null bridge host overlay
Swarm: active
 NodeID: 0phf7j5medrlnam24hcki16db
 Is Manager: true
 ClusterID: 0ol98k8pblzgb1xpqeuuqn27f
 Managers: 1
 Nodes: 3
 Orchestration:
  Task History Retention Limit: 5
 Raft:
  Snapshot Interval: 10000
  Heartbeat Tick: 1
  Election Tick: 3
 Dispatcher:
  Heartbeat Period: 5 seconds
 CA Configuration:
  Expiry Duration: 3 months
 Node Address: <IP_ADDRESS>
Runtimes: runc
Default Runtime: runc
Security Options:
Kernel Version: 4.6.0-0.bpo.1-amd64
Operating System: Debian GNU/Linux 8 (jessie)
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 3.911 GiB
Name: mc-docker1
ID: RG6N:UCJN:AT5K:AYYN:ZPH6:6IAN:ARJZ:TWAD:ZFTZ:BSYC:A4AN:TTP3
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
WARNING: No memory limit support
WARNING: No swap limit support
WARNING: No kernel memory limit support
WARNING: No oom kill disable support
Insecure Registries:
 <IP_ADDRESS>/8

Steps to reproduce the issue:

docker network create -d overlay sleeper_nw
docker service create --name sleeper --replicas 20 --network sleeper_nw urlund/sleeper
docker service rm sleeper

Describe the results you received:
Output from docker ps -a:
Node 1:
CONTAINER ID        IMAGE                   COMMAND             CREATED             STATUS                       PORTS               NAMES
9b79d94bcebb        urlund/sleeper:latest   "/run.sh"           41 seconds ago      Exited (137) 7 seconds ago                       sleeper.20.5shcg82g0p2sn8hkqidx6yuim
239a00862bc4        urlund/sleeper:latest   "/run.sh"           41 seconds ago      Exited (137) 7 seconds ago                       sleeper.2.7vm1a1u41fwpf3mjrviphsfyo
274ccd13294e        urlund/sleeper:latest   "/run.sh"           41 seconds ago      Exited (137) 7 seconds ago                       sleeper.18.1qzllrci7j6rzpjdvk01fxip7
7837971e8e4d        urlund/sleeper:latest   "/run.sh"           41 seconds ago      Exited (137) 7 seconds ago                       sleeper.6.dzrkydszgnvd4mzyy37fyxarc

Node 2:
CONTAINER ID        IMAGE                   COMMAND             CREATED             STATUS                        PORTS               NAMES
854ef7a322b7        urlund/sleeper:latest   "/run.sh"           44 seconds ago      Exited (137) 10 seconds ago                       sleeper.19.609h64iauf7oa1i95o0qi7qqk
fcfcf0208ebf        urlund/sleeper:latest   "/run.sh"           44 seconds ago      Exited (137) 10 seconds ago                       sleeper.15.dpxzl9lysf6koofzhld6o8hnq

Node 3:
CONTAINER ID        IMAGE                   COMMAND             CREATED             STATUS                        PORTS               NAMES
32518f0c9ce2        urlund/sleeper:latest   "/run.sh"           45 seconds ago      Exited (137) 12 seconds ago                       sleeper.9.1k6snzf3xnjjfayoq3fhfvdtu
bf15e1d18a8a        urlund/sleeper:latest   "/run.sh"           45 seconds ago      Exited (137) 12 seconds ago                       sleeper.5.bqf8dn47yqcosd45uk0skzvyj
fc406aef2f9c        urlund/sleeper:latest   "/run.sh"           45 seconds ago      Exited (137) 12 seconds ago                       sleeper.12.68hlgm025wtur6xa57v8gfi8i
d5a9359d120e        urlund/sleeper:latest   "/run.sh"           45 seconds ago      Exited (137) 12 seconds ago                       sleeper.7.0ql6whgya5753ckk12nahqx5u
46035a959fbe        urlund/sleeper:latest   "/run.sh"           45 seconds ago      Exited (137) 12 seconds ago                       sleeper.10.e5z07uzu46z9c051iusx6qpqf

Describe the results you expected:
I would expect all containers to be removed.
Additional information you deem important (e.g. issue happens only occasionally):
You should not be able to reproduce this without creating/configuring an overlay network.

@urlund Yes, this is a bug caused by multiple go routines racing to delete the network and only one of them wins and everybody else fails to delete the network and because of that fails to remove the container. Will fix it. But other than some stale containers it will not cause any other issues in terms of functionality.

Having a similar issue here: 1 swarm node, 1 service, 3 replicas, overlay network...and service rm always left one task exited that can be viewed with  docker ps -a
Is there anything we could do/test for you?

@mrjana could you please point the point to reoslve the problem.

@xiaods ,
As mrjana said, this issue should come from swarmkit && libnetwork side.
If you don't mind, I want to take an investigation in code too.

I don't know it this can be somehow useful, but with just one swarm node, running just one service, the left containers seems to be always half of replicas.

@jmzwcn cool. wait for your result.

https://github.com/docker/swarmkit/blob/master/manager/orchestrator/replicated.go#L160
https://github.com/docker/swarmkit/blob/master/manager/state/store/memory.go#L299
But I am not sure if it is really related to overlay network. Could anybody confirm?

Are logs produced by lines like "log.G(ctx).WithError(err).Errorf("failed to list tasks")" visible running docker in verbose mode/docker logs/somewhere?
I could dump some log traces if you need so.

@mostolog docker writes logs to stderr. This means logs will be available depending on how/what the init system is/is setup.
If you are using systemd, the logs are in journald.
If you are using upstart, typically the logs would be in /var/log/upstart/docker.log.

Supposed to be anonymized. I just run 4 commands:

service create without overlay network
service rm (all containers are gone)
service create with overlay network
service rm (one dead container left)

log.txt attached
Hope it helps.

I have reproduced this issue too with overlay. Because actually we couldn't use other network type(host/selfdef-bridge) in swarm mode. But I couldn't find this issue in default network, so anybody know which one is the default network in swarm mode?

Actually when we use "ingress"(built-in overlay), this issue is gone. I will investigate further more.

@jmzwcn wait for your confirm

@jmzwcn if you want to take care of fixing this issue it should be fixed here: https://github.com/docker/docker/blob/master/daemon/cluster/executor/container/adapter.go#L136.
In addition to ignoring ActiveEndpointsError it also needs to ignore NoSuchNetwork error as defined here https://github.com/docker/libnetwork/blob/master/error.go#L8. This is because when deleting multiple tasks which are connected to the same network it is possible that the network is removed before all tasks has completely shutdown. If the network is no more there there is no need to fail the executor since that is what our intention was to begin with.

Great, I think it is exact. I will verify and submit a PR then.

			if _, ok := err.(*libnetwork. ErrNoSuchNetwork); ok {
				continue
			}

Anybody know how to build a local docker binary? Docker-in-docker(https://docs.docker.com/opensource/project/set-up-dev-env/) seems not to work in swarm mode.

@jmzwcn  i have follow @mrjana hints and reproduce the steps in above comments, the docker logs report :
time="2016-09-25T08:36:55.472486240Z" level=error msg="network sleeper_nw remove failed: network sleeper_nw not found" module=taskmanager task.id=dcc7wujc41mkagd992va0f61o
time="2016-09-25T08:36:55.472542896Z" level=error msg="remove task failed" error="network sleeper_nw not found" module=taskmanager task.id=dcc7wujc41mkagd992va0f61o
time="2016-09-25T08:36:55.505292889Z" level=error msg="network sleeper_nw remove failed: network sleeper_nw not found" module=taskmanager task.id=cm48umnyg4zvmaff8lodnypfd
time="2016-09-25T08:36:55.505292927Z" level=error msg="remove task failed" error="network sleeper_nw not found" module=taskmanager task.id=cm48umnyg4zvmaff8lodnypfd

i can confirmed the issue is cause by ErrNoSuchNetwork.  give a PR asap ,thanks a lot.

Yes, I have verified using a local binary with the fix and find the issue has been gone as expect. binary here.
I will create a PR soon.

Seems not find appropriate place for test.
So directly submit a PR here. Please let me know if there is any problem.

Seems not find appropriate place for test.
So directly submit a PR here. Please let me know if there is any problem. @xiaods @urlund @mrjana @mostolog @cpuguy83

Upload a latest binary(without UnknownNetworkError), could anybody help to verify? here

@jmzwcn .deb? :grin:

Dev build takes too long time, not sure if deb could be completed before I leave office. :grin:

1.12.2-rc1 is not also fixed it, please have a try on new testing binary.

All debs have been uploaded to here, please try it based on your contrib. Thanks!

Just run the previous 4 commands:

service create without overlay network
service rm (all containers are gone)
service create with overlay network
service rm (all containers are gone)

Tested on debian-jessie.
Thanks @jmzwcn !!!

waiting the patch is merged, then close it.

@xiaods
As @aboch said, it will be decided to merge into 1.12.x by @mrjana


This fixes issue #60. Add sanity check to page length.

Any feedback on this?  Does this proposed change look reasonable?


feat: use Entities as properties of other Entities

For example, if an Entity related to a Security Token had a ticker as a property before, it will
now have the SecurityToken object as a property instead
BREAKING CHANGE:

replace ticker: string with token: SecurityToken in: Checkpoint, CheckpointSchedule,
CorporateAction, DividendDistribution, Sto, CustomPermissionGroup,
KnownPermissionGroup, DefaultTrustedClaimIssuer
change the return type of CustomPermissionGroup.toJson. id: BigNumber is now id: string

:tada: This PR is included in version 11.0.0-alpha.13 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 12.0.0-alpha.1 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 13.0.0-alpha.1 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 14.0.0-alpha.1 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 14.0.0-beta.1 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


refactor: use stable Rust

Current dependencies on/for this PR:

main

PR #66   👈

This stack of pull requests is managed by Graphite.


Add config to control if reconcile is triggered by prolog/epilog

What
Add a config to set the agent env var that flags if reconciliation should be triggered by Prolog/Epilog execution.
Why
To be able to run Prolog/Epilog without triggering a forced reconciliation.
Task: https://app.clickup.com/t/18022949/LM-190

Peer Review
Please follow the upstream omnivector documentation concerning
peer-review guidelines.

Depends on:
https://github.com/omnivector-solutions/license-manager/pull/129


Pagination Bugs With myRecentSubscribers and mySubscribers

I don't know if it's the API or the library that's causing the issue because I only use the library to make my requests, but with "mySubscribers" the docs say all subscribers can be retrieved with pagination but only 1000 are being returned, and with "myRecentSubscribers" pagination to retrieve up to the 1000 users limit is working but every page returns the same 50 users.

Each API and each method within an API has a different number of max value that can be returned by a call.  The max results that can be returned by YouTube.Subscriptions is 50 per call.

maxResults | unsigned integerThe maxResults parameter specifies the maximum number of items that should be returned in the result set. Acceptable values are 0 to 50, inclusive. The default value is 5.

You will need to use pageToken and preform pagination to retrieve additional records.

Sorry I didn't make it clear in the first post. I am setting maxResults to 50 and using pagination, successfully getting a new pageToken for each page, but the results that are returned when the pageToken is used in a subsequent request return the same 50 channels but a new pageToken.

I think you should put your code up on Stack overflow sounds like you are having an issue with your code.   I dont think this is a problem with the client library itself.
Make sure to tag your question Google-api-php-client i should spot it.

Ben, I am curious if this result is reproducible in another client. Would you take a second to try a secondary request with the pageToken from an initial response in API Explorer. If that comes back with new results, you may want to use Charles Web Proxy to make sure pageToken is included in subsequent requests.

Ah, they are both bugs with the API! Total of 1000 results with mySubscribers and only duplicate responses with myRecentSubscribers, so that solves the mystery. Where do I go to report a bug with the API?

####Short Answer
Looks like it has been reported: https://issuetracker.google.com/issues/35207538
####Long Answer
Really great semi-recent changes have been rolling out on https://developers.google.com . Most API teams have a Support tab with links to Issue Tracker or links at the bottom of each page. The Reference tabs are great. There are too many to keep a list of so I usually just open a new tab and search for "Youtube API support" or "Google API AdSense"
Thanks for opening an issue. I'm happy to reopen it, just post another comment.


Linalg Dialect To Cambrian hardware instructions

Hi, all.
From the readme, we can know triton-linalg has successfully supported the Cambricon backend as a front-end representation.
If I write a kernel using python triton, how can this kernel run on Cambrian hardware?
Do you also need to provide a tool to convert Linalg Dialect into instructions that can run on Cambrian hardware?
Or where can I download this tool?

@helloworldstone  We have provided the Triton Cambricon whl package in the Cambricon SDK, but currently, it is only available for commercial customers to download.

@sethbrin Is the Triton Cambricon whl package similar to the triont whl package? After installing the Cambricon whl package, developers can use python triton to develop algorithms and run them directly on Cambricon hardware through jit?

@sethbrin Is the Triton Cambricon whl package similar to the triont whl package? After installing the Cambricon whl package, developers can use python triton to develop algorithms and run them directly on Cambricon hardware through jit?

@helloworldstone Yes, currently, Cambricon's Triton supports all features except those related to NVIDIA hardware.


Report wireguard endpoint as a candidate when an endpoint override is in place

Scenario: you have a machine which at one point ran innernet override-endpoint with an endpoint which maybe worked in the past, but doesn't work now. Because the endpoint is overridden, it is the endpoint peers try, along with any extra endpoint candidates reported by the peer.
What doesn't get reported to other peers is the current wireguard endpoint the innernet server sees. It used to only use that wg endpoint if the peer hadn't overridden it.
The easiest fix I can think of is to just add the endpoint the server sees to the list of NAT candidates we give peers to try.
The server logic could perhaps be simplified further - report all possible candidates we know about on the server side, and maybe allow the client to specify additional endpoints it wants to use as candidates. But for now this PR is probably sufficient?
I haven't tested yet, and it might need more tests added to our CI to cover this case.

@strohel I chatted with @bschwind about it, and it makes perfect sense to me! It should have been like this all along in my opinion after candidates were added.
On that note, I think there are a couple of things worth considering to make this even clearer:

The server should really only report a list of endpoints to try, there's no need to have both an endpoint and candidates field any more is there?
override-endpoint as a name makes this all a bit more confusing. We might even consider deprecating it in favor of allowing the user to specify an arbitrary number of additional candidates (add-candidate-endpoints?)

The server should really only report a list of endpoints to try, there's no need to have both an endpoint and candidates field any more is there?

Yes, I think now there is no point in distinguishing the two. We just need to figure out the API and all that for adding/removing endpoint candidates, which I didn't want to tackle in this PR as it involves quite a bit more changes.

Haven't merged this yet as I'd like to add some CI tests, will hopefully get to that soon.

@mcginty @strohel I added more tests for this guy, it could use another look.


Need to expose analysis results' audio recordings

Analysis jobs produce  results. For example analysis_job.id == 1 may have results for recordings
123,456,9439493,213131,122333,.... It is quite reasonable that there could be 50K folders in the .../analysis_results/1/ folder (one of our projects actually has that many recordings).
To expose results to users, so they can look/download/load up into tools, they need to be able to choose a recording to show the results. Recording IDs that are in the job are not guaranteed to follow any pattern (they are not sequential, often not contiguous).
Currently, the information for which audio recordings are part of a job is not tracked anywhere. These IDs are also not accessible via any part of the API. Whatever solution chosen needs to support paging the results (i.e. some form of offset and limit).The following possible solutions exist:

native dir enumeration (i.e. Dir.entries)

pros: simplicity, extend virtual file system concept already used for analysis results
cons: directory listing for even a few hundred files is very slow. This effect is made worse because we rely on noac (no client cache) to ensure our nfs shares remain performant. Most importantly, I can't find a ruby API to page results.

tracking table

we'd use the job items concept from here - specifically the (push+tracking table) idea
pros: next simplest idea, reuse a concept we're planning to make. Supports paging.
cons: this table could end up being massive (n^2 perf profile). We'd need to store the records permanently.

re-executing the saved saved search query

pros: possibly simple. we don't have to store anything. also supports paging.
cons: the results of the search could change when reexecuting. inconsistent results. On very large result sets the query time could prove to be prohibitive. Also the only item here that would return results for analysis results folders that don't exist yet.

caching saved search audio recording ids in simple binary manifest in .../analysis_results/1/manifest.bin

pros: divorced from database, storage of data isolated to analysis_jobs folder. essentially a cached ls
cons: would need to read and parse a file (very quickly) on every request - file could easily reach several hundred KB in size.

use swift (object store)

pros: it is made for this use case - hundreds of thousands of small files. It also supports paging.
cons: would introduce another dependency in our system. We'd likely need a fallback for disk based access anyway.

I'm currently unsure what the best path forward is.
Quick and dirty: option 1. and flag this as a potential future issue. :tada: technical debt.
Ideal: support 5. with a fallback for disc access based on 2.
Probably need to go with 2. Should be mediumly scalable.

See also existing batch job processing programs.

Another dimension I didn't realise until now: analysis results are wisely stored by the uuid and by our standard uuid partitioning scheme. I had incorrectly assumed results were stored by the audio_recording.id integer as the name of the folders.


Receipt should be sent by email after payment

A receipt should be emailed to the user after they complete the payment step. I received a welcome email (which was great) but no receipt confirming the amount paid and date.

Thanks for reporting this. :+1:
When I tested in live, I could of swore I received one, but reading over Stripe docs, I'd have to create a user or pass in a flag to send the receipt email, which I am not currently doing.


🖱 Trial Run of New Dormant Users Process

User Need
As a Ops Eng Team
I want a trial run of the new dormant users process
so that we can validate how it runs/see what it does.
Value
We can see what the impact of running the new process will be before we remove users
Non-Functional Requirements (How):

[x] Run process locally

Acceptance Criteria:

[x] We can decide based on the output whether we are happy to proceed and can created next step tickets.

Notes:

connects to https://github.com/ministryofjustice/operations-engineering/discussions/3994

The output (below) is taken from a full run of the trial process. Things we learnt:

We can't be completely confident in the audit log to show who has, and who hasn't, been active.
We have to use the GitHub dormant users csv file for the time being.
The audit log doesn't log individual's commits, only pull-requests.

https://docs.google.com/spreadsheets/d/1nmocEW7ZNtxVkEOrbpKkeurTky13JFxjW33ILwMurME/edit?gid=723842839#gid=723842839


Pattern matching on table action_run fields is broken

Tables define a result type so that programs can pattern match on which action was taken by the table. The spec says this is an enum, but the spec also says that enum members are namespaced within the enum, so I'm unsure what the best way to fix this is. In any case, the following program should typecheck but doesn't typecheck.
#include <core.p4>
control MyC() {
  action act() {}
  table tb {
    actions = {
      act;
    }
    key = {
    }
  }
  apply {
    switch(tb.apply().action_run) {
      act: { }
    }
  }
}
control C();
package P(C c);
P(MyC()) main;

Fixed in 6bb8e70


error: RPC failed; HTTP 400 curl 22 The requested URL returned error: 400

Hi, I'm get this error when I use action. https://github.com/RiverOnVenus/blog/actions/runs/8502833478/job/23287509540#step:5:948

error: RPC failed; HTTP 400 curl 22 The requested URL returned error: 400
send-pack: unexpected disconnect while reading sideband packet
fatal: the remote end hung up unexpectedly
Everything up-to-date

My workflow file:
name: Build and Deploy to Github Pages

on:
  push:
    branches:
      - master  # Here source code branch is `master`, it could be other branch

jobs:
  build_and_deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

      # Use GitHub Actions' cache to cache dependencies on servers
      - uses: actions/cache@v3
        with:
          path: vendor/bundle
          key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
          restore-keys: |
            ${{ runner.os }}-gems-

      # Use GitHub Deploy Action to build and deploy to Github
      # For latest version: `jeffreytse/jekyll-deploy-action@master`
      - uses<EMAIL_ADDRESS>        with:
          provider: 'github'         # Default is github
          token: ${{ secrets.GITHUB_TOKEN }} # It's your Personal Access Token(PAT)
          ssh_private_key: ''        # It's your SSH private key (SSH approach)
          repository: ''             # Default is current repository
          branch: 'gh-pages'         # Default is gh-pages for github provider
          jekyll_src: './'           # Default is root directory
          jekyll_cfg: '_config.yml'  # Default is _config.yml
          jekyll_baseurl: ''         # Default is according to _config.yml
          bundler_ver: ''            # Default is compatible bundler version (~>2.4.0)
          cname: ''                  # Default is to not use a cname
          actor: ''                  # Default is the GITHUB_ACTOR
          pre_build_commands: ''     # Installing additional dependencies (Arch Linux)

I tried to find a solution online and found this thread. https://github.com/orgs/community/discussions/55820
Regards.

After submit feedback, I see that someone is working on this issue. https://github.com/jeffreytse/jekyll-deploy-action/pull/80

Hi, I recommend to use the ssh approach instead of http approach to avoid the issue, please refer to FAQ.

Hi, I have used the ssh approach and everything is great, thanks for the excellent work.
Best Regards


Error occurs when running the Test with 1 gpu.

I Followed all the instructions to install this repo but when i run Test with 1 gpu demo, follow error occurs.
Traceback (most recent call last):                                                                                File "./mmdetection/tools/test.py", line 13, in                                                                                from mmdet.apis import init_dist                                                                                File "/home/revolveai/projects/KGDet/mmdetection/mmdet/apis/init.py", line 2, in                                               from .inference import (inference_detector, init_detector, show_result,                                                                File "/home/revolveai/projects/KGDet/mmdetection/mmdet/apis/inference.py", line 10, in                                             from mmdet.core import get_classes                                                                                File "/home/revolveai/projects/KGDet/mmdetection/mmdet/core/init.py", line 3, in                                               from .evaluation import *  # noqa: F401, F403                                                                                File "/home/revolveai/projects/KGDet/mmdetection/mmdet/core/evaluation/init.py", line 5, in                                    from .eval_hooks import (CocoDistEvalmAPHook, CocoDistEvalRecallHook,                                                                  File "/home/revolveai/projects/KGDet/mmdetection/mmdet/core/evaluation/eval_hooks.py", line 13, in                                 from mmdet import datasets                                                                                File "/home/revolveai/projects/KGDet/mmdetection/mmdet/datasets/init.py", line 7, in                                           from .loader import DistributedGroupSampler, GroupSampler, build_dataloader                                                            File "/home/revolveai/projects/KGDet/mmdetection/mmdet/datasets/loader/init.py", line 1, in                                    from .build_loader import build_dataloader                                                                                File "/home/revolveai/projects/KGDet/mmdetection/mmdet/datasets/loader/build_loader.py", line 8, in                                from .sampler import DistributedGroupSampler, DistributedSampler, GroupSampler                                                         File "/home/revolveai/projects/KGDet/mmdetection/mmdet/datasets/loader/sampler.py", line 6, in                                     from mmcv.runner.utils import get_dist_info                                                                                ImportError: cannot import name 'get_dist_info'                                                                                Traceback (most recent call last):                                                                                File "/home/revolveai/miniconda3/envs/pft_test/lib/python3.6/runpy.py", line 193, in _run_module_as_main                                   "main", mod_spec)                                                                                File "/home/revolveai/miniconda3/envs/pft_test/lib/python3.6/runpy.py", line 85, in _run_code                                              exec(code, run_globals)                                                                                File "/home/revolveai/miniconda3/envs/pft_test/lib/python3.6/site-packages/torch/distributed/launch.py", line 263, in              main()                                                                                File "/home/revolveai/miniconda3/envs/pft_test/lib/python3.6/site-packages/torch/distributed/launch.py", line 259, in main                 cmd=cmd)                                                                                subprocess.CalledProcessError: Command '['/home/revolveai/miniconda3/envs/pft_test/bin/python', '-u', './mmdetection/tools/test.py', '--local_rank=0', 'configs/kgdet_moment_r50_fpn_1x-demo.py', 'checkpoints/KGDet_epoch-12.pth', '--launcher', 'pytorch', '--json_out', 'work_dirs/demo_KGDet.json', '--eval', 'bbox', 'keypoints']' returned non-zero exit status 1.

Please check if the version of mmcv is the same as the one in requirements.txt

yes the error was because of mmcv version, thank you


Add unit tests for parse_deploy_params.

About These Changes

Adds unit tests for parse_deploy_params
closes #1670

bors merge

bors r+


cross validation added for rf

ensure the new files are yapf formatted

@AlonDaks yup, ran yapf on them!


Command feedback sent as a speech bubble

Minecraft Version
1.20.x
Mod Loader Version
0.14.21
Mod Version
1.0.7
Describe the Issue
When I run a command on a server such as /plot info for example or /near the feedback I'm given in chat is also sent as a speech bubble above a random player near me:

latest.log
https://pastebin.com/Ra3vGfKP
Do you use any other mods except the required ones?
No response

This is because of my pull request, which interprets the first valid username in a message as being its sender. I’m not sure what the best way to solve this is. Maybe there should be a toggle between the old and new behavior, but ideally the mod wouldn’t rely on the message format alone. I think servers send information about which players send what messages. They might also tell the client whether a message comes from a player or not. Sadly, I don’t know how that works.

This is because of my pull request, which interprets the first valid username in a message as being its sender. I’m not sure what the best way to solve this is. Maybe there should be a toggle between the old and new behavior, but ideally the mod wouldn’t rely on the message format alone. I think servers send information about which players send what messages. They might also tell the client whether a message comes from a player or not. Sadly, I don’t know how that works.

Your pull request is good though because before I was not able to see any speech bubbles on this server, now it works this bug is just a minor issue and would be nice if there was a way to fix it in the pr

@SecretlyJealous can you test this for me?
talkbubbles-1.0.8.zip

@SecretlyJealous can you test this for me? talkbubbles-1.0.8.zip

It still has the same issue, when I run a command the feedback shows as a bubble above the player near me

add me on discord Globox_Z


support for Heltec Wireless Tracker

Any chance to add support for this board:

it's Wireless Tracker kit based on ESP32-S3FN8 with 0.96 inch 160 * 80 LCD display. it runs on SX1262 LoRa chip and UC6580 for GPS.

Hi,
I would love to add this...
can you help me with needed data to start trying and testing?
like Pinouts and such?

Wireless Tracker 1.1.pdf
Most of this is available on their web https://heltec.org/project/wireless-tracker/

Let me know if You need testing on hardware.

ok, this should be called "HELTEC WIRELESS TRACKER" ?
I found the pinout for:
-LoRa (8,9,10,11,12,13,14)
-GPS / GNSS (33,34,35,36)  (we need to look at how to make it work!)
-BatteryPin 1

TFT ( 21, 38,39,40,41,42) the TFT could wait for the last part..

do you have telegram to make this faster? (look at my github user at Telegram)

I have this panel work well with meshtastic. (GPS work inside the building :) )
When you support this I can help you  to start trying and testing!

Hello I have a two hours now for testing. Letter afternoon I'm leveling, and I will be back late evening.

From: Schneider Mihály @.>
Sent: Sunday, February 18, 2024 3:06 AM
To: richonguzman/LoRa_APRS_Tracker @.>
Cc: KD9PKP @.>; Author @.>
Subject: Re: [richonguzman/LoRa_APRS_Tracker] support for Heltec Wireless Tracker (Issue #65)
I have this panel work well with meshtastic. (GPS work inside the building :) )
When you support this I can help you to start trying and testing!
—
Reply to this email directly, view it on GitHubhttps://github.com/richonguzman/LoRa_APRS_Tracker/issues/65#issuecomment-1951036516, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AY5TAZZIRDWJ6EYUVC3RFZ3YUHAAHAVCNFSM6AAAAABDKI2OY2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNJRGAZTMNJRGY.
You are receiving this because you authored the thread.Message ID: @.***>

First test. It needs a bit of tweaking. 😇

https://github.com/Szetya/LoRa_APRS_Tracker

I install it to the heltec wireless tracker 433Mhz panel. Running Wel! Thanks a lot Szetya!

https://github.com/Szetya/LoRa_APRS_Tracker

page does not exists.

https://github.com/Szetya/LoRa_APRS_Tracker

page does not exists.
Perhaps not by chance.

Heltec Wireless Tracker support added ;)

Thank You :)

Hi Ricardo!
I install the last main version to Heltec wirelles tracker.
Work well!
I experienced an error in the display, the symbol does not appear (truck) symbol = "k". Look at the attached photo.
Thanks your effort!
From: Ricardo Guzman (Richonguzman) @.>
Sent: Friday, April 12, 2024 9:24 PM
To: richonguzman/LoRa_APRS_Tracker @.>
Cc: Schneider Mihály @.>; Comment @.>
Subject: Re: [richonguzman/LoRa_APRS_Tracker] support for Heltec Wireless Tracker (Issue #65)
Closed #65 https://github.com/richonguzman/LoRa_APRS_Tracker/issues/65  as completed.
—
Reply to this email directly, view it on GitHub https://github.com/richonguzman/LoRa_APRS_Tracker/issues/65#event-12453316155 , or unsubscribe https://github.com/notifications/unsubscribe-auth/BGHPCLIKCRDIDHU5Q2XA4TLY5AYF5AVCNFSM6AAAAABDKI2OY2VHI2DSMVQWIX3LMV45UABCJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XDWMJSGQ2TGMZRGYYTKNI .
You are receiving this because you commented.  https://github.com/notifications/beacon/BGHPCLMJCQSQTCTQEOSSWMLY5AYF5A5CNFSM6AAAAABDKI2OY2WGG33NNVSW45C7OR4XAZNWJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XKUY3PNVWWK3TUL5UWJTYAAAAAFZSGQY5Q.gif Message ID: @.*** @.***> >

hi, the symbols are not displayed, but will be very soon as I have to learn a way to do it on TFT ;)

Ok, be good work!
From: Ricardo Guzman (Richonguzman) @.>
Sent: Wednesday, April 17, 2024 4:45 PM
To: richonguzman/LoRa_APRS_Tracker @.>
Cc: Schneider Mihály @.>; Comment @.>
Subject: Re: [richonguzman/LoRa_APRS_Tracker] support for Heltec Wireless Tracker (Issue #65)
hi, the symbols are not displayed, but will be very soon as I have to learn a way to do it on TFT ;)
—
Reply to this email directly, view it on GitHub https://github.com/richonguzman/LoRa_APRS_Tracker/issues/65#issuecomment-2061432891 , or unsubscribe https://github.com/notifications/unsubscribe-auth/BGHPCLKH5ABIYFUR3WRJJSTY52DGLAVCNFSM6AAAAABDKI2OY2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANRRGQZTEOBZGE .
You are receiving this because you commented.  https://github.com/notifications/beacon/BGHPCLL5Y2EQP2BQMGP45ZLY52DGLA5CNFSM6AAAAABDKI2OY2WGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTT2334DW.gif Message ID: @.*** @.***> >

😉
https://youtu.be/DllqYauCWqw?si=-zTdJIhhCmT1JYp9

symbols added ;)


setData for new records

using:

deepstream 3.0 (docker)
js client 2.3.0
no record test/blah is created before setData

this code works:
setData('test/blah', {item:'blah'})

this code does not, the write is not commited:
setData('test/blah', 'mypath', {item:'blah'})

this code works, the write is commited:
const tmp = ds.record.getAnonymousRecord();
tmp.setName("test/blah");
setData('test/blah', 'mypath', {item:'blah'})

if no record exists, setData will create the record only if the path is not specified.

Thank you for raising! We'll try get a fix in for this in soon!

@mitel I ran the following script
const deepstream = require('deepstream.io-client-js')

const client = deepstream(localhost:6020)
const recordName = `test/record-${Date.now()}`

client.login(() => {
  client.record.setData(recordName, 'path', { blah: 'thing' })

  setTimeout(() => {
    client.record.snapshot(recordName, (err, data) => {
      console.log(err, data)
    })
  }, 1000)
})

and got the following console output:
null { path: { blah: 'thing' } }

Are you using any storage or cache layers? And could you please try again with deepstream v3.1.0?

just tested with deepstream 3.1 and it behaves exactly the same.
yes, using Postgres 9.6 and redis.
so when i wrote that the write is not committed, i meant that the record is not committed to Postgres.
btw - the docker image with the 'latest' tag is still 3.0 in docker hub.
thank you

Just tested with:

deepstream 3.1.0
postgres 9.6.1

and am seeing the correct data in Postgres.

Will release 3.1.0 to dockerHub now, could you test with that and let us know?

Thanks Alex, the docker image is now 3.1.
Tested and the behaviour is the same, which is quite weird because my test is pretty much the same.
The only difference might be that my deepstream client is running on server-side (node.js).
Thanks for the support

Also running my client via node, however once it reaches the server this doesn't matter.
Could you get back to me with the full script you're using?
I see you using a function setData which is possibly different to me using client.record.setData

ok, i discovered the cause.
i'm using storageHotPathPatterns for that particular record.
i suppose this is the normal behaviour though, it just that it's not documented.
thank you

Thanks for clarifying, the error you said shouldn't happen and we will fix the underlying issue (patch ontop of an empty object by default)

Related https://github.com/deepstreamIO/deepstream.io/issues/861

storageHotPathPatterns should reject patches with an error.
https://github.com/deepstreamIO/deepstream.io/blob/master/src/record/record-handler.ts#L199


Running Legal dataset

I'm trying to reproduce the results for the Legal dataset.
But it seems I'm unable to load it in a server with 400GB RAM.
Is there something I am missing? Are we supposed to do something else for this dataset? How many GBs did your machine have?

Hi there,
Thank you for reaching out!
The Legal graph is the biggest one. We run the experiment on the legal graph with a 1008GB RAM server.
You can try on other graphs which are much smaller than the legal graph.
Best,
Bowen


Lazygit

⚠ Please verify that this feature request has NOT been suggested before.

[X] I checked and didn't find a similar feature request

🏷 Feature Type
New Addon
🔖 Feature description
I'd like to have lazygit builtin.
✔ Solution
https://github.com/kdheepak/lazygit.nvim will work nicely
❓ Alternatives
When toggleterm is enabled, you could also use https://github.com/akinsho/toggleterm.nvim#custom-terminals
📝 Additional Context
No response

toggleterm custom terminals could be a nice addition through a bool option, so user can choose whether or not to use it
will get on this soon:tm:

Closed by #63.


cordova-common singleton rule fix in tools-release

Platforms affected
All
What does this PR do?
Change "??? principle" to more sensical "cordova-common singleton rule" in Tools release planning section, in response to https://github.com/apache/cordova-coho/pull/185#discussion_r207050178
What testing has been done on this change?
Quick visual inspection of: https://github.com/apache/cordova-coho/blob/e841b9110c4612e3ae3f8a4d15c0a93dcfe52206/docs/tools-release-process.md#cordova-common-singleton-rule
Checklist

Reported an issue in the JIRA database
Commit message follows the format: "CB-3232: (android) Fix bug with resolving file paths", where CB-xxxx is the JIRA ID & "android" is the platform affected.
Added automated test coverage as appropriate for this change.

P.S. This and related changes are intended to be quick fixes made as I keep working on the patch releases. I think these quick fixes are needed to keep as much consistency between the document and the reality of what we need to do as practically possible. I think it would be good for one of us to go through a more thorough cleanup (someday).


feat: add readonly flag

Please check below, if the PR fulfills these requirements:

[x] Commit(s) and code follow the repositories guidelines.
[x] Test(s) have been added or updated to support these change(s).
[ ] Doc(s) have been added or updated to support these change(s).

Associated Links:

https://github.com/hauler-dev/hauler/issues/201

Types of Changes:

Defaults running registry to be readonly, adds --readonly to default readonly behavior.

Proposed Changes:

Additional --readonly flag.

Verification/Testing of Changes:

Add content to hauler store.
Start hauler registry with no additional flags, see behavior of registry is able to push to. Tear down.
Start hauler registry with --readonly flag, see behavior which denies push to registry.

Additional Context:

See https://github.com/hauler-dev/hauler/issues/201

Secure by default... :D

Hey @wcrum, thank you for contributing and taking the time to put this together! It's been on our list for awhile.
I updated your pull request to change the language from Writeable to ReadOnly. We wanted to keep the same values as the configuration file and get this merged for v1.0.5 this week.

Do you want me to update https://github.com/hauler-dev/hauler-docs?

Again, with current logic this breaks due to distribution logic.
panic: readonly config key must contain additional keys

goroutine 1 [running]:
github.com/distribution/distribution/v3/registry/handlers.NewApp({0x108f7a5f8?, 0x140004e7e60?}, 0x140006b6700)
	/Users/williamcrum/go/pkg/mod/github.com/distribution/distribution/v3@v3.0.0-20221208165359-362910506bc2/registry/handlers/app.go:143 +0x1dec
github.com/distribution/distribution/v3/registry.NewRegistry({0x108f7a5f8?, 0x140004e7e60?}, 0x140006b6700)
	/Users/williamcrum/go/pkg/mod/github.com/distribution/distribution/v3@v3.0.0-20221208165359-362910506bc2/registry/registry.go:156 +0x114
github.com/rancherfederal/hauler/internal/server.NewRegistry({0x108f7a5f8?, 0x140004e7e60?}, 0x140006b6700)
	/Users/williamcrum/Coding/Github/hauler/internal/server/registry.go:20 +0x28
github.com/rancherfederal/hauler/cmd/hauler/cli/store.ServeRegistryCmd({0x108f7a5f8, 0x140004e7740}, 0x140004e8040, 0x0?)
	/Users/williamcrum/Coding/Github/hauler/cmd/hauler/cli/store/serve.go:66 +0x1b0
github.com/rancherfederal/hauler/cmd/hauler/cli.addStoreServeRegistry.func1(0x14000014f00?, {0x1023ac5b7?, 0x4?, 0x1023ac5bb?})
	/Users/williamcrum/Coding/Github/hauler/cmd/hauler/cli/store.go:141 +0x6c
github.com/spf13/cobra.(*Command).execute(0x14000014f00, {0x1400045e2c0, 0x2, 0x2})
	/Users/williamcrum/go/pkg/mod/github.com/spf13/cobra@v1.8.0/command.go:983 +0x840
github.com/spf13/cobra.(*Command).ExecuteC(0x1400004e900)
	/Users/williamcrum/go/pkg/mod/github.com/spf13/cobra@v1.8.0/command.go:1115 +0x344
github.com/spf13/cobra.(*Command).Execute(...)
	/Users/williamcrum/go/pkg/mod/github.com/spf13/cobra@v1.8.0/command.go:1039
github.com/spf13/cobra.(*Command).ExecuteContext(0x108f7a5c0?, {0x108f7a5f8?, 0x140004e7740?})
	/Users/williamcrum/go/pkg/mod/github.com/spf13/cobra@v1.8.0/command.go:1032 +0x48
main.main()
	/Users/williamcrum/Coding/Github/hauler/cmd/hauler/main.go:29 +0x130

Do you want me to update https://github.com/hauler-dev/hauler-docs?

If you have the time then that would be great! We have a few things missing from the docs right now.


[Discogapic] Better configgen package names

Make Discovery-based bootstrapped GAPIC config have better generated package names.
See https://github.com/googleapis/googleapis/blob/master/google/cloud/language/v1/language_gapic.yaml for an example of standard generated package names.
Impetus for this: whenever I regen compute_gapic.yaml with configgen (example), the java package name always needs to be manually-reverted.

PTAL

Codecov Report

Merging #2476 into master will decrease coverage by <.01%.
The diff coverage is 75%.

@@             Coverage Diff              @@
##             master    #2476      +/-   ##
============================================
- Coverage      86.8%   86.79%   -0.01%
  Complexity     5365     5365
============================================
  Files           459      459
  Lines         21179    21180       +1
  Branches       2309     2310       +1
============================================
- Hits          18384    18383       -1
  Misses         1972     1972
- Partials        823      825       +2

Impacted Files
Coverage Δ
Complexity Δ

.../configgen/transformer/DiscoConfigTransformer.java
97.46% <75%> (-1.25%)
14 <1> (ø)

...egen/configgen/mergers/LanguageSettingsMerger.java
94.5% <0%> (-1.1%)
7% <0%> (ø)

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 03f61fb...82547b9. Read the comment docs.

Codecov Report

Merging #2476 into master will decrease coverage by <.01%.
The diff coverage is 75%.

@@             Coverage Diff              @@
##             master    #2476      +/-   ##
============================================
- Coverage      86.8%   86.79%   -0.01%
  Complexity     5365     5365
============================================
  Files           459      459
  Lines         21179    21180       +1
  Branches       2309     2310       +1
============================================
- Hits          18384    18383       -1
  Misses         1972     1972
- Partials        823      825       +2

Impacted Files
Coverage Δ
Complexity Δ

.../configgen/transformer/DiscoConfigTransformer.java
97.46% <75%> (-1.25%)
14 <1> (ø)

...egen/configgen/mergers/LanguageSettingsMerger.java
94.5% <0%> (-1.1%)
7% <0%> (ø)

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 03f61fb...82547b9. Read the comment docs.

PTAL

PTAL


Install from VSIX and Workspace Trust: Possible bug

Issue Type: Bug
When installing an extension from a VSIX, using the "Install from VSIX" menu, it will not execute until:
For VSCode: Turn on Workspace Trust to untrust and re-trust folder
For Insiders: Either above option or reload Insiders
Just reloading VSCode will not enable the newly installed extension,
and both Insiders and VSCode will not just execute the extension correctly on first installation.
I have not tested installing through the --install-extensions flag from the terminal.
VS Code version: Code - Insiders 1.58.0-insider (4c952751a88154ff4c375b1ca78293ab53a5792a, 2021-07-06T22:43:23.493Z)
OS version: Windows_NT x64 10.0.19043
Restricted Mode: No

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-1065G7 CPU @ 1.30GHz (8 x 1498)

GPU Status
2d_canvas: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: enabledopengl: enabled_onrasterization: enabledskia_renderer: enabled_onvideo_decode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
31.59GB (18.89GB free)

Process Argv
--crash-reporter-id ff30afff-b16f-4fd2-9cf0-85503e204fc4

Screen Reader
no

VM
0%

Extensions (1)

Extension
Author (truncated)
Version

deepmerge
Mic
0.3.3

A/B Experiments
vsins829:30139715
vsliv368cf:30146710
vsreu685:30147344
vspor879:30202332
vspor708:30202333
vspor363:30204092
vspre833:30321513
vshan820:30294714
vscus158:30321503
vscod805cf:30301675
bridge0702cf:30333156

False alarm. I'm sorry.
I just wrote bad code.


Web Account Manger (WAM) Login Failed within an Azure Government Context

This is autogenerated. Please review and update as needed.
Describe the bug
The following announcement was posted during a login process and so I wanted to test it.. it did not work within an Azure Government context.
Announcement
[Windows only] Starting in May 2023, Azure CLI will authenticate using the [Web Account Manager](https://learn.microsoft.com/windows/uwp/security/web-account-manager) (WAM) broker by default.

To help us collect feedback on the new login experience, you may opt-in to use WAM by running the following commands:

az config set core.allow_broker=true
az account clear
az login

I added the set cloud environment before login.
az config set core.allow_broker=true
az account clear
az cloud set --name AzureUSGovernment
az login

Command Name
az login
Errors:
Please select the account you want to log in with.
The command failed with an unexpected error. Here is the traceback:
MsalRuntime won't work unless this one more redirect_uri is registered to current app: ms-appx-web://Microsoft.AAD.BrokerPlugin/04b07795-8ddb-461a-bbee-02f9e1bf7b46
Traceback (most recent call last):
  File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\knack/cli.py", line 233, in invoke
  File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 663, in execute
  File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 726, in _run_jobs_serially
  File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 697, in _run_job
  File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 333, in __call__
  File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/command_operation.py", line 121, in handler
  File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/command_modules/profile/custom.py", line 139, in login
  File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/_profile.py", line 154, in login
  File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/auth/identity.py", line 153, in login_with_auth_code
  File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msal/application.py", line 1813, in acquire_token_interactive
  File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msal/application.py", line 1924, in _acquire_token_interactive_via_broker
  File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msal/broker.py", line 187, in _signin_interactively
  File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msal/broker.py", line 89, in _convert_result
  File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msal/broker.py", line 55, in _convert_error
msal.broker.RedirectUriError: MsalRuntime won't work unless this one more redirect_uri is registered to current app: ms-appx-web://Microsoft.AAD.BrokerPlugin/04b07795-8ddb-461a-bbee-02f9e1bf7b46
To check existing issues, please visit: https://github.com/Azure/azure-cli/issues
To open a new issue, please run `az feedback`

To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

Put any pre-requisite steps here...

az config set core.allow_broker=true
az account clear
az cloud set --name AzureUSGovernment
az login

Expected Behavior
If this an Azure AD team issue, please note the login process does not work for Azure Government till it is resolved, especially if WAM is going to be turned on by default this month.
Expected a successful login with the WAM login method. It appears the app/resource within Azure Government AAD environments, isn't full setup or present for this login method.
Environment Summary
Windows-10-10.0.22000-SP0
Python 3.10.10
Installer: MSI

azure-cli 2.46.0

Additional Context
Azure AD snippets that might help identify the issue:
MFA reported error (accepted FIDO2 login, but this error occurred):

The reply address is missing, misconfigured, or does not match reply addresses configured for the application. Try out the resolution listed at https://docs.microsoft.com/azure/active-directory/application-sign-in-problem-federated-sso-gallery#the-reply-address-does-not-match-the-reply-addresses-configured-for-the-application. If you still see issues, contact the application owner or app admin.

---
Request ID
3c910170-dbdb-4c71-959f-ff0e36431d00
Correlation ID
c2c5b1b5-8f6e-45c0-8dd7-dce89f17efe1
Authentication requirement
Multifactor authentication
Status
Failure
Continuous access evaluation
No
Sign-in error code
50011
Failure reason
The {redirectTerm} '{replyAddress}' specified in the request does not match the {redirectTerm}s configured for the application '{identifier}'. Make sure the {redirectTerm} sent in the request matches one added to your application in the Azure portal. Navigate to {akamsLink} to learn more about how to fix this. {detail}
Additional Details
Developer error - the app is attempting to sign in without the necessary or correct authentication parameters.

---

User type
Member
Cross tenant access type
None
Application
Microsoft Azure CLI
Application ID
04b07795-8ddb-461a-bbee-02f9e1bf7b46
Resource
Windows Azure Service Management API - Duplicate
Resource ID
797f4846-ba00-4fd7-ba43-dac1f8f63013

Thank you for opening this issue, we will look into it.

I upgraded to azure-cli 2.48.1, and still the same error occurs.

Still an issue in 2024...


API Transactions Failing Due to Lack of Support for null Values in API calls

As of the recent API update on October 20th, 2023, the API has stopped accepting null values in metadata calls. This change was unintended and broke transaction creation for our implementation as well. The issue has been acknowledged by the API maintainers as per their status update:

"An unintended consequence of this release is that we also did not accept null values anymore in the API and throw an error. This was not clear initially as a consequence, and because adding null values in JSON is bad development practice and also warned against explicitly in our API documentation, we did not broadly test this scenario."
- API Status Update, Oct 23, 2023

This has impacted our transaction creation and resulted in the status 'Waiting for document'.
Expected Behavior
The client should automatically remove fields that are set to null, instead of placing null values or causing transaction failures.
Current Behavior
Transaction creation fails when null values are passed in the body payload of the API call.
Steps to Reproduce

Create a new transaction via the API.
Include null values in the metadata.
Transaction creation fails with status 'Waiting for document'.

Suggested Fix
On the consumer end, add the following JSON serializer settings to ignore null values:
new JsonSerializerSettings
{
    NullValueHandling = NullValueHandling.Ignore
}

In the JsonContent<T> class, update the ToJson function as follows:
private static string ToJson(T value)
{
    return JsonConvert.SerializeObject(value, new JsonSerializerSettings
    {
        NullValueHandling = NullValueHandling.Ignore
    });
}

On the API end Signhost has performed a fix to accept null values for the time being. We are reaching out to change the .Net client library as well.


Middleware initialisation + better middleware docs

Fixes #171
Proposed changes

BREAKING: change the signature of Middleware from (inner, **kwargs) -> None to (inner, app, **kwargs) -> None.
Create a base ASGIMiddleware that also expects inner and app
Lots of docs improvements

These changes allow to perform app initialisation in middleware classes.

Codecov Report

Merging #174 into master will decrease coverage by 0.09%.
The diff coverage is 95.65%.

@@            Coverage Diff            @@
##           master     #174     +/-   ##
=========================================
- Coverage   98.95%   98.86%   -0.1%
=========================================
  Files          21       21
  Lines         957      969     +12
  Branches       87       87
=========================================
+ Hits          947      958     +11
- Misses          6        7      +1
  Partials        4        4

Impacted Files
Coverage Δ

bocadillo/applications.py
100% <100%> (ø)
:arrow_up:

bocadillo/errors.py
100% <100%> (ø)
:arrow_up:

bocadillo/app_types.py
100% <100%> (ø)
:arrow_up:

bocadillo/middleware.py
96.29% <91.66%> (-3.71%)
: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 984d3ac...830a0a6. Read the comment docs.