chore(blockifier): have charge_fee flag represent enforce_fee return value

This change is

crates/blockifier/src/blockifier/transaction_executor.rs line 107 at r6 (raw file):
Previously, noaov1 (Noa Oved) wrote…
Consider creating a method for Transaction and AccountTransaction

Done, it included creating some getter funcs.
Also, i left in comment under my implementation a "match implementation" alternative that didn't work for me.  perhaps you'll have an idea? or better to leave as at is?
Also, I trivially implemented for L1Handler, with enforce_fee() -> false (for all cases), under the assumption this is not supposed to be called, and if so- false is the desired behaviour. I'd love to ask some questions face to face about L1Handler.

crates/blockifier/src/transaction/account_transactions_test.rs line 206 at r6 (raw file):

    .unwrap();
    assert!(!tx_execution_info.is_reverted());
    assert_eq!(tx_execution_info.receipt.fee, Fee(0));

Done.

crates/starknet_api/src/executable_transaction.rs line 197 at r7 (raw file):
Previously, meship-starkware (Meshi Peled) wrote…
@ArniStarkware is against this getter. Is there a reason you need it?
Anyway, I don't think it needs to be part of this PR

I am against it as it is of version lower than 3. Can the value be accessed manually?

crates/blockifier/src/transaction/test_utils.rs line 307 at r6 (raw file):
Previously, noaov1 (Noa Oved) wrote…
Please avoid calling twice to account_invoke_tx.

Done

crates/blockifier/src/transaction/transaction_execution.rs line 67 at r7 (raw file):
Previously, meship-starkware (Meshi Peled) wrote…
Aviv, can you check if this function is needed? If L1Handler does not have max_fee, how did we handle it so far?
If it is needed, then maybe it is better to return an Option here, although an Option on a bool is ugly, so I'm not sure about it.

Yes thank you! Exactly what I was looking for. Done Done.

crates/starknet_api/src/executable_transaction.rs line 197 at r7 (raw file):
Previously, ArniStarkware (Arnon Hod) wrote…
I am against it as it is of version lower than 3. Can the value be accessed manually?

I see, Thankyou for clarifying.
I removed the macro getters then.
I did however left the following funcs I added to starknet_api::transactions.rs
as otherwise I'll have to address all those cases while trying to access the value manually.
Does this sound OK? Should I try finding a different way to implement this?
thanks very very!
Code snippet:
impl DeclareTransaction {
    pub fn max_fee(&self) -> Fee {
        match self {
            Self::V0(tx) => tx.max_fee,
            Self::V1(tx) => tx.max_fee,
            Self::V2(tx) => tx.max_fee,
            // Aviv: i took this based on getters implementation for V3: resource_bounds. better
            // implementaion ?
            Self::V3(_) => panic!("do not support max_fee; only available for V0-V2 transactions."),
        }
    }
}

impl DeployAccountTransaction {
    pub fn max_fee(&self) -> Fee {
        match self {
            Self::V1(tx) => tx.max_fee,
            Self::V3(_) => panic!("do not support max_fee; only available for V0-V2 transactions."),
        }
    }
}

impl InvokeTransaction {
    pub fn max_fee(&self) -> Fee {
        match self {
            Self::V0(tx) => tx.max_fee,
            Self::V1(tx) => tx.max_fee,
            Self::V3(_) => panic!("do not support max_fee; only available for V0-V2 transactions."),
        }
    }
}

crates/blockifier/src/transaction/account_transaction.rs line 305 at r9 (raw file):
Previously, ArniStarkware (Arnon Hod) wrote…
It is a known issue with TransactionVersion See for example: starknet_api::test_utils::declare::declare_tx.
TransactionVersion is a struct (just a wrapper for Felt). Structs do not support match.

Thank you!! explains my morning frustration.. :)
(and fixed accordingly)

crates/blockifier/src/transaction/account_transaction.rs line 302 at r10 (raw file):
Previously, meship-starkware (Meshi Peled) wrote…
WDYT?

see my last version of this, this solution is cleaner, but assumes the version can't be different than 0-3.
so perhaps it's better to catch if a "wrong" version is inputted?

crates/blockifier/src/transaction/account_transaction.rs line 306 at r7 (raw file):
Previously, meship-starkware (Meshi Peled) wrote…
I think the suggestion was something like this, but it might be a better idea to move enforce_fee to be a function of transaction and not transaction info. If that is the change you'd like to make, please do it in a separate PR

comment above

crates/blockifier/src/transaction/account_transactions_test.rs line 206 at r6 (raw file):
Previously, meship-starkware (Meshi Peled) wrote…
'tx_execution_info.receipt.fee.is_zero()' is not what we want to check. We want to check that fee_transfer_call_info is None. It might be better to change it in the last PR so a rebase won't override these changes

I see my mistake. i did revert then.  "fee_transfer_info" does not appear for me, would you clarify what do you refer by that?

crates/blockifier/src/transaction/account_transactions_test.rs line 4 at r11 (raw file):
Previously, meship-starkware (Meshi Peled) wrote…
Remove this? I think you added it accidentally

Done.

crates/starknet_api/src/executable_transaction.rs line 18 at r10 (raw file):
Previously, meship-starkware (Meshi Peled) wrote…
Remove this as well

Done.

crates/blockifier/src/blockifier/stateful_validator.rs line 22 at r12 (raw file):
Previously, noaov1 (Noa Oved) wrote…
Please remove

Done.

crates/blockifier/src/transaction/account_transaction.rs line 306 at r7 (raw file):
Previously, noaov1 (Noa Oved) wrote…
Yes, that was my intention. I agree with @meship-starkware : please revert the changes in transaction.rs. We can consider it in a separate PR.

Done.

crates/blockifier/src/transaction/transaction_execution.rs line 67 at r10 (raw file):
Previously, meship-starkware (Meshi Peled) wrote…
can you remove the function as well

Done.


test: fix temporaryDirectory() for ClusterFuzz.

ClusterFuzz build broke after #4778, this was because when not run under
Bazel temporaryDirectory() performed a double mkdtemp(). This PR fixes
this.
As a bonus, some Envoy style cleanups.
Risk Level: Low
Testing: I started to write a unit test, but because of the way
temporaryDirectory() is used early in the test main, this was a bit of a
pain to make work (e.g. would require a new envoy_cc_test macro).
Manually verified instead.
Signed-off-by: Harvey Tuch<EMAIL_ADDRESS>

@sesmith177 @mattklein123

@htuch @mattklein123  our mistake. It looks like this slipped through since we are running our Windows CI off of a fork that has additional changes to get everything to compile and for tests to pass. On that fork, this extra mkdtemp was removed (as Windows does not have mkdtemp).
Right now, we can't compile //test/test_common:environment_lib or //test/test_common:utility_lib from Envoy master on Windows due to dependencies on network/socket code. Since we are PRing changes from our fork in chunks, we are in the kind of odd state where we are requesting changes that we can't actually test without our full fork.
Since this going to be an incremental process, it may make sense for us to try to rearrange the test dependencies so that we actually can compile them on Windows. That way, for every PR we make, we can ensure that at least the module we change and its tests can be compiled and run on Windows, even if more changes are required for the full Envoy build. This would also enable us to set up CI for Windows that runs off of Envoy master in addition to our fork.
What do you think?

@sesmith177 this seems like a good idea if it doesn't involve too much gymnastics. The fact that the Linux double mkdtemp didn't fail wasn't caught by CI either, but that's because this is special case test environment setup code that is used differently by fuzzers and Bazel test.


getAttributeNS(xml, 'lang') returns null

<element xml:lang="uk"></element>

doc.documentElement.getAttributeNS('http://www.w3.org/XML/1998/namespace', 'lang');
// null

Can you provide a full example of jsdom code I could run by itself?

Sure,
var jsdom = require('jsdom').jsdom;

var doc = jsdom('<element xml:lang="uk"></element>', {
	parsingMode: 'xml'
});

var xmlns = 'http://www.w3.org/XML/1998/namespace';
var lang = doc.documentElement.getAttributeNS(xmlns, 'lang');

console.log(lang);  // null, while 'uk' in browser

Thanks! There's a hope that this will get fixed in #1247, but I will definitely work on it afterward, in any case. It might be a while though; I am on vacation + at conferences and meetings until November 23.

This was not fixed by #1247.
Unfortunately this is an issue with our XML parser, htmlparser2 :(. It only gives its attribs object in the form { qualifiedName1: value1, qualifiedName2: value2 }, instead of giving information about namespace and prefix.
That is, it gives { 'xml:lang': 'uk' }, instead of something more useful like [{ prefix: 'xml', localName: 'lang', namespace: 'http://www.w3.org/XML/1998/namespace', value: 'uk' }]. I am assuming the XML spec says that the xml prefix is automatically mapped to the http://www.w3.org/XML/1998/namespace namespace?
So to really fix this, we either need to get htmlparser2 to give more information, or we need to replace our XML parser. Hmm. /cc @fb55 @inikulin.

This is out of scope for htmlparser2. https://github.com/isaacs/sax-js handles namespaces, perhaps that's a better alternative for XML parsing.

This will be fixed by #1303.


Unable to answer "When did you receive your ready to order email?" question in the google form

Can the question be updated to specify the required date format or use a date selector?
I'm getting this error when I try to confirm my order email date

Hi @DarylJtn
I just figured this out by looking at the spreadsheet with answers realising all answers were supplied in epoch which also was expected in the Google Form.
So i just went to https://www.epochconverter.com and put in my time of my "order is ready" email.

The Google Form should probably have said that epoch was the expected input, as it is no way clearly explained.


FormRequest  $request->validated()  doest not work in new dingo version

Q
A

Bug?
yes

New Feature?
no

Framework
Laravel

Framework version
5.7

Package version
2.2.3

PHP version
7.2

Actual Behaviour
I tried to upgrade package from 2.0.0-alpha2 to ^2.2.3
Since 2.0.0-alpha2 class Dingo\Api\Http\FormRequest do not inherited from Illuminate\Foundation\Http\FormRequest
Dingo\Api\Http\FormRequest doesnt have more field validator method setValidator etc
Expected Behaviour
For example $request->validated() should return same as befofe (like in laravel) all validated data, but new dingo version doesn't have this method
Steps to Reproduce
call
$request->validated();
where $request any class which extend Dingo\Api\Http\FormRequest
Possible Solutions
dunno :) but i cant upgrade package now

Hi there @narmiel
There was a PR a long time ago actually that caused this problem I think
https://github.com/dingo/api/pull/1542
I will have a look about adding that function to the FormRequest in Dingo - however as a workaround, you could potentially just use Laravel's FormRequest for now.

You can also get the validator instance which will then allow you access to the validated() function.
$yourRequest->getValidatorInstance()->validated();

You can also get the validator instance which will then allow you access to the validated() function.
$yourRequest->getValidatorInstance()->validated();

getValidatorInstance does not exist
my dingo/api version is 2.3

