Generic JsonConverter?

It's a bit of a pain to be running casts all over for JsonConverter.  I tried searching the issues and never found a suggestion like this, but instead of copying this around my projects it seems like a good fit for 'core' Newtonsoft.Json:

    public abstract class JsonConverter<T> : JsonConverter {
        public sealed override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) {
            if (!(value is T)) {
                throw new JsonSerializationException(string.Format("This converter cannot convert {1} of type {0}", value, value.GetType()));
            }
            WriteJson(writer, (T)value, serializer);
        }

        public abstract void WriteJson(JsonWriter writer, T value, JsonSerializer serializer);

        public sealed override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) {
            if (objectType != typeof (T)) {
                throw new JsonSerializationException(string.Format("This converter cannot convert type {0}", objectType));
            }
            if (!(existingValue is T)) {
                throw new JsonSerializationException(string.Format("This converter cannot convert {1} of type {0}", existingValue, existingValue.GetType()));
            }
            return ReadJson(reader, (T) existingValue, serializer);
        }

        public abstract T ReadJson(JsonReader reader, T existingValue, JsonSerializer serializer);

        public sealed override bool CanConvert(Type objectType) {
            return typeof (T) == objectType;
        }
    }

By leaving the non-generic intact it makes it feasible to write however crazy a Converter you'd like, but this case covers 99% of the simple cases.

I really like this suggestion. I use a similar approach to a default parser system I created.

Somewhat related (same/similar result, but different approach): perhaps this functionality exists and I'm not seeing it, but wouldn't it be better if the abstract class JsonConverter had been an interface instead? It's not adding any functionality to the derived class, except forcing it to implement method, for which interfaces are a better fit.
I'm asking this because, because of missing IJsonConverter it is very difficult (if not impossible) to properly abstract out the way the to/from serialization is done. To some extent, it is, but if the object being converted needs a JsonConverter that itself also needs application-provided services, then I can't see how they can be injected without either poisoning the custom JsonConverter with the "get-service-from-DI-container" calls or inserting Newtonsoft-specific serialization into the converted-object's class or its converter-class. Somewhat confusing, sorry...
I'm suggesting that you add (or point me to it, if it exists) an interface maybe best named IJsonConverter and add overloads to Serialize and Deserialize methods to take that an array of those instances, then also propagate the similar abstraction into JsonWriter, JsonReader, JsonSerializer and JsonSchema. In other words, create this:
    public interface IJsonConverter
    {
        void WriteJson(IJsonWriter writer, object value, IJsonSerializer serializer);
        object ReadJson(IJsonReader reader, Type objectType, object existingValue, IJsonSerializer serializer);
        bool CanConvert(Type objectType);
        IJsonSchema GetSchema() { get; }
        bool CanRead { get; }
        bool CanWrite { get; }
    }

To me, such change doesn't look extremely difficult to implement: it's more about the will. It seems more logical to me to feed the "serializer" to the "converter" rather than the other way around, because the first is a tool (service) of the latter. Again, maybe I'm wrong or not seeing everything that's related, in which case sorry (but do enlighten me, please).
Thank for reading.

As #1011 has been merged I believe this issue can be closed.


chore: modify module-checks to support Typescript modules

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

I haven't tested it yet with any Typescript module. I was gonna create an example module, but it might be more efficient to just merge #13 and then use that to test this PR.

Deal.


CLI code with multiple --install-extension says it can't find any of them, even if only one is not found

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

VS Code Version: Version: 1.76.1 (Universal) (Commit: 5e805b79fcb6ba4c2d23712967df89a089da575b, Date: 2023-03-08T16:32:09.831Z)
OS Version: macOS Ventura 13.2.1 (22D68)

Steps to Reproduce:
In a terminal:
❯ code --install-extension=GitHub.copilot --install-extension=foo
Installing extensions...
Extension 'github.copilot' not found.
Make sure you use the full extension ID, including the publisher, e.g.: ms-dotnettools.csharp
Extension 'foo' not found.
Make sure you use the full extension ID, including the publisher, e.g.: ms-dotnettools.csharp
Failed Installing Extensions: github.copilot, foo

Expected result: Extension 'github.copilot' not found. should not show up, as it's a valid extension, as seen in:
❯ code --install-extension=GitHub.copilot
Installing extensions...
Installing extension 'github.copilot'...
(node:81946) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
(Use `Electron --trace-deprecation ...` to show where the warning was created)
Extension 'github.copilot' v1.79.10634 was successfully installed.

Note that, once the extension is installed, the error message changes accordignly:
❯ code --install-extension=github.copilot --install-extension=foo
Installing extensions...
Extension 'github.copilot' v1.79.10634 is already installed. Use '--force' option to update to latest version or provide '@<version>' to install a specific version, for example<EMAIL_ADDRESS>Extension 'foo' not found.
Make sure you use the full extension ID, including the publisher, e.g.: ms-dotnettools.csharp
Failed Installing Extensions: foo

But following the advice, fails again:
❯ code --force --install-extension=github.copilot --install-extension=foo
Installing extensions...
Extension 'github.copilot' not found.
Make sure you use the full extension ID, including the publisher, e.g.: ms-dotnettools.csharp
Extension 'foo' not found.
Make sure you use the full extension ID, including the publisher, e.g.: ms-dotnettools.csharp
Failed Installing Extensions: github.copilot, foo

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


Global creamlinux instance

Would be more convenient to have one creamlinux installation for all games when updating.

Novattz's script more or less accomplishes this. Creamlinux installations will stay local to each game, but the script can easily download creamlinux and fetch up-to-date DLC IDs automatically.


query method for deep access into data structures

Is your feature request related to a problem? Please describe.
When accessing data in deep data structures querying can become quite ugly (ex: someObject.object("a").array("y").string(0))
Describe the solution you'd like
A query method for AbstractObject and AbstractArray that performs a deep query into the data structure. The query syntax for the example above should be a.y.0. The string, number, boolean, object and array shorthand methods could also be switched to the query method instead of the simple get, but this isn't necessary.
Describe alternatives you've considered
I initially thought this isn't even necessary because the current dsl is pretty clean but I just found a use case for it in the HTTP-Server library.

Implemented in commit 2dc2684e8d9f1f768fede167f700c4692fbe5314 and ddd3a3b3756f3b211ab50fb7a0bf204847b6eda7


Launch Crash when using Customizable Player Models

Describe the bug
Game closes on startup when attempting to launch with Customizable Player Models and Cosmetica installed
To Reproduce
Steps to reproduce the behavior:

Install Customizable Player Models and Cosmetica in the same Minecraft Instance
Run the game
Game will close on startup

Expected behavior
Game launches and works as intended
Setup (please complete the following information):

OS: Windows 10
Minecraft Version: Fabric 1.20.4

Additional context
When I disabled Customizable Player Models the game launched as normal
I am using the Modrinth Launcher
Customizable Player Models: https://modrinth.com/plugin/custom-player-models

Can you provide the crash log

Tested with CustomPlayerModelsFabric-1.20.6 v0.6.16f.
https://pastebin.com/raw/M7mUacJi
Support between both mods would be great 😄

did anyone figure out what caused it? it's been incompatible long before this bug report. https://github.com/tom5454/CustomPlayerModels/issues/261


fix(spark:526782): callhistory item aria lable for date and time

Jira's Link
Win - Recent Calls: JAWS: The displayed time and date for the calls are not conveyed
https://jira-eng-gpk2.cisco.com/jira/browse/SPARK-526782
Win - Recent Calls: JAWS: Unread voicemails represents with icon is not conveyed to SR users
https://jira-eng-gpk2.cisco.com/jira/browse/SPARK-526779
Web - Voicemail: Screen Readers: Blue dot indicating unread message is not announced
https://jira-eng-gpk2.cisco.com/jira/browse/SPARK-526745
Mac - Voicemail: VoiceOver: Media seek slider announces no role and confusing label and value
https://jira-eng-gpk2.cisco.com/jira/browse/SPARK-526786
Mac - Recent Calls: VoiceOver: Outgoing/incoming call information is not announced
https://jira-eng-gpk2.cisco.com/jira/browse/SPARK-526784
Web - Recent Calls: Screen Readers Outgoing/incoming call information is not announced
https://jira-eng-gpk2.cisco.com/jira/browse/SPARK-526740
Win - Voicemail: Keybord Navigation: Focus is lost once Play button is activated
https://jira-eng-gpk2.cisco.com/jira/browse/SPARK-526772
Web - Voicemail: Keyboard Navigation: Pause voicemail button is not focusable
https://jira-eng-gpk2.cisco.com/jira/browse/SPARK-526741
Mac - Voicemail: Keyboard Navigation: Pause voicemail button is not focusable
https://jira-eng-gpk2.cisco.com/jira/browse/SPARK-526787
Win - Recent Calls: JAWS: No visual/announced instructions on how to focus action buttons
https://jira-eng-gpk2.cisco.com/jira/browse/SPARK-526780
Mac - Voicemail: KN: No visual/announced instructions on how to focus action buttons for list item
https://jira-eng-gpk2.cisco.com/jira/browse/SPARK-526788
Web - Voicemail: KN: No visual or announced instructions on how to focus the action buttons for each
https://jira-eng-gpk2.cisco.com/jira/browse/SPARK-526742

I have a few minor comments apart from that LGTM.

Can you please provide the description of this PR?

Can you please provide the description of this PR?

added the description


[StepConnector] state styling doesn't work with 'Alternative Label'

[x] This is not a v0.x issue.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Expected Behavior

StepConnector should receive 'state' classes (eg 'active', 'completed') based on the status of the parent Step
Current Behavior

The 'state' classes are not applied to the StepConnector when the Stepper uses the 'alternativeLabel' prop...but remove the 'alternativeLabel' and voila - it works!
Steps to Reproduce

https://codesandbox.io/s/64k4mrz1qz

Context

Your Environment

Tech
Version

Material-UI
v1.?.?

React

Browser

TypeScript

etc.

Nice find. The hole logic and markup is completely changed when using alternativeLabel. I wonder if it isn't simpler to wrap the Step and Label into one container and change flex-direction depending on alternativeLabel.

@jmaloon We should be able to address this issue the same way #13023 was solved. In the Step component, we can forward the state properties. Do you want to work on it?
@eps1lon I doubt we can make the implementation any simpler, but it's always a good idea to give it a try based on the intuition we can.

@oliviertassinari thanks for chiming in.
Sure I would love to contribute, been using the library for some time and really impressed. I'll create a PR.

