UI does not find s3 credentials for backup

Describe the bug
Adding s3 backup target and the secret, still give an error message in the backup tab in the UI
To Reproduce

Install k3s on a single node, with longhorn
Create a secret as follows:

apiVersion: v1
kind: Secret
metadata:
  name: longhorn-b2
  namespace: longhorn-system
type: Opaque
data:
  AWS_ACCESS_KEY_ID: <redacted>
  AWS_SECRET_ACCESS_KEY: <redacted>
  AWS_ENDPOINTS: <redacted>
---

Go to UI and set backup target as s3://xyz@us-east-005/ and set secret as longhorn-b2, click Save
Error in the UI page

failed to get default backup target client on longhornio/longhorn-engine:v1.6.0: could not access s3 without credential secret

Expected behavior
The UI should not show any errors
Support bundle for troubleshooting
Bundle is too big - 180 MB in size
Environment

Longhorn version:
Installation method (e.g. Rancher Catalog App/Helm/Kubectl): kubectl
Kubernetes distro (e.g. RKE/K3s/EKS/OpenShift) and version: k3s

Number of control plane nodes in the cluster: 1
Number of worker nodes in the cluster: 1

Node config

OS type and version: Ubuntu 22.04 server/x86
Kernel version:
CPU per node:
Memory per node:
Disk type (e.g. SSD/NVMe/HDD): SSD
Network bandwidth between the nodes (Gbps):

Underlying Infrastructure (e.g. on AWS/GCE, EKS/GKE, VMWare/KVM, Baremetal):
Number of Longhorn volumes in the cluster: 13

Additional context

Hi @aagrxyz,
Any abnormal logs in the longhorn-manager-xxxx pods about the backup target?
The access permission of the bucket may not be right.
Could you send the support bundle to the mail<EMAIL_ADDRESS>

Ref: https://longhorn.io/docs/1.6.1/snapshots-and-backups/backup-and-restore/set-backup-target/#set-up-aws-s3-backupstore

I am using bacblaze and their S3 compatible API - https://www.backblaze.com/apidocs/introduction-to-the-s3-compatible-api
Here are some logs from the longhorn-manager-xxxx pods:
time="2024-04-29T01:32:56Z" level=info msg="Updated setting backup-target-credential-secret to longhorn-b2" func="manager.(*VolumeManager).CreateOrUpdateSetting" file="setting.go:55"
<IP_ADDRESS> - - [29/Apr/2024:01:32:56 +0000] "PUT /v1/settings/backup-target-credential-secret HTTP/1.1" 200 457 "https://longhorn.in.aagr.xyz/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36"
time="2024-04-29T01:38:27Z" level=error msg="Failed to list backup volumes from backup target" func="controller.(*BackupTargetController).syncBackupVolume" file="backup_target_controller.go:436" controller=longhorn-backup-target cred=longhorn-b2 error="error listing backup volume names: failed to execute: /var/lib/longhorn/engine-binaries/longhornio-longhorn-engine-v1.6.0/longhorn [/var/lib/longhorn/engine-binaries/longhornio-longhorn-engine-v1.6.0/longhorn backup ls --volume-only s3://aagr-longhorn@us-east-005/], output failed to list objects with param: {\n  Bucket: \"aagr-longhorn\",\n  Delimiter: \"/\",\n  Prefix: \"/\"\n} error: AWS Error:  NotFound Not Found <nil>\n404 \n\n, stderr time=\"2024-04-29T01:38:27Z\" level=error msg=\"Failed to list s3\" func=\"s3.(*BackupStoreDriver).List\" file=\"s3.go:128\" error=\"failed to list objects with param: {\\n  Bucket: \\\"aagr-longhorn\\\",\\n  Delimiter: \\\"/\\\",\\n  Prefix: \\\"/\\\"\\n} error: AWS Error:  NotFound Not Found <nil>\\n404 \\n\" pkg=s3\ntime=\"2024-04-29T01:38:27Z\" level=error msg=\"failed to list objects with param: {\\n  Bucket: \\\"aagr-longhorn\\\",\\n  Delimiter: \\\"/\\\",\\n  Prefix: \\\"/\\\"\\n} error: AWS Error:  NotFound Not Found <nil>\\n404 \\n\" func=main.ResponseLogAndError file=\"main.go:47\"\n: exit status 1" interval=5m0s node=n100 url="s3://aagr-longhorn@us-east-005/"
time="2024-04-29T01:38:28Z" level=error msg="Failed to list backup backing images from backup target" func="controller.(*BackupTargetController).syncBackupBackingImage" file="backup_target_controller.go:507" controller=longhorn-backup-target cred=longhorn-b2 error="failed to list backup backing image names: failed to execute: /var/lib/longhorn/engine-binaries/longhornio-longhorn-engine-v1.6.0/longhorn [/var/lib/longhorn/engine-binaries/longhornio-longhorn-engine-v1.6.0/longhorn backup ls-backing-image s3://aagr-longhorn@us-east-005/], output failed to list objects with param: {\n  Bucket: \"aagr-longhorn\",\n  Delimiter: \"/\",\n  Prefix: \"/\"\n} error: AWS Error:  NotFound Not Found <nil>\n404 \n\n, stderr time=\"2024-04-29T01:38:28Z\" level=error msg=\"Failed to list s3\" func=\"s3.(*BackupStoreDriver).List\" file=\"s3.go:128\" error=\"failed to list objects with param: {\\n  Bucket: \\\"aagr-longhorn\\\",\\n  Delimiter: \\\"/\\\",\\n  Prefix: \\\"/\\\"\\n} error: AWS Error:  NotFound Not Found <nil>\\n404 \\n\" pkg=s3\ntime=\"2024-04-29T01:38:28Z\" level=error msg=\"failed to list objects with param: {\\n  Bucket: \\\"aagr-longhorn\\\",\\n  Delimiter: \\\"/\\\",\\n  Prefix: \\\"/\\\"\\n} error: AWS Error:  NotFound Not Found <nil>\\n404 \\n\" func=main.ResponseLogAndError file=\"main.go:47\"\n: exit status 1" interval=5m0s node=n100 url="s3://aagr-longhorn@us-east-005/"
E0429 01:38:28.616156       1 backup_target_controller.go:201] longhorn-backup-target: failed to sync longhorn-system/default: failed to list system backups in s3://aagr-longhorn@us-east-005/: error listing system backup in s3://aagr-longhorn@us-east-005/: failed to execute: /var/lib/longhorn/engine-binaries/longhornio-longhorn-engine-v1.6.0/longhorn [/var/lib/longhorn/engine-binaries/longhornio-longhorn-engine-v1.6.0/longhorn system-backup list s3://aagr-longhorn@us-east-005/], output , stderr time="2024-04-29T01:38:28Z" level=error msg="Failed to list s3" func="s3.(*BackupStoreDriver).List" file="s3.go:128" error="failed to list objects with param: {\n  Bucket: \"aagr-longhorn\",\n  Delimiter: \"/\",\n  Prefix: \"/\"\n} error: AWS Error:  NotFound Not Found <nil>\n404 \n" pkg=s3
time="2024-04-29T01:38:28Z" level=fatal msg="Failed to run list system backup command" func=cmd.SystemBackupCmd.SystemBackupListCmd.func4 file="system_backup.go:72" error="failed to list objects with param: {\n  Bucket: \"aagr-longhorn\",\n  Delimiter: \"/\",\n  Prefix: \"/\"\n} error: AWS Error:  NotFound Not Found <nil>\n404 \n"
: exit status 1

To set up permissions, I have created a application key in backblaze

Ah, I think I found the issue:
The AWS_ENDPOINTS is s3.us-east-005.backblazeb2.com and the target is s3://<bucket_name>@us-east-005/
That fixed the issue.
Can we make the error message in the UI surface the 404 issue?


node.js support, via npm package 'xmlhttprequest'

Fixes #29. This passes all the tests in my other PR, but currently you have to set up an http server on port 80 to proxy to the test server to get them to work.

Also if you merge #31 first, then I can rebase this and set Travis up to run the tests on node.js. :)

Please do!

Actually I'll sort out #30 first.

I couldn't get it to run in Gulp, so I tried it inside the travis script, but that doesn't appear to work either (if you look at the travis log, it looks like it's only running the first test). Issuing the same commands as those that are in the travis script does work locally though. I've no idea what's wrong or how to fix it :(

Can you rebase this please? I've broken one of your PRs once again somehow :wink:

Thanks!

It's great that the tests can be run by Travis now too, thanks very much. :fireworks:


Replaced obsolete import of DelayUs with new DelayNs

Updated imports of DelayUs to DelayNs as required by current version of embedded-hal. No subsequent changes required.

I published a v0.0.3 with your modifications.

Great, thanks!
I was planning to write a driver for a BMA425 accelerometer sensor. But these two sensors are almost identical. I don’t think it makes sense to have two separate code bases for them. What do you think of extending your driver to work for both devices?
I’d be up to implement the required changes, test them on my device and create another pull request.
If you’re interested, I can create an issue to discuss this further?


[wip] Show styled components within the docs

What does it do?

I'd like a way to render a component wrapped in a preview layout (as a way to load a stylesheet for that component) within the documentation. Ideally this would be as an iframe, in the same way as how components are displayed elsewhere.
As a kludge, here I'm using {% render '@button' %} to include the component markup - but this documentation file doesn't include the application stylesheet.
I've included this at the top of the markdown file. The isn't what we want as the the styles for the app then override the Fractal theme styling, using an iframe would ensure the component styles are isolated from the theme styles.
Has anyone else run into this? I'm sure I'm missing something obvious.
Screenshots (if appropriate):

I looked at an iframe solution myself (like @dsingleton's) but the issues around the height bothered me. I've decided that a bespoke theme of fractal that takes the best of 'Mandelbrot' but prevents the 'cascade' in key areas such as what is currently the 'Prose' section, is probably going to be a better solution.
Nicely fractal allows Subclassing of it's WebUI themes, so I've began doing that to prove my idea will work.
As @allmarkedup is due to do a bunch of work in the new year, I'm not sure how much 'Mandelbrot' will change and so a PR to that might not be as helpful long term?

Here's a quick branch i did using an embedded iframe: https://github.com/alphagov/govuk_frontend_alpha/compare/add-elements-docs...preview-in-docs
@paulmsmith I share the concern about frame height, it's something that i've had to deal with before, but usually not in a satisfactory way :/
Even with some refactoring of the fractal theme, i'm not sure we could get the kind of isolation we want without an iframe. My experience has been there's always something that will leak through and alter either the component, or the host documentation page (this came up a lot on the GOV.UK Publishing Components styleguide).
Short of Shadow DOM having better support i'm not sure there's another way to totally isolate a component and styles.
I'd definitely be interested in what @allmarkedup thinks? As this feels like a pretty general purpose feature, however it's implemented.

Hey all... so in my experience trying to completely isolate a component without using an iframe is pretty difficult, and trying to do so typically ends up in some crossing of the streams between the 'styleguide' styles and the styles of the components themselves to work around specificity/cascade issues.
Previous (internal) iterations of Fractal actually used a layout for the components section that was more like a page with iframes embedded within it, and I was using a library called iFrameResizer to automatically resize the iframes to fit the height of the component. It mostly worked ok, but injecting JS into the component to get the page size felt pretty dirty and I was worried could cause issues with more complex components.
At one point also tried using the shadow DOM to render components with their styles and markup with a fallback to iframes for browsers that don't support it. However aside from the support being pretty poor there were all sorts of other complications that made it a bad fit for the current 'preview layout' model of specifying CSS/JS.
Obviously it's pretty straightforward and unobtrusive to add a handlebars/nunjucks helper/extension/filter to generate an iframe similar to what @dsingleton has done, perhaps with the ability to manually specify a height, although with things being responsive you'd have to make your peace with ending up with scrollbars on there sooner or later :-) This is probably the approach I'd take right now, possibly in conjunction with iFrameResizer if you didn't feel that it got in the way or caused any issues.
Finally, regarding the roadmap... both docs generation and theming/Mandelbrot will probably see some pretty big changes in future versions. I'm going to try and get some 'RFCs' up on the Fractal repo around the details of these changes once I've had a bit more time to gather my thoughts on it and would be really great to solicit your opinions on them. Of course breaking changes will only be included in major-version bumps however so you'll be safe with customising what you have right now :-)

Good points @allmarkedup & @dsingleton. I've started to try and tame inheritance but as you say, I was already making a few tradeoffs so maybe I won't waste as much effort if I just plump for an iframe solutions + resizer.

Good points @allmarkedup & @dsingleton. I've started to try and tame inheritance but as you say, I was already making a few tradeoffs so maybe I won't waste as much effort if I just plump for an iframe solutions + resizer.

It might be worth continuing with that approach, or exploring frame alternatives. An advantage of there being a few of us looking at this is we can try a couple of different things :)
For this repo, as an Alpha, we want to test basic idea of previews embedded in long form documentation and do some user research around it. Configurable height iframes allows us to do that in the short term, and we can look again for beta.
@allmarkedup RFCs sound like a perfect approach 👍

