webdriverio: ported cookie commands

Proposed changes
Ported over the cookie command methods and changed them from being able to pass a single cookie at a time to being able to pass multiple cookies to be handled.
Types of changes

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

Checklist

[x ] I have read the CONTRIBUTING doc
[x ] I have added tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (if appropriate)

Further comments
Using getCookies I have chosen not to use getNamedCookie but instead query all cookies using getAllCookies to then filter the list it returns.
Reviewers: @webdriverio/technical-committee @christian-bromann

Codecov Report

Merging #47 into master will increase coverage by 0.28%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #47      +/-   ##
==========================================
+ Coverage   85.05%   85.33%   +0.28%
==========================================
  Files          48       51       +3
  Lines         890      907      +17
  Branches      196      204       +8
==========================================
+ Hits          757      774      +17
  Misses        112      112
  Partials       21       21

Impacted Files
Coverage Δ

.../webdriverio/src/commands/browser/deleteCookies.js
100% <100%> (ø)

...ges/webdriverio/src/commands/browser/getCookies.js
100% <100%> (ø)

...ges/webdriverio/src/commands/browser/setCookies.js
100% <100%> (ø)

Continue to review full report at Codecov.

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


Question: Any example on how to get selected item in sayHello callback function?

same problem here, unuseful in this state.


Write a program to demonstrate the concept of call-by-value, call-by-reference & call-by address by taking swapping of two numbers as an example.

i create a pull request, please check it

I would like to work on it.


Issue #1: Missing main function

The project currently lacks a main function. While there are individual functions implemented, there is no main entry point that orchestrates the overall execution of the program. This makes it difficult to understand how to run the program and how the various functions interact.

Proposed Solution:
Create a main() function that calls the necessary functions in the correct order. This function should serve as the starting point of the program and provide a clear structure for execution. It will also help for issue #2.

Since the target of the script is non-technical users, it's better to keep a single file to avoid multiple file managment


feat(external_input_and_output): give the possibility to inject an input_receiver and output_sender

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

GitHub release
crate.io packages (1 packages published)

Your semantic-release bot :package::rocket:


Client Allocation Request for: Mgame

Client Allocation Questions
Core Information

Name: Mgame
Website / Social Media: https://www.mgame.com/
Region: Asia (excl. Greater China)
DataCap Requested: 30TiB
Addresses to be Notarized: f1wie3vdkcg23eoqhdgnx2kv33yghvjqpafuz7oay
Notary Requested: TENET-Data-Systems

@Hailey-Li Please subscribe to notifications for this Issue to be aware of updates. Notaries may request additional information on the Issue.

@TENET-Data-Systems Hi could u check on my request? Many thanks！


Visualize lag

Is there a UI to visualize the data returned from the REST calls?

within my burrow.cfg I have
[httpserver]
server=on
port=8000
yet, I cannot hit https://localhost:8000/burrow/admin.

Burrow does not have a GUI associated with it. I use kafka-manager which has a pretty intuitive useful GUI

I'm familiar with kafka-manager, but I was looking for a visualization that works with burrow to show how laggy each partition is and alert me when a partition is not in a good state.

Currently, Burrow can notify in 3 ways - email, callout to another web service, or Slack. Right now, there's no UI in Burrow itself, though I would like to add at least a basic one. However, this isn't a high priority at the moment, so someone else is welcome to work on it and submit a PR.

@nealbh You can fetch the lag information throw HTTP Endpoint · linkedin/Burrow Wiki , then send those lags to influxdata/influxdb: Scalable datastore for metrics, events, and real-time analytics or other DBs , visualize it by grafana/grafana: Gorgeous metric viz, dashboards & editors for Graphite, InfluxDB & OpenTSDB or tools.

@nealbh I wrote a front-end for burrow, you can try it out https://github.com/tulios/burrow-stats

@tulios  Sounds great 👍 , but just wonder where you store the history lag.

@jsvisa It's saved locally in the browser (localstorage), you can configured the size of the window (the default is 5min).


Rejected by dad

I'm not sure if this is appropriate for this project, but I felt compelled to share.
Feel free to... reject this.

I always had a poor relationship with my father. Before we stopped talking, he said lots of terrible things to me. He said that I had no future. Three years later, at 21 years old, I had already experienced a ton of professional success. I was making a six figure salary at 20 and traveling around the world to speak at 21. Even better– I've been able to help pay for my mom to finish her masters degree.  Added.


[productcatalogservice] Simplify service

Fixes #.
Changes
Please provide a brief description of the changes here.
For significant contributions please make sure you have completed the following items:

[ ] Appropriate CHANGELOG.md updated for non-trivial changes
[ ] Design discussion issue #

Already merged this branch :D


Canvas mouse events coord is wrong on layout change

You calculate local coordinates there based on evt.pageX/evt.pageY and canvas page bounds. Element page bounds variable gets updated on "resize" page event(and manual "resize" calls), but page layout may be changed all the time(some data is loaded and element above chart became bigger for example).
Easiest fix is to use evt.offsetX/evt.offsetY, but this also highlight problem with "bounds" variable, better not to use it if possible since there is no performant tracker of element position.

You're right that it's not ideal as it'll take some manual calculations for advanced layout changes. I think I encountered some issue with offsetX/offsetY (maybe it's not supported by touch event, or some other issues).
Worth revisiting and improve this one!


Regulate temperature in room(overfitting, continuous action space) [question]

Hi, i'm trying to regulate temperature in a room with reinforcement learning and got some problems with continuous actions and over-fitting.
The model has only 1 input called power with values in range [0, 10000] and by changing power the model will show the next temperature 10 minutes into the future.
Example
Target temperature 22
Current Temperature 19

step(power=5000) --> next_temperature: 19.2
step(power=400) --> next_temperature: 18.8

Reward function
reward = -(self.next_temperature - self.target_temperature )**2
Action space
self.action_space = spaces.Box(low=0, high=10000, shape=(1,), dtype=np.float32)
Observation Space
self.observation_space = spaces.Box(low=0, high=70, shape=(1,), dtype=np.float32)
What I've done so far is creating a continuous action space in range [0, 10000] but it seems tested actions to see which ones are good are only tested in range [0, 3] therefore i multiplied the tested power with 3000 to get in range [0, 10000].
Question 1 - continuous action space
Why does it not give power in range [0, 10000] i suppose it's normalized somehow?
Question 2 - overfitting
I trained the model with target temperature 22 and when testing different learning rates & time steps it eventually gave quite good results. But when I tested the model with a different target temperature ex 20 the model still predicted power values that moved the model to 22 degrees even if the rewards could become lower.
Question 3
Got any tips or references for using stable baselines to regulate temperature in a room or anything similar.

https://github.com/andrehoejmark/Tempearture-control/

Hello,

Question 1 - continuous action space
Why does it not give power in range [0, 10000] i suppose it's normalized somehow?

For your first question, yes you should normalize (see here for a little longer explanation). I assume you are using A2C or a derivative (PPO, ...), with SAC or DDPG you won't have that issue (but you would need a symmetric action space).
You should also normalize the observation space.
I think I will add at some point a section on tips for working with RL.

Question 2 - overfitting
Question 3
Got any tips or references for using stable baselines to regulate temperature in a room or anything similar.