@oliviertassinari  @eps1lon 'alternativeLabel' renders the Connector after the step, whereas a normal stepper renders the Connector before the step. Therefore to achieve a consistent styling with the baseline Stepper I pass the 'prevStepState' to the 'alternativeLabel' Connector.
I made the changes in PR #13130. I didn't quite figure out how to run all the tests so I didn't add any test cases. Let me know your thoughts. Thanks.


Fixes environment url and adds markdown syntax highlighting

I also added a suffix "_ENV_VAR" for the API_TOKENs in the code examples for better understanding.
PS: The syntax highlighting does not change the appearance in GitHub, but it helps when editing locally in vscode! ; )

Why not standardise on the syntax in environments.yaml and use .Env consistently?
my_environment:
  - name: "my_environment"
  - env-url: "{{ .Env.MY_ENVIRONMENT }}"
  - env-token-name: "{{ .Env.TOKEN_MY_ENVIRONMENT }}"

Why not standardise on the syntax in environments.yaml and use .Env consistently?
my_environment:
  - name: "my_environment"
  - env-url: "{{ .Env.MY_ENVIRONMENT }}"
  - env-token-name: "{{ .Env.TOKEN_MY_ENVIRONMENT }}"

Because the env-token-name property is implemented in a way to serve as a usability improvement. The actual token is read from the environment variable as soon as something is applied to an environment and not before that. This ensures, that:

a dry-run doesn't need any tokens
you only need to provide the token for the environment you want to apply the configs to

E.g.: in your environments.yaml you defined 2 environments (dev and prod) and you just want to apply the configs to dev. To do that, you don't need to have the token for prod set as an environment variable.
@Dynatrace-Adam-Gardner I hope that makes sense?
But that is in fact a valid point - we need to add this to the documentation. After all, how should a user know this, if its not documented somewhere. I just created #51 for that.

I'm quiet new to this game... 😄
This is my current state on my local machine:

My attempt would be:

git rebase -i 75204ce
mark 2 of the 3 commits with 's' to squash them down
assign a new commit message "Fix #41: Fixes environment-url key in README.md"
push the branch and now I'm stuck here:

If you know how to resolve this... that would be awesome 😁

I got it... with a little bit of help by the '+' sign 😉
git push origin +branch

Now it should be fine 😄
Thanks Dieter for the instructions 👍

Sure, no problem. Thank you for your contribution - this is awesome!


Make sign out flow consistent with other services

Context
Clicking sign out takes the user to the sign out page, in other services we redirect the sign out flow to the sign in page after resetting the session.

Changes proposed in this pull request
Redirect the user to the sign in page on sign out.

Guidance to review

Link to Trello card
https://trello.com/c/KNNAuZJc/1909-sign-out-flow-is-inconsistent

Checklist

[x] Attach to Trello card
[x] Rebased main
[x] Cleaned commit history
[x] Tested by running locally

 Sign out flow is inconsistent


Deployment section: Instructions on how to setup a subdomain in vercel

The only problem I experienced is when I deployed the site, I forgot swapping my domain from the wordpress instance to Frontity meant that the wp-source plugin would break! Instructions on how to setup a subdomain in vercel might be worth mentioning in the deployment section. I’ve now got wp.benwrightdev.com for the wordpress source.

https://community.frontity.org/t/personal-portfolio-site/2066

Solved by #104
Thanks @ben-wright !


Bug: Segmentation Fault when accessing server via client

Describe the bug
Using ucall client to call a ucall server is causing the server to seg fault.
Attaching coredump info
ucall-segfault-coredump.log
Steps to reproduce
Server:
# https://ashvardanian.com/posts/abusing-vector-search/#multi-index-lookups
from usearch import Index
from uform import get_model
from ucall.rich_posix import Server
from PIL import Image
import numpy as np

server = Server()

index_images = Index(ndim=256)
index_texts = Index(ndim=256)
index_coordinates = Index(metric='haversine')

model = get_model('unum-cloud/uform-vl-english')

@server
def recommend(text: str, image: Image, latitude: float, longitude: float) -> list[int]:
    vector_image = model.encode_image(model.preprocess_image(image)).numpy()
    vector_text = model.encode_text(model.preprocess_text(text)).numpy()
    vector_coordinate = np.array([latitude, longitude], dtype=np.float32)

    similar_images, _, _ = index_images.search(vector_image, 30)
    similar_texts, _, _ = index_texts.search(vector_text, 30)
    similar_coordinates, _, _ = index_coordinates.search(vector_coordinate, 100)

    # If a listing is physically close and matches text or image, it must be first.
    similar_contents = set(similar_images) + set(similar_texts)
    return [label for label in similar_coordinates if label in similar_contents]

server.run()

Client:
from ucall.client import Client
from PIL import Image
import geocoder
import json

client = Client()

text = "mountain top"
image = Image.open("/mnt/900/input/landscapes/processed-2/0f9wmnta7ik91+768x768.jpg")

[lat, long] = geocoder.ip('me').latlng

response = client.recommend(text=text, image=image, latitude=lat, longitude=long)

print(response.json)

Expected behavior
Expected to get a response back from the server, or an error to try to isolate the problem. Maybe my code is not accurate?
Thank you
UCall version
0.4.0
Operating System
archlinux
Hardware architecture
x86
Which interface are you using?
Official Python bindings
Which implementation are you using?
POSIX
Contact Details
<EMAIL_ADDRESS>Is there an existing issue for this?

[X] I have searched the existing issues

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Thanks for the report and the dump! Is it supposed to be from PIL import Image or from PIL.Image import Image? First is a module, and last is a class: <class 'PIL.Image.Image'>.

It may affect the type-inference inside Server, which causes later SEGFAULT in Torch. It may help to remove a few pieces to check which part fails.

Yes setting the Image to the correct Image class seemed to have fixed it. Thank you

@ishkhan42 Can we add an assert for unsupported types to prevent such problems in the future?


garage: unbreak on aarch64-darwin

Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[x] aarch64-darwin

[x] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 208722 run on aarch64-darwin 1

@Artturin did you test it on aarch64-darwin? I didn't approve it.
I wanted to test it more thoroughly because we had tests not passing on the nix-community remote builder. :/

I didnt but the ofborg build passed

I didnt but the ofborg build passed

The ofborg passed too on the previous PR but we could not reproduce it on the remote builder too, so I just hope this is a "environment problem" on the remote builder anyway

for reference these are the failures
running 22 tests
test k2v::simple::test_simple ... FAILED
test k2v::batch::test_batch ... FAILED
test k2v::errorcodes::test_error_codes ... FAILED
test admin::test_admin_bucket_perms ... FAILED
test k2v::item::test_item_return_format ... FAILED
test k2v::poll::test_poll ... FAILED
test bucket::test_bucket_all ... FAILED
test k2v::item::test_items_and_indices ... FAILED
test s3::list::test_listmultipart ... FAILED
test s3::list::test_listobjectsv1 ... FAILED
test s3::list::test_listobjectsv2 ... FAILED
test s3::multipart::test_uploadlistpart ... FAILED
test s3::multipart::test_uploadpartcopy ... FAILED
test s3::objects::test_deleteobject ... FAILED
test s3::objects::test_getobject ... FAILED
test s3::objects::test_putobject ... FAILED
test s3::simple::test_simple ... FAILED
test s3::streaming_signature::test_create_bucket_streaming ... FAILED
test s3::streaming_signature::test_put_website_streaming ... FAILED
test s3::streaming_signature::test_putobject_streaming ... FAILED
test s3::website::test_website_s3_api ... FAILED
test s3::website::test_website ... FAILED

failures:

---- k2v::simple::test_simple stdout ----
thread 'k2v::simple::test_simple' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- k2v::batch::test_batch stdout ----
thread 'k2v::batch::test_batch' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- k2v::errorcodes::test_error_codes stdout ----
thread 'k2v::errorcodes::test_error_codes' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- admin::test_admin_bucket_perms stdout ----
thread 'admin::test_admin_bucket_perms' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- k2v::item::test_item_return_format stdout ----
thread 'k2v::item::test_item_return_format' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- k2v::poll::test_poll stdout ----
thread 'k2v::poll::test_poll' panicked at 'Command exited with code 1: Could not assign garage node layout', src/garage/tests/common/ext/process.rs:46:31
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

---- bucket::test_bucket_all stdout ----
thread 'bucket::test_bucket_all' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- k2v::item::test_items_and_indices stdout ----
thread 'k2v::item::test_items_and_indices' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- s3::list::test_listmultipart stdout ----
thread 's3::list::test_listmultipart' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- s3::list::test_listobjectsv1 stdout ----
thread 's3::list::test_listobjectsv1' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- s3::list::test_listobjectsv2 stdout ----
thread 's3::list::test_listobjectsv2' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- s3::multipart::test_uploadlistpart stdout ----
thread 's3::multipart::test_uploadlistpart' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- s3::multipart::test_uploadpartcopy stdout ----
thread 's3::multipart::test_uploadpartcopy' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- s3::objects::test_deleteobject stdout ----
thread 's3::objects::test_deleteobject' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- s3::objects::test_getobject stdout ----
thread 's3::objects::test_getobject' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- s3::objects::test_putobject stdout ----
thread 's3::objects::test_putobject' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- s3::simple::test_simple stdout ----
thread 's3::simple::test_simple' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- s3::streaming_signature::test_create_bucket_streaming stdout ----
thread 's3::streaming_signature::test_create_bucket_streaming' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- s3::streaming_signature::test_put_website_streaming stdout ----
thread 's3::streaming_signature::test_put_website_streaming' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- s3::streaming_signature::test_putobject_streaming stdout ----
thread 's3::streaming_signature::test_putobject_streaming' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- s3::website::test_website_s3_api stdout ----
thread 's3::website::test_website_s3_api' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

---- s3::website::test_website stdout ----
thread 's3::website::test_website' panicked at 'Once instance has previously been poisoned', src/garage/tests/common/garage.rs:215:19

failures:
    admin::test_admin_bucket_perms
    bucket::test_bucket_all
    k2v::batch::test_batch
    k2v::errorcodes::test_error_codes
    k2v::item::test_item_return_format
    k2v::item::test_items_and_indices
    k2v::poll::test_poll
    k2v::simple::test_simple
    s3::list::test_listmultipart
    s3::list::test_listobjectsv1
    s3::list::test_listobjectsv2
    s3::multipart::test_uploadlistpart
    s3::multipart::test_uploadpartcopy
    s3::objects::test_deleteobject
    s3::objects::test_getobject
    s3::objects::test_putobject
    s3::simple::test_simple
    s3::streaming_signature::test_create_bucket_streaming
    s3::streaming_signature::test_put_website_streaming
    s3::streaming_signature::test_putobject_streaming
    s3::website::test_website
    s3::website::test_website_s3_api

