Sessions > Filter: Add Connector ID filter

@mahdibenromdhane is there backend impl also?

@mahdibenromdhane is there backend impl also?

Is there a particular use case for this ? Are the Connectors Ids necessarily a capital letter in the A-Z range ?

Is there a particular use case for this ? Are the Connectors Ids necessarily a capital letter in the A-Z range ?

No particular use case, It's a connector filter in A-Z capital letter.

Is there a particular use case for this ? Are the Connectors Ids necessarily a capital letter in the A-Z range ?

One of our customer wants to export only sessions for a given connector.

One of our customer wants to export only sessions for a given connector.
OK the functionality works well, I have just 2 remarks before closing the issue :

The Connector ID that is exported is the backend's so it's a numerical value rather than the "translated" A-Z letter. I noticed that in the csv files I got. I'm not sure it's an issue however I thought I'd take note of it anyway.
The design of the functionality is simple and accessible, however I think there could be a way to integrate future use cases (i.e. choosing different connectors for multiple stations). However this doesn't fall into the current use case cited above and could be left for if/when there is an actual need.

The Connector ID that is exported is the backend's so it's a numerical value rather than the "translated" A-Z letter. I noticed that in the csv files I got. I'm not sure it's an issue however I thought I'd take note of it anyway.

Connector ID on REST endpoint is numerical which is fine I think.

The design of the functionality is simple and accessible, however I think there could be a way to integrate future use cases (i.e. choosing different connectors for multiple stations). However this doesn't fall into the current use case cited above and could be left for if/when there is an actual need.

Yes why not but not in the context of that issue.

Then I'll close the issue.


Modify the webhook to allow the use of duck types.

This change enables us to define a duck type that applies to a whole class of GroupVersionKinds and leverage it to perform generic validation, defaulting, etc.
Fixes: #322

An example of using this to synthesize patches over a duck type (in this case "pod speccable" types) can be found here

/lgtm


Fixes create from value on subclasses

This fixes creating instances using the fromValue() method on sub-classes.

@gjm thanks for the PR!

@thunderer Glad to help! :smile: Want to tag a new release with it?

@gjm just tagged v0.2.1. I planned to merge currently open PRs and release v0.3, but a new patch release is also a good idea. :)


Automated cherry pick of #6013: fix: network allocation according to sharing status

Cherry pick of #6013 on release/3.2.
#6013: fix: network allocation according to sharing status

Codecov Report

Merging #6019 into release/3.2 will decrease coverage by 0.00%.
The diff coverage is 0.40%.

@@               Coverage Diff               @@
##           release/3.2    #6019      +/-   ##
===============================================
- Coverage         7.02%    7.02%   -0.01%
===============================================
  Files              643      644       +1
  Lines           110333   110409      +76
===============================================
  Hits              7756     7756
- Misses          101978   102054      +76
  Partials           599      599

Flag
Coverage Δ

#aFlag
7.02% <0.40%> (-0.01%)
:arrow_down:

Impacted Files
Coverage Δ

pkg/cloudcommon/db/enabledstatusdomainresource.go
0.00% <ø> (ø)

pkg/cloudcommon/db/enabledstatusinfrasresource.go
0.00% <ø> (ø)

pkg/cloudcommon/db/enabledstatusstandalone.go
0.00% <ø> (ø)

pkg/cloudcommon/db/infraresource.go
0.00% <0.00%> (ø)

pkg/cloudcommon/db/namevalidator.go
0.00% <ø> (ø)

pkg/cloudcommon/db/sharablebase.go
7.33% <0.00%> (+0.02%)
:arrow_up:

pkg/cloudcommon/db/sharablevirtual.go
0.00% <0.00%> (ø)

pkg/cloudcommon/db/standalone.go
1.71% <0.00%> (+0.06%)
:arrow_up:

pkg/cloudcommon/db/statusbase.go
0.00% <ø> (ø)

pkg/cloudcommon/db/statusdomainresource.go
0.00% <ø> (ø)

... and 48 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 d9ec663...ca13731. Read the comment docs.

/lgtm
/approve


Copy terminal content with colors and font decoration

Please allow for coping (e.g. Ctrl+C / Ctrl+V) terminal content wit colors and font decoration, the same way source code can be copied, e.g. to MS Word as shown below. Currently only raw text is copied via clipboard.

@meganrogge It does NOT work - at least on my PC.


build error on ubuntu 16.04/CustusX

