Failed to set wattage for and S9

First of all thanks for this cool add-on! I have a small issue when setting the powerlimit using the slider of a S9 miner in Home assistant it returns "Failed to set wattage".
I have added part of the log that indicates the issue using x's to remove my actual data.
Hope this helps.
Cheers
Version of the custom_component

S9 (BOS+) Firmware: 22.08.1
Hass miner 1.1.2
Core 2024.2.0
Supervisor 2024.01.1
Operating System 11.5
Frontend 20240207.0

Debug log

2024-02-08 13:48:45.645 WARNING (MainThread) [xxx] S9 (BOS+): x.x.x.x - Failed to set power limit: 'NoneType' object has no attribute 'as_bosminer'
2024-02-08 13:48:45.646 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [547319965120] Failed to set wattage.
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 240, in handle_call_service
response = await hass.services.async_call(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/core.py", line 2279, in async_call
response_data = await coro
^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/core.py", line 2316, in _execute_service
return await target(service_call)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 892, in entity_service_call
single_response = await _handle_entity_call(
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 962, in _handle_entity_call
result = await task
^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/number/init.py", line 111, in async_set_value
await entity.async_set_native_value(native_value)
File "/config/custom_components/miner/number.py", line 117, in async_set_native_value
raise pyasic.APIError("Failed to set wattage.")
pyasic.errors.APIError: Failed to set wattage.

Seems like hass-miner is having trouble getting the config file off your miner, this usually indicates a SSH connection issue.  Any chance you changed the password on your miner before?

I did but I provided it when setting up Hass Miner.

Ah yeah, that makes sense.  You will have to remove that miner and set it up again, there have been some changes to configuration values in the most recent versions to support separate ssh, web, and rpc passwords.  The ssh and web password should be the same in this case.

I did, I removed it and set it up as a new miner. Even removed and reinstalled Hassminer 1.1.2

And you set both the SSH password and web password?  It's possible that the configuration wasn't removed before and its using the same configuration if you set both of those, but that would be quite a large issue.

I'm honestly not sure, maybe this is a start?  https://www.home-assistant.io/getting-started/configuration/
I don't have access to my hass dev instance right now, but I also believe there might be something in the developer menu to check out the config, it should have these keys -
"ssh_username"
"web_password"
"web_username"```

I can't find it anywhere on the system, it's likely stored in a database or something.  You may just have to uninstall it again, then make sure to delete the folder it was in via SSH (/homeassistant/custom_components/miner), then you can attempt a re-install and see if that solves it.

Thanks @b-rowan, I'll try that.

Same here with v1.1.6rc4 and Home Assistant 2024.4.3
Controlling the active state works fine, but setting the wattage/power usage does not. I also checked if enabled Autotuning or Dynamic Performance Scaling have an impact here, but controlling that value via Home Assistant doesn't work regardless.

I have the same issue, all works fine beside the Power setting. I even have a fresh setup (HA new installed 2024.4.3, just weeks ago) newly configured Hass Miner wqith actuall PW.
So no old setup in back.

I have the same issue, all works fine beside the Power setting. I even have a fresh setup (HA new installed 2024.4.3, just weeks ago) newly configured Hass Miner wqith actuall PW. So no old setup in back.

What version of hass-miner?  I was having some issues with older BOS+ configuration for a bit, I just moved to the most recent config version for them so that should fix that issue if youre on 1.1.8.
Only other thing I could think of is if the SSH password isn't working for some reason.  If you try to ssh root@{ip address of miner} in aterminal and use the password you provided to hass-miner in the SSH password field as the password, does it let you in?

I've just updated everything to latest, here's what's NOT working for me:

Miner: 2022-09-27-0-26ba61b9-22.08.1-plus, latest Braiins OS+
Home Assistant:  Core 2024.5.0, Supervisor 2024.04.4, Operating System 12.2
hass-miner v1.1.8

SSH username/password are correct and e.g. setting Active/Inactive via the Home Assistant integration works just fine.

What version of hass-miner? I was having some issues with older BOS+ configuration for a bit, I just moved to the most recent config version for them so that should fix that issue if youre on 1.1.8.

Miner: v22.08.1, latest Braiins OS+
Home Assistant: Core 2024.4.4, Frontend 20240404.2, Operating System 12.2
hass-miner v1.1.8

@b-rowan Which HA user is running the commands? As root I tried manually connecting to the miner, which also brought up the authenticity check. I approved it and even created an SSH key, which I then uploaded to the miner — so for root the password shouldn't even be required anymore. Yet it still doesn't work for me.
Here's the exception from the hass-miner debug log:
2024-05-03 10:15:23.068 WARNING (MainThread) [root] S9 (BOS+): XXX.XXX.XXX.XXX - Failed to set power limit: 'NoneType' object has no attribute 'as_bosminer'
2024-05-03 10:15:23.071 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [140710751034816] Unexpected exception
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 239, in handle_call_service
    response = await hass.services.async_call(
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/core.py", line 2738, in async_call
    response_data = await coro
                    ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/core.py", line 2779, in _execute_service
    return await target(service_call)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 975, in entity_service_call
    single_response = await _handle_entity_call(
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 1047, in _handle_entity_call
    result = await task
             ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/number/__init__.py", line 116, in async_set_value
    await entity.async_set_native_value(native_value)
  File "/config/custom_components/miner/number.py", line 117, in async_set_native_value
    raise pyasic.APIError("Failed to set wattage.")
pyasic.errors.APIError: Failed to set wattage.
2024-05-03 10:15:59.461 DEBUG (MainThread) [custom_components.miner.coordinator] Found miner :S9 (BOS+): XXX.XXX.XXX.XXX

Which HA user is running the commands?

Good question.  In any case, it seems like I might need to set a different flag with asyncssh than what I was setting to accept host keys always.

Can you guys test with v1.1.9rc1?  I changed the way writing the config is handled, so I want to see if that was the issue, or if its actually fully ssh related.

Nothing changed for me, the error message in the log is still the same. I also tried removing and re-adding the device after upgrading to v1.1.9rc1 — nevertheless, thanks for your support and the quick replies, hope we get this sorted!

I think I found it, seems like the config wasn't being  loaded properly when temperature settings were not set, leading to temperature settings to be None internally, which wasn't able to be parsed to be sent back to the machine.  Can you try with 1.1.9rc2?

There seems to be a dependency problem now:
[homeassistant.util.package] Unable to install package pyasic==0.55.2: ERROR: Could not find a version that satisfies the requirement pyasic==0.55.2
Most recent which can be found is  pyasic .55.1

Release tag didn't push, it should be up there now.

Here we go, that fixed it!

Everything is working now?  If so, ill push a proper release and close this issue.

Yes, for me the latest rc release fixed the issue.

Fixed for me to on the 1.1.9 release 👍


Multiple declarations issue after following the OO example

I'm having issues with multiple declarations in Platform.io on the ESP32. My code seems to be identical to the example, but it fails to link. I would try the example code to sanity check, but PIO doesn't make that the easiest thing.
It's saying all the Task and Scheduler methods are being redefined. These are my header files that are relevant.
restserver.h
#ifndef RESTSERVER_H
#define RESTSERVER_H

#define _TASK_TIMEOUT
#define _TASK_OO_CALLBACKS

#include <ESPAsyncWebServer.h>
#include <TaskScheduler.h>

#include "config.h"
#include "moduleservice.h"
#include "plantservice.h"

class RestServer {
public:
	ModuleService* GetModuleService() { return module_service; }
	PlantService* GetPlantService() { return plant_service; }

	RestServer(AsyncWebServer *server);
	~RestServer();
private:
	Scheduler *scheduler;
	ModuleService *module_service;
	PlantService *plant_service;
};

#endif

plantservice.h:
#ifndef PLANTSERVICE_H
#define PLANTSERVICE_H

#define _TASK_TIMEOUT
#define _TASK_OO_CALLBACKS

#include <Adafruit_Sensor.h>
#include <Adafruit_AM2320.h>
#include <TaskSchedulerDeclarations.h>

#include "config.h"

class PlantService : public Task {
public:
	bool Callback();

	void CheckSensors();
	void GetPlantInfo(char* info);

	PlantService(Scheduler* scheduler);
	~PlantService() {};
private:
	Adafruit_AM2320* am2320;
	float temperature;
	float humidity;
};

#endif

The only place where you include <TaskScheduler.h> is in the main .INO file.
Every other header file should be using <TaskSchedulerDeclarations.h>
Your restserver.h includes the former.
Hope this helps.

I'm not using the scheduler in my main file, just in restserver and its objects. I'd prefer to make the scheduler inside the rest server, mainly because it's only needed there.

Well, you are including TaskScheduler twice somewhere or Platform.io does it for you.
I do not use Platform.io - found it to be difficult to set up for I need to do.
Try to see if that is the case -OR- send me your code (all of it) to<EMAIL_ADDRESS>- I won;t be able to help you based on just 2 header files.

Code can be found in this repo. Ignore the outdated Readme.

Can you try including <TaskScheduler.h> once in the main.cpp and <TaskSchedulerDeclarations.h> everywhere else? See if this resolves the compile problem.
On a separate note - your code does not really use task scheduler, definitely not the way it is intended to be used, so most probably won't work even if compiles.

you are not adding tasks to the chain
you are not calling execute() method periodically to actually do the scheduling
you are using blocking methods like delay() - a NO-NO in cooperative multitasking
you are using do {} while loops in the callbacks with a possibility of the infinite loop.

The philosophy of TaskScheduler is that it is the scheduler. All your actions are tasks and therefore classes derived from the Task.  You define the conditions by which the tasks are invoked and let the scheduler do the coordination.  I do not recommend using TS with other scheduling tools (with one exception - FreeRTOS on ESP32, but even that is still experimental).

Have a look at this: https://github.com/arkhipenko/IoT_apis2.git
Not an OO approach - but similar hardware and tasks - running a web server while reading sensors.
All on TS. Please note that as mentioned above, TS is the only scheduler.

I know I'm not calling execute, I was first setting things up and making sure it compiled. I'm pretty sure I'm using delay at points where it doesn't matter for multi-tasking, like before a restart to be sure an HTTP response sends, at the beginning of execution to give me a chance to connect with the serial console before debug output flies by, etc. Besides this, I know the code is a little rough, mostly trying to get a proof of concept running.
I think have a solution to my own problem, but I was trying to avoid creating the scheduler in the main file since it's not really needed anywhere other than the rest server.

I made the change, but I'm getting a new error
.pio/build/huzzah/src/plantservice.cpp.o:(.literal._ZN12PlantServiceC2EP9Scheduler+0x8): undefined reference to `Task::Task(unsigned long, long, Scheduler*, bool)'
.pio/build/huzzah/src/plantservice.cpp.o: In function `PlantService::PlantService(Scheduler*)':
/private path/Grow.local/grow-local-esp/grow.local/src/plantservice.cpp:30: undefined reference to `Task::Task(unsigned long, long, Scheduler*, bool)'
.pio/build/huzzah/src/plantservice.cpp.o:(.rodata._ZTV12PlantService[vtable for PlantService]+0x14): undefined reference to `Task::OnEnable()'
.pio/build/huzzah/src/plantservice.cpp.o:(.rodata._ZTV12PlantService[vtable for PlantService]+0x18): undefined reference to `Task::OnDisable()'

Code for plantservice.cpp hasn't changed

Oops, I forgot to include the defines for the configuration in the main file. It compiles now.

Great. I am closing this issue then. Good luck!


[Feature]: Alarm Control Panel Chip Configuration like Alarm Card

Is your feature request related to a problem?
I would like to use the Alarm Control Panel Chip, not larger, full size Alarm Card. But the Chip does not allow me to configure my alarm modes (armed_home, armed_away, armed_night, armed_vacation, etc.) like the Alarm Card do. The Alarm Control Panel Chip always and exclusively shows the modes armed_home and armed_away in the pop-up window.
Describe the solution you'd like
Would be nice if the The Alarm Control Panel Chip have the possibility to configure the modes I need. In my case only want armed_away and armed_vacation.
Describe alternatives you've considered
As a workaround, I have configured the Tab-Action of the Alarm Control Panel Chip to navigate and jump to a page with the Alarm Card.
Additional context
Thank you for these wonderful cards! They take my (and I'm sure many others') dashboards to a whole new level.

Hi! The panel is the more-info panel and it's the official Home Assistant more-info. We can not change it from Mushroom.

Why not change the action to be set to call_service.  Then you can make tapping the chip do whatever you want :)

Oh, actually obvious! Why didn't I think of that myself? Of course, it still needs a bit of logic behind it, but that is definitely an interesting approach! Thanks for the suggestion!

Oh, actually obvious! Why didn't I think of that myself? Of course, it still needs a bit of logic behind it, but that is definitely an interesting approach! Thanks for the suggestion!

I have to do the same with Scene entities. For some reason, HAs default interaction is Toggle which for a Scene, tries to always call turn_off which doesn't exist


Credit Risk Assessment in java

Describe the project you want to add with tech stack
The Credit Risk Assessment program is a Java application that assesses the credit risk of a customer applying for a loan based on their credit score, annual income, total debt, and years of credit history.
Expected behavior
Its is very useful for determining of credit risk.
@MohitGupta121 @TusharKesarwani @pranjay-poddar Sir kindly assigned me these issue

@MohitGupta121 @TusharKesarwani @pranjay-poddar Sir kindly assigned me these issue


cleanup: consistently use nullptr in cc contexts

Signed-off-by: Mike Schore<EMAIL_ADDRESS>

Is there no clang-tidy configuration for this?

Could be; probably worth looking into.

Thanks @jpsim!

Could be; probably worth looking into.

Looks like it: https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-nullptr.html

It not clear to me how to enable that in .clang-format


fix: ReadStorage/WriteStorage don't register storages in MetaTable during setup

Fixes #383.

This change is

Please bump the version, I'll release later.

Fixed.


[Feature Request] No price copied if item is HQ, but only NQ listed

Scenario:
PennyPincher is installed and active.
Put HQ item up for sale
Compare prices.
Only NQ item(s) are up for sale.
Expected result:
PennyPincher will copy a value based on the items up for sale
Actual result:
Clipboard value remains as it was before Compare Prices.
No message appearing in chat about values being copied.
Video: https://youtu.be/k3ZSBOiTMzI
I understand why this happened, but it was surprising and not intuitive to see the clipboard hasn't changed.
I'm not sure what's a good automated solution for this would be, but could you at least add a message along the lines of 'no HQ items found, not copying value'? At least then it's clear what happened.

I would like to add a request to this that the plugin put an invalid number (e.g., -1) onto the clipboard. I'm working on a tool that piggybacks off of Penny Pincher and having some "no value copied" magic number put on the clipboard would be an absolute godsend for its functionality.


Update PowerShell macOS launcher to pwsh.

Follow up to reflect #5101 change.

@thezim Thanks for your contribution!


adding PV[assay type] to assay configuration, moving miacme complianc…

…e and funding information from investigation section to study section in investigation file, as compliance would be best reported at each study level

@agbeltran @JaimePrilusky I have created a MIACME compliant ISA configuration where each migration or invasion assay has its own individual ISA assay configuration file.
This is for evaluation purpose with Jaime's tool for 2 reasons:

test if the webapp can deal with such set up
allow possible future proofing in case specific assay types required dedicated/specific annotation requirements.

Note: the difference between the 2 ISA configurations is as follows:
For all Assay tables found in the 'multi' configuration , the 'Parameter Value[assay type] declared as List in the other MIACMEv0.3 ISA configuration has been dropped.
Instead, the Measurement Type and Technology Type are set to a specific assay type value (e.g MT: spheroid invasion assay, TT: microscopy imaging)
@JaimePrilusky with a multi assay configuration, you would have to rely on the values supplied in each ISA assay configuration declaration MT and TT to populate the 'Assay Measurement Type' & 'Assay Technology Type" found in the Investigation file, under  Study declaration section (see slack chat on that topic)


Feature/anandrkskd/389

#389  updated with Increased verbosity of mesheryctl update to show new docker image pull

@anandrkskd will you breakout mesheryctl/cmd/update.go into a separate PR?

@anandrkskd I like the branch naming scheme you’ve used here. Thumbs up.

SIr @leecalcote , I have removed the bash script for now, and this PR will be used for increased verbosity of mesheryctl update.


solution needed for below problems in C++

Add solution for these problems and add their solution links under solution section in readme file
23  Encrypt&Decrypt Message
24  Comparison
25  Min Cost String
26  Clean Code

Could you assign this task to me?

Hi @Shubhamlmp, please assign this issue to me

Hii sir assign it to me

Please can you assign this to me?

Please assign to me

@Sidkul2000 @rahul2001dewangan @laveshverma007 @vaibhv232 @Ash0069
We are not assigning any issue to any one person.
who will first send the PR and we review if all okay then we merge that MR

Yes I have already submitted the c++ programs, please accept the PR

Yes I have already submitted the c++ programs, please accept the PR

Please check again I didn't find your PR


update deps to latest

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


2 errors after install of wallet

Hello, where did you find to download it ?

from github. direct link.
On Wed, Oct 25, 2017 at 7:28 PM, Laël Cellier<EMAIL_ADDRESS>wrote:

Hello, where did you find to download it ?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/DisseDev/Disse/issues/1#issuecomment-339531449, or mute
the thread
https://github.com/notifications/unsubscribe-auth/Ae3HsdET-uGzEXQYM9ZnqD5lAGWIErisks5sv-47gaJpZM4Px_QJ
.

once downloaded from github, it send you to to MEGA, which is a document
cloud storage. which i had never used prior to this download, once in MEGA,
it downladed fine, installation is the issue. i did contact MEGA as well.
Beings as they are the client being used for storage. They said everything
was good on their end, and was a an upload issue.
On Thu, Oct 26, 2017 at 10:05 PM, Mathew Marquez<EMAIL_ADDRESS>wrote:

from github. direct link.
On Wed, Oct 25, 2017 at 7:28 PM, Laël Cellier<EMAIL_ADDRESS>wrote:

Hello, where did you find to download it ?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/DisseDev/Disse/issues/1#issuecomment-339531449, or mute
the thread
https://github.com/notifications/unsubscribe-auth/Ae3HsdET-uGzEXQYM9ZnqD5lAGWIErisks5sv-47gaJpZM4Px_QJ
.


Tool to test if a grammar with a sample input file is ambiguous

It has been shown that testing whether or not a grammar is ambiguous automatically is impossible / close to it. However, many ambiguities will show up in a sufficiently complex test file. I'd like a simple program that can be attached to a nearleyc build script to run the grammar with a given test file: if there are no parsings / an error parsing, the script raises an error, if there are ambiguities, the script also raises an error. If there is a single, unique parsing, the script gives a return code of 0 / no output.
Would make developing grammars a bit less painful, maybe.

@bobbybee That's (somewhat) simple to make with a node.js script...
E.g. (All of it untested, should work though)
var nearley=require("nearley");
var child_process = require("child_process");
var fs = require("fs");
child_process.spawnSync("nearleyc",["grammer.ne","-o","tmp_grammer.js"]);

var grammer = require("tmp_grammer.js");
var parser = new nearley.Parser(grammar.ParserRules, grammar.ParserStart);
var results = parser.feed(fs.readFileSync("test.txt", "utf8"));

if(result.length == 1) {
  process.kill(0);
} else {
  process.kill(1);
}

Issue seems dead; also trivial to implement yourself.


Control error window

Fixes #8

Hey this is exactly what I've implemented and only the config name is different. I was about to create the pull request but I felt that passing a config value to a function as an argument through 2 functions was kind of a hacky solution. But it looks like this was the way.


Unable to add Common.Logging.Core 3.0 to Xamarin.IOS project

Opening this new issue arising from a comment on another issue that had been closed prior (https://github.com/net-commons/common-logging/issues/71#issuecomment-70105495).

TBH, I don't know as I don't have (immediate) access to XAMARIN tools to test this myself :(
The updated Common.Logging.Core contains the same PCL-supported target list as the prior release, which you can see here https://github.com/net-commons/common-logging/blob/master/src/Common.Logging.Core/Common.Logging.Core.nuspec#L16-L18 as being...
target="lib\portable-win+net40+sl40+wp7"

Since that's not changed, I'm guessing its something else, either on your end or within Common.Logging itself (or its packaging).  Could you please do the following for us:

Using NuGet, attempt to reference the prior version of Common.Logging.Core into your solution to (re)validate that this still works, helping to reduce the chances that its an issue on your side
unzip the NEW (3.0) Common.Logging.Core NuGet package to extract the proper binary from the lib\portable-win+net40+sl40+wp7 folder and attempt to reference it into your project without using NuGet per se.  This will help us identity whether this is an issue with the packaging or the binary itself.

Thanks,
-Steve B.

FWIW, I just re-read your initial comment and realize that you're also trying to reference Common.Logging.Portable.  This should also be supported as its got the same PCL-target-list in its package as does Common.Logging.Core (see https://github.com/net-commons/common-logging/blob/master/src/Common.Logging.Portable/Common.Logging.Portable.nuspec#L20-L22) .
However, I'll amend those two testing requests to be "please do the testing steps with both Common.Logging.Portable and Common.Logging.Core"in order to properly help us puzzle out the problem for you.

Hi Steve,
bingo - without NuGet it works. Whats wrong here?

Kind regards,
Markus

OK, thanks for sticking with us on this; thanks to your experimentation I think I've discovered the reason for the behavior you're seeing although I still need to investigate a bit further to track down the root cause.
Its definitely a packaging error; as your tests have shown the binaries themselves are just fine.
In the Common.Logging.Core version 2.2.1 package, this is the name of the folder in the .nupkg file (under /lib/) that contains the portable binary:
portable-win%2Bnet40%2Bsl40%2Bwp7

However, for Common.Logging.Core and Common.Logging.Portable version 3.0.0, the name of that same folder instead appears as:
portable-win+net40+sl40+wp7

Note that in the one that works (2.2.1) the folder name has the "+" character encoded whereas in the two packages that don't work (3.0.0) the "+" is literal (unencoded).
I'm not (yet) quite sure why/how this didn't happen for the 3.0.0 packaging step, but I'm pretty certain its the cause of the NuGet client's inability to add the 3.0.0 packages to a portable project.  I suspect that the client is parsing the package to discover the folders under /lib/ in the package and isn't finding a match for the project to which you're trying to add it.
I'll do some digging and attempt to puzzle out the cause; as soon as I do we'll have to release an updated 3.0.1 set of packages across the board to address it ASAP.
Standby -- I'll circle back here once that's properly done and then you should be able to prune out your manually-referenced DLLs and replace them with the upcoming 3.0.1 packages we'll release as soon as we solve this.

Hi Steve,
thank you for your support - thats great!

Sorry to ask you to validate this again, but can you just confirm for me one last time that you can in fact successfully add the  Common.Logging.Core 2.3.1 package to your solution using NuGet?
After further research, I'm less than 100% certain that the (un)encoded "+" is the cause of the error you're seeing with Common.Logging.Core and .Portable 3.0.0.  But since its your report that the Common.Logging.Core 2.3.1 package can be added via NuGet that is pointing me back to that as the cause, I'd like you to (re)confirm this for me before I head down a rabbit-hole in the wrong direction :)
Thanks for all your assistance here,
-Steve B.

Hi Steve,
does this help? That´s the dir layout of the solution with the (working) Common.Logging.Core
2.2.0 btw

Yes, perfect -- thanks!

Circling back here, after additional investigation we're unable to determine a reason for the difference in results you're seeing in re: adding 2.2.0 vs. 3.0.0 as both list an identical set of PCL targets in their nuspec manifests.
We've posted the issue on the NuGet discussion forum on CodePlex at  https://nuget.codeplex.com/discussions/578408 and hope to hear from the NuGet team on this shortly.

Were you eventually able to make this work --?  As you can see from the (lack of) activity on the issue I posted to the NuGet codeplex site (https://nuget.codeplex.com/discussions/578408) it seems that nobody there was able (willing? interested?) to try to provide any insight.
As we're unable to identify a cause for the behavior you're seeing and the NuGet team seems inable to assist, I'm leaning towards closing this issue at this time.
Can you advise --?

Hi Steve,
on my side this ist he same state as it was. I will try to solve this for myself, close the issue.
Thank you for your efforts.
Von: Steve Bohlen<EMAIL_ADDRESS>Gesendet: Montag, 30. März 2015 11:30
An: net-commons/common-logging
Cc: Markus
Betreff: Re: [common-logging] Unable to add Common.Logging.Core 3.0 to Xamarin.IOS project (#78)
Were you eventually able to make this work --? As you can see from the (lack of) activity on the issue I posted to the NuGet codeplex site (https://nuget.codeplex.com/discussions/578408) it seems that nobody there was able (willing? interested?) to try to provide any insight.
As we're unable to identify a cause for the behavior you're seeing and the NuGet team seems inable to assist, I'm leaning towards closing this issue at this time.
Can you advise --?
—
Reply to this email directly or view it on GitHub https://github.com/net-commons/common-logging/issues/78#issuecomment-87611149 .  https://github.com/notifications/beacon/AHz_ugfimwaANK3TN38DNAyk3t64P-yMks5n6Q8WgaJpZM4DTaxB.gif

Today I refreshed to Common.Logging.Portable 3.1.0 without any problems! I have no idea why I had a problem before. I had alot of Xamarin Updates in between, so I think it was a problem on their side. Sorry for any unnecessary work. Thank you for your assistance!!

Great -- happy to hear that you managed to resolve it on your end; appreciate your circling back to let us know!

Hi Steve,
I am struggling to add Common.Logging.Core and Common.Logging.Portable to my Xamarin.Android project, Common.Logging.Core 3.3.1
Here is a screen shot of the Xamarin.Forms pcl nuget directory structure, which is working.
(Note the MonoAndroid10, MonoTouch10 and Xamarin.iOS10 additions)

Also the following Directory:
portable-win+net45+wp80+win81+wpa81+MonoAndroid10+MonoTouch10+Xamarin.iOS10


MemoryPointer.copy_from_peer is missing

cupy.creation.from_data.copy uses MemoryPointer.copy_from_peer to copy an array from the device other than current one (See the corresponding code). But, copy_from_peer is not implemented and cross-device copy is impossible if we solely use cupy module.
Note: We can do cross-device copy if we are allowed to use chainer module because chainer.cuda.copy supports it.

After the investigation, I found that current cross-device copy is realized by undocumented behavior of cupy.
To be concrete, we can copy arrays across devices by chainer.cuda.cupy, cupy.copy or cupy.copyto. All of three methods realize cross-device copy by MemoryPointer.copy_from_device. But its document says this API is for the copy of GPU array within single device.
The followings items are notes for myself.

chainer.cuda.copy invokes cupy.copyto, which is an alias of cupy.manipulation.basic.copyto (Link).
cupy.copyto invokes cupy.elementwise.copy, cupy.elementwise.copy_where, or MemoryPointer.copy_from depending on the arguments (Link). The former two element-wise methods cannot operate cross-device copy. So the only way to do cross-device copy is to invoke MemoryPointer.copy_from.
Likewise, cupy.copy, which is an alias of cupy.creation.from_data.copy invokes one of cupy.elementwise.copy, MemoryPointer.copy_from_peer, or  MemoryPointer.copy_from (Link). First one cannot do cross-device copy and second one is not implemented. So the situation is same as cupy.copy and we do cross-device copy by means of MemoryPointer.copy_from.
If source array is allocated in the device, MemoryPointer.copy_from is same as MemoryPoint.copy_from_device (Link).

Possible solutions are:

to change the role of copy_from_device so that it admits cross-device copy.

I guess UVA enables copy_from_device to do cross-device copy. Since UVA is a feature of GPUs with compute capability >= 2.0 (Fermi series or later), I am not sure we can do the same thing in older series.

to implement copy_from_peer for cross-device copy. The role of copy_from_device remains as it is (copy within single device).

Thank you for the investigation. It seems a bug of cupy.copy that it tries to call copy_from_peer. Peer device copy is allowed by copy_from_device on UVA-enabled device as you noted, and I think our implementation depends on UVA, so we cannot support pre-UVA devices.
Here is a summary of the CuPy APIs' behavior that I expected:

APIs basically run on the current device.
cupy.copyto is an exception. It should run correctly if the given target array is contiguous and on a non-current device.
chainer.cuda APIs should run on any devices as much as possible.

@beam2d Thank you for verifying my understanding and writing the expected behavior.
The plan for the fix is as follows.

Remove dependency of cupy.copy on copy_from_peer.
Fix the document of copy_from_device to support copy from non-current device.
CuPy supports UVA-enabled device only for now.


Coupons

Hello!
how I can use Coupons with your package ?

The coupons feature is in development.

Can  say a date for publish it in develop ?

I'm looking for this improvement too. Any ideas when it will be ready?
Meanwhile, any tips on how can I implement this myself?
Thanks!

Depending how complex will your coupons be.
Locally the next push to dev will have:
Coupons with specific amount.
Coupons with specific percentage discount.
Coupons that only apply to certain SKUs.
Coupons with expiration date.
Coupons with usage limit.
Coupons that only apply to certain users.
On Dec 2, 2015 10:38 AM, "mbl-at"<EMAIL_ADDRESS>wrote:

I'm looking for this improvement too. Any ideas when it will be ready?
Meanwhile, any tips on how can I implement this myself?
Thanks!
—
Reply to this email directly or view it on GitHub
https://github.com/amsgames/laravel-shop/issues/19#issuecomment-161357699
.

When u make this in the dev branch ? Do you have an date for me ?

Ok i span up a quick POC for how coupons would work initially. please note this is UNTESTED so use at your own risk. im sure @amostajo would be able to do a lot better job of this than me so i will wait for his feedback
Create a new migration:
php artisan make:migration add_coupon_functionality
Add the following to the migration:
public function up()
	{
		Schema::create('coupon_links', function (Blueprint $table)
		{
			$table->integer('coupon_id');
			$table->integer('coupon_link_id');
			$table->string('coupon_link_type');
		});
	}

	/**
	 * Reverse the migrations.
	 *
	 * @return void
	 */
	public function down()
	{
		Schema::drop('coupon_links');
	}

In your Coupon Model:
	/**
	 * Get all of the orders that are assigned this coupon.
	 */
	public function orders()
	{
		return $this->morphedByMany(Config::get('shop.order'), 'coupon_link');
	}

	/**
	 * Get all of the carts that are assigned this coupon.
	 */
	public function carts()
	{
		return $this->morphedByMany(Config::get('shop.cart'), 'coupon_link');
	}

In your Order Model:
	/**
	 * Get all of the coupons for the order.
	 */
	public function coupons()
	{
		return $this->morphToMany(Config::get('shop.coupon'), 'coupon_link');
	}

In your Cart Model:
	/**
	 * Get all of the coupons for the cart.
	 */
	public function coupons()
	{
		return $this->morphToMany(Config::get('shop.coupon'), 'coupon_link');
	}

In ShopCalculationsTrait.php:
Add our getter @ line 86:
	public function getTotalDiscountAttribute()
	{
		if (empty($this->shopCalculations)) $this->runCalculations();

		return round($this->shopCalculations->totalDiscount, 2);
	}

Add our display getter @ line 137:
	public function getDisplayTotalDiscountAttribute()
	{
		return Shop::format($this->totalDiscount);
	}

Adjust the cart/order calculations @ line 189:
//Add total discount, edit totalPrice
		$PivotOn = $this->table == Config::get('shop . order_table') ? 'App\Order' : 'App\Cart';
		$Discounts = $this->calculateDiscounts($PivotOn, $this->attributes['id']);

		//Remove Cash Discount
		$this->shopCalculations->totalPrice -= $Discounts['cash'];

		//Remove % Discount
		$PercentageDiscount = $this->shopCalculations->totalPrice;
		$this->shopCalculations->totalPrice -= $this->shopCalculations->totalPrice * $Discounts['percent'];
		$PercentageDiscount -= $this->shopCalculations->totalPrice;

		$this->shopCalculations->CashDiscount = $Discounts['cash'];
		$this->shopCalculations->PercentDiscount = $Discounts['percent'];
		$this->shopCalculations->PercentCashDiscount = $PercentageDiscount;
		$this->shopCalculations->totalDiscount = $Discounts['cash'] + $PercentageDiscount;

Add additional function at the bottom:
	/**
	 * Calculates the discount required on a class with a specified id
	 * @param $PivotOn
	 * @param $id
	 * @return array
	 */
	private function calculateDiscounts($PivotOn, $id)
	{
		$Class = new $PivotOn;
		$Coupons = $Class::find($id)->coupons;

		$Discount = [
			'cash'    => 0.00,
			'percent' => 0.00,
		];
		foreach ($Coupons as $coupon)
		{
			if (!is_null($coupon->value))
				$Discount['cash'] += $coupon->value;
			else
				$Discount['percent'] += $coupon->discount;
		}

		return $Discount;
	}

When Using a flat cash discount (specified by value) you will see:
{#812
     +"totalPrice": 51.98,
     +"totalTax": "0.00",
     +"totalShipping": "3.00",
     +"CashDiscount": 20.0,
     +"PercentDiscount": 0.0,
     +"PercentCashDiscount": 0.0,
     +"totalDiscount": 20.0,
   }

When Using a percentage discount on the basket you will see:
{#812
     +"totalPrice": 64.782,
     +"totalTax": "0.00",
     +"totalShipping": "3.00",
     +"CashDiscount": 0.0,
     +"PercentDiscount": 0.1,
     +"PercentCashDiscount": 7.198,
     +"totalDiscount": 7.198,
   }


Fix an issue I accidentally created

@Nandika-A I deeply apologize for this. 😅
While implementing #5 I reduced the interval duration to 20 seconds / 10 seconds for debugging purposes and forgot to change it back. That doesn't follow the 20-20-20 rule, so this Pull Request resolves the new issue. Once again, I'm sorry for being such a klutz.

Hey @LyubomirT, no worries at all! It's fine, not a problem. Thanks for catching that and making the necessary fix.


Extract text snippets from message producing routines to ensure less duplication

@dkarletsos this is rather big, but all it does is basically remove all the massive duplication of logic I had scattered around.


Add activation of packages to all lectures

Add the following at the top of every lecture with code, in a separate cell right above the first set of code.
using Pkg
Pkg.activate(@__DIR__);

Any markdown above it such as:
Activate the project environment
using Pkg; Pkg.activate(@__DIR__);

For the setting we just need to tell them to keep one Manifest file were they have the lectures?

Yes.  We can tell people about that in the setup (and hope that someone  - or us!) implements Valentin's idea about a small library to associate the projects with.  I think the setting is no important that it is worth pointing out on every notebook as a reminder - since people will copy them around.
Here is the rst text that we will want above the first use of the code - being careful with whitespace and RST, as always.

Activate the project environment, ensuring that the ``Project.toml`` and ``Manifest.toml`` are local

.. code-block:: julia

    using Pkg; Pkg.activate(@__DIR__); #activate environment in the notebook's location

We will probably want to create a mini-repo with just the project environment for  `````Project.tomlandManifest.toml`` ``` to link to, but we can wait on that and do a global search/repalce later.

Sounds good. I can work on getting the Files and adding the cell block. These will likely include the standard library Test for compatibility with the version with tests.

We can leave the cell block modifications to one of the RAs to let you focus on rewrites/etc.  I think that using Test is added in a code-test block already in all files.
The files we have been maintaining are currently in https://github.com/QuantEcon/lecture-source-jl/tree/master/notebooks
and arnav wrote a simple script to copy a build file there and run it through nbconvert https://github.com/QuantEcon/lecture-source-jl/blob/master/execute-notebooks.sh
This is all temporary, but the current _build directory is not versioned, and we don't necessarily want to rewrite the .ipynb files when we run them.  Lets take further discussions onto slack

Yes, using Test is added as a :class: test block in all files.

Done at 7762b6d. Just copied and pasted that precise block of text above the first code-block, minding syntax.


Hung on Update:

Appears to get hung, if I back out, and "install the mod again" it will work the next time.

Is this during the mod update (i.e. arkmanager update --update-mods) or during the mod install (arkmanager installmod 543828831)?
It it's during arkmanager update --update-mods, then note that immediately after downloading the mods it will check the modification times of the downloaded mods against those of the installed mods, and this can take a while, especially with mods with lots of files, and especially if those files haven't been accessed in a while and their inodes are no longer in cache.

ping @Budman17r Is this still occurring?

Closing for lack of feedback, feel free to reply if there's any follow up.


Fix include order (IDFGH-9427)

Types such as uint8_t are used in modbus_params.h. If we remove the source file from the project compilation will fail. This include approach is more accurate.
Please review and merge this pull request.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Hello @ondergormez ,
Thank you for your issue. This is confirmed as minor and formal process is started for this issue. I will inform you as soon as it is ready for merge.

The PR merged in commit 229635de06a47e93f522241323858d971ff50619 and will be synchronized with github once master passed all tests.

The PR merged in commit 229635de06a47e93f522241323858d971ff50619 and will be synchronized with github once master passed all tests.

Thanks for contribution again, feel free to reopen.


update Fields docsstring

Codecov Report

Merging #42 (18cf777) into main (9da3882) will decrease coverage by 0.62%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main      #42      +/-   ##
==========================================
- Coverage   55.00%   54.37%   -0.63%
==========================================
  Files          38       38
  Lines        3558     3498      -60
==========================================
- Hits         1957     1902      -55
+ Misses       1601     1596       -5

Impacted Files
Coverage Δ

src/Fields.jl
28.76% <ø> (-0.97%)
:arrow_down:

src/CellRange.jl
37.50% <0.00%> (-6.95%)
:arrow_down:

src/Parameter.jl
51.26% <0.00%> (-4.13%)
:arrow_down:

src/utils/SIMDutils.jl
44.68% <0.00%> (-2.80%)
:arrow_down:

src/reactionmethods/RateStoich.jl
72.41% <0.00%> (-2.59%)
:arrow_down:

src/ModelData.jl
55.55% <0.00%> (-2.34%)
:arrow_down:

src/data/ArrayScalarData.jl
44.00% <0.00%> (-2.16%)
:arrow_down:

src/utils/IteratorUtils.jl
23.23% <0.00%> (-1.53%)
:arrow_down:

src/data/IsotopeData.jl
50.00% <0.00%> (-1.45%)
:arrow_down:

src/data/ScalarData.jl
29.11% <0.00%> (-1.38%)
:arrow_down:

... and 11 more

Help us with your feedback. Take ten seconds to tell us how you rate us.


cct - calculate and display OEE

availability = active / available time
performance (efficiency) = rate/optimal rate
quality = good/total parts
oee = availability * performance * quality
For first pass simplicity we could have a fixed optimal rate and available times, eg specify them in setup.yaml?

cm: Yes , 200ppm, and 8-5

use bins for calculations?
extend to performance and quality?

I'll work on Availability, since I need to modify the existing availability.js plugin.
Then I'll need to modify the database to handle Performance and Quality also, in the bins table and metrics view.
The Quality plugin would poll the db for s1-l1-pcgood and s1-l1-pcall, divide them, maybe write as s1-l1-quality?


localized fields for mongoid 7.1 and RA 1.4

Hi @Kasvit ,
after upgrading mongoid and RA, I'm left with broken forms that don't display existing values.
Did you managed to fix this with the commits in your PR?
If so, why did you close to PR?
Thanks :)


Add helios

Insert URLs to the project here:
https://github.com/JGCRI/helios

[x] The projects is active, documented, open source licensed, shows usage from external parties and is directly targeting environmental sustainability. Find more details in the Contribution Guide.

All issues labeled as 'Good First Issue' of the project listed on OpenSustain.tech will be visible on ClimateTriage.com. This is a great way to welcome new community members to your project.

@mengqi-z


Find sum of n natural numbers by recursion

Description
Input  : 5
Output : 15

Program added successfully :tada:
Thanks for your contribution :hugs:


feat: remove Optional from go modules

This PR just removes Optional. Very simple, very neat. Based on the discussion in https://discord.com/channels/707636530424053791/1203102934901071882/1203134907677675630 (and probably in other places). There's also some additional context in https://github.com/dagger/dagger/pull/6370.
I think we should try and get this in for v0.9.9:

We shouldn't ship two mechanisms of doing optionals in v0.10.0 - breaking earlier is better, and gives us more time for feedback.
Our docs haven't described this for a while (since https://github.com/dagger/dagger/pull/6225). We've made other breaking changes since then (including the removal of dag.Host), so it's likely that users who wrote modules using these docs as references will need to make other updates as well.

We could potentially deprecate this in v0.9.9, and remove in v0.10.0, but:

I couldn't easily think of a nice way of doing this that would alert users helpfully
I ran out of time, and this is nice and easy :tada:

We could also just reschedule this for v0.10.0 if there's too much missing.

Ok, we need to be proactive here and warn the developers who will be most affected, so that they know what to do.

Ok, we need to be proactive here and warn the developers who will be most affected, so that they know what to do.

As discussed on discord: let's merge and simultaneously communicate the breakage to developers on discord, similar to what @sipsma did for host breakage.


Infineon DPS310 Barometer

used on the mRo Control Zero F7

Docs?: http://dev.px4.io/master/en/middleware/modules_driver.html

This is fully functional now.

FYI @pkocmoud


Add TopShotTier contract to resolve Tier on-chain

Related to #170
Still work that needs to be done, I'm throwing this up so that folks can take a look and give feedback in case something is completely off and isn't the way they'd want this done.
This PR will add a new contract called TopShotTier which will be used to maintain a mapping to resolve the Tier trait on TopShot Moments onchain.
Assumptions

some moments might need a special override just for them
all other moments are a combination of setID+playID as a string

Approach
To keep things simple, we are keying on the concatenated string here, but some consideration was also made about whether this could be some sort of nested structure.
There is one resource created and maintained by this contract called TierMapping which has:

A public interface which exposes a method to resolve rarity given a moment id, setID, and playID.
some admin methods that allow setting tiers so they can later be resolved
If a mapping doesn't exist, the tier will return as an empty string (it will not panic)

TODO:

[ ] Add tests to return Tier in both cases of mappings
[ ] Add test to return an empty string for no mapping being present
[ ] Verify if any methods which create plays/sets should be setting this mapping automatically.
[ ] Any other verification I'm not aware of?

I think this could be useful. Are we sure that each play and set combination can only have one rarity?

Can confirm that presently each play and set combination has only one rarity, however that might not always be the case in the future, so leaving room for a per moment override makes sense.

I think this could be useful. Are we sure that each play and set combination can only have one rarity?

Can confirm that presently each play and set combination has only one rarity, however that might not always be the case in the future, so leaving room for a per moment override makes sense.

Just to add to this as well, the dictionary here is String -> String so we can add more and more ways for that to be mapped, hopefully that makes this open enough that flexibility is permitted for future use

coming back to this @jrkhan @joshuahannan is there a checklist of things we need to make sure to address to get this accepted? I'm not sure if this is the approach that folks on the TS team want or not, happy to amend it if needed, but it would give flowty (and I'm sure other third-party platforms) a much easier way to deal with TS assets
Certainly there are some other data processing items that the TS team will have to do to backfill this data as well which is a whole other story that might take a while

I think this would be great to have on-chain and I think it would be a valuable use of the Top Shot team's time, but I'm not on the team, so I don't have much visibility or control of their priorities. @jrkhan will need to be the driver here.

Apologies about the delay, I think this generally makes sense. We would need to create a few things on our BE to backfill the tier.
Wanted to run a few thoughts by @joshuahannan and @austinkline for the approach -> we also don't have any of our tags/badges available on chain yet.. and those are all dynamic (In the sense that they can be added to a moment/edition post minting)
Thinking that generally we have three kinds of data:

Data that's always been on chain, and is associated with the moment when it's minted
Things that have always been associated with the moment in product, are missing on chain (just moment tier)
Things that can be dynamically added in product (e.g. tags/badges)

I'm wondering if we could, instead of solving specifically for moment tier, try to approach this to also accomodate badges/tags.
Perhaps two maps (or perhaps two contracts)
MomentTags (sparsely populated, key value store of data associated with individual moments, falls back to EditionTag if not set)
EditionTags (the default value for a moment of that edition)
Both of ^ would also get used by the traits metadata view.
We could then have the moments "rarity" be stored in a tag.

@jrkhan I think it makes a lot of sense to try to use this as an opportunity to pull in all off-chain data that's currently out there. Would it make sense to get a call scheduled or circulate a more formal document for what's missing so we have a complete view of what's truly needed? What you've highlighted is a great start but it would be great if we could ensure that whatever steps are taken now are sufficient for any future needs
@joshuahannan for your thoughts as well

yeah, I think this would require a bigger product discussion, because it also might apply to other NFT projects that have similar types of metadata. I think it is a god start though, but we should try to make sure it fits it well with the current metadata views and doesn't require too much extra custom code

yeah, I think this would require a bigger product discussion, because it also might apply to other NFT projects that have similar types of metadata. I think it is a god start though, but we should try to make sure it fits it well with the current metadata views and doesn't require too much extra custom code

I wonder if this isn't a good opportunity to propose a standard for how to properly add new metadata? I don't want to block progress on unnecessary process, though. Is a good path forward to get a call scheduled or something? Open to ideas!

I wonder if this isn't a good opportunity to propose a standard for how to properly add new metadata?

Do you mean like a general standard for any project, or something specific to Top Shot? I assume that we'd probably use the new attachments feature

@austinkline do you still need this feature? Would you like to resume work on this PR?

@austinkline do you still need this feature? Would you like to resume work on this PR?

I would say lots of folks are looking for this feature, and a similar one to bring other off-chain traits that are currently on TopShot on-chain. That being said, if we want to go back to the drawing board for that, I'm fine with closing this and syncing up on the best path forward.
The cadence side is likely to be much simpler than whatever migration work is needed on your side

Thanks @austinkline I have moved this to an internal linear ticket. We will need to prio with product/engg team to investigate a solution like Jamil suggested.

Sounds good, happy to brainstorm on the cadence side if I can be of any help!


HttpPost requires [FromBody]

[Moved from https://github.com/aspnet/Docs/issues/11787.]
@Jaygem asks ...
Issue
In this page at the HttpPost section there's a missing [FromBody] attribute :
original :
// POST: api/Todo
[HttpPost]
public async Task<ActionResult<TodoItem>> PostTodoItem(TodoItem item)
{
    _context.TodoItems.Add(item);
    await _context.SaveChangesAsync();

    return CreatedAtAction(nameof(GetTodoItem), new { id = item.Id }, item);
}

Working solution for me :
// POST: api/Todo
[HttpPost]
public async Task<ActionResult<TodoItem>> PostTodoItem([FromBody] TodoItem item)
{
    _context.TodoItems.Add(item);
    await _context.SaveChangesAsync();

    return CreatedAtAction(nameof(GetTodoItem), new { id = item.Id }, item);
}

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 583ae3e7-5915-f22b-e54c-6c100cf2a7da
Version Independent ID: 95f2549e-29f9-e31a-b4d0-432b971643ff
Content: Tutorial: Create a web API with ASP.NET Core MVC
Content Source: aspnetcore/tutorials/first-web-api.md
Product: aspnet-core
Technology: aspnetcore-tutorials
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

Per Build web APIs with ASP.NET Core:
[FromBody] is inferred for complex type parameters .

I think we're using the same code as the scaffolder. We should verify that and use the same code.

if you're using ASP.NET Core 2.1+, you can also use the [ApiController] attribute to automatically infer the [FromBody] binding source for your complex acti

I tried it and it worked, thank you for your time!


cmd/compile: teach prove pass that x|1 > 0 for unsigned x

package p

import "math/bits"

func f(x uint32) int {
    return bits.Len32(x|1)
}

Compiles to:
TEXT    "".f(SB), NOSPLIT|ABIInternal, $0-16
        FUNCDATA        $0, gclocals·33cdeccccebe80329f1fdbee7f5874cb(SB)
        FUNCDATA        $1, gclocals·33cdeccccebe80329f1fdbee7f5874cb(SB)
        MOVL    "".x+8(SP), AX
        ORL     $1, AX
        LEAQ    (AX)(AX*1), AX
        LEAQ    1(AX), AX
        BSRQ    AX, AX
        MOVQ    AX, "".~r1+16(SP)
        RET

Instead of the LEAQ/LEAQ/BSRQ triple of instructions, it should be a single BSRL.
There are two parts to this.
Part one is introducing OpBitLenNNNonZero ops, much as we have OpCtzNNNonZero ops, and hooking them up appropriately. This is easy.
Part two is teaching the prove pass that unsigned x|1 > 0.
Seems like it should be a simple thing to teach it, but I always get lost in the prove pass. Any hints?
cc @zdjones @dr2chase @randall77

Not sure about the prove pass. Might be easiest in the section where we find length and capacity ops. When you find v=(OR x (CONST c)) add f.update(b, v, c, unsigned, gt|eq).
It might be easier just to do, in generic.rules
(BitLen (OR x (CONST [c]))) && c != 0 => (BitLenNonZero (OR x (CONST [c]))).

But then maybe you also want to handle if x != 0 { ... bits.Len32(x) }. That would require prove pass modifications.

Thanks! Given that this is fairly specialized, doing it all in rewrite rules makes sense.

Implemented. Surprisingly, it made performance worse.

What was your benchmark?

@dr2chase have found this issue from this repo https://github.com/josharian/log10 and probably here is the mentioned benchmark https://github.com/josharian/log10/blob/main/log10_test.go#L114

Thanks, @cristaloleg. That's the benchmark, plus some minor variations that I was experimenting with. (I no longer have the exact code in front of me, but IIRC they are the obvious changes you might toy with trying to get good generated code out of those functions.)
The rules I added to experiment with were in AMD64.rules:
(BitLen32NonZero <t> x) => (ADDQconst [1] (Select0 <t> (BSRQ x)))

and generic.rules:
(BitLen32 x:(Or32 (Const32 [c]) _)) && c != 0 => (BitLen32NonZero x)

This made the generated code shorter, but slower.
I also added these to AMD64.rules, which generated better code, including one or two other places in the standard library:
// Insert ADCQ.
(CMOVQCS x (ADDQconst [1] x) f) && f.Op != OpAMD64InvertFlags => (Select0 (ADCQconst [0] x f))
(Select0 (ADCQconst [0] x f:(InvertFlags g))) => (CMOVQCS x (ADDQconst [1] x) f)

(ADDQconst [c] (Select0 (ADCQconst [d] x f))) && is32Bit(int64(c)+int64(d)) => (Select0 (ADCQconst [int32(c+d)] x f))

(InvertFlags (InvertFlags f)) => f

I didn't mail these because I was frustrated that the failed to capture many of the cases in which we could use ADCQ. The problem is that we canonicalize many CMOVQCS into CMOVQHI for CSE purposes, including pointlessly inserting InvertFlags to do so. But there's no way to absorb an InvertFlags into ADCQ, so we end up having to rip out the ADCQ to avoid having an InvertFlags reach codegen. This is a general problem with doing optimizations like ADCQ and SBBQ and friends on amd64, and I don't see a clear path forward for it.


[Request] Installation guide is required for MACOS users

Hi, all! Hope you are well)
Guys, could you help me, please! I wanna make some stuff using Carla Simulator, but I'm struggling with installation process on my macOS. What can I do with installation? Is it possible to install a simulator on MacOS, or how can I run it (maybe using some docker-linux image or in cloud machine). I need the easiest way to install and start with your great project.
Thanks in advance. Also, after some research, I can add some guidance in documentation if needed.

@Almaz-KG We currently don't have proper MacOS support. The closest we got is this PR: #2433


Fix dist snapshot

Fixes #29
Synchronization is implicitly done when the weights are reduced and aggregated. So the barrier can be safely removed.
Also, the current extension only allows one worker to save the snapshot when the trigger is fired.
Now when the saver_rank is set to -1, all the ranks will save their status.
TODO: improve test

Converted to the draft PR until TODOs resolved.


Update README.md

Description: fix typo

BREAKING CHANGE: no

Related issue (if exists): no

Thanks, but one more thing that needs to be done is the terminal output npx changeset --empty


Add Automotive Ethernet as a category

https://www.keysight.com/us/en/product/APM1000E/100-1000base-t1-media-converter.html
https://intrepidcs.com/products/automotive-ethernet-tools/rad-moon2/
https://www.mouser.com/ProductDetail/NXP-Semiconductors/RDDRONE-T1ADAPT?qs=iLbezkQI%252BsgDS3Xu8v8E%252BA%3D%3D
https://www.nxp.com/design/development-boards/analog-toolbox/sja1110-100base-t1-multi-gig-ethernet-switch-example-board:MR-T1ETH8

Thanks for your suggestion.
I think mixing different buses into one page might complicated to search and worsens the structuring of information.
Would be great to have different lists for various automotive interfaces:

Automotive Ethernet
Flexray
LIN bus (already started)

Unfortunately I don't have any experience with both  Automotive Ethernet and FlexRay to creating comprehensive list.

@iDoka I just found out about this list from this comment on one of my repos - https://github.com/jaredthecoder/awesome-vehicle-security/issues/73
I added your lists to a specific section there at the very top since they expand greatly on specific subsections of what I have there at the moment.

If you start to add more, just send me a PR and I will add them it.

@jaredthecoder wow, great!
Thanks for adding! 🙏


stats: Add per-graph loading indicator.

Two issues on the /stats page:

The size of the graphs isn't set until the data is loaded, so the page formatting moves around. We know exactly how big each graph will be (regardless of what data is loaded), since it is set in the plotly code in stats.js, so that just needs to be copied over into the CSS.
It would be nice for each graph to have its own loading indicator.

http://zulip.readthedocs.io/en/latest/analytics.html#analytics-ui-development-and-testing might be somewhat relevant reading.

Hi, I would like to work on this issue.
Could it be assigned to me.

Hi @KiranShahdadpuri! Comment @zulipbot claim on this issue and a bot will assign this issue to you :)

@zulipbot claim

@zulipbot claim

yes, I am workingon this issue.

@zulipbot claim

@zulipbot abandon

@zulipbot claim

@zulipbot claim

Hello everyone! I am new to open source and this is my first issue. Just wanted a little clarification regarding the first issue.
Am I supposed to mention the exact height and width in the css for the "chart-container" div element. Since different charts have different heights I was thinking if this is the scenario then I could provide a minimum-height for the container. Correct me if I am wrong. Thank you!

I'd like to take up this issue but in my development environment, when I try to view the /stats page it gives me the error "No analytics data available. Please contact your server administrator."
Any ideas on how I can get resolve this?

@zulipbot claim

Hi @utkarsh23, thanks for taking this up! The error you mentioned is because of analytics database being empty, you will need to populate it using the populate_analytics_db management command as described here: http://zulip.readthedocs.io/en/latest/subsystems/analytics.html?highlight=populate_db#setup-and-testing

@HarshitOnGitHub yeah I figured that out
But thanks anyways, appreciate it :)


Not an issue but a request features

Hi Thanks for the application, I recently came a ccross this application and it has helped to get ride of unwanted list from 4000 to  900 of desire channels.
Each time that I need to clean the list I have to go through same process removing unwanted list,
my asked is if possible to include some sort of filter or check or unchecked list  for unwanted group and then have this saved as favourite so next time that I with to clean the main file I will use my old favourite
Thanks for the efforts

Hi,
when I understand it correctly, you want to select unwanted channels and save it as a filter list?
I think I can do this, the problem is to find a good way to integrate this in the UI. The fastest way could be to add this as an option of the duplicate
button, e.g. select all duplicates?
 On Friday, January 12, 2024 at 12:56:02 AM GMT+1, e123enitan<EMAIL_ADDRESS>wrote:

Hi Thanks for the application, I recently came a ccross this application and it has helped to get ride of unwanted list from 4000 to 900 of desire channels.
Each time that I need to clean the list I have to go through same process removing unwanted list,
my asked is if possible to include some sort of filter or check or unchecked list for unwanted group and then have this saved as favourite so next time that I with to clean the main file I will use my old favourite
Thanks for the efforts
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

I made a quick test version download here
https://codeberg.org/Isayso/PlaylistEditorTV/issues/4     On Friday, January 12, 2024 at 12:56:02 AM GMT+1, e123enitan @.***> wrote:
Hi Thanks for the application, I recently came a ccross this application and it has helped to get ride of unwanted list from 4000 to 900 of desire channels.
Each time that I need to clean the list I have to go through same process removing unwanted list,
my asked is if possible to include some sort of filter or check or unchecked list for unwanted group and then have this saved as favourite so next time that I with to clean the main file I will use my old favourite
Thanks for the efforts
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: @.***>


feat: methods for signed url uploads

This PR:

adds a create_signed_upload_url method
adds a upload_to_signed_url method
adds documentation for typed dicts used in the library for headers/responses

Codecov Report
Patch coverage: 83.33% and project coverage change: -0.34 :warning:

Comparison is base (2c5e2fc) 85.71% compared to head (82ccab4) 85.38%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #107      +/-   ##
==========================================
- Coverage   85.71%   85.38%   -0.34%
==========================================
  Files          12       12
  Lines         371      431      +60
==========================================
+ Hits          318      368      +50
- Misses         53       63      +10

Impacted Files
Coverage Δ

storage3/_async/file_api.py
84.48% <82.14%> (-0.75%)
:arrow_down:

storage3/_sync/file_api.py
84.48% <82.14%> (-0.75%)
:arrow_down:

storage3/types.py
95.74% <100.00%> (+0.39%)
:arrow_up:

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


Adding Microsoft Azure AI

I want to add Microsoft Azure AI  in the project.

@ashitaprasad please review the pr raised

@ashitaprasad please review the pr opened


Display a prepopulated values`

I have successfully pre-populated the multiselect using the id-prop. When I click on the dropdown it DOES show my pre-selected value(s). But it does not show up in the initial view of the dropdown, neither the selected item name nor the '2 Selected' value. How do I trigger that, or can it be added to the code.

Here you see that the values are set but the display is still as if none are selected.

How did you solve it?

I'd also like to know how to solve this if it is at all possible...

Do anyone got the solution for this??


Support SSL-enabled clusters without client cert auth.

What version of Kubernetes (kubectl  version) are you using?
1.7.3
What version of etcd (etcdctl --version) are you using?
3.2
What version of ReShifter are you using (for rcli: rcli version otherwise at the bottom of the app)?
v0.3.21-alpha
Reshifter currently assumes that any etcd endpoint with the https:// prefix is configured to require client authentication. Our current cluster configuration is setup such that the etcd endpoints are TLS-enabled, and signed by a common CA between the Kubernetes masters/workers/etcd nodes, but do not require a client certificate or credentials to be passed along with the request.
It would be swell to allow for requests to be https:// without requiring that the RS_ETCD_* variables be set.
I haven't written a ton of Go personally, but if you can point me in the right direction I'd also be interested in giving a go at a patch.

@blardo thanks a lot for raising this issue, I think it makes a lot of sense. If you want to give it a try, it should be as 'easy' as patching:
https://github.com/mhausenblas/reshifter/blob/3f3ce15aaa1ba6bd0da91a64897ce24b2016298b/pkg/util/etcd3.go#L32
That is, essentially providing a flag that creates a secure etcd3 client without the respective env variables.
One thing to remember is that the ReShifter library (i.e. everything under pkg/ is used by both rcli and the app/HTTP API, so there will be different ways to pass the flag to the new function but I wouldn't worry about that for now. Or, put in other words: I'd focus on getting it done in the library and in rcli and I can then take care of getting it implemented in the app/HTTP API. Makes sense? :)

Makes sense to me - will have something ready to review in the next couple of days. Thanks!


JedisCluster should also expose BinaryJedisCommands.

It would be great to have JedisCluster expose BinaryJedisCommands in addition to JedisCommands.

@christophstrobl PR is already being reviewed here: https://github.com/xetorthio/jedis/pull/671. Once we finishing reviewing we'll merge into Jedis.


Fix caching of dependencies in Travis.

r? @dirvine
(maidsafe_highfive has picked a reviewer for you, use r? to override)

r? @rossmuir


dioxus-cli fails to install on windows 11

Problem
We can't install dioxus-cli on windows 11.
Steps To Reproduce
run the command
cargo install dioxus-cli

results in
error[E0063]: missing field `desktop_template` in initializer of `tauri_bundler::DebianSettings`
   --> packages\cli\src\config.rs:381:9
    |
381 |         tauri_bundler::DebianSettings {
    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing `desktop_template`
error[E0063]: missing fields `custom_language_files` and `template` in initializer of `tauri_bundler::NsisSettings`
   --> packages\cli\src\config.rs:517:9
    |
517 |         tauri_bundler::NsisSettings {
    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing `custom_language_files` and `template`

Expected behavior
Installation success
Environment:

Dioxus version: 0.4.0 or 0.4.2 (github current)
Rust version: 1.71
OS info: Windows 11

Workaround:
Installing with --locked works (thanks @!marc on discord):
cargo install dioxus-cli --locked

Questionnaire

[ ] I'm interested in fixing this myself but don't know where to start
[ ] I would like to fix and I have a solution
[x] I don't have time to fix this right now, but maybe later

Yet another fix for this: https://github.com/fanyang89/dioxus/commit/5b5ea2014f94d4e88db9200790e4e9ef3ff8352e

Yet another fix for this: fanyang89@5b5ea20

We can merge both fixes. We need to pin the version because tauri doesn't follow semvar for tauri-bundle, but updating to the new version would be nice

We can merge both fixes. We need to pin the version because tauri doesn't follow semvar for tauri-bundle, but updating to the new version would be nice

PR created #1416

The same issue on the latest ArchLinux with rust 1.72.

Same issue on macOS

Diouxs 0.4.1 has now been published which fixes cargo install dioxus-cli


Boolean ("intersect") returns error when one shape completely encloses the other.

Hey, sorry to bother again.
If I try to get the intersection of a cylinder thats completly enclosed by a sphere I get the following error:
2022-04-09 17:44:59.152 (   0.694s) [                ]    vtkPointLocator.cxx:845    ERR| vtkPointLocator (000002BB44D86EE0): No points to subdivide
2022-04-09 17:44:59.208 (   0.750s) [                ]vtkIntersectionPolyData:2410  WARN| No Intersection between objects
2022-04-09 17:44:59.214 (   0.755s) [                ]vtkDistancePolyDataFilt:82     ERR| vtkDistancePolyDataFilter (000002BB44DA4D00): No points/cells to operate on
2022-04-09 17:44:59.219 (   0.761s) [                ]vtkDistancePolyDataFilt:82     ERR| vtkDistancePolyDataFilter (000002BB44DA4D00): No points/cells to operate on
My code looks like this:
from vedo import *
shape1 = Cylinder(pos=(0.2,0.2,0.2), r=0.25, height= 0.7).triangulate()
shape2 = Sphere(pos=(0,0,0), r =2).triangulate()
intersection = shape2.boolean("intersect", shape1)
plt = Plotter(shape=(2,2), axes=3,)
plt.show(shape1, "cylinder", at=0)
plt.show(shape2, "Sphere", at=1)
plt.show(shape1, shape2, "sphere_and_cylinder", at=2,)
plt.show(intersection, "Intersection", at=3)
plt.interactive().close()
In this case, can I receive the complete cylinder as an output?
Thanks a lot in advance.

for some reason the filter needs that there is at least an intersection.. to avoid the warning you can check that shape2 is inside shape1 with insidePoints() e.g.
print(shape2.insidePoints(shape1.points()).N()==shape1.N())

Well thats quite the simple solution should have thought of that myself. Thanks a lot for answering anyways.


docs(chore): update the sonar and synk badges

update the readme file in docs folder as well
GH-96
Description
update the sonar and synk badges in README file
Fixes #96
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Intermediate change (work in progress)

Checklist:

[ ] Performed a self-review of my own code
[ ] npm test passes on your machine
[ ] New tests added or existing tests modified to cover all changes
[ ] Code conforms with the style guide
[ ] API Documentation in code was updated
[ ] Any dependent changes have been merged and published in downstream modules

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Sounds for Different Items

Add different sound effects for each of the different item types. Also play these when events alter a player's stats.

I added a sound for picking up relics. There is new infrastructure for playing sounds. See commit f8cdcbe.


Update to util-linux v.2.26

Full changelog @ https://www.kernel.org/pub/linux/utils/util-linux/v2.26/v2.26-ReleaseNotes .
Some highlights;
nsenter(1):
 - has been updated to work with the latest kernel changes in user namespaces
 - supports new command-line option --preserve-credentials

unshare(1):
 - has been updated to work with the latest kernel changes in user namespaces
 - supports new command-line option "--setgroups=<deny|allow>"

Sure, that doesn't hurt. Thanks!


Segue from CDVViewController to native view controller using JavaScript link in UIWebView

Hello, I am using this with cordova wkwebview plugin removed from Podfile, so UIWebView, and it is working great but I cant seem to figure out how I would go about segueing from my CDVViewController to my native Swift view controller, passing a Javascript variable to a Swift variable in my native VC using a simple HTML link and JavaScript.
I have in my www folder, an Ionic app that occasionally shows iframe of remote url on my webserver.  On that web server I convert PHP variable to JavaScript variable and wish to transfer that Javascript variable to native view controller on segue.
I have tried using the advice at the following link but I cant figure out how to apply it to phonegap-webview-ios
See - https://stackoverflow.com/questions/36139062/call-swift-function-with-javascript-using-uiwebview/36144481#36144481
In my CordovaViewController.swift file I have
//
//  CordovaViewController.swift
//

import UIKit
import Cordova
import WebKit

class SecondViewController: CDVViewController {

    @IBAction func unwindToVC1(segue:UIStoryboardSegue) { }
    @IBAction func goToVC2BtnTapped(_ sender: Any) {
        performSegue(withIdentifier: "disconnectUnwindToVC1", sender: self)
        performSegue(withIdentifier: "unwindSeguetoCDV", sender: self)
    }

    override func viewDidLoad() {
        super.viewDidLoad()

        // Do any additional setup after loading the view.

    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

    override func viewWillAppear(_ animated: Bool) {
        super.viewWillAppear(true);
        func webView(_ webView: UIWebView, shouldStartLoadWithRequest request: NSURLRequest, navigationType: UIWebViewNavigationType) -> Bool {
            if request.url?.scheme == "myurlscheme" {
                performSegue(withIdentifier: "sessionOpener", sender: self)
            }
            return true;
        }

    }

}

on web server I have link using onclick="listenInSwift()" like the link above suggests, using a script in my head (on server, not in www folder) that declares listenInSwift() function that sets window.location to "myurlscheme"
window.location = 'yoururlscheme://somehost?greeting=hello'
Thank you for any insight at all.  I'm relatively new to this.  What you've done with this plugin is much appreciated!

Edited my post above with more details.  As I said, thank you for any insight at all.


Query: projected collection navigations don't get tracked if the collection is composed on

Related to #7131
We currently preform fixup if the collection is projected direcly (by using include pipeline), however if it's composed on, we don't.
e.g.:
context.Parents.Select(p => new {Parent = p, p.Children.Where(c => c.IsNaughty)}).ToList();

We should either change the way we do fixup for those cases, or improve the logic that converts collection projections to includes to incorporate more cases (esp. filters)

Bad news...I thought this was fixed but with 2.0.1, I'm back to this old problem.
In this query:
 _context.Samurais.Select(s =>
                   new { Samurai = s, Quotes = s.Quotes })
                   .ToList();

The resulting object's Samurai is aware of its quotes.
But when I filter the quotes ala
 _context.Samurais.Select(s =>
                   new { Samurai = s, Quotes = s.Quotes.Where(q => q.Text.Contains("happy")) })
                   .ToList();

The object's quote property has the quotes, but it's samurai's quotes property is empty.
Even if I explicitly append ToList() to the subquery
 var happySamurais = _context.Samurais.Select(s =>
                   new { Samurai = s, Quotes = s.Quotes.Where(q => q.Text.Contains("happy")).ToList() })
                   .ToList();

The fixup isn't happening.

🎉


Add auto github release workflow

Is your feature request related to a problem?
As part of OpenSearch releases, opensearch-build pushes a tag for the release commit.
But publishing a github release based on the tag is manual.
What solution would you like?
We've added this workflow[1] in OpenSearch which publishes github releases automatically when a tag is pushed.
Add this workflow to all repos releasing software in the project.
See example: https://github.com/opensearch-project/OpenSearch/blob/main/.github/workflows/auto-release.yml
Example Release: https://github.com/opensearch-project/OpenSearch/releases/tag/2.5.0
[1] https://github.com/opensearch-project/opensearch-plugins/blob/main/WORKFLOWS.md#auto-github-releases

Can I solve this problem?

@LastZhabka Checking in. Are you working no this issue? I just noticed that JS has not published releases in some time so this will ensure releases are published automatically.


Min replicas extra manifests

Hi,
This PR adds the following features:

The possibility to set the number of minReplicaCount on the ScaleJob definition to an arbitrary value instead of having it hard coded.
To pass extra manifests to be created by the chart
Turns organizationURL only mandatory if you set the chart to create the required secret

Hello @wolviecb, thank you for your patience. You'll find comments attached to my review.

Hello @wolviecb, thank you for your patience. You'll find comments attached to my review.

Thanks for the comments :)

Merge commit ref e4b686edc4a46c64228187f1550759b8acb48678. I updated a bit of the code, fixing lint and code quality. Behavior remains unchanged.


Include Turbolinks if it is installed

Turbolinks is overwriting the redirect_to method of ActionController::Redirecting.
Devise only includes ActionController::Redirecting
So, if turbolinks is installed, it doesn't work will with devise.
This should fix it.

The failure app should not know about turbolinks. I know it will redirect without turbolinks in the case the authentication fails, but devise should not know anything about turbolinks and fully rendering a failure page is not a performance problem to justify this coupling. Thank you for the pull request.

@rafaelfranca it's not a performance issue, no. But using Turbolinks with the wrappers for Android and iOS requires Turbolinks redirects. The Webview doesn't follow normal redirects.
But I understand you don't want to include this.
For anyone stumbling opon this issue, put this in your devise config:
module Devise
  class FailureApp
    include Turbolinks::Controller
  end
end

I see. We could take a different approach. Instead of adding that in the controller we could allow people to extend the devise failure app without monkey patching. Something like:
ActiveSupport.run_load_hooks(:devise_failure_app)

in the controller and
ActiveSupport.on_load(:devise_failure_app)
  include Turbolinks::Controller
end

I agree we can provide a lazy load hook. And it seems it shouldn't be much hard to do it.
If I understood it right, we just need to add ActiveSupport.run_load_hooks(:devise_failure_app, self) to the end of the failure app class.
@wnm If you're willing to change this implementation to use a lazy load hook, we'd happily accept the pull request. Otherwise we can implement it in another one.
Some related resources:
http://api.rubyonrails.org/classes/ActiveSupport/LazyLoadHooks.html
https://simonecarletti.com/blog/2011/04/understanding-ruby-and-rails-lazy-load-hooks/

@tegon I updated the pull request:

Added ActiveSupport.run_load_hooks(:devise_failure_app, self) to the end of failure app class.
Included config to load Turbolinks::Controller in devise initilizer template (but commented out)

Hope I understood everything correctly?

@wnm Thanks! I think that's basically it. I just think we should have a test for this.
One way we can test it is to create a simple module with a method and include it in the failure app using this hook, then we can check if the failure app responds to that method.
If you need help with this test, let me know.

@tegon not sure if the tests are in the right place. let me know if they are not...

@wnm Looks good, thanks again!

This doesn't seem to be required for Rails 6 and may cause confusion. Was trying to troubleshoot and tried to toggle this config on, but it errors for me.  My issue ended up being a conflict with my existing user routes.
I'm not using the turbolinks gem so there's no Controller to include. Instead, I installed turbolinks with yarn and it gets loaded in application.js.
Error:
uninitialized constant Turbolinks

More info about rails js: https://prathamesh.tech/2019/08/26/understanding-webpacker-in-rails-6/
Just an fyi. Thanks for the PR/gems.


Empty tags in draft

Make new content
Add a tag which currently has no category (e.g. Algorithms)
Set draft=true
Build page

Reason: Failed to render 'page.html'
Reason: get_taxonomy_url: couldn't find Algorithms in tag taxonomy

Remove draft flag

Normal build

Unsure if this is a bug or a feature. Need to read up.

This is apparently default behaviour. I'm going to write drafts in Joplin and drop them into gutenberg later. No point using draft the way it's implemented.


Show available tokens for nodes in grid

This may be challenging when you have multiple blockchain identities on 1 node but I can brainstorm on this.

might best if a report could be pulled out instead
which outputs something like - node1, eth identity 100 available tokens, idenity xdai, 120 available tokens etc.
otherwise with more and more chains, it will become a mess to have it in the column there


[VPL] Align kernel cmake

Align cmake of kernel folder to CS.

No need to refine in OS side. Close it.


Update pip from 22.0.4 to 22.1.2

Applies to Python 3.7+ only, since all older Pythons are EOL and so are already on much older pip due to pip having dropped support for them some time ago.
Changes:
https://pip.pypa.io/en/stable/news/#v22-1-2
https://github.com/pypa/pip/compare/22.0.4...22.1.2
Wheel uploaded using:
$ pip download --no-cache pip==22.1.2
...
Successfully downloaded pip
$ aws s3 sync . s3://heroku-buildpack-python/common/ --exclude "*" --include "pip-*.whl" --profile python --dryrun
(dryrun) upload: ./pip-22.1.2-py3-none-any.whl to s3://heroku-buildpack-python/common/pip-22.1.2-py3-none-any.whl
$ aws s3 sync . s3://heroku-buildpack-python/common/ --exclude "*" --include "pip-*.whl" --profile python
upload: ./pip-22.1.2-py3-none-any.whl to s3://heroku-buildpack-python/common/pip-22.1.2-py3-none-any.whl
$ rm pip-*.whl

GUS-W-11228793.

https://devcenter.heroku.com/changelog-items/2425


TODO: Extract i18n service API into separate module

https://github.com/covidgreen/covid-green-app/tree/current/services/i18n contains common i18n code to support the application. To help maintain that code and limit the possibility of region-specific variations from cropping up, that should be extracted into its own standalone module.

As an app developer who desires to fork CGA to create an app for an authority with this proposal I would also need to fork the i18n module, change references in the app to the fork etc in order to continue.
For something that has a small implementation, and is required within the app itself in order for it to work I'm not sure I agree the overheads stated above make this worthwhile. Im not clear on the merit of this proposed change.
cc @jasnell

Consider this a low priority. Looking across the variations, there is enough similarity between them to warrant separating this out, but I wouldn't consider it a priority.


Terminal Rendering Issue

Issue Type: Bug
(Recovered Workspace Terminal Instances)
: Issue occurs not that often but it occurs sometimes when App is launched
: Usually Happens on continoues toggle of between terminal pane and code tabs pane
Issue:

Large Letter Spacing
Terminal Text glitch (Previous Rendered Text) overlaps with the current/new line

VS Code version: Code 1.68.0 (4af164ea3a06f701fe3e89a2bcbb421d2026b68f, 2022-06-08T11:44:16.822Z)
OS version: Windows_NT x64 10.0.22000
Restricted Mode: No

Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.69.1. Please try upgrading to the latest version and checking whether this issue remains.
Happy Coding!

is anyone else facing this issue?

The 'first' terminal that is open always has a display like this.
The 'second' and onward terminals dont.

I am on the latest version.
and I have restarted VS Code, PC, and all that.

So, it has not done this for the last 24 hours.
I believe, this could be related to my graphics card. I use a RTX 3060 12 GB.
And, I have not seen this issue on the MacBook Air, which I also use along with the main PC. I no longer believe this is a VS Code issue.

is anyone else facing this issue?

The 'first' terminal that is open always has a display like this.
The 'second' and onward terminals dont.

I am on the latest version.
and I have restarted VS Code, PC, and all that.

Same here, but on Mac.

I think this is because you're using Windows Powershell. Does it happen if you use a different version of just powershell?

seems the same as https://github.com/microsoft/vscode/issues/155699

I can reproduce this when I use a monospace font on Windows w powershell.

the fix is to remove whatever you have set for terminal.integrated.fontFamily as it's likely invalid


[BUG]: Fix csm-operator e2e replication and observability tests

Bug Description
Fixes for e2e tests where Replication and Observability on PowerScale and PowerFlex platforms.
Logs
n/a
Screenshots
No response
Additional Environment Information
No response
Steps to Reproduce
n/a
Expected Behavior
Tests should pass.
CSM Driver(s)
n/a
Installation Type
CSM-Operater 1.1.0
Container Storage Modules Enabled
No response
Container Orchestrator
Kubernetes 1.26
Operating System
n/a

E2e tests merged in https://github.com/dell/csm-operator/pull/278


Tests pass with unhandled rejections

This PR showcases #24
I only added 14 to showcase the issue but I think it's better to add 12 as well. 15 is no LTS so it's not representative of real usage.

[x]  add node 14 version to travis CI
[ ] Fix unhandled rejections

Thanks!

please rebase to latest
please squash commits as one
please do not include semver details, just v14 and v12 so that we know LTS versions are fine, no matter which one these are

uhm ... travis ain't happy with sh command ... trying to fix that

do you mind rebasing again so we are sure both 14 and 12 run? stable is green now, thanks

actually, I'll check that, will merge, thanks 👋

Thank you 👍🏽

no, thank you! I wouldn't have known @ungap/event was actually completely useless in there ... also, please update to 0.4.20 for best perf and less errors (there was an SVGElement regression) 👋


Fix Package repos that need attention: package-systemd

I have disabled the workflow for the time being; Debian testing has a release candidate version released - 257rc2-3 - and IMHO we shouldn't use that one yet.


Cover position shows incorrect state under certain conditons.

I've noticed the problem occurring after the most recent updates to reduce polling. Entity buttons on various lovelave dashboards with entity buttons that control Serena shades via my Caseta Pro hub have icons, the color of which change based on the open or closed states of the shades are now no longer always correct.
What seems to be happening is that unless the position of the cover object for a shade is set via the position slider in Home Assistant, or via invoking the cover.set_cover_position service, the state information for the object is not kept up to date. If you were to press the up arrow on the object controls, or invoke a cover service without a position parameter, such as cover.open_cover for instance, the shade responds as expected, but the state of the object is not updated and becomes stale. In the cover.open_cover example, the cover object state remains closed with the curent_position attribute remaining at 0 (assuming the shade was completely closed of course). Hitting the stop button on the cover object for a shade, no matter if the shade is in motion or not, seems to trigger a state update.
I enabled debug logging for custom components as documented in the troubleshooting section, and captured any logging having to do with custom_components.lutron_caseta_pro under various circumstances of manipulating a cover object in Home Assistant. Lines with datetime stamps are lifted from the log output, with comments indicating action being taken, and state results following.

Opening from closed/position 0 to position 10 via slider:
2020-11-18 01:56:45 DEBUG (MainThread) [custom_components.lutron_caseta_pro] Read value for host <IP_ADDRESS>: OUTPUT 9 1 10.000000
2020-11-18 01:56:45 DEBUG (MainThread) [custom_components.lutron_caseta_pro.cover] Got cover OUTPUT value: OUTPUT 9 1 10.00000
State updated in Home Assistant.

Closing from position 10 to position 0 via slider:
2020-11-18 01:58:06 DEBUG (MainThread) [custom_components.lutron_caseta_pro] Read value for host <IP_ADDRESS>: OUTPUT 9 1 0.000000
2020-11-18 01:58:06 DEBUG (MainThread) [custom_components.lutron_caseta_pro.cover] Got cover OUTPUT value: OUTPUT 9 1 0.000000
State updated in Home Assistant.

Opening from closed/position 0 via up arrow on cover object in Home Assistant:
No log output at start of movement.
No log output when shade opens fully.
No state update in Home Assistant.

Pressing stop button on opening shade:
2020-11-18 01:59:19 DEBUG (MainThread) [custom_components.lutron_caseta_pro] Read value for host <IP_ADDRESS>: OUTPUT 9 1 29.560000
2020-11-18 01:59:19 DEBUG (MainThread) [custom_components.lutron_caseta_pro.cover] Got cover OUTPUT value: OUTPUT 9 1 29.560000
State updated in Home Assistant.

Closing from position 29.56 to closed/position 0 via down arrow:
No log output at start of movement.
No log output when shade closes fully.
No state update in Home Assistant.

Pressing stop button for already closed shade with stale state in Home Assistant:
2020-11-18 02:01:56 DEBUG (MainThread) [custom_components.lutron_caseta_pro] Read value for host <IP_ADDRESS>: OUTPUT 9 1 0.000000
2020-11-18 02:01:56 DEBUG (MainThread) [custom_components.lutron_caseta_pro.cover] Got cover OUTPUT value: OUTPUT 9 1 0.000000
State update in Home Assistant, is now proper.

Opening from closed to position 10 via cover.set_cover_position:
2020-11-18 02:20:49 DEBUG (MainThread) [custom_components.lutron_caseta_pro] Read value for host <IP_ADDRESS>: OUTPUT 9 1 10.000000
2020-11-18 02:20:49 DEBUG (MainThread) [custom_components.lutron_caseta_pro.cover] Got cover OUTPUT value: OUTPUT 9 1 10.000000
State updated in Home Assistant.

Closing from position 10 to position 0 via cover.set_cover_position:
2020-11-18 02:23:00 DEBUG (MainThread) [custom_components.lutron_caseta_pro] Read value for host <IP_ADDRESS>: OUTPUT 9 1 0.000000
2020-11-18 02:23:00 DEBUG (MainThread) [custom_components.lutron_caseta_pro.cover] Got cover OUTPUT value: OUTPUT 9 1 0.000000
State updated in Home Assistant.

Closing from position 10 to position 0 via cover.close_cover:
No log output at start of movement.
No log output when shade closes fully.
No state update in Home Assistant.

Opening shades via up button on pico remote (button assigned to two shades):
2020-11-18 02:24:51 DEBUG (MainThread) [custom_components.lutron_caseta_pro] Read value for host <IP_ADDRESS>: DEVICE 11 5 3.000000
2020-11-18 02:24:51 DEBUG (MainThread) [custom_components.lutron_caseta_pro.sensor] Got DEVICE value: DEVICE 11 5 3
2020-11-18 02:24:51 DEBUG (MainThread) [custom_components.lutron_caseta_pro.sensor] Got Button Press, updating value to: 8
2020-11-18 02:24:54 DEBUG (MainThread) [custom_components.lutron_caseta_pro] Read value for host <IP_ADDRESS>: DEVICE 11 5 4.000000
2020-11-18 02:24:54 DEBUG (MainThread) [custom_components.lutron_caseta_pro.sensor] Got DEVICE value: DEVICE 11 5 4
2020-11-18 02:24:54 DEBUG (MainThread) [custom_components.lutron_caseta_pro.sensor] Got Button Release, updating value to: 0
2020-11-18 02:24:54 DEBUG (MainThread) [custom_components.lutron_caseta_pro] Read value for host <IP_ADDRESS>: OUTPUT 9 1 14.770000
2020-11-18 02:24:54 DEBUG (MainThread) [custom_components.lutron_caseta_pro.cover] Got cover OUTPUT value: OUTPUT 9 1 14.770000
2020-11-18 02:24:54 DEBUG (MainThread) [custom_components.lutron_caseta_pro] Read value for host <IP_ADDRESS>: OUTPUT 10 1 14.800000
2020-11-18 02:24:54 DEBUG (MainThread) [custom_components.lutron_caseta_pro.cover] Got cover OUTPUT value: OUTPUT 10 1 14.800000
State updated in Home Assistant as soon as button is released.

Closing shades via close button on pico remote (button assigned to two shades)::
2020-11-18 02:25:30 DEBUG (MainThread) [custom_components.lutron_caseta_pro] Read value for host <IP_ADDRESS>: DEVICE 11 4 3.000000
2020-11-18 02:25:30 DEBUG (MainThread) [custom_components.lutron_caseta_pro.sensor] Got DEVICE value: DEVICE 11 4 3
2020-11-18 02:25:30 DEBUG (MainThread) [custom_components.lutron_caseta_pro.sensor] Got Button Press, updating value to: 4
2020-11-18 02:25:30 DEBUG (MainThread) [custom_components.lutron_caseta_pro] Read value for host <IP_ADDRESS>: DEVICE 11 4 4.000000
2020-11-18 02:25:30 DEBUG (MainThread) [custom_components.lutron_caseta_pro.sensor] Got DEVICE value: DEVICE 11 4 4
2020-11-18 02:25:30 DEBUG (MainThread) [custom_components.lutron_caseta_pro.sensor] Got Button Release, updating value to: 0
2020-11-18 02:25:30 DEBUG (MainThread) [custom_components.lutron_caseta_pro] Read value for host <IP_ADDRESS>: OUTPUT 9 1 0.000000
2020-11-18 02:25:30 DEBUG (MainThread) [custom_components.lutron_caseta_pro.cover] Got cover OUTPUT value: OUTPUT 9 1 0.000000
2020-11-18 02:25:30 DEBUG (MainThread) [custom_components.lutron_caseta_pro] Read value for host <IP_ADDRESS>: OUTPUT 10 1 0.000000
2020-11-18 02:25:30 DEBUG (MainThread) [custom_components.lutron_caseta_pro.cover] Got cover OUTPUT value: OUTPUT 10 1 0.000000
State updated in Home Assistant as soon as button is released while shades are in motion.

Toggling shade via cover.toggle:
No log output at start of movement.
No log output when shade opens or closes fully.
Toggle command functions as expected; an open/opening shade will close, and a closed/closing shade will open.
No state update in Home Assistant at any time after invoking command.

The problem for me now is that I have various pieces of Node-RED and yaml automations that have triggers based on the current state of my shades that are no longer operating correctly.
I could work around the problem by replacing any uses of cover.open_cover, or cover.close_cover with cover.set_cover_position and with position parameters that would result in the same results as I was getting before. Nevertheless, it seems like this current behavior is a regression.

I see from back-reving the component to the 9/30 commit, that state updates were speculative in nature when doing open or close operations.
If you hit the up/down arrows, the state would immediately got to open or closed with the position being 100 or 0 respectively. If you stopped the shade prior to reaching either fully open or closed positions, then the info would get updated to reflect the actual position at the time of stopping.

@crkochan It is isolated to the close_cover and open_cover services. Is that correct? The up and down arrow appear to be calling open and close cover services respectively.
I have just merged #67 from @bdraco that is to do with state updates, but I do not think it affects close_cover and open_cover. @bdraco do you think it is necessary to add device.async_write_ha_state() to close_cover and open_cover due to the state update that takes place in those methods?

@crkochan It is isolated to the close_cover and open_cover services. Is that correct? The up and down arrow appear to be calling open and close cover services respectively.
I have just merged #67 from @bdraco that is to do with state updates, but I do not think it affects close_cover and open_cover. @bdraco do you think it is necessary to add device.async_write_ha_state() to close_cover and open_cover due to the state update that takes place in those methods?

Yes, the entity won't update state without it.
I can send a PR shortly if you like

@bdraco Sure, thanks!

@crkochan Can you test with PR #70 ?
While I'm pretty confident it will fix the issue, I'm traveling at the moment so I can't validate the fix until I get back home.

Can confirm, the issue is resolved.
Tested with opening and closing via arrows controls and cover service calls. The state updates are now operating as expected.


fix: add named export to support ESM imports in Typescript

Currently getting a "has no construct signatures" error with the following in Typescript 4.9.4, Node 18.12.1, type: module, module: node16, moduleResolution: node16:
import Redis from 'ioredis'

const redis = new Redis()

Changing the ioredis package with this change allows:
import { Redis } from 'ioredis'

const redis = new Redis()

without any error, and with full type information.

Also facing this issue with
Typescript 4.9.4
Node 18.12.1
tsconfig.json:
"target": "ES2020"
"module": "ES2020"
"moduleResolution": "nodenext"