test result: FAILED. 0 passed; 22 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.07s

looks like they're due to a impurity or something


From<UnderlyingType> and TryFrom<UnderlyingType>

Writing some_num.try_into()? can be useful, I noted this somewhere and forgot about it, so I don't have a direct usecase.
Most likely macro generated code would need less typing and casting?
Oh right, it could replace try_new, too.
That's actually the point. The ux crate does that as well and it keeps the interface clean.
From<UnderlyingType> would replace new then.
Of course this would need deprecation notes or if that's too extreme we can use feature gates here again (I hope not)

The reason I avoided this for now is because then it's no longer const.
But TryFrom would be possible to add on top of try_new(). The downside then is that you have multiple ways of doing the same thing

TryFrom can be used generically, which is a different thing.
Another argument for not providing it would be that users should be nudged in the right direction and since it's not const yet, I agree that we should not provide it unless a usecase crops up.


Portfolio: Add contact form and pair programing

for this task I have used:

GitHub
collaborate with a person
Html and CSS

thanks for all your advice and help


Replace constant with variable in DWORD

Fixes #244

Docs Build status updates of commit de8d0e8:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/console-virtual-terminal-sequences.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Remove redundant code

I see a lot of duplication throughout the project, I won't make a PR later.
It might increase performance if we remove thing like:

And especially the implementation of this bothers me a lot:

I think we should just scrap it and do:

Any help wouldn't be appreciated!

I think removing

would break someones workflow. We should stick to

and add this

to ensure compatibility with older versions.
Maybe

would help remove some redundancy in the codebase.

I'm deeply concerned about preserving coding style. Use tabs instead of spaces. Also, how about this? See my next comment:

Agreed?

@rolandixor no

@rolandixor now that's just really offensive..


Updates related to final DataCloud workshop

Fixed pathing issues when deployed online
Included new example pipeline template
Added documentation about new pipeline example
Updated documentation under /examples/

I could wait for the multi-user feature before merging.


Migrate GHA deployment workflow to ArgoCD triggering

Existing GitHub Actions workflow utilizing Helm upgrade command should be migrated to trigger ArgoCD sync.
The workflow will need to update relevant files in the GitOps repository.
Pushing the changes will trigger ArgoCD to synchronize the application.
part of: https://github.com/bcgov/DITP-DevOps/issues/158#issuecomment-2145969763

Completed with this PR: https://github.com/bcgov/vc-authn-oidc/pull/564


How to use

Hi Patrik
I'm the author of klive, a recent Zx spectrum emulator that is at a stone from working. I guess my z80 is not perfect. The fail occurs now in the keyboard routine.
Reading your tests, I caould not figure how to use them. Could you write a little doc that descrbes how to integrate your tests ?

Edit, searching more on z80 tests, I've found this use of your project. https://spectrumcomputing.co.uk/forums/viewtopic.php?t=752
And looking more at your code, I've found "Return to BASIC".
So I guess now that tests can only be ran from Basic after building the test.
I cannot thus use this because the emulation is not perfect enough.
Best regards

I guess it is a different Klive than this one, right?
Well, the tests are in the TAP format, which is the most basic tape format for ZX spectrum. If your emulator can't load TAPs yet, I suggest you create a snapshot in any already existing emulator and use that. Any snapshot type would work, but of course SNA is the easiest to implement on your side. It's flawed in many ways, but for this test it will do just fine. Best point at which to create the snapshot would be right when the machine code is executed at address 32768, so you don't have to worry about BASIC at all.
However, if your emulator can't run BASIC yet, definitely start with the test for the documented instructions first, but chances are that even the test itself will not work as it needs at least rudimentary functionality of many instructions in the first place.

Yes, my klive is there https://github.com/hsaturn/klive
This emulator is not yet capable of reading input (TAP SNA etc).

Z80 nearly ok (boot with red lines to the prompt, then stop to work (bad branch).
Basic is probably working at 95% (buggy because very few Z80 instructions emulation gives incorrect flags)
Screen is ok
Sound in/out is not

Thanks for SNA suggestion. This will be the first I'll implement right after emulation is good enough.
Maybe I'm dreaming :-) but the ideal test suite would give a simple api, run only one instruction and check output. Because having tests that need the Z80 to run seems strange to me.
-> test need z80 to run
-> z80 needs test to be adjusted
I'd prefer an API (c/c++) such as
bool runSingleInstruction(Registers &registers, byte* instruction, uint8_t buffsize)
And the z80 test could be
for each Z80 instruction do
if not runSingleInstruction ( registers, instruction ) or registers != expected_registers
bad ++
done
... but ... i'm dreaming :-D

Because having tests that need the Z80 to run seems strange to me.

Well, that was the only way to make sure it runs identical to real machines, as you can take the tap, load it to into the real machine and check the results. This is in fact how the CRCs in test vectors were created in the first place.
Technically, you could take the test vectors and write a C program which would work the way you describe. But I guess it's still much easier to get the rudimentary Z80 emulation working. The test loop itself doesn't use any fancy instructions nor flags AFAICR.

I can agree that rudimentary loop is easy to write, but printch has to work too, so this implies the screen emulation, memory emulation and maybe i/o emulation (for example bank switching). Sounds to me a lot harder. In addition this is coupled with a certain hardware. I want to test z80 alone, not zx spectrum, nor zx81 or amstrad, trs80 etc...
My rudimentary loop works very well (unless I couldn't see the red strippes during Zx boot, nor the initial K prompt). But I cannot run yet unit tests, even if the whole emulation is very close to work.
I'm trying to find something more suitable to my needs. But it's not easy.
I've found lot of tests that run on 99.9% working emulation. These tests are very sharpen tests that in fact does not test, but verify if the CPU implements all and all features. I see them more as a check of the system trying to find some failures.
I need since the begining a test that can run from 0% to 100%. (Ok, today, it is more from ~97%), but during the first weeks of the project, I would have need a test suite capable to run from a 0% implemented emulation.
Once my emulation stable enough, I'll go back here to use these tests.
Thanks
Best regards.

Found this:
This z80 test does exactly what I want https://www.jsdelivr.com/package/npm/z80-test?nav=config&path=src
Unfortunately, it is not written for c language.

This seems to looks like what I'm searching for
https://github.com/floooh/chips-test/blob/1378469a3e9ed7144e73ecdef25f3619044da175/tests/z80-fuse.c

rst 16

Hmmmm, yes !!! you're so right ! I did not remember that rst 16 was a char output to screen.  This was 40 years ago :-D I was coding in asm with mons and gens now I remember the rst 16.
As Klive is based on "plugins" this is trivial for me to write an alternate output window with a.
So last point is: where are the SNA's you are talking about. I can only see .asm in your repo ?
I really think the current state of my cpu matches the needs of your z80 tests. neitherless it's easy to fill the gap if needed.
I suggest you to convert this 'issue' to a discussion (I would have made it a discussion since the beginning but only 'issue' tab is available).
My opinion has changed with that reply: I can use your tests and do not have to search for an alternative.
Thanks a lot for your time.
Above this story, the goal of Klive is to provide an IDE around the spectrum that'd allow to develop (games probably ?) in C language (I'd prefer c++ but it seems that c++ is a very hard goal).
The edition / compilation will be made with the IDE itself, with all the speed, power and capabilities of modern computers then execute / debug on the emulation itself. I have the emulation to be perfect enough for this next step.

BTW, to save some time, you don't actually even have to bother with SNA - if you compile your own version with the print rerouted to out, you can just load the binary blob of the main test object itself to 32768 and let your emulator start from there (set SP to 32768, too).

Yes, the one from http://www.xl2s.tk/ is the one (as mentioned in the other issue where someone asked about it).
The mktap is from Jan Bobrowski's test suite, used to build his tests. You can find the link on his QAOP page: https://torinak.com/~jb/qaop-java/.
For your use case however you don't need the TAP at all - just load the binary file created by sjasm directly at 32768 and you are good to go.

Thanks a lot. I think these two links should appear in the README.md under build section or something like that.
-> I could not find any binary file generated by sjsam you are mentionning.
But, because I should have find one, I've re-read the makefile and found that the bin file could not be generated because it was deleted by the makefile itself !
So I just had to
make z80full.out

To rebuild it.
-> Maybe this could appear in a README.md ?
Thanks. Sorry to have bothered you, I'm an expert in c++ not in z80 since years.
I have all what I need now.


Make predictions using only for CPU

We appreciate you go through Apollo documentations and search previous issues before creating an new one. If neither of the sources helped you with your issues, please report the issue using the following form. Please note missing info can delay the response time.
System information

OS Platform and Distribution (e.g., Linux Ubuntu 18.04):
Apollo installed from (source or binary):
Apollo version (3.5, 5.0, 5.5, 6.0,7.0,8.0):
Output of apollo.sh config if on master branch:

Steps to reproduce the issue:

Please use bullet points and include as much details as possible:

Supporting materials (screenshots, command lines, code/script snippets):
May the prediction module make predictions using only for CPU at runtime? What is the command to compile the module?
Thank you!

No, Prediction need deep learning model for inference, so it deps on pytorch, use cpu can also work, but it need modify the torch::Device(torch::kCUDA)


Terminal Styling

[ ] we should use the same rendering as for the chrome devtool console
[ ] the horizontal drag bar is too large (that because of the collapse button). an idea: setting the bar height as minimun as possible and put the collapse button in the upper-right corner of the console.
[ ] when resizing, the drag bar takes the entire browser width...
[ ] keep history of execution, arrow up/down should propose last executed script
[ ] clear the logs
[ ] filter (any content).

@ninabreznik
I think next to the re-styling of the terminal, there needs to be a "ui concept & design" for the terminal bar to contain:

a clear logs button
a select dropdown to select either "JS" or "Transaction"
an filter input field to show only selected messages that contain/match what the user writes
(maybe a way to have multiple terminal TABs)

done


Unexpected NaN in jax.jacfwd of polynomial with variable coefficients

Description
In the following code, I define a polynomial function with fixed coefficients, and one with coefficients that can be provided as an argument.
import jax
import jax.numpy as jnp

# Define a quadratic polynomial with fixed coefficients
f_fixed = lambda x: x**0 + x**1 + x**2

# Define a polynomial with variable order and coefficients
def polynomial(x, cs):
    powers = jnp.arange(cs.size)
    monomials = x**powers
    y = jnp.sum(cs * monomials)
    return y

order = 2
cs = jnp.ones(order + 1)  # matches `f_fixed` above
f = lambda x: polynomial(x, cs)

# Evaluate each polynomial and their derivatives at `x = 0`
for x in [1., 0.]:
    print('x = {}'.format(x))
    print('-------')
    print(f_fixed(x), ',', jax.jacfwd(f_fixed)(x))
    print(f(x), ',', jax.jacfwd(f)(x))
    print()

The output of this code is:
x = 1.0
-------
3.0 , 3.0
3.0 , 3.0

x = 0.0
-------
1.0 , 1.0
1.0 , nan

The functions and their derivatives match as expected at x = 1, but I get a NaN for the derivative of the second implementation at x = 0. This is unexpected to me, but perhaps there is nuance I'm failing to see. Any ideas?
What jax/jaxlib version are you using?
jax v0.4.4, jaxlib v0.4.4+cuda11.cudnn86
Which accelerator(s) are you using?
CPU, GPU
Additional system info
Python 3.10.4, Ubuntu 22.04
NVIDIA GPU info
No response

Thanks for raising this! It's a bug.
Luckily it's one I think we know how to fix: this is probably #14397, and this comment in the thread describes our fix plan.

Is this blocking your work, i.e. do you need a workaround?

Ah ok, sorry for missing that issue, and thank you!

@mattjj currently yes it is blocking me. I have more complicated code that does polynomial spline fitting and evaluation that this bug has broken unfortunately.

One workaround is to replace x ** n with an int_pow(x, n), which is a function with a custom_jvp specialized to the case where n is an integer:
import jax
import jax.numpy as jnp

# Define a quadratic polynomial with fixed coefficients
# f_fixed = lambda x: x**0 + x**1 + x**2

@jax.custom_jvp
def int_pow(x, n):
  return jnp.where(n == 0, jnp.ones_like(x), jnp.power(x, n))

@int_pow.defjvp
def int_pow_jvp(primals, tangents):
  x, n = primals
  x_dot, _ = tangents
  jac = jnp.where(n == 0, jnp.zeros_like(x_dot), n * int_pow(x, n - 1))
  return int_pow(x, n), jac * x_dot

f_fixed = lambda x: int_pow(x, 0) + int_pow(x, 1) + int_pow(x, 2)

# Define a polynomial with variable order and coefficients
def polynomial(x, cs):
    powers = jnp.arange(cs.size)
    monomials = int_pow(x, powers)
    y = jnp.sum(cs * monomials)
    return y

order = 2
cs = jnp.ones(order + 1)  # matches `f_fixed` above
f = lambda x: polynomial(x, cs)

# Evaluate each polynomial and their derivatives at `x = 0`
for x in [1., 0.]:
    print('x = {}'.format(x))
    print('-------')
    print(f_fixed(x), ',', jax.jacfwd(f_fixed)(x))
    print(f(x), ',', jax.jacfwd(f)(x))
    print()

Does that work for you?

Looks like it should work -- I'll give that a shot. Thanks for the quick response!

Great! Let us know if it doesn't work. In the meantime, I'll close this issue so we can consolidate further discussion on the other thread. Thanks again for raising it.

We finally fixed #14397 btw!

Awesome -- thanks for the fix and for following up on this thread!

Sorry it took so long. We'll be faster on the next one...


Enchanter cycling through levels in input and not in output.

Issue Description:
Follow up on conversation on Discord. The issue is actually a lot simpler than I remembered - when looking up an enchanted book recipe, the output book will stay the same level you pressed R on, while the inputs will cycle from level 1 to the maximum.

While searching for uses for items used to enchant, or uses of the enchanter, cycling behaves properly.
What happens:
JEI cycles through the amounts of input items that correspond to different enchantment level in the output book, while the output book and its level stay the same.
What you expected to happen:
I expected that JEI wouldn't cycle through the amounts of the inputs while keeping the output the same.
Steps to reproduce:

Install JEI, EnderCore, and Ender IO
Press R on said enchanted book with an enchanter recipe.

Affected Versions (Do not use "latest"):

EnderIO: 5.0.44
EnderCore: 0.5.57
JEI: <IP_ADDRESS>9
Minecraft: 1.12
Forge: <IP_ADDRESS>38
SpongeForge? No
Optifine? No
Single Player and/or Server? Both

For clarification the text changes.. the actuall item doesn't?

From what I saw the inputs (the slot which decides the enchantment) and the output slot cycle independent from each other when looking up all recipes.
And the output stays fixed when looking up a specific enchant but the input still cycles.
I forgot if the XP and lapis costs change too or not.

Yes, JEI does not have support for cycling recipes, only for cycling single slots. The recipes we provide have slots that cycle in sync because they have the same number of items in them, but as soon as JEI modifies one of those lists, that breaks.
The issue here is that we need to implement JEI's focus handling ourselves for each and every recipe, and that it cannot be done in the recipe itself (there it'd be easy) but on the already processed data that goes towards the rendering. The major recipes have this in place, but as long as it keeps breaking there, the "smaller" recipes don't get done...