Well this behavior is not really surprising, you should train it in different conditions.
But in fact, your problem looks like something suited for using Hindsight Experience Replay (I'm currently working on that in #273 ) where you have explicit goal. This would allow to generalize to different scenarios.
For using stable-baselines in general, I would recommend you to take a look at the rl zoo for the best practices. Otherwise, I am not aware of any related work.


user_example.py

Looks like there is another issue with the user file.

File "userfile_CRM.py", line 42, in
params,conf_array,fig1,chi1,init1 = fsd.fit(filename = filename, Method = Method, normalize = normalize, dir = dir)
TypeError: fit() got an unexpected keyword argument 'filename'

Is user_example.py defunct? What is the current example user file?

Yeah the example files definitely got forgot about in place of the example given in the README, I'll replace those with the example use case in the README


Multicast UDP GO1 EDU

Hey guys, while the patrol robot i would like to connect and comand with udp connection, but i would like to know how to connect multicast in python code?

Hello, if you want to control multiple robot dogs at the same time, you can connect these robot dogs to your own wifi, so that each robot dog will be assigned its own ip address, and then control these ip addresses separately to achieve the goal


CI speed up

Experimenting with CI speed up. Will request review when ready.
Test Plan
CI

Codecov Report

Merging #1343 (d08dcf9) into main (55d1c70) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main    #1343   +/-   ##
=======================================
  Coverage   67.62%   67.62%
=======================================
  Files         138      138
  Lines       29139    29139
=======================================
  Hits        19706    19706
  Misses       9433     9433


Using lime with a RPN network

Hello,
I would like to know if it's possible to use lime with an RPN network (such as Faster R-CNN or RetinaNet).
Indeed, I have seen the tutorial for image classification with Keras but I was wondering if you have a similar tutorial/explanations for an object detection model :
detections, scores = predict_detection(img_path, model)
with detections = [(x1,y1,x2,y2), ...] , detections.shape = (n_samples, 4)
and scores = [p1, p2, ...] , detections.shape = (n_samples, 1)
Thank you very much in advance.

I don't know what you would explain in that case. I can imagine explaining a function of the output such as the presence / absence of a particular object in the prediction (which can be done) or a function like 'the area of the dog prediction is larger than X', but I don't know how I would go about representing the explanation for the whole structured output.

I would be interested in this as well. Mainly what are the relevant sub-segments for each region proposal and their impact on overall (region) score.

@alexattia I did a project for SSD detector. You can check results here https://github.com/gudovskiy/e2x


Seed Guard Crashes When Rejoining a World

Minecraft 1.20.1
Fabric Loader 0.14.22
Steps:
Load into a World
Exit
Reload into same World
Crashes
https://gist.github.com/Afrocntrik/ca642ce39f4b96abdf6c38bf6688a43e

Currently working on a modpack rn now it's a bit cursed in the modlist but I believe it will be uniquely fun. SeedGuard is there to allow structures to still spawn and offset the Random Chunks mod I have installed. Best guess would be the mod is trying to rescramble the structures on rejoining the world


[V1] Update interface for idefics3

Idefics3ForConditionalGeneration was left behind from #10570. This PR updates its interface to what we need in V1.

This PR has been verified with
pytest tests/models/decoder_only/vision_language/test_models.py -k "idefics3"

and
python3 examples/offline_inference_vision_language.py -m idefics3


fix ColumnStatistics was changed unexpectedly

Proposed changes
Issue Number: no issue
Problem summary
The logic of show stats would change the internal collected ColumnStat unexpectedly which would cause inaccurate cost and inefficient plan
Checklist(Required)

Does it affect the original behavior:

[ ] Yes
[x] No
[ ] I don't know

Has unit tests been added:

[ ] Yes
[x] No
[ ] No Need

Has document been added or modified:

[ ] Yes
[x] No
[ ] No Need

Does it need to update dependencies:

[ ] Yes
[x] No

Are there any changes that cannot be rolled back:

[ ] Yes (If Yes, please explain WHY)
[x] No

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...

TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 35.68 seconds
load time: 447 seconds
storage size:<PHONE_NUMBER>6 Bytes
https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/tmp/20221108094627_clickbench_pr_41924.html


Steps towards the functionality of Mesh

We decided with @gdmcbain on the goal of having the public API of Mesh to be functional in the sense that none of the methods purposefully modify self. #536 and the corresponding PR #538 will eventually take care of refine, scale, translate, etc. by introducing refined, scaled, translated that return copies of the mesh. We will first use the new versions in the documentation and deprecate the old versions. Finally after a suitable time and a number of releases we will remove the original refine, scale, translate. There are immediate benefits to the functionality of Mesh, e.g., one cannot accidentally invalidate a Basis object by calling Mesh.refine.
However, there is a missing piece of the puzzle: Mesh.define_boundary. This was never such a huge success as one can simply provide boundaries dictionary to the constructor or then directly pass facet indices to basis.get_dofs or basis.find_dofs.

the goal of having the public API of Mesh to be functional

Possible exception mentioned in #536:

Possible cases for mutating a Mesh might be … deformation, preserving the connectivity of the mesh … one might think about separating the connectivity and geometry. I think there was some work like that in #399, inspired by MFEM?

This might be like introducing two new classes for the Connectivity and Geometry, both immutable and then having a Mesh, also immutable, have one of each as an attribute. Then if the Mesh is to be distorted, a new Mesh is created with the old Connectivity and a new Geometry.   All the expensive to recalculate attributes/properties like t2f belong to the Connectivity and so are automatically preserved.

the goal of having the public API of Mesh to be functional

Possible exception mentioned in #536:

Possible cases for mutating a Mesh might be … deformation, preserving the connectivity of the mesh … one might think about separating the connectivity and geometry. I think there was some work like that in #399, inspired by MFEM?

This might be like introducing two new classes for the Connectivity and Geometry, both immutable and then having a Mesh, also immutable, have one of each as an attribute. Then if the Mesh is to be distorted, a new Mesh is created with the old Connectivity and a new Geometry.   All the expensive to recalculate attributes/properties like t2f belong to the Connectivity and so are automatically preserved.

However, there is a missing piece of the puzzle: Mesh.define_boundary.

In the same way as class Mesh might be divided up into class Topology and class Geometry (or hopefully with better names), perhaps the boundaries attribute (and similarly subdomains) might be separated from the object so that another new class (‘Domain’?), again immutable, might have an immutable Mesh as an attribute and also boundaries and subdomains, which might be implemented as namedtuples rather than dicts so that they're less mutable too.
If class Domain were a frozen dataclass (which is impossible until Python <3.7 is dropped), an operation like .define_boundaries could be done with the dataclasses.replace module function, which returns a new immutable object based on an old one  just replacing those attributes that need changing.  While Python 3.6 is still supported, this idea can be implemented manually.

However, there is a missing piece of the puzzle: Mesh.define_boundary.

In the same way as class Mesh might be divided up into class Topology and class Geometry (or hopefully with better names), perhaps the boundaries attribute (and similarly subdomains) might be separated from the object so that another new class (‘Domain’?), again immutable, might have an immutable Mesh as an attribute and also boundaries and subdomains, which might be implemented as namedtuples rather than dicts so that they're less mutable too.
If class Domain were a frozen dataclass (which is impossible until Python <3.7 is dropped), an operation like .define_boundaries could be done with the dataclasses.replace module function, which returns a new immutable object based on an old one  just replacing those attributes that need changing.  While Python 3.6 is still supported, this idea can be implemented manually.

These are all fantastic ideas. Basically Mesh would be a wrapper for Topology, Geometry and Domain with the few specialized constructors. The split in #536 is also very promising due to other reasons: it seems that I'm able to combine the logic of _build_mapping among several mesh types which will reduce the overall complexity and LOC.

These are all fantastic ideas. Basically Mesh would be a wrapper for Topology, Geometry and Domain with the few specialized constructors. The split in #536 is also very promising due to other reasons: it seems that I'm able to combine the logic of _build_mapping among several mesh types which will reduce the overall complexity and LOC.

Basically Mesh would be a wrapper for Topology, Geometry and Domain

I was thinking that:

Mesh would be a wrapper for Topology and Geometry
Domain would be a wrapper for Mesh, and Boundaries & Subdomains

The motivation for that second part is the

missing piece of the puzzle: Mesh.define_boundary

if Mesh.boundaries is an attribute, then a Mesh.define_boundary method mutates the Mesh instance; if the Mesh instance and the Boundaries are both attributes of a Domain instance then the Mesh instance remains immutable and a new Domain is instantiated referring to it and a new Boundaries object.
But perhaps that's too much change and it would be better to keep Mesh as the most obvious class in user-level scripts?  Then having Boundaries and Subdomains as attributes of Mesh alongside Topology and Geometry should work, yes.  By Domain then you mean something including Boundaries and Subdomains?
What would go in Geometry besides what's currently in Mesh.p?  Not much at the moment that I can think of but maybe one day curves and surfaces?  (If say an edge of a triangle was supposed to adhere to a plane curve rather than just have its termini adhere to points, this becoming relevant, e.g., when the triangle is refined.)

Basically Mesh would be a wrapper for Topology, Geometry and Domain

I was thinking that:

Mesh would be a wrapper for Topology and Geometry
Domain would be a wrapper for Mesh, and Boundaries & Subdomains

The motivation for that second part is the

missing piece of the puzzle: Mesh.define_boundary

if Mesh.boundaries is an attribute, then a Mesh.define_boundary method mutates the Mesh instance; if the Mesh instance and the Boundaries are both attributes of a Domain instance then the Mesh instance remains immutable and a new Domain is instantiated referring to it and a new Boundaries object.
But perhaps that's too much change and it would be better to keep Mesh as the most obvious class in user-level scripts?  Then having Boundaries and Subdomains as attributes of Mesh alongside Topology and Geometry should work, yes.  By Domain then you mean something including Boundaries and Subdomains?
What would go in Geometry besides what's currently in Mesh.p?  Not much at the moment that I can think of but maybe one day curves and surfaces?  (If say an edge of a triangle was supposed to adhere to a plane curve rather than just have its termini adhere to points, this becoming relevant, e.g., when the triangle is refined.)


RuntimeError: CUDA out of memory. Tried to allocate 1.33 GiB

I'm getting "CUDA out of memory". I googled that and it has suggested to send smaller batchs to CUDA.
Where in the scripts can I change?
C:\ProgramData\Miniconda3\envs\venv\lib\site-packages\torch\nn\functional.py:3384: UserWarning: Default grid_sample and affine_grid behavior has changed to align_corners=False since 1.3.0. Please specify align_corners=True if the old behavior is desired. See the documentation of grid_sample for details.
  warnings.warn("Default grid_sample and affine_grid behavior has changed "
  1%|▊                                                                                | 1/100 [00:10<18:06, 10.97s/it]Process Personalizer_['0']:
Traceback (most recent call last):
  File "C:\ProgramData\Miniconda3\envs\venv\lib\multiprocessing\process.py", line 258, in _bootstrap
    self.run()
  File "e:\bin\ipercore-main\iPERCore\services\personalization.py", line 119, in run
    self._model.set_input(train_batch, self._device)
  File "e:\bin\ipercore-main\iPERCore\tools\trainers\lwg_trainer.py", line 676, in set_input
    links_ids=links_ids, offsets=offsets, temporal=self._opt.temporal)
  File "C:\ProgramData\Miniconda3\envs\venv\lib\site-packages\torch\nn\modules\module.py", line 722, in _call_impl
    result = self.forward(*input, **kwargs)
  File "e:\bin\ipercore-main\iPERCore\tools\trainers\base.py", line 126, in forward
    links_ids=links_ids, offsets=offsets, temporal=temporal
  File "e:\bin\ipercore-main\iPERCore\models\flowcomposition.py", line 726, in forward
    uv_img, input_G_bg, input_G_src = self.process_source(src_img, src_info, primary_ids=primary_ids)
  File "e:\bin\ipercore-main\iPERCore\models\flowcomposition.py", line 479, in process_source
    src_info, erode_ks=0, dilate_ks=0)
  File "e:\bin\ipercore-main\iPERCore\models\flowcomposition.py", line 374, in make_morph_image
    weights, nn_pts, ids = self.cal_top_k_ids(uncertain_points, boundaries_points)
  File "e:\bin\ipercore-main\iPERCore\models\flowcomposition.py", line 280, in cal_top_k_ids
    dists = torch.sum((u_pts - b_pts) ** 2, dim=-1)
RuntimeError: CUDA out of memory. Tried to allocate 1.33 GiB (GPU 0; 6.00 GiB total capacity; 985.81 MiB already allocated; 1.11 GiB free; 3.55 GiB reserved in total by PyTorch)

Notice that imags_size=512 need at least 9.8GB GPU memory. if you are using a middle-level GPU(e.g. RTX 2060), you should change the image_size to 384 or 256. The following table can be used as a reference:

image_size
preprocess
personalize
run_imitator
recommended gpu

256x256
3.1 GB
4.3 GB
1.1 GB
RTX 2060 / RTX 2070

384x384
3.1 GB
7.9 GB
1.5 GB
GTX 1080Ti / RTX 2080Ti / Titan Xp

512x512
3.1 GB
9.8 GB
2 GB
GTX 1080Ti / RTX 2080Ti / Titan Xp

1024x1024
3.1 GB
20 GB
-
RTX Titan / P40 / V100 32G

Notice that imags_size=512 need at least 9.8GB GPU memory. if you are using a middle-level GPU(e.g. RTX 2060), you should change the image_size to 384 or 256. The following table can be used as a reference:

image_size
preprocess
personalize
run_imitator
recommended gpu

256x256
3.1 GB
4.3 GB
1.1 GB
RTX 2060 / RTX 2070

384x384
3.1 GB
7.9 GB
1.5 GB
GTX 1080Ti / RTX 2080Ti / Titan Xp