I'm closing this in favour of #105, thanks everyone!


Form replicate does not copy over validators

Repro steps

Create a form
Add a validator to one of the fields with addFormLevelValidator
replicate the form
Check replicated form: added validator was lost

Expected
A replicated form should keep validators even if they were not part of the class Form definition

This is interesting, there are two ways to add dynamic form level validators, one is defining it statically static dynamicValidators on the model when building the form and the other is dynamically adding it after the form is initialized with the addValidatorMethod because of the way reactivity is handled in React the static method does not keep track of the comparing field so addFormLevelValidator is the preferred method. Since this method does not affect the underlying class it correctly does not get copied over.
Will need to consider what would happen should we try and copy over all the validators that are added to an instance themselves.


demos/index.html fail on Linux (Mint 18.3)

After working around issue #8 by running run npm bootstrap with /bin/bash and it completing successfully, the demo site fails to display anything with the following error:

Chrome Version 66.0.3359.139 (Official Build) (64-bit)
I tried npm install @webcomponents/webcomponentsjs but that didn't help the second error.

You have to use http://<IP_ADDRESS>:8081/components/material-components-web-components/demos/index.html for now

Should be fixed as of @8310a76180c8a74b5d88272c7de070e3dadaf74d

unfortunately still doesn't work. Looks like this needs to mature a bit before I take another look. Good luck guys!


modernize corners & borders in animation demo

Remove rounded corners in the header section cards; they don't go well with the non-rounded main section. Remove layout padding that created dark borders around the header and between the cards; they caused a difference in width between the header and the content, and the extra borders are not necessary because of the different in background colors between the header and the content section.
Before:

After:

Final:

cc @HansMuller

LGTM


About NeuRAD-L

Hi, I am very interested in the great work.
However, I have some questions about the part of the neural render. I claim the reconstruction quality can be improved by a larger configuration (NeuRAD-L). I‘d like to understand what changes have been made for the larger configuration?
Could you provide some information about this?
Thanks in advance.

You can now find more details in the latest arxiv version :)
https://arxiv.org/abs/2311.15260


Issue 7 of the newsletter