Matthias, he XP and lapis costs do change, together with the material costs. I haven't found that when looking up all recipes the outputs and inputs change independently from one another in my testing, but I believe during play a few weeks ago I have encountered that.
Tyler, the XP cost, material cost and lapis cost all cycle together with one another, and normally it's also together with the output item, except when looking up a recipe for a specific book. However, as Matthias said there could be cases where both cycle independently of one another that I haven't found in my testing yesterday.

Why do people like to always chat along in those tickets where we know exactly what's happening? ;) ;)

because people are curious and have ideas or exerience with something in particular on their own
and sometimes it even helps :P

Note that this is not a final fix, just a workaround to prevent invalid recipes to be shown. For now, we'll just ignore the focus and show all variants, keeping cycling through the different levels of the shown enchantment.


Dump stuff in our own console window

https://stackoverflow.com/questions/1094366/how-do-i-write-to-the-visual-studio-output-window-in-my-custom-tool
Let's figure out if it is worth to build an extension for VS to be able to dump information properly colored and formated.

I just took a run at this and the bits referenced in the SO answer are not compatible with iOS or Android, and therefore won't even compile.

Hahaha, so it seems that the libs required for us to do this are not compatible with iOS and Android?
:(

Closing - out of scope for this library/project.


Kubelet daemonset not deployed?

Hi ,
I'm playing around upgrading a self-hosted Kubernetes cluster, deployed with Matchbox.
I already upgrade the kube-apiserver, kube-controller-manager and kube-proxy to a new version,
but I can't do it with kubelet,  I couldn't find it as a daemonset or deployment.
Is there already another way to do it that maybe am I missing ?

Mar 02 20:03:35 node1.example.com bootkube-start[1375]: [  538.972665] bootkube[5]: I0302 20:03:35.679619       5 log.go:19] daemonset "kube-apiserver" created
Mar 02 20:03:35 node1.example.com bootkube-start[1375]: [  538.973415] bootkube[5]:         created          kube-apiserver daemonset
Mar 02 20:03:35 node1.example.com bootkube-start[1375]: [  539.162182] bootkube[5]: I0302 20:03:35.869168       5 log.go:19] daemonset "kube-flannel" created
Mar 02 20:03:35 node1.example.com bootkube-start[1375]: [  539.162725] bootkube[5]:         created            kube-flannel daemonset
Mar 02 20:03:35 node1.example.com bootkube-start[1375]: [  539.184866] bootkube[5]: I0302 20:03:35.891783       5 log.go:19] daemonset "kube-proxy" created
Mar 02 20:03:35 node1.example.com bootkube-start[1375]: [  539.185538] bootkube[5]:         created              kube-proxy daemonset
Mar 02 20:03:35 node1.example.com bootkube-start[1375]: [  539.241075] bootkube[5]: I0302 20:03:35.948083       5 log.go:19] daemonset "checkpoint-installer" created
Mar 02 20:03:35 node1.example.com bootkube-start[1375]: [  539.241647] bootkube[5]:         created    checkpoint-installer daemonset

Self-hosted Kubernetes clusters support running the kubelet on the host or as a daemonset (with a fallback on-host kubelet).
The docs here use the on-host Kubelet. There are some known issues with using the daemonset kubelet (rel. kubectl proxy commands) so we currently recommend the on-host kubelet until issues are fixed.
That means, you won't find a kubelet daemonset until that flag is added back again. To upgrade the kubelet, you'll need to connect to each node, edit the kubelet systemd unit to use the next version (there is an Environment File), and restart each one. Its a manual process which is why we've invested in getting each part of the control plane self-hosted over time.

A note in the upgrade document would be useful, you're right that the doc is out of sync with the present.

Make sense thanks @dghubble,
So I'm having a look at the kubelet-wrapper /etc/systemd/system/kubelet.service and the environment file points to
EnvironmentFile=/etc/kubernetes/kubelet.env

Just changed the hyperkube version there to a new one, I also did a rkt stop of the current hyperkube container, and couple of minutes later the rkt container was running again with the new hyperkube version and worked fine in two of the nodes.
Not sure if this is what you meant with the "restart of each one",
I'm going to replicate the same on the rest of the nodes.
One thing I'm seeing is the kube-flannel and kube-proxy are stuck on "Terminating" status,

I was using my corporate user account when I created the issue, ignore that.

The systemd unit happens to ExecStart a rkt run process, but that's just a detail. You can restart it like any other system service actually.
systemctl restart kubelet

By flannel and proxy being "stuck", how long are we talking here?

Allright, Just tested going from 1.5.2 to 1.5.3 it worked pretty well updating all the components and manually updating the kubelet on each node, while running 50 pods, updating the images and so on.
Errors related with flannel and proxy being stuck I think are related with the fact I was trying something crazy like 1.5.2 to 1.6.0-beta.
Thanks

Nice. Yeah, bootkube is still testing the 1.6 beta and migration so mileage may vary.


RSDK-7354 Remove chunk flags from decoder

Description
Even though the  AV_CODEC_FLAG2_CHUNKS is intended to be used when sending NALs into FFmpeg decoder - the functionality is not well-tested and is flaky when recovering from errors. See this issue that is 6 years old!
~This PR adds a filter for SPS and PPS NALs to prevent no frame! log spam. We can safely skip these as we fill the decoder with SPS and PPS before accepting RTP packets.~
This PR packs SPS, PPS, and IDR frame NALs together before sending to the decoder. Also removes initial SPS/PPS setters and adds wait for iFrame when reading from h264 stream.
Testing

Changing between h264 profile levels

h264b -> h264h ✅
h264h -> h264b ✅
h264 -> h264h ✅
h264h -> h264 ✅
h264 -> h264b ✅
h264b -> h264 ✅