Is the problem still unsolved?

It seems that still unsolved

It seems that still unsolved

Hi, this problem can be easily solved by using Illuminate\Foundation\Http\FormRequest instead of the Dingo FormRequest.
I will close this for now, but continue looking at the two from requests and see what needs to be done.

@specialtactics what a coincidence. I was looking at this case right now.
I did a diff on the Dingo FormRequest and Laravel's FormRequest and saw the following things:

Dingo handles 2 methods differently from Laravel (passesAuthorization and failedAuthorization)
Laravel adds the $dontFlash = ['password', 'password_confirm'] (we could empty $dontFlash to keep BC)
Lumen does not have a FormRequest (we could keep the existing FormRequest for Lumen with limited functionality)

Do you think it makes sense use adapters for the FormRequest? I'm up for ideas and willing to contribute here.

Hey @christoph-kluge , at this point I don't understand/see what is the point of using Dingo's FormRequest over Laravel's FormRequest.
If someone can please outline me a use-case for this, that would be great, otherwise, please use Laravel's FormRequest as it works perfectly with Dingo's router (as far as I can see).

The only reason I can imagine right now is to keep compatibility for lumen. Lumen itself does not contain a FormRequest.
If you want to use it with lumen you got to pull the whole laravel framework because the FormRequest is part of foundation and not illuminate/http.
I‘m not a lumen-user that‘s why my initial thought was as well to eliminate the need of FormRequest until I realized that dingo supports lumen too.

Right, what's weird I guess is that this issue is for laravel not lumen.
I'll keep that in mind, but since I don't work with Lumen myself, someone else will need to do a PR to fix that up (if they want).