This is a call to everyone out there who works in open bioinformatics - please share interesting stuff! This could be a new project launch, an interesting update or release, a link to useful resources (e.g. some nice biology related icons or an open source tool that could be useful, etc. If you aren't sure about something, feel free to drop me a line personally to discuss it, e.g. via twitter (yoyehudi) or email (yochannah@gmail.com).
Promoting yourself or your workplace is totally okay here - this is literally what the newsletter is for, within reason!
The next newsletter will probably be late 2020 or early 2021.

This newsletter is on it's way to be sent out. For suggestions for the next round see issue #15


Add unit tests to pt branch

We already have integration tests but e.g. if one part fails we do not know which making debugging and decoupling harder. To also improve stability and later maintenance we'll add unit tests to the new parts in pt

This comes later when we have a real "unit" (PTNetworkBuilder or something) on the pt side


⚠ Bofrost.de has degraded performance

In 2e15e4f, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1151 ms

Resolved: Bofrost.de performance has improved in 3e82b2c after 15 minutes.


Channel/rubocop 1 48 1

This won't work: channel/beta has fixes that 1.39 didn't have. It's better to base channel/rubocop-1-48-1 off of channel/beta after #350 is merged.


Add an option to limit retries while waiting for scheduled streams

IMPORTANT: PRs without the template will be CLOSED
Description of your pull request and other information

This pull request partially addresses issue #6663 by adding an option to limit the maximum number of attempts with --wait-for-video.
The default is infinite, which preserves current behavior. Perhaps a sensible, finite upper limit should be chosen?
The first attempt isn't considered a "retry", i.e. --wait-retries 0 will wait once. This seems consistent with the behavior of RetryManager used by extractors.
Setting this option should work correctly when dealing with several use cases:

The stream is scheduled too far into the future - can be worked around by setting a reasonable maximum wait time.
The stream schedule is pushed back - one retry gets "consumed" every time we try to retrieve the stream and find it was rescheduled.
The stream is late - this will work as long as --wait-retries multiplied by --wait-for-video is less than the actual delay. So with --wait-for-video 15 --wait-retries 20, the download will fail if the streamer is more than 5 minutes late.
The scheduled stream never started and was made private (which I've seen actually happen on YouTube) - we will eventually run out of retries and give up. Currently, in this situation yt-dlp will just loop forever, taking up resources in the background.

Exceeding the max number of retries will print  a stack trace, since I'm throwing UserNotLive from _handle_extraction_exceptions. I'm not sure what the convention is here, because e.g. KeyboardInterrupt seems to get caught sometimes before reaching the user.
Template

Before submitting a pull request make sure you have:

[x] At least skimmed through contributing guidelines including yt-dlp coding conventions
[x] Searched the bugtracker for similar pull requests

In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check all of the following options that apply:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[ ] Fix or improvement to an extractor (Make sure to add/update tests)
[ ] New extractor (Piracy websites will not be accepted)
[x] Core bug fix/improvement
[ ] New feature (It is strongly recommended to open an issue first)

@simvesel Any core change needs thorough review by multiple maintainers and thorough testing. I have not had the time to do either yet, as I have been backlogged by issues, PRs, youtube breakages, etc. I will get to it as soon as I can

Instead of new option, we could do --wait-for-video MIN[-MAX][:LIMIT]

I've also made a different, perhaps cleaner version, using an exception instead of the extra_info argument to keep state: https://github.com/yt-dlp/yt-dlp/compare/master...Strkmn:yt-dlp:wait-retries-exception

I've also made a different, perhaps cleaner version, using an exception instead of the extra_info argument to keep state: master...Strkmn:yt-dlp:wait-retries-exception

I like both approaches. @bashonly @Grub4K any opinions?

Instead of new option, we could do --wait-for-video MIN[-MAX][:LIMIT]

btw, what about this?

Instead of new option, we could do --wait-for-video MIN[-MAX][:LIMIT]

btw, what about this?

Sure, I can do that. I just wanted to confirm the implementation before I start fiddling with option parsing.

Raising ReExtractInfoLater makes the code easier to understand from my perspective, just the inner workings of the _wait_ functions are (and were) harder to reason with. The logging behavior will probably have to be investigated, but the general aproach is cleaner imo


Error when trying to connect to server

Minecraft: 1.21
Fabric: 0.16.9
Fabric API: 0.102.0+1.21
Mod: 2.0.8
Error:
Internal Exception: io.netty.handler.codec.EncoderException: Failed to encode packet 'clientbound/minecraft:custom_payload' (additionalplacements:check_data_client)
Normally I'd guess this is a version mismatch between the client and host but it's my server and I copied the mods folder from my server to the client PC I'm using to test it so I know it's not that.
My guess would be it's some dependency within the Fabric API but as far as I know 0.102.0 is the last Fabric API release for 1.21-
I also have Packet Fixer installed but as I understand it the only thing it really does is increase the byte limit of some state update packets, NBT tag packets, and chunk data payload packets so I don't think it would interfere with this.

If the game crashes, post the crashlog. If it does not, post the game output log. Just posting the error message provides no useful information for me.

latest-client.log
latest-server.log

Fixed in:
1.18.2: 019db4e
1.19.2: 6d4abdd
1.20.1: 13739df
1.20.2: b5e40f9
1.20.4: c068f8a
1.21: 67c9035
1.21.3: 5b31ca8


Add tags to resources card

It would be nice to see the tags for each resource card, so you understand which topic they belong to.
When clicking on the tag at the top or card section, just the related cards will be shown.

[ ] Display related tags for each card
[ ] Display all tags that are used at the top of the Resources Page
[ ] The All tag is preselected, showing all cards
[ ] Clicking on a tag (on a card or at the top), all related cards with that tag will be shown

I'm able to work on that feature!

@Gw3i
This idea is fantastic, that's where we want to go! Could you take the lead or create more requirements or implement them?

@clebsonf Yes, for sure. I'll write down the requirements 👍 I would like to write a part of the code along with others who want to 😊 Could you add the #hacktoberfest label? Thanks in advance!

Hey @jrafaaael,
do you want to implement the whole feature or split it, so we are not coding the same at once? 😄

@Gw3i I can work on the first two requirements listed and you in the next two. Do you agree?

@jrafaaael Sounds good 👍

@Gw3i I'll send you an invite as a maintaining member, what do you think?

@clebsonf Sounds good 👍

@clebsonf Sounds good 👍

I sent the invite, could you check and accept it?


Font is unreadable

Describe the bug
New installation, cloned from github today. New Ubuntu Server 20.04.1 LTS install, new nodejs v15.1.0 install.  Wetty accepts connection to server:3000/wetty/ssh/roger and prints login prompt for password. However, the font used is unreadable (see screenshot)
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

OS: Windows 10
Browser: Firefox
Version  82.0.2 (64-bit)

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

Looks like this is due to denying "Extract Canvas Data". Once allowed, the fonts render properly.


Safetensor support

Currently only numpy file format is supported, was wondering if safetensor support was of interest.

I think it could be nice to support this format. The saving/loading code would need to be part of mx.core and work with the C++ API.

It's nice that it supports bf16 as numpy doesn't so we could save and load bf16 through that.
It seems like a lot of HF models are moving to this format, so it would be convenient to not need to convert to numpy format to get into MLX.

Agreed, its very straightforward as well. Will start working on this, will probably break down the feature into two prs between loading/saving.

Hi there :wave: please let us know if there are any questions regarding safetensors and we're happy to lend a hand :hugs:

Hey @osanseviero, thanks for reaching out and offering support!
I was wondering what the use cases for __metadata__ object are. I see that there is a format property in some example files I downloaded from hf. Should we populate this field as well with something like "mlx" and are there any other fields that should be included?

__metadata__ is purely informational str:str mapping. It's meant as adding information to the file if needed.
It does contain format: "pt"/"tf"/"flax" in transformers since we load all models from a single format and TF/PT do the convolution order different and same for a few ops.
This format key helps transformers keep track of what layout was the model saved in, and resolve the correct model in during load. To be perfectly honest, there's an overwhelming majority of PT layout models, so you can safely assume so when loading models.
I've seen other platforms also use __metadata__ to add some kind of checksum for the weights themselves.
The convert tool also keeps track of duplicate tensors which are destroyed during save (As they are redundant).
Happy to help !
Also if you're interested we have written some C bindings which could help a tiny bit manipulation (also it will avoid making you pull a JSON library). https://github.com/huggingface/safetensors/pull/259

@Narsil could you say a bit more about the safe_load function and if it does anything noteworthy?
Right now our API is looking like:
mx.save_safetensors(file, dict_of_arrays) # may change to **dict_of_arrays
dict_of_arrays = mx.load(file)

Also if you're interested we have written some C bindings which could help a tiny bit manipulation (also it will avoid making you pull a JSON library). huggingface/safetensors#259

Just so I understand this comment, is the suggestion that we use your bindings? Could you say what do you do for JSON under the hood? We're trying to keep third-party deps in MLX C++ extremely light-weight (header only) so maybe that would be tricky, not sure.

@Narsil could you say a bit more about the safe_load function and if it does anything noteworthy?
Right now our API is looking like:
mx.save_safetensors(file, dict_of_arrays) # may change to **dict_of_arrays
dict_of_arrays = mx.load(file)

Safe_open is useful over loading all the tensors because you can do lazy loading.
https://huggingface.co/docs/safetensors/index
For instance we use it to do faster loading when doing tensor parallel inference (you can load only the slices required on each shard)

Also if you're interested we have written some C bindings which could help a tiny bit manipulation (also it will avoid making you pull a JSON library). huggingface/safetensors#259

Just so I understand this comment, is the suggestion that we use your bindings? Could you say what do you do for JSON under the hood? We're trying to keep third-party deps in MLX C++ extremely light-weight (header only) so maybe that would be tricky, not sure.

Oh fair enough. Then using you own code is really easy. Safetensors only requires json basically.


[incubator/cassandra] Fixes cassandra backup pod affinity syntax and cain container name

Signed-off-by: Toni Röyhy<EMAIL_ADDRESS>
What this PR does / why we need it:
Enabling backup in cassandra chart failed as cronjob template was not valid ( at least not for Kubernetes v1.15.5)
Error: UPGRADE FAILED: error validating "": error validating data: ValidationError(CronJob.spec.jobTemplate.spec.template): unknown field "affinity" in io.k8s.api.core.v1.PodTemplateSpec

Cain backup defaulted to cassandra as target container name and failed because real name of container is {{ template "cassandra.fullname" $ }}
Special notes for your reviewer:
My first contribution, sorry if this PR is not  100%  as instructed.
Checklist

[x] DCO signed
[x] Chart Version bumped
[x] Title of the PR starts with chart name (e.g. [stable/mychartname])

/assign @maorfr

duplicate of #20941


[Docs] Improve t.navigateTo(url) description, note caveats

Are you requesting a feature or reporting a bug?
It's clarification to the docs.
What is the current behavior?
All actions with targets like t.click(selector) waits for selector, but it can confuse t.navigateTo(url) usage. Referring to this post there are some cases when t.navigateTo(url) can fail, e.g. in cases like JS code do ajax request after delay and/or then document.location.href = newUrl and server response is slow, etc.
What is the expected behavior?
It should be noted there  that t.navigateTo(url) will wait for URL change only in simple cases by some algorithm (wait for immediately XHR, etc). Intuitively seems like "huh, I've read that actions will wait for ... let's do navigate and I think it will wait for URL change somehow anyway". It can lead to very flaky bugs.
Specify your

testcafe version: 0.18.4

Hi @DmitryFillo,
TestCafe should always wait for the page reloading after t.navigateTo() is called (at least we didn't meet a case when it doesn't work). Did you meet the case when it works wrong?
In the ticket that you mentioned before I wrote about a case when some side effects (like xhr-requests or page reload) are performed after some timeout after the click action.

Hi @AlexanderMoskovkin,
I created repo with examples https://github.com/DmitryFillo/testcafe-navigateto-works-wrong.
In my case server was very slow sometimes, so t.navigateTo() fails. I think it's OK behaviour, but it's not clear from docs.
Also I've found another case while preparing example: TestCafe fails if server responds with string only, not HTML:

Test fails if server returns only string
ERROR The HeadlessChrome 0.0.0 / Windows 10 0.0.0 browser disconnected. This problem may appear when a browser hangs or is closed, or due to network issues.

Hi @DmitryFillo,
Thanks for you example. TestCafe wait for 15 seconds for a server response after redirect. If it doesn't get response for this time it resumes the test. We did it to avoid unexpected test hangs. As a workaround you can add an assertion after each redirect with a long timeout. It will check the new page is loaded (by document.location or some elements on the page). Meanwhile we'll figure out how we can note this in our docs.

Also I've found another case while preparing example: TestCafe fails if server responds with string only, not HTML:

@miherlosev @LavrovArtem please take a look at this

Thanks. Suggested workaround is OK, currently I do both assertion for location and delay.


Node text does not escape html

When using inline HTML to populate the tree, if the nodes contain HTML entities, the node text will contain those entities even though they aren't rendered. I need to include HTML entities to be outputting valid HTML.
Test case:

Test & node

In my testing I also switched to JSON loading, not to test the html encoding issue (because that doesn't apply to JSON) but to see if it breaks there when an embedded SCRIPT tag. These are still rendered as-is. This is a potential XSS issue for AJAX users:
$('#jstree').jstree({
    core: { data: [
        // this will cause an alert when the node is rendered
        'Test  node'
    ] }
});

I'd imagine you would need to decode entities while loading HTML (the JSON and AJAX loading can remain as-is), with another step being the encoding of entities at node render time.

I had this same problem (I wanted users to be able to input/edit nodes with HTML entities). This fix works great. Many thanks.

Summary: To let jsTree escape node "text" data automatically, set the configuration option $.jstree.defaults.core.html to false.


Getter methods decorated with @Ignore() are still saved

Hi,
It seems that Getter methods decorated with @Ignore() are still saved when they're converted to properties.
For example, the following will store the property CapitalizedName, despite the @Ignore() decorator.
@Collection()
class Band {
  id: string;
  name: string;

  @Ignore()
  public get CapitalizedName(): string { this.name.charAt(0).toUpperCase() + this.name.slice(1) }
}

Hi,
I didn't think of this at all when creating the @Ignore() decorator. I will see if I can find a solution and create a PR for it once I have the time, unless you beat me to it of course.

Hey! Sorry I missed this issue. Sadly right now I don't have time to fix it but it should be an easy fix


[FEAT] Cross join

@samster25 could you take a look at Python runner and MicroPartition code?
@colin-ho could you take a look at the swordfish-side stuff?

@colin-ho I added a test and it fails on the native executor for inner joins. Could you make a fix for it at some point?

@samster25 I chose to ultimately stick with my original implementation for cross joins in the old executor because:

for the most common case where we are joining a table with a single row, it mirrors the broadcast join behavior
for a full cross join, it should cause fewer memory issues because we only send work for one outer partition at a time. this may reduce saturation of compute/io but full cross joins are always going to perform badly and this implementation should at least make them more feasible to do given memory constraints.

I'm now also now assigning the outer side to the larger table so that only the smaller table has to be fully materialized for the cross join.


OAuthManager.plist location/format and security implications

A few things relating to https://github.com/fullstackreact/react-native-oauth/issues/16 and https://github.com/fullstackreact/react-native-oauth/issues/34.

I'd love to submit a PR updating iOS setup instructions with an example using OAuthManager.plist, instead of hardcoding secrets in JavaScript. (My motivation here is a possibly flawed assumption that this is more secure. [2])

Would this file go in ios/<project>/OAuthManager.plist?
Any hints on proper formatting? I tried converting

{
  "facebook": {
    "client_id": "fb123",
    "client_secret": "fb-secret"
  },
  "google": {
    "callback_url": "com.myapp.qa:/google",
    "client_id": "google123"
  }
}

to:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>facebook</key>
  <dict>
    <key>client_id</key>
    <string>fb123</string>
    <key>client_secret</key>
    <string>fb-secret</string>
  </dict>
  <key>google</key>
  <dict>
    <key>callback_url</key>
    <string>com.myapp.qa:/google</string>
    <key>client_id</key>
    <string>google123</string>
  </dict>
</dict>
</plist>

And then removing authManager.configure(authConfig), but no luck so far.

I'm new to native app development, but my understanding is that plist files are actually not in any way secure. 😞 And further, even compiled secrets can be reverse engineered. e.g. see http://stackoverflow.com/a/14865695/679702 and also https://www.youtube.com/watch?v=fLnR-zyQWzU (9 minute video). Could you address this?

I'm developing a cross-platform app so will also need to get this working on Android side as well. Would be happy to help implement this same behavior on Android, any suggestions for how to get started?

Thanks!

Thanks for the long issue. I think this is a great FAQ doc starting point too.

Yes, it needs to be a part of the project in XCode, so make sure you drag it into the project. Otherwise, it doesn't quite matter exactly where you put it, just as long as XCode knows about it. You still need to configure the authManager, just don't have to pass it any config ({} should suffice).

It's not necessarily more secure. I think anything can be reverse engineered, it's just how difficult do you want to make it for your attackers. The most secure method would be to not include the secret and have a backend that holds the client secret. Despite that, it's easier to reverse JS over compiled code, so without a back-end, using the plist is the most secure way we have right now to include the secret in the app.

Not sure about Android yet, i suspect there is a way though. I seem to recall a library that handles this in the user preferences, but I cannot recall the name this second.


State Management Couchbase Components, Deserialize Problem

Im using State Management with Couchbase. When i was use dotnet-sdk with couchbase, i cant convert my json state to my model. Redis or other states works great but in couchbase im facing this problem.
My Couchbase Yaml
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
   name: statestore
   namespace: default
 spec:
   type: state.couchbase
   metadata:
   - name: couchbaseURL
     value: ****
   - name: username
     value: ****
   - name: password
     value: ****
   - name: bucketName
     value: ****

Dotnet-sdk Version
<PackageReference Include="Dapr.AspNetCore" Version="0.11.0-preview01" />

Sample Http Request:
http://localhost:<dapr-port>/v1.0/state/statestore/productState
Response:
\"{\\\"Id\\\":\\\"1\\\",\\\"Name\\\":\\\"T-Short\\\",\\\"Color\\\":\\\"Blue\\\"}\"

Error
await _client.SaveStateAsync<Product>("productState", productState);
var state = await _client.GetStateAsync<Product>("productState");
//Error: System.Text.Json.JsonException: The JSON value could not be converted to Models.ViewModel.Product.

We are starting the work to fix this.

@yavuzturk96 this is now fixed and will come out in 1.0-rc2 next week.


Illegal instruction when running native on macOS

On macOS when I run:
$ rustup override set nightly
$ cargo run --example boxes --release
    Finished release [optimized] target(s) in 0.24 secs
     Running `target/release/examples/boxes`
Illegal instruction: 4

My rustup toolchain, which I updated April 16, 2018.
$ rustup show
active toolchain
----------------

nightly-x86_64-apple-darwin (directory override for '/Users/user/GitHub/unrust')
rustc 1.27.0-nightly (7360d6dd6 2018-04-15)

Is this a known issue? I'm running macOS 10.12.6.
Edit: Perhaps related to the pinned nightly-2018-04-01 in Travis config?

Yes i just confirm that in my machine. And it seem to be a NEW bug from recent rustc nightly.
For the work around right now, you can pinned to the nightly-2018-04-01.
I'm investigating more and will fill new issue to rustc side
Thanks for the report.

Reported: https://github.com/rust-lang/rust/issues/50018

Okay, i finally found that it maybe related to winit crate, i just bump the version of glutin to 0.14, and it should works now, Could you mind to test it again ?

Works now, thanks!


About ea bans - please read and share us - I think I know why you got ban!

I want to figure out how EA detect us and ban us, it will help me and everyone here to be more clever.
I am using FIFA-Ultimate-Team-Toolkit (using c#, not javascript) more than 4 months , and got several bans,  and some users didn't get any ban (read later to know how I didn't get ban even it's run for several weeks),.
I'm only using it for me and my friends, not to sell coins, it's only to buy players and play with them.
I not doing any RPM test,  I'm only make the all system sleep for at least 3-6 seconds ( random time) after  each request  to EA,
I limit the number of selling and buying/biding in each hour to not getting automatics blocks.
I use many randoms waits of several seconds before each request to EA, and also doing some minutes of system sleep after about one hour of using.
how do you think EA detect us? please tell me
In my experience I got ban only when I did less than one second waiting between searching and buying/biding! (now I dot it of several seconds like after any request)
In the past I did  less than one second waiting between the search and buying/biding the card that I bought from that search (to do snipping) and that users got ban after several days!
now I do exactly the same method and I just added a waiting time of more than 3 seconds between  the search and the buying/biding of a card from that search and I didn't get any ban, and it's work for several weeks very well
For all the people who got ban, what was your waiting time between the search and buying/biding?
do you think this is the reason that you got a ban?

I think the main reason for ban is the repeatable and fast quest.. I mean, even in PS4, if I repeat and be fast making the same thing, I'll get a ban. For exemple, I've got a temp ban, for make human snipping in PS4.
I'm so bad in English, so sorry for any error.

phpBiggs, in this topic, I'm not talking about temporary ban, temporary ban is totally automatic and happen if you do too many search , buying , selling in some minutes/hours.
the solution is to limit the search, sell and bid every minute, for example no more than 3 bid in a minute etc..
But in this topic I'm not talking about temporary ban of search, bid and selling , I'm talking about permanently ban from Ea game.
for example last year I didn't use autobuyer, only use the webapp and the application and doing automacro to sell me cards, I got a lot!! temporary ban from selling, I even got more than 4 millions coins and I didn't got any ban.
temporary ban is only to limit us from buying and selling a lot , it's will not lead to any permanently ban!

i got ban today as well...

#dolnma what did you do ?
What was the delay between search and buy ?

everything was on default (10 sec) and i set up stop after 6 hours.

I think you sould do random time and not certian time of delay

wait, you mean temporary ban or permanent ban?

i got email from EA about banning my account.

I dont underatand what did you do
I didnt any ban from two of my accounts

I think you sould do random time and not certian time of delay

ah. I just using this autobuyer for 3 weeks and from today i got probably permanent ban (im not actually on my desktop). Can you tell me, how can i make second account?

rendom is useless . i just search and buy by my hand once. 5h later, banned.


Examples of usage PageFragment

Hi. I am trying to use Page Fragment for some modals. So is there any way to create a proper page fragment for multiple modals( for example by creating it with name)?

@emptyOne322 Hi!
Could you please clarify your question?
You can set any methods in PageFragment for any amount of modals. To use them you just need to add them in codecept config

I don't know. Here it is http://codecept.io/pageobjects/#page-fragments
If you need one fragment for multiple different areas you can use inheritance or reuse functions and properties across different modules


Support knex 3.0.1

When upgrading to<EMAIL_ADDRESS>mocking knex fails on the following error:
Error: Unable to locate version: 3.0.1

@jbrumwell Any chance you could take a look at this one please? 🍺

I made a PR to fix this. Can you allow me to push a branch and open a PR? @jbrumwell

https://github.com/jbrumwell/mock-knex/pull/143


Requirements missing from documentation

Please add to the documentation that node 4 needed, because the lib uses arrow functions!

sorry! Yes this was added in #565


Feature request: One terminal command to run both client and server

Actual Behaviour
Currently we need to run
go run main.go

in one terminal and
cd web
npm start

in another.
Expected Behaviour
One line code
npm run dev

to run both concurrently on the same terminal.
Wroking on it.

Too trivial


enh: Haptic Feedback in the Mobile UI

Is your feature request related to a problem? Please describe.
No
Describe the solution you'd like
Well, I thought that it'd be nice to have haptic feedback, like when swiping to open the side menu with chats, or when the LLM is streaming the response. Kinda like the ChatGPT App, those type of haptic feedbacks. And when using the Call mode, it'll vibrate when it finishes transcribing what you said.
Describe alternatives you've considered
None, if its not easily do-able its completely fine. Just thought about giving the Idea.
Additional context
None

iOS doesn't support vibrations on Safari, perhaps it could be implemented for Android though
https://developer.mozilla.org/en-US/docs/Web/API/Navigator/vibrate#browser_compatibility


Fix autogen reload

📥 Pull Request
📘 Description
Autogen gets re-loaded on start session. Blocking.
🧪 Testing
remove reload

Old: Program took 4.21 seconds to run
New: Program took 0.39 seconds to run
To test:
import agentops
import time

start_time = time.time()

agentops.init()

@agentops.record_action('func')
def func():
    return 1

func()
end_session_start = time.time()
end_session_end = time.time()
print(f"end_session took {end_session_end - end_session_start:.2f} seconds")

end_time = time.time()
print(f"Program took {end_time - start_time:.2f} seconds to run")


Display version

This PR fetches the ivadomed version, either release version or git commit, and display it in the terminal each time a script is launched.
Note: adding the file ivadomed/version.txt were is indicated the release version, instead of ivadomed/__init__.py.
Fixes #455.

Message at the top of each scripts:
--
IVADOMED (git-cg/version-b26271a0bd80695b2c3ba758b5fd70888fe5db7c)

Log directory already exists: spineGeneric
Using GPU number 0

TODO before merging: change the docstrings of new functions (thanks heaps to SCT team eheh)

Pull Request Test Coverage Report for Build 270029377

72 of 88 (81.82%)  changed or added relevant lines in 13 files are covered.
8 unchanged lines in 8 files lost coverage.
Overall coverage decreased (-0.1%) to 90.621%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

ivadomed/scripts/automate_training.py
1
2
50.0%

ivadomed/scripts/compare_models.py
1
2
50.0%

ivadomed/scripts/convert_to_onnx.py
0
1
0.0%

ivadomed/scripts/download_data.py
2
3
66.67%

ivadomed/scripts/extract_small_dataset.py
1
2
50.0%

ivadomed/scripts/prepare_dataset_vertebral_labeling.py
0
1
0.0%

ivadomed/scripts/training_curve.py
1
2
50.0%

ivadomed/scripts/visualize_transforms.py
0
1
0.0%

ivadomed/utils.py
62
70
88.57%

Files with Coverage Reduction
New Missed Lines
%

ivadomed/scripts/automate_training.py
1
88.3%

ivadomed/scripts/compare_models.py
1
93.18%

ivadomed/scripts/convert_to_onnx.py
1
88.46%

ivadomed/scripts/download_data.py
1
84.67%

ivadomed/scripts/extract_small_dataset.py
1
89.02%

ivadomed/scripts/prepare_dataset_vertebral_labeling.py
1
92.19%

ivadomed/scripts/training_curve.py
1
93.97%

ivadomed/scripts/visualize_transforms.py
1
91.89%

Totals

Change from base Build 267722592:
-0.1%

Covered Lines:
5498

Relevant Lines:
6067

💛  - Coveralls

TODO before merging: change the docstrings of new functions (thanks heaps to SCT team eheh)

Done.

how does everyone feel about displaying “ivadomed” (without capital letters), as it is the official writing of the software package?

my only comment would be why the two "--", it is not super aesthetic, but really minor.

Yep, removed.

how does everyone feel about displaying “ivadomed” (without capital letters), as it is the official writing of the software package?

Yep, agreed, corrected.


remove malloc from solo5

This is part of addressing issue #223.
Most dynamic memory usage was in the virito backend, with some use in IRQ handlers.
In the IRQ case, I have replace the dynamic memory usage in a queuing implementation to use static buffers.
In the virtio case, I have introduced a new function (alloc_chunk_4K) which dynamically adds a chunk of 4K aligned memory to the "bottom of the heap".  This function is only intended to be called before passing control to the libOS, which will see its available memory starting at a dynamically determined point based on how much alloc_chunk_4Ked memory was done by Solo5 at initialization time.  (I had originally tried to use large static buffers for virtio, but these dramatically reduced performance on QEMU for reasons I don't understand.)
The libOS can discover the start location and size of the heap via a new Solo5 call: solo5_get_info.

I'd prefer a slightly more elaborate set of interfaces:
Instead of:
void *alloc_chunk_4K(size_t size);
void solo5_get_info(struct solo5_info *info);

I propose:
void *mem_ialloc_pages(size_t num);
int solo5_mem_claim_heap(void *heap_start, void *heap_end);

Rationale:

The private alloc_chunk_4K() is now a (limited) page allocator in disguise, so let's just call it that. This also simplifies the implementation, and makes it immediately clear to the user that pages are the unit of allocation (which implies page alignment). The i in the ialloc refers to the limitation that the function is intended to be called only at initialisation time, i.e. before solo5_mem_claim_heap() is called by the libOS. Any later calls to this function will panic (assert), and that should be documented.

For the public interface, to me solo5_get_info() means nothing by itself and does not reflect the side-effects it should enforce (be called only once and disable the private allocator from that point). Hence the use of claim in the name, which should also encourage anyone porting a libOS to look the function up in the documentation to understand the semantics.

What do you think?

Typo in the previous comment -- the public interface should be
int solo5_mem_claim_heap(void **start, void **end);

The function will return success (0) on the initial call only and failure (-1) on all further calls.

@mato I agree with the naming of ialloc and the invariant that it should only be called at solo5 initialization time.
I don't think that the initialization time locking of the heap should be exposed to the user.  What about a private call right before solo5_app_main is called that ends initialization?  That way the user visible API doesn't have a weird side effect, and user doesn't need to claim anything.
Then we just need a way to get "information" about where the heap starts and ends.  I had called it info to ideally align it with some of the device info calls.  Right now it is only memory, so we could call it mem_info, but I don't see why it shouldn't be more generic info about the platform.  For example, it might have the number of each type of device.
@ricarkol sorry I had meant to remove cmdline from the struct solo5_info; I think it should stay in solo5_app_main for now for cmdline parsing reasons.

After commit 0eafe28...
@ricarkol I think I have addressed your concerns now.
@mato I've addressed part of your concern with mem_ialloc_pages, but don't have a user-facing "claim" call.  I do have an assertion and mechanism to lock the memory layout via mem_lock_heap.  What do you think?

@djwillia ACK on the new solo5_info struct (without the cmdline field). LGTM

Playing the devil's advocate: since mem_ialloc_pages is exclusively required by virtio, is there a way to move it from the general kernel to the virtio-specific implementation? Otherwise all implementations "pay the price" even though the functionality of (page-granular) memory allocation is not needed by ukvm and Muen...

@Kensan I would prefer what you suggest and I had actually tried to remove all dynamic memory allocation from Solo5.  In the virtio case there are some potentially large buffers (depending on the backend virtio implementation) and when I had tried with static (large) buffers QEMU started behaving strangely (taking ~5 seconds to boot).  I didn't get to the bottom of that, so this simple dynamic allocation was the simplest I could come up with that did not affect the QEMU boot time.  If you know of a way to remove it and not cause QEMU to freak out I'm all for it.

@djwillia mem_ialloc_pages() needs to do the following, and nothing else:
void *mem_ialloc_pages(size_t num)
{
    assert(!mem_locked);

    uint64_t prev = heap_start;
    heap_start += num << PAGE_SHIFT;
    assert(heap_start < (unit64_t)&prev);

    return (void *)prev;
}

It's an internal function, so we don't care about overflow, only that we're not allocating more memory than we have in low-memory situations. All the stack guard and related code can go, it doesn't make sense here -- I will need to move it into ocaml-freestanding for Mirage.
Regarding your proposed solo5_get_info() interface, introducing kitchen-sink style calls like that is almost always a bad idea. I need to think about this some more, but I'm leaning towards supplying the start and end of the "heap" as arguments to solo5_app_main() instead.
@Kensan Regarding the cost of the implementation, it's basically those five lines of code above, so not  worth splitting out (and having separate mem.c's again).

@djwillia I see, do you still have the static buffer code variant somewhere so I might take a look? Maybe alignment of the struct io_buffers had an adverse effect on performance? That said, I certainly do not want to hold up this PR with my "nitpick".

thanks @mato.  I updated to use shifts and simplified mem_ialloc_pages as you suggested in cc3117c
I think that passing the heap_start and heap_end through solo5_app_main can cause additional complexity for the ocaml-freestanding case because it means that mirage-solo5 (which implements solo5_app_main) must change and we must figure out how to get the information to ocaml-freestanding's sbrk/malloc.  Is your issue with (a) the generality of solo5_get_info (which could perhaps be solved by naming it solo5_get_heap_info or something), or (b) the existence of the call in the Solo5 API (e.g., getting information about the system that is not passed as a boot parameter)?
@Kensan I'm afraid I don't have that version lying around.  I didn't even need to use it for struct io_buffers to see the issue.  Just the existence of the static buffer was enough to cause my QEMU boot slowness.  If you want to see if QEMU freaks out for you put a big static array of a few MB in size in any of the C files and see what happens to boot time.

Is your issue with (a) the generality of solo5_get_info (which could perhaps be solved by naming it solo5_get_heap_info or something), or (b) the existence of the call in the Solo5 API (e.g., getting information about the system that is not passed as a boot parameter)?

Both.
(a) is a general issue with naming things, not only related to the problem we are discussing. Calling an API solo5_get_info() means nothing to me (what "information"?).
You are correct that (b) is an issue with the existence of the call itself. Thinking about it, if we remove malloc() from the Solo5 API then it does not make sense for the application/libOS to run without having that information [about where it's heap should go]. Therefore, it's logical to always pass in as arguments to solo5_app_main() and a solo5_get_info() call is superfluous.
Regarding modifying the ocaml-freestanding/mirage-solo5 dance, a simple and correct solution would be -- move solo5_app_main(...) to ocaml-freestanding, have it call mirage_app_main(cmdline) which would be in mirage-solo5.

Regarding modifying the ocaml-freestanding/mirage-solo5 dance, a simple and correct solution would be -- move solo5_app_main(...) to ocaml-freestanding, have it call mirage_app_main(cmdline) which would be in mirage-solo5.

... or ... even better, don't have a main-type function in mirage-solo5 at all and have ocaml-freestanding call caml_startup() directly. Then we just need an interface to get the command line from ocaml-freestanding into mirage-solo5. So this might be an argument for having a solo5_boot_info() call or similar. I'll think about it some more.

Ah, I went down the route of moving things from mirage-solo5 into ocaml-freestanding and ran into the issue that you mention (related to the command line and the mirage-solo5/ocaml-freestanding relationship).  In the end I thought it was simpler to do it this way, with the added benefit of not needing changes to mirage-solo5 for this PR.  I figured we could figure out the correct relationship between ocaml-freestanding and mirage-solo5 at a later date if necessary.
More generally, I don't think I agree that stuffing everything into arguments to solo5_app_main is necessarily the right solution.  I like the symmetry of having a set of _info calls about parts of the underlying platform, and I almost think of them like the modules in ukvm.  We have net_info, blk_info, and I what I had in mind was almost like a core_info.
I suggest we rename the function to something that conveys some meaning, but leave the structure as is for now so we don't need to modify the ocaml-freestanding and mirage-solo5 relationship in this PR.  Then we can open an issue to clarify that relationship if we're unhappy with it.  What do you think?

Ok, can we compromise for now on a mem_info? I think it should accept/return a uint64_t *heap_start and a size_t *mem_size, or put them in a struct if you want. The reason for mem_size rather than a heap_end is that the maximum for the heap is dependent on how we manage heap vs. stack, and in this scheme we are relinquishing control of that to the libos layer. Does that work for you?

Thanks @mato, that sounds good.  I've updated this one and the accompanying https://github.com/mirage/ocaml-freestanding/pull/29

@djwillia Thanks. This looks fine. Will need to coordinate any merging with #201, so it'll be a bit more time before that happens.

Superseded by #244.


install: move help strings to markdown file

#4368
install -h now outputs the following.
$ ./target/debug/coreutils install -h
Copy SOURCE to DEST or multiple SOURCE(s) to the existing
DIRECTORY, while setting permission modes and owner/group

Usage: ./target/debug/coreutils install [OPTION]... [FILE]...

Arguments:
  [files]...

Options:
      --backup[=<CONTROL>]            make a backup of each existing destination file
  -b                                  like --backup but does not accept an argument
  -c                                  ignored
  -C, --compare                       compare each pair of source and destination files, and in some cases, do not modify the destination at all
  -d, --directory                     treat all arguments as directory names. create all components of the specified directories
  -D                                  create all leading components of DEST except the last, then copy SOURCE to DEST
  -g, --group <GROUP>                 set group ownership, instead of process's current group
  -m, --mode <MODE>                   set permission mode (as in chmod), instead of rwxr-xr-x
  -o, --owner <OWNER>                 set ownership (super-user only)
  -p, --preserve-timestamps           apply access/modification times of SOURCE files to corresponding destination files
  -s, --strip                         strip symbol tables (no action Windows)
      --strip-program <PROGRAM>       program used to strip binaries (no action Windows)
  -S, --suffix <SUFFIX>               override the usual backup suffix
  -t, --target-directory <DIRECTORY>  move all SOURCE arguments into DIRECTORY
  -T, --no-target-directory           (unimplemented) treat DEST as a normal file
  -v, --verbose                       explain what is being done
  -P, --preserve-context              (unimplemented) preserve security context
  -Z, --context                       (unimplemented) set security context of files and directories
  -h, --help                          Print help information
  -V, --version                       Print version information

Thanks for your PR :)


Update/ui images

@lorenzo-stoakes @craig-mulligan this PR adds a ton of common screenshots for the new dashboard. It also cleans up gettingStarted.md and gettingStarted-BBB.md
Hoping to get this merged and fix up the remaining old images afterwards.

@craig-mulligan @lorenzo-stoakes  ping...

Minor comments, otherwise LGTM


Show drag and drop however and image/video preview.

I would very much like it if when I hover over to drag and drop an image or video if it would show that it knows I'm trying to drag and drop something similar to the actual hangouts chrome app. Also an image preview would be wonderful so we don't accidentally send images to the wrong people.

yes we should give some feedback and this is easy. Preview could be more difficult but can be done too. Waiting for contributions on this.

This would be very helpful much appreciated.

first attempt at previewing the image: #398
needs some feedback, but it is a working version (for pasting from clipboard) :)

included in 1.4.0 release


Mod doesn't apply to Offline skins

When I play MC offline, I use a resource pack to change the player skin to my character, but the Ears addons don't appear. In older versions like beta 1.7.3 and release 1.2.5, the skin even appears stretched and distorted!

The fallback skin from the resource manager does not go through the normal skin loading machinery, and so none of Ears' code runs.

Could I ask for that as a feature? :3c

https://modrinth.com/mod/selfskin works!


Automatic Email Confirmation

Added ability to automatically input email once the email confirmation is requested
Verify your identity by entering the email address associated with your X account.
Hint<EMAIL_ADDRESS>

Summary by CodeRabbit

Bug Fixes

Improved login process by streamlining a specific task and utilizing auth_info_2 for better user input handling.

Performance Enhancements

Added an internal task execution to optimize the login process.

guys anyone solve this issue yet or not?


2023 sponsor tiers are a bit mangled

At some point, the 2023 sponsor page became less neat :)

@hypha Should we close this as this is mostly fixed in 2024 website? Unless we want to backport this to archive/2023?
This is how it looks currently:

Oh I am not sure. I sort of understood the idea to be to get a static version of the precious years' sites so they will always be visitable. So I think ideally it would be bsckported, especially because 2024's new features were merged into 2023 and caused the regression. On the other hand, it was not broken but just ugly.
But it would be good to know what the policy is for older sites since I am holding back on more bug reports for 2023 😅

https://github.com/EuroPython/website/pull/627 fixes the issue (thanks @egeakman!)


release a QGIS 3.22 version

Could you please release a QGIS 3.22 version?
Alternative 1: bookworm images
I'd suggest upgrading the base image in the Dockefiles to the current Debian stable (bookworm). There are both rust and debian slim docker images available for bookworm.
Alternative 2: bullseye-backports images
Alternatively QGIS 3.22 is also in bullseye-stable: https://packages.debian.org/search?keywords=qgis
If you want to stay on bullseye then an alternative could be to use bullseye-backports. There is an official debian docker image based on bullseye-backports, however there is no bullseye-backports-slim: https://hub.docker.com/_/debian/tags?page=1&name=bullseye
However there are no bullseye-backports docker images for rust. Evindently I do not know how dependencies between Debian releases and Rust work, so the existence of a "backports" variant of Rust docker images might be a non-issue.
Alternative 3: adding the bullseye-backports repo during docker build
The third alternative would be to add the bullseye-backports repo to /etc/apt/sources and install the qgis server from there.
Recommendation

Going with alternative 1 is the least work long term - at some point you'll need to update to bookworm anyway so you just as well might do all the work now.
I'd estimate alternative 3 to be the least work short term, aka the quick hack.

I could certainly try to do a qgis_3.22_on_bullseye_backports branch if you'd think that would be helpful and the way to go.
I'm not sure I'd be able to sort out Rusty conflicts when - this is what I expect to happen - moving to a major new Rust version or a jump in the C-bindings (I'm guessing that this is the case) that come with bookworm.
Open questions
In case I'd go with the qgis_3.22_on_bullseye_backports branch then I have no clue how production ready the current HEAD is. Should I be forking on the v2<IP_ADDRESS> tag then instead?
Feedback wellcome. Thanks.

Here is the release with QGIS 3.32 --> v0.5.0-alpha2


unary NOT is not working

Examples:
DIM i AS INT
i = 1

print NOT (i) <- COMPILE ERROR
print NOT 1 <- COMPILE ERROR
print NOT i <- WRONG RESULT $46E1

Thanks. Fixed now.


Feat/mobile governance page

This PR Introduces the <DropDownMenu /> component in order to navigate the governance page in mobile view. As part of the specifications I've also modified the details part of the governance page such as to introduce a first version of the 'did' ellipsis with the copy component.

#200

Please remark that some of the specifications concerning the details part of the page have already been implemented.
For the moment the mockup data does not contain sections with more than one article. To test the behaviour of several articles feel free to use the following article table to replace the contains of :

Article table

[
{
title: 'Condition: Only Decentralized Identifiers (DID) are accepted',
id: '4',
number: '<IP_ADDRESS>',
contains: [
{
id: '5',
title: 'Verification method',
description: 'Must be ‘KEY”',
number: '<IP_ADDRESS>.1'
}
]
},
{
title: 'Test Article. OBS For testing purpose',
id: '100',
number: '<IP_ADDRESS>',
contains: [
{
id: '101',
title: 'Verification method',
description:
'Long text to show the ellipsis behaviour of the paragraph description as well as the "see more" button translations. Lorem ipsum dolor sit amet consectetur adipisicing elit. Libero error dolorem laudantium itaque voluptates. Illum neque repellendus modi iste explicabo qui quae non atque, vel facere libero dolor, sit a!',
number: '<IP_ADDRESS>.1'
}
]
},
{
title: 'Test Article 2. OBS For testing purpose',
id: '102',
number: '<IP_ADDRESS>',
description:
'Lorem ipsum dolor sit amet consectetur adipisicing elit. Libero error dolorem laudantium itaque voluptates. Illum neque repellendus modi iste explicabo qui quae non atque, vel facere libero dolor, sit a!',
contains: [
{
id: '103',
title: 'Verification method',
description: 'Must be ‘KEY”',
number: '<IP_ADDRESS>.1'
}
]
}
]

Scenario 3-5 Multiple articles

Scenario 7 Paragraph

Scenario 8 DID ellipsis

Scenario 9 - 11 Dropdown menu
https://github.com/okp4/dataverse-portal/assets/75730728/3d292667-b2aa-4934-a6d7-74055f3c03d6

Scenario 12 Menu scroll

ℹ As this component isn't really generic, I've decided to allow only two levels of option depth.
So we have the first sub-menu displaying options, then a single sub-menu of sub-options.
The aim of this component is to meet the expectations of the feature as a priority, and it can be improved later if necessary, so as not to overextend current development times.


Pasting tables issue

Hello,
thanks for releasing new suneditor version. I've noticed following bug - when I try to paste tables every style dissapear also with table formatting. I added every element which I want to keep to the whitelist attributes so it's strange behaviour.
Example: https://i.imgur.com/hwa2ItC.gifv
Codesandbox: https://codesandbox.io/s/suneditor-paste-npm-9mwt9
Regards,
Adrian

The 2.27.1 version has been updated.
If there is an issue, please register as a new issue.
Thank you.


Added link to sample repo for using cra2+typescript+react-docgen-type…

…script-loader.
Issue:
What I did
How to test

Is this testable with Jest or Chromatic screenshots?
Does this need a new example in the kitchen sink apps?
Does this need an update to the documentation?

If your answer is yes to any of these, please make sure to include it in your PR.

Are you planning on keeping the example up to date? @johot ?

Yes sure I will! But I could also see this repo being moved to some more official storybook location so others can more easily make PRs etc?


Release: hwc-buildpack (Mar)

Release reminder for hwc-buildpack

See diff from latest version and validate if a release is required.
Make sure the latest commit on  has passed tests on the CI
Refer release instructions. (private link)

There isn't anything much to need a release

I notice that go used to build it has been updated https://github.com/cloudfoundry/binary-builder/pull/68 and a new version of hwc has come out. So let's include it and release

https://github.com/cloudfoundry/hwc-buildpack/releases/tag/v3.1.29


WIP: Add additional tests for menu.c based on code coverage

It is difficult to test the menu functionality without a function to return information
about menus. Add the menu_getprop() function to get information about
menus. Use this function to add additional tests for the menu functionality.

Codecov Report

Merging #5760 into master will increase coverage by 0.07%.
The diff coverage is 86.66%.

@@            Coverage Diff             @@
##           master    #5760      +/-   ##
==========================================
+ Coverage   84.48%   84.56%   +0.07%
==========================================
  Files         134      138       +4
  Lines      152113   152589     +476
==========================================
+ Hits       128518   129038     +520
+ Misses      23595    23551      -44

Impacted Files
Coverage Δ

src/evalfunc.c
91.92% <ø> (ø)
:arrow_up:

src/menu.c
81.12% <86.66%> (+7.71%)
:arrow_up:

src/ui.c
71.29% <0%> (-1.12%)
:arrow_down:

src/os_unix.c
63.51% <0%> (-0.23%)
:arrow_down:

src/gui_gtk_x11.c
58.11% <0%> (-0.2%)
:arrow_down:

src/popupwin.c
94.31% <0%> (-0.09%)
:arrow_down:

src/terminal.c
82.53% <0%> (-0.08%)
:arrow_down:

src/edit.c
86.05% <0%> (-0.03%)
:arrow_down:

src/version.c
92.1% <0%> (ø)
:arrow_up:

src/json_test.c
100% <0%> (ø)

... and 13 more

Continue to review full report at Codecov.

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


Update duckdb version. Closes #569

Starting v0.7, duckdb supports lazy lance dataset. ListVector is also exposed via C API.

Need to do two submodule checkout as well.


Multiple source selection and collective action

Is your feature request related to a problem? Please describe
Hi,
i tried to browser across the distinction but do not understand what is the statute of cross-directory selection right now, is it a todo task or has it been ruled out by design/choice ? Currently if the collective action can't reach all selected files it's not very useful, for instance to move stuff elsewhere or delete it all at once.
Sorry if it's already been answered :smi
Will you be willing to contribute this feature?

[ ] Yes, I'll give it a shot

Describe the solution you'd like
Ideally it would work like broot's stage panel, albeit without the need for a panel. Select things would put them in a virtual directory of sort, then you do your action. to move that would be selection + yank + go inside the target directory, paste. If possible without the "yank", but it's your choice as I read, and not a big deal (one more letter argggggggg lol).
I would like a dialog to see what's been selected across directories (and tabs ? don't care, I don't use them);
Describe alternatives you've considered
No response
Additional context
No response

sorry, I see that it does work with fd. Just not with the normal navigation mode. It shouldn't be difficult to implement then ,

Hi, sorry for the delayed response.
Cross-directory operations were implemented in the past few days, in https://github.com/sxyazi/yazi/pull/693, you can now build from the latest main branch and try it out to see if it fits your workflow. I think it's very similar to the broot workflow you described, although I haven't used broot before :)


Can't deploy from Visual Studio 2022 (64 bit) Version 17.2.6

Describe the bug
Following the latest update when I click Publish to AWS whilst I can select a new target or publish to an existing target the ability to edit the Target Configuration is not available and the details of the configuration is not available. The publish button is shown but does nothing on click.
I have a number of asp.net (version 6) applications that I have deployed to ECS using AWS Fargate but I am unable push updates through Visual Studio and cannot deploy a new service either.

Expected Behavior
The configuration is displayed and the edit button is present to allow me to configure the deployment
Current Behavior
The configuration is empty and the edit button is not displayed (see image in the description)
Reproduction Steps
Right click on the project to deploy and select Publish to AWS. The Publish to Existing Target is displayed but the configuration is missing and the publish button does not do anything. Also publish to new target behaves in the same way.
Possible Solution
No response
Additional Information/Context
No response
Version used
1.0.3
Operating System and version
Windows 11

From the AWSToolKit visual studio logs
Status: 500
Response:
{"ErrorCode":"UnexpectedError","Message":"Unexpected character encountered while parsing value: s. Path \u0027\u0027, line 0, position 0.","ProcessExitCode":null}
at AWS.Deploy.ServerMode.Client.RestAPIClient.d__19.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Amazon.AWSToolkit.Publish.ViewModels.DeployToolController.d__23.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Amazon.AWSToolkit.Publish.ViewModels.DeployToolController.d__22.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Amazon.AWSToolkit.Publish.ViewModels.PublishToAwsDocumentViewModel.d__179.MoveNext()
2022-07-22 13:39:09,100 [58] ERROR Amazon.AWSToolkit.Publish.Views.PublishToAwsDocumentControl - Error reloading configuration details
HTTP Response:
{"ErrorCode":"UnexpectedError","Message":"Unexpected character encountered while parsing value: s. Path \u0027\u0027, line 0, position 0.","ProcessExitCode":null}
AWS.Deploy.ServerMode.Client.ApiException: The HTTP status code of the response was not expected (500).

I have put the issue into the AWSToolKit page instead as that is more appropriate


Clarification for recent GAM PA API setting to "Allow testing on up to 100% of my inventory with..."

Is this 100% of the 'Limited' or 'Enabled' labeled experiment arms in the Ad Manager, PAAPI column this graphic,

or 100% full bore all PA API equipped & enabled Chrome instances?
(excluding where user has disabled the feature or not permitted ads, &c).

What is the deal with Kate?
Will we get an answer to this quesiton?
Like the old tabloid commercials, "Inquiring Minds Want to Know."

The control doesn't just apply to labeled traffic, if that's what you're asking.


setting content type header for successful proxied requests

This PR uses mime.TypeByExtension to set the Content-Type header of proxied extension requests. If it fails to get the type, we use the one returned by the request.

Is there a test we could add for this?

Is there a test we could add for this?

Maybe an integration test, I'll check it!

Added a test @bigkevmcd, can you review it?

I was trying to test this but I am getting an error.
I installed top-level-product and set nocache to true and then I tried hitting this url https://localhost:8443/v1/uiplugins/top-level-product/0.1.0/ where I get 400: Invalid request
Am I doing something wrong here in testing this ?

The endpoint is https://localhost:8443/v1/uiplugins/top-level-product/0.1.0/<path_to_file>. Since you provided an empty path, 400 was expected in this case. You can try https://localhost:8443/v1/uiplugins/top-level-product/0.1.0/ + any entry form here https://github.com/rancher/ui-plugin-examples/blob/main/extensions/top-level-product/0.1.0/files.txt


Add snap/flatpak/appimage to known issues

As we've had 2 people reporting bugs related to them (#38, #76), it might be a good idea to add the behaviour of Snap/Flatpak/AppImage to the known issues section of the README.

Thank you!


Bug at detectionTimeoutMS on iOS

I'm already at MobileScannerController Detectionspeed.normal and DetectionTimeoutMS 5000 but in iOS not working and in Android working normal

It seems that only the MacOS implementation uses the timeout properly. The iOS implementation never uses the timeout.
Should be trivial to fix.

@juliansteenbakker Essentially it is this PR, but for iOS https://github.com/juliansteenbakker/mobile_scanner/pull/675
Not sure why the PR title indicated iOS, even though it was only implemented for MacOS.

This is fixed in version 3.5.0


Support Google Gemini

Frequently Asked Questions

[X] I have read the FAQ before opening the issue.

Feature details
ref: google ai studio

Done.


Allow to set line spacing on a TextView

When a TextView wraps to display multiple lines of text we should allow to set the distance between each line to improve readability on longer text.

+1

On Android and iOS it is called "lines pacing" therefore it suggest to create a new property lineSpacing on tabris.TextView.
Android: http://developer.android.com/reference/android/widget/TextView.html#setLineSpacing(float, float)
iOS: http://stackoverflow.com/a/3908991/271877

After some discussion we agreed on a TextView property lineHeight. Its value is a factor modifying the space between lines (similar to the factor in the css property line-height).


Updating to v5.4.0 led to a change in the order in which the files are concatenated

In my project, tsconfig.json with the outFile option is used. With v5.3.2, the files in the project root went first in the output file, which was exactly what is needed. But after the update, the order has changed. The files seem to be sorted by their name now, regardless their location. My project was broken, and I had to stick with 5.3.2.
So, is this an intended change?
How can I enforce the order so that the files from the root would always be first even if I switch to a newer version of grunt-ts?
Actually, in this case (when tsconfig.json exists), I think grunt-ts shouldn't have any influence on the concatenation order at all. If I run tsc directly from the command line, I get the same results as with 5.3.2.

Hi, we did change that code but this was not one of the intended results.  I also think grunt-ts should respect the order used by tsc.

Related issue: https://github.com/Microsoft/TypeScript/issues/8776


Packaging for pypi

Added setup.py and setup.cfg files. Used to push 0.9.0 to pypi, see https://pypi.org/project/yaetos

cc @annafonte


How do you add a splash screen for CRNA?

I can't find any documentation on this. Thanks.

https://docs.expo.io/versions/v18.0.0/guides/configuration.html#loading

thanks @Akim95!


Minimum height of Source and Translation fields should be smaller

Poedit 2.0beta3
Windows 10
The Source and Translation text fields are forced to have a minimum height of about 7 lines of text. When I'm translating, most messages are single-line, therefore I'd like the Source and the Translation text fields to be smaller in height, so that the texts are closer to each other on the screen.

This becomes especially apparent when a message with plural translation is translated. Because then, the minimum height requirement applies to each of the English plural forms, which effectively hides the Translation text control:

I'm confused  by this one too: you say the topic is too big minimal size, but then proceed to describe problems that have no relation to minimal size… and that I can't reproduce.
The actual minimal height is about 4 lines of text and this is to ensure that plural forms UI fits. If anything, your second screenshot would show the min size is too small, not too big.
But the actual problem seems to be that the source and translation subareas are unbalanced: they are supposed to have the same size (with some fudge room for the plural case).
Can you please give more detailed instructions on how to reproduce (incl. a file to do it with)?

Also, what's up with the rounded titlebars in your screenshots? That's not how Win10 normally looks, could it be related?

Regarding the rounded corners in the screenshots: that's from Greenshot when I take a screenshot of a full window using Alt+PrtScr. When Greenshot is disabled and I use the native Windows screenshot feature, the corners are there. Therefore I think this is not related to the rest of this issue.
Let me try to reword what I really meant.
In the first screenshot, the Source text field has its full (minimum) size, while the Translation field is smaller. When I experienced that yesterday, that was the minimum size of the two text fields. I could not make them any smaller.
The weird thing is that I cannot reproduce it today. Maybe something changes after working with Poedit for some time. I have no idea though what this might be.
When I tried to reproduce this issue today with a freshly started Poedit, the minimum height of the Source and Translation text fields was about 3 to 4 lines, which matches your description and is perfect for me.
I'd say we close this issue until I can reproduce it reliably. Sorry for not having tried that from the beginning.

Let's keep it open for now - something is going on here that shouldn't, even if not 100% reproducibly.

I have a similar report that is affected by the font used — does disabling "Use custom text fields font" have any effect (it does in this other report, on macOS)?

I'm closing because I was able to reproduce the above mentioned issue on Windows too, so I am assuming this to be the same thing. 2.0.3 with the fix will be released very soon; if this problem still persists in it, please comment here and I'll reopen the bug.


Problems with moveto/copyto commands

Using the latest (updated as of earlier this morning) rclone on Linux, I'm getting unexpected behavior with the moveto command on local files.
rclone -v moveto testfile somepath/
fails with
2017/01/30 16:48:13 rclone: Version "v1.35-DEV" starting with parameters ["rclone" "-v" "moveto" "testfile" "somepath/"]
2017/01/30 16:48:13 Can't find parent directory for "somepath/"

Attempting the same command without the trailing slash and an empty somepath clobbers the destination directory and just renames the file in the same directory.
Attempting the same command without the trailing slash but a non-empty destination gives:
2017/01/30 16:49:26 rclone: Version "v1.35-DEV" starting with parameters ["rclone" "-v" "moveto" "testfile" "somepath"]
2017/01/30 16:49:26 Local file system at /home/eharris/rclone: Modify window is 1ns
2017/01/30 16:49:26 testfile: Sizes differ
2017/01/30 16:49:26 somepath: Couldn't delete: remove /home/eharris/rclone/somepath: directory not empty
2017/01/30 16:49:26 Attempt 1/3 failed with 1 errors and: remove /home/eharris/rclone/somepath: directory not empty
2017/01/30 16:49:26 testfile: Sizes differ
2017/01/30 16:49:26 somepath: Couldn't delete: remove /home/eharris/rclone/somepath: directory not empty
2017/01/30 16:49:26 Attempt 2/3 failed with 1 errors and: remove /home/eharris/rclone/somepath: directory not empty
2017/01/30 16:49:26 testfile: Sizes differ
2017/01/30 16:49:26 somepath: Couldn't delete: remove /home/eharris/rclone/somepath: directory not empty
2017/01/30 16:49:26 Attempt 3/3 failed with 1 errors and: remove /home/eharris/rclone/somepath: directory not empty
2017/01/30 16:49:26 Failed to moveto: remove /home/eharris/rclone/somepath: directory not empty

Similar results occur when using the copyto command.

Something weird is going on there certainly!
Can't find parent directory for "somepath/" is a parsing the remote error.
As for why the trailing / makes a difference - I think that is the same code...
I'll take a look...

I've fixed this in this beta
http://beta.rclone.org/v1.35-136-g30e97ad/ (uploaded in 15-30 mins)
Your command will now give this error
$ rclone --retries 1 -vv moveto testfile somepath/
2017/02/22 21:13:20 "somepath/" is a directory

which should hopefully be a hint that you need to put a leaf name on the end.

I just built rclone from master including through checkin e2f0feef3cf4ff5a15312b5f02e5f7e71ad7ecd8 and I'm still getting the error:
> rclone --retries 1 -vv moveto testfile somepath/
2017/02/24 14:38:28 DEBUG : rclone: Version "v1.35-DEV" starting with parameters ["rclone" "--retries" "1" "-vv" "moveto" "testfile" "somepath/"]
2017/02/24 14:38:28 Can't find parent directory for "somepath/"

Normal semantics for filesystems (and rsync) are that moving to a directory destination should work, so it seems to me like the fix you propose of warning that it's a directory and still failing to do what is expected isn't really the desired result.  I think most people would expect moves to a directory to work just fine.

I've fixed the overwrite of a directory you mentioned - find that in 79e3c67bbdb0722fd211a67f8a7c5c034a655a15

I just built rclone from master including through checkin e2f0feef3cf4ff5a15312b5f02e5f7e71ad7ecd8 and I'm still getting the error:

I can't replicate that?
$ touch testfile
$ mkdir somepath

$ rclone --retries 1 -v moveto testfile somepath
2017/02/25 11:11:37 INFO  : Local file system at /tmp/b: Modify window is 1ns
2017/02/25 11:11:37 ERROR : Attempt 1/1 failed with 0 errors and: "somepath": is a not a regular file
2017/02/25 11:11:37 Failed to moveto: "somepath": is a not a regular file

$ rclone --retries 1 -v moveto testfile somepath/
2017/02/25 11:11:46 "somepath/" is a directory

Normal semantics for filesystems (and rsync) are that moving to a directory destination should work, so it seems to me like the fix you propose of warning that it's a directory and still failing to do what is expected isn't really the desired result. I think most people would expect moves to a directory to work just fine.

At the moment moveto either takes
rclone moveto file newfile
rclone moveto dir newdir

If any of the arguments don't exist it will be treated as a directory, and trailing slashes should make no difference.
I think you'd like
rclone moveto file existingdir
rclone moveto file existingdir/

to work, which it could - can you make a new issue for that please and I'll have a look at it for 1.37.
Thanks

The issue I was having with still seeing the old behavior was because of #1178, my build wasn't picking up the changes from my checkout.

@eharris good news - thanks!


Gulp 4 File Timestamps Problem

I have a strange problem with Gulp 4 and gulp-nunjucks-render (https://github.com/carlosl/gulp-nunjucks-render).
When I make small changes to a comment section in a parent template, parent.njk, the page.njk template that extends the parent {% extends "parent.njk" %}, the template gets compiled, and the contents of the file in .pipe(gulp.dest('./public')) is updated, but the timestamp of the file itself is not changed. In fact, the timestamp of the file appears to be pushed 'back' in time. As a result, neither my IDE, or Git is detecting the changes, and the file is not committed.
If I 'touch' the file, all is well
I've looked at the Gulp 4 API, and I've tried setting {since: <older date/time>} - to ensure the file is included int he src input - but I don't believe this is the problem.
Any ideas why the file output into the gulp.dest might not be having its timestamp updated?
Here's what gulp-nunjucks-render is doing to the stream....
https://github.com/carlosl/gulp-nunjucks-render/blob/master/index.js
Any thoughts or suggestions greatly appreciated.
I was thinking of creating  function using Gulp shell that manually touches these files in the meantime.

Solved - I think. The timestamp is coming from the child template, and not the parent template - which I suspect is a problem with gulp-nunjucks-render.


Add ARRAY-BOX

Add array-box which allows you to specify the type of alignment for each row and column. This could be used to implement matrix-box (issue #1), row-box/column-box with options (issue #2, #3), and latex-align-box.

Hi @stylewarning . I'd like to help out with this.

@matt-y https://github.com/stylewarning/formulador/pull/12


Update package_index.yml

adding dl_poly_4 to the list of packages.

@certik I can fix almost all the things you suggest... but the star stuff sorry I do not like to entertain that, it is really teenage stuff.

@alinelena if you fix what I suggested, we will be happy to include your package. As I suggested, you do not have to worry about the number of stars. If you have a better idea how we could formulate the criteria, please let us know, we are open to suggestions.

The README now gives an overview about the project:
https://gitlab.com/ccp5/dl-poly/-/blob/88a0c62d1cda8f50703c3d088396aba9e2c0a1e2/README.md
Moreover, it lists publications in CPC which describe details about the original code as well as recent publications.

@alinelena would you mind please reopening this PR so that we can merge it?

New PR was sent at #233.


[Question] details component on Edge displays expanded and unable to collapse

Hello,
I have a details component which works fine in chrome and safari however in edge it looks like this:

Nothing happens if you click on the help link and the message is always present.  I have called the initAll() function and I can see other components working correctly.  Just wondering if anyone else might have experienced this before? Any guidance on this would be appreciated.

Have you included the data-module="govuk-details" attribute on the  tag, so it looks like:

Hi @jamesmking
The markup looks like:

                          Help

        Hello

Interestingly in chrome and safari I can see open attribute being added and removed

                          Help

        Hello

Hello @aminmc !
There is a polyfill that is run in Edge since it does not support the details element out of the box, could you please check that the JavaScript for GOV.UK Frontend is loaded on your page?
Could you also check what version of GOV.UK Frontend you are using and let us know as it may help us debug your issue.
Nick

@nickcolley thanks for getting back! I'm currently using version 3.3.0. I'm using webpack and have a react application. In the js code that is used in the presentational component I'm doing the following:
import {initAll} from 'govuk-frontend'
initAll();

Chances are i'm doing something wrong :)

@nickcolley as i figured it was user error. After some debugging i worked out that the init method was being called before the page was being rendered as a result the polyfill wasn't being applied. Re adjusted the code and it works as expected. Sorry for wasting your time on this!.
Cheers


tpcds add rule to eliminate empty relation

Proposed changes

eliminate emptyrelation,
const fold after filter pushdown

Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

run buildall

run buildall

(From new machine)TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 45.42 seconds
stream load tsv:          542 seconds loaded<PHONE_NUMBER>9 Bytes, about 131 MB/s
stream load json:         20 seconds loaded<PHONE_NUMBER> Bytes, about 112 MB/s
stream load orc:          64 seconds loaded<PHONE_NUMBER> Bytes, about 16 MB/s
stream load parquet:          31 seconds loaded 861443392 Bytes, about 26 MB/s
insert into select:          29.2 seconds inserted 10000000 Rows, about 342K ops/s
storage size:<PHONE_NUMBER>2 Bytes

run buildall

(From new machine)TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 47.3 seconds
stream load tsv:          532 seconds loaded<PHONE_NUMBER>9 Bytes, about 134 MB/s
stream load json:         20 seconds loaded<PHONE_NUMBER> Bytes, about 112 MB/s
stream load orc:          65 seconds loaded<PHONE_NUMBER> Bytes, about 16 MB/s
stream load parquet:          31 seconds loaded 861443392 Bytes, about 26 MB/s
insert into select:          29.1 seconds inserted 10000000 Rows, about 343K ops/s
storage size:<PHONE_NUMBER>9 Bytes

run buildall

run buildall

(From new machine)TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 46.82 seconds
stream load tsv:          506 seconds loaded<PHONE_NUMBER>9 Bytes, about 140 MB/s
stream load json:         20 seconds loaded<PHONE_NUMBER> Bytes, about 112 MB/s
stream load orc:          65 seconds loaded<PHONE_NUMBER> Bytes, about 16 MB/s
stream load parquet:          31 seconds loaded 861443392 Bytes, about 26 MB/s
insert into select:          29.4 seconds inserted 10000000 Rows, about 340K ops/s
storage size:<PHONE_NUMBER>8 Bytes


Remove Extensions Ads when Extension is Already Installed

It would be nice if the Extension ads were removed when you already have the extension installed.

I think the new vue telemetry extension and nuxt/telemetry and two different things.

They are!  One is a website, another is a Chrome/FF extension.  But, there may be ways for them to talk indirectly.

On second thought, I see what you mean.  I can't seem to find the real website to submit this... If I find it, I'll delete this.

Heck with it, I'll just fill out the feedback form on the site.
MOVING ON!

I think I found it here!


Filter Fix

In the filter.mjs - we were calling the generateMinMax function to get the data for the minimum or maximum values of the filter sliders.
However, we were not awaiting these which meant that the values were not being returned correctly, and the no data message was being shown when there was actually data.

To see the specific tasks where the Asana app for GitHub is being used, see below:

https://app.asana.com/0/0/1207195219504067

Just pushed another commit to check that the filter.min and filter.max are numeric, if not the no data message is returned

Added a check for whether response is null before checking response[minmax].
Added a simple test workspace as well: Filter workspace


Use diamond operator in val post example

This feature exists since java 7 and the extendes support for java 6 ended three years ago.

... and var exists since java 10. Lombok still supports java6, because supporting a thing is better than not supporting a thing, and so far it hasn't been all that much effort to keep java6 in the fold.
The examples also serve the function of literally showing what lombok is exactly doing under the hood, though this is a little bit of an art more than a science (because we don't show the various mostly irrelevant annotations we generate to ensure linter tools do the right thing). Still, lombok does generate the stuff-in-the-diamond, even on java7+, and in this case I feel it is better to show that in the example.


drag feature

Use case
await tester.drag($('x'), const Offset(0, 1000));
await tester.pumpAndSettle();
Proposal
cam l do this with patrol. l couldn't drag feature

Hi @AcarFurkan, you can do this now, but using original Flutter WidgetTester. Eg.:
await $.tester.drag($('x'), const Offset(0, 1000));
await $.pumpAndSettle();

This way you can access all Flutter's integration_test package features. In general, we plan to add more swiping/dragging methods to Patrol directly.

Closing as duplicate of https://github.com/leancodepl/patrol/issues/1399


5分钟带你看完 WWDC 2018 - 郭军军的博客 | Junjun Guo Blog

https://junjun1guo.github.io/2018/06/05/5分钟带你看完-WWDC-2018/
Every failure is leading towards success.

反射光栅