No space left on device --Pi Zero

First configure of Maverick 1.2.0 -raspberrylite on a Pi ZeroW struggled to configure. The swap space was full most of the time.
Do I need to explicitly disable everything I don't need in the localconf.json, such as SITL, ROS and the flight controller firmware modules?
Notice: Applied catalog in 39419.03 seconds

Maverick finished, happy flying :)

Traceback (most recent call last):
  File "/opt/ros/melodic/_setup_util.py", line 295, in <module>
    sys.stdout.flush()
IOError: [Errno 28] No space left on device
Failed to run '"/opt/ros/melodic/_setup_util.py" configure': return code 1

Hi, if you've got the raspberrylite download then no it should be configured for a pi zero, you don't need to disable anything.
What size SD card is it?  Has it expanded the main partition OK? (df -h)

It hasn't expanded the main partition, it shows 16GB for a 64GB SD card.
Filesystem      Size  Used Avail Use% Mounted on /dev/root        16G   15G     0 100% / devtmpfs        181M     0  181M   0% /dev tmpfs           185M     0  185M   0% /dev/shm tmpfs           185M   15M  171M   8% /run tmpfs           5.0M  4.0K  5.0M   1% /run/lock tmpfs           185M     0  185M   0% /sys/fs/cgroup /dev/mmcblk0p1  253M   54M  199M  22% /boot tmpfs            37M     0   37M   0% /run/user/6789
I will do it manually using raspi-config: the expand_rootfs tool.
Thanks for having a look.
I've attached the full output of $ maverick configure.
maverick_configure.log
The first line was:
Warning: Scope(Class[Maverick_hardware::Raspberry]): Root filesystem/partition needs expanding, *please reboot* when configure is finished.
Perhaps it should prompt the user to stop the configure and resize using raspi-config: expand_rootfs.
The error message is located in /manifests/maverick-modules/maverick_hardware/manifests/raspberry.pp:
    if ($expand_root) {
        # $rootpart_expanded and $rootfs_expanded are facts provided by facts.d/filesystems.py
        if str2bool($::rootpart_expanded) == false or str2bool($::rootfs_expanded) == false {
            exec { "raspberry-expandroot":
                command     => "/usr/bin/raspi-config nonint do_expand_rootfs; echo 'done' > /etc/raspi-expandroot",
                unless      => "/bin/grep 'done' /etc/raspi-expandroot",
                require	    => Package["raspi-config"],
            }
            warning("Root filesystem/partition needs expanding, *please reboot* when configure is finished.")

I've created a pull request to modify raspberry.pp
pull/974

Is it possible to disable SITL wi

accidental close sorry

So the fs expansion is a little complicated on the raspberry platform:

raspi-config is used to expand the filesystem:
https://github.com/goodrobots/maverick/blob/stable/manifests/maverick-modules/maverick_hardware/manifests/raspberry.pp#L120
Maverick has 'facts' that are used as part of the puppet (configure) run to determine the current state of the system.  There are two custom facts that determine if the root partition, and the root filesystem have been expanded:

[flight] [mav@maverick-raspberry ~/software/maverick/manifests/maverick-modules/maverick_hardware/facts.d]$ ./filesystems.py
rootpart_expanded=True
rootpart_device=mmcblk0
rootpart_partition=mmcblk0p2
rootpart_partno=2
rootfs_expanded=True

If either of these are set to False, then the expansion (through raspi-config) is performed when configure is run, and the user advised to reboot to activate the expansion.
This is usually done in bootstrap environment when building from scratch, after which a reboot is done to activate the expansion before carrying on with a full flight or dev build.  For a download image, the initial maverick self-update; maverick configure should do the same thing - it should automatically take care of the expansion and then advise the user to reboot.

The expansion writes a marker file (/etc/raspi-expandroot) to indicate the expansion has been done so it can be ignored in the future by other tools.

In your case it has failed because your SD card has run out of space during the initial configure, clearly we're riding the 16Gb line too finely.
I think what we could do here to improve the 'UX' is what other platforms do, which is to automatically call the expansion on first boot and reboot automatically (if necessary) without any intervention from the user.  There is already a firstboot script that we can use for this:
https://github.com/goodrobots/maverick/blob/stable/manifests/maverick-modules/base/manifests/maverick.pp#L170

Note: the firstboot script is run through a systemd boot manifest (maverick-firstboot) and enabled by default.  The manifest only runs if a filesystem marker is placed (/boot/maverick) - similar to how Raspbian uses /boot/ssh or /boot/wpa_supplicant.conf markers, but this file isn't placed by anything so never gets called.  We could place it through the preprelease script that we use to prepare all the releases (https://github.com/goodrobots/maverick/blob/stable/manifests/maverick-modules/base/files/preprelease.sh), and add the fs expansion to the firstboot actions instead of the current configure.  Perhaps forcing a lengthy configure automatically isn't a good UX.

Changed maverick-firstboot service to run a script instead of a maverick configure: ~/software/maverick/bin/maverick-firstboot.sh.   This script is then symlinked to a platform specific script according to the platform, ie. on raspberry it's linked to manifests/maverick-modules/maverick_hardware/files/raspberry-firstboot.sh.
On the raspberry, this then checks for a filemarker (/etc/raspi-expandroot) and if it doesn't exist, it expands the root partition, then the filesystem, then it automatically reboots.
The preprelease.sh script (which is used to create the dist images) removes the filemarker, so when users download the image and first boot it, it should automatically expand the partition/filesystem and then reboot.

SD card partition is now fully expanded on first boot and automatically reboots, so happens invisibly to the user.  Added to quick start and module (hardware) docs.


Use RS_NAME_SPLIT_NAMESPACE to split namespace

closes #3374

Good job! Adding a description why the use of the FM RS_NAME_SPLIT_NAMESPACE fixes the problem would help other abapgit contributors to do the review. The best place where to add such a description is the long commit message body.

thanks
@Elberet can you help testing this fix?

Heh, looks like we ended up at approximately the same solution. I just submitted my spin of this as #3445, but I ended up rewriting the whole thing because of additional issues mentioned in the other PR...

guess we will close this PR in favor of https://github.com/larshp/abapGit/pull/3445

see https://github.com/larshp/abapGit/pull/3445 for fix.


upgrade our lnds to 0.13.1

checkIsBalanced() is failing after channel opening in tests, I'm not sure if it's about fees, but if it's not urgent I'll check on the weekend
Image used in docker-compose: lncm/lnd:v0.13.1-monitoring

this is not urgent

Premise (according to our code)

After open the channel: capacity - commit_transaction_fee - local_balance = 0

Problem
we are using commit_transaction_fee to calculate escrow in Lnd but v0.13.1 is returning an inconsistent commit_transaction_fee or there is an additional fee that is not parsed by lightning package (altough I can't see anything new in https://api.lightning.community/#lnrpc-channel)
lncm/lnd:v0.12.1-monitoring
capacity - commit_transaction_fee - local_balance = 0
1000000 - 9050 - 990950 = 0 (ok)

data from updateEscrows method in lndUtils.ts
{
  diff: 9050,
  escrowInLnd: 9050,
  escrowInMongodb: 0,
  channels: [
    {
      "capacity": 1000000,
      "commit_transaction_fee": 9050,
      "commit_transaction_weight": 600,
      "id": "142x1x0",
      "is_active": true,
      "is_anchor": false,
      "is_closing": false,
      "is_opening": false,
      "is_partner_initiated": false,
      "is_private": false,
      "is_static_remote_key": true,
      "is_variable_remote_key": false,
      "local_balance": 990950,
      "local_csv": 144,
      "local_dust": 573,
      "local_given": 0,
      "local_max_htlcs": 50,
      "local_max_pending_mtokens": "990000000",
      "local_min_htlc_mtokens": "1",
      "local_reserve": 10000,
      "partner_public_key": "038e4ed546cf24c19b14a59437ac53e7c89ecd2d3265bd35ab3dcea0856002944d",
      "pending_payments": [],
      "received": 0,
      "remote_balance": 0,
      "remote_csv": 144,
      "remote_dust": 573,
      "remote_given": 0,
      "remote_max_htlcs": 50,
      "remote_max_pending_mtokens": "990000000",
      "remote_min_htlc_mtokens": "1",
      "remote_reserve": 10000,
      "sent": 0,
      "time_offline": 0,
      "time_online": 1000,
      "transaction_id": "3825fbea33833db038b62494f97a7269429dfe0674a8a19648c8be32f3c58ae4",
      "transaction_vout": 0,
      "unsettled_balance": 0
    }
  ]
}

lncm/lnd:v0.13.1-monitoring
capacity - commit_transaction_fee - local_balance = 0
1000000 - 3140 - 996530 = 330 (error)

data from updateEscrows method in lndUtils.ts
{
  diff: 3140,
  escrowInLnd: 3140,
  escrowInMongodb: 0,
  channels: [
    {
      "capacity": 1000000,
      "commit_transaction_fee": 3140,
      "commit_transaction_weight": 772,
      "id": "142x1x0",
      "is_active": true,
      "is_anchor": true,
      "is_closing": false,
      "is_opening": false,
      "is_partner_initiated": false,
      "is_private": false,
      "is_static_remote_key": false,
      "is_variable_remote_key": false,
      "local_balance": 996530,
      "local_csv": 144,
      "local_dust": 573,
      "local_given": 0,
      "local_max_htlcs": 50,
      "local_max_pending_mtokens": "990000000",
      "local_min_htlc_mtokens": "1",
      "local_reserve": 10000,
      "partner_public_key": "0215b957f83758b3ec76fdd50f6c25a59a5c720cd0c37ad1cacd203c883fe613a0",
      "pending_payments": [],
      "received": 0,
      "remote_balance": 0,
      "remote_csv": 144,
      "remote_dust": 573,
      "remote_given": 0,
      "remote_max_htlcs": 50,
      "remote_max_pending_mtokens": "990000000",
      "remote_min_htlc_mtokens": "1",
      "remote_reserve": 10000,
      "sent": 0,
      "time_offline": 0,
      "time_online": 1000,
      "transaction_id": "624d80132c0cc9c06fd193efd9be7aa9c57cd5c9bfc0ee5aace7368c9e2ee303",
      "transaction_vout": 0,
      "unsettled_balance": 0
    }
  ]
}

@dolcalmi escrow changed by default with lnd 0.13
look at "Default Anchor Output Channels" in https://lightning.engineering/posts/2021-06-17-lnd-v0.13/
I believe if you deactivate anchor output the tests should pass?

Closed by #511


Minor Change. Not needed

Please delete if you are active.

I don't believe I can delete PRs, closing it is fine


Can't publish JSON message through client.publish

Hi,
I found this tutorial that explains how to buffer a JSON message and publish it through client.publish. The message doesn't arrive as expected. The code:

else if (p0 == 'i') {
StaticJsonBuffer<200> jsonBuffer;
JsonObject& deviceInfo = jsonBuffer.createObject();
deviceInfo["firmware"] = "v1.0";
deviceInfo["deviceName"] = iotclient.getClientId();
deviceInfo["chipid"] = ESP.getChipId();
deviceInfo["topic"] = iotclient.getTopic();
char JSONmessageBuffer[100];
deviceInfo.printTo(JSONmessageBuffer, sizeof(JSONmessageBuffer));
Serial.println(JSONmessageBuffer);
if (client.publish(iotclient.getAdminTopic().c_str(), JSONmessageBuffer) == true) {
Serial.println("Success sending admin message");
} else {
Serial.println("Error sending admin message");
}
client.publish(iotclient.getAdminTopic().c_str(), "SOMETHING ELSE");
}

I added the "SOMETHING ELSE" message in order to check if the first else if statement executes and the message is sent, and it does. The "JSONmessageBuffer" message returns "Error sending admin message". Any idea on how to fix this?

The default packet size supported by this client is 128 bytes. My guess is you're exceeding that limit when you add up topic length and payload length etc.
You can increase this limit by editing the value of MQTT_MAX_PACKET_SIZE in PubSubClient.h.

@knolleary Thanks for your response.
I did check that in advance, and it was 99 bytes, but I forgot to include the topic in the calculation. Problem solved!
Do you think I can ramp up the max size to 150? Or will this harm stability?

You can increase it to whatever you need as long as you have the ram space for it on your device.

I can't seem to change the MQTT_MAX_PACKET_SIZE constant. I set it to 512 at the top of my file and I am printing it out right before the publish just to confirm, but my publishes are returning 0. If I truncate my payload to under 128, it works fine. Am I missing something?

@Iambecomeroot Where are you trying to change the constant and how? For the time being I changed it directly in the pubsubclient library.

I compile with platformio which allows me to specify flags to g++. I just added a definition to g++ that is applied early enough to work with this library.


Create useLoadingState

const [isLoading, doLoad] = useLoadingState(loadingFunction);
doLoad type definition from loadingFunction type def.

First draft is done. Still need to dogfood it in the test application.

v3.1.0


[ICON] Add Kyuubi icon for Jetbrains Toolbox

Why are the changes needed?

How was this patch tested?

[ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible

[x] Add screenshots for manual tests if appropriate

[ ] Run test locally before make a pull request

Codecov Report

Merging #564 (c4a5650) into master (29e169b) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head c4a5650 differs from pull request most recent head 23918ec. Consider uploading reports for the commit 23918ec to get more accurate results

@@           Coverage Diff           @@
##           master     #564   +/-   ##
=======================================
  Coverage   79.75%   79.75%
=======================================
  Files         118      118
  Lines        4524     4524
  Branches      547      547
=======================================
  Hits         3608     3608
  Misses        610      610
  Partials      306      306

Continue to review full report at Codecov.

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

thanks, merging to master


neo-cli stops sync per several days and works again after restarting.

Neo-cli-2.10.2 stopped sync per several days and worked again after restarting. Seems the CPU utilization is almost 100%. After restarting, the CPU utilization went down immediately. Here's a curve diagram for this phenomenon.

That is true, @superboyiii, sometime happen and just come back syncing after restart.
I believe it still can have relationship with TaskManager.
I just took a look and realized that, in fact, PR #644 modified the leak on ProtocolHandler.
What do you think, @shargon and @erikzhang.
Maybe we should modify https://github.com/neo-project/neo/blob/1e2c6c67795eed64c9266ec4292621f58a99e44f/neo/Network/P2P/TaskManager.cs#L27 to FIFOSet as well and limit its capacity.
possible way to test
Create a command on neo-cli that cleans this vector.
After the node "stopping syncing" use this command to clean the tasks and see the result.

Hi guys,
I will close this issue since it is a duplicate like Vitor already mentioned.
This is an issue with neo itself, not neo-cli.
Feel free to reopen this issue if you think this was a mistake. Thanks.


Fix prototype-polluting vulnerability

We are fixing a code scanning alert caused by a prototype-polluting assignment. Prototype pollution is a type of vulnerability in which an attacker is able to modify Object.prototype. Since most objects inherit from the compromised Object.prototype object, the attacker can use this to tamper with the application logic, and often escalate to remote code execution or cross-site scripting.
One way to cause prototype pollution is by modifying an object obtained via a user-controlled property name. Most objects have a special __proto__ property that refers to Object.prototype. An attacker can abuse this special property to trick the application into performing unintended modifications of Object.prototype.
To fix the error we are preventing the __proto__ property from being used as a key.
Code scanning alert: https://github.com/github/braintree-encryption/security/code-scanning/1

Thanks for the fix here @jibrang. I don't plan to pull any changes from this repo into gh/gh, so any changes here are just to satisfy the vuln management tooling. I was able to dismiss the security issue for this code, so I don't think we need to merge this PR


update to electron 6.0.x

Fixes https://github.com/microsoft/vscode/issues/76069
Fixes https://github.com/microsoft/vscode/issues/76197
Fixes https://github.com/microsoft/vscode/issues/76656
Fixes https://github.com/microsoft/vscode/issues/77205
Fixes https://github.com/microsoft/vscode/issues/77243
Fixes https://github.com/microsoft/vscode/issues/77678
Fixes https://github.com/microsoft/vscode/issues/77956
Fixes https://github.com/microsoft/vscode/issues/78434
Fixes https://github.com/microsoft/vscode/issues/78878
Fixes https://github.com/microsoft/vscode/issues/79311
Fixes https://github.com/microsoft/vscode/issues/80913
Fixes https://github.com/microsoft/vscode/issues/81516
Fixes https://github.com/microsoft/vscode/issues/52778
Fixes https://github.com/microsoft/vscode/issues/66906
Fixes https://github.com/microsoft/vscode/issues/69285
Fixes https://github.com/microsoft/vscode/issues/71123
Fixes https://github.com/microsoft/vscode/issues/79253

Also Fixes the following issues:
https://github.com/microsoft/vscode/issues/59887
https://github.com/microsoft/vscode/issues/51132

This seems to have come back again in the latest update, to a stronger degree too.


Faulty implementation of LSTM

Your implementation is incorrect. I suggest going over the paper again. You're confusing the hidden and output states.

Thanks for your feedback @berkcoker!
Could you expand a little on what you mean is incorrect? What lines of code in particular are you referring to? Which paper are you referring to?
These are the ConvLSTM equations from my reference:

And this is what I based the code of.
It looks right to me. 😕
I guess I could add in a peephole if that's what you mean, but it hurts performance unless the output gate also uses the previous memory. It's not clear to me how important these details are in practice. Do you have any input?

@berkcoker, could you clarify what particular details are faulty in the implementation?
Note that in literature the hidden state is the output (the naming comes from vanilla RNNs that lack the cell state), e.g. one input projection and one hidden to hidden projection is done in LSTMs, but not an additional output projection (as that could be done after the recurrent connection instead with reshaping and a dense layer, which is a lot more computationally efficient).
I believe you've confused the peephole connections in Graves' LSTM equations with the hidden-to-hidden transition. Am I right?

@berkcoker, care to clarify?

@berkcoker, I'm closing this issue and marking it as invalid as it seems you've misread the LSTM equations (see my earlier replies). Feel free to reopen this issue with a clearer explanation of what is wrong in the implementation if you get around to it.


NDK 26 support

Based on this https://github.com/android/ndk/wiki#release-schedule NDK 26 should be released sometime in Q3. I did some light testing and it seems like some files moved around that leads to everything failing today. I'm not sure if those types of moves are tracked anywhere? But I wanted to file this as a tracking issue for supporting the new version.
One open question I have is, should we be trying to maintain backwards compatibility in this case like bazel did before, or not?

cc @cpsauer have you looked at this at all?

After some testing it seems like https://github.com/bazelbuild/rules_android_ndk/pull/41 is roughly what would be required for the simplest case

I don't see anything about this in the changelog so far https://github.com/android/ndk/wiki/Changelog-r26, but maybe that kind of re-arranging isn't documented either

Haven't yet, Keith, but really appreciate your moving this along.
Closest was trying to merge in support for major improvements in the backwards compatibility story (like Apple's @availables) in #27
[I rather suspect Google probably has all this in their internal version, so maybe we can get a Googler to help export or otherwise facilitate collaboration? Really wish there were a good way to collaborate rather than this being a fork.]

I updated my PR to be backwards compatible, but would definitely love to hear from @ahumesky if this is the right path https://github.com/bazelbuild/rules_android_ndk/pull/41

We don't document when clang internals move around, no (we aren't usually aware that it's happened). The libandroid_support removal is a part of the kitkat removal. It was never needed for minSdkVersion >= 21. The changelog really only documents user facing changes, not build system maintainer things. https://android.googlesource.com/platform/ndk/+/master/docs/BuildSystemMaintainers.md is the source for that (and it was missing the lib directory rename, so https://android-review.googlesource.com/c/platform/ndk/+/2670239 fixes that).
(I agree we probably should maintain a separate "changes" list in that build system maintainers doc, but it's next to impossible for me to go write that after the fact)

Thanks for the context! So seems like my changes are alright, but maybe we should improve this further by calling -print-resource-dir which I think would be fine for us to do

That's how ndk-build deals with it. If it's an option for you it's going to be the most future proof path.

https://github.com/bazelbuild/rules_android_ndk/pull/42

#42 is merged


Tons of issues.

Jeffrey,
First of all, I'd like to say this is a very, very good creation.
I'm not sure what's wrong,  but it seemed good when it was online at http://harvardconnection.co:
I've run into a heap of errors with this script, mostly within the /admin/ with a bunch of undefined variable errors and such in the files SessionData.PHP / Log.php and Index.php.
I have a feeling most of the errors have been due to the Facebook integration within it (Using your Facebook account to login, and inviting people from FB).
Is there any way you could fix this? or even possibly, make a seperate version without all the use of a Facebook app?
Thanks so much!

Hello Paul,
I will start off by saying that I am NOT a developper.
I am currently paying a few developpers from freelancer.com to fix the issues with this script.
Once completed, I would obviously post the changes here in Github under the MIT license.
Currently, the cost would be around 50$, would you know anyone interested to donate a few bucks to help fix this script? If not, then I will probably end up absorbing all of the cost because I really want to use this script.
Call me nostalgic, but I prefered the old facebook. I think preserving it would be preserving a piece of the past.
Regards,
Sobadef

Sorry buddy, I wish I could donate but I'm broke at the moment. I to preferred the old Facebook, it's much cleaner and simpler than it is today. I would absolutely love to see this script up and running without problems and complications too it. I fully support you in this @sobadef - do you have the FreeLance.com project link? I'd like to take a look. :) Glad to see you're doing this man!

No worries! I can totally understand.
Here is the link to the freelancer page: https://www.freelancer.com/projects/Graphic-Design-php/Fix-website-script.html
After talking with a few freelancers, they are slowly realising that there are a LOT of issues with this script. For this reason they are charging more to fix those issues.
Regards,
Sobadef

Ah, well I hope everything goes well.
Can't wait to see everything working properly on it.

Me too! I will keep you informed.
I find it kind of stupid that the author forces you integrate the script with the facebook api though.

Me too, I wish we could just have people register instead of having it integrated like that.

After talking with a freelancer, it seems that it would not be possible to remove the facebook integration. Since I would only be paying 50$, he isn't going to be spending too much time fixing this script. He is going to fix some of the bugs, and make sure it works correctly on shared hosting.

I will be releasing this on a new platform this year with an auto installer if you would like to wait for that.
Sent from my iPhone

On Jan 23, 2015, at 7:31 PM, sobadef<EMAIL_ADDRESS>wrote:
After talking with a freelancer, it seems that it would not be possible to remove the facebook integration. Since I would only be paying 50$, he isn't going to be spending too much time fixing this script. He is going to fix some of the bugs, and make sure it works correctly on shared hosting.
—
Reply to this email directly or view it on GitHub.

Will the major issues be fixed?
Also, will you be removing the facebook integration?
Finally, do you have an estimated ETA as to when the auo installer will be released?

Also, do you think you can help me setup this current script on my website: thefacebook.xyz?
Is it compatible with a shared hosting plan? Someone told me that you need to use mongoDB, is that true?

I should be releasing something mid March, its based on codeigniter and removes the sql issues. I did make a version that uses mongo but havent decided if I should have that as a dependent. I also did make the facebook api optional. I will warn you by saying if you release this for reasons besides your personal use, you will probably be contacted by facebooks legal team.

On Jan 23, 2015, at 8:55 PM, sobadef<EMAIL_ADDRESS>wrote:
Also, do you think you can help me setup this current script on my website: thefacebook.xyz?
Is it compatible with a shared hosting plan? Someone told me that you need to use mongoDB, is that true?
—
Reply to this email directly or view it on GitHub.

I'm glad to hear that you will be making an auto installer, and that you will be fixing most of the issues.
As for the legal aspect of this, I am only going to be using this for personal reasons. I'm guessing Facebook legal has already contacted you?
Also, do you think you can put this website back online for demonstration purposes? If you don't have a server, I can create a free cpanel account for you.

Hello,
After a few weeks of hard work, I can now say that I have fixed the script, and removed the facebook integration. You can try it out here: https://github.com/sobadef/thefacebook
I have fixed most of the issues, but there still are some minor issues. Firstly, you cannot change your profile picture. The upload picture function does not work. Secondly, the timestamp is broken. But apart from these small issues, everything else works great. You shouldn't even encounter a redirect to facebook, but if you do, please tell me, and I will fix it.
Regards,
Nick

@sobadef Great work!

Thanks! I think they can be fixed easily too. I am still working on fixing it, so hopefully it will be fixed soon. :)

@sobadef
I'm getting some errors, any idea how to fix?
My site is http://chaiandlex.comxa.com/

Give me a sec, I just want to see if your server is the issue, or if it's the script.

@PP4UL1L7
I have tried installing the script on Github, and I did not get any issues. Can you please give me your email address so that I can figure out your issue?

@sobadef I think I fixed the error, it's something with the host I'm using.

That makes sense. Free hosting isn always the best option. If you are looking for something cheap, I heard On In Time (onintime.com) was good. I currently host with them.

Ive been trying to install this script on my MAMP setup. Every time I do, I only see a blank space after following the instructions on the github page. Are there any specific things we need to change other than the sql and database details?


Generic storage class and Image types

Adds generic new types for Input, Output, Uniform, StorageBuffer, and Image.  I had a discussion with @eddyb and @khyperia about this last week and I wanted a concrete implementation to base discussion on.
This makes heavy use of min const generics which will land in Rust 1.51, coming to Beta on Feb 11 and Stable on March 25.  Moving Ark to Nightly was mentioned as an issue in #359, but this is on a much shorter path to Stable.  It may be possible to switch to assoc consts on traits to get around this in the short-term but const generics are the appropriate place for this information.
For storage classes, the implementation works similarly to before but instead of determining binding info by parsing the HIR, it looks up the consts in MIR and calls eval_usize.  Image is similar, again using MIR instead of HIR parsing, and constructing an rspirv enum if there is one. It also makes very heavy use of pub-in-priv, and it could be changed such that when full const generics land it could be easily changed over to an enum in a non-breaking way (Mod::TypeAlias -> Enum::Variant).
By itself, this change doesn't do too much.  Built-ins were not changed, they fit into this model well but would require more design work.  It could also easily be extended to auto-derive descriptor set bindings too.
#[spirv(vertex)]
pub fn main_vs(
    in_vert: Input<Vertex>, // still has the same auto derive behaviour, uses a default type param
    out: Output<Vec2, Location<0>>,
    uni: Uniform<Mat4, DescriptorSet<0, 0>>,  // currently this is: #[spirv(set = 0, binding = 0)] uni : Uniform<Mat4>,
    uni2: UniVec3,
) {/* ... */}
// This is really the only trick that this enables without struct binding
type UniVec3 = Uniform<Vec3, DescriptorSet<0, 1>>;
#[spirv(fragment]
pub main_fs(
    uni: UniVec3, // easily reuse shared bindings with no attr tag micro-managment
) {/* ... */}

The addition that really makes this pop is binding structs of storage classes, which is a straightforward addition to entry stub generation.
// easily moveable and reusable bindings
struct MyBindings<const SET: usize, const BINDING: usize> {
    uni1: Uniform<u32, DescriptorSet<SET, BINDING>>,
    uni2: Uniform<u32, DescriptorSet<SET, BINDING + 1>>,
    ssbo1: StorageBuffer<u32, DescriptorSet<SET, BINDING + 2>>,
    // etc., could also not be generic over BINDING and instead just over SET for easily moving a block of bindings around
}

Another use case of just the outer generic wrapper is having complete control over it's interface, particularly the implementation of Deref/DerefMut and Index/IndexMut.  This is even more useful for Image since some of it's variants (a "storage image") are write-only.
Additionally, the wrapper types can hold docs for tooling like RA or RLS.
This also allows deriving a shaders I/O interface from its type signature which is a key piece for seamless inter-op with rendering backends.  A lot more design work is needed here, but having the necessary type info in the type system rather than locked in attr tags is an important first step and allows for experimentation.
This idea was raised in #246 and discarded because of the need to write out the whole signature for non-entry-point functions, which would be incredibly tedious.  However with storage class inference this would not be necessary.

Just to restate my opinion from the discussion in discord, I unfortunately disagree with this direction. It's a different system than the previously designed systems we're aiming towards like https://github.com/EmbarkStudios/rust-gpu/pull/277, as well as just against what I think is good library/language design (which I explained in the discussion but I can try to rephrase if desired). I'm open to discussion, but right now I disagree with this.


⚠ SceneTime has degraded performance

In a7d5606, SceneTime ($ST) experienced degraded performance:

HTTP code: 200
Response time: 2797 ms

Resolved: SceneTime performance has improved in c358971 after 5 minutes.


ReShade

Not related to modpack however it's mentioned in the wiki so I might just ask here:
I loaded up and activated your ReShade preset and nothing happened, am I missing the shaders/textures etc that are required for the preset to run?
ReShade is working as expected as I installed and used some random shaders just to check if the installation went right.

It should download the shader required if you've used it right on installation, it uses MagicHDR by luluco250 https://github.com/luluco250/FXShaders/blob/master/Shaders/MagicHDR.fx
if you need any further help just ask

During installation of ReShade, it doesn't give me any options to choose what shaders or effects I want to include, it just says "installed" once I go through the first few steps. I am not sure but I think this is a known issue.
In short, once i put MagicHDR.fx in my shaders directory and click your preset, it should run properly?

During installation of ReShade, it doesn't give me any options to choose what shaders or effects I want to include, it just says "installed" once I go through the first few steps. I am not sure but I think this is a known issue.
In short, once i put MagicHDR.fx in my shaders directory and click your preset, it should run properly?

I've never encountered such issues myself. I think yeah you should try that

I am double clicking your preset in the in-game overlay but it does not activate MagicHDR automatically, I could just enable it manually but obviously I don't understand how I will be able to apply the configurations in your preset for that shader.

does it work now?

I mean, applying the preset is still not doing anything, I was about to apply all the configurations manually myself.

You can always re-enable it later.

Okay then, thanks for the help.


make a new release？

the latest version released at aug,3,2018

will need to check what changed since then.

oh yeah, quite a few bugfixes.

https://github.com/quantopian/pyfolio/releases/tag/0.9.2

thanks


Cannot call nil.dup/nil.clone

Ruby ISO spec, which mruby conforms, clearly describe:

If the receiver is an instance of one of the following classes: NilClass, TrueClass, FalseClass, Integer, Float, or Symbol, then raise a direct instance of the class TypeError.
But the behavior has changed since 2016 in CRuby.


Not seeing 2018 statewide candidates for offices like governor in the processed data files

Future assembly and senate candidacies are there, but not the executive offices. The executive office contests are not even in the CandidateContest database table.
Here's one part of the problem, if not the whole thing: The .office_name property on the Form501Filing concatenates the candidate's office type and district (e.g. 'Assembly 40') to create a full label used for getting or creating the OCD Post. District is a numeric field on the model and is NULL for executive branch office candidates. This resulted in .office_name values like 'Governor None'.

The above fix uncovered an additional issue in the merge function (see f23c889422478a42f0d81aac2400c0e5ce56ee81), which is now also fixed.
Now the executive branch candidates are appearing in the published csv files.

Using this GIF not just because it's appropriate, but also for @aboutaaron.


In list view in the media module, the filter and sort options are out of order

The filter and sort options in the media module do not work in list view and throw a JQuery Syntax Error on each Click. (Media Module over Main Menu, not the Media Browser in the Inspector)
Cause: the id attributes are built based on the asset (proxy) identifier, but that is document|5po09f91hh5r14vggq6j708b12 for Canto, leading to Syntax error, unrecognized expression: #neos-asset-actionmenu-document|5po09f91hh5r14vggq6j708b12

The Canto API needs scheme and identifier to identify an asset. Those are stored in the same string separated by a pipe character. Since the media browser UI uses the asset (proxy) identifier in the markup, this results in JS errors.


Where should i go from "node fluffd.js"

When i try use the above command, nothing happens?

I cant type in the terminal after i send the command, does anyone have any ideas? Thanks. :)

Just follow these instructions:

You can now open fluffd-client/index.html in your favorite web browser to take control of Furby Connect. Most menu items should be self-explanatory. See the DLC flashing documentation for information on DLC-related commands

So, using your file manager, open the fluffd-client folder and open index.html in your web browser.

I will try that and get back to you, thank you so much!


add: more example endpoints

It'd be great to have an example folder, on the top level of the project, where to put inside a docker-compose which exposes 3 endpoints:

one hat retrieves data from a postgres
one that does the same but adds a Redis cache on top of it
one that retrieves data from a mongodb

I'm gonna to try to do one written in Golang as well.

I added a python server that covers raw postgres vs redis use case.
I don't think we need a mongodb one but it'd be fun to add a Golang and perhaps a Bun one in the future.


Squelch uglify warnings for node_modules

Running webpack -p results in hundreds of dead code warnings for React code I'm pulling in from node_modules. Because I am using the define plugin, these are to be expected, but they make it difficult to find warnings being thrown regarding my own code.
Does anyone know of a way to silence warnings for code originating from node_modules? If not, is there any plan to implement such a feature?

:+1:, I too would like this feature.
You can use
new webpack.optimize.UglifyJsPlugin({
    mangle: true,
    compress: {
        warnings: false,
    },
})

but then, like you said, you'll miss warnings for your own code, too.

Sounds good. You can send a PR. Try to use warnings.test warings.include and warnings.exclude.

hope this may help you @dubrowgn @wchargin


Refactor & simplify logic to detect where a module is within an env.

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#969
#968  👈
#967
#966
#965
#964
#963
#962
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @rohinb2 and the rest of your teammates on  Graphite

Merge activity

Jul 4, 10:25 AM EDT: @rohinb2 started a stack merge that includes this pull request via Graphite.


Bump jinja2 from 2.10 to 2.11.3

Bumps jinja2 from 2.10 to 2.11.3.

Release notes
Changelog
Commits

testdeploy


Cannot attach ephemeral volume

Hello. Try to use local-path-provisioner in ephemeral colume.
in my deployment I have
    - name: cache
      ephemeral:
        volumeClaimTemplate:
          spec:
            accessModes: [ "ReadWriteOnce" ]
            storageClassName: "local-path"
            resources:
              requests:
                storage: 3Gi

First replica shedulles on node, provisioner makes pv and pvc for it, pod mounts this pvc. everything is fine.
But second and more replicas cannot start on other nodes. In pod describe I see:
Warning  FailedMount       0s (x10 over 2m1s)  kubelet, m8c1  (combined from similar events): Unable to attach or mount volumes: unmounted volumes=[cache], unattached volumes=[cache]: failed to get Plugin from volumeSpec for volume "cache" err=no volume plugin matched

In the same time provisioner reports, that it did its work
I1006 14:31:29.287057       1 controller.go:1202] provision "nextcloud/nextcloud-d4fc8575f-58kcg-cache" class "local-path": started
time="2021-10-06T14:31:29Z" level=debug msg="config doesn't contain node m8c1, use DEFAULT_PATH_FOR_NON_LISTED_NODES instead"
time="2021-10-06T14:31:29Z" level=info msg="Creating volume pvc-c3d67218-1689-4f15-ad2a-581167928132 at m8c1:/data/local-path-provisioner/pvc-c3d67218-1689-4f15-ad2a-581167928132_nextcloud_nextcloud-d4fc8575f-58kcg-cache"
time="2021-10-06T14:31:29Z" level=info msg="create the helper pod create-pvc-c3d67218-1689-4f15-ad2a-581167928132 into kube-system"
I1006 14:31:29.318404       1 event.go:281] Event(v1.ObjectReference{Kind:"PersistentVolumeClaim", Namespace:"nextcloud", Name:"nextcloud-d4fc8575f-58kcg-cache", UID:"c3d67218-1689-4f15-ad2a-581167928132", APIVersion:"v1", ResourceVersion:"6887520742", FieldPath:""}): type: 'Normal' reason: 'Provisioning' External provisioner is provisioning volume for claim "nextcloud/nextcloud-d4fc8575f-58kcg-cache"

Also I see dir for this pv on node.
k8s ver: 1.22.2
kubelet ver: v1.19.6
But strange thing: if all replicas shedulle on same node, pvc attache to pods and pods are able to start.

in my case the second and third are scheduled correctly, but the pv is not coming from the provisioner. it is mounted to the disk on the node's disk.
See this one mounted to /dev/vda1 for /scratch which is not the one provisioner should use. THe next one is the right mount path
myuser@ubuntu:~/myapp$ microk8s kubectl exec -it my-cache-deployment-785b69c7f5-qw7l4 -- sh
/ # df -h
Filesystem                Size      Used Available Use% Mounted on
overlay                  11.6G      3.1G      8.6G  26% /
tmpfs                    64.0M         0     64.0M   0% /dev
tmpfs                   985.6M         0    985.6M   0% /sys/fs/cgroup
/dev/vda1                11.6G      3.1G      8.6G  26% /scratch

myuser@ubuntu:~/myapp$ microk8s kubectl exec -it my-cache-deployment-785b69c7f5-s2dkj -- sh
/ # df -h
Filesystem                Size      Used Available Use% Mounted on
overlay                  11.6G      3.0G      8.6G  26% /
tmpfs                    64.0M         0     64.0M   0% /dev
tmpfs                   985.6M         0    985.6M   0% /sys/fs/cgroup
/dev/md0                  9.7G     60.0K      9.2G   0% /scratch


Use highlight.js to highlight the syntax in the tutorials

See #611. This would require a bit of scripting in ./tutorials/script/mk-tutorial.py

Not sure if I understand where you wanted to use highlight.js, but we have proper highlighting in the tutorials (and all code blocks) in the website now :)


upgrades to grape 0.14.x; grape-entity 0.5.x

Thanks. Fix CI please (rubocop -a), squash commits.

sorry I have not the time at the moment to fix it, I pay more attention on a green test suite,
as one could see here grape-swagger cadetship and adding more features

please merge so that I can work on,
is it possible to cut off my fork and branch from this one, so that I can work on my fork
and make a PR to yours independent from my PRs of feature branches?
so travis don't need to run on every commit, thanks
the failed builds are rubinius, could not find a binary of it
and jruby, has problems with utf-8 chars, but this seems to be a standard java problem, not ruby

This is great, lets try to finish it.

We don't need to worry about Rubinius, replace rbx-2.2.10 with rbx-2 and add it to allow_failures.
You do need to fix the JRuby build, the problematic file is most likely just missing a UTF-8 marker on top.
Please update CHANGELOG and README.
Squash your commits.
Is this still compatible with grape-entity 0.4.x? What else is changing that needs to be in UPGRADING?

thanks for the response, I'll try to do it in the next hours …
to your questions:

yes it is compatible with grape-entity 0.4.8 and 0.5.0, it was a requirement
the README should be up-to-date, have to do some work on the CHANGELOG

a last question: can I change the version to something starting with 0.2.x, to indicate, breaking changes,
and create a tag for that (this is required from my firm, to use it)

Next version should be 0.11.0, you can update that. Don't worry about tagging, I'll cut a release once we have everything on green.

This is looking good. Should I merge this? Squash commits? Update CHANGELOG?

you can merge it, if you want :smile:
the changeling is updated and I squashed some commit, sorry not all
for the next work, I want to merge this work into my fork (there it is master),
and make a regular PR, is it ok to do so?
next work should be:

make params related stuff modular
make adding of user defined stuff available → support for something like x-foo- …, first for the paths section, later for definition section

is it ok for you?

I merged this one.
I am down with a PR into master that looks like it could actually ship. The biggest concerns for me are UPGRADING, README and CHANGELOG, where people know what they are getting.

thanks for merging
no, I don't mean into into this master,
I mean, I want work on 'my' master and make regular PRs to the this swagger-2.0 branch

It's your master :)


Fix Travis

It looks like Travis is currently using a really old pointer to SBT that is now broken which is why all of our builds are failing. This PR is intended to fix that based on discussion https://github.com/travis-ci/travis-ci/issues/9816
I'm PRing this so it will run, initially this should fail but I'll push to this as I try ways of fixing it.

The real fix appears to have been clearing the cache and deleting .ivy2 and .sbt and letting that get put into the new cache. If we merge this to master then merge master into other PRs, I think things will use the new working cache and will work

@azidar @ucbjrl @chick  ready for approval


Mbasiuk/tdi 41017 upgrade netsuite api 2018

What is the current behavior? (You can also link to an open issue here)
https://jira.talendforge.org/browse/TDI-41017
Contains old version 2014 & 2016 version
What is the new behavior?
Add support NetSuite 2018 API
Please check if the PR fulfills these requirements

[x] The commit message follows Talend standard
[x] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features) ?
[ ] The code coverage on new code >75%
[x] The new code does not introduce new technical issues (sonar / eslint)