@specialtactics from what I see it's because the existing FormRequest does not extend the Laravel FormRequest. This means that the Dingo FormRequest and the Laravel FormRequest needs synced every now and then (as of now it's outdated because the method is missing inside Dingo).
Another idea: How about adding a deprecated message for the laravel users so they get error-messages and can gracefully update their installations to use the original one and remove it at a later stage or throw an exception so developer's get direct feedback?
$this->app->resolving(FormRequest::class, function (FormRequest $request, Application $app) {
  trigger_error(FormRequest::class . ' is deprecated for laravel. Please use the Laravel's FormRequest instead.', E_USER_DEPRECATED);

  $this->initializeRequest($request, $app['request']);

  $request->setContainer($app)->setRedirector($app->make(Redirector::class));
});

I think if we were to do that, we would technically need to tag 3.0.0, because we can't do anything to break existing functionality (even though it is to some degree already broken I guess...).
I agree though in the case of Laravel we should do something, maybe a deprecated tag on formrequest, rename it to lumenformrequest or put it under a lumen dir, and maybe a log::warning or something ?
Any other ideas?


Remove use Zend\Session\SessionManager;

Remove use Zend\Session\SessionManager; in second example as it is being called twice

@samsonasik @Nenglish7  I think the first entry should be removed, to keep alphabetical order.

Thanks, @Nenglish7


Performance: Faster method caller lookup

For a performance improvement you can replace Thread.currentThread().getStackTrace() with new Exception().getStackTrace()
Additional context
The Thread#getStackTrace() approach is slower because it has to be thread-safe. More details on performance are in the comments.

Thank you for the suggestion! I didn't know about this.
The bug report at the page of java mentions this is resolved from java 6 onwards and this library works from java 8 onwards, so is the alternative still valid?
I have run a test with a loop of n=1.000.000

with getting the stack-trace from a new Exception has a total time of 52.085 ms
with getting the stack-trace from Thread.currentThread() has a total time of 52.038 ms

The results are similar, but maybe I am doing something wrong?

Ah it is indeed largely fixed in Java 8. I overlooked that.
// Thread.java
    public StackTraceElement[] getStackTrace() {
        if (this != Thread.currentThread()) {
            // check for getStackTrace permission
            SecurityManager security = System.getSecurityManager();
            if (security != null) {
                security.checkPermission(
                    SecurityConstants.GET_STACK_TRACE_PERMISSION);
            }
            // optimization so we do not call into the vm for threads that
            // have not yet started or have terminated
            if (!isAlive()) {
                return EMPTY_STACK_TRACE;
            }
            StackTraceElement[][] stackTraceArray = dumpThreads(new Thread[] {this});
            StackTraceElement[] stackTrace = stackTraceArray[0];
            // a thread that was alive during the previous isAlive call may have
            // since terminated, therefore not having a stacktrace.
            if (stackTrace == null) {
                stackTrace = EMPTY_STACK_TRACE;
            }
            return stackTrace;
        } else {
            // Don't need JVM help for current thread
            return (new Exception()).getStackTrace();
        }
    }

In the use case of GateKeeper the extra work done here is the call to public static native Thread currentThread() and the redundant call to Thread.currentThread() inside the method shown above to check vs the current instance.
Swapping to new Exception() will remove this minor redundancy but its a minor improvement.

Thank you for the detailed explanation and investigation! I like the alternative as it would not need to do the additional checks under the covers as you mentioned. I will switch to new Exception() for getting the stacktrace


Only RGB camera works on Windows 10 Creators Update. Depth camera crashes

I'm able to install the Windows drivers and this library on my Dell laptop.
When I run realsense-viewer.exe, I can start the RGB camera and get a video feed.
When I start the coded-light depth sensor, a child window open and closes, the camera sources close, the usb plugin sound plays, and the camera sources reopen.
In my Device Manager, under the Camera node, I have the Intel SR300 Depth node and the Intel SR300 RGB node.
Under the Imaging devices node, I have the Intel SR300 Virtual Driver node.
Under the USB devices node, I have the Intel Camera SR300 node.
(I have another laptop with the Intel SR300 Depth node and the Intel SR300 RGB node under the  Imaging devices node, and it still crashes.)
I know the Windows DCM drivers do not work in Creators Update, and Intel is no longer updating them.
But is this library supposed to work in Creators Update, or is a fix coming?

Required Info

Camera Model
SR300

Firmware Version
<IP_ADDRESS>

Operating System & Version
Win10 Pro version 1709 build 16299.19

@danielw256
which DCM version do you use?
Is the SR300 your have a Creative Senz3D peripheral?
Does this issue happen after RS2 to RS3 upgrade?

From Device Manager:
RGB driver
Microsoft
6/21/2006
10.0.16299.15
Depth driver
Microsoft
6/21/2006
10.0.16299.15
Virtual Driver
Intel
6/8/2016
<IP_ADDRESS>3
Is there any other way to get the DCM version?
I bought the SR300 from Intel this November. There's no mention of Creative Senz3D.
I'm using RealSense SDK 2.0. What's RS3?

Hi @danielw256
My PC Win10 version is 10.0.16299.15 Build 16299. DCM version = <IP_ADDRESS>18 (you can find the version info in "App & features"). It looks your virtual driver and SR300 FW version are the same with mine.
For the device showing in the device manager:

The Intel SR300 Depth node and Virtual driver under the Imaging devices node.
The Intel SR300 RGB node under the Cameras node.
The Intel Camera SR300 node under the USB devices node.

However, I use the RealSense Viewer in librealsense 2.8.2 to view the color and depth streams without any issues as you can see the attached picture. Does the depth crash issue happen after your Win10 OS upgrade?

@freemanlo
Thanks for your help.
I finally got the SR300 to work.
I plugged the SR300 into a powered USB 3 hub
I followed the instructions in the following webpage
How to get SR300 working on Windows 10 Build 1703 - Including SDK Apps such as Segmentation (Updated 5/17/2017)
I could not get the instructions to work as written. Mainly, due to no action center or toast notification.
I believe 2 main things got it to work.
(1) The Intel depth driver replaced a Microsoft depth driver
(2) The Intel virtual driver loaded.
Daniel


Weird startup behaviour

Hello,
I've found some weird startup behaviour.
After normal Venus OS power-up the driver does (most of the time) not recognize dbus-serial-battery instances.
AggregateBatteries appears in Venus OS but shows --- ---
Output of dbus-spy:

com.victronenergy.battery.aggregate
Alarms/CellImbalance                                                                     -
Alarms/HighChargeCurrent                                                                 -
Alarms/HighChargeTemperature                                                             -
Alarms/HighDischargeCurrent                                                              -
Alarms/HighTemperature                                                                   -
Alarms/HighVoltage                                                                       -
Alarms/InternalFailure                                                                   -
Alarms/LowCellVoltage                                                                    -
Alarms/LowChargeTemperature                                                              -
Alarms/LowSoc                                                                            -
Alarms/LowTemperature                                                                    -
Alarms/LowVoltage                                                                        -
Capacity                                                                                -
Connected                                                                                1
ConsumedAmphours                                                                         -
Dc/0/Current                                                                             -
Dc/0/Power                                                                               -
Dc/0/Temperature                                                                         -
Dc/0/Voltage                                                                             -
DeviceInstance                                                                           0
FirmwareVersion                                                                        2.0
HardwareVersion                                                                        0.0
Info/MaxChargeCurrent                                                                    -
Info/MaxChargeVoltage                                                                    -
Info/MaxDischargeCurrent                                                                 -
InstalledCapacity                                                                        -
Io/AllowToCharge                                                                         -
Io/AllowToDischarge                                                                      -
Mgmt/Connection                                                                    Virtual
Mgmt/ProcessName                      /data/dbus-aggregate-batteries/aggregatebatteries.py
Mgmt/ProcessVersion                                                                    0.0
ProductId                                                                                0
ProductName                                                             AggregateBatteries
Soc                                                                                -
System/MaxCellTemperature                                                                -
System/MaxCellVoltage                                                                    -
System/MaxVoltageCellId                                                                  -
System/MinCellTemperature                                                                -
System/MinCellVoltage                                                                    -
System/MinVoltageCellId                                                                  -
System/NrOfCellsPerBattery                                                               -
System/NrOfModulesBlockingCharge                                                         -
System/NrOfModulesBlockingDischarge                                                      -
System/NrOfModulesOffline                                                                -
System/NrOfModulesOnline                                                                 -

My solution for now is to restart your service 30s after booting by adding following to /data/rc.local
sleep 30
/data/dbus-aggregate-batteries/restart
Of course this is a ugly hack, but it works.
Once up and running it works perfect, just this weird "cold boot problem".
Do you have any ideas for the root cause of this problem ?

Hello, the SerialBattery needs more time to appear on Dbus. On each start of Venus It is copied from /data/etc to /opt/victronenergy and by trial&error the BMS type is identified. The AggregateBatteries appears much sooner on Dbus. I've allready observed that many trials are necessary to find the batteries. And was reported about another issue per eMail:  self._dbusMon.dbusmon.get_value() was called before dbus monitor finished scanning and the object was created. Increasing delay in  GLib.timeout_add(1000, self._find_batteries) did help. I will solve it ASAP.

Hello,
this makes sense so far.
I just removed my hack in /data/rc.local (as described above) and increased your suggested delay to 60000 and it works for me ...
Best regards,
lakeroe

I think 5 second would be enough, if necessary it tries couple of times but does not wait for one minute if not necessary.
BR,
Anton

For me 5 seconds is not enough. Even 10s doesn't it make reliable.
I'll keep testing ...
BR,
Berni

Hi Berni,
I set now 5s and killed my service as well as the serial batteries. It took about 1/2 minute to collect everything. I keep this setting, it is a good compromise. It is better to run some trials than to wait in any case. If only AggregateBatteries is restarted while SerialBatteries are running, it needs only 1 trial.
INFO:dbusmonitor:===== Search on dbus for services that we will monitor starting... =====
INFO:dbusmonitor:Found: com.victronenergy.solarcharger.ttyUSB1, scanning and storing items
INFO:dbusmonitor:       com.victronenergy.solarcharger.ttyUSB1 has device instance 289
INFO:dbusmonitor:Found: com.victronenergy.vebus.ttyUSB0, scanning and storing items
INFO:dbusmonitor:       com.victronenergy.vebus.ttyUSB0 has device instance 288
INFO:dbusmonitor:Found: com.victronenergy.battery.aggregate, scanning and storing items
INFO:dbusmonitor:       com.victronenergy.battery.aggregate has device instance 0
INFO:dbusmonitor:===== Search on dbus for services that we will monitor finished =====
INFO:root:2023-02-05 16:09:04.879287: Searching batteries: Trial Nr. 1
INFO:root:2023-02-05 16:09:04.882396: 0 batteries found.
INFO:root:2023-02-05 16:09:09.880679: Searching batteries: Trial Nr. 2
INFO:root:2023-02-05 16:09:09.883523: 0 batteries found.
INFO:root:2023-02-05 16:09:14.881145: Searching batteries: Trial Nr. 3
INFO:root:2023-02-05 16:09:14.890996: 0 batteries found.
INFO:dbusmonitor:Found: com.victronenergy.battery.ttyUSB2, scanning and storing items
INFO:dbusmonitor:       com.victronenergy.battery.ttyUSB2 has device instance 1
INFO:root:2023-02-05 16:09:19.881819: Searching batteries: Trial Nr. 4
INFO:root:2023-02-05 16:09:19.884665: SerialBattery(Jkbms) found.
INFO:root:2023-02-05 16:09:19.885670: 1 batteries found.
INFO:dbusmonitor:Found: com.victronenergy.battery.ttyUSB3, scanning and storing items
INFO:dbusmonitor:       com.victronenergy.battery.ttyUSB3 has device instance 2
INFO:root:2023-02-05 16:09:24.882660: Searching batteries: Trial Nr. 5
INFO:root:2023-02-05 16:09:24.900246: SerialBattery(Jkbms) found.
INFO:root:2023-02-05 16:09:24.901333: SerialBattery(Jkbms) found.
INFO:root:2023-02-05 16:09:24.902063: 2 batteries found.

restart_all.txt
restart_dbus-serial-battery.txt
You can use these shell files to restart easily (remove .txt)

Hi Anton,
so you set GLib.timeout_add(5000, self._find_batteries) ?
Does this also reliable work after power-up ?
I set this to 20000 and after a coldstart it worked 20 out of 20 times ...
Your shell scripts above simulate another scenario.

I've just tried the reboot, it looks similar to the case with restart of services. 2 trials more were needed. See below. Even before I increased the timeout to 5s it was OK - 10 trials x 1s were not enough, the program was terminated and restarted until the battery instances were ready.
BR,
Anton
INFO:root:2023-02-05 17:30:11.957469: Starting AggregateBatteries.
INFO:root:registered ourselves on D-Bus as com.victronenergy.battery.aggregate
INFO:root:2023-02-05 17:30:11.993065: Initial Ah read from file: 60Ah
INFO:root:2023-02-05 17:30:12.017195: Starting battery monitor.
INFO:root:2023-02-05 17:30:12.021784: Connected to DBus, and switching over to GLib.MainLoop()
INFO:dbusmonitor:===== Search on dbus for services that we will monitor starting... =====
INFO:dbusmonitor:Found: com.victronenergy.solarcharger.ttyUSB1, scanning and storing items
INFO:dbusmonitor:       com.victronenergy.solarcharger.ttyUSB1 has device instance 289
INFO:dbusmonitor:Found: com.victronenergy.vebus.ttyUSB0, scanning and storing items
INFO:dbusmonitor:       com.victronenergy.vebus.ttyUSB0 has device instance 288
INFO:dbusmonitor:Found: com.victronenergy.battery.aggregate, scanning and storing items
INFO:dbusmonitor:       com.victronenergy.battery.aggregate has device instance 0
INFO:dbusmonitor:===== Search on dbus for services that we will monitor finished =====
INFO:root:2023-02-05 17:30:17.022062: Searching batteries: Trial Nr. 1
INFO:root:2023-02-05 17:30:17.026324: 0 batteries found.
INFO:root:2023-02-05 17:30:22.022608: Searching batteries: Trial Nr. 2
INFO:root:2023-02-05 17:30:22.025861: 0 batteries found.
INFO:root:2023-02-05 17:30:27.023549: Searching batteries: Trial Nr. 3
INFO:root:2023-02-05 17:30:27.026980: 0 batteries found.
INFO:root:2023-02-05 17:30:32.024030: Searching batteries: Trial Nr. 4
INFO:root:2023-02-05 17:30:32.027049: 0 batteries found.
INFO:root:2023-02-05 17:30:37.025226: Searching batteries: Trial Nr. 5
INFO:root:2023-02-05 17:30:37.028055: 0 batteries found.
INFO:dbusmonitor:Found: com.victronenergy.battery.ttyUSB2, scanning and storing items
INFO:dbusmonitor:       com.victronenergy.battery.ttyUSB2 has device instance 1
INFO:root:2023-02-05 17:30:42.025910: Searching batteries: Trial Nr. 6
INFO:root:2023-02-05 17:30:42.029013: SerialBattery(Jkbms) found.
INFO:root:2023-02-05 17:30:42.030035: 1 batteries found.
INFO:dbusmonitor:Found: com.victronenergy.battery.ttyUSB3, scanning and storing items
INFO:dbusmonitor:       com.victronenergy.battery.ttyUSB3 has device instance 2
INFO:root:2023-02-05 17:30:47.026511: Searching batteries: Trial Nr. 7
INFO:root:2023-02-05 17:30:47.029775: SerialBattery(Jkbms) found.
INFO:root:2023-02-05 17:30:47.030660: SerialBattery(Jkbms) found.
INFO:root:2023-02-05 17:30:47.031398: 2 batteries found.
INFO:root:2023-02-05 17:30:48.032553: Searching Multi/Quatro VEbus: Trial Nr. 1
INFO:root:2023-02-05 17:30:48.035360: MultiPlus-II 48/5000/70-50 found.
INFO:root:2023-02-05 17:30:49.036905: Searching MPPTs: Trial Nr. 1
INFO:root:2023-02-05 17:30:49.039788: SmartSolar MPPT VE.Can 250/100 rev2 found.
INFO:root:2023-02-05 17:30:49.040772: 1 MPPT(s) found.
INFO:root:2023-02-05 17:30:50.044732: Max. charging voltage: 55.0V
INFO:root:2023-02-05 17:30:50.045611: Max. charging current: 200.0A
INFO:root:2023-02-05 17:30:50.046215: Max. dircharging current: 200.0A

Okay, thanks for your infos.
I'll do more testing later this week and let you know.
BR,
Berni

Hi Anton,
today I did some more testing and found something strange.
If I set the timeout to 5000 and do a coldstart your AggregateBatteries appears in Venus OS but only shows --- --- (but only sometimes).
The appropriate log looks like this:
INFO:root:2023-02-09 09:52:47.051366: Starting AggregateBatteries.
INFO:root:registered ourselves on D-Bus as com.victronenergy.battery.aggregate
INFO:root:2023-02-09 09:52:47.184599: Initial Ah read from file: 304Ah
INFO:root:2023-02-09 09:52:47.287862: Starting battery monitor.
INFO:root:2023-02-09 09:52:47.301865: Connected to DBus, and switching over to GLib.MainLoop()
INFO:dbusmonitor:===== Search on dbus for services that we will monitor starting... =====
INFO:dbusmonitor:Found: com.victronenergy.battery.aggregate, scanning and storing items
INFO:dbusmonitor:       com.victronenergy.battery.aggregate has device instance 0
INFO:dbusmonitor:===== Search on dbus for services that we will monitor finished =====
INFO:root:2023-02-09 09:52:52.305312: Searching batteries: Trial Nr. 1
INFO:root:2023-02-09 09:52:52.339622: 0 batteries found.
INFO:root:2023-02-09 09:52:57.344584: Searching batteries: Trial Nr. 2
INFO:root:2023-02-09 09:52:57.385346: 0 batteries found.
INFO:dbusmonitor:Found: com.victronenergy.battery.ttyUSB0, scanning and storing items
INFO:dbusmonitor:       com.victronenergy.battery.ttyUSB0 has device instance 2
INFO:root:2023-02-09 09:53:02.758919: Searching batteries: Trial Nr. 3
INFO:root:2023-02-09 09:53:02.835450: SerialBattery(Jkbms) found.
INFO:dbusmonitor:Found: com.victronenergy.battery.ttyUSB1, scanning and storing items
INFO:dbusmonitor:       com.victronenergy.battery.ttyUSB1 has device instance 1
This ONLY happens after a coldstart sometimes.
By restarting the services (using your restart_all script) in can't reproduce the problem (I tried 20 times).
For me this looks like another problem.
Do you have any idea, should I try something ?
Thanks and best regards,
Berni

If AggregateBatteries is in the state described above it clearly hangs and does not respond to anything.
Killing the dbus-serialbattery services (by running restart_dbus-serial-battery) does not change anything (no output in the log).
After running restart_all everything works as expected ...

Hi Berni,
I make new commit this evening or tommorow, please try with the new one.
BR,
Anton

I think this issue can also be closed.
I tried your latest commit and it works flawlessly (on 20 tried coldstarts).
Thanks for your great work !
Best regards,
Berni

Hi Berni,
nice to hear it :-). Thanks for your input.
Best regards,
Anton


Only generates Swift interface for mixed source