Changing between h264->h265, h265->h264 ✅

TODO:

Figure out if SPS, PPS and IDR NALs are guaranteed to be grouped into a single AU from the gortsplib rtp decoder
Get it working from mediamtx/fake-cam streams

@nicksanford Closing this PR. Equivalent functionality included in https://github.com/erh/viamrtsp/pull/24


use mermaidAPI

mermaid now has an offline render that directly returns a SVG image. By using it, we could be able to remove all the dependencies on PhantomJS and make the module a lot more simpler and faster :-)

I do not think so, that API assumes it runs in browser (or equivalent) which does heavy lifting in svg rendering. It is not replacing mermaidCLI


fix(createtestfromscenario): fix unique naming of scenarios derived from examples

When multiple 'Examples:' tables are given, the counter just resets to 1. This change fixes this
behavior so that all examples are unique.

I've checked out this PR and poked around. This seems to work as intended and includes essential tests. This change makes sense from my perspective.
If @lgandecki agrees with this change this can be merged.

I've resolved the conflicts. Added a new Jest test for checking if tag filtering still works.

@MateuszNowosad, I've resolved the conflicts. Added a new Jest test for checking if tag filtering still works.

@MateuszNowosad, could you plase check this PR?

@MateuszNowosad , @lgandecki , I got 3 PRs open now. Could you please check them?

@rkrisztian Sorry for the wait but @lgandecki is on vacation right now and I'm swamped with work. I will try to check them on the weekend but I don't promise anything.

@rkrisztian, I tried running the tests and they passed, but your newly added tests also seems to pass if I revert your new implementation, so what are they really testing?

@rkrisztian, I tried running the tests and they passed, but your newly added tests also seems to pass if I revert your new implementation, so what are they really testing?

You might have cought some bug in the test code then. :( I should have added negative tests, I guess. I can check and fix this if you prefer but give me some time then, and I saw you also added tests in your PR https://github.com/TheBrainFamily/cypress-cucumber-preprocessor/pull/627, and testing the same thing twice is probably not a good idea so maybe we should discuss. :)

Due to personal reasons, the previous maintainers of this package are stepping down and handing the reigns over to me, a long-time contributor to the project and a user of it myself. This is a responsibility I'm very excited about. Furthermore, I'd like to thank @lgandecki ++ for all the work that they've done so far.
Read more about the transfer of ownership here.
The repository has however moved and all outstanding issues are being closed. This is not a reflection of the perceived importance of your reported issue. However, if after upgrading to the new version, you still find there to be an issue, feel free to open up another ticket or comment below. Please make sure to read CONTRIBUTING.md before doing so.


[React-Native]: Combining flexWrap, alignItems & wrap leads to unwanted alignment

Report

[X] I have searched existing issues and this is not a duplicate

Issues and Steps to Reproduce
When margin is added to an item, inside a wrapping container, it should be ignored but it is taken into account during alignItems
Expected Behavior
In the following example the 2 colored square should be in the same spot
Actual Behavior
On the web (using react-native-web it works correctly)
On native, the second square is in the wrong spot cause it is centered inside height + margin instead of just height
i've added opacity to see what's happening
Link to Code
https://snack.expo.dev/@titozzz/yoga-issue-1067
Web:

Native:

Taking the chance to report something else that I noticed when using flexWrap, since it could have the same root cause as the original issue:
I have a horizontal container that uses flexWrap. With two vertical child containers that will have two squares on each. The squares have different heights. If I use space-between in the vertical child containers with flexWrap in the horizontal container, there will be a very weird overflow of the children.

Without flexWrap (expected behavior, works correctly)

    <View style={{ backgroundColor: 'purple', flexDirection: 'row' }}>
      <View style={{ borderWidth: 1, borderColor: 'white', justifyContent: 'space-between' }}>
        <View style={{ backgroundColor: 'red', height: 100, width: 100 }} />
        <View style={{ backgroundColor: 'green', height: 100, width: 100 }} />
      </View>
      <View style={{ borderWidth: 1, borderColor: 'white', justifyContent: 'space-between' }}>
        <View style={{ backgroundColor: 'blue', height: 150, width: 100 }} />
        <View style={{ backgroundColor: 'yellow', height: 150, width: 100 }} />
      </View>
    </View>

With flexWrap (unexpected behavior)

    <View style={{ backgroundColor: 'purple', flexDirection: 'row', flexWrap: 'wrap' }}>
      <View style={{ borderWidth: 1, borderColor: 'white', justifyContent: 'space-between' }}>
        <View style={{ backgroundColor: 'red', height: 100, width: 100 }} />
        <View style={{ backgroundColor: 'green', height: 100, width: 100 }} />
      </View>
      <View style={{ borderWidth: 1, borderColor: 'white', justifyContent: 'space-between' }}>
        <View style={{ backgroundColor: 'blue', height: 150, width: 100 }} />
        <View style={{ backgroundColor: 'yellow', height: 150, width: 100 }} />
      </View>
    </View>

Gentest snippets for both of these:

and

Needs to be checked for repro. When I ran under the current iteration of Yoga playground, it looked like the expected output.
// https://github.com/facebook/yoga/issues/1067

<YogaRoot useWebDefaults={false}>
  <Node style={{ flexDirection: 'row', flexWrap: 'wrap' }}>
    <Node style={{ borderWidth: 1, justifyContent: 'space-between' }}>
      <Node style={{ height: 100, width: 100 }} />
      <Node style={{ height: 100, width: 100 }} />
    </Node>
    <Node style={{ borderWidth: 1, justifyContent: 'space-between' }}>
      <Node style={{ height: 150, width: 100 }} />
      <Node style={{ height: 150, width: 100 }} />
    </Node>
  </Node>
</YogaRoot>


Cannot parse DSC configuration on WMF 4

I have successfully parsed and applied DSC configurations in PS Core on Windows 10 and Server 2016. However, I receive errors on 2012R2 when parsing the DSC configuration. The error is basically coming from https://github.com/PowerShell/PowerShell/blob/master/src/System.Management.Automation/DscSupport/CimDSCParser.cs#L683 because BaseRegistration\\MSFT_MetaConfigurationExtensionClasses.Schema.mof does not exist. If I update the server to WMF5, the parsing works.
Is it expected that DSC configuration parsing work on WMF 4?

/cc @PowerShell/area-dsc


Wrong object deserialization when list initialized in ctor

Here some example:
I have ctor in my class. In constroctor i initialize new list with my own property. When i try to deserialize my property is empty, but in constructor property should be filled.
Some one when fix bug #107 was add new condition in method needReuse - i think problem is here.
https://deck.net/620b9fb89de80b31f2cb24b19214192a
https://dotnetfiddle.net/tuJ2G8
public class Program
{
    public static void Main()
    {

        var msg = new MyClass();
        var str = JsonConvert.SerializeObject(msg);
        Console.WriteLine(str);
        var obj = JsonConvert.DeserializeObject<MyClass>(str);
        Console.WriteLine(obj.Items.Parent); // should be "123"
    }

    public class MyClass
    {
        public MyClass()
        {
            Items = new MyList();
            Items.Parent = "123";
        }

        public MyList Items {get;set;}
    }

    public class MyList : List<string>
    {
        public string Parent {get;set;}
    }
}

Fixed and merged! The fix will make it live the next Bridge.Newtonsoft.Json package release!


Question about downloading Fanbox covers

Does the downloadCoverWhenRestricted option require that the downloadCover one be set to True in order for the former to work? I've never been able to download a restricted post's cover without doing so, and that's a problem because an unrestricted Fanbox post's cover is AFAIK always a cropped version of one of the images contained within post, so I'm not interested in those.

yes, both flag need to be set to true.


Shortcircuit request-response

We have created a request transformer for identity server allowing reference tokens to be converted to self containing tokens. The introspection endpoint is called on request and after this point it is already known if the access token is still active or has expired. It would be great if we could somehow return a response based on this outcome without having to send the request to the backend services. This could save a lot of "useless" requests to the backend.

You can serve the response before calling into the forwarder logic.
See a "Send an immediate response" example. You have full access to the request to decide whether you can skip going to the backend.

This is great! Thank you. Case closed.


Dynamic Assembly loading

Is it possible to dynamically load an assembly from the profiler? I tried to use libcoreclr.so and call some c# code that will perform assembly resolve but it fails to create another domain.

@mjsabby maybe you have some idea.

You cannot directly load an assembly from the profiler by calling into the runtime.
However, you can modify IL, add metadata, etc to existing code such that an assembly is loaded. So for example you could add metadata to the first assembly that is loaded of your program and modify the method being JIt compiled to add code to do an assembly load, etc.
But if you provide more context maybe I can provide a better answer for what you want to achieve. For example I think there is a .Net Core feature called startup hooks or something where you can run some code at startup. I’m not sure of its status but maybe that is also an avenue.

@mjsabby , so i can use AssemblyMetadata.CreateFromFile(String) Method?
And use the metadata being returned.
Startuphook is not supported in net framework.

I'm not aware of any other mechanism then. You'll need to do IL modification.

@mjsabby , I am doing IL rewriting but my problem comes in when i tried to perform IL rewriting for an assembly that is not referenced by the project.

I'm not sure what you mean, how do you encounter this assembly that is not referenced by the project? If you encounter this assembly then by definition something must be accessing this assembly somehow.

I am able to implement this one. This must be set to close

How can I dynamically load Managed assembly in to dotnet.exe from Native coreclr profiler?

@Mahendra95-sys for .net core you need prepend a call to LoadFrom() at the entry point of each of the application.

@kgorro I am trying to Instrument .NET Core web applications that runs on .NET Core 3.1 using CoreCLR Profiler.
I have set the environment values CORECLR_PROFILER , CORECLR_ENABLE_PROFILING  and CORECLR_PROFILER_PATH, where my CoreCLRProfiler dll (CoreCLRProfiler.so)gets attached to dotnet.exe and it is getting the callbacks.
I am able to get all the callbacks,but when i allow injecting the code(ilrewrite) into the Webapplication's method then the app is getting crashed(dotnet.exe gets killed) as it couldnt find the injected function call.
I have created helper assembly(.NET standard 2.0) with the injected functions body and signed it with strong name and installed it in to the GAC. And also used DefineAssemblyRef(),DefineTypeRefByName() and DefineMemberRef() from IMetaDataAssemblyEmit to load assembly and its class methods. And also tried by placing dotnet standard dll in application folder. But the helper assembly is not loaded to dotnet.exe process.
Where should my helper assembly placed..? and
how can I load helper assembly to dotnet process from my native coreclr profiler?

@Mahendra95-sys you need to get the entry point for every module being loaded and once the jitcompilation is triggered you need to identify if the functionToken is the entry point and once it is, inject a call (Assembly.LoadFrom()).

@kgorro Thank you for your answer.I am able to load helper assembly in to dotnet process,But it is Loading only after entry point.
Is there any way to load helper assembly in to dotnet process before entry point? Because I want to Inject methods those are called before entry point.
How can I load helper assembly from ModuleLoadFinished Instead of JitCompilationStarted ? Because I need to call DefineMemberRef() to define Injected methods for every module loaded Instead of every method is loaded.

@Mahendra95-sys , this is just a theory, you can create a dynamic method that will be called in the entry point method to do the assembly loading.

@kgorro, Thanks for your information. Now I can able to load helper assembly successfully.
Can you help me to get Httpcontext of a .net core web request in helper assembly

@kgorro In my .NET profiler, We are using managed assembly C# which is installed in GAC to capture the injected function.
Now we wants to remove from GAC and have it into a directory. Can we have in c# dll into a directory ? How can we load this from c++ code .NET Profiler?

@Durai-cpp yes it is possible and in fact, I am able to make it work, it needs a lot of IL rewriting and I cannot disclose the code for it since it is company property.


Feature request: Schedule ECS container

Is your feature request related to a problem? Please describe.
Currently ECS container are not schedulable through the instance scheduler.
Describe the feature you'd like
For my environment it would also make sense to stop and start container based on schedules provided through the instance scheduler.
I'd love to manage those resources through the instance scheduler as well.

Thanks for submitting this dawk0!
Does your request extend to any specific aws services beyond Fargate or would it make sense to roll your request into the Fargate request you mentioned for better visibility?


API: /scedules/(add, delete) requist body issue

The following requests return status 400 from the Web-UI.
Endpoint: /api/v1/scedules/add
Method: Post
Payload: Line 452 file web-ui/index-wireframe.html
{
  "name": "${new_schedule_name}",
  "start_time": "${new_schedule_start}:00",
  "end_time": "${new_schedule_end}:00",
  "days": "${new_schedule_days}",
  "relay_index": "${new_schedule_relay}",
  "action": "${new_schedule_action}"
}

To Reproduce
Steps to reproduce the behavior:

Deploy a fresh copy of main onto Pi
log into web UI using HTTPS
try and add or delete a schedule

Expected behavior
without console errors, a new schedule should be added and the list of schedules should be refreshed with the newly added entry showing up.
without console errors, an existing schedule should be deleted and the list of scedules should be reflected with the deleted entry being removed.
Screenshots

Additional context
I suspect the issue has to do with the JSON field validation being done or te Webui is adding an invalid character on one or more of the JSON files

fixed the issues were time and name regex match incorrectly on api.cgi


How can I save the rendered images when testing?

Thanks for your excellent work!
How can I save the rendered images when testing? I don't find folder vis in the folder out.

Do you mean using validate.py or train.py? It's saved in out/arah-zju/${your_run}/wandb/${run_id}/files/media/images/

Closed due to inactivity. Feel free to reopen it if the problem persists.


docs: add installation instructions for Arch Linux

Description of change
This PR updates the README.md of cargo-shuttle for expanding the installation section.
I recently packaged cargo-shuttle for Arch Linux and now it can be installed via pacman: https://archlinux.org/packages/community/x86_64/cargo-shuttle/
Also, I added a repology badge for viewing the other distribution packages.
How Has This Been Tested (if applicable)?
-

Cool, thanks! :star_struck: I have a question as a non-arch user, will this package stay synced with our releases or does it need to be manually updated?

I will be updating the packages as new releases are created. In the meantime I will let you know if there are build errors, test failures, bugs etc.


Prefix variables used in WebGL 'get' expressions

Currently, when a get expression is used in a WebGL style, it is assumed that the corresponding variable will be prefixed with a_ in a vertex shader and v_ in a fragment shader.  This is the same prefix that we use internally for attributes and varyings.
Instead, we should separate the user data/variables from the ones used internally by the library.  This was done for var expressions in #12023.  We should do something similar for variables used in get expressions (e.g. prefix with a_prop_ and v_prop_ - or drop the a_ and v_ altogether since in some cases these might not be attributes or varyings and instead might be computed and made available in the shader (as in #14491)).

Done in #15121


Update domains.json

I add "vote.pizzaguild.io": "gpizza.eth",     Line 691
Hi! What is your PR about?

[ ] Add or edit a skin
[x] Add a custom domain for your space
[ ] Add an alias to migrate your space

Hi, I tried to add a custom domain


Utils Folder

Create auth file for log in and a helper file if needed.

Added auth file to helper folder


Added documentation information about Drive server side copies limits

This information has been gathered from #1339 and confirmed by myself.
This fixes #1552

Thank you very much, very useful :-)