here is the error log:
cd /home/greatbme/dev/cx/FAST/build_Release/external/eigen/src && /usr/local/bin/cmake -P /home/greatbme/dev/cx/FAST/build_Release/external/eigen/src/eigen-stamp/download-eigen.cmake && /usr/local/bin/cmake -P /home/greatbme/dev/cx/FAST/build_Release/external/eigen/src/eigen-stamp/verify-eigen.cmake && /usr/local/bin/cmake -P /home/greatbme/dev/cx/FAST/build_Release/external/eigen/src/eigen-stamp/extract-eigen.cmake && /usr/local/bin/cmake -E touch /home/greatbme/dev/cx/FAST/build_Release/external/eigen/src/eigen-stamp/eigen-download
-- File already exists but no hash specified (use URL_HASH):
file='/home/greatbme/dev/cx/FAST/build_Release/external/eigen/src/f3a22f35b044.tar.gz'
Old file will be removed and new file downloaded from URL.
-- Downloading...
dst='/home/greatbme/dev/cx/FAST/build_Release/external/eigen/src/f3a22f35b044.tar.gz'
timeout='none'
-- Using src='https://bitbucket.org/eigen/eigen/get/f3a22f35b044.tar.gz'
-- Retrying...
-- Using src='https://bitbucket.org/eigen/eigen/get/f3a22f35b044.tar.gz'
-- Retry after 5 seconds (attempt #2) ...
-- Using src='https://bitbucket.org/eigen/eigen/get/f3a22f35b044.tar.gz'
-- Retry after 5 seconds (attempt #3) ...
-- Using src='https://bitbucket.org/eigen/eigen/get/f3a22f35b044.tar.gz'
-- Retry after 15 seconds (attempt #4) ...
-- Using src='https://bitbucket.org/eigen/eigen/get/f3a22f35b044.tar.gz'
-- Retry after 60 seconds (attempt #5) ...
-- Using src='https://bitbucket.org/eigen/eigen/get/f3a22f35b044.tar.gz'
CMake Error at eigen-stamp/download-eigen.cmake:157 (message):
Each download failed!
error: downloading 'https://bitbucket.org/eigen/eigen/get/f3a22f35b044.tar.gz' failed
     status_code: 1
     status_string: "Unsupported protocol"
     log:
     --- LOG BEGIN ---
     Protocol "https" not supported or disabled in libcurl

Closing connection -1
     --- LOG END ---
     error: downloading 'https://bitbucket.org/eigen/eigen/get/f3a22f35b044.tar.gz' failed
     status_code: 1
     status_string: "Unsupported protocol"
     log:
     --- LOG BEGIN ---
     Protocol "https" not supported or disabled in libcurl

Closing connection -1
     --- LOG END ---
     error: downloading 'https://bitbucket.org/eigen/eigen/get/f3a22f35b044.tar.gz' failed
     status_code: 1
     status_string: "Unsupported protocol"
     log:
     --- LOG BEGIN ---
     Protocol "https" not supported or disabled in libcurl

Closing connection -1
     --- LOG END ---
     error: downloading 'https://bitbucket.org/eigen/eigen/get/f3a22f35b044.tar.gz' failed
     status_code: 1
     status_string: "Unsupported protocol"
     log:
     --- LOG BEGIN ---
     Protocol "https" not supported or disabled in libcurl

Closing connection -1
     --- LOG END ---
     error: downloading 'https://bitbucket.org/eigen/eigen/get/f3a22f35b044.tar.gz' failed
     status_code: 1
     status_string: "Unsupported protocol"
     log:
     --- LOG BEGIN ---
     Protocol "https" not supported or disabled in libcurl

Closing connection -1
     --- LOG END ---
     error: downloading 'https://bitbucket.org/eigen/eigen/get/f3a22f35b044.tar.gz' failed
     status_code: 1
     status_string: "Unsupported protocol"
     log:
     --- LOG BEGIN ---
     Protocol "https" not supported or disabled in libcurl

Closing connection -1
     --- LOG END ---

I have enabled https on my curl,but it still report that : Protocol "https" not supported or disabled in libcurl,could I download that eigen manually ?what should i do?

I have never experienced this error on ubuntu 16 and 18. I use the cmake debian package (e.g. sudo apt install cmake) or the one bundled with CLion which is usually quite up to date.
If you are building cmake from source you need to take some extra steps to enable curl and ssl/https support: https://github.com/ruslo/hunter/issues/328

Closing due to inactivity


Shell variable expansion

Issue Type

Bug report

Molecule and Ansible details
$ ansible --version && molecule --version
ansible 2.9.11
  config file = /home/vagrant/ansible.cfg
  configured module search path = ['/home/vagrant/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /home/vagrant/.local/lib/python3.6/site-packages/ansible
  executable location = /home/vagrant/.local/bin/ansible
  python version = 3.6.9 (default, Jul 17 2020, 12:50:27) [GCC 8.4.0]
molecule 3.0.6
   ansible==2.9.11 python==3.6

Molecule installation method (one of):

pip

Ansible installation method (one of):

pip

Detail any linters or test runners used:
|
  set -e
  yamllint -f colored .
  ansible-lint --force-color

Desired Behavior
Using shell expansion + fails inside of molecule.yml instead of correctly expanding/replacing
Trying to only include formatting characters if a variable is defined.
platforms:
  - name: instance${CI_JOB_ID:+-}${CI_JOB_ID}

According to the docs this should produce an instance name of either instance or instance-<CI_JOB_ID>.
Further shell expansion information:

${parameter:+word}
parameter is null or unset, nothing is substituted, otherwise the expansion of word is substituted.

Actual Behaviour
Please give some details of what is actually happening.
Include a minimum complete verifiable example with
output of running molecule --debug.
ERROR: parsing config file '/ansible/roles/ca-sso-policyserver/molecule/default/molecule.yml'.

Invalid placeholder in string: line 11, col 19
---
dependency:
  name: galaxy
driver:
  name: docker
lint: |
  set -e
  yamllint -f colored .
  ansible-lint --force-color
platforms:
  - name: instance${CI_JOB_ID:+-}${CI_JOB_ID}

Hello,
I believe this is due to the fact that a fallback must be provied for the value if the variable is missing
- name: instance${CI_JOB_ID:-HELLO}

Produces instanceHELLO without passing CI_JOB_ID.
When passed CI_JOB_ID=WORLD, the resulting name is correctly instanceWORLD

@zyphermonkey have you figured this out?

I think you missing the + it acts as a replacement. So if the first variable has a value then use whatever is after the +.
I don't have any issue with the more commonly use -.

It isn't a full BASH compatible setup as @fourstepper correctly suggested. Here is the PR where I implemented the BASH style expansion, the implementation is rather simple and just checks for :-
Might be worth noting in the docs :)
https://github.com/ansible-community/molecule/pull/2223

@zyphermonkey can this be closed?

@zyphermonkey can this be closed?

For sure, but I do agree the limited BASH functionality should be noted in the docs when possible or to make an update to include compatibility for :+.
I'll let you decide if you want to keep this open as a task to add :+ or close it if there are no plans to do so.


close #1

Pull Request Test Coverage Report for Build 447048538

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 95.906%

Totals

Change from base Build 424046068:
0.0%

Covered Lines:
164

Relevant Lines:
171

💛  - Coveralls


Philips Hue fails to register

Home Assistant release with the issue:

0.88.1
Last working Home Assistant release (if known):
First tried in 0.87.1 but same issue experienced
Operating environment (Hass.io/Docker/Windows/etc.):

Hassbian 0.11.1
Component/platform:

Philips Hue
Version 3.14.0 (10485)
Hub SW: 1901181
Bulb SW: 1.46.13_r26312
Remote SW: <IP_ADDRESS>46
Description of problem:
The Philips Hue integration is recognised in the ‘Integrations’ section of the configuration panel. However when I click on configure and follow the prompts to press the button on the hue, I get
2019-02-21 19:02:23 WARNING (MainThread) [homeassistant.components.hue] Connected to Hue at <IP_ADDRESS> but not registered.
2019-02-21 19:02:58 ERROR (MainThread) [homeassistant.components.hue] Error connecting to the Hue bridge at <IP_ADDRESS>
2019-02-21 19:02:58 ERROR (MainThread) [homeassistant.components.hue] Error connecting to the Hue bridge at <IP_ADDRESS>

Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):
I have left the Hue to be auto discovered, but even adding the IP address in manually does not work (and two Hue components show in the integrations section).
Traceback (if applicable):

Additional information:
This is the screen I get in the GUI

I've asked on the forum and in discord to see if I'm missing anything obvious but had no replies. I have the IKEA Tradfri hub at home too, but I have switched this off and restarted HA before trying again to register the hub in case there is any interference with Zigbee channels.

@starkillerOG @awarecan @MizterB can you help here?

The detail error message was swallowed, maybe you can change the code to print the detail error out
https://github.com/home-assistant/home-assistant/blob/a4bb35142c5d71db486da16423de744a85e896fa/homeassistant/components/hue/bridge.py#L155-L157
Change to
    except (asyncio.TimeoutError, aiohue.RequestError):
        LOGGER.error("Error connecting to the Hue bridge at %s", host, exc_info=True)
        raise CannotConnect

just change it to LOGGER.exception(  :)

Are you guys asking me to do this?

I have know idea were this comes from, sorry but I don't know how to help.


--share sort of broken

Hi,
--share does often not work, around 50% I'd say. Seems to be especially not working when I get high speeds :-/ then I get:

Share results: http://www.speedtest.net/result/0.png

This is out of my control. I do not own this API, it is undocumented, and not intended for use outside of the context of speedtest.net.  This is a best effort functionality.


Why Any in unsafeMkTypedValidator :: Scripts.Validator -> TypedValidator Any

Why not
unsafeMkTypedValidator :: Scripts.Validator -> TypedValidator a

I can coerce from TypedValidator Any to anything, because TypedValidator has phantom role, but I think that role is wrong too, and you need to have
type role TypedValidator nominal

But then I'd need to use unsafeCoerce.

Yes, you're right. This wasn't really designed to guard against coerce, but it doesn't cost us anything to put those guards in.


Ignore null fields not working

Hello,
I am making a service to update an entity in a Spring boot application. I am having a problem where if the property from the source is null but the property in the destination is not null, then it'll become null. I want that the source's properties keep their value if the source's ones are null.
This is my code:
   @Bean
    public ModelMapper modelMapper() {
        ModelMapper modelMapper = new ModelMapper();
        modelMapper.getConfiguration().setPropertyCondition(Conditions.isNotNull());
        modelMapper.createTypeMap(String.class, Date.class);
        modelMapper.addConverter(new StringToDate());
        modelMapper.addConverter(new DateToString());
        return modelMapper;
    }

How I update the value:
   @Override
    public void editUser(final User user) {
        UserDocument userDocument = this.usersRepository.findByIdAndActivo(user.getId(), true)
                .orElseThrow(UserNotFoundException::new);

        userDocument = this.modelMapper.map(user, UserDocument.class);
        this.usersRepository.save(userDocument);
    }

The user object has 1 property set at null while the object userDocument has it with a value, then when I save it in the database that value is gone (because it has transformed into null).
What am I doing wrong?
Thanks.

Okay so that configuration option isn't for what I thought it seems. I achieved what I wanted with this:
   @Override
    public void editUser(final User user) {
        UserDocument userDocument = this.usersRepository.findByIdAndActivo(user.getId(), true)
                .orElseThrow(UserNotFoundException::new);

        this.modelMapper.map(user, userDocument);
        this.usersRepository.save(userDocument);
    }


[Event Request] codeunit 5802  OnAfterBufferAdjmtPosting(TempInvtPostBuf, ValueEntry, PostBufDimNo) in function BufferAdjmtPosting

Hello,
would it be possible to  add a new event OnAfterBufferAdjmtPosting(TempInvtPostBuf, ValueEntry, PostBufDimNo) in codeunit 5802 in function BufferAdjmtPosting as same as you already did for function BufferSalesPosting?
local procedure BufferAdjmtPosting(ValueEntry: Record "Value Entry"; CostToPost: Decimal; CostToPostACY: Decimal; ExpCostToPost: Decimal; ExpCostToPostACY: Decimal)
var
    IsHandled: Boolean;
begin
    OnBeforeBufferAdjmtPosting(ValueEntry, TempGlobalInvtPostingBuffer, CostToPost, CostToPostACY, ExpCostToPost, ExpCostToPostACY, IsHandled);
    if IsHandled then
        exit;

    with ValueEntry do
        case "Entry Type" of
            "Entry Type"::"Direct Cost":
                begin
                    // Posting adjustments to Interim accounts (Service)
                    if (ExpCostToPost <> 0) or (ExpCostToPostACY <> 0) then
                        InitInvtPostBuf(
                          ValueEntry,
                          TempGlobalInvtPostingBuffer."Account Type"::"Inventory (Interim)",
                          TempGlobalInvtPostingBuffer."Account Type"::"COGS (Interim)",
                          ExpCostToPost, ExpCostToPostACY, true);
                    if (CostToPost <> 0) or (CostToPostACY <> 0) then
                        InitInvtPostBuf(
                          ValueEntry,
                          TempGlobalInvtPostingBuffer."Account Type"::Inventory,
                          TempGlobalInvtPostingBuffer."Account Type"::"Inventory Adjmt.",
                          CostToPost, CostToPostACY, false);
                end;
            "Entry Type"::Revaluation,
          "Entry Type"::Rounding:
                InitInvtPostBuf(
                  ValueEntry,
                  TempGlobalInvtPostingBuffer."Account Type"::Inventory,
                  TempGlobalInvtPostingBuffer."Account Type"::"Inventory Adjmt.",
                  CostToPost, CostToPostACY, false);
            else
                ErrorNonValidCombination(ValueEntry);
        end;
   OnAfterBufferAdjmtPosting(TempInvtPostBuf, ValueEntry, PostBufDimNo);
end;

[IntegrationEvent(false, false)]
local procedure OnAfterBufferAdjmtPosting(var TempInvtPostingBuffer: array[20] of Record "Invt. Posting Buffer" temporary; ValueEntry: Record "Value Entry"; var PostBufDimNo: Integer)
begin
end;

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 12553.


SPIRV-Cross does not work on Android

SPIRV-Cross is used in gfx_device_gl, but it doesn't compile for Android.

Thanks, I opened grovesNL/spirv_cross#55. Could you provide a stack trace?

I think the problem is that it tries to access STL headers that aren't available.
OPT_LEVEL = Some("0")
TARGET = Some("arm-linux-androideabi")
HOST = Some("x86_64-unknown-linux-gnu")
TARGET = Some("arm-linux-androideabi")
TARGET = Some("arm-linux-androideabi")
HOST = Some("x86_64-unknown-linux-gnu")
CXX_arm-linux-androideabi = Some("/opt/android-ndk-linux/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-g++")
TARGET = Some("arm-linux-androideabi")
HOST = Some("x86_64-unknown-linux-gnu")
CXXFLAGS_arm-linux-androideabi = Some("--sysroot /opt/android-ndk-linux/platforms/android-18/arch-arm")
DEBUG = Some("true")
TARGET = Some("arm-linux-androideabi")
OPT_LEVEL = Some("0")
TARGET = Some("arm-linux-androideabi")
HOST = Some("x86_64-unknown-linux-gnu")
TARGET = Some("arm-linux-androideabi")
TARGET = Some("arm-linux-androideabi")
HOST = Some("x86_64-unknown-linux-gnu")
CXX_arm-linux-androideabi = Some("/opt/android-ndk-linux/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-g++")
TARGET = Some("arm-linux-androideabi")
HOST = Some("x86_64-unknown-linux-gnu")
CXXFLAGS_arm-linux-androideabi = Some("--sysroot /opt/android-ndk-linux/platforms/android-18/arch-arm")
DEBUG = Some("true")
TARGET = Some("arm-linux-androideabi")
CXX_arm-linux-androideabi = Some("/opt/android-ndk-linux/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-g++")
CXXFLAGS_arm-linux-androideabi = Some("--sysroot /opt/android-ndk-linux/platforms/android-18/arch-arm")
running: "/opt/android-ndk-linux/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-g++" "-O0" "-ffunction-sections" "-fdata-sections" "-fPIC" "--sysroot" "/opt/android-ndk-linux/platforms/android-18/arch-arm" "-g" "-Wall" "-Wextra" "-std=c++14" "-o" "/home/thomas/Workspace/gfx/target/arm-linux-androideabi/debug/build/spirv_cross-bc81ad2c713b855b/out/src/wrapper.o" "-c" "src/wrapper.cpp"
cargo:warning=src/wrapper.cpp:1:0: warning: ignoring #pragma warning  [-Wunknown-pragmas]
cargo:warning= #pragma warning(disable : 4996 4101)
cargo:warning= ^
cargo:warning=In file included from src/vendor/SPIRV-Cross/spirv_cross.hpp:21:0,
cargo:warning=                 from src/vendor/SPIRV-Cross/spirv_glsl.hpp:20,
cargo:warning=                 from src/vendor/SPIRV-Cross/spirv_hlsl.hpp:20,
cargo:warning=                 from src/wrapper.cpp:2:
cargo:warning=src/vendor/SPIRV-Cross/spirv_common.hpp:22:18: fatal error: cstdio: No such file or directory
cargo:warning= #include <cstdio>
cargo:warning=                  ^
cargo:warning=compilation terminated.
exit code: 1

--- stderr
thread 'main' panicked at '

Internal error occurred: Command "/opt/android-ndk-linux/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-g++" "-O0" "-ffunction-sections" "-fdata-sections" "-fPIC" "--sysroot" "/opt/android-ndk-linux/platforms/android-18/arch-arm" "-g" "-Wall" "-Wextra" "-std=c++14" "-o" "/home/thomas/Workspace/gfx/target/arm-linux-androideabi/debug/build/spirv_cross-bc81ad2c713b855b/out/src/wrapper.o" "-c" "src/wrapper.cpp" with args "arm-linux-androideabi-g++" did not execute successfully (status code exit code: 1).

', /home/thomas/.cargo/registry/src/github.com-1ecc6299db9ec823/cc-1.0.4/src/lib.rs:1984:5

@torkleyy I spent some time trying various Android build configurations and found that it seems to build fine without any changes in spirv_cross.
I added a sample Android job to Travis that runs cargo apk build on one of the examples -- you can find the configuration in android_gcc.sh and dependencies in .travis.yml.
I think we need to verify:

some C++ STL implementation is included through the stl flag (for example, --stl=libc++ passed to make_standalone_toolchain), or if verify it's included already if you're using the prebuilt NDK
the C++ STL implementation header files are included in CPATH so cargo apk will search it later (there are probably multiple ways to include this directory in the search path, but I just used the environment variable for now)

I'll try on another computer then, maybe my installation is broken?

Your installation is probably fine in general, it probably doesn't set some of this configuration by default.
I had lots of problems trying to get exactly the correct combination of environment variables and include paths needed for cargo-apk and NDK, but managed to simplify it down to the steps in android_gcc.sh (although it could still probably be simplified further). Maybe better defaults could be set through NDK installation or cargo-apk to remove some of this manual configuration.

Okay, tried setting CPATH, now I'm getting
cargo:warning=/opt/android-ndk-linux/sources/cxx-stl/llvm-libc++/include/support/android/locale_bionic.h:21:21: fatal error: xlocale.h: No such file or directory
cargo:warning= #include <xlocale.h>
cargo:warning=                     ^
cargo:warning=compilation terminated.

Which is funny because I do have that file..

What's your updated CPATH? Does it contain the same directories as the android_gcc CPATH, and do all of the directories actually exist on your computer?
Let's also be sure you're prepending and not replacing it, i.e. export CPATH=/opt/android-ndk-linux/sources/cxx-stl/llvm-libc++/include:$CPATH
Maybe you could list any other relevant compiler environment variables too, at least to compare against the android_gcc script.

@grovesNL should this be closed now as you can build it on Android?

Sure!

Oh, you didn't ask me ^^ Anyways, I think I can close this :)


Fix recalculation of invoice amount for taxfree orders

This fixes a bug concerning tax-free orders, to reproduce proceed as follow:

Generate a tax-free order. The invoice amount will be equal to the net invoice amount, which makes sense since no taxes apply.

Make changes to the order positions, e.g. add a new order position and save it

Expected behaviour: the order amount still is a net amount without taxes

Actual behaviour: the order amount is now a gross amount including taxes, which does not make sense, since this is a tax-free order

This PR also makes the code easier to understand, since previously the variable $invoiceAmountNet was used to sum up gross amounts in case of a net order, which is quite confusing.

Hey,
internally there is already a pull request for the ticket SW-14351.
        if ($this->taxFree) {
            $this->invoiceAmountNet = $invoiceAmount + $this->invoiceShippingNet;
            $this->invoiceAmount = $this->invoiceAmountNet;
        } elseif ($this->net) {
            $this->invoiceAmountNet = $invoiceAmount + $this->invoiceShippingNet;
            $this->invoiceAmount = $invoiceAmountNet + $this->invoiceShipping;
        }...

As far as I can see, both modifications are equivalent with regards to functionality. I would still propose to merge this PR as it fixes the confusing variable naming.

This PR is obsolete now since https://github.com/shopware/shopware/commit/bdc1c83a3b52ada60503dacdfdaced39e8d393e3 was merged.

Thank you @samuelvogel, closed this PR now.


Suggestion: add range of pages or number of neighboors prop

Hi! I'd like also suggest you some improvements like a prop to set up the range of pages you may like to show or just something like the number of neighboors to be shown in left and right side to current page, similar what was made to material-ui Pagination component.

Hey! yes. This is something I left for the future but seeing that people is using it, it's possible the time for implementation has come. Will be working on this in the near future.
Thanks for bringing this up

Hey! yes. This is something I left for the future but seeing that people is using it, it's possible the time for implementation has come. Will be working on this in the near future.
Thanks for bringing this up

Added this feature

Added this feature


Parameter naming in createAction doesn't make sense

Generally related to #47.
https://github.com/acdlite/redux-actions/blob/master/src/createAction.js#L5 calls the payload creator actionCreator, which is a very different thing.
Actually the signature of createAction in the README spells out pretty clearly what this parameter should be called.

Would you mind opening a PR to change this?

Closed in https://github.com/acdlite/redux-actions/commit/e7bdb2f6109ec196ce097bccd7026bf1497a1643.


chore(deps): update dependency prettier to v2.7.1

This PR contains the following updates:

Package
Type
Update
Change

prettier (source)
devDependencies
patch
2.7.0 -> 2.7.1

Release Notes

prettier/prettier
v2.7.1
Compare Source
diff
Keep useful empty lines in description (#13013 by @chimurai)

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by Renovate Bot.

Renovate Ignore Notification
As this PR has been closed unmerged, Renovate will now ignore this update (2.7.1). You will still receive a PR once a newer version is released, so if you wish to permanently ignore this dependency, please add it to the ignoreDeps array of your renovate config.
If this PR was closed by mistake or you changed your mind, you can simply rename this PR and you will soon get a fresh replacement PR opened.


This site can't provide a secure connection

i try to run the local version of the homebrewey but when i try to connect to localhost i get this
This site can't provide a secure connection
ERR_SSL_PROTOCOL_ERROR
How to fix this ?

Hi @dolfijn3000,
As you can see in https://github.com/naturalcrit/homebrewery/commit/21b83ead882eb8a0f87007c769ab86b04b0cd4bb, all routes are not automatically redirected to https
To fix this error, just comment or remove the following line of code in server.js
app.use(require('./server/forcessl.mw.js'));

Join our gitter chat - I think you will get answers for technical questions faster in chat than on github

Question answered. Closing this.

Another answer is to set an environment variable to:
NODE_ENV: local


batch: Use connection pool for grpc exchange.

Currently for each grpc call we create a new compute client, we should use connection pool to reduce latency.
See https://github.com/risingwavelabs/risingwave/blob/main/src/batch/src/execution/grpc_exchange.rs

FYI, we have a ComputeClientPool for caching compute client to each other compute node. Cloning the client will share a same underlying http2 connection.


Ident c202 real signin with facebook

Manditory Checks

[x] I added new tests for the issue I fixed or the feature I built
[x] I ran npm test for the package I'm modifying
[x] I used npm run commit instead of git commit

 IDENT/UAT6 Sign in with Facebook

 IDENT/UAT6 Sign in with Facebook


Update storage-how-to-mount-container-linux.md

adding RHEL 7.9 support
https://github.com/MicrosoftDocs/azure-docs/issues/90693

@DerekHerman-MSFT : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off


Speed up CI

The CI testing jobs seem to be very slow right now (about 4 minutes each), especially considering that we don't even have any tests.
I'm not 100% sure what is causing it to be so slow.
I noticed that it seems to re-download the nightly cargo components before executing the commands and that might be the issue.
Or the compilation is somehow still slow. That is unlikely though, as it is only building foxtrot itself and no dependencies (thanks to the caching).

Maybe the nightly target is not ideal for CI and we should specify a fixed version again?
I'm not sure if that would fix this issue.

The zld installation for macOS also adds 2 minutes, perhaps we can cache that.
Here is a reference CI run: https://github.com/janhohenheim/foxtrot/actions/runs/4652567474/jobs/8232859998?pr=254

Do you think #260 will help with this?

While it might help, I don't think it will solve the problem.

I noticed this line in the CI:

do you think this might be related?

Update again: I figured it out! #264
The Wasm build was clearing our target directory and invalidating the cache!
I also disabled multi-OS CIs because different OSs never really failed individually on CI but on release anyways (bundling and packaging a .dmg, for example).
I disabled Wasm and our build times are back in the range of ~5 min!


feat: summary table for qualifications

The get_summary endpoint was taking 30+ seconds to respond in production. This commit introduces the idea of 'summary tables', which get updated when the internal provider for the root prop is updated. We take the raw data, and then compute custom tables that cache the data, getting rid of the need to do the complex queries to get the information.
This is in a pretty raw state - if we decide that summary tables like this are a pattern we want more broadly, it'll certainly need some refactoring (like moving the summary table code into a single module, etc.)

bors merge


A question about MV2 in the future...

I am read readme，
But Brave say They will support MV2 as much as they can.
https://brave.com/blog/brave-shields-manifest-v3/
So, what would you do？thanks.

Not sure. I think unless Google remove my add-on from Chrome Web Store, this add-on is still available for those chromium based browsers which support MV2.  However no further updates for these bowers since Google may not let me upload updates which still using MV2.

Google Will Removes all MV2 add-on from Chrome Web Store, It has now been confirmed.
So I think You should uplaod old version with CRX files. (github?)
Because those chromium based browsers which support MV2 not setup again from chrome web store.

Done. https://github.com/jackyzy823/rajiko/releases/tag/v0.3.5


MH-12946 add event summary input translation

This PR is based on PR #290 and reintroduces the 'Input' prefix for presenting the input settings of the chosen capture agent in the summary of the add-event-dialog, this time with proper translation.

This work is sponsored by SWITCH.

@KatrinIhler conflicts detected

@gregorydlogan Fixed!


As a user of satellite sites I need a way to find the news articles

Duplicate of the already solved #920 @nilsml ?


[#1694]-Added python implementation of Fibonacci Heap

Assigned Issue Number ?
#1694
Location of the file(s) ?
Data-Structures => Tree => Fibonacci-Heap => Fibonacci-Heap.py
Checklist

[x] I've followed the contributing guidelines
[x] The content added isn't directly copied from any sources like gfg, tutorialpoint, etc.
[x] Input has been taken dynamically.
[x] I've referred the correct issue number.
[x] Comments have been added
[x] I've  synced-up my forked repo.
[x] Ain't pushing from the main branch.

@ahampriyanshu Please review & merge.


Front door changes the letter case of header

Front door changes the letter case of header when redirection is configured.
Eg: Header Accept gets converted to accept.

@klogan12 , Can you please provide me the URL where you are seeing this behavior. If you bypass AFD and directly access the resource are you seeing the same behavior.
Are you seeing it in Request header or Response header? As far as I know AFD will not alter the headers.
Please provide me the URL with sample output to investigate further.

@klogan12 ,Do you have any update on this issue?

Yeah , i see the case being altered in the header from brower network tab.
This does not happens when we try directly with out using AFD...

Did you configure redirect rule in AFD or in the backend ?

Yeah , there is a redirect configured to backend .. which rul url rewrite also.

Can you share me the URL where you are facing this issue?  I can test this from my end

@klogan12 , do you have any update on this issue?

@klogan12 , I will close this issue for now. Please drop an email to<EMAIL_ADDRESS>with exact details of AFD and backend configuration to troubleshoot further.


Implement "oneimage migrate"

Description
Currently oneimage command can clone an image to a different image datastore but that image will have a different ID. The migrate command would keep the image ID moved to a different image datastore. In that case there is the following situation that can lead to problems:

A new image datastore is being added and the old one has to be deleted
The images are cloned in the new datastore, the old one is deleted
In this moment
VMs that rely on any image on the old datastore images can't be recreated easily (the image that was used to created them does not exist, they don't know about the clone on the new datastore)
The database reflects that the images on the old datastore are still being in use by those VMs

The command may also have to update:

/VM/TEMPLATE/DISK/{DATASTORE,DATASTORE_ID,IMAGE,IMAGE_ID,SOURCE} on the VMs running that depend on the migrated image
/VMTEMPLATE/TEMPLATE/DISK/{DATASTORE,DATASTORE_ID,SOURCE} on the templates that depend on the migrated image

Use case
The use case for the command would be
oneimage migrate IMAGE_ID --datastore DATASTORE_ID

It should:

Check if IMAGE_ID and DATASTORE_ID exist and if DATASTORE_ID is an image datastore
Move IMAGE_ID to DATASTORE_ID keeping its IMAGE_ID and name (IMAGE field)
Update the fields /IMAGE/{SOURCE,PATH,DATASTORE,DATASTORE_ID} of the image
For all the templates that use IMAGE_ID: update the fields /VMTEMPLATE/TEMPLATE/DISK/{DATASTORE,DATASTORE_ID,SOURCE}
For all the VMs that depend on IMAGE_ID: update the fields /VM/TEMPLATE/DISK/{DATASTORE,DATASTORE_ID,SOURCE}

After that, the /IMAGE/VMS field of the image should be consistent, and the templates and the vms too
Interface Changes
It may be relevant to have a way to migrate image from the interfaces, but it's out the original scope of the problem
Additional Context
It may be possible that the image source and datastore must be updated somewhere else

Progress Status

[ ] Code committed
[ ] Testing - QA
[ ] Documentation (Release notes - resolved issues, compatibility, known issues)

Duplicate of https://github.com/OpenNebula/one/issues/3243


Blank app when installing better-auth

Describe the bug
When I install better-auth on a React + swc app all the content of the page disappears.
To Reproduce
Steps to reproduce the behavior:

Use npm create cloudflare@latest -- my-react-app --framework=react to create react app + swc
Install tailwind
Install better-auth
The boilerplate app becomes blank

Expected behavior
I would expect that nothing changes in the ui when installing better-auth
Desktop (please complete the following information):

OS: Windows 11
Browser chrome
Version 130.0.6723.60

Additional context
Add any other context about the problem here.

Make sure you're using the latest version, and please provide more information than just a blank page. Check the console for any errors.

Using the @latest fixed it. Thank you!


Support clustered index

Feature Request
Is your feature request related to a problem? Please describe:
Currently when clustered index is enabled, the _tidb_rowid column is missing (?) and causes test failure.
Describe the feature you'd like:
Support clustered index.
Describe alternatives you've considered:
No alternatives.
Teachability, Documentation, Adoption, Optimization:

So we should update all the tests to not depend on _tidb_rowid anymore, right?

some tests involving _tidb_rowid are dedicated, so they should be kept.
more importantly the KV encoder should understand a table has clustered index and adjust the session accordingly, since that affects the row encoding.

Local backend supports common handle in #367, but we should better verify for importer and tidb backend as well.

Local backend supports common handle in #367, but we should better verify for importer and tidb backend as well.

Since importer/local share the same kv encoder, importer should also be supported new. the common_handle integration test is running with importer backend.
As for tidb backend, I think if there is no _tidb_rowid column in the source file, cluster index should be supported automatically.

Not sure about TiDB backend since it involves reconstructing a TableInfo back from the SHOW CREATE TABLE.

SHOW CREATE TABLE shows nothing about the clustered index. This is controlled by the session&global variable tidb_enable_clustered_index.

yes.
in any case, expanding the common_handle test case to include the other two backends, and also make the table use more than one file should be sufficient

also make the table use more than one file, and
What does this mean?

have a ch.t.1.sql in additional to ch.t.0.sql


Custom login screen based on RelyingParty and User

HI
I'm using Identity Server along with WsFederationPlugin to provide a Identity Server for three groups of users from two separate systems / dependent parties. Preferably I will show a separate login screen based on which rely party and user login request comes from, but if this is impossible, I will show a seperate login sceens based on the relying party. And so have a selection screen for the user to trust the party with two user groups.
Any help will be appreciated, thanks in advance!

Right now we don't pass any params to the login part of IdSvr from Ws-Fed with any RP info. It's possible that we could.
@leastprivilege thoughts?

Hi,
I found a solution/workaround. By implementing a custom ViewService I was able to use the information provided in the SignInMessage to differentiate the system and user group initiating the login request

Hi @Thor-Kristian-Valderhaug ,
We're also trying to use ws-federation with relying parties and a CustomViewService to display different login pages per relying party. However, we don't have any useful information provided to the SignInMessage in IViewService's Login method.
Did you have to configure anything to get SignInMessage's fields to be populated?
An example of my relying party:
new RelyingParty
            {
                Realm = ConfigurationManager.AppSettings.Get("CustomerPortalRealm"),
                Name = ConfigurationManager.AppSettings.Get("CustomerPortalDisplayName"),
                Enabled = true,
                ReplyUrl = ConfigurationManager.AppSettings.Get("CustomerPortalReplyUrl"),
                TokenType = "urn:ietf:params:oauth:token-type:jwt",
                TokenLifeTime = 20,
                ClaimMappings = ClaimMappings
            }

and this is how we configured ws federation:
private void ConfigureWsFederation(IAppBuilder pluginApp, IdentityServerOptions options)
    {
        var factory = new WsFederationServiceFactory(options.Factory);

        // data sources for in-memory services
        factory.Register(new Registration<IEnumerable<RelyingParty>>(RelyingParties.Get()));
        factory.RelyingPartyService = new Registration<IRelyingPartyService>(typeof(InMemoryRelyingPartyService));

        var wsFedOptions = new WsFederationPluginOptions
        {
            IdentityServerOptions = options,
            Factory = factory,
            EnableMetadataEndpoint = true
        };

        pluginApp.UseWsFederationPlugin(wsFedOptions);
    }

Thanks in advance for any help you can provide.

As @brockallen said earlier - we don't populate the SignInMessage from WS-Fed. We simply never got to it. Feel free to start a PR.


Framework does not include symbols from NSManagedObjectContext

When attempting to call 'delete' I am receiving a -[NSManagedObjectContext delete:]: unrecognized selector sent to instance 0x79e53be0.
Placing breakpoints in the extension, I can quickly see that the JSQCoreDataKit NSManagedObjectContext extension is NOT called, which makes it understandable why the above error as 'delete' is being called
Other included frameworks with extensions have worked ok... and I see that the example project works fine.  No idea why these symbols are being lost, though a SO post sheds some light on the issue being known for 'generics'
General information

Library version(s): 4.0.1
OS version(s): iOS 9.3
Devices/Simulators affected: iPhone 5 simulator
Reproducible in the demo project (Yes/No): No
Related issues: [http://stackoverflow.com/questions/24175596/swift-framework-does-not-include-symbols-from-extensions-to-generic-structs]

Expected behavior
Object is deleted
Actual behavior
-[NSManagedObjectContext delete:]: unrecognized selector sent to instance 0x79e53be0
Steps to reproduce

Include framework within the project.
Add framework to the appropriate Build Phases.
Call self.stack?.mainContext.delete(obj)

Thanks @MobileVet ! 😄
This method changed in 4.0 of the library, it should be:
context.delete(objects: [obj])

Let me know if this doesn't work!

@jessesquires this new method is actually causing the error. I had to write a top level function in my framework to call this delete method, calling it via a context was erroring everywhere after migration

Sorry I wasn't more clear, I am actually calling:
context.delete(objects: [obj])
As @saurabytes indicated, this is resulting in the error i referenced above as the Framework's extension is not being called and so it attempts to call delete on NSManagedObjectContext (which doesn't exist)

Ugh 😢 I see now.
However, this isn't reproducible in the demo project...
@saurabytes / @MobileVet — what's different about your projects? Have you tried doing a clean build?

I was pretty bummed when I couldn't get it to happen on the demo project... honestly don't see the difference.  I have a couple other frameworks and they have extensions that work... Did you see the SO link I included?  That definitely makes it sound like there is a known issue of some kind, though more around generic types. Could NSManagedObjectContext be considered 'generic' or falling under the same issue?
Here are my Build Settings:

Definitely done a clean build.

@MobileVet — Very strange. Yes, I did look at SO.

Could NSManagedObjectContext be considered 'generic' or falling under the same issue?

I don't think so...

It looks like you're using carthage? Or are you manually adding the library?
I just checked this with an app I'm working on and context.delete(objects: [obj]) is completely fine. I'm using CocoaPods.

@saurabytes — Did you do a clean build? How are you integrating the lib?

Thanks for all your help with this @jessesquires
I have integrated the framework 'manually'... not using Carthage or Cocoapods

Hm...
I also just ran a clean build of the demo project, which adds the framework manually. So...

strangely enough now a delete call is working fine now, must have cleaned my project :). sorry for the false alarm

Thanks @saurabytes !
@MobileVet - my guess is still that your build is dirty. 😊
Going to close this out given everything above.

@jessesquires Your gif made me laugh out loud, well done.
Appreciate you looking into this.  I have done several cleans and also deleted the derived data... still no luck.  That said, I am sure there is something funny about my setup.  When I find it I will let you know.
Cheers,


Add sample to forEachTween

The current documentation for AnimatedWidgetBaseState.forEachTween is exhaustive but a little hard to grok. An example will be useful.
Description
*This adds a short sample to the method.
Related Issues

Sorry, I did not create an issue for this. Feel free to push back.

Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] My PR includes tests for all changed/updated/fixed behaviors (See Test Coverage).
[x] All existing and new tests are passing.
[x] I updated/added relevant documentation (doc comments with ///).
[x] The analyzer (flutter analyze --flutter-repo) does not report any problems on my PR.
[x] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[x] I signed the CLA.
[x] I am willing to follow-up on review comments in a timely manner.

Breaking Change
Does your PR require Flutter developers to manually update their apps to accommodate your change?

[ ] Yes, this is a breaking change (Please read Handling breaking changes).
[x] No, this is not a breaking change.

(Btw, the ten thousand little commits is a testament to the fact that you never want to modify code in the github online editor, however small you think your CL is. Thank god for squash.)

@filiph Did you just need a random reviewer, or was there something specific in here that you thought was relevant to me?

GitHub recommended you in the UI, so I just clicked your name. I though the recommendation is based on the latest person to touch the modified lines or something.
But yeah, I mostly need a random reviewer.

Ok, I addressed what I could. Apparently, the ### Sample section is deprecated, so I reverted back to just using {@tool sample}.
Error: Found deprecated '## Sample code' section: use {@tool sample}...{@end-tool} instead.

Interesting.  Ok, LGTM.


Trim branch names and origin when applying form

When copying branch names from various chat tools, like MS-Teams or similar, sometimes additional whitespaces are copied, too.
This pull request trims origin-, wip-branch- and base-branch-name when applying config form.
Fixes #18.

The first three commits where only for testing gitlab actions on my fork, since I didn't managed to get the test environment running on my machine.
An easy contribution how-to would be nice-to-have!

Thank you for your contribution!

An easy contribution how-to would be nice-to-have!

Sorry. I will consider it for a moment.

I hope to fix the workflow this weekend.

@Basster san,
Sorry I made you wait.
Would you please rebase to the master branch ca85b109af44de47eef8440d5f9298f5c813cd47 ?

@nowsprinting done

@nowsprinting seems like secrets.SLACK_WEBHOOK_URL is missing to pass the build. It's not my code.

Sorry, This is a limitation of GitHub Actions about secret on public fork.
I failed to take this into account.
I confirmed tests passed, so I merge this PR.
I will remove SonarCloud and Slack notifications that use secrets from the workflow. later.

Thank you! 🙇

Plz wait a few days (or week) for the release!


Bring back "Generate Clang module maps during the build"

This reverts commit https://github.com/apple/swift-package-manager/commit/173355bf60301d8bccb542deb82e9bbce77f60ef.

Haven't yet figured out how to fix the issue that lead to the revert, but just opening this for visibility.


InitialConditions object?

A single Grid object could be used with a number of different choices of initial conditions (both in time and using different reanalysis datasets), but one choice of initial conditions can only be associated with one Grid object.
Perhaps this implies we should make some kind of InitialConditions object, which upon creation is fed an existing Grid object?

This is exactly what I ended up doing. In addition to the Grid object, the InitialConditions object also is fed the VerticalCoordinate object (which essentially holds information about the vertical grid). I think we can close this issue.


Homekit: Exception on set cover position

Home Assistant release with the issue:

0.66.1
Last working Home Assistant release (if known):
N/A
Operating environment (Hass.io/Docker/Windows/etc.):

Homekit on iOS 11.3
Component/platform:

Homekit
Description of problem:
When attempting to open/close a cover via Homekit on iPhone, a traceback occurs and the homekit server stops responding.
Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):
homekit:

Traceback (if applicable):
Exception happened during processing of request from ('<IP_ADDRESS>', 49201)
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/socketserver.py", line 639, in process_request_thread
    self.finish_request(request, client_address)
  File "/usr/local/lib/python3.6/site-packages/pyhap/hap_server.py", line 805, in finish_request
    self.RequestHandlerClass(sock, client_addr, self, self.accessory_handler)
  File "/usr/local/lib/python3.6/site-packages/pyhap/hap_server.py", line 141, in __init__
    super(HAPServerHandler, self).__init__(sock, client_addr, server)
  File "/usr/local/lib/python3.6/socketserver.py", line 696, in __init__
    self.handle()
  File "/usr/local/lib/python3.6/http/server.py", line 420, in handle
    self.handle_one_request()
  File "/usr/local/lib/python3.6/http/server.py", line 406, in handle_one_request
    method()
  File "/usr/local/lib/python3.6/site-packages/pyhap/hap_server.py", line 202, in dispatch
    getattr(self, self.HANDLERS[self.command][path])()
  File "/usr/local/lib/python3.6/site-packages/pyhap/hap_server.py", line 517, in handle_set_characteristics
    self.client_address)
  File "/usr/local/lib/python3.6/site-packages/pyhap/accessory_driver.py", line 443, in set_characteristics
    char.set_value(cq["value"], should_notify=False)
  File "/usr/local/lib/python3.6/site-packages/pyhap/characteristic.py", line 153, in set_value
    self.setter_callback(value)
  File "/usr/src/app/homeassistant/components/homekit/type_covers.py", line 53, in move_cover
    if value > self.current_position:
TypeError: '>' not supported between instances of 'int' and 'NoneType'

Additional information:
This is more of a feature request, but it would be good to in the future support covers which do no have set_cover_position service (i.e. support those with just open_cover, close_cover, and stop_cover)

@cdce8p looks like this is still an issue:
Exception happened during processing of request from ('<IP_ADDRESS>', 49204)
Traceback (most recent call last):
  File "/usr/local/Cellar/python/3.6.4_4/Frameworks/Python.framework/Versions/3.6/lib/python3.6/socketserver.py", line 639, in process_request_thread
    self.finish_request(request, client_address)
  File "/Users/nickw/.local/share/virtualenvs/home-assistant-bB22INbG/lib/python3.6/site-packages/pyhap/hap_server.py", line 805, in finish_request
    self.RequestHandlerClass(sock, client_addr, self, self.accessory_handler)
  File "/Users/nickw/.local/share/virtualenvs/home-assistant-bB22INbG/lib/python3.6/site-packages/pyhap/hap_server.py", line 141, in __init__
    super(HAPServerHandler, self).__init__(sock, client_addr, server)
  File "/usr/local/Cellar/python/3.6.4_4/Frameworks/Python.framework/Versions/3.6/lib/python3.6/socketserver.py", line 696, in __init__
    self.handle()
  File "/usr/local/Cellar/python/3.6.4_4/Frameworks/Python.framework/Versions/3.6/lib/python3.6/http/server.py", line 420, in handle
    self.handle_one_request()
  File "/usr/local/Cellar/python/3.6.4_4/Frameworks/Python.framework/Versions/3.6/lib/python3.6/http/server.py", line 406, in handle_one_request
    method()
  File "/Users/nickw/.local/share/virtualenvs/home-assistant-bB22INbG/lib/python3.6/site-packages/pyhap/hap_server.py", line 202, in dispatch
    getattr(self, self.HANDLERS[self.command][path])()
  File "/Users/nickw/.local/share/virtualenvs/home-assistant-bB22INbG/lib/python3.6/site-packages/pyhap/hap_server.py", line 517, in handle_set_characteristics
    self.client_address)
  File "/Users/nickw/.local/share/virtualenvs/home-assistant-bB22INbG/lib/python3.6/site-packages/pyhap/accessory_driver.py", line 443, in set_characteristics
    char.client_update_value(cq["value"])
  File "/Users/nickw/.local/share/virtualenvs/home-assistant-bB22INbG/lib/python3.6/site-packages/pyhap/characteristic.py", line 176, in client_update_value
    self.setter_callback(value)
  File "/Users/nickw/Documents/personal/home-assistant/homeassistant/components/homekit/type_covers.py", line 52, in move_cover
    if value > self.current_position:
TypeError: '>' not supported between instances of 'int' and 'NoneType'

Config:
cover:
  - platform: mqtt
    name: blindkit_nick_front
    command_topic: /things/blindkit/18fe3499d274/send_code
    availability_topic: /things/blindkit/18fe3499d274/status
    qos: 1
    payload_open: 100,0,OPEN
    payload_close: 100,0,CLOSE
    payload_stop: 100,0,STOP
    set_position_topic: /things/blindkit/18fe3499d274/send_code
    set_position_template: |-
      {% if position > 70 %}100,0,OPEN
      {% elif position < 30 %}100,0,CLOSE
      {% else %}100,0,STOP
      {% endif %}
  - platform: mqtt
    name: blindkit_nick_side
    command_topic: /things/blindkit/18fe3499d274/send_code
    availability_topic: /things/blindkit/18fe3499d274/status
    qos: 1
    payload_open: 100,1,OPEN
    payload_close: 100,1,CLOSE
    payload_stop: 100,1,STOP
    set_position_topic: /things/blindkit/18fe3499d274/send_code
    set_position_template: |-
      {% if position > 70 %}100,0,OPEN
      {% elif position < 30 %}100,0,CLOSE
      {% else %}100,0,STOP
      {% endif %}

Running current dev branch: 8d48164f25f3b7f272ee486ecdeb6e1e8e4c6174