We have internal tooling that publishes Swift interfaces for comment and review. For Swift-only frameworks our tooling works fine simply getting the abstract syntax tree of the Swift source code. However, this approach doesn't work when the source contains, or is primarily, Objective-C.
We have an alternate process that will process *.swiftinterface files, but we have yet to find a process that works for generating these files from Objective-C or mixed source except for using the internal Xcode Generated interface. We are searching for a programmatic solution.
Based on comments here (https://github.com/jpsim/SourceKitten/issues/405) I was hoping that this tool might solve our issue. However, when I run it on a simple dummy framework, which contains a SwiftClass object and an ObjCClass object, the generated interface only includes the SwiftClass interface even though the bridged ObjCClass is exposed.
Is ModuleInterface intended to work with mixed source, or is it strictly for Swift-only frameworks (or the Swift-only portion of mixed frameworks)?

It was designed for Swift interfaces, as I didn't thought of the objc use case. I'd need to capture which request does SourceKit launch in order to create the Objc interface object, as I don't use the *.swiftinterface file to generate the module.

The generated module follows the *.swiftinterface format, but I found a way to get these from SourceKitten.
import SourceKittenFramework

if sourceUrl.absoluteString.hasSuffix("h") {
  let args = [String]()
  let generated = try Request.interface(file: sourceUrl.absoluteString, uuid: NSUUID().uuidString, arguments: args).send()
  if let match = generated.first(where: { key, _ in
    return key == "key.sourcetext"
}) {
    let sourceCode = match.value as! String
    // do whatever with the swiftinterface code
}

Since this is not a use case for ModuleInterface, I'll close this issue.

With this snippet I could add support for both kind of sources as an enhancement.

I think it would be a worthy enhancement. In our case, we process Swift source file-by-file and generate a final artifact. Using SourceKitten we can process *.h files individually, convert them to Swift interface (which we then have to process since Swift interface != swift source code) and it all works out. It might be tricky depending on how you combine things.
Our finalized, combined representation looks like (for our demo package)

I think this would be a nice improvement to this library 👍

I agree :)

PRs are welcome if you want to help with this!🤩


update spring-data:neo4j to 6.0.6

This PR updates org.springframework.data:spring-data-neo4j to latest 6.0.6 which removes a blocking call in the reactive template.
This closes https://github.com/jhipster/generator-jhipster/issues/14196

Bounty for https://github.com/jhipster/generator-jhipster/issues/14196 claimed: https://opencollective.com/generator-jhipster/expenses/36303


Won’t launch

Brand new install on iPhone X with iOS 11.4. A small comic thumbnail appears for a second, then goes away, then a dialog box shows up with: “Oops! Am error occurred while loading this content. Please check your connection and try again” I am on WiFi. Uninstalling and reinstalling haven’t helped

I am getting this error also, I noticed the last three XKCD's hadn't loaded (as of today), so I wiped the cache in app, at which point it couldn't load ANYTHING .  I uninstalled and reinstalled, still doing this.
I revised the source and it appears at least on my mac that https://xkcdos.app.sgnl24.com/latest-comic.php has an expired security certificate, which is probably the issue.

Should be resolved now - thanks everybody for the info!

Does not appear to be resolved for me...

@JuanCab Try clearing the cache and/or reinstalling.

Yep, reinstall fixed it.  Thanks!


For which programming languages can hygen be used?

Good afternoon,
I was trying to figure out for which programming languages hygen was designed, but I was not able to find a clear overview.
Could you pease adjust the GitGub project description:
The simple, fast, and scalable code generator that lives in your project.
to something like this?:
The simple, fast, and scalable code generator for JavaScript that lives in your project.
This would help a lot to get started with hygen and
to not to reject it erroneously as 'probably inappropriate' :-)
Thanks a lot!, kind regards,
Thomas

It can generate any kind of text file.  The templating language uses javascript, but you don't have to use that.  I have templates setup for ruby classes, .eslintrc files, serverless framework config files, bash scripts, css, and even javascript.


Tick time precision

few questions realted to tick object timestamp precion ; would appreciate if anyone could help me to sort the things out.

First thing I noticed is that Lean reads forex data as DateTime.Ticks count:
https://github.com/QuantConnect/Lean/blob/master/Common/Data/Market/Tick.cs#L251
But stores them millisecond truncated:
https://github.com/QuantConnect/Lean/blob/master/Common/Util/LeanData.cs#L173

Wondering is it helpful if lean stored all tick data as DateTime.Ticks count for the best precision that .net can provide? There are data vendors that do return equity trade (tick) data nonoseconds timestamped - which is 100 times more accurate than DateTime.Tick.. not to mention milliseconds

Potential Solution
Update Tick object and lead data readers.. and all the csv files that store tick data to represent datetime in 10^-7 second precision (DateTime.Tick)
Reproducing the Problem

System Information

Checklist

[X ] I have completely filled out this template
[ ] I have confirmed that this issue exists on the current master branch
[ ] I have confirmed that this is not a duplicate issue by searching issues

[ ] I have provided detailed steps to reproduce the issue

I'm pretty sure the existing format is milliseconds as the time of day and I'm pretty sure it supports fractional milliseconds, meaning it already supports nanosecond precision. Just write the value in decimalized milliseconds.
Have you tried this?

I checked again now. It's all fine as concerned to the writings to the file. But when ticks are read back there is an issue. Because it uses everywhere Date.AddMilliseconds which truncates a precision. Here is a method decompiled:
/// <summary>Returns a new <see cref="T:System.DateTime" /> that adds the specified number of milliseconds to the value of this instance.</summary>
/// <param name="value">A number of whole and fractional milliseconds. The <paramref name="value" /> parameter can be negative or positive. Note that this value is rounded to the nearest integer.</param>
/// <returns>An object whose value is the sum of the date and time represented by this instance and the number of milliseconds represented by <paramref name="value" />.</returns>
/// <exception cref="T:System.ArgumentOutOfRangeException">The resulting <see cref="T:System.DateTime" /> is less than <see cref="F:System.DateTime.MinValue" /> or greater than <see cref="F:System.DateTime.MaxValue" />. </exception>
    [__DynamicallyInvokable]
    public DateTime AddMilliseconds(double value)
    {
      return this.Add(value, 1);
    }

Its documentation says Note that this value is rounded to the nearest integer.
Same discussion is here:
https://stackoverflow.com/questions/2690043/why-does-addmilliseconds-round-the-double-parameter
And suggested solution around this is to use AddTicks(values * 10000) instead..


Filtering field in RISE cells

Hi Junior,
I have a quick question. Using the last version of RISE I'm trying to get the smoothed probabilities of an estimation procedure. However, the RISE cell structure has changed, and there is no "Model. filtering" field. What is the correct way to extract this information?
Thanks in advance
S.

Hi S.
f=filter(m);
cheers,
J.

On 1 Oct 2018, at 15:41, SC187<EMAIL_ADDRESS>wrote:
Hi Junior,
I have a quick question. Using the last version of RISE I'm trying to get the smoothed probabilities of an estimation procedure. However, the RISE cell structure has changed, and there is no "Model. filtering" field. What is the correct way to extract this information?
Thanks in advance
S.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub https://github.com/jmaih/RISE_toolbox/issues/93, or mute the thread https://github.com/notifications/unsubscribe-auth/ACagz71BBAd1tmoHcv-PuJ-8ash0rlAXks5ughuEgaJpZM4XCFzs.

Thank you, Junior!
Regards,
S.


feat(meta): support risectl throttle for table with source as well

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?
Support throttle for table with source.

Need to find source ID, perhaps via meta dashboard / grafana metrics.
./risingwave ctl throttle source <id> <ratelimit, e.g. 1>

source id is 1010 here.

Checklist