512x512
3.1 GB
9.8 GB
2 GB
GTX 1080Ti / RTX 2080Ti / Titan Xp

1024x1024
3.1 GB
20 GB
-
RTX Titan / P40 / V100 32G

Super, it works now, thanks!
I'm using GTX1060 and 384 image size.

Super, it works now, thanks!
I'm using GTX1060 and 384 image size.


Context returned by Error::chain can't be downcast to original type

First of all thanks to the creators and maintainers of this library, it's been so instrumental in improving Rust's error handling story for me.
In my application I'm using anyhow::Error to create a stack of errors and information as an error "unwinds" through callers, then at the API level of my application I peel that back layer by layer using anyhow::Error::chain on the returned error. Some of the attached context is a typed error object which specifies more information about how the error should be translated at the API boundary (such as HTTP status codes) but I've found that the &dyn std::error::Error returned by chain can't be downcasted to the original type if it was attached to the error using anyhow::Error::context.
This failure only seems to be related to objects that are attached to the Error via the context method, and anyhow::Error::downcast_ref seems to correctly downcast to an object attached via context (it just only allows me to get the first instance of a class attached multiple times). This seems like a bug in how std::error::Error::downcast_ref interacts with the trait objects returned by chain, which I can only guess is related to the type erasure or wrapping going on within anyhow.
Here's a simplified example:
use std::error::Error;
use std::fmt;
use anyhow::anyhow;

struct MyError (
    u32
);

impl fmt::Display for MyError {
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
        write!(f, "{}", self.0)
    }
}

impl fmt::Debug for MyError {
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
        write!(f, "d: {}", self.0)
    }
}

impl Error for MyError {}

fn print_errors(err: &anyhow::Error) {
    err
        .chain()
        .for_each(|e| {
            if let Some(my_error) = e.downcast_ref::<MyError>() {
                println!("MyError {}", my_error);
            } else {
                println!("{}", e);
            }
        })
}

The following code:
    let e1 = anyhow!(MyError(1)).context(MyError(2));
    print_errors(&e1);

Produces:
2
MyError 1

Whereas I would expect it to produce:
MyError 2
MyError 1

So the original MyError object passed to anyhow! can be downcasted properly, but any MyError objects attached via context cannot be.
I'm guessing this may have something to do with the fact that context doesn't require arguments to impl std::error::Error, so there must be some sort of wrapper which is being used to return them from chain as an &dyn std::error::Error. I'm not sure if it was intended to support this use case or not, but it would be great if I could downcast context in the same way I can downcast the original error. It's frustrating that anyhow::Error::downcast_ref works on context correctly, but std::Error::downcast_ref on the references returned by chain doesn't.
When I did a quick scan of the issue tracker I thought this may be related to #84, but I think that although fixing this issue may also solve that one, they're fundamentally different approaches.

I ran into this today in a similar use case. Would a PR be accepted to fix this issue?

I don't plan to experiment with alternative downcasting implementations as part of this crate so I am closing this issue, but I would be willing to consider a working PR if somebody sends one.

@genbattle I tried to do the same, I am also trying to see if I can attach HTTP status code to error. But its kind of not working as expected:
#[cfg(test)]
mod test {
    use anyhow::Context;

    #[derive(thiserror::Error, Debug)]
    enum EFirst {
        #[error("yo")]
        Yo,
    }

    fn outer() -> Result<(), anyhow::Error> {
        anyhow::Ok(out()?).context(http::StatusCode::CREATED)
    }

    fn out() -> Result<(), anyhow::Error> {
        anyhow::Ok(first()?).context(http::StatusCode::ACCEPTED)
    }

    fn first() -> Result<(), anyhow::Error> {
        Err(EFirst::Yo).context(http::StatusCode::SEE_OTHER)
    }

    #[test]
    fn t() {
        let e = outer().unwrap_err();
        assert_eq!(
            *e.downcast_ref::<http::StatusCode>().unwrap(),
            http::StatusCode::SEE_OTHER
        );
    }
}

I only get the error attached at first level when custom type was converted to anyhow::Error.
Trying to chain() with http::StatusCode doesn’t work as it is not Error. Then I tried:
    #[derive(thiserror::Error, Debug, PartialEq)]
    enum Status {
        #[error("created")]
        Created,
        #[error("accepted")]
        Accepted,
        #[error("see-other")]
        SeeOther,
    }

    fn outer2() -> Result<(), anyhow::Error> {
        anyhow::Ok(out2()?).context(Status::Created)
    }

    fn out2() -> Result<(), anyhow::Error> {
        anyhow::Ok(first2()?).context(Status::Accepted)
    }

    fn first2() -> Result<(), anyhow::Error> {
        Err(EFirst::Yo).context(Status::SeeOther)
    }

    #[test]
    fn t2() {
        let e = outer2().unwrap_err();
        println!("status: {:?}", e.downcast_ref::<Status>());
        for cause in e.chain() {
            println!("status: {:?}", cause.downcast_ref::<Status>());
        }
        assert!(false)
    }

Which gives:
---- error::test::t2 stdout ----
status: Some(SeeOther)
status: None
status: None
thread 'error::test::t2' panicked at ft-sdk/src/error.rs:105:9:

So the calls like anyhow::Ok(first2()?).context(Status::Accepted) have no effect.
@dtolnay in anyhow::Context: Effect on downcasting it says:

Some codebases prefer to use machine-readable context to categorize lower level errors in a way that will be actionable to higher levels of the application

Is this a bug, or I am I misunderstanding something?


About video custom rate playback

Does the plugin support video custom rate playback? I want to adjust the video playback speed by 1.5 times and 2 times.

Does the plugin support video custom rate playback? I want to adjust the video playback speed by 1.5 times and 2 times.

have you got it? i want change playback speed


Diagnostic for provided webgl context

According to @lekzd, Catalina sometimes spawn a context that is already lost. I honestly don't know what to do if getContextAttributes() returns null, and whether we can work like that, so lets discuss it.
For now I can try to add two more diagnostic messages.

Dont merge it yet, I found that my knowledge about our methods handling context loss and restore is wrong. I'm gonna add tests on that thing.

@lekzd did you find whats wrong in your case?

@ivanpopelyshev something happening after Stage resize, but I have no time to investigate more before NY holydays.

Any update on this @ivanpopelyshev?

I'm closing, its not a priority before we actually find the system and case that can be reproduced


[FixCode] Pick up fixit for let->var change

What's in this pull request?

This is an important fixit, but was lost because it is on the note
instead of the error.
Resolved bug number: (SR-)

rdar://problem/26593117

Before merging this pull request to apple/swift repository:

[ ] Test pull request on Swift continuous integration.

Triggering Swift CI
The swift-ci is triggered by writing a comment on this PR addressed to the GitHub user @swift-ci. Different tests will run depending on the specific comment that you use. The currently available comments are:
Smoke Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please smoke test
    All supported platforms     | @swift-ci Please smoke test and merge
    OS X platform               | @swift-ci Please smoke test OS X platform
    Linux platform              | @swift-ci Please smoke test Linux platform

Validation Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please test
    All supported platforms     | @swift-ci Please test and merge
    OS X platform               | @swift-ci Please test OS X platform
    OS X platform               | @swift-ci Please benchmark
    Linux platform              | @swift-ci Please test Linux platform

Lint Testing
    Language     | Comment
    ------------ | -------------
    Python       | @swift-ci Please Python lint

Note: Only members of the Apple organization can trigger swift-ci.

@swift-ci smoke test os x platform


Bugfix/117 fix phone number validation

Resolves #117 , and fixes #49 .

Also, could you fix the two linting errors @github-actions raised?


Fix a typo

Can you fix the typo in the other examples as well?

Can you fix the typo in the other examples as well?

Done.


Adding unittest for knapsack.

Issue #13 adding unittests to one branch, it also closes #7

LGTM!


feat: downgrade trie debug logs to trace, cleanup debug logs more

Trie has a bunch of useful but long logs with really large fields, so I downgraded them to trace level.
hyper and trust-dns deps has a lot of debug logs that look like trace to me, so I disabled some of them by default, and overridable if provided by the user via CLI arg.

@Rjected please check the trust-dns default log filters, want to be sure we don't need them enabled.


rtabmap: 0.20.18-3 in 'melodic/distribution.yaml' [bloom]

Increasing version of package(s) in repository rtabmap to 0.20.18-3:

upstream repository: https://github.com/introlab/rtabmap.git
release repository: https://github.com/introlab/rtabmap-release.git
distro file: melodic/distribution.yaml
bloom version: 0.10.7
previous version for package: 0.20.16-1

@matlabbe FYI, this package is failing to build on arm32: https://build.ros.org/view/Mbin_ubhf_uBhf/job/Mbin_ubhf_uBhf__rtabmap__ubuntu_bionic_armhf__binary/ .
In turn, that is happening because one of its dependencies, libpointmatcher, can't build on arm32: https://build.ros.org/view/Mbin_ubhf_uBhf/job/Mbin_ubhf_uBhf__libpointmatcher__ubuntu_bionic_armhf__binary/54/console (search for "Libpointmatcher is only supported in 64 bits").
I have to assume that this is a relatively new development, since this built on arm32 in the past.  The question is: do you care about this regression?  If so, we'll probably have to revert to an earlier version of libpointmatcher.

I don't know if there is a mechanism to do so, but the ideal workaround for me would be to specify in package.xml that libpointmatcher is optional like this:

We don't currently have any way to specify optional dependencies in the package.xml.

Is there an environment variable set in the buildfarm telling which architecture we are building on?

My understanding is that this is actually resolved at bloom time, not on the buildfarm.  So we would have to have some way to do it at bloom time.  But I'm not an expert here; @nuclearsandwich @cottsay @j-rivero could one of you comment if this is possible?
There may also be the possibility to patch out libpointmatcher as a dependency just in the release repository for arm32, but I don't know how this would be done.

In general our tools don't cover architecture differences per-platform and there's some question about whether rosdep or dependency conditions are a more appropriate venue for how platform (by which I mean the combination of operating system, operating system version, and architecture) differences should be resolved in dependencies.

Is there an environment variable set in the buildfarm telling which architecture we are building on?