This is the initial state from the state panel:

If I open/close them Home Assistant, I then get:

I should have read the error log more carefully. I fixed a different potential error :sweat_smile:
Although I like your PR, it won't solve this (I will still review it, since it adds some good functionality). I think I know a fix, PR coming soon.

I was able to fix the error by setting the initial value for self.current_position in the constructor to 0. (But of course this doesn't make the cover work in my situation, since the cover does not report a position value, rather just a state value of open/closed.

@nickw444 I had a look at your configuration again. It seems like your covers don't really support set_cover_position, do they? At least they don't seem to report the current_position parameter which is way you're noticing this issue. Have you tried it without: set_position_topic and set_position_template?
I haven't worked with MQTT yet, maybe there is a way to set current_position to a valid value.

The issue is that even if your PR is merge, which I support, your cover will still be added as WindowCovering since the supported_features parameter says it supports set_cover_position although it doesn't.

Yep you’re right about that! But if my PR was approved I would be able to remove my ‘hack’ from my config and simply use the open/close cover services and no longer provide the set cover positon service traits.

Year, but then this isn't an issue. If you try to use an unsupported component, you shouldn't expect it to work. I will close this then.
Your PR should be ready for 0.67 if nothing comes in between. We can continue there.

If you try to use an unsupported component, you shouldn't expect it to work. I will close this then.

Well it technically is supported. Maybe the docs should be updated to reflect the fact the cover must support the ATTR_CURRENT_POSITION state value?
https://github.com/home-assistant/home-assistant/blob/0daf38d18c2171455865ca4d3fc7e14fb3449d62/homeassistant/components/homekit/type_covers.py#L92
Currently the docs only describe it as requiring the set_cover_position service, which happens to be true for MQTT covers which implement the config for set_position_template

Perhaps the docs should say something like:

All covers that support set_cover_position and have the current_position state attribute.

And to be even more safe, perhaps an additional check here:
https://github.com/home-assistant/home-assistant/blob/0daf38d18c2171455865ca4d3fc7e14fb3449d62/homeassistant/components/homekit/__init__.py#L102-L103

On a side note, I like the refactor you've done in __init__.py to tidy up the accessories! Nice!

Technically you're right. However for set_cover_position to work correctly, the cover must have a valid current_position. That's what the docs meant there. Adding additional checks isn't really practical since we would need to check if the current_position is an integer. That way we would miss out on any special cases where the cover is first unavailable and only gets a valid state later (including a valid `current_position). The feature flags are there to indicate if something is supported. We should continue to rely on those.


[Suggestion] Allow adding the .no-results class to items that should appear if there are no results

Thanks for building this library! I appreciate that it's more design oriented than some of the alternatives. I've been able to quickly incorporate it into sites without hassle which has been fantastic.
My suggestion:
I'd like to create an alternate method for the current nodata option. My issue is that I would like my nodata option to include html markup. Currently this isn't possible because it's added via jQuery's text method.
My suggestion is to allow the user to add a class to any items that should be hidden unless the search returns nothing. This is similar in functionality to the exclude option, except that these items would be hidden by default and revealed if there is no match, whereas exclude items are shown by default.
If the nodata flag is passed, we would still remove these list items as an override.
Would a PR for this be welcome? Thanks for your consideration!

@vdw for now I'll use the suggestion in #34, I believe that's the current suggested implementation. Feel free to close this if you think that's the best solution.

My current workaround is to change .text to .html and add my nodata string as HTML. I'm somewhat concerned it could lead to an XSS vulnerability but the input is not generated by the user.


Incorrect choice of encoding Cyrillic characters resulting in UnicodeDecodeError

Description
I have:

Windows 10
Clean conda Python 3.6 env

I ran
pip install flake8-bandit
and got
Successfully installed GitPython-2.1.11 PyYAML-3.13 bandit-1.5.1 flake8-3.5.0 flake8-bandit-1.0.2 flake8-polyfill-1.0.2 gitdb2-2.0.4 mccabe-0.6.1 pbr-4.3.0 pycodestyle-2.3.1 pyflakes-1.6.0 six-1.11.0 smmap2-2.0.4 stevedore-1.29.0
I have a Python module with the following contents:
# -*- coding: UTF-8 -*-
"""Module docstring."""
print('hello') # э

I run
flake8 C:\Development\Flake8PluginDev\foo.py
an error is produced.
(BanditDebug) C:\Users\user>flake8 C:\Development\Flake8PluginDev\foo.py
Traceback (most recent call last):
  File "c:\anaconda3\envs\banditdebug\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "c:\anaconda3\envs\banditdebug\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Anaconda3\envs\BanditDebug\Scripts\flake8.exe\__main__.py", line 9, in <module>
  File "c:\anaconda3\envs\banditdebug\lib\site-packages\flake8\main\cli.py", line 16, in main
    app.run(argv)
  File "c:\anaconda3\envs\banditdebug\lib\site-packages\flake8\main\application.py", line 396, in run
    self._run(argv)
  File "c:\anaconda3\envs\banditdebug\lib\site-packages\flake8\main\application.py", line 384, in _run
    self.run_checks()
  File "c:\anaconda3\envs\banditdebug\lib\site-packages\flake8\main\application.py", line 310, in run_checks
    self.file_checker_manager.run()
  File "c:\anaconda3\envs\banditdebug\lib\site-packages\flake8\checker.py", line 321, in run
    self.run_serial()
  File "c:\anaconda3\envs\banditdebug\lib\site-packages\flake8\checker.py", line 305, in run_serial
    checker.run_checks()
  File "c:\anaconda3\envs\banditdebug\lib\site-packages\flake8\checker.py", line 579, in run_checks
    self.run_ast_checks()
  File "c:\anaconda3\envs\banditdebug\lib\site-packages\flake8\checker.py", line 486, in run_ast_checks
    checker = self.run_check(plugin, tree=ast)
  File "c:\anaconda3\envs\banditdebug\lib\site-packages\flake8\checker.py", line 435, in run_check
    return plugin['plugin'](**arguments)
  File "c:\anaconda3\envs\banditdebug\lib\site-packages\flake8_bandit.py", line 35, in __init__
    self._load_source()
  File "c:\anaconda3\envs\banditdebug\lib\site-packages\flake8_bandit.py", line 73, in _load_source
    self.source = f.read()
  File "c:\anaconda3\envs\banditdebug\lib\encodings\cp1252.py", line 23, in decode
    return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x8d in position 68: character maps to <undefined>

To Reproduce
If I have
# -*- coding: UTF-8 -*-
"""Module docstring."""
print('hello') # й

I run
flake8 C:\Development\Flake8PluginDev\foo.py
and get
C:\Development\Flake8PluginDev\foo.py:3:15: E261 at least two spaces before inline comment
It works fine.
Now if we change the Cyrillic # й comment into either the # э, # я, or # с (with all three characters typed with Russian keyboard layout, mind Russian C) and run
flake8 C:\Development\Flake8PluginDev\foo.py
an error is produced.
It seems as bandit has problems with only three Russian letters эяс because when running the flake8 with the comment containing all Russian letters except эяс, it works fine:
# -*- coding: UTF-8 -*-
"""Module docstring."""
print('hello') # йцукенгшщзхъфывапролджё

Expected behavior
Bandit should handle all Cyrillic characters without throwing UnicodeDecodeError error.
Bandit version
(BanditDebug) C:\Users\HomeUser>bandit --version
bandit 1.5.1
  python version = 3.6.6 |Anaconda, Inc.| (default, Jun 28 2018, 11:21:07) [MSC v.1900 32 bit (Intel)]

@sobolevn, you are impacted by this as well in wemake-python-styleguide

@AlexArcPy what happens if you remove coding magic comment?

@sobolevn , same error!

@ericwb , you are right, the issue is not with the bandit, but rather with the flake8-bandit. I'll post an issue in their repo, but they do not seem to be very active, so not sure if this is something anyone could look at.
Running
(BanditDebug) C:\Users\user>bandit "C:\Development\Flake8PluginDev\foo.py"
produces
[main]  INFO    profile include tests: None
[main]  INFO    profile exclude tests: None
[main]  INFO    cli include tests: None
[main]  INFO    cli exclude tests: None
[main]  INFO    running on Python 3.6.6
Run started:2018-10-04 21:58:32.449122

Test results:
        No issues identified.

Code scanned:
        Total lines of code: 2
        Total lines skipped (#nosec): 0

Run metrics:
        Total issues (by severity):
                Undefined: 0.0
                Low: 0.0
                Medium: 0.0
                High: 0.0
        Total issues (by confidence):
                Undefined: 0.0
                Low: 0.0
                Medium: 0.0
                High: 0.0
Files skipped (0):

Related: https://github.com/tylerwince/flake8-bandit/issues/4


Fix CI test for Julia 1.6.5 on Windows

Tests fail for Julia 1.6.5 on Windows in a rather mysterious way.
The problem is the helper function PDFmerger.n_pages() which sometimes cannot read the output of pdfinfo. Strangely, this only happens when run like this
] test PDFmerger

while directly executing the tests
include("path to PDFmerger/test/runtests.jl)

works fine!

fix by 02a1ce2


add check for KeyType.serdeIgnoreOut

Turns out my feature request in #13 would have been too complex to add and there existed serdeIgnoreOutIf already which did exactly what I wanted, but on the value.
So I just added code to check on the type serdeIgnoreOut that if it evaluates to true, does not emit the value.
Sample SumType / Optional implementation:
struct NoneType {}
alias Optional(T) = MySumType!(NoneType, T);

struct MySumType(Types...)
{
	import std.typecons;
	SumType!Types value;
	mixin Proxy!value;

	enum hasNoneType = () {
		bool has = false;
		foreach (Type; Types)
			static if (is(Type == NoneType))
				has = true;
		return has;
	}();

	static if (hasNoneType)
		bool serdeIgnoreOut() const
		{
			return value.tryMatch!(
				(NoneType none) => true,
				v => false
			);
		}

	void serialize(S)(ref S serializer) const
	{
		import mir.ser : serializeValue;

		static if (hasNoneType)
			value.tryMatch!(
				(NoneType none) => assert(false),
				v => serializeValue(serializer, v)
			);
		else
			value.tryMatch!(
				v => serializeValue(serializer, v)
			);
	}
}

Might want to consider if this should also apply to array values.

Codecov Report

Merging #14 (8e28053) into master (e32d462) will increase coverage by 0.27%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master      #14      +/-   ##
==========================================
+ Coverage   85.45%   85.72%   +0.27%
==========================================
  Files          32       31       -1
  Lines        6918     6839      -79
==========================================
- Hits         5912     5863      -49
+ Misses       1006      976      -30

Impacted Files
Coverage Δ

source/mir/ion/examples.d
93.95% <100.00%> (+0.04%)
:arrow_up:

source/mir/ser/package.d
96.75% <100.00%> (+0.03%)
:arrow_up:

source/mir/ser/text.d
82.06% <0.00%> (-1.19%)
:arrow_down:

source/mir/ion/internal/simd.d

source/mir/ser/json.d
96.17% <0.00%> (+0.58%)
:arrow_up:

source/mir/ion/symbol_table.d
87.50% <0.00%> (+1.40%)
:arrow_up:

source/mir/ion/internal/stage1.d
100.00% <0.00%> (+4.05%)
:arrow_up:

source/mir/ion/internal/stage2.d
100.00% <0.00%> (+26.74%)
:arrow_up:

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 e32d462...8e28053. Read the comment docs.

LGTM.

@9il will there be a tag soon? This is an essential requirement for me being able to move serve-d from painlessjson to mir-ion :)

Tagged a new release (v1.0.29)


Abtract IPlugInAPI using the facade pattern

IPlugInAPI is difficult to use. I believe we can insert a facade that is easier to use and that ultimately prevents developers from making common HS plugin mistakes.
So instead of inheriting from IPlugInAPI, a plugin author would inherit from something like IBetterPlugInAPI (TBD).
The traditional HS API is pretty much locked into place and can't change without negatively affecting existing plugins. We have an opportunity with this project to be more dynamic with our architecture, without having to worry about how things were done in the past.
Let's use this opportunity to make HS plugin development awesome!

All plugins should inherit ultimately from HSPIBase. I imagine we'll have additional base classes that inherit from HSPIBase that will make things even easier and cover different plugin scenarios. This new HSPIBase illustrates how we're able to re-shape the old HS IPlugInAPI interface into something that's easier to work with.


kernel module: Missing /build folder when compiling with "make"

Please paste the output of the following command here: sudo edit-chroot -all

name: kali-rolling
encrypted: no
Entering /mnt/stateful_partition/crouton/chroots/kali-rolling...
crouton: version 1-20160902144033~master:9f8e9a22
release: kali-rolling
architecture: amd64
xmethod: xiwi
targets: xiwi,xfce,cli-extra,extension
host: version 8350.68.0 (Official Build) stable-channel reks
kernel: Linux localhost 3.18.0-12320-gbb6b499 #1 SMP PREEMPT Tue Aug 2 21:12:32 PDT 2016 x86_64 GNU/Linux
freon: yes
Unmounting /mnt/stateful_partition/crouton/chroots/kali-rolling...
Please describe your issue:
Cannot "make" drivers for a wifi usb adapters.
Error message:
make[1]: *** /lib/modules/3.18.0-12320-gbb6b499/build: No such file or directory.  Stop.
If known, describe the steps to reproduce the issue:
Just try to "make" anything I assume.
In this specific case, I'm trying to compile the drivers for ralink usb adapters:
http://www.mediatek.com/AmazonS3/Downloads/linux/DPO_RT5572_LinuxSTA_<IP_ADDRESS>_20121022.tar.bz2
Or even the older version of the drivers (that it's possible to find looking around internet and old forums).
There's always this issue with the missing "build" folder. I've tried to install the kernel headers, but:
(kali-rolling)kali@localhost:~$ sudo apt-get install linux-headers-$(uname -r)
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package linux-headers-3.18.0-12320-gbb6b499
E: Couldn't find any package by glob 'linux-headers-3.18.0-12320-gbb6b499'
E: Couldn't find any package by regex 'linux-headers-3.18.0-12320-gbb6b499'
So I've tried to install other linux headers and the build-essentials (don't remember which version of kernel headers as this is my third re-installation of the chroot, but they were suggested in the command line when I've tried to "apt-get install" the headers) and they ended up into another folder inside /lib/modules/.
Then I've:
ln -s /usr/src/linux-headers-2.6.38/ /lib/modules/3.18.0-12320-gbb6b499/build
(the linux headers version in the first part of the command here is an example, I've used a recent version of the headers, something ending in rt-amd64 and other ending amd64 but I couldn't find which one. I've actually tried 2-3 different versions of kernel headers).
At this point I could go forward a bit more with the "make" process, but eventually it started to ask  for "gcc6" (that was already installed according to apt-get , but inside the required folder arrived only up to gcc5.h", so I've again made a link gcc6 pointing to gcc5).
I've managed to get the make process a little bit more, but eventually I found another error.
I've done all of this also with a "jessie" installation, just to make sure that wasn't an issue of kali-rolling.
Sorry for the long post, but in the end I just need to understand how to compile files here on a chromebook with crouton as this missing "build" folder and the fact that the kernel has the name: 3.18.0-12320-gbb6b499 seems to create the issue here.
Any hints, help or workaround on how to successfully compile drivers here on kali-rolling, and the explanation of this missing /build folder inside the kali-rolling headers folder would be really appreciated, as it's been a week now that I'm working on this but we no luck.

@aleisterdev You cannot install headers from the kali repo. They won't work, the chroot is using the chromeos kernel and not a kali released kernel. So you have to build the headers yourself see https://github.com/dnschneid/crouton/wiki/Build-kernel-headers-and-install-Virtualbox-(x86). Also you need to disable module_locking when you want to be able to load external modules. This is mentioned also on the linked page. Note that building the correct headers for the 3.18.0-xxxxx kernel is a pain. There is some kind of workaround mentioned on the above linked page. However I think the easiest way for you is to build the required modules on a normal amd64 linux PC with the chromeos kernel source and then copy them to your chromebook.

Thank you very much for you reply! I'll look into the link you provided.
I hope I don't have to go to the other route as I don't have another amd64 linux PC to build the modules :/
I will update this ticket when I will make it work, so that the other people that may have this issue will know how to solve it.

@aleisterdev Did you manage to get it to work?

Not at all, I kinda give up after a couple of weeks of forum surfing, tutorials, installations, errors, etc... I'm still trying to figure it out if it was worth it to buy the Chromebook :/

im having a issue as well bought a 6000Mbit/s wifi N usb antenna and ran a folder for it and named the folder and and then boom it says cant find kernal in the v7 ive got a v8 on my pi4 ubuntu 19.04, so is this antenna not seeing the updated version from 7 to 8 or does it work on 5.10.11-v7l+ only and not on 5.10.11-v8+


Use Gradle as the build system

Not sure how open you are to changing build systems after all the other stuff I've offered to swap out, but Gradle is pretty radically superior to Maven:

It's faster (most builds speed up when converted to the equivalent Gradle build)
It's more reliable (if you haven't fallen afoul of Maven's dependency resolution inconsistencies, you will)
It's parallel-friendly (parallel builds have been a thing for a long time, and its downloaded artifact cache is safe to use concurrently, unlike Maven's)
It's way more flexible when you need to do custom stuff
There's nothing to install, ever: the build tool version and bootstrap is embedded in the project, so there's never "it works on my machine" because of different build tool versions. This also makes it really easy to use in CI.
It's well supported in IntelliJ and Eclipse

And of course, I'll PR this as well if you want.

I'm open to a PR! I chose maven because it seemed to be pretty global, and because I assumed it meant deploying to maven central was easier. I'm happy to be proven wrong.

Based on the other issues I've filed it sounds like you want to go a different direction than what I need for my integration, so I'm going to have a perma-fork here: https://github.com/truevault/rollbar-java
I'll do all the stuff I've described there, starting with this so that it's easy for you to borrow.


[IDE] Use collected token to retrieve range of type identifier

Previously, it used to use length from AST. Because AST doesn't necessarily holds actual source information, it may emits inacculate syntax info which cause mis-coloring or SourceKit crash in the worst case. Instead, use collected token info that contains actual token length.
https://bugs.swift.org/browse/SR-8378
rdar://problem/42653982

@swift-ci Please smoke test

Ah, somehow, I had thought I was editing code in tools/SourceKit 🤦♂

@swift-ci Please smoke test

@swift-ci Please smoke test

@swift-ci Please smoke test

@swift-ci Please smoke test

@swift-ci Please smoke test


Titlebar toolbars missing gap between icon buttons

We use a 4px gap between icon buttons most/all toolbars other than the titlebar:
Current state

Prior art

Example with gap

Seems the panel global actions don't have the padding either

Yeah just noticed that as well. I think they should. Or at least there should be a POV over toolbars with padding vs. those that don't.

Yea I think the command center actions as well (arrows) do not have this padding. My concern is that the padding in the titlebar looks very spread out and it is already so crowded


Apicurio schema validation json schema

Type of change

Enhancement / new feature

Description
This PR adds initial support for an integration between Kroxylicious and Apicurio Registry. It re-uses lots of the work done in the Json syntax validation and introduces the possibility of validating the data against a JSON Schema already available in Apicurio Registry.
A new configuration section has been introduced as follows:
forwardPartialRequests: true
                defaultRule:
                  valueRule:
                    allowNulls: false
                    allowEmpty: true
                rules:
                - topicNames:
                  - one
                  valueRule:
                    schemaValidationConfig:
                        useApicurioGlobalId: 1
                    allowNulls: false
                    allowEmpty: true
                - topicNames:
                  - two
                  keyRule:
                    allowNulls: false
                    allowEmpty: true

Where, any value sent to the topic one must match the schema available using the globalId 1 from Apicurio Registry. This is just the first step, and as discussed in https://github.com/kroxylicious/design/discussions/48 there are more possibilities on how to retrieve the schema.
Additional Context
I'm creating this early to start the discussion and see if this is the right direction.
Checklist

[x] Write tests
[x] Make sure all tests pass
[ ] Review performance test results. Ensure that any degradations to performance numbers are understood and justified.
[ ] Make sure all Sonarcloud warnings are addressed or are justifiably ignored.
[x] Update documentation
[ ] Reference relevant issue(s) and close them after merging
[ ] For user facing changes, update CHANGELOG.md (remember to include changes affecting the API of the test artefacts too).

cc @robobario

Ok, I think I have addressed all the problems mentioned, just let me know if there's anything needed or that you want to discuss.

@carlesarnal add yourself to https://github.com/kroxylicious/kroxylicious/blob/main/CONTRIBUTORS.md if you like.

The code coverage complaint from sonar is down to the classes @carlesarnal refactored to give them an async API.  The unit tests were already missing.  I'm going to ignore the Sonar issue and merge.  The unit tests can be retrospectively be added.

The code coverage complaint from sonar is down to the classes @carlesarnal refactored to give them an async API.  The unit tests were already missing.  I'm going to ignore the Sonar issue and merge.  The unit tests can be retrospectively be added.

Thanks for digging into that @k-wall


Set up a short blog on Medium announcing the PyMC v4.0 release

Set up a short blog on Medium announcing the PyMC v4.0 release:

PyMC on Medium: https://pymc-devs.medium.com
Even though we no longer use Medium, there are 477 followers, and they will receive notification of the new blog, and we can direct them to the pymc.io website.

cc: @twiecki @OriolAbril
cc: @BerylKanali

sounds good. I do not have access to medium and have never used it myself. So I can't help do this though


[SUPPORT]

Hi,
I tried to update my hudi version from 0.6.0 to 0.11. I updated it gradually version by version starting from 0.6 to 0.9 and then from 0.9 to 0.10 and finally from 0.10 to 0.11. I am running it using EMR and querying the hudi table on athena. The table version was updated correctly after each update in hoodie.properties file on S3. However when I tried to Run Alter table command to Alter data type of colum from int to big in on 0.11 it is giving me folowing error
pyspark.sql.utils.AnalysisException: ALTER TABLE CHANGE COLUMN is not supported for changing column 'id' with type 'IntegerType' to 'id' with type 'LongType'
Do we have to rebuild the tables to the newer version directly ???
Following is my hoodie.properties file content
hoodie.table.timeline.timezone=LOCAL
hoodie.table.keygenerator.class=org.apache.hudi.keygen.NonpartitionedKeyGenerator
hoodie.table.precombine.field=when_updated
hoodie.table.version=4
hoodie.database.name=
hoodie.datasource.write.hive_style_partitioning=true
hoodie.table.checksum=2716619607
hoodie.partition.metafile.use.base.format=false
hoodie.archivelog.folder=archived
hoodie.table.name=amz_hudi_vc_11_accounts
hoodie.populate.meta.fields=true
hoodie.table.type=COPY_ON_WRITE
hoodie.datasource.write.partitionpath.urlencode=false
hoodie.table.base.file.format=PARQUET
hoodie.datasource.write.drop.partition.columns=false
hoodie.table.metadata.partitions=files
hoodie.timeline.layout.version=1
hoodie.table.recordkey.fields=id
hoodie.table.partition.fields=
Following is the complete error
An error was encountered:
ALTER TABLE CHANGE COLUMN is not supported for changing column 'id' with type 'IntegerType' to 'id' with type 'LongType'
Traceback (most recent call last):
File "/mnt/yarn/usercache/livy/appcache/application_1718084941070_0004/container_1718084941070_0004_01_000001/pyspark.zip/pyspark/sql/session.py", line 723, in sql
return DataFrame(self._jsparkSession.sql(sqlQuery), self._wrapped)
File "/mnt/yarn/usercache/livy/appcache/application_1718084941070_0004/container_1718084941070_0004_01_000001/py4j-<IP_ADDRESS>-src.zip/py4j/java_gateway.py", line 1322, in call
answer, self.gateway_client, self.target_id, self.name)
File "/mnt/yarn/usercache/livy/appcache/application_1718084941070_0004/container_1718084941070_0004_01_000001/pyspark.zip/pyspark/sql/utils.py", line 117, in deco
raise converted from None
pyspark.sql.utils.AnalysisException: ALTER TABLE CHANGE COLUMN is not supported for changing column 'id' with type 'IntegerType' to 'id' with type 'LongType'

@zaminhassnain06 Did data type of your id column changed? Why you need to run alter command?
We can't make an integer field as long as it's not backward compatible.

@ad1happy2go  yes, data type of our columns are changing mostly from int to big int as our data is increasing. So in this scenario we should directly move towards higher version and rebuild our tables in the higher version , is that correct ?

@zaminhassnain06 Correct. you need to rebuild.

Thanks @ad1happy2go

@zaminhassnain06 Closing this issue. Please reopen or create new one for any more doubts on this.


GPL-374 Re-print barcodes from plates/new page

User story
As an SSR I would like to be able to come back to the plates/new page after creating plates using it, to print out the barcodes, in case they didn't print successfully the first time.
Who the primary contacts are for this story
Rich Clark & James Mack (& Danni Weldon)
Acceptance criteria

Way of printing barcodes in bulk on a group of plates created at one time using the plates/new page

Additional context
Don't think this is currently possible because there's nothing grouping those plates together - is there an alternative way of doing it?

With https://github.com/sanger/sequencescape/pull/2604 we could at least allow printing of replacement barcodes from the feedback page, although this would only work until someone navigated away from the page.

Question - touched on by Rich C at some point I think -
What happens if the plates you've just created are the 'LHR RT' ones? If you print barcode from SS, presumably you get just the one barcode, but if you print them from Limber, you get 2 extra barcodes, for the PCR plates (this will go away when those PCR plates are tracked (GPL-375)).
Do we want this bulk print functionality from SS to print barcodes for just the RT plates, or somehow for those PCR plates as well?

Should we have some sort of more generic 'bulk print labels' page, where you paste in barcodes?

Got it working using Asset Groups:

Alternative to above could be something like this (notice the URL):

Where the plates/new page would generate the URL for you, but the plates are not grouped together in any way other than in the URL.
Pros:

Not using up storage
Not mis-using Asset Groups

Cons:

Easy to forget to copy paste URL, and then it's lost.

I'd vote for the asset group selection here, given the following caveats:

All wells on the created plates get added to the asset group
We de-duplicate the labware on the print page, preferably at the database level (ie. Asset group has many labware through receptacles (probably still called assets) with a distinct constraint

The asset group name should probably be something along the lines of the plate creator name and a timestamp.

@JamesGlover could you explain what you mean by 'the plate creator name' in above comment please? Thanks


Requiring  tag affects whole page

Adding a <base href="/"> tag to <head> affects relative URLs for the whole page. This includes breaking SVG <defs> fill URLs and <a href="#top"> style page anchors as well. This seems like an unacceptable side effect when the goal is only to have an absolute URL for the Ember asset paths.
Would it be possible to just add a secondary argument to include_ember_script_tags() to pass in the base path?

Fixed by https://github.com/seanpdoyle/ember-cli-rails-assets/commit/23f9425dda1e4d6c0d50c22de6330743ed4489d2.


Hindi characters rendered wrong

I got:

    स
    ं
    भ
    व

Please see the discussion at #2426 for how to handle this.


fix: inconsistent custom okhttp configuration

Situation
In pull-request#857, we proposed a new feature that enables users to inject their own OkHttp client when configuring the SDK client.
A bug was reported to us that custom Dispatcher configurations on OkHttpClient instances are being overridden by OkHttp's default configurations. Look the example below:
val okhttp = OkHttpClient.Builder()
    .dispatcher(
        Dispatcher().apply {
            maxRequests = 5000
            maxRequestsPerHost = 1000
        }
    )
    .build()

val client = RapidClient.builderWithHttpClient()
    .okHttpClient(okHttpClient = okhttp)
    .key("key")
    .secret("secret")
    .build()

In the previous example, we expect maxRequests and maxRequestsPerHost values to be configured properly to their given values. Unfortunately, that's not the case, and configurations are overridden to OkHttp's default values.

We pass custom OkHttpClient instance to Ktor through the HttpClientEngineFactory utility, which enables us to create and configure instances of the OkHttpEngine.
abstract class BaseRapidClient(
    namespace: String,
    clientConfiguration: RapidClientConfiguration,
    httpClientEngine: HttpClientEngine = DEFAULT_HTTP_CLIENT_ENGINE,
) : Client(namespace) {
    // code... code... code...
    private val engine: HttpClientEngine =
        _configurationProvider.okHttpClient?.let {
            OkHttp.create {
                preconfigured = it
            }
        } ?: httpClientEngine
    // code... code... code...
}

When we pass an OkHttpClient instance to the Ktor client, Ktor attempts to clone our OkHttpClient instance, then executing our configuration code-block. The issue is that Ktor creates a new dispatcher instance and setting it on the new instance after cloning our client. Looking the Ktor code-base, we can observe that behavior in the following code:
public class OkHttpEngine(override val config: OkHttpConfig) : HttpClientEngineBase("ktor-okhttp") {
    // code... code... code...
    private val clientCache = createLRUCache(::createOkHttpClient, {}, config.clientCacheSize)

    // code... code... code...
    private fun createOkHttpClient(timeoutExtension: HttpTimeout.HttpTimeoutCapabilityConfiguration?): OkHttpClient {
        val builder = (config.preconfigured ?: okHttpClientPrototype).newBuilder()

        builder.dispatcher(Dispatcher())
        builder.apply(config.config)
        config.proxy?.let { builder.proxy(it) }
        timeoutExtension?.let {
            builder.setupTimeoutAttributes(it)
        }

        return builder.build()
    }
}

Breaking down the code, we can observe the following facts:

Our OkHttpClient instance is cloned and transformed into an instance of OkHttpBuilder.

val builder = (config.preconfigured ?: okHttpClientPrototype).newBuilder()

A new Dispatcher instance is created and set on the new builder.

builder.dispatcher(Dispatcher())

Our custom-configuration block is executed on the OkHttpBuilder instance.

builder.apply(config.config)

As a result, our custom Dispatcher instance is overridden by a new instance holding the default values set in the Dispatcher class.
Task
In order to resolve the issue and persist custom Dispatcher instances, we need to make sure the the Dispatcher instances is set again properly in the ustom-configuration block. We do not need to care about other values and configurations since they are cloned properly and not overridden later on.
Action
For each client, we made sure Dispatcher instances are set properly on the custom-configuration block level.
OkHttp.create {
     config {
         preconfigured = it
         dispatcher(it.dispatcher)
     }
}

Testing
Verified manually. It would be hard to unit-test setting custom OkHttpClient instances because the instance is set to be inaccessible (private-visibility).
Results
Custom Dispatcher instances are now preserved and respected. Given the following configuration as a sample:
val okhttp = OkHttpClient.Builder()
    .dispatcher(
        Dispatcher().apply {
            maxRequests = 5000
            maxRequestsPerHost = 1000
        }
    )
    .build()

val client = RapidClient.builderWithHttpClient()
    .okHttpClient(okHttpClient = okhttp)
    .key("key")
    .secret("secret")
    .build()

We can observe that our configurations are respected and preserved for each request.

Notes
NaN

You may test the behaviour by setting some config (e,g, timeout) on a custom client.

We have agreed to take this conversation into a new scope, potentially in another PR.


Updated validations.py script: Improve username behavior

Fixes #<issue_number_goes_here>

It's a good idea to open an issue first for discussion.

[ ] Tests pass
[ ] Appropriate changes to README are included in PR

@googlebot I signed it!


New Game Added Snake Game

Type of change ✍

[x] New feature (non-breaking change which adds functionality)

👨💻 Changes proposed:
✔ Check List

[x] My code follows the code style of this project.
[x] This PR does not contain plagiarized content.
[x] The title of my pull request is a short description of the requested changes.
[x] I have included comments in areas that may be difficult to understand.
[x] My changes have not introduced any new warnings.
[x] I have conducted a self-review of my code.
[ ] I am a participant of SWOC'24.

📷 Screenshots

Starting Page

Game Page

Game Over Page

📄 Note to reviewers

thanks @Anshu370 for contributing...


How is your GitHub Actions runner set up?

Hi, I'm trying to get my own fork of this repo (with the same .gitworkflows folder) to run. However, built applications crash on runtime. I just discovered that the build process gives the same errors as my own PC does:
https://github.com/Muzosh/web-eid-app/actions/runs/6136840424/job/16652072691#step:5:328
ERROR: Cannot resolve rpath<EMAIL_ADDRESS>ERROR:  using QList("/Users/runner/work/web-eid-app/web-eid-app/build/src/app/lib")
ERROR: Cannot resolve rpath<EMAIL_ADDRESS>ERROR:  using QList("/Users/runner/work/web-eid-app/web-eid-app/build/src/app/lib")
ERROR: Cannot resolve rpath<EMAIL_ADDRESS>ERROR:  using QList("/Users/runner/work/web-eid-app/web-eid-app/build/src/app/lib")
ERROR: Cannot resolve rpath<EMAIL_ADDRESS>ERROR:  using QList("/Users/runner/work/web-eid-app/web-eid-app/build/src/app/lib")
....

when trying to execute target macdeployqt.
Do you have your runner(s) set-up somehow specifically for Qt to install properly?

The problem is most probably byt installing qt@6 via HomeBrew.
There is an issue described here in homebrew repo. However, did you do anything to mitigate this by somehow modifying the github runner?
If not, how do you distribute the official packages from https://web-eid.eu/?

A quick shout-out: take a look at #282. Does this help you forward?

By the first look it should solve this, thanks! I will try it when I have time and close this issue.


where is the data to download?

where is the data to download?

did you check the readme ? I think he mentioned at the end.

@muhammadabdullah34907 thanks, I mean, did you have a data download link of merged one?

Hi @jinfagang
We have our data and annotation download instructions on our website. Please check and see if you need any help with the data. I am also happy to help if you need other formats.

@jinfagang they have provided the dataset, let me know if you train it on yolo or ssd for faster and for edge deployment ?


Feature request: Support for SVG format.

Hi, the title is self-explanatory.
Cheers.

Added with #228
Works fine for me, closing this as resolved

And here too, awesome!


webservices-rt.jar 2.4.4 is missing jaxws-tubes-default.xml in META-INF

I am getting the error MASM0001: Default configuration file [ jaxws-tubes-default.xml ] was not found when publishing a web services endpoint using the 2.4.4 versions of webservices-api.jar and webservices-rt.jar. Checked the content of jaxws-rt.jar and noticed that it contains jaxws-tubes-default.xml in its META-INF folder. After adding the file taken from jaxws-rt.jar to webservices-rt.jar META-INF the error disappears and the endpoint is published.

if you are using webservices-* jars, then webservices-rt.jar/META-INF/metro-default.xml is the config file which is to be used instead


Upgrade testcontainers

Better support for Mac M1 machines

Coverage remained the same at 93.781% when pulling 5b4ab5a41aeac584bc2e7f23fa555aaf03784d77 on tgianos:upgradeTestContainers41x into 0b543049c83e491a565e17b6a6d852288b2b5481 on Netflix:4.1.x.