Is this correct? - "It is highly recommended that this server is a domain controller."

[Enter feedback here]

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

ID: 06faa428-c7b6-ca5c-271e-3f98d9536d4f
Version Independent ID: 63adb39a-c4fa-92bb-480d-59bee8e2dc24
Content: Azure AD Connect: Prerequisites and hardware
Content Source: articles/active-directory/hybrid/how-to-connect-install-prerequisites.md
Service: active-directory
Sub-service: hybrid
GitHub Login: @billmath
Microsoft Alias: billmath

@jshaole Thank you for your query. We will investigate and update the thread.

@jshaole - It is not best practice to install Azure AD Connect on a DC. Azure AD comes with an SQL express database, which takes up a lot of memory on the machine. Another problem is that the sync server may need to be rebooted for updates, and it’s better not to do that on a DC.
Since there are no doc updates at the moment, We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


sorting repos

@per1234 : yeah I've closed the PR when I saw that the build seemed to use too much resource.
I will resurrect it ;-)
Thanks!!


Update ScalaTest to 3.0.0

Why?
I've started to use the compile matcher to my personal repo's and figured it would be useful for paradise in the future.
This allows the syntax
"@SomeAnnotation def foo() = 1" should compile
"@SomeAnnotation def foo() = 1" should typeCheck
Depending on what is wanted we could have some pretty thorough tests.
Eg.
val annotations = Seq("Identity", "Duplicate")
val defs = Seq("def hello() = 1", "private def hello() = 1",  "inline def hello() = 1")

for {
 a <- annonations,
 d <- def
} {
  a + d should compile
}

At some point in the future after the semantic api I would like to extend this with some sort of intuitive semantic testing framework.
Some possible not very thought out examples....
"@Identity def foo() = 1" afterExpansion annotations shouldBe empty
"@Identity def foo() = 1" afterExpansion syntax shouldBe "def foo() = 1"
"@Identity def foo() = 1" afterExpansion structure shouldBe someStructure
"@Identity def foo() = 1" should expand

LGTM


chore: release 4.7.0

:robot: I have created a release *beep* *boop*
4.7.0 (2021-06-19)
Features

cli add -f option (77972f4)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/mili-project-manager/mili/releases/tag/v4.7.0 :sunflower:


Mac address binding of VPN profile

Is your feature request related to a problem? Please describe.
Right now there is no security against vpn config protection. The same vpn config file can be used in multiple systems without the admin knowing about it.
Describe the solution you'd like
In order to make VPN highly secure, there should be a provision that the VPN detects the MAC address of the laptop first time it is trying to connect and bind the user profile against that mac address, ensuring high security. If a user changes his device, then it should require admin approval to add/remove/replace the new mac address.
Describe alternatives you've considered
OpenVPN has this feature of mac address binding, but I want to work with a Wireguard based VPN and would love to have this feature in Firezone.

Hi @kutsav - what version of Firezone is this?
Firezone 1.0 does not use VPN config files whatsoever. The private keys stay in device memory and are rotated each session, completely eliminating this attack vector.

This is for firezone version 0.7 self hosted.
Is this feature available in latest self hosted version as well?

Firezone 0.7 was end-of-life back in January. Unfortunately this won't work for that version because it requires our custom clients.
Going to close this issue as 0.7 is no longer supported. If you'd like to give 1.0 a try, it is possible to self-host, but be warned that 1.0 is more complex due to all the new features (such as the one mentioned in this ticket).
We offer a free starter account if you'd like to try the cloud-managed version: https://app.firezone.dev/sign_up


translate gremlin console to English

impelement https://github.com/apache/incubator-hugegraph-doc/issues/109
translate gremlin-console.md doc

Thanks for the translation, some tiny comments

Thanks for your review, I will fix it asap


Rational quadratic broken for large powers

The rational quadratic kernel is broken for large values of power:
kern = GPy.kern.RatQuad(input_dim=1, power=1e4)
m = GPy.models.GPRegression(np.random.randn(100,1), np.random.randn(100,1), kern)
m.checkgrad(verbose=True)
m.optimize()

In the gradient check, you can see NaNs, and the optimizer crashes because of LinAlgError. This may happen if the user sets a large value for power or the optimizer just happens to try such a value (as happened to me). Perhaps RatQuad should use RBF (i.e., exponentiated square or squared exponential) kernel definition for large powers if the computation can't otherwise be fixed? That should be practically equivalent if power is very large.

This must be numerical issues and why would you use high powers for the RationalQuadratic kernel, instead of using the RBF, or Matern?

If the optimizer happens to hit such a value.

I have done a quick re-implementation of rational quadratic kernel. Please check its correctness.


Cannot open .XLS file saved in LibreOffice

Cannot read .XLS file saved in LibreOffice ( Libreoffice.org ). Same file saved in MS Office reads without problems. I tried to diagnose the problem and it seems to me that problem is in "extrame/ole2" package, but I'm not sure.
I would be grateful if you help fix this problem.
Thanks.
Examples XLS.zip

fixed, please update xls library and ole2 library to use.


⚠ Bofrost.lu has degraded performance

In aef89a1, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1428 ms

Resolved: Bofrost.lu performance has improved in d81bb61 after 6 minutes.


GetxController deleted at the wrong time

import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return GetMaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      builder: (context, child) {
        return GetBuilder(
          init: MainController(),
          builder: (_) => child!,
        );
      },
      home: HomePage(),
    );
  }
}

class MainController extends GetxController with SingleGetTickerProviderMixin {
  late TabController tabController;

  @override
  void onInit() {
    super.onInit();
    tabController = TabController(length: 2, vsync: this);
  }
}