clalancette is correct that the bloom-release command resolves all rosdep dependencies, and by extension package conditions when generating the release data. Furthermore the same platform metadata (RPM spec files for RHEL, debian/control and debian/rules for Debian and Ubuntu are used regardless of architecture so any architecture dependent behavior needs to be representable in those formats.
Unlike colcon workspaces which can evaluate dependency conditions based on arbitrary environment variables, bloom uses a fixed set based on the ROS distribution information.
I went down a bit of a rabbit hole trying to find things for the deb side but it looks like build dependencies can be qualified with an architecture restriction according to https://www.debian.org/doc/debian-policy/ch-relationships.html but that would have to be done in a patch after blooming and is not currently expressible in a package.xml.

@matlabbe those are the correct lines but I'm not sure what branch that blob is on, wherever possible we try to apply patches to the templates rather than the generated files but without a ton of empy logic there's not an easy way to do that.
Rather than restricting the dependency to amd64 I would suggest a negative qualification removing it from armhf. For example:
- ros-melodic-libpointmatcher [amd64]
+ ros-melodic-libpointmatcher [!armhf]

I would suggest also adding a comment on the source-level package.xml indicating that the dependency isn't available on and thus isn't required for 32-bit platforms so that people building from source on 32-bit platforms know that they can skip that rosdep key and still build successfully.
If you'd like me to review changes or initiate the PRs implementing my suggestions I would be happy to do so.

Yes it is better [!armhf] thx. I did the change for melodic and noetic:
https://github.com/introlab/rtabmap-release/commit/59ce7410d1fcc00601fd63dd30ce059c13806ff0
https://github.com/introlab/rtabmap-release/commit/0a4dcbc2aed2c5f6a9ca2e7b27bec4b47f2449dd
Will the buildfarm automatically detect the change and start a new build, or we should trigger a new build (I think I don't have permissions do that on jenkins).

Will the buildfarm automatically detect the change and start a new build, or we should trigger a new build (I think I don't have permissions do that on jenkins)?

You'll have to do a new bloom build, I believe.  It should be enough to just re-run bloom-release --track melodic --rosdistro melodic rtabmap, and that should just bump the debinc number.

Well, it seems not working as the dependencies are checked before the debian build, so not sure that can be fixed. Well, we will have to let armhf fails then...
https://build.ros.org/job/Mbin_ubhf_uBhf__rtabmap__ubuntu_bionic_armhf__binary/
https://build.ros.org/job/Nbin_ufhf_uFhf__rtabmap__ubuntu_focal_armhf__binary/

Ack. I failed to think of that. The build farm naturally has no idea that certain dependencies have been patched to be architecture specific. And blocklisting libpointmatcher builds on armhf would also block its downstream so there really isn't a good solution here within the current capabilities of the build farm.
@clalancette is there a reason that libpointmatcher builds aren't already disabled on armhf or should I open a PR to do it?

@clalancette is there a reason that libpointmatcher builds aren't already disabled on armhf or should I open a PR to do it?

No, feel free to open a PR to do that.  I'm happy to review.

@cottsay brought up the very good point that he added features to ros_buildfarm to support the very similar case of some non-critical test/static analysis dependencies not being available for packages on RHEL and that if I use package_ignore_list rather than the blacklist it won't disable the downstream packages. I don't think this is a slam dunk or generic solution to problems like this because the setting is buildfarm config-specific rather than package specific and it affects a package's entire downstream rather than just the package that "wants" to be built with or without that dependency.

No, feel free to open a PR to do that. I'm happy to review.

https://github.com/ros-infrastructure/ros_buildfarm_config/pull/214


ERROR error=failed to persist temporary repodata.json file

How do you resolve this error?
ERROR error=failed to persist temporary repodata.json file
ERROR error=failed to persist temporary repodata.json file
  × failed to persist temporary repodata.json file
  ├─▶ failed to persist temporary file: Access is denied. (os error 5)
  ╰─▶ Access is denied. (os error 5)

Should I just delete the files in ...\rattler\cache\repodata?


save and load on iOS don't work

The buttons on all the examples and the website don't work.

Interestingly, the entire toDataUrl stuff doesnt seem to work probably, since the whole undo system seems to be broken on ios.

Saving works. Loading does not.


Uesr Codes are in the Wrong Sort Order

Checklist

[ ]  I am not using Home Assistant. Or: a developer has told me to come here.
[ ] I have checked the troubleshooting section and my problem is not described there.
[ ] I have read the changelog and my problem is not mentioned there.

Deploy method
Docker
Z-Wave JS UI version
8.25.0
ZwaveJS version
11.14.0
Describe the bug
I was making some updates to usercodes to remove code 6 out of the 7 codes I have. After the update, code 6 seemed to disappear, but then I found it at the bottom of the User Codes UI. Even after updating the value, refreshing the User Code CC's, etc... it remains out of sort order.

To Reproduce
Setup 7 user codes
Mark code 6 as available
Expected behavior
Code 6's settings remain in order between code 5 and 7
Additional context
No response

@barndawgie why aren't you using the Users codes table instead?

Haha good point! I didn't realize those fields were editable until now...


Post screenshots of preview sites in PR comments

I made a new repo to push artifacts to: https://github.com/commaai/ci-artifacts. There's a deploy key for that repo in the CI_ARTIFACTS_DEPLOY_KEY GitHub secret.
I think the workflow file has to already use the secret in master, so if you make a minimal PR that does nothing but "echo", I'll merge that first so you can work on this.

I made a new repo to push artifacts to: https://github.com/commaai/ci-artifacts. There's a deploy key for that repo in the CI_ARTIFACTS_DEPLOY_KEY GitHub secret.
I think the workflow file has to already use the secret in master, so if you make a minimal PR that does nothing but "echo", I'll merge that first so you can work on this.

Using the secret in master: https://github.com/commaai/new-connect/pull/40

I think you should be able to use the secret now

So still can't run the workflow in a PR from a fork, or else anyone could then dump the secrets. But I ran it on my fork with some slight changes to point to my ci-artifacts repo etc.
This is the comment it produces: https://github.com/signed-long/new-connect/pull/4#issuecomment-2193369487
This is the diff comparing this change to what created that comment: https://github.com/signed-long/new-connect/pull/6/files
@adeebshihadeh, before merging will also need the https://github.com/commaai/ci-artifacts repo initialized. This PR pushes the images to new-comma/pr-<pr number> on main. But can adjust to however you want to structure that repo.


[SPARK-38462][CORE] Add error class INTERNAL_ERROR_EXECUTOR

What changes were proposed in this pull request?
This change adds a error class INTERNAL_ERROR_EXECUTOR and change exceptions created in the executor package to use that error class.
Why are the changes needed?
This is to move exceptions created in package org.apache.spark.executor to error class.
Does this PR introduce any user-facing change?
Yes. The exceptions created in package org.apache.spark.executor will change to be of error class INTERNAL_ERROR_EXECUTOR.
How was this patch tested?
Existing unit tests.

+1, LGTM. Merging to master.
Thank you, @bozhang2820.


Tests for ReleaseVersion converters

Streamline definition of universe.v3.model.PackageDefinition.ReleaseVersion
Add tests for and clean up converters for ReleaseVersion
Use converters to define Decoders for ReleaseVersion
Define ConversionFailureInjection which enables a single error message template to be used through a chain of Injections and Bijections

Overall looks good.
As mentioned offline, i'm not crazy about the foo.as[Try[Bar]] but we can chat about that for a different change.


Support omitting self-closing tags of void elements like

Hey there,
This project is awesome!
Proposal
I wondered if it'd be worthwhile to make void elements not self-closing.
For example,
s might output as:

  so much depends

  upon

  a red wheel

  barrow

  glazed with rain

  water

  beside the white

  chickens.

Currently, the output looks like this:

  so much depends

  upon

  a red wheel

  barrow

  glazed with rain

  water

  beside the white

  chickens.

But why?

Self-closing tags don't really exist in HTML.
erb_lint considers the current style a violation by default.
saves a few bytes over the wire?

@rdimartino what do you think about this suggestion? Since you made some changes to the void-tags.
According to erb_lint they consider self-closing void elements to be XHTML style and writing them without self-closing as HTML5 style which I think is what modern browsers are targeting.

@davidwessman I think that I used self-closing tags in #73 to match how prettier formats HTML in my project, but I have come to believe that they're doing it wrong. I think this plugin should still be able to parse self-closing tags, but I support formatting the void elements as suggested here.


Future request: expanding storage

How i can expand the storage by myself?

Ah, I’ve never seen this before. You can’t —browsers have a set localStorage amount, like 5MB. If you exceed it, CF can’t autosave the flow. You can still export it to a file, though. (I think CF is actually compressing it, too, before storage, so exceeding 5MB is pretty significant.)
Is the error message annoying —popping up over the screen multiple times? If so we should fix that. But I can’t fix the limitations of autosaving on the browser end.

Thank you for bringing this issue to my attention. It turns out that while I was compressing the cache, I was not compressing the flow UI state upon save. This now fixed in <IP_ADDRESS>. All localStorage.setItem calls are also error handled, as a consequence, so the error should now be surpressed to the console.
I am closing this issue as I mentioned before, that localStorage cannot be increased --it is a browser-specific feature. However, it is only about the autosaving feature of CF, not while the webpage is loaded. Always export your flows as you work on them.


Bump cgivar2gvcf for PGP data on processing

And reprocess all PGP connections to get the improved format.

Closed by https://github.com/PersonalGenomesOrg/open-humans-data-processing/commit/bfbf07acbe048b62a2920b80175ee8690b43f520


Enable timestamps by default in logs

Close #1696

@rahulruikar see my comment in https://github.com/portainer/portainer/issues/1696#issuecomment-371341857
I think that we should add a switch to display timestamps which should be disabled by default.

ping @rahulruikar

I was bit busy..will try to submit it today.. c u in brisbane tomorrow :)

Ah no rush ! Was just wondering if you were still up for it, see you tomorrow :-)

Thanks @rahulruikar :+1:


Create a subset the data from SA moorings.

•	Create code where we can access the different moorings.
•	Create a map where we can see the locations of the SA moorings we are using (+NRS station) with a bathymetry background.
I would like to use the SA coastal moorings and the SA NRS station.

SA coastal moorings that are active: SAM8SG, SAM5CB
NRS station: NRSKAI
SA coastal moorings that are not active but have data available: SAM2CP, SAM6IS, SAM3MS, SAM7DS

In theory, we can access data from all of those, but I haven't tried that yet for all of them.
Here there is a code that gets data from the NRS station in SA stored in the AODN, from the "IMOS bucket": https://github.com/ribeiron/ohw22-proj-plot_this_and_that/blob/main/notebooks/IMOS_buoy_plot_anomaly_NRS_SA.ipynb
But SA has other coastal moorings there that can be used. On the AODN Portal, you can see how many there are https://portal.aodn.org.au/search.
In the IMOS website there is also more info on them and the moorings code names: https://imos.org.au/facilities/nationalmooringnetwork/samoorings
Here is the IMOS bucket, so you can understand a little better how the file structure is http://imos-data.s3-website-ap-southeast-2.amazonaws.com/?prefix=IMOS/ANMN/

@ribeiron can we close this one?

map uploaded


Enable hiding of Home Indicator in Codespaces

Based on a recently filed issue on Codespaces.
It'd be great to provide the option of hiding the "Go Home/back to GitHub" indicator at the top of the activity bar. This would be in line with the current behavior for other icons in the activity bar.

That is possible today, I am not sure what version of VSCode you are running with:

Weird! Sorry for the noise - it's working for me now!


[Beta] Suggest/referencing values with refs

Is there a reason we need the input to be controlled?

thanks, but the Prettier changes are not needed. can you please undo them so I can see what you're changing?

@gaearon Formatting the code according to the .prettierrc in the repo. The changes are in a separate commit: https://github.com/reactjs/reactjs.org/pull/5097/commits/3c127505ecf7b0738873064a246acc0ec2992596

sorry, I don't know how to configure prettier correctly, but we don't run it on Markdown

@gaearon No worries, I'll configure it to ignore markdown with another PR, and update this one accordingly.

sorry, I don't know how to configure prettier correctly, but we don't run it on Markdown

Content markdown ignored in #5098

thanks, but the Prettier changes are not needed. can you please undo them so I can see what you're changing?
we don't run Prettier on Markdown

I've forced pushed up just a single commit with the proposed changes.


opt Refactor memory maintenance thread

step 1. Refresh process memory metrics.
step 2. Refresh allocator memory metrics.
step 3. Update and print memory stat when the memory changes by 256M.
step 4. Asyn Refresh cache capacity
step 5. Cancel top memory task when process memory exceed hard limit.
step 6. Refresh weighted memory ratio of workload groups.
step 7. Analyze blocking queries.
step 8. Flush memtable.
step 9.


webcam.js could not access webcam: ConstraintNotStatisfied error

I am having this function to initialize webcam.
var app;

app = angular.module("app");

app.directive('dockingWebcam', [
  function() {
    return function(scope, element, attributes) {
      Webcam.set({
        width: 320,
        height: 240,
        dest_width: 1024,
        dest_height: 800,
        image_format: 'jpeg',
        jpeg_quality: 90,
        force_flash: false,
        flip_horiz: true,
        fps: 45
      });

      Webcam.attach(attributes.id);
    };
  }
]);

It used to work, but now I am getting below error:

Any idea what could be wrong. My chrome version is 61.0.3163.100 (Official Build) (64-bit).

have you tried in HTTPS? Most of the browsers does not allow to access A/V devices on non encrypted sites.

Looks like some kind of weird constraint error.  The first thing that stands out is, why are you asking for 45 FPS?  I'd try removing that param first.  If that doesn't work, you can try specifying your own constraints.  The default is to put the width and height into a mandatory clause, so you can try something without that.  Also, try other browsers and a different webcam, if you have it.
Do either of these pages work?

https://simpl.info/getusermedia/
https://davidwalsh.name/demo/camera.php

@jhuckaby removed 45 FPS argument. Still doesn't work. The 2 sites you had mentioned worked after I allowed the access to my camera. My web version also used to ask me for camera access and when I did allow it, I get the camera.
The exact code worked in Firefox without any change though. In Safari I got below error:

Webcam.js Error: Could not access webcam: NotAllowedError: The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission. NotAllowedError (DOM Exception 35): The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission.

@zsalab documentation says it works in localhost though.

@zsalab The error is gone when I set the constraint.
Webcam.set("constraints", {
  optional: [{ minWidth: 600 }]
});

My working code now is:
var app;

app = angular.module("app");

app.directive("dockingWebcam", [
  function() {
    return function(scope, element, attributes) {
      Webcam.set({
        width: 500,
        height: 400,
        image_format: "jpeg",
        jpeg_quality: 90,
        force_flash: false,
        flip_horiz: true,
        fps: 45
      });

      Webcam.set("constraints", {
        optional: [{ minWidth: 600 }]
      });

      Webcam.attach(attributes.id);
    };
  }
]);

But It is loosing the picture quality. What params to adjust for this?

I also was getting the same error. This was due to setting higher resolution than webcam supports. What is the mega pixel of your webcam?


Can't make datepicker full width of its parent container

so i have been trying to make datepicker take the full width of its parent but failing so far. tried flex: 1 and alignSelf: stretch but no luck so far. anyone knows if it is possible to do this ?

You can use style prop to overwrite the style, But you should use {width: -1} to cover the default width style, then the flex layout can work.

also this works: style={{width: null}}


Config: Add option disabled for modules config

Why not just comment out a module?

Because it takes more time if you do it often. Would welcome this feature as well and it doesn't hurt or does it somehow? :/

Am 04.11.2016 um 21:01 schrieb Michael Teeuw<EMAIL_ADDRESS>Why not just comment out a module?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub https://github.com/MichMich/MagicMirror/pull/498#issuecomment-258533233, or mute the thread https://github.com/notifications/unsubscribe-auth/AA8mOtUE6w-BE7SULyCN4hts6iANuZkqks5q648bgaJpZM4KpnuK.

In a good editor it takes one keypress. ;)
It looks like the node modules are not disabled. Only the frontend. This should probably be Fixed. Remember that a config can include multiple instances of one module. (Of which one, more or all are disabled ...)