[ ] I have written necessary rustdoc comments
[ ] I have added necessary unit tests and integration tests
[ ] I have added test labels as necessary. See details.
[ ] I have added fuzzing tests or opened an issue to track them. (Optional, recommended for new SQL features #7934).
[ ] My PR contains breaking changes. (If it deprecates some features, please create a tracking issue to remove them in the future).
[ ] All checks passed in ./risedev check (or alias, ./risedev c)
[ ] My PR changes performance-critical code. (Please run macro/micro-benchmarks and show the results.)

[ ] My PR contains critical fixes that are necessary to be merged into the latest release. (Please check out the details)

Documentation

[ ] My PR needs documentation updates. (Please use the Release note section below to summarize the impact on users)

Release note
If this PR includes changes that directly affect users or other significant modifications relevant to the community, kindly draft a release note to provide a concise summary of these changes. Please prioritize highlighting the impact these changes will have on users.

See: https://github.com/risingwavelabs/risingwave/pull/15255#discussion_r1502208829.
Flag::Source should be present, we still have a source fragment.


Shader gets null matrix by default while the inspector shows it should be identity

Godot 3.2.3
Windows 10 64 bits
OpenGL ES 3.0 Renderer: GeForce GTX 1060 6GB/PCIe/SSE2
I wrote a custom shader in my project which involves a custom matrix in one of its uniforms, but all the material previews using that shader are black.
I tracked this down to a matrix that ended up being filled with zeroes, even though the inspector shows it should be identity:

The bug goes away as soon as I modify the matrix manually to be slightly different than default, then it keeps working if I set it back to default. If the value is reverted from the .tres (for example as a result of "properties == default values not being saved"), the problem comes back.
Reproduction project:
BlackMaterial.zip

Wild guess, the default is probably identity on the client side,  but unset (zero) in the visual server. The client doesn't update the server when it is default, so doesn't update until it is changed. Then when it is set back to identity it works, because the update happens. There have been several bugs of this type.
Can't check this until back home. If so the solution we usually used was to set a proper default in visual server side (or alternatively you could force setting even the default value).


add sort operation support

Hey! Thanks for the PR. Going to take a look at it now

Hey @asafronienkov @fppt , it seems to me that this is not an implementation of ZADD/ZREM/ZRANGE at all. To store sorted sets TreeMap<Double,String> should be used, not LinkedHashSet.

Good point @inponomarev, PR should still be usable though

Closing this PR as it seems abandoned. Happy to reopen and keep working on it.


using set --fcnt-up/down removes --disable-fcnt-check

Unexpected (non logged) behaviour when setting a frame counter. The --disable-fcnt-check flag is removed.
setting a counter should not affect this. If it does have to remove this flag, this should be logged as a warning that the flag is removed

this is on the v2-previes / refactor branch
trail:
now:
FCntUp: 67058
FCntDown: 0
Options: DisableFCntCheck
cmd: ttnctl devices set 527cb036 --fcnt-up 67059
result:
FCntUp: 67059

FCntDown: 0
Options:
cmd: ttnctl devices set 527cb036 --disable-fcnt-check --fcnt-up 67060
 FCntUp: 67060

FCntDown: 0
Options: DisableFCntCheck


[local_auth] Replace USE_FINGERPRINT to USE_BIOMETRIC post deprecation

Replacing deprecated android.permission.USE_FINGERPRINT permission with android.permission.USE_BIOMETRIC
Fixes https://github.com/flutter/flutter/issues/106298
Fixes https://github.com/flutter/flutter/issues/78137
No change in flutter/tests
Pre-launch Checklist

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I read and followed the relevant style guides and ran the auto-formatter. (Unlike the flutter/flutter repo, the flutter/plugins repo does use dart format.)
[x] I signed the CLA.
[x] The title of the PR starts with the name of the plugin surrounded by square brackets, e.g. [shared_preferences]
[x] I listed at least one issue that this PR fixes in the description above.
[ ] I updated pubspec.yaml with an appropriate new version according to the pub versioning philosophy, or this PR is exempt from version changes.
[ ] I updated CHANGELOG.md to add a description of the change, following repository CHANGELOG style.
[ ] I updated/added relevant documentation (doc comments with ///).
[ ] I added new tests to check the change I am making, or this PR is test-exempt.
[ ] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

Maintainers, please let me know what I need to add/update more for passing tests. I am new to contributing to the flutter/* open source.
Thanks

@blasten @stuartmorgan
The USE_FINGERPRINT is deprecated from API 28. In the code, there's implementation done for using biometrics for API 28 and higher and use fingerprint manager for less than that. How do we add biometric permission just for API 29 and higher but keep the fingerprint permission for API versions below 29?
I just added the USE_BIOMETRIC instead but that will add errors in the FingerprintManager, it requires USE_FINGERPRINT permission.
I am new to open source. I've marked this pull as draft. Thanks for the support.

Maintainers, please let me know what I need to add/update more for passing tests.

The "Details" link for publishable will tell you why it is failing. The steps you skipped in the checklist have useful links for resolving that failure.

Maintainers, please let me know what I need to add/update more for passing tests.

The "Details" link for publishable will tell you why it is failing. The steps you skipped in the checklist have useful links for resolving that failure.

Thank you @stuartmorgan for the help. I'll check and continue on that.

If you want to remove the need for this permission you'll need to restructure the code somewhat so that it doesn't use FingerprintManager at all.

This was done in https://github.com/flutter/plugins/pull/6059, so you could update this to just update the local_auth README and example.

@stuartmorgan Okay works! I'll update the README and example

@stuartmorgan

[ ]   I updated pubspec.yaml with an appropriate new version according to the pub versioning philosophy, or this PR is exempt from version changes.
[ ]   I updated CHANGELOG.md to add a description of the change, following repository CHANGELOG style.

These steps are needed for the local_auth change. (local_auth_android's change only affects running a local checkout, so doesn't need them.)

I am not 100% sure if I should update the version from 2.1.0 to 2.1.1? Or just update to 2.1.0+1?

Yes as our change in the example doesn't fall into:

PRs that only affect unpublished parts of example apps.

I think we should increase the version to 2.1.1

Sorry for the commits, I messed up with the message

Fixed the commit message issue

Please, let me know if there is still pending stuff. I'll update them ASAP. Thanks

Or just update to 2.1.0+1?

We follow the guidance at https://dart.dev/tools/pub/versioning#semantic-versions (linked from the PR checklist), and do not use build numbers for anything >= 1.0.0.

Thank you guys!


Keep the default MySQL password the same as the one in the docker-compose.devops.yml file

https://github.com/clickvisual/clickvisual/pull/878  After this pr, the default MySQL password does not match the one in docker-compose.devops.yml. Changing it to be consistent will optimize the development environment build

@all-contributors please add @klboke for code


Feature: install from local cached download archives

Is there a way to cache downloads with this tool and reuse previously downloaded downloads? I am curious.

What is the context you are using it in?

There is no feature to specify a directory to  download archives, and an option not to remove downloaded archive.
It is because there is no way to cache, but you are welcome to improve aqtinstall and send Pull-Request as usual.

Here is a patch to add '--keep' option to keep downloaded archive.
You can use downloaded *.7z files.
You can also use '-O'  output directory option to specify target directory.
https://github.com/miurahr/aqtinstall/pull/225
There is still NO way to reuse existent files, if it exist, aqt might download it again and overwrite it.

Here is how I use aqt install offline (e.g. for MinGW 32 or 64 bit installations) :

Before, set up qt5-default-5.15.2\online\qtsdkrepository\windows_x86\desktop\qt5_5152 folder with data from e.g. ftp://mirrors.dotsrc.org/.mirrors/qtproject/online/qtsdkrepository/windows_x86/desktop/qt5_5152 and run in qt5-default-5.15.2 folder from the computer with the Internet :

python -m pip download --only-binary :all: -r requirements.txt

with
requests==2.25.1
aqtinstall==1.1.6
texttable
packaging

in requirements.txt.

On the computer to be installed :

python -m pip install --only-binary :all: --no-index --find-links qt5-default-5.15.2 -r qt5-default-5.15.2\requirements.txt

And to be able to use the --base parameter of aqt install, which does not seem to accept directly local folders (firewall might need to be configured to temporarily allow TCP port 8000, e.g. netsh advfirewall firewall add rule name="Open Port 8000 TCP" dir=in action=allow protocol=TCP localport=8000) :

start python -m http.server --directory qt5-default-5.15.2

Then (need also 7zip) :

aqt install -E 7z --base http://<IP_ADDRESS>:8000/ --outputdir C:\Qt 5.15.2 windows desktop win64_mingw81 -m qtcharts qtscript

@lebarsfa Thank you for the idea.
It may be good idea to support file:// URL for --base Because aqt now always uses requests http client library, it may not handle file:// URL schema.

@miurahr I would like to see this feature in aqt to speed up my CI setup. So to do this we would need a new --cache option that uses the --keep downloaded 7zip files and then only downloads the hashsums and checks if they match to the local 7zip files, right?

Probably since around v2.1.0, the idea I mentioned above -- i.e. download e.g. ftp://mirrors.dotsrc.org/.mirrors/qtproject/online/qtsdkrepository/windows_x86/desktop/qt5_5152 to a local folder qt5-default-5.15.2, then start a local server e.g. using python -m http.server --directory qt5-default-5.15.2 and then use aqt with --base http://<IP_ADDRESS>:8000/ parameter on a computer without the Internet -- does not work any more as is possibly due to the check of sha256 mentioned in https://github.com/miurahr/aqtinstall/issues/521.
The easiest workaround at the moment is probably to keep using aqt v2.0.6.
Otherwise, it seems that we would have to change trusted_mirrors in settings.ini to http://<IP_ADDRESS>:8000/ and ensure we have downloaded all the sha256 files from https://download.qt.io.
I don't know if there are better ideas if you had set up a local folder using a standard mirror, updated aqt, but have now a limited Internet connection...

Pull-Request is always welcome if you can add  features such as 1) save sha256 file when --keep specified, and 2) download/read fron local storage when specified URL with file:// scheme.


Code signing on MacOS ventura still not working

"“Choreo-v2024.2.1-macOS-arm64.dmg” cannot be opened because it is from an unidentified developer message" appears when opening. I'm using M2 chip.

We don't know how to sign the binary (we have Tauri skip the process), and users can bypass it, as far as I know.

Ok. Thank you. Apple is annoying. If you did want to code sign, you would likely need to pay.


[Feedback/Feature request] Fancy zones Shortcuts

Hey, Im using Mac for now in work with "Window tidy" app, what I love in this simple app, are shortcuts that I can assign to window location to quickly swap them instead of dragging etc.
Im looking forward to move to the Windows,
Im happy there are that tools - Fancy zones, that allow me set up those zones.
But setting zones with shortcut would be really cool, without that, there is no much point of using it. It is fancy and nothing more ;P.
You might say - "use default windows snap tool shortcut", but it does not work well and reliable, not always snapping correctly with shortcuts where I want (like e.g 1/4 on the top corner of screen), etc. Also this should have the custom shortcuts, because that would save a lot of time during work. But being honest I don't think so they will ever make it, looking how windows UX is poorly updated ;P I'm reporting all the time bunch of issues to feedback center, like some parts of scrolls are not working in touch some not working in trackpad scroll and more and issues with UI but they are still there (MS is releasing touch devices without keyboard in base, but you will have pain to access some part of system settings without it - GENIUS!), I think we done need next tool that is kind of useless because it is not fully finished. But here since it is open, I think community can solve that kind of issues :D
For now im forced to use snap tool by dragging windows.
Again, I would LOVE! to see Fancy zones with shortcuts! Something like https://maxto.net/ does or https://www.nurgo-software.com/products/aquasnap.
Thanks!

@isuke01
just to make sure you are aware of this option, that allows to snap a window to a zone and then rotate between zones:

For keyboard shortcuts we already have this issue to track the feature request https://github.com/microsoft/PowerToys/issues/492
Also we are going to improve the snapping experience using Win + arrows https://github.com/microsoft/PowerToys/issues/162

You mean https://github.com/microsoft/PowerToys/issues/492 ?

@isuke01

I mean per zone custom shortcut, like F10 for place inside left top zone, F11 left bottom zone etc

Isn't that the same as "hit a user definable shortcut and the focused window should resize to the zone which is mapped to this shortcut" from https://github.com/microsoft/PowerToys/issues/492?
If not, can you elaborate?


[bug] Unable to resolve module burnt (NATIVE)

Current Behavior
After upgrading to the latest tamagui, I started seeing this error on native platforms:
Unable to resolve "burnt" from<EMAIL_ADDRESS>
The error comes from here: https://github.com/tamagui/tamagui/blob/432a5f79dc6a5f74277a8283396d23f7dc6c6b77/packages/toast/src/createNativeToast.native.tsx#L7-L8
Expected Behavior
Dependencies which are used by the library should be declared as dependencies or peerDependencies in package.json.
Tamagui Version
v1.9.18 - v1.10.0

Reproduction
Start a new project with tamagui and without adding burnt as a dependency of the project.
The errors occurs regardless of whether the Toast component is used - my project isn't using it.
If you import the tamagui package at all, the error will always happen as a side-effect.
System Info
No response

As an aside, I think this comment in the code isn't true?

import inline to allow lazy usage of native dependecy

Based on the errors I'm encountering, the library is not being imported lazily.

Hey @nderscore. I also opened an issue on this matter: https://github.com/tamagui/tamagui/issues/828 🙈

I missed it! 😅  This is indeed a duplicate of that issue.
Closing in favor of #828


Cache cleanup should use the same Gradle executable as the build

The cache cleanup code here directly invokes Gradle from $PATH
https://github.com/gradle/actions/blob/90f1de055606f0041bed57fdbee974a43650e639/sources/src/caching/cache-cleaner.ts#L45
This can fail in some situations, such as using a Gradle RC release to gain support for running on a newer JDK. Here's a sample run demonstrating this exact situation: https://github.com/msfjarvis/compose-lobsters/actions/runs/8884243003/job/24392888298#step:10:25
My build is configured to run on JDK 22 and is using Gradle 8.8-RC1 but invoking Homebrew's Gradle fails because Gradle 8.7 is incompatible with JDK 22.

Using the version that invoked the build isn't going to work for a couple of reasons:

A single job can run multiple versions of Gradle: these will all populate the same Gradle User Home.
The cache-cleanup functionality in older versions of Gradle is inadequate. In fact Gradle 8.8 includes new cleanup features that make things much better, and we'll switch to use them as soon as 8.8 final is released.

The plan is to provision a Gradle version specifically to perform cache cleanup, rather than rely on the installed version. This will fix #33. But you make a good point that we'll need to ensure a compatible version of Java is used as well.

Closing as this will be addressed by #33


Display reserved blocks in CLI

Green blocks in CLI cmd.js represent non-BLOCK_BLANK blocks, which includes reserved blocks.
More info https://github.com/feross/webtorrent/issues/266
This patch add blue marks for reserved blocks

Thanks, this will be useful for debugging.


Update multicast tests to expect multiple ping replies.

Fixes test issue pointed out by @nibanks.

LGTM :+1:

Current coverage is 73.61% (diff: 100%)

Merging #864 into master will increase coverage by 0.57%

@@             master       #864   diff @@
==========================================
  Files           111        112     +1
  Lines         16395      16404     +9
  Methods        2251       2255     +4
  Messages          0          0
  Branches       1981       1981
==========================================
+ Hits          11974      12075   +101
+ Misses         3759       3672    -87
+ Partials        662        657     -5

Powered by Codecov. Last update c223863...1c8cdf4


Revert Nuget Multipart changes

Pull Request Description

Revert invalid changes made within #1625
Fix disregarded CR comments of #1625

Acceptance Test

[ ] Building the code with mvn clean install -Dintegration.tests still works.
[ ] Running mvn spring-boot:run in the strongbox-web-core still starts up the application correctly.
[ ] Building the code and running the strongbox-distribution from a zip or tar.gz still works.
[ ] The tests in the strongbox-web-integration-tests still run properly.

Questions

Does this pull request break backward compatibility?

[ ] Yes
[ ] No

Does this pull request require other pull requests to be merged first?

[ ] Yes, please see #...
[ ] No

Does this require an update of the documentation?

[ ] Yes, please see strongbox/strongbox-docs#{PR_NUMBER}
[ ] No

Thanks for the fixes!


Notified if I type in the wrong username or password

As a previous user, I want to be notified if I type in the wrong username or password so that the account stays secure

[ ] https://github.com/CSE-210/Exercise-Buddy-App/issues/41
[ ] https://github.com/CSE-210/Exercise-Buddy-App/issues/45


"Transaction was not mined within750 seconds, please make sure your transaction was properly sent"

My token deployment on Main network timedout after 750 seconds with zos create, although everything worked fast on Ropsten. According to the transaction-id, the whole process was confirmed on public blockchain after 830 seconds.

Can we increase this timeout-value somehow, maybe as an argument on CLI?

Since we use the Proxy contracts, I’m not sure which contract address I can use as the token-address for my CrowdSale-Crontract after such a timeout.

Is this the “to”-address on Etherscan.io that is labeled with “contract”?
Example: https://etherscan.io/tx/0xe56d6fb13da4acaba165c7d9fdaba29441feadf857d64e9bb88cdd78ebb9c219

The timeout can be specified (though you reported that it appeared to be capped at 750 seconds)

https://docs.zeppelinos.org/docs/cli_create.html
--timeout <timeout>  timeout in seconds for each blockchain transaction (defaults to 600s)

The following is the Proxy (as per the verified source code) which is what you should use to interact with the token:
https://etherscan.io/address/0x10a6a5ad6b3788a9deeccfd2a2eeed8333448844#contracts
Forum discussion: https://forum.zeppelin.solutions/t/transaction-was-not-mined-within750-seconds-please-make-sure-your-transaction-was-properly-sent/959

I assume the 750 second timeout is a 50 block timeout, potentially from one of the underlying tools.
I hit this timeout when deploying a sample contract with a safe low gas price from https://ETHgas station.info though the gas market is volatile.

Hey @itinance! The version of web3 we rely upon has these values hardcoded, and it's not possible to modify them unfortunately. The timeout parameter is being used in very few situations unfortunately - only those in which we do have direct control of the tx. I'm setting this issue on-hold until we find a solution in web3.

Hi @spalladino. When I was running into this issue it happens a whole day maybe due to some traffic jam on mainnet. Later it haven't occurred any more. So it had definitely something to do with this hardcoded timeout.
Maybe we should reach out to the developers behind web3 and asking if PullRequest could be accepted to increase this timeout? I understand, that one might won't care about increasing such an timeout but in order to get full advantage out of ZeppelinOS even on such days with a "slow blockchain" due to traffic jam, it could be very helpful that "zos deploy" can wait until everything was finally mined to populate zos.-.json files with valid addresses.

Hey @itinance! Web3 1.0 stable was released today, so we can now start pushing bugfixes to it, such as accepting a configurable timeout. We'll look into this during the upcoming days.


Publish a Java Package to Github Repository

Is it possible to achieve this by using the built-in action provided by Github?
Please have a look at https://github.com/AppcentMobile/helium-java-sdk/actions/new

We've seen Github Maven Repository does not allow anonymous access to packages. So we can't use it. We are considering using Jitpack...

We published our library on jitpack.io


{{ version }} not expanded at login page

Currently, {{ version }} isn't expanded at the login page and you get Vespene {{ version }}. (C) 2018 Michael DeHaan LLC + Contributors.
Once you login, Vespene 1.0-dev. (C) 2018 Michael DeHaan LLC + Contributors. works.

Ah, interesting, shared templates without the context passed in.  Thanks for the heads up.


Extend RewriteManifests with a way to add/delete manifests

This PR extends RewriteManifests with a way to directly delete/add manifests, which enables us to rewrite manifests using an external process.

@bryanck could you take a look?

I feel this new functionality might be better suited to a separate class, something like ReplaceManifests? The current rewrite functionality and add/delete don't share much in common. If we did want to share some code, maybe create a base class.

@bryanck I also thought about having a separate class but I was a bit worried about adding a new method with a similar purpose to the Table API as it already contains quite some logic.

@bryanck @rdblue thanks for the initial review! There are a couple of questions I want to clarify before updating the PR. Let me know what you think.

@rdblue I am not sure changing the status of entries from ADDED to EXISTING while copying manifests would give us any benefits. Instead, I would leave that to the utilities that produce staged manifests. Later, we want to get rid of copying manifests at all.
Here is how we read metadata per file:
    val manifestPathDS = spark.sparkContext.parallelize(manifestPaths, numPartitions.toInt).toDS()
    manifestPathDS.flatMap { path =>
      val reader = ManifestReader.read(io.newInputFile(path), specLookup)
      val spec = reader.spec
      try {
        val filteredManifest = reader.select(ImmutableList.of("*"))
        filteredManifest.liveEntries.asScala.map { entry =>
          val file = entry.file.copy()
          val snapshotId = entry.snapshotId
          (spec.specId, snapshotId, strategy.clusterBy(spec, file), file)
        }
      } finally {
        reader.close()
      }
    }

While writing staged manifets, we call writer.existing(file, snapshotId) to have correct entry status.

@bryanck @rdblue I've updated the PR and put the logic into a separate class as it seems reasonable to me. I still assume utilities will convert manifest entry statuses from ADDED to EXISTING themselves as it will allow us to avoid copying manifests in the future.

@rdblue @bryanck Ready for another review round.

@aokolnychyi, there is just one problem with cleanUncommitted. Everything else is minor, though would be nice to fix the nits.

@aokolnychyi, looks like there's a test failure, but I think this is ready to merge when that's fixed.

@rdblue, thanks for the review. I modified an error message and forgot to update a test. Updated the PR now.

Seems like some Python tests failed this time.

Yeah, looks like python is having trouble. We'll look into it, but it shouldn't block this commit.


Paste deactivates cancel button

If you create a new page and paste any content, the cancel button then doesn't work.
(You can replicated this on the demo site)
https://github.com/resolve/refinerycms/issues/22 looked like it fixed this, but maybe it's regressed?

Confirmed.

Submission prevention is happening here.
It will probably take some time for me to find a proper solution so if anyone can help - please do.

I'm bad at JS so any help would be much appreciated :)

From what I'm seeing, it is actually line 1960 that is the problem. It is finding all anchor tags with an href and binding a click event that disables them. Since the Cancel button is an anchor tag, it breaks. I can't see the history as to why line 1960 is needed.

Commenting out 1960 isn't making any difference... am I missing something else?

No, I was. That line makes all the links in the editor not work. Sorry it's taken so long to get back to you. I'm looking into this and I think it has something to do with the dialog. When I paste, the dialog appears. Even if I cancel the dialog, I still can't get that cancel button to work.

I think I have found the culprit. Whether pasting or adding tables, the main cancel button gets disabled. The cause of the behavior is the addition of the close dialog event to the button on line 1789. This is because the doc variable is scoped to the document. If the cancel button had a different class then close_dialog, that should solve the issue.

Thanks @jcjohn!


remove unnecessary use of c_allocator

this made the library require libc for no reason

Nice, now I know about std.debug.panic. Thanks.


confirmbutton Position is incorrect use 'hololight' Theme

i found class 'pull-right' not define at css.

@iamluodong , Can you please tell me the steps to reproduce this, what browser are you using, so i can get to my notice. The pull-right class is defined in the bootstrap library.
Thanks for pointing it out.

I am not use bootstrap,it depend Bootstrap?
why default theme no problem,My device is Nexus4 ,android 4.4,I have test on Chrome41.the same problem.

Yes, Bootstrap and jQuery are a requirement for jquery-confirm to run.
Please get the latest bootstrap CSS library Homepage
The plugin should work on your Nexus Device using Chrome.

Please let me know if the problem persist even after adding bootstrap library.
:)


Add validation to set strong password

Feature Description
During signup & reset password it should validate to set strong password.
Strong password should be of

Min 6 chars
Max 36 chars
Should have atleast 1 special char
Should have atleast 1 capital letter
Should have atleast 1 number
Should have atleast 1 small letter

Describe the solution you'd like

Add util which checks for above mentioned password validation during signup + reset password
Add similar validation in authorizer-react
Update authorizer-react version for /app

Describe alternatives you've considered

Additional context

@lakhansamani
This is powerful, but it is difficult to use in services that require simple membership due to too strong a password rule. Is it possible to release this as an option?

@hmmhmmhm van you describe membership use case in more detail?

@lakhansamani It having this problem when I'm developing game services for students. They feel that it's excessive just to include special characters and numbers, and they're complaining about putting capital letters.

Let me see what I can do about it. Probably will try to add a setting to disable strong password check

@hmmhmmhm is it okay to have min 6 char validation?

@lakhansamani Yeah, I think that should be default check

@hmmhmmhm I have added this feature as part of the 0.33.0 release.
You can update your instance and disable a strong password from the dashboard.
Also please consider upgrading FE libraries if you are using them.

@lakhansamani thx so much!!!


Avatar transparency fix

Refs: #3291
Gravatar returns a blank transparent image by default if the gravatar it self does not exists.
We changed the default avatar URL to mystery man (mm).
This looks like this:

Related: #3424
Probably a very minor point, but this change means we're effectively "baking in" a design element from Gravatar into the Wagtail admin, which will get reverted to the old design if Gravatar integration is disabled as per #3424 - is that an issue?

That could be an issue, but this fix fixes purely issue #3291. I think that we shouldn't feel blocked by another PR that is still a work in progress.

Yeah we're baking in this for now, but it is not going to be an issue for the progress in the PR.
In the PR there is already a default fallback image in-place if no picture was uploaded: https://github.com/chimeno/wagtail/blob/0db058f1328d4252f30bc9606fba8b473c3967a4/wagtail/wagtailadmin/static_src/wagtailadmin/images/default-user-avatar.svg
And @thijskramer secretly already processed one of the chores on the list: 'Remove not used css'

@jjanssen What are the changes that you are requesting?

@thijskramer those were the remarks I've added yesterday. I'm taking another look at it today.

Thanks! Merged in 20e8aab


What about deleted Channels?

How to recovery a deleted Channel, guys??

Detalhes do documento
⚠ Não edite esta seção. É necessário para a vinculação do problema do docs.microsoft.com ➟ GitHub.

ID: 5bf689b7-a7c1-121f-578e-029e8a89c4f0
Version Independent ID: 7e6b449e-bd77-2fc4-2c3d-1f2e364e1b76
Content: Arquivar ou excluir uma equipe no Microsoft Teams
Content Source: Teams/archive-or-delete-a-team.md
Service: msteams
GitHub Login: @LolaJacobsen
Microsoft Alias: lolaj

@Arkano87  Thank you for submitting feedback and contributing to the docs. We are currently investigating this.

@MollyMalone @OfficeGlobal

@Arkano87 Please see note in article regarding deleting Teams, channels, etc. -
"Important - Archived teams can be reactivated, but you can’t undelete a team that has been deleted. Consider archiving the team first, and postpone the deletion until you're sure that you no longer need the team."

@Arkano87
Thank you for submitting feedback. We understand that this issue has been resolved.
Please feel free to re-open this issue if there is a specific area of the docs that we can improve or make better. Thank you.

Windows 10 version1709 very good, thank you.


UrlClaim verifier enforces https scheme, which precludes localhost issuer/webid

The urlClaim verifier function in AccessToken.ts, which is called for issuer and webid claims in the token, throws an error as soon as the urls do not have the https scheme. I believe this is a practical way to enforce TLS, but it has the side-effect that localhost urls fail as well.
Would there be something againt making an exception for localhost urls?

Ha, woops, hadn't pulled in your latest commit (7e18d86) while writing the same fix, @matthieubosquet 😄

😄 the two of us fixing the same thing within 24 hours


Fix Windows icon compatibility

The CLI only displays small question mark symbols instead of up/down/lock/warning symbols etc.

The symbols don't work in legacy windows but works in other terminals. There's a rich.console.detect_legacy_windows() method that we can use and then change the formatting, haven't found how to display symbols etc in legacy windows yet though.

I have now finished an extensive testing across various platforms (screenshots available if needed) and the take home message is quite straightforward:
The terminal must support Unicode UTF-8 encoding and the font chosen by the user for the terminal emulator must support the symbols. If the terminal is set to the wrong encoding (which can be forcefully done also on Mac or Linux) then boxes or rather arbitraty letters are shown in place. If the font has no good support for the symbols they are shown as monochromatic symbols that are hardly identifiable.

OS
Shell
Emulator
Result

Windows 8
cmd
cmd
not working - boxes

Windows 8
PowerShell
PowerShell
not working - boxes

Windows 8
PowerShell
PowerShell for VS
not working - boxes

Windows 8
PowerShell
PowerShell ISE
Python crashes

Windows 8
PowerShell
Visual Studio Code Terminal
works

Windows 8
PowerShell
Terminal App
works

macOS BigSur
zsh
iTerm2
works

macOS BigSur
zsh
iTerm2  set to ISO-8859-2
not working - letter replacements

macOS BigSur
zsh
iTerm2  set to CP-1252
not working - letter replacements

macOS BigSur
zsh
Visual Studio Code Terminal
works

macOS BigSur
zsh
PyCharm Terminal
works

Linux Mint 19
bash
GnomeTerminal 3
works

Linux Mint 19
bash
GnomeTerminal 3 set to ISO-8859-2
not working - letter replacements

LinuxMint 19
bash
GenomeTerminal 3 set to CP-1252
not working - letter replacements

Linux Mint 19
bash
Guake
works

The terminal app is available in Windows 8 and newer and can be installed in older systems. On macOS and Linux all tested emulators have UTF-8 or even UTF-9 as default setting and thus will support and display the symbols and only failed when forcefully set to the wrong encoding.
We should discuss if the support of really long outdated systems like WinXP is really required? In that case it might be reasonabe to switch to textual replacements and write the status as get, put, dcrpt ...

Wow, comprehensive @MatthiasZepper ! 🙇🏻
For anything using rich for output, I'm a little surprised as the docs say that it supports windows: https://rich.readthedocs.io/en/stable/introduction.html#requirements - but maybe not these cases / systems?
Personally I think that going back as far as XP etc is a little excessive. Assuming that the cli doesn't crash, I guess it should still work in non-interactive modes (eg. download) with command line flags in these extreme edge cases which should be enough..? But also find to just list the requirements I think.

Also to add some more complexity - I assume that the majority of users will be downloading to uppmax. So for example, running on Rackham (linux) via ssh to local windows. My guess is that the same character issues will present in that case though..?

Thank you for this!
We should definitely discuss this, but the reason for even looking into this in the first place was that two (could've been more but I remember 2) people involved in the testing during spring/summer complained about it, and yes (@ewels) I believe they were using UPPMAX

Also to add some more complexity - I assume that the majority of users will be downloading to uppmax. So for example, running on Rackham (linux) via ssh to local windows. My guess is that the same character issues will present in that case though..?

Valid concern. I recalled that PuTTy was the ssh-Client which I used back on Windows XP and apparently it is still the prime choice nowadays. According to PuTTys documentation UTF-8 is the default setting and was introduced in PuTTy 0.62 released on 2011-12-10. I also do not recall that I ever had an encoding issue in PuTTy connecting to the HPC cluster in Münster.
I could find more recent questions asking for help regarding mangled symbols in PuTTy [1],[2] , but they were both attributable to lacking font support for those symbols. I have no idea if it is possible to programmatically read-out the encoding and font of the terminal, but I will check in the documentation of rich.
I have already discussed with Ina that we will provide a simple alternative for the progress bars, but not over-complicate things. For those users who still run into issues, I will write a short summary of possible causes and solutions to be included into a Troubleshooting guide for the DDS.

Just to give an update on the issue: Ina suggested to add another if/else statement to the text_handler.py that will branch into a text only version for older terminals. We agreed that it is desirable to have a means of auto-detection instead of e.g. a command-line parameter to switch between the emoji and text-only status.
Ina had suggested to use rich.console.detect_legacy_windows, both a method and a flag. Hence, I tried to find out what exactly this method detects. The rich source code shows that it wraps colorama. Thus, I spent the last few hours taking the deep dive into the internal workings of terminals to understand how formatting output works.
To achieve the display colors and character styles in terminals and emulators, as well as other functionality such clearing screens, moving cursors and setting title bars, ANSI-escape codes are used. Technically, these are just sequences of bytes and are embedded within the bytes of the text as if they were regular letters. However, instead of just being displayed, they convey a command or action that is interpreted by the terminal. Since they were introduced in the UNIX world in the late 1970ies, most systems except Windows NT supports them. From Windows 7 on the new terminal app reintroduced the support for them, so that ANSI-escape codes need to be converted to the Microsoft-specific terminal calls for all systems using prior to Windows7 and later than Windows95.
All Python packages that provide high level means to style terminal output, such as colorama, blessed or blessings however do not seem to directly perform the format string to bytecode conversion themselves, but either use pyterminfo or one of the several wrappers of the curses library:

High Level
Low Level

Support for the conversion to Windows is apparently either provided by Jinxed, Windows Curses or Teletype.
However, all of the documentation that I have read today only dealt with formatting text on the terminal and printing it styled, with color or perform positioning on the terminal. None mentioned symbols or emojis specifically. Hence, all of this Windows legacy terminal detection might actually lead us nowhere, because it just addresses the ANSI-escape codes and their mapping to the Windows bindings respectively their bytecode conversion for all systems.
The problem here is, that the remainder of the text is "just displayed" after the ANSI-escape codes have been stripped and processed in an O-specific and terminal-specific manner. Since our emojis are regular unicode characters, they should be part of the "payload". So the key here is to determine if the current terminal (emulator) is set to support UTF-8 and not how well it supports the ANSI-escape codes or how many lines it's viewport comprises - stuff that the curses library typically "knows" from querying a large database that collects the properties of thousands of terminals and terminal emulators.
Unfortunately, I have not yet figured out if there is a generic "one size fits all" approach to determine the encoding a terminal is set to. One can print this setting on most shells, so it should be possible to somehow get this response into Python, but I would like to avoid writing something like that myself... I will continue working on that tomorrow.

Guys, whilst this is very nice, surely we're talking about a tiny number of users here? I would have thought that there must be higher priorities - it's ok to tell people to use a different terminal if necessary.


Fix handling of supertraits, fix #21

Now I'm wondering... does the sealed trait need to have generics at all? Could it just always be trait Sealed {}?
— from #21

I don't think the sealed trait needs the bounds or even the generics AFAIK. I'll need to go back and understand why we've added the bounds.
Apologies as it will take a bit more to merge (or not)

I've published 0.6.0-rc1 — https://crates.io/crates/sealed/0.6.0-rc1
Take it for a spin and let me know if you find anything (or not)!


Mobile score is 70 instead of 90+

Hello,
Congrats for your awesome ghost theme. But I have one question.
I need a fast theme and casper scores 90+ on mobile. Your theme scores 70 on mobile (even though I used to be around 85, I don't know why it went down).
https://developers.google.com/speed/pagespeed/insights/?url=https%3A%2F%2Fsoundsirius.digitalpress.blog%2F&tab=desktop
Please help me make your theme score 90+ on mobile on my website.
https://soundsirius.digitalpress.blog/

I'm facing the same issue after shifting from Casper. Please help.

@kittu999c It's hard to help you if you don't provide an url, every website has different issues and the solutions might vary from a website to another.

@nsursock At the moment your website scores 81 on mobile which is still not good. The thing is, PageSpeed Insights change the parameters from time to time, a lot of things changed since Google released Web Vitals, that's why the score changed in the first place.
I can address some issues definitely but it would take some time since currently I'm quite busy with other stuff, hope I can work on this next week or so.
For now you can do a couple of things as well to improve your score, for example:

Enable the search so the related code is not unused.

Consider if you want to keep Google Analytics and Momently since both also affect the score, or maybe looking for some better way to include them in your website.

Compress and save this picture as JPEG or WebP.

Serve static assets with an efficient cache policy. The theme is not responsible for this, you have to configure that on your server. If you're not sure about how to solve this, you can ask for help with your hosting provider.

I already did a trick for hotjar tracking that only loads on mobile. What do you mean a better way to include them?
Done
Done
My hosting provider says everything's fine on their side.

I need a website that loads under 1 second and I need to make sure your theme is top notch. Casper still scores 90+ even if I include tracking.

I think something important to do is to use srcset for images. I don't know if you use that techniques to properly size images depending on screen size. But casper clearly makes use of it and makes the blog fast.

Also the subscribe page isn't working. It's working fine in posts but the button on the homepage gives a 404.

I will address some of those issues as soon as I have time for it, but the subscribe page works, you just need to follow the steps described here: https://github.com/eddiesigner/liebling/wiki/How-to-enable-subscribers
You actually need to create the a page for the newsletter in the Admin, not only adding the link to it.

I did the following tests with pingdom so you can get inspired. Casper is 88 (google) on mobile and I need the beauty of your theme with the speed of Casper. It makes a big difference on 3G.
https://pasteboard.co/JdxaMag.png (casper)
https://pasteboard.co/Jdxb5TK.png (liebling)

If you can make liebling load in less than 1 second, it will be an awesome feat. Plus can you consider including tailwind css by default? I see you already use lozad.

I won't include Tailwindcss since you can include it by your own if you need it, since this theme don't use it, it's not a good idea to include it. Also, you can't expect having faster loading times if you'are adding frameworks like that, if you decide to include them, you have to solve possible issues with them by your own.

Hello I have news: the website loses a lot of time twice while doing nothing.
https://yellowlab.tools/result/forqc5lwvr/timeline
from 1.6sec until 2.9sec: there's no activity. that's more than 1 second wasted
again from 3sec until 3.5sec: there's no activity.
I have included a screenshot. Is your theme at responsible for this?

I got some feedback from ghost forums: https://forum.ghost.org/t/my-blog-does-nothing-during-2-2-seconds-mobile/15441/2

Fix Style Recalculation: There is quite a bit of style recalculation going on your site, probably due to your css and the vendor.js which seems to shift your site around while loading.
Vendor.js loads your images, but you deferred it via the in your defer attribute in your script. It's basically waiting waiting waiting until the html is parsed and then starts to insert images and stuff. Is that intentional?

Version 0.7.3 is out and it solves multiple javascript-related issues, I encourage you to download this new version and test it again.

As you can see now, in PageSpeed Insights it scores 94 on desktop and 87 on mobile. Be aware that the score is almost never the same, it can change from one test to another but in general the score is better now.

Also, the score is way better now in the Yellow Lab Tools.
Although, there are still some issues that I can't solve by myself because those issues are not created by this theme but by Ghost itself and some third-party libraries.
Also there are some improvements that I have to implement in the CSS but that will take some days because I have to reorganize the stylesheets and make a lot of changes, after that the score should be even better but you can't expect having scores really close to 100% because that depends on several things, not only on this theme.
Finally, you should've mentioned that you modified this theme and added libraries by yourself, a lot of issues exist in your reports because of that, so please I encourage you to test your website with the new version of this theme without customizations. As I said before, if you add code or libraries by yourself, you're responsible for the issues that might appear because of them.

Hello,
Long story short: the killer optimisation would be to load the right image based on screen size AND container size. Ghost said that normally the CMS optimises images automatically. The hero picture is also affecting the score on google.
More details:
Sadly, it didn't make a big difference on google pagespeed (mobile). I think there's something important to do on mobile with images. In ghost, i'm uploading images max 100kb. I have uploaded on Netlify 2 versions: desktop (100kb) and mobile (max 25kb). Now you should use srcsets like Casper I guess even though it needs configuration and my plan on digitalpress doesn't allow me to do it.
But i was thinking that the real killer feature would be to load the right image based on the div element width. For example, the landing page on desktop needs the mobile version for article cards. The featured slider though could use big images.
Pingdom says:
Image | 71.83% | 953.9 KB
Script | 12.76% | 169.5 KB
CSS | 8.52% | 113.1 KB
Font | 4.52% | 60.0 KB
Casper is still at 86 mobile and Liebling is at 73. Desktop is fine. But to be honest, Casper shows some bugs sometimes when I use Tailwind CSS components from other websites.

Hi, tools like Gumlet (https://www.gumlet.com) can optimise images very well but it works better if background images are not used. Currently I can see the story page main image is set as background. Is there any way to change that?

Thanks for the info adityapatadia. One last thing: it seems the featured slider needs improvement (page almost complete at 1.4s and then until 3.2s featured slider is working).

After making some changes I managed to improve the score significantly, now it gets an score of 93 on mobile and 98 on desktop as you can see in the screenshots bellow:

I also fixed the issue with the featured articles as you can see here:

Although there was a problem, that didn't mean that the site took 3.2 seconds to start working, that time was used to build slides that worked as clones to run the carousel in infinite mode. I decided to remove that functionality.
Please download the latest version to get all these improvements: https://github.com/eddiesigner/liebling/releases/tag/v.0.7.6
@nsursock Please note that your website still has lots of customizations, for example, you're loading some tracking libraries, you're loading Tailwindcss and you also have some weird javascript code that seems unnecessary, all those things affect and will prevent your website from getting a good score. As I said in a previous comment, please test your website with this new version of the theme WITHOUT CUSTOMIZATIONS, please don't report anything else if you don't do it in that way, I'm not responsible of solving issues that are triggered by your own changes.
I recommend you both to not use Unsplash directly in the Ghost admin when editing a post because Ghost doesn't generate small versions of those images, it only does it when you upload images through the input file:

Your theme now loads very fast. Great job. But I still get largest Contentful paint problems on Google PageSpeed. it depends what it identifies as LCP. when the hero picture is selected I'm in the red. otherwise it selects the featured bg image and says speed is 85+. yellow lab says everything's fine though and I'm loading in less than 1 second. https://yellowlab.tools/result/fp8dvbepgw/timeline
https://developers.google.com/speed/pagespeed/insights/?url=http%3A%2F%2Fsoundsirius.digitalpress.blog

Your blog still has customizations made by yourself, a quick look on your site I can identify some potential problems that might lead to a lower score:

This is not a customization but for some reason you're uploading the image from some CDN or i don't know from where but it wasn't done in the Ghost admin using the input file, that's why Ghost didn't generate smaller versions.

In the screenshot above I can see that you're running some weird javascript code that manipulates the hero element, I don't know why do you need it but also affects.

Also, you're loading a different font after the one used by the theme was already downloaded and then you apply some styles to several elements (including the hero title).
And lastly, you're loading Tailwindcss for some reason.
As I already said multiple times, you must test your website with the latest version of this theme and without customizations, sorry but I don't have time to solve issues that are not related to the theme itself, you can use Stackoverflow for that.
I will close this issue as there are no significant improvements I can make for now.


please start github discussion

Not familiar how to control the thickness of the 3D volume

I started a github discussion for this repo, please can you explain what do you mean by thickness of the 3D volume?

Perhaps the DICOM data I have only provides a thin slice of a 3D model.
Could you share which Volume data you used that provides what we see in the screenshot?

I just pushed a .nrrd and a dicom series, please note that in order to load a dicom series the entire containing folder needs to be selected


bugfix/build: fix compile failed for go1.17

changed points:

Just a question, why CI can build successfully?


Adding ontobot-change-agent to create PRs based on appropriate Issues.

This PR adds a workflow ontobot.yml which monitors issues created and on finding issues following a particular pattern (with issue starting with Hey ontobot, apply: followed by KGCL commands as bullets)  will trigger the workflow that performs suitable actions on the resource file and create a PR reflecting the changes reflected.
Example:

Issue: Obsoleting a term: https://github.com/hrshdhgd/cell-ontology/issues/9
Corresponding PR: https://github.com/hrshdhgd/cell-ontology/pull/10

TODO: Have a GH_TOKEN in the secrets section of this repo for all of this to work.

I added GH_TOKEN

@gouttegd : I have updated the workflow to use kgcl-java as a robot plugin (for robot within ODK) rather than downloading the standalone resource (although that feature is also available) - exactly as you had envisioned.


inventory roll back not working on 1.18 paper r3

with the new paper experimental server ir loads up but no buttons on gui wor
https://user-images.githubusercontent.com/86411355/143902673-5d0e9559-9f06-454d-ac4f-846bf6472543.mp4

https://kennytv.eu/Paperclip-1.18-rc3-R0.1-EXPERIMENTAL-3.jar
paper jar i used

This project seems to be abandoned. However, there is an updated fork available here

This project seems to be abandoned. However, there is an updated fork available here

thanks


Remove cachix from default.nix

Description
Removes cachix from default.nix

@OpsBotPrime merge

Pull request approved for merge by @d-goncalves, rebasing now.

Rebased as 26ecc0f00c26271c66b145f7ce17e4804fb2f5bf, waiting for CI …

CI job :yellow_circle: started.


Refactor/bsk 244 definitions and tolerance refactor

Tickets addressed: bsk-244
Review: By commit
Merge strategy: Merge (no squash)

Description
This branch changes the way that tolerance variables ''epsilon'' are defined in modules solarArrayReference and oneAxisSolarArrayPoint. This is done in commits 1 and 2. Later, this branch changes the definition of some functions in thrusterPlatformReference and oneAxisSolarArrayPoint, which were causing .rst build issues. This is done in commits 3 and 4. Commit 5 removes pi from the range of tested values for oneAxisSolarArrayPoint due to a loss in precision, and pushes the precision on the other test cases to 1e-12. Commit 6 has the unit test print the test results.

Just a comment, not to hold up merging 😄 . We should not be changing code names to appease the documentation build. The clarity and accuracy of the code is the primary concern by a long margin. The documentation is always a tertiary concern/supporting to the accuracy. I have recorded an issue for us to look into resolving this challenge on the documentation side. For example, are there namespacing features in the docs build that we can leverage.


New version: Wondershare.Virbo version 1.5.23

Created by 🥟 Dumplings in workflow run #7981.

Log
Updated: 1.5.22 → 1.5.23
Submitting WinGet manifests
Found existing pull requests:
New version: Wondershare.Virbo.CN version 1.5.23 - https://github.com/microsoft/winget-pkgs/pull/172428
Creating manifests
Uploading manifests and making commits
Creating a pull request

Microsoft Reviewers: Open in CodeFlow

@wingetbot run

This package installs and launches normally in a Windows 10 VM.


Add Apple Silicon and Illumos

Closes #199
Closes #191
Signed-off-by: Julien Pivotto<EMAIL_ADDRESS>

It's done

Hello!  Pardon what may be a silly question, but with this change should we see illumos or Apple Silicon binaries in the assets for the 0.8.0 release?
I can't seem to find either one here: https://github.com/prometheus/promu/releases/tag/v0.8.0

The 0.8.0 release was built by promu 0.6.0, we will need to update Makefile.common (to my shame I don't know which repository is the source of truth for that)

Prometheus/Prometheus. but promtool should build from itself. I have the code on my laptop.

Makefile.common comes from prometheus/prometheus.