What kind of change does this PR introduce?

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build / CI related changes
[ ] Other... Please describe:

Does this PR introduce a breaking change?

[ ] Yes
[x] No

If this PR contains a breaking change, please describe the impact and migration path for existing applications: ...


ibverb-support fails under OFED 5.5

After upgrading a machine to Ubuntu 20/OFED 5.5 I'm running into problems with the ibverb-support branch, mainly segfaults.

This could just be user error on my part.

I think everything is working now.  My problems were:

outdated version of Bifrost Verbs support -> what's in ibverb-support does work
problems with the OFED installation -> there were some old /etc/modprobe.d config. files that caused mlx5_core to be loaded with the wrong options
changes to the permissions model of OFED -> the Verbs support that we use now requires the CAP_NET_RAW capability to work.

For this last point I ended up going to the spead2 documentation for help:

https://spead2.readthedocs.io/en/latest/py-ibverbs.html
https://spead2.readthedocs.io/en/latest/tools.html#spead2-net-raw

We should try to convey this information to users of Bifrost as well.

Should be fixed with #248.


Deepface:Emotion,Age and Gender Detection Slow

`hi Serengil , I'm a big fan of your work I am facing some problems with the fps output of the code when detecting faces i will link the code below for you to check ; I know i might be utilizing the library inefficiently i wanted your help .
😍😍🥰🥰🥰
Detect_DEEPFACE.zip

""import cv2
import numpy as np
import time
import cvlib as cv
from deepface import DeepFace
from threading import Thread
open webcam
webcam = cv2.VideoCapture(0)
if not webcam.isOpened():
print("Could not open webcam")
exit()
function for face processing
def process_face(frame, startX, startY, endX, endY):
# crop the detected face region
face_crop = np.copy(frame[startY:endY, startX:endX])
if (face_crop.shape[0]) < 10 or (face_crop.shape[1]) < 10:
    return

# Extract the face region from the frame
face = frame[startY:endY, startX:endX]

# Analyze the face region for emotion and age
result = DeepFace.analyze(img_path=face, actions=['emotion', 'age','gender'], enforce_detection=False)

# Get the dominant emotion and age
emotion = result[0]["dominant_emotion"]
age = result[0]['age']
gender = result[0]['dominant_gender']

# Display emotion and age below the face box
cv2.putText(frame, f"Emotion: {emotion}", (startX, endY + 20), cv2.FONT_HERSHEY_SIMPLEX, 0.7, (0, 0, 255), 2)
cv2.putText(frame, f"Age: {age}", (startX, endY + 50), cv2.FONT_HERSHEY_SIMPLEX, 0.7, (0, 0, 255), 2)
text_width, text_height = cv2.getTextSize(gender, cv2.FONT_HERSHEY_SIMPLEX, 0.7, 2)[0]
cv2.putText(frame, f"{gender}", (startX + (endX - startX) - text_width, startY - 10),        cv2.FONT_HERSHEY_SIMPLEX, 0.7, (0, 255, 0), 2)

function for processing frames in parallel
def process_frames():
global frame_counter
frame_counter = 0
global skip_frames
skip_frames = 2
global max_processing_time
max_processing_time = 0.1  # seconds
prev_time = 0
while webcam.isOpened():
    status, frame = webcam.read()

    if not status:
        print("Could not read frame")
        break

    frame_counter += 1

    if frame_counter % skip_frames == 1:
        continue

    start_time = time.time()

    face, confidence = cv.detect_face(frame)

    for idx, f in enumerate(face):
        (startX, startY) = f[0], f[1]
        (endX, endY) = f[2], f[3]

        cv2.rectangle(frame, (startX, startY), (endX, endY), (0, 255, 0), 2)

        process_face(frame, startX, startY, endX, endY)

    # Calculate and display the FPS
    curr_time = time.time()
    fps = 1 / (curr_time - prev_time)
    prev_time = curr_time
    cv2.putText(frame, f"FPS: {int(fps)}", (10, 30), cv2.FONT_HERSHEY_TRIPLEX, 0.7, (0, 255, 0), 2)

    cv2.imshow("gender detection", frame)
    end_time = time.time()
    processing_time = end_time - start_time

    if processing_time > max_processing_time:
        skip_frames += 1
    else:
        skip_frlames = max(1, skip_frames - 1)

    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

webcam.release()
cv2.destroyAllWindows()

run the processing loop in a separate thread
t = Thread(target=process_frames)
t.start()
t.join()
""

import numpy as np
import time
import cvlib as cv
from deepface import DeepFace
from threading import Thread

# open webcam
webcam = cv2.VideoCapture(0)

if not webcam.isOpened():
    print("Could not open webcam")
    exit()

# function for face processing
def process_face(frame, startX, startY, endX, endY):
    # crop the detected face region
    face_crop = np.copy(frame[startY:endY, startX:endX])

    if (face_crop.shape[0]) < 10 or (face_crop.shape[1]) < 10:
        return

    # Extract the face region from the frame
    face = frame[startY:endY, startX:endX]

    # Analyze the face region for emotion and age
    result = DeepFace.analyze(img_path=face, actions=['emotion', 'age','gender'], enforce_detection=False)

    # Get the dominant emotion and age
    emotion = result[0]["dominant_emotion"]
    age = result[0]['age']
    gender = result[0]['dominant_gender']

    # Display emotion and age below the face box
    cv2.putText(frame, f"Emotion: {emotion}", (startX, endY + 20), cv2.FONT_HERSHEY_SIMPLEX, 0.7, (0, 0, 255), 2)
    cv2.putText(frame, f"Age: {age}", (startX, endY + 50), cv2.FONT_HERSHEY_SIMPLEX, 0.7, (0, 0, 255), 2)
    text_width, text_height = cv2.getTextSize(gender, cv2.FONT_HERSHEY_SIMPLEX, 0.7, 2)[0]
    cv2.putText(frame, f"{gender}", (startX + (endX - startX) - text_width, startY - 10),        cv2.FONT_HERSHEY_SIMPLEX, 0.7, (0, 255, 0), 2)

# function for processing frames in parallel
def process_frames():
    global frame_counter
    frame_counter = 0
    global skip_frames
    skip_frames = 2
    global max_processing_time
    max_processing_time = 0.1  # seconds
    prev_time = 0

    while webcam.isOpened():
        status, frame = webcam.read()

        if not status:
            print("Could not read frame")
            break

        frame_counter += 1

        if frame_counter % skip_frames == 1:
            continue

        start_time = time.time()

        face, confidence = cv.detect_face(frame)

        for idx, f in enumerate(face):
            (startX, startY) = f[0], f[1]
            (endX, endY) = f[2], f[3]

            cv2.rectangle(frame, (startX, startY), (endX, endY), (0, 255, 0), 2)

            process_face(frame, startX, startY, endX, endY)

        # Calculate and display the FPS
        curr_time = time.time()
        fps = 1 / (curr_time - prev_time)
        prev_time = curr_time
        cv2.putText(frame, f"FPS: {int(fps)}", (10, 30), cv2.FONT_HERSHEY_TRIPLEX, 0.7, (0, 255, 0), 2)

        cv2.imshow("gender detection", frame)
        end_time = time.time()
        processing_time = end_time - start_time

        if processing_time > max_processing_time:
            skip_frames += 1
        else:
            skip_frlames = max(1, skip_frames - 1)

        if cv2.waitKey(1) & 0xFF == ord('q'):
            break

    webcam.release()
    cv2.destroyAllWindows()

# run the processing loop in a separate thread
t = Thread(target=process_frames)
t.start()
t.join()

These are very complex models and it is normal being slow.

I'm still new to all of this it might mean I'm coding the process wring that's why i wanted your insight .I'm sorry for wasting your time.

i meant isnt there a way to  make these models faster ?

no, unless you invest a powerful and expensive gpus


I think it would be best if deno.land provided the version information
The second option is to build a proxy server to deploy to heroku or now

The free plan of the third-party service (eg heroku/now) also has a limited number of requests
When the number of users is large, it is easy to exceed the limit

I think it can be closed since #15 land


hide member list for confidential projects

project managers still need to see the list

Has this been fixed by #975? Or does it still need to be open?

no they're unrelated. That PR was so that non members can't see members for public projects. This is for confidential projects to hide the members list, even for members.


Are you planning to develop further?

It is great that you have implemented these phonetic algorithms and even better that you have done so in Rust with Python bindings. Are you intending to develop this further and in particular add tests?

Planning on adding tests. As far as features go, having the baseline encoders get's it pretty "feature complete". There are opportunities for improved batch processing and a few other algos as well.

Thanks, that's great. I look forward to these developments.


Tuning microtonal notes

Is it possible to do a microtonal tuning on a single midi-note of a specific track? And if so how?

I've been looking into micro-tonal and midi.
From what I can make out in the midi specs, it's not supported in any real way.
Using the pitch-wheel you can adjust the tuning - very finely - but that effects the whole channel, not just a single note. Midi spec suggests the range is  ±2 semitones, though devices and software can vary upto  ±12 semitones in some cases.
Depending on your requirements though, you could try setting up a specific channel that just plays that single micro-tonal note using pitch-wheel?
Just off the top of my head.


Status bar usage

The status bar is currently barely used.
This issue has been opened to prompt a discussion on how it should be used. Immediately 2 uses come to mind:
a. Status of executing burns - Job x of y, Progress x%, Time xx:xx remaining of yy:yy - USB error messages etc.
b. Description of last user action - e.g. Selected x paths which are in y operations, Raster (Gravy) with step 3 executed on "label" etc.
If the GUI window is too small to show both simultaneously, switch back and forth every 5 secs.

I did some work towards a. I made the spooler not pre-eat the item it's working on. So the first item will be in the spooler while it's being worked on. I also added a spooler channel that will say when spooled items get pulled which might help towards the timing of such things in progress. I'm not sure how to get the rest of A finished. I'm sure it needs some additional hooks.
B sounds really hard.

B. is a nice to have - got the idea from Inkscape.

Everything would need to send a signal if it did some functional change. And while something like that exists notifying things if they were modified, it would have to describe the change. This would also be useful for a proper undo-redo stack. Since it would inform the user when a functional change was made and another restore point would be needed. This would still be somewhat difficult. I think the best method of doing this is to store soft-references to basically all the states and give them names.
There's other methods of using the status bar, I think signals update them but it's rarely done. And might not have survived the devices update since they would all have origins now or whatnot.


[Next.js] Handle width/height from field prop in NextImage component

Is your feature request related to a problem? Please describe.

We started using the NextImage component and noticed a bunch of issues related to squashed/distorted images. After looking into it a bit further I noticed that the NextImage component does not pick up width and height values from the Sitecore field.
Given the following field data:
const field = {
  value: {
    src: '...url...',
    alt: 'alt text',
    width: '200',
    height: '100',
  },
}

The current Image component can be used like <image field={field} /> and it renders <img src=... width=200 height=100 />
The NextImage component does not use width/height values from the field and instead a user has to define them again themselves which seems like a step backwards, especially when using layout=fixed?
<NextImage field={field} width={field.value.width} height={field.value.height}
Was this by design, if yes, what would be the reasoning?
Describe the solution you'd like

Respect width/height of the Sitecore image field data.
Describe alternatives you've considered

Explicitly define width/height or specifically call it out in the documentation that it's not actually using the Sitecore field values.
Additional information

Having said that, the layout prop will completely disappear in Next@13, so the entire behaviour will change again. However, it seems that the width and height prop are required for the majority of use-cases:

width
The width property represents the rendered width in pixels, so it will affect how large the image appears.
Required, except for statically imported images or images with the fill property.
height
The height property represents the rendered height in pixels, so it will affect how large the image appears.
Required, except for statically imported images or images with the fill property.

Looks like it is handled within https://github.com/Sitecore/jss/blob/dev/packages/sitecore-jss-nextjs/src/components/NextImage.tsx#L61-L63 and something with our implementation is wrong. Will close for now.

Looks like it is handled within https://github.com/Sitecore/jss/blob/dev/packages/sitecore-jss-nextjs/src/components/NextImage.tsx#L61-L63 and something with our implementation is wrong. Will close for now.


Bug: Python UDF returns wrong result

Kùzu version
master
What operating system are you using?
macOS Sonoma 14.5
What happened?
I'm testing the Python UDF API on master, and there's a problem with unsigned integers.
import shutil
import sys
sys.path.append("/Users/prrao/code/kuzu/tools/python_api/build")

import kuzu

shutil.rmtree("test_db", ignore_errors=True)
db = kuzu.Database("test_db")
conn = kuzu.Connection(db)

# define your function
def difference(a, b):
    return abs(a - b)

# define the expected type of your parameters
parameters = [kuzu.Type.INT64, kuzu.Type.INT64]

# define expected type of the returned value
return_type = kuzu.Type.INT64

# register the UDF
conn.create_function("difference", difference, parameters, return_type)

# create a table
conn.execute("CREATE NODE TABLE IF NOT EXISTS Item (id INT64, a INT64, b INT64, c INT64, PRIMARY KEY(id))")

# insert some data
conn.execute("CREATE (i:Item {id: 1}) SET i.a = 134, i.b = 123")
conn.execute("CREATE (i:Item {id: 2}) SET i.a = 44, i.b = 29")
conn.execute("CREATE (i:Item {id: 3}) SET i.a = 32, i.b = 68")

# run the UDF
conn.execute("MATCH (i:Item) SET i.c = difference(i.a, i.b)")

# print the difference result
result = conn.execute("MATCH (i:Item) RETURN i.id, i.a, i.b, i.c")

while result.has_next():
    record = result.get_next()[3]
    print(record)

This returns the third result as a positive integer, 36, but the actual result should be -36 (negative integer) because we specified a signed integer, INT64 as the return type in the UDF.
Incorrect result:
11
15
36

Expected result:
11
15
-36

Are there known steps to reproduce?
See above.

Argh. I just noticed that we called the function abs, meaning absolute value. Closing this.


Auto import changed to dynamic import in JS ES6+

VSCode Version: 1.28.1
OS Version: macOS Mojave

When I try to let vscode auto-import a js module, it imports the module in dynamic import syntax.
For example Query from the react-apollo module.
Before:
import { Query } from 'react-apollo
Now:
import('react-apollo').Query
Steps to Reproduce:

Open a .js file
Let vscode auto-import a js module

Does this issue occur when all extensions are disabled?: Yes

This issue is getting on my nerve! Is there a way to disabled it in the setting?

Confirmed as occurring in Windows 1.28.1 and agree with @tiaaaa123 This is horrible behavior and needs some method to tell VSCode to use ES6 imports again.

Is there any temporary solution while it's being fixed? I have to import everything manually now. Very frustrating

I have the same problem here, after the last update (versions 1.28 and 1.28.1) it stopped working
I tried using some extensions to do the job, but it conflicts with vscode import
I am using the OS Ubuntu 16.04

Also have this problem.
VSCode 1.28.0
I use auto-imports constantly so this is a real workflow breaker.

Duplicate of #60216
Already fixed in insiders and we're looking into backporting a fix to a 1.28.2


ProxyUtils.certKeyPairToPEM is returning null instead of exception

Also, it is better to use d2i_autoPrivateKey that detects both RSA and RSA-in-PKCS8 formats.

core/pull-requests/377


pkg/test: get rid of FakeIndex

We're using FakeIndex in tests as an alternative implementation of index.Interface.
But in practice, we only ever have/use one implementation of index.Interface; namely index.Index, so I don't think it makes the code better anywhere to pass/use an index.Interface instead of an index.Index.
Also, the index.Index interface has gotten pretty large and gross, so I don't think it's a good thing that we're tied to it.
Finally, it's not really simpler and nicer to use a FakeIndex instead of e.g. index.NewMemoryIndex() in tests, especially in tests out of the index pkg. On the contrary.
So I think it would be a win to completely get rid of FakeIndex. And maybe that would help us then in cleaning up the index.Interface, or get away from it.

CC @tajtiattila

SGTM

https://camlistore-review.googlesource.com/c/camlistore/+/11866


Civvy adngel

Prisioner updated
Please, use the slot ID_CIVVY instead of ID_CIVVIE (Wad Tool put in civvie by default, but code uses the CIVVY slot) Once all were in order, I'll ask to removed the unused CIVVIE slot for duplicity).

Added a new var: validTarget
line 257: validTarget = (creature.Enemy != nullptr && creature.Enemy->HitPoints > 0) ? true : false;
These two conditions were being repeated in many places around the code, so I hope with this local var can make it a bit easier to read.

Added a new var: validTarget
line 257: validTarget = (creature.Enemy != nullptr && creature.Enemy->HitPoints > 0) ? true : false;
These two conditions were being repeated in many places around the code, so I hope with this local var can make it a bit easier to read.

about true : false, it do that already if you let creature.Enemy != nullptr && creature.Enemy->HitPoints > 0 by default :)

about true : false, it do that already if you let creature.Enemy != nullptr && creature.Enemy->HitPoints > 0 by default :)

Correct, I think I fall on a blind habbit. I'll change to make it easier reading.

Mental note for my future self:
Note the changes to the change.txt before merge.
In change.txt, check for the lua IsAirborne function description which looks like to have a mistake.