Disabling the node helper would be useful, but we could scan all modules first, before starting the node helpers. This feature would also be great for the remote control, since commenting out a module also stop being able to read the config values.

In what case would your app need a config for a disabled module? Since it's impossible to enable it on the fly?

Not on the fly, but I also wanted to enable editing the config on HD, and it would be handy to be able to "remove" a module (by disabling), but still keeping the data, in case you want to add it later again.

Alternatively I can solve this by saving such disabled modules in a different file, which was my current idea.

Hello Guys, IMHO, I think is good add the flag, we'll can build the base for future to integrate a module config like @Jopyth say. I think is a good approach a new features.

@roramirez Are you planning on integrating the node_helper loading into this change?

Hi @MichMich, I can do it.

I close this PR. Fee free to resubmit a PR which includes the node_helper part.


(hardware_layer) publish roll pitch also from hardware_imu

publish roll and pitch just like yaw from hardware_imu
also make sure to do so to the same topic as gazebo

not really required


Switch to pyproject.toml and remove setuptools run-time dep

@twizmwazin is there any way we can keep the setup.py and the pyproject.toml? Doing this kills support for Python 3.8, which is still the current version on Ubuntu 20.04

We can keep the stub setup.py, but how does this remove support for python 3.8?

Just to confirm, you can install my branch of BinSync in a fresh ubuntu 20.04 docker container with this:
apt update; apt install python3 python3-pip git
pip install "git+https://github.com/twizmwazin/binsync.git@modern-packaging"

@twizmwazin does editable build work too? I could've sworn it did not work... strange


web page documents doesnt show the correct reference links in a response.

Let me first thank you for creating this sample, it was really helpful.
After uploading content from a weburl using the UI created, the  responses based on the url content doesn't display the right name of the reference links. Currently it always shows as "content.url" for any url uploaded.
Ideally it would be better the show the real link which was uploaded as reference.
Any suggestions to get the correct link in the response?

Slightly modifying the AskQuestion.razor file as below fixed the issue.
@if (answer != null)
{
The answer is: @answer.Answer
@foreach (var citation in answer.Citations)
{

@if (citation.SourceName == "content.url")
{
Source<EMAIL_ADDRESS>}
else
{
File name: @citation.SourceName
}
File<EMAIL_ADDRESS>
}
}


articles/openshift/support-lifecycle: Modernize example versions

Less mental work for folks if they don't have to project themselves back to the distant history of 4.5 when reading the docs.  Converting to something generic like 4.y and 4.(y-1) would work too, but that seemed like a bigger shift, so this commit kicks the can a bit further down the road.  Folks can either keep periodically kicking things along, convert to generic placeholders, or give up and let things go stale again, whatever seems to make the most sense.

@wking : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#label:"aq-pr-triaged"

#reassign:johnmarco

@joharder @johnmarco - Can you review this old PR and determine whether it needs to be closed or merged?
IMPORTANT: When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.

@wking Sorry, it looks like this is fairly stale and was assigned to someone no longer on our team. Since some time has passed, the versions you changed it to are also no longer the latest. The latest versions right now are 4.9 and 4.10, with 4.11 coming soon. If you want to change the numbers again, we can get this merged. If not, I can create a new PR myself to do it.

This was updated in commit 260b71f and is now live.
#please-close


chore: Upgrade terrafrom-docs to v0.17.0

Description of your changes
Upgrade to v0.17.0 for new version released.

I have:

[X] Read and followed terraform-docs' contribution process.

How has this code been tested
Yes, the container builds successfully.

Hello, any chance this gets merged and released anytime soon ?

This has apparently been done but without creating a new release

Thank you @fernandoataoldotcom, but closing this in favor of #125


fix: unhandled fallback error responses

We've got a handful of reports of users getting unformatted responses. The reason was that responses from altruists were not being JSON enforced as they should.
The response from fallbacks (altruists) was being JSON-stringified, and that automatically makes it parseable to a JSON object despite it being a plain string (most of the cases HTML with bad responses from nodes).
This PR checks whether the given string passes an enforcement check without being stringified, to avoid any wrong responses reaching the clients. It also includes:

Polishing of the error system, as well as updated tests for all of the changes made.
Better naming for some errors in our system
Clients can't send invalid JSON req bodies for load balancer relays.
Error handling rpcID extraction from raw data.
Service nodes responding with bad data returned a custom error response to the user saying that the response was invalid. No altruist attempts were being made; now fixed and it does.
gatewayAAT fields don't throw anymore if some field is missing (mainly happened with 'version')
nodejs assert for promises asserting (https://nodejs.org/api/assert.html)
Supported node version to 16.14 as this is what we are using for Dockerfile 16-slim which is a slim 16.14.

Link T-576


[V5]custom the default auth target tables/model

is there any way to change the default target other that User model?
i've seen you can only set model User only.
config/auth.ts

contracts/auth.ts

I made this 2 tables because every users has different feature so I separately.
I did this on Laravel works as well.

Closing since not actionable.


Error handling

There are a LOT of todos in code where an error should be handled properly. Must be complete for release.

Can now throw new HttpError(404); and if not caught, will respond with the correct HTTP status, and display relevant page.


New instances of persistent containers are always created on each test run when using DistributedApplicationTestingBuilder

Container resources configured to be persistent with .WithLifetime(ContainerLifetime.Persistent) will get new instances created for every test run when using DistributedApplicationTestingBuilder, resulting in extra container instances that never get cleaned up.
This is due to DistributedApplicationTestingBuilder always setting a resource name suffix based on Random.Shared.Next() for every instance of a DistributedApplication that it creates:
https://github.com/dotnet/aspire/blob/973a62362af61ce7a00c51d361d2ad14a9e5acb2/src/Aspire.Hosting.Testing/DistributedApplicationFactory.cs#L163C14-L163C79
This behavior means that all resources created by DistributedApplicationTestingBuilder are always isolated, which conflicts with the idea of persistent containers.
We should consider introducing support for controlling the behavior of persistent containers from tests so that isolation (from regular app host runs and/or between test runs) can be an controlled, similar to the proposal for controlling volume isolation in #4462.

Related to #6850.

@afscrome oh doh, I didn't find that one when I went searching 😢
I'll close this as a dupe.


feat: verbose output (show timings per response)

When running Ollama from the command prompt, you can type the --verbose argument to get timings that output like this:
$ ollama run --verbose llama2
>>> Hi
Hello! It's nice to meet you. Is there something I can help you with or would you like to chat?

total duration:       1.279118717s
load duration:        891.933µs
prompt eval count:    21 token(s)
prompt eval duration: 231.416ms
prompt eval rate:     90.75 tokens/s
eval count:           25 token(s)
eval duration:        1.042407s
eval rate:            23.98 tokens/s

Is there a way to get this to appear in the web UI?

The requested feature has been added with #215. Please try out the latest version, and let me know if you encounter any issues. Thanks!

Ty! 👏 👏 👏

@tjbck I have just spun up the latest version of this image and so many things have changed. Do you happen to know if this feature is still present? I can't seem to find it in the latest version.

All still there :)

@tjbck okay, thanks for showing that.
I think what happened between versions for me is that I was decoupling the model API from the docker container and trying to have a separate API for the models. At first, I was using the LiteLLM models feature. I'm assuming it doesn't work for that?
Anyhow, I figured out how to use Ollama models instead and now I see the generation info again.


How can i add another language

How can i add another language for example Arabic is it only add another resource file with the language iso code?

Yes, have a look at TranslatorHelper.cs:
The exact culture string is searched for first (e.g. "ar-DZ.po") then it falls back to the two letter iso name (e.g. "ar.po"), and if those weren't found it uses "en.po".


Terminal.sendText seems to strip unicode/emoji

GitLens uses Terminal.sendText to execute certain git commands, e.g. creating branches, and if the branch name you choose contains an emoji, the emoji never makes it into the terminal.
For example, I was trying to create a branch with an emoji in it:
GitLens is calling Terminal.sendText('git branch ✨foo main', true) and I only see git branch foo main in the terminal and the branch gets created without the emoji, e.g. foo in this case.
/cc @Tyriar @meganrogge

Terminal: run selected text in active terminal is not stripping unicode for me. I wonder if that's because we get the line content from the editor and it's handled specially there
https://github.com/microsoft/vscode/blob/ca85585881108598d2d13c4a1f43e0205937aec3/src/vs/workbench/contrib/terminal/browser/terminalActions.ts#L533-L551

Hrm, doesn't work for me when I try the same. I'm on Windows tho.

Looks like that issue is documented for windows https://github.com/microsoft/vscode/issues/35266

Ah ouch. It's odd that I can copy/paste them into the terminal and its fine, but sendText strips them completely and using the Emoji picker on windows inserts odd unicode characters (not the correct emoji).


python311Packages.qcodes: 0.42.1 -> 0.43.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python311Packages.qcodes is: Python-based data acquisition framework
meta.homepage for python311Packages.qcodes is: https://qcodes.github.io/Qcodes/
meta.changelog for python311Packages.qcodes is: https://github.com/QCoDeS/Qcodes/releases/tag/v0.43.0
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.43.0 in filename of file in /nix/store/2mhdzb60bciy36psbmqyfy863lwlch9h-python3.11-qcodes-0.43.0

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath
python311Packages.qcodes
python311Packages.qcodes-contrib-drivers

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/2mhdzb60bciy36psbmqyfy863lwlch9h-python3.11-qcodes-0.43.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python311Packages.qcodes https://github.com/r-ryantm/nixpkgs/archive/fb857dd3190ed07262c323b68385bc6138493ffc.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/fb857dd3190ed07262c323b68385bc6138493ffc#python311Packages.qcodes

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/2mhdzb60bciy36psbmqyfy863lwlch9h-python3.11-qcodes-0.43.0
ls -la /nix/store/2mhdzb60bciy36psbmqyfy863lwlch9h-python3.11-qcodes-0.43.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package failed to build:

python311Packages.qcodes-contrib-drivers

1 package built:

python311Packages.qcodes

Maintainer pings
cc @evilmav for testing.

@ofborg eval

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python311Packages.qcodes is: Python-based data acquisition framework
meta.homepage for python311Packages.qcodes is: https://qcodes.github.io/Qcodes/
meta.changelog for python311Packages.qcodes is: https://github.com/QCoDeS/Qcodes/releases/tag/v0.44.1
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.44.1 in filename of file in /nix/store/62188hwkagphg39kg8g4bj43g6dsa69r-python3.11-qcodes-0.44.1

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath
python311Packages.qcodes
python311Packages.qcodes-contrib-drivers

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/62188hwkagphg39kg8g4bj43g6dsa69r-python3.11-qcodes-0.44.1 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python311Packages.qcodes https://github.com/r-ryantm/nixpkgs/archive/7da9c5e48debb21f3c0cf68c1ef77957b3b3638b.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/7da9c5e48debb21f3c0cf68c1ef77957b3b3638b#python311Packages.qcodes

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/62188hwkagphg39kg8g4bj43g6dsa69r-python3.11-qcodes-0.44.1
ls -la /nix/store/62188hwkagphg39kg8g4bj43g6dsa69r-python3.11-qcodes-0.44.1/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package failed to build:

python311Packages.qcodes-contrib-drivers

1 package built:

python311Packages.qcodes

Maintainer pings
cc @evilmav for testing.


Smart tags are not populating in Reports Result column

Required Information

[ ] AEM Version, including Service Packs, Cumulative Fix Packs, etc: 6.5.10___
[ ] ACS AEM Commons Version: 4.11.0_
[ ] Reproducible on Latest? yes/no - yes

Expected Behavior
When I configure Report Result columns for smart tags, they should populate in the reports. Attached is the crx structure for the same.

jcr:content/metadata/predictedTags
Actual Behavior
When Report Results column configured for the smart tags, they should populate. Though it is in node structure under metadata.
Steps to Reproduce
Please add a predictedTags node under metadata as shown in the screenshot with few nodes under it. Configure the report results Tags column, and it should get the nodes under 'Predicted Tags'.
Links
Links to related assets, e.g. content packages containing test components

Hi @jyothishey ,
Just wondering if there has been any update on this? It looks as though there hasn't been any activity on the ticket. I've also opened a ticket on the Adobe Support Console and have not been able to progress it, so have been referred here.
Thanks,
Niall

@davidjgonzalez Hello, Sorry to ping you directly. We are not sure whom to reach out as this issue raised and no one had take a look into this till now. Could you help us if someone can take a look into this issue the customer is waiting for this fix on the ACS commons reports to pull the smart tags?

@jyothishey hi - this is an enhancement as reports feature was not designed to handle pulling complex structures like this. @pahupe was looking at this as something to possibly work on (but i can speak for him :))