class HomePage extends StatelessWidget {
  const HomePage({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Home'),
      ),
      body: Column(
        children: [
          Container(
            height: 50,
            color: Colors.black,
            child: TabBar(
              controller: Get.find<MainController>().tabController,
              tabs: [
                Text('Page1'),
                Text('Page2'),
              ],
            ),
          ),
          Expanded(
            child: TabBarView(
              controller: Get.find<MainController>().tabController,
              children: [
                HomeSubPage(
                  id: '001',
                  color: Colors.red,
                ),
                HomeSubPage(
                  id: '002',
                  color: Colors.yellow,
                ),
              ],
            ),
          )
        ],
      ),
    );
  }
}

class HomeSubPageController extends GetxController {}

class HomeSubPage extends StatelessWidget {
  const HomeSubPage({
    Key? key,
    required this.id,
    required this.color,
  }) : super(key: key);

  final String id;
  final Color color;

  @override
  Widget build(BuildContext context) {
    return GetBuilder(
      init: HomeSubPageController(),
      tag: id,
      builder: (controller) => Container(
        color: color,
        child: Center(
          child: CupertinoButton(
            child: Text('to SecondPage'),
            onPressed: () {
              Get.to(() => SecondPage());
            },
          ),
        ),
      ),
    );
  }
}

class SecondPage extends StatelessWidget {
  const SecondPage({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('SecondPage'),
      ),
      body: Column(
        children: [
          Container(
            height: 50,
            color: Colors.black,
            child: TabBar(
              controller: Get.find<MainController>().tabController,
              tabs: [
                Text('Page1'),
                Text('Page2'),
              ],
            ),
          ),
          Expanded(
            child: TabBarView(
              controller: Get.find<MainController>().tabController,
              children: [
                Container(
                  color: Colors.yellow,
                ),
                Container(
                  color: Colors.black54,
                )
              ],
            ),
          )
        ],
      ),
    );
  }
}

Opera
I have multiple pages that use the same TabController linkage. When I slide the Tab on other pages and return to the homepage, the GetxController on the homepage will be removed.
For example, run the above code, enter SecondPage, slide to Page2, return to HomePage, HomeSubPageController002 is deleted, in fact it still needs to be used.
I checked the code, HomeSubPageController002 is associated with /() => SecondPage, so it will be deleted when the removeDependencyByRoute method is called. Is my method wrong?
Output
[GETX] Instance "GetMaterialController" has been created
[GETX] Instance "GetMaterialController" has been initialized
[GETX] Instance "MainController" has been created
[GETX] Instance "MainController" has been initialized
[GETX] Instance "HomeSubPageController" has been created with tag "001"
[GETX] Instance "HomeSubPageController" with tag "001" has been initialized
[GETX] GOING TO ROUTE /() => SecondPage
[GETX] Instance "HomeSubPageController" has been created with tag "002"
[GETX] Instance "HomeSubPageController" with tag "002" has been initialized
[GETX] "HomeSubPageController001" onDelete() called
[GETX] "HomeSubPageController001" deleted from memory
[GETX] CLOSE TO ROUTE /() => SecondPage
[GETX] "HomeSubPageController002" onDelete() called
[GETX] "HomeSubPageController002" deleted from memory

Environment
Flutter 2.2.1
Dart >=2.12.0 <3.0.0
get: ^4.1.4

GetxController will be removed from memory and free up resources if the associated screen are removed from widget tree, so please make sure if its the screen remove or not.

The main problem is that the newly created GexController will be bound to the current route. If an event is triggered on the current page to cause other pages to create a GexController, the GetxController that is still used by other pages will be removed by mistake when exiting the current page.

The same issue, Is there a solution?

same here

add ,permanent: true to its default is false.
final preferences = Get.put(PreferencesController(),permanent: true);


Feature collages

Closes https://github.com/stuxo/REDAndroid/issues/14

Thanks for the feedback - I have implemented the suggested changes


undefined method to_yaml

Description

Chef Version
Starting Chef Infra Client, version 16.5.77
Platform Version
platform=centos
platform_version=7.8.2003
ruby=ruby 2.7.1p83 (2020-03-31 revision a0c7c23c9c) [x86_64-linux]
Replication Case
running chef-client
The recipe chef-client is failing on has been functioning since 2018 and worked in the previous version of chef-client.
Recipe
In /var/chef/cache/cookbooks/base/recipes/_gemrc.rb
  template chef_gemrc do
    source 'gemrc.erb'
    owner 'root'
    group 'root'
    mode '644'
 end.run_action(:create)

Template Context:
<%= JSON.parse((node['appd-base']['gemrc']).to_json, symbolize_names: true).to_yaml %>
Client Output
================================================================================
Error executing action `create` on resource 'template[/opt/chef/embedded/etc/gemrc]'
================================================================================