Hi,
Is this likely to be picked up soon? I appreciate it’s an enhancement request but it was also done as part of project/ application enhancements to AEM and it would be great to get it added soon.
Thanks,
Niall
From: david g. @.>
Sent: 29 September 2022 14:00
To: Adobe-Consulting-Services/acs-aem-commons @.>
Cc: Robinson, Niall @.>; Comment @.>
Subject: Re: [Adobe-Consulting-Services/acs-aem-commons] Smart tags are not populating in Reports Result column (Issue #2929)

"This is an external email. Do you know who has sent it? Can you be sure that any links and attachments contained within it are safe? If in any doubt, use the Phishing Reporter Button in your Outlook client or forward the email to ~ I've Been Phished"

@jyothisheyhttps://github.com/jyothishey hi - this is an enhancement as reports feature was not designed to handle pulling complex structures like this. @pahupehttps://github.com/pahupe was looking at this as something to possibly work on (but i can speak for him :))
—
Reply to this email directly, view it on GitHubhttps://github.com/Adobe-Consulting-Services/acs-aem-commons/issues/2929#issuecomment-1262242850, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A3CV7YSMVQT7HUPRK7PQFULWAWHDHANCNFSM554UNR6Q.
You are receiving this because you commented.Message ID<EMAIL_ADDRESS>National Westminster Bank plc. Registered in England No. 929027. Registered Office: 250 Bishopsgate, London EC2M 4AA. National Westminster Bank plc is authorised by the Prudential Regulation Authority, and regulated by the Financial Conduct Authority and the Prudential Regulation Authority.
The Royal Bank of Scotland plc. Registered in Scotland No. 83026. Registered Office: 36 St Andrew Square, Edinburgh EH2 2YB. The Royal Bank of Scotland plc is authorised by the Prudential Regulation Authority, and regulated by the Financial Conduct Authority and the Prudential Regulation Authority.
The Royal Bank of Scotland plc and National Westminster Bank plc are authorised to act as agent for each other.
The Royal Bank of Scotland plc and National Westminster Bank plc are UK chartered banks and are not chartered or licensed as banks by the United States or any individual state.
This e-mail message is confidential and for use by the addressee only. If the message is received by anyone other than the addressee, please return the message to the sender by replying to it and then delete the message from your computer. Internet e-mails are not necessarily secure. The Royal Bank of Scotland plc, National Westminster Bank plc or any affiliated entity (“NatWest” or “us”) does not accept responsibility for changes made to this message after it was sent. NatWest may monitor e-mails for business and operational purposes.  Whilst all reasonable care has been taken to avoid the transmission of viruses, it is the responsibility of the recipient to ensure that the onward transmission, opening or use of this message and any attachments will not adversely affect its systems or data. No responsibility is accepted by NatWest in this regard and the recipient should carry out such virus and other checks as it considers appropriate.

Hi all,
Looking for any information on this? Is it likely to be added as a feature in the future?
Thanks,
Niall
From: Robinson, Niall
Sent: 05 October 2022 16:56
To: Adobe-Consulting-Services/acs-aem-commons @.>; Adobe-Consulting-Services/acs-aem-commons @.>
Cc: Comment @.***>
Subject: RE: [Adobe-Consulting-Services/acs-aem-commons] Smart tags are not populating in Reports Result column (Issue #2929)
Hi all,
Just wondering if there’s any update on this?
Thanks,
Niall
From: Robinson, Niall
Sent: 29 September 2022 15:13
To: Adobe-Consulting-Services/acs-aem-commons<EMAIL_ADDRESS>Adobe-Consulting-Services/acs-aem-commons<EMAIL_ADDRESS>Cc: Comment<EMAIL_ADDRESS>Subject: RE: [Adobe-Consulting-Services/acs-aem-commons] Smart tags are not populating in Reports Result column (Issue #2929)
Hi,
Is this likely to be picked up soon? I appreciate it’s an enhancement request but it was also done as part of project/ application enhancements to AEM and it would be great to get it added soon.
Thanks,
Niall
From: david g<EMAIL_ADDRESS>Sent: 29 September 2022 14:00
To: Adobe-Consulting-Services/acs-aem-commons<EMAIL_ADDRESS>Cc: Robinson, Niall<EMAIL_ADDRESS>Comment<EMAIL_ADDRESS>Subject: Re: [Adobe-Consulting-Services/acs-aem-commons] Smart tags are not populating in Reports Result column (Issue #2929)

"This is an external email. Do you know who has sent it? Can you be sure that any links and attachments contained within it are safe? If in any doubt, use the Phishing Reporter Button in your Outlook client or forward the email to ~ I've Been Phished"

@jyothisheyhttps://github.com/jyothishey hi - this is an enhancement as reports feature was not designed to handle pulling complex structures like this. @pahupehttps://github.com/pahupe was looking at this as something to possibly work on (but i can speak for him :))
—
Reply to this email directly, view it on GitHubhttps://github.com/Adobe-Consulting-Services/acs-aem-commons/issues/2929#issuecomment-1262242850, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A3CV7YSMVQT7HUPRK7PQFULWAWHDHANCNFSM554UNR6Q.
You are receiving this because you commented.Message ID<EMAIL_ADDRESS>National Westminster Bank plc. Registered in England No. 929027. Registered Office: 250 Bishopsgate, London EC2M 4AA. National Westminster Bank plc is authorised by the Prudential Regulation Authority, and regulated by the Financial Conduct Authority and the Prudential Regulation Authority.
The Royal Bank of Scotland plc. Registered in Scotland No. 83026. Registered Office: 36 St Andrew Square, Edinburgh EH2 2YB. The Royal Bank of Scotland plc is authorised by the Prudential Regulation Authority, and regulated by the Financial Conduct Authority and the Prudential Regulation Authority.
The Royal Bank of Scotland plc and National Westminster Bank plc are authorised to act as agent for each other.
The Royal Bank of Scotland plc and National Westminster Bank plc are UK chartered banks and are not chartered or licensed as banks by the United States or any individual state.
This e-mail message is confidential and for use by the addressee only. If the message is received by anyone other than the addressee, please return the message to the sender by replying to it and then delete the message from your computer. Internet e-mails are not necessarily secure. The Royal Bank of Scotland plc, National Westminster Bank plc or any affiliated entity (“NatWest” or “us”) does not accept responsibility for changes made to this message after it was sent. NatWest may monitor e-mails for business and operational purposes.  Whilst all reasonable care has been taken to avoid the transmission of viruses, it is the responsibility of the recipient to ensure that the onward transmission, opening or use of this message and any attachments will not adversely affect its systems or data. No responsibility is accepted by NatWest in this regard and the recipient should carry out such virus and other checks as it considers appropriate.

@jyothishey hi - this is an enhancement as reports feature was not designed to handle pulling complex structures like this. @pahupe was looking at this as something to possibly work on (but i can speak for him :))

Hi @davidjgonzalez , is there any update you can provide? i'd just like to know if it's likely to be added as a feature request in the future? thanks!


VSCode extension tutorial - minor clarification on populating COBOL sample dataset members

In wazi-tutorial/README-VSCODE.md, section “Edit and Submit JCL to compile, link, and run jobs”:
https://github.com/IBM/wazi-tutorial/blob/master/README-VSCODE.md#edit-and-submit-jcl-to-compile-link-and-run-jobs
“	•	For the COBOL and COPYBOOK PDS members, simply use Create New Member method to move files from your workspace to the MVS dataset:
◦	Create SAM1 and SAM2 members to USER1.SAMPLE.COBOL
◦	Create CUSTCOPY, SAM2PARM, TRANREC members to USER1.SAMPLE.COPYLIB”
.. it is not made clear how the user is expected to populate each dataset member (i.e. the "move files" part of Create New Member). For example, by manual copy/paste of the local file editor window contents for each corresponding file. (perhaps there will be drag/drop support in future per the equivalent section in the WAZI tutorial, but for now the intention of the author is not clear here with the VSCode extension)

Hi @UkRobJones
Thank you so much for creating an issue, going through the tutorial and doing some clarification on our Readme VSCODE. We definitely appreciate such feedback and suggestions. We will surely consider this clarification.
We are working more towards refining our tutorial and we will push new changes with some refinements soon. Let us know if you have further more questions/suggestions/feedback.
Thanks again.

Refined text with https://github.com/IBM/wazi-tutorial/commit/555a5fc31b50a4d053514a551ebe198cf27bac14


Problem of rendering SMPL mesh

Thanks for your great job.
I have trouble when rendering the SMPL mesh. could you share the renderer code?
Thanks.

Hi, you can check out the readme here for mesh visualization:
https://github.com/google/aistplusplus_api#visualize-the-smpl-mesh

Sorry for bothering you again. Maybe I didn't describe the problem clearly. The problem is how to render the mesh matching the original image. Something like this:https://github.com/mkocabas/VIBE/blob/master/doc/assets/parkour.gif

Hi, we rendered the mesh in blender so we don't have a script to attach it onto the image. I suggest you check out other repos that work on SMPL data such as VIBE or HMR(https://github.com/akanazawa/hmr). There should be many resources that you can find on github. Besides, pytorch3d is also a nice choice to render a mesh.

Thanks very much.
I'll try it.


How to handle backspace in a custom block

I have a custom block renderer component that looks like this:
const Section = ({block, offsetKey}) => {
  const { text } = block;
  return
{text}
;
};

Editing text in this seems to work fine, but hitting 'backspace' resets the selection to the beginning of the block, no matter where the cursor was. Am I missing something such that the component behaves properly on edits? Or is editing in a custom component not supported?

You should compose a DraftEditorBlock within your custom block if you'd like to render the text for the block. That way, the editor can use the rendered DOM to track selection behavior properly.
We hadn't used this behavior yet internally, so I overlooked it. It needs to be documented better. :)

Thanks. Making it a DraftEditorBlock indeed makes the selection behave properly, but the thing is that I wanted to avoid it rendering inline styles in this custom block. Is there a way to get proper edit behavior without having it decorate the inline styles?

Oh, interesting.
In order to map DOM selection to the model, the DOM structure must match the model. Which means that the decorators and leaf elements within the block need to be present. Moreover, the DraftEditorLeaf is responsible for setting DOM selection within itself. So if you aren't using that component, you'd have to implement that yourself.
Can you tell me more about this use case? I certainly don't want to say that it can't be done -- ideally we can come up with a good solution here, or define an API that helps support use cases like these. :)

In my case, I have blocks of text where styles don't make any sense. I don't want to actually delete the styles when converting to this block, I just want to pretend they're not there.
Thinking about it, I actually already have all I need: I can just pass an empty customBlockStyles to the DraftEditorBlock in this custom component, and it won't render any styles.

Yep, that should work.

I made it available in master, so hopefully that helps for now: https://github.com/facebook/draft-js/commit/2b7e3cceae70e74caf6aff588fa1ca10680dffa0


Unsound Send and Sync impls when the borrowed type is not

Filing to track the bug reported by @jDomantas in https://www.reddit.com/r/rust/comments/m42fjx/safetouse_procmacrofree_selfreferential_structs/gqt3i35/, which can result in UB in safe code.
use std::rc::Rc;
use once_self_cell::sync_once_self_cell;

struct Owner;

struct Borrowed<'a> {
    owner: &'a Owner,
    evil: Evil,
}

impl<'a> From<&'a Owner> for Borrowed<'a> {
    fn from(owner: &'a Owner) -> Borrowed<'a> {
        Borrowed {
            owner,
            evil: Evil::default(),
        }
    }
}

thread_local! {
    static STR: Rc<str> = "hello".into();
}

#[derive(Clone)]
struct Evil {
    rc: Rc<str>,
}

impl Drop for Evil {
    fn drop(&mut self) {
        let ptr = self.rc.as_ptr();
        let thread_id = std::thread::current().id();
        println!("drop rc at {:p} in thread {:?}", ptr, thread_id);
    }
}

impl Default for Evil {
    fn default() -> Evil {
        Evil {
            rc: STR.with(|x| x.clone()),
        }
    }
}

sync_once_self_cell!(
    SelfRef,
    Owner,
    Borrowed<'_>,
);

fn main() {
    let cell = SelfRef::new(Owner);
    let _evil1 = cell.get_or_init_dependent().evil.clone();
    std::thread::spawn(move || {
        let _evil2 = cell.get_or_init_dependent().evil.clone();
    });
}

drop rc at 0x21b53dbd0d0 in thread ThreadId(1)
drop rc at 0x21b53dbd0d0 in thread ThreadId(2)
drop rc at 0x21b53dbd0d0 in thread ThreadId(2)

See this comment chain for more background and discussion of different approaches https://www.reddit.com/r/rust/comments/m42fjx/safetouse_procmacrofree_selfreferential_structs/gqt3i35/
I'll fix it once I find the time.

This gets addressed by #7, the relevant place are:

https://github.com/Voultapher/once_self_cell/pull/7/files#diff-9ab425d0ba4c43d4de2ad95d93c99900e0bde023ea43a86cfae39888fc20266aR135
https://github.com/Voultapher/once_self_cell/pull/7/files#diff-b1a35a68f14e696205874893c07fd24fdb88882b47c23cc0e0c80a30c7d53759R355
https://github.com/Voultapher/once_self_cell/pull/7/files#diff-1778ecc1b76a790dccfe3d31d658c07d2464493912a0e873cce3cdf1a361f8d7R255


QQuickPaintedItem support

This PR adds QQuickPaintedItem support to Qml.Net.
I use this currently in a QML.Net based terminal application, so it seems to work.
The approach is:

Qml.Net provides a new registered type: QuickItems
Qml.Net provides a .Net base class for painted items: QmlNetPaintedItem
Users create a subclass of QmlNetPaintedItem on .Net side and implement the paint() method
The C++ side makes sure that the paint() call gets routed to the .Net class that can use the QPainter that is passed to do the actual drawing
Qml.Net makes sure that all properties, methods and signals that the QmlNetPaintedItem derived type has are mirrored to QML just as they are with any other type that gets registeres with QML

Example usage:
import Qml.Net 1.0
// [...]
    TerminalQuickPaintedItem {
        id: terminalContent
        anchors.fill: parent
        anchors.margins: terminalMargins
// [...]
    }

public class TerminalQuickPaintedItem : QmlNetQuickPaintedItem
{
    public TerminalViewModel TerminalViewModel { get; set; }

    public override void Paint(NetQPainter painter)
    {
        //implement paint logic
    }
}

//[...]

Qml.Net.Qml.RegisterPaintedQuickItemType<TerminalQuickPaintedItem>(@namespace, versionMajor, versionMinor);

Solves #198

Sorry for the delay, just getting to this.
I like this approach, and it could work well. The only thing I'm not a fan of is the onXChanged methods, and communicating that to the .NET paint handler. I'd prefer an approach that allows you to inherit a .NET QmlNetQuickPaintedItem that has methods that can be overridden, just as you would do with C++. We'd register this derived QmlNetQuickPaintedItem with QmlNet.RegisterPaintedType<T>(...) where T: QmlNetQuickPaintedItem.
Then, we'd have something like this:
MyCustomPaintedType {
}

public class MyCustomPaintedType : QmlNetQuickPaintedItem
{
    public override void Paint(QPainter painter) { ... }
    public override void OnWidthChanged(int width) { ... }
}

This is me thinking out-loud though. You are currently in the trenches, so I'd really like to hear what you'd consider the pros/cons of each approach in comparison.

Ok, seems like you were right :) I implemented the QuickPaintedItem in a way that the C# class implements Paint and controls the painting directly from .Net and integrated it in my Terminal app I'm working on.
Result: as fast as before.
It was a little bit tricky to have the NetReference managed .Net object that mimics a QuickPaintedItem to be a real QuickItem derived type in C++ but I think it's working now. I basically had to tweak the metaobject's superclass to point to the QuickItem types metaobject and prvent the .Net part from collecting QmlNetQuickPaintedItem's data.
The way it now works:
1. derive a class from QmlNetQuickPaintedItem
2. Register that new class using the new registration api extension
3. make sure that the data is accessible from the painted item
4. implement paint()
public class TerminalQuickPaintedItem : QmlNetQuickPaintedItem
{
    public TerminalViewModel TerminalViewModel { get; set; }