Chef::Mixin::Template::TemplateError
------------------------------------
undefined method `to_yaml' for #<Hash:0x0000000004d28e68>

Stack Trace

Caused by NoMethodError: undefined method to_yaml' for #<Hash:0x0000000004af5628> /var/chef/cache/cookbooks/base/templates/default/gemrc.erb:5:in block in evaluate'
/opt/chef/embedded/lib/ruby/gems/2.7.0/gems/erubis-2.7.0/lib/erubis/evaluator.rb:74:in instance_eval' /opt/chef/embedded/lib/ruby/gems/2.7.0/gems/erubis-2.7.0/lib/erubis/evaluator.rb:74:in evaluate'
/opt/chef/embedded/lib/ruby/gems/2.7.0/gems/chef-16.5.77/lib/chef/mixin/template.rb:161:in _render_template' /opt/chef/embedded/lib/ruby/gems/2.7.0/gems/chef-16.5.77/lib/chef/mixin/template.rb:146:in render_template'
/opt/chef/embedded/lib/ruby/gems/2.7.0/gems/chef-16.5.77/lib/chef/provider/template/content.rb:77:in file_for_provider' /opt/chef/embedded/lib/ruby/gems/2.7.0/gems/chef-16.5.77/lib/chef/file_content_management/content_base.rb:42:in tempfile'
/opt/chef/embedded/lib/ruby/gems/2.7.0/gems/chef-16.5.77/lib/chef/provider/file.rb:455:in tempfile' /opt/chef/embedded/lib/ruby/gems/2.7.0/gems/chef-16.5.77/lib/chef/provider/file.rb:329:in do_generate_content'
/opt/chef/embedded/lib/ruby/gems/2.7.0/gems/chef-16.5.77/lib/chef/provider/file.rb:141:in block in <class:File>' (eval):2:in block in action_create'
/opt/chef/embedded/lib/ruby/gems/2.7.0/gems/chef-16.5.77/lib/chef/provider.rb:276:in instance_eval' /opt/chef/embedded/lib/ruby/gems/2.7.0/gems/chef-16.5.77/lib/chef/provider.rb:276:in compile_and_converge_action'
(eval):2:in action_create' /opt/chef/embedded/lib/ruby/gems/2.7.0/gems/chef-16.5.77/lib/chef/provider.rb:217:in run_action'
/opt/chef/embedded/lib/ruby/gems/2.7.0/gems/chef-16.5.77/lib/chef/resource.rb:599:in block in run_action' /opt/chef/embedded/lib/ruby/gems/2.7.0/gems/chef-16.5.77/lib/chef/resource.rb:626:in with_umask'
/opt/chef/embedded/lib/ruby/gems/2.7.0/gems/chef-16.5.77/lib/chef/resource.rb:598:in run_action' /var/chef/cache/cookbooks/base/recipes/_gemrc.rb:27:in from_file'

This was an unfortunate regression caused by changing how ruby dependencies were loaded in order to speed up loading times. See  #10470 for more information.
You've got a few ways to fix this in your code:

require yaml before any code that uses the to_yaml extension
Change uses of object.to_yaml to YAML.dump(object)

Thank you for those workarounds.
Do you know when the regression be fixed in chef?

I'm not sure it will be. If your code is relying on something from ruby's stdlib to be loaded, your code should explicitly handle that dependency.

Is that the recommended best practice then, Whenever you need something from ruby's stdlib is to use 'require THING'?

I can't speak for Chef's official position on this, but yes that would be my recommendation.

When functionality like this changes does it normally get documented?

The underlying change was from using require to autoload to load ruby libraries. This is mostly seamless as code that, for example, referenced the YAML constant would continue to work with no changes. Depending on Chef requiring yaml causing the to_yaml extension is the type of thing that broke. This wasn't an intentional change so its unlikely it would get documented.

using YAML.dump( <stuff> ) instead of <stuff>.to_yaml will also cause the library to autoload correctly, and avoid the monkeypatch, which is in general a good thing.

I've added a Cookstyle rule to catch this in the Cookstyle 6.21 release. It will autocorrect any .to_yaml code to be YAML.dump() instead. You can either pull in that new gem or make that change manually.


[Question] Wondering about serial HTTP range requests

Hey guys, first just wanted to say, amazing work on this library, it's really impressive and I'm excited both to try things myself and to see what everyone else ends up doing with it 🙂
Anyways, this isn't an ISSUE so much as a QUESTION, something for my curiosity, so no worries if you don't get back to it for a while, or at all -- just figured I'd ask since I think it's interesting, hope that's ok.
So I wanted to play around a bit in the shell, and I uploaded a parquet file (a common one, a subset of the NYC taxi ride dataset, about 500MB in total) to a public S3 bucket and set the CORS so that it could be read by shell.duckdb.org. Then, I went to try out a few queries on the remote data file:

First of all, I want to say again this is just amazing -- it pulled less then 30MB to answer an analytical query like this on a 500MB dataset, just blows my mind 💯
But secondly -- it's kinda slow! That query took over a minute to come back, most of it seeming to be network. To confirm, I opened up the devtools and checked the network, and saw a whole bunch of tiny sequential range requests that seemed to be making sure we couldn't get too much work done at once:

So, I guess the TL;DR is that I want to know more about these! I'm guessing they can't "just" be fully parallelized, i.e. we need information from the last response in order to know what the next request looks like. But, maybe we could make fewer of these calls if we could increase the byte request size when the parquet is large? Or implement some kind of batching? Since this was the only hitch I ran into in an otherwise really cool experiment, I just wanted to hear your thoughts or plans.
Thanks a lot in advance, both for looking at my question and for building this in the first place!

Hi @pickledish , thanks for the nice words.
Yes, we're facing a couple of problems here.
The most important one is, that we're (not yet) fully async during I/O. This has a few far reaching requirements for the query execution model that haven't been been tackled yet.
Right now, we're always sitting in a C++ callstack when doing I/O which restricts us to single blocking http reads (via XHR).
Threads would offer an escape hatch here but they're immediately bringing up the problems with cross-origin-isolation.
I'd love to implement the web filesystem using multiple concurrent fetches but that's not quite possible today.
So what we're doing right now is the following:
We're tracking 10 read heads per file and increase the read(ahead) size whenever we request sequential ranges.
But this leaves us with a few knobs that we have to tune ourselves, most importantly the readahead acceleration.
If you look at your screenshot, you can actually see that the requested byte ranges are growing roughly with a factor of 1.5.
We could totally increase that to 2 or more to reduce the number of roundtrips.
The current factor of 1.5 was just a rough guess that may fall short with the network latencies.
https://github.com/duckdb/duckdb-wasm/blob/fc01f47603cdcc4dbd00d06d0c92c233d6b3ad3c/lib/src/io/web_filesystem.cc#L636-L644
https://github.com/duckdb/duckdb-wasm/blob/fc01f47603cdcc4dbd00d06d0c92c233d6b3ad3c/lib/include/duckdb/web/io/readahead_buffer.h#L127-L154
https://github.com/duckdb/duckdb-wasm/blob/fc01f47603cdcc4dbd00d06d0c92c233d6b3ad3c/lib/include/duckdb/web/io/readahead_buffer.h#L20-L24

These knobs are indeed interesting. How did you come up with the 1KB start size? Given that each http request takes some time, maybe it's worth starting out larger than 1KB?

This was just a blind first guess not backed by any data. We should totally accelerate faster.
Increasing the base size is a bit dangerous in case the user performs few small random accesses (this is not restricted to Parquet).
We have a page buffer sitting on top of the web filesystem which will buffer the file in 4KB pages anyway so the minimum range size for HTTP reads should be 4KB.
But increasing the sequential readahead acceleration makes a lot of sense the larger the latencies get.
So right now, we need 22 requests to max out at 16MB reads. If we go for a speedup of 8 instead of 1.5, we'll end up with only 5 roundtrips.
4096
6144
9216
13824
20736
31104
46656
69984
104976
157464
326196
354294
531441
797161
1195742
1793613
2690420
4035630
6053445
9080167
13620251
MAX 16 MB

4096
32768
262144
2097152
MAX 16 MB

Let me change that and we can try it out.
We could also make this user-configurable eventually.

@pickledish Please try it out in the web shell with<EMAIL_ADDRESS>

In the ideal world, we'd want to push data into a DuckDB pipeline whenever one out of many fetch promises resolve. That would allow us to saturate the clients bandwidth very easily even with a single web worker. We'll get there eventually but there's some more invasive ground work to do in DuckDB.
@Mytherin recently migrated made the query execution push based which is already a fantastic step into that direction. The (only) big blocker that is left are the currently pull-based table functions. As soon as they are push-based, we can throw out all the blocking synchronous I/O calls and glue DuckDB to Js promises.

First, let me echo @pickledish's praise and thanks.
I have a related question, I think. (Let me know if better placed elsewhere.)
I'm registering a remote parquet file which has one column (words) in sorted order to facilitate partial reads from the parquet metadata.
await f.registerFileURL("words.parquet", "https://$sitename.benschmidt.org/$fname.parquet");

I then query it with
f.query(`SELECT * FROM "words.parquet" WHERE word0 = '${r}'`))

It returns the results without pulling the whole file! Hooray!
But: if I run subsequent queries for the same word, I get a large number of serial HTTP range requests each time, rather than re-using the data I just loaded. They're served from the browser cache, so it at least doesn't require a full HTTP round trip; but my impression from the blog post was that it would use a buffered or web filesystem rather than the browser to generate the chunks. Is there some way to re-use the content inside duckdb?
(FWIW: this is one-grams from google ngrams, also including count metadata for words starting with 'A', 'B', and 'C' (capital only). '$fname' above is actually called 'word_small_page', and $sitename is 'ngrams'--but it's a biggish (150MB) file that I don't want getting autoscraped from this comment.)

Hm, I think this points to a bug. Conceptually they should.
We deliberately pin files on URL registration so that they are not flushed out.
But you are right, it looks like we're currently evicting buffered pages a bit too eagerly when the file is closed.
Let me move this into a new issue, we need a few tests for pinned reopened files.

@bmschmidt should be fixed, you can try it out it in the shell and in 0.1.12-dev72.0.

Tried this fix out, looks great. Thanks!

Fixing this for now with the readahead acceleration and the caching bug fix for Benjamin. We can track the user-configurable readahead acceleration in a dedicated issue.


Save eval matrix

cc @dhruvdcoder @mboratko

@dhruvdcoder just incorporated your changes from mesh_mlc branch — will merge


Transfer to Jazzband?

It looks like this project has had a few pull requests opened over the last couple of years, but they haven't been looked at. If maintenance is a burden, have you considered transferring this project over to Jazzband?

I also agree. This project needs to atleast support Django 4.2 soon.


[fix] fix iceberg's filter expr to filter file

Proposed changes
Fix iceberg's filter expr to filter file, and add counts the number of partitions read
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

(From new machine)TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 46.15 seconds
stream load tsv:          510 seconds loaded<PHONE_NUMBER>9 Bytes, about 139 MB/s
stream load json:         20 seconds loaded<PHONE_NUMBER> Bytes, about 112 MB/s
stream load orc:          66 seconds loaded<PHONE_NUMBER> Bytes, about 15 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>4 Bytes

run buildall

(From new machine)TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 45.94 seconds
stream load tsv:          508 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:          66 seconds loaded<PHONE_NUMBER> Bytes, about 15 MB/s
stream load parquet:          32 seconds loaded 861443392 Bytes, about 25 MB/s
insert into select:          29.2 seconds inserted 10000000 Rows, about 342K ops/s
storage size:<PHONE_NUMBER>1 Bytes


Adb/root

Is it possible to give Power menu the permission to the things it needs via adb instead of rooting?

#19


Address Undefined on stale session

a connect
b connect
a send message
a.session = [b session]
b received message
b.session = [a session]
a disconnect
b.session = [undefined]

Fixed at b1e2ee9


Add Restore manager

This PR includes all the changes for Restore Manager to handle restore via apiserver.

Pull Request Test Coverage Report for Build 1569

130 of 170 (76.47%)  changed or added relevant lines in 7 files are covered.
25 unchanged lines in 6 files lost coverage.
Overall coverage decreased (-0.7%) to 88.208%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

api-controllers/ServiceFabrikApiController.js
37
39
94.87%

managers/BaseDirectorService.js
6
8
75.0%

managers/restore-manager/DefaultRestoreManager.js
18
25
72.0%

managers/restore-manager/RestoreService.js
64
93
68.82%

Files with Coverage Reduction
New Missed Lines
%

broker/lib/fabrik/DBManager.js
1
98.86%

common/EventLogInterceptor.js
2
83.92%

broker/lib/fabrik/BaseManager.js
2
77.08%

common/utils/index.js
3
87.35%

broker/lib/fabrik/ServiceFabrikOperation.js
7
76.92%

data-access-layer/bosh/BoshDirectorClient.js
10
72.52%

Totals

Change from base Build 1556:
-0.7%

Covered Lines:
7298

Relevant Lines:
8011

💛  - Coveralls

Pipeline # 343 passed


Whitelist all http links for p2p app

In the current peer. links configuration, we are limited to adding some links to the whitelist. However, we need to whitelist all links. Please provide options or methods to achieve this.
we also add like this: "http://" , "https://"  to white list only HTTP or HTTPS link.

hi! thanks, added to the roadmap :)


Public API

Hey there!
Was wondering if anyone has made an API for this ?
I would like to send REST with a text query and get a human-like response. Hopefully featuring the latest model
Also while I'm here, could this be used multilingual ?
Thanks a lot !

Thank you for your interest!
We have no plans on making a REST API. There are some places that offer query access to pretrained GPT-Neo, including HuggingFace, but we do not.
The model was overwhelmingly trained on English text (> 95%).  We do not recommend using on other languages without first training it further.

I've tried the one over huggingface, it's pretty cool bot it completes my sentences, not answer them .
Could this be achieved with a certain model ?
Does anyone know if a good chatbot api ?
Thx a lot!


Incorrect test trials for childdevlabAshoka_41A-adults

Participant childdevlabAshoka_41A-adults has two knowledge test trials. First test trial could be used for analysis but 2nd test trial should be excluded. This participant should also be excluded for MB2P.

How should we best handle cases like this? Options:

edit the demographic data/ session error file for the lab directly (would just want to document this)
create a metadata file with corrections to session errors that we read in to the pipeline

We've done both in ManyBabies projects. I think which is preferable might depend on how common we think this will contine to pop up - my lean would be towards just editing the data directly for now, what do you think?

My guess is that something like this might not happen again or if so, just a small number of cases. I think that editing the demographic data file rather than creating additional files is the easiest way to deal with cases like this.

I updated the demographic data for this participant marking the second test trial as error.


[Bug]: Language fallback no longer working

What did you expect? 🧐
An undefined language should result in the announcement using the provided fallback.
What actually happened? 😵💫
No announcement is made if the language is not defined in the options. This started happening in 4.5.1, specifically after this pull request was merged. The part that seemed redundant was actually the relevant implementation of the fallback: announcements['*'].
I'll make a note to fix and test this in the test branch that's currently in progress, just flagging it here so we don't forget.
Swup and plugin versions 📝

swup: *
a11y plugin: 4.5.1

What browsers are you seeing the problem on? 🧭
No response
Relevant log output 🤓
No response
URL to minimal reproduction 🔗
https://github.com/swup/a11y-plugin/pull/46/files
Checked all these? 📚

[X] I have read and searched the official docs
[X] I have checked discussions and existing issues for related problems
[X] I agree to follow this project's Code of Conduct
[X] I have provided all necessary information to the best of my knowledge

Great that you have caught this so early! We really need a test suite.


Idva6 647 association enrichment mapper

Short description outlining key changes/additions
Added enrichment mappers.
JIRA Ticket Number
IDVA6-647
Type of change

[x] Bug fix
[x] New feature
[x] Breaking change
[x] Infrastructure change

Pull request checklist

[x] I have added unit tests for new code that I have added
[x] I have added/updated functional tests where appropriate
[x] The code follows our coding standards

An exhaustive list of peer review checks can be read here

CI: No security warnings found


piping stderr and stdout to a file doesn't work

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

VS Code Version: 1.67.2
OS Version: Windows 10

Steps to Reproduce:

Create launch.json
Add
"args": ["&>", "./run.log"],
"cwd": "${fileDirname}",
Run a python script
Instead of being logged to the specified file, the output of the script is printed in the terminal
So essentially this issue persists after an update to 1.67.2

Will discuss this in https://github.com/microsoft/vscode/issues/149910