    public override void Paint(INetQPainter painter)
    {
        //implement paint logic
    }
}

//[...]

Qml.Net.Qml.RegisterPaintedQuickItemType<TerminalQuickPaintedItem>(@namespace, versionMajor, versionMinor);

//[...]

    TerminalQuickPaintedItem {
        id: terminalContent
        anchors.fill: parent
        anchors.margins: terminalMargins
//[...]
    }

I want to extend the tests and I'm not sure what properties of a QQuickPaintedItem might be relevant on the .Net side. I included height and width for now.

Great progress, looks awesome!
Instead of having drawImage with a byte[], would it be worth having
drawImage(System.Drawing.Image img);
and
drawBitmap(System.Drawing.Bitmap bmp);
variants? They could just do the conversion to byte[] in dotnet land.

Great progress, looks awesome!
Instead of having drawImage with a byte[], would it be worth having
drawImage(System.Drawing.Image img);
and
drawBitmap(System.Drawing.Bitmap bmp);
variants? They could just do the conversion to byte[] in dotnet land.

Thanks for the input. Not sure if we want to introduce a dependency to System.Drawing.Common for this purpose?
But thinking about that method we should at least add a variant that supports passing the file path instead of its data

What is the purpose of supportsTextInput?

This enables InputMethod support which allows to take part in e.g. preedit text sessions. This is needed when the PaintedItem wants to receive text.

Drive-by fixes #181 I assume.
I think it makes sense to wait for PR #215 as it also contains changes in the native part?

I'm not sure what's going on with #215. I eventually had time to review it (took me a while, I know, my fault), but I'm not sure the PR is going anywhere. I moved the native module master branch to where it was previously.
Anyways, this PR looks good to me.

After the conflicts are cleared, I think we can merge it.

Hi @pauldotknopf will you merge this PR when you think it makes sense or shall I?

It looks like there are some conflicts? Can you take care of them? After that, feel free to merge.

@pauldotknopf what conflicts do you mean?

Try 'squash and merge' option?

Seems like your Github UI wants to rebase?


Remove qiskit dependency from contrib

We only use it in consistent_qasm.py and consistent_qasm_test.py and it causes warnings like https://github.com/quantumlib/Cirq/issues/1885. Could we do without it?

I believe its optional already.  If Qiskit isn't installed, those tests don't run.

Ah okay. I've renamed the issue.

Qiskit 0.6 is in our dev requirements. Ply 3.4 is in our contrib requirements.
Related: see #1885 for details of the conflict in the versions of the ply package.

So many requirement.txts

Indeed :-)


[BUG] Cannot build the application. Yarn times out.

Describe the bug
Followed the instructions to build the application. It times out during yarn install. Possible it's not a bug on your end but I've been attempting this for a while now and it continues to fail at the same point.
To Reproduce
Follow the build instructions.
Expected behavior
Application builds.
Environment Information
Void Linux.
Additional context
Yarn times out at https://github.com/vapormusic/node-upnp-device-client, but I can access the link in a browser. Complete output.
Have you followed the troubleshooting guide and checked for any outstanding/pinned issues that can help?
Troubleshooting guide can be found here.
Yes
Unrelated to the bug report but a Flatpak version would be wonderful. Unlike Snap it does not require systemd and as such is accessible on all Linux distrutions whereas Snap does not run on those without it.

This app will be sunseted very soon and we are NOT maintaining this app
unless of a security issue. We encourage you to try Cider, our new music app built from scratch. Issues filled on that repository will be seen and will be acted upon. Please join our discord and see the #nightly-builds channel for a current build.
Cider can be found here


Patron records issue.

Descriptive summary
@lchodur: "FYI, I created a couple of New Patron on both Monday and Tuesday but when I am trying to create New Invoice today...all the New Patron that I created earlier this week is all gone. Will try again to enter New Patron now."

The reason that some patron records got deleted overnight is due to that the nightly running script  automatically delete patrons who don't have a record in the INVOICES table for data retention purpose.
Talked to Juliana to fix her script by adding a conditional statement to check if the patron record over a year.


Don't Merge! Regression pull request test

Docs Build status updates of commit 91829de:
:clock10: Pending: waiting for processors (21 builds ahead of you)
:warning: Docs Build is busy, currently there are 21 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit 91829de:
:clock10: Full build: the average full build time is 18 min(s) 31 sec(s), this is based on the last 194 build(s) for this repository.

Docs Build status updates of commit 91829de:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details
Dependent Files

TestingPullRequest.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit 91829de:
:clock10: Pending: waiting for processors (20 builds ahead of you)
:warning: Docs Build is busy, currently there are 20 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit 91829de:
:clock10: Full build: the average full build time is 18 min(s) 35 sec(s), this is based on the last 195 build(s) for this repository.

Docs Build status updates of commit 91829de:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details
Dependent Files

TestingPullRequest.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Swift Package manager can not import into Xcode (11b3)

Xcode SPM import error:
The package dependency graph can not be resolved, possibly because of these requirements:
https://github.com/adamcichy/SwiftySound.git — 1.1.0..<2.0.0
Using WWDC19 Beta 3 across the board.

Just ran into the same issue, trying to play around with SPM.

same issue

Confirmed it's fixed now. I can import using SPM without any issue.

This has been fixed in https://github.com/adamcichy/SwiftySound/pull/50


Enhance the plugin manager to reduce performance overhead

I want to enhance the functionality of the Plugin Manager. Users can customize the mode (Multiple enabled plugin lists). The mode only contains enabled plugins. It can be switched between multiple custom modes. The workspace remembers the current The use of modes.
Sorry, my English is not good.

The pattern is equal to the list of plug-ins launched. Users can customize multiple patterns, and only one mode can be used in a workspace

@kaiwood @AArnott @threeve @doudou

和我的遇到问题相同
扩展太多了，开发环境都不同。导致运行变化，或是出现错误的提示。
https://github.com/Microsoft/vscode/issues/69742

Yes this looks the same as #69742

是的，这与＃69742相同

这个问题你们是忽略，还是保留呢？
Are you ignoring or reserving this issue?


Allow getting a ComponentMapper via World

Currently it is only possible via injection to a system and for me that turned out to be just fine.
But I guess opening it up is not bad and allows for more possibilities for users and is therefore more flexible.


add action that opens the PRs for us

There are cases (e.g. when working on a release) where the current process is kinda slow, and we could speed it up by having the automation create the PR for us.
Having a workflow that can be triggered from the CLI would fix that.
# Create a PR for a post:
gh workflow run create-pr.yml --repo "https://github.com/nodejs/bluesky" \
  -F prTitle='vx.x.x release announcement' \
  -F richText='Node.js vx.x.x is out. Check the blog post at https://nodejs.org/…. TL;DR is

- New feature
- …'

# Create a PR for a retweet:
gh workflow run create-pr.yml --repo "https://github.com/nodejs/bluesky" \
  -F prTitle='Retweet vx.x.x release announcement' -F postURL=…

# Create a PR for a quote-RT:
gh workflow run create-pr.yml --repo "https://github.com/nodejs/bluesky" \
  -F prTitle='Retweet vx.x.x release announcement' -F postURL=… \
  -F richText=…

So I am not sure if this was the checkbox I clicked...(I wasn't looking at the screen super carefully when I clicked save)

The audit log says this, which looks about right:


removing redundant block.Type check

I added in the license file to close #6 but this could probably come in a different PR if that's easier

Hi there @actualben , the license you added looks like the same thing I would have done had you not beaten me to it; LGTM!

Thanks @actualben !