PolymorphicValidator support for delegate

System Details

FluentValidation version: 8.2.0
Web Framework version: ASP.NET Core 2.1

Issue Description
@JeremySkinner you've kindly provided (multiple times #111 ) an example of a PolymorphicValidator, to validate different objects depending on there interface implementation.
I now have a case where I need to pass in the parent object to one of these validators, but I'm at a loss as to how to change this class to support it. Do you have any thoughts or ideas?
Ideally I'd like a scenario where I can do this:
RuleForEach(x => x.Contacts).SetValidator(new PolymorphicValidator<IContact>()
                .Add(x => new EmailContactValidator(x, emailService))
                .Add(x => new PhoneNumberValidator(x, phoneService))
                .Add(x => new FacebookAccountValidator(x, facebookServce)));

But of course this doesn't work with the following:
public class PolymorphicValidator<TBaseClass> : NoopPropertyValidator
    {
        private readonly IDictionary<Type, IValidator> _derivedValidators = new Dictionary<Type, IValidator>();

        public PolymorphicValidator<TBaseClass> Add<TDerived>(IValidator<TDerived> derivedValidator)
            where TDerived : TBaseClass
        {
            _derivedValidators[typeof(TDerived)] = derivedValidator;
            return this;
        }

        public override IEnumerable<ValidationFailure> Validate(PropertyValidatorContext context)
        {
            // bail out if the property is null
            if (context.PropertyValue == null) return Enumerable.Empty<ValidationFailure>();

            // Make sure property is of correct type
            IEnumerable<TBaseClass> collection = context.PropertyValue as IEnumerable<TBaseClass>;
            if (collection == null) return Enumerable.Empty<ValidationFailure>();

            var results = new List<ValidationFailure>();

            int index = 0;
            foreach (TBaseClass item in collection)
            {
                // Find the validator to use based on actual type of the element.
                var actualType = item.GetType();
                if (_derivedValidators.TryGetValue(actualType, out var derivedValidator))
                {
                    var newContext = context.ParentContext.CloneForChildValidator(instanceToValidate: item);
                    newContext.PropertyChain.Add(context.Rule.PropertyName);
                    newContext.PropertyChain.AddIndexer(index);

                    // Execute child validator.
                    results.AddRange(derivedValidator.Validate(newContext).Errors);
                }

                index++;
            }

            return results;
        }
    }

It would be great to include this kind of Validator in the package too... what do you think?

I'm an idiot... I could just do this:
RuleFor(x => x.Contacts).SetValidator(x => new PolymorphicValidator<IContact>()
                .Add(new EmailContactValidator(x, emailService))
                .Add(new PhoneNumberValidator(x, phoneService))
                .Add(new FacebookAccountValidator(x, facebookServce)));

Hi, yes you're correct you can just use the overload of SetValidator that takes a delegate.
I don't recommend using the code you posted from #111 - that is very old and doesn't work with RuleForEach or with the async workflow. It'd be better to use the code I posted in my answer to your other question (https://github.com/JeremySkinner/FluentValidation/issues/1080#issuecomment-480267622).
I don't currently have plans to include this in the base package as I wouldn't consider this a common use case (FluentValidation is typically used when working with View-models or input-models that would typically have a simple/flat structure so wouldn't require this), but it's easy enough to implement yourself if it's something you really need....but I may re-think that in the future if it is regularly requested.


Mangá Dōjō

Source name
Mangá Dõjõ
Source link

https://mangadojo.com.br/
Source language
Português Brasil - PT-BR
Other details
No response
Acknowledgements

[X] I have checked that the extension does not already exist by searching the extension listing and verified it does not appear there.
[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a meaningful title with the source name.
[X] I will fill out all of the requested information in this form.

The website is back with an updated link


Add license

Hi!
Could you please add a license, so that others are free to fully use this code?
If you wanted to use GPLv3 for example, you could save this file into the repo with the name LICENSE. https://www.gnu.org/licenses/gpl-3.0.txt
Thanks!

Hi, new guy here. I am also looking to fork and make some modifications and update of the code. I don't won't to make the fork public without a license. If you are still maintaining this, an open-source license would be great!
MIT is what I usually go with for small projects like this

Thanks for the nudge and your interest - added an MIT license.


Calls to casts

Code changes itself are good to be merged. Still I would like to talk about setting timeouts in gen_server; is it necessary, and how else it could be handled (supervision tree?).


Feature request: nested object support

It would be really great to be able to create complex objects when using the columns: true option.  Here is an example.
Input:
name.first,name.last,address.street,address.city,address.state,address.zip,phone
Jon,Doe,1234 Some Street,SomeCity,MS,11223,888-555-1212

Output:
[
  {
    "name": {
      "first": "Jon",
      "last": "Doe",
    },
    "address": {
      "street": "1234 Some Street",
      "city": "SomeCity",
      "state": "MS",
      "zip": 11223
    },
    "phone": "888-555-1212"
  }
]

Currently the output would be:
[
  {
    "name.first": "Jon",
    "name.last": "Doe",
    "address.street": "1234 Some Street",
    "address.city": "SomeCity",
    "address.state": "MS",
    "address.zip": 11223,
    "phone": "888-555-1212"
  }
]

...which is difficult to use in code without using square brackets.  You could possibly use something like unflatten (see https://www.npmjs.com/package/unflatten) or obj-unflatten (see https://www.npmjs.com/package/obj-unflatten) to expand the complex objects.
Precedent: see https://github.com/Keyang/node-csvtojson#csvtojson

Did u look in the past issues and in the tests? this has been discussed recently but i cant remember if there was a pull request associated

Closing due to lack of activity. Feel free to open a new issue to initiate a new discussion on this topic.


memory_lock should be exposed as a parameter and default to true

elastic recommendation is to set memory_lock to true, see -
https://www.elastic.co/guide/en/elasticsearch/reference/5.5/setup-configuration-memory.html#mlockall
https://github.com/mesosphere/dcos-commons/blame/c38e10459a04dafe2263b782ed0c4398fc7c7767/frameworks/elastic/src/main/dist/elasticsearch.yml#L18

Hi @hanoch, thanks for bringing this to our attention. We have an internal ticket to address that. You can create further feature requests to our JIRA.
Thanks!


OpenSSL 3.0 not supported

Ubuntu 22.04 ships with OpenSSL 3.0. OpenSSL 1.1 is not available as a runtime library.
This produces the following error: No usable version of libssl found

@rob101 This question is answered in the support forum:
https://forum.aspose.com/t/does-aspose-python-via-net-work-on-ubuntu-22-04/252225

OpenSSL 3.0 is not supported for now.
On Ubuntu 22.04 you need to manually install the OpenSSL 1.1:
wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1l-1ubuntu1_amd64.deb \
 && dpkg -i ./libssl1.1_1.1.1l-1ubuntu1_amd64.deb

Example of Dockerfile:
FROM ubuntu:22.04

RUN apt update \
 && apt install -y python3.10 python3-pip libgdiplus wget \
 && wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1l-1ubuntu1_amd64.deb \
 && dpkg -i ./libssl1.1_1.1.1l-1ubuntu1_amd64.deb \
 && rm -i libssl1.1_1.1.1l-1ubuntu1_amd64.deb

ENTRYPOINT ["/usr/bin/python3.10"]

wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.0g-2ubuntu4_amd64.deb sudo dpkg -i libssl1.1_1.1.0g-2ubuntu4_amd64.deb
updated


Livetime interface updates

This pull request includes the timingserver layout from @basdelfos (up til #67f5736), including:

a nicer layout
pi temperature
shutdown and restart button for pi

I have further tweaked it by

using the full width of the window instead of Bas' default 900px
adding a clearfix for lap times so that nodes 4 to 8 stay on the same height
adding all fpv frequencies as a drop down

Hey @ErikBorra, I'll give this change a more in depth view when i have some time.  Out of curiosity, what value do you find that these changes add?  When I built this page, the intent was a place to test out the Socket.IO API as I was working with Cory for the Livetime integration.   I didn't really intend this page to be a long lived user facing UI.  All of these values are easily accessible from LiveTime.  If the value is the shutdown and temperature reading, those are things better requested from LiveTime, IMO.

Hi @punkkills,
thanks for your feedback. There are a few uses for the page:

shutdown/restart buttons
easier monitoring of correct calibration settings
monitoring the logs
rssi graphs display (livetime doesn't show rssi values)
better looking interface for future led control integration

I agree with @punkkills that this page shouldn't be used to change the timer settings, as these are available through Livetime.  But I think there are items that are helpful like the graphs.  I was planning on officially adding those at some point (it was already there, just not linked).  I also want to add the LED controls since LiveTime has limited commands.
What if we do both?  Remove the timer settings, and reconfigure the page to show the graphs and the LED controls?

Why should the timer settings not be changed through that page? It doesn't hurt, does it? Actually, I find it easier to change the settings via the page, as you get the direct visual feedback of the three coloured bars (rssi peak, calibration offset, current rssi) below.

I have an updated version of my original version of this page which also displays the looptime per node and also displays the input voltage (handy when using a lipo to power the Delta 5 or when using PoE adapter with very long UTP cable). The input voltage requires a hardware mod with voltage divider and an updated sketch on node 4.
I can upload the changes to github when interested.

Hi @punkkills,
thanks so much for your time and feedback. I'm sure many would love to have the LiveTime integration be better.
From the top of my head, the following would be great to have in LiveTime:

shutdown / restart
temperature
voltage reading (as @basdelfos has implemented)
indicators for current rssi, peak rssi and calibration offset
a button to 'copy event frequencies' like with the 8-way laprf

Currently LiveTime only sends a message to delta 5 when a race has started (by calling reset_calibration in server.py). It'd be awesome if LiveTime could also indicate to delta5:

when a race has completed
the colours associated to a specific frequency (for integration with the led functionality)

Last, but not least, if @lephiloux 's per node tuning was added to @scottgchin's repo (see this commit]), it'd be great if we could do that via LiveTime as well.
Shall I open an issue to discuss this, instead of discussing this here?

I've just merged the voltage and looptime monitoring to master of my fork.
https://github.com/basdelfos/delta5_race_timer

It’s  as you want , issue or here both are fine for me ;-)
Envoyé de mon iPhone

Le 2 mai 2018 à 09:26, Erik Borra<EMAIL_ADDRESS>a écrit :
Hi @punkkills,
thanks so much for your time and feedback. I'm sure many would love to have the LiveTime integration be better.
From the top of my head, the following would be great to have in LiveTime:
shutdown / restart
temperature
voltage reading (as @basdelfos has implemented)
indicators for current rssi, peak rssi and calibration offset
a button to 'copy event frequencies' like with the 8-way laprf
Currently LiveTime only sends a message to delta 5 when a race has started (by calling reset_calibration in server.py). It'd be awesome if LiveTime could also indicate to delta5:
when a race has completed
the colours associated to a specific frequency (for integration with the led functionality)
Last, but not least, if @lephiloux 's per node tuning was added to @scottgchin's repo (see this commit]), it'd be great if we could do that via LiveTime as well.
Shall I open an issue to discuss this, instead of discussing this here?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.


Communication to attendees

This issue will get a copy of all communication emailed to attendees: if you register late, you may be directed here to catch up with where we are.

Dear {first_name},
We're contacting you because you registered for the event {event_title}.
Congratulations on making it to CodeRefinery. We had about 135 people register before we closed it, and are able to take about 120. We are really excited to reach so many people at once, but to make this successful, we all need to prepare.
Most importantly, you need to make sure you have some software installed, configured, and verified. Don't underestimate the importance of this, even if you think you already have something installed. With so many people, this is even more important. Especially make sure that you verify your git installation and configuration for the first week. You can find software requirements on the course webpage:
https://coderefinery.github.io/2020-10-20-online/#software-requirements
There are two times we have scheduled for you to connect and get help with software installation and configuration. If you have any doubts, please connect and we can verify in advance:
16.october (Fri) 10-11 CEST
19.october (Mon) 16-17 CEST
You will receive Zoom links for this closer to time.
If you have problems and can't make any of these, please contact us at<EMAIL_ADDRESS>
If you haven't already filled the pre-workshop survey, please do that as soon as possible since it helps us with workshop preparation:
https://indico.neic.no/event/151/surveys/41
The workshop will be very focused on version control with Git. Some of you are already familiar with Git, but not all. While we will be starting from the basics, we will be progressing quickly so it's useful if you spend a few minutes to read up on the basic idea of Git. For this purpose, we have prepared this "refresher" material:
https://coderefinery.github.io/git-refresher/
Note that this material also contains important Git configuration steps which all of you should go through before the workshop starts, to save valuable time during the workshop.
You will receive a Zoom link for the workshop in the next few days (at least before the pre-workshop installation verification).
Note the timezones! The workshop starts at 9:00 in Stockholm time, 10:00 Helsinki time. Please connect 10 minutes in advance.
CodeRefinery strives to follow the Code of Conduct developed by The Carpentries organization. Please have a look at https://docs.carpentries.org/topic_folders/policies/code-of-conduct.html so that we all are aware of how to treat each other respectfully.
If you have any more questions, or it turns out that you can't attend, please contact us at<EMAIL_ADDRESS>p.s. you are a registered as a "{field:821}", if you have a team it is "{field:822}".
You can view your registration details on this page:
{link}
Best regards
CodeRefinery/Richard Darst

To waitlisted people
Dear {first_name},
We're contacting you because you registered for the event {event_title}.
Thank you for registering for CodeRefinery.  Unfortunately but as usual, we are very full, so we couldn't accept everyone.  So, you are currently still on the waitlist.  We also have to prioritize the Nordic countries.  If you believe that this is a mistake (for example, you are part of an existing team), please reply with more info.
Note that if you are in Sweden/Norway (and possibly other countries), you can attend this other workshop in November: https://coderefinery.github.io/2020-11-17-online/
However, we think that information should be free anyway.  We hope to continue our strategy of live-streaming the workshops, so that everyone can attend and learn.  You can find more information about this on our webpage.
You can view your registration details on this page:
{link}
Best regards
Richard Darst

Subject: CodeRefinery: final preparation, Zoom information
Dear {first_name},
We're contacting you because you registered for the event {event_title}.
CodeRefinery starts tomorrow, and we hope that you are as excited as we are.  Please make sure you are there 10 minutes early (or earlier if you have any problems), the time is 8:50 central european time.
As a reminder, here are the Zoom links:
  (removed)
  meeting-ID/passcode: (removed)  /  (removed)
=== To learners ===
Your breakout room number is {field:823}, so you should set your Zoom name to:
  ({field:823}) {first_name} {last_name}
=== To helpers ===
Your breakout room number is {field:823}, and you are a helper, so you should set your Zoom name to:
  ({field:823},H) {first_name} {last_name}
===
Keep this HackMD link avalilable, this is one way we take questions:
  (removed)
This workshop will be streamed and recorded. We have it set up so that you should not appear in the stream, however, to remove any chance of this happening you should leave your video off in the main room. However, any audio in the main room will be streamed to the world, recorded, and published on YouTube. Most people ask questions via text anonymously in the HackMD, so this should not be a problem. The breakout rooms are never recorded or streamed (and we encourage video and audio on there to be interactive). To learn about the streams, please see:
  https://coderefinery.github.io/2020-10-20-online/#streaming-info
  https://www.twitch.tv/coderefinery
If you haven't yet, check the previous messages for how to prepare - if you don't, you will start off behind.  Remember, there is a software installation help session later today (16 CEST), see the workshop webpage for information.
You can view your registration details on this page:
{link}
Best regards
Richard Darst

Coderefinery: day 1 follow-up
Thank you to everyone who attended today: things went well, and we ended on time.  If you didn't make it today or would like to review what we talked about, the video is available for 14 days on Twitch:
https://www.twitch.tv/coderefinery/videos
The HackMD questions are archived on the bottom of the workshop web page:
https://coderefinery.github.io/2020-10-20-online/#questions-answers-and-feedback
Tomorrow, we continue with git, and do branching, merging, conflict resolution, and history inspection.  You'll start to see the power of a version control system, as we prepare for truly collaborative work on day 3.
See you tomorrow, at the same time and place.

CodeRefinery: day 2 follow-up
Dear {first_name},
We're contacting you because you registered for the event {event_title}.
Thank you for attending day 2.  Tomorrow, we start real collaboration with git, building on the branching, merging, and conflict resolution we did today.  We will really see how git can be used as the centerpiece of a collaborative project: both for a single group, and the whole planet.
You can find videos from today at the usual place:
https://www.twitch.tv/coderefinery/videos/
The "git bisect" exercise was done on video, during the last breakout session.  You can see it here:
https://www.twitch.tv/videos/777045572?t=2h42m0s
HackMD from today is archived an the usual place:
https://coderefinery.github.io/2020-10-20-online/#questions-answers-and-feedback
You can view your registration details on this page:
{link}
Best regards
Richard Darst

We look forward to seeing you tomorrow for Day 4 of CodeRefinery: same place and time as last week.  Note that if you aren't in Europe, Europe has left summer time so local time for you might change, but is still 9:00 local time in central europe, 10:00 in east europe.  Verify the start time here: https://arewemeetingyet.com/Stockholm/2020-10-27/09:00/CodeRefinery
This week, we don't focus on version control, but other things that are needed in science: how to make your workflows reproducible.  How to make your software correct by testing.  How to be a part of larger projects.  And more.
You can find videos from today at the usual place:
https://www.twitch.tv/coderefinery/videos/
And HackMD will be shortly archived in the usual place:
https://coderefinery.github.io/2020-10-20-online/#questions-answers-and-feedback
We look forward to seeing you again!

Dear {first_name},
We're contacting you because you registered for the event {event_title}.
Thank you for attending day 4 - if you made it.  Tomorrow, we continue with documentation and Jupyter, which are very hands-on, before Thursday where we put everything together and see how to make your code the best it can be.
As a reminder, videos can be found here:
https://www.twitch.tv/coderefinery/videos/
You can find the demonstration of the Snakemake exercise, fully worked, here:
https://www.twitch.tv/videos/783284749?t=3h0m5s
And HackMD will be shortly archived in the usual place:
https://coderefinery.github.io/2020-10-20-online/#questions-answers-and-feedback
You can view your registration details on this page:
{link}
Best regards
Richard Darst

Dear {first_name},
We're contacting you because you registered for the event {event_title}.
Welcome to the last day of CodeRefinery.  I didn't remember to send a update yesterday, but we continue today at the same time and place.  Today, we cover automated testing and modular code development.  Everything we have studied leads up to here, and you will see how to put everything together with things you can do both for large and small projects.  We really hope to see you today.
As a reminder, for 14 days after each lecture, videos can be found here (we hope to put these on YouTube, too):
https://www.twitch.tv/coderefinery/videos/
And HackMD from yesterday will be shortly archived in the usual place:
https://coderefinery.github.io/2020-10-20-online/#questions-answers-and-feedback
You can view your registration details on this page:
{link}
Best regards
Richard Darst


Add missing properties file for azure-messaging-eventgrid

Description
Fixes #35775
All SDK Contribution checklist:

[x] The pull request does not introduce [breaking changes]
[x] CHANGELOG is updated for new features, bug fixes or other significant changes.
[x] I have read the contribution guidelines.

General Guidelines and Best Practices

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[x] Pull request includes test coverage for the included changes.

API change check
API changes are not detected in this pull request.


need download gradle everytime?

when I run dryrun command，download gradle everytime, how to resolve the problem?

Gradle will download a version if you don't have it yet on your computer.
If you go here:

ls ~/.gradle/wrapper/dists
you'll see all the versions you already downloaded

Cheers mate

但是那样还是需要下载好多gradle版本，能不能设置本地已经有的gradle版本

这个决定于你要编译项目里build.gradle脚本写的版本吧，应该不能
2016年12月19日 15:24，jamie1052741705<EMAIL_ADDRESS>但是那样还是需要下载好多gradle版本，能不能设置本地已经有的gradle版本
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/cesarferreira/dryrun/issues/39#issuecomment-267898356, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ARn3iRWLev3gOhzjQAq9gldWolyD97Vwks5rJjEagaJpZM4JOX5F.

Hey,
Please write in english, I won't be able to help otherwise

he thinks it's unfriendly too many gradle files to download, and want to set a specified version.  but I think it depends on the project you want to build, can't do that
2016年12月20日 08:09，César Ferreira<EMAIL_ADDRESS>Hey,
Please write in english, I won't be able to help otherwise
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/cesarferreira/dryrun/issues/39#issuecomment-268115854, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ARn3iW5p4FEFebpyOsF714SN9HUfYc_0ks5rJxyvgaJpZM4JOX5F.

You're totally right, it's project dependant, thanks for translating


fix issues related to heroku deploy

[x] using $PORT
[x] importing relative path
[x] remove numpy dependency? (maybe)
[x] include example Procfile
[x] deploy script? (run webpack -p and only add necessary files to git)

gonna call this solved with the documentation + cli decorator


prevent-duplicates option does not work for list of toasters

Hi,
I have faced the problem when I have list of toasters and I need to prevent duplicates.
Unfortunately it does not work now as it always checks only the latest item in array (see attached photo)

Instead of checking only the latest item it should loop the whole array. Does not it?
Please let me know when this can be fixed..
Thank you!

This is not necessarily a defect.  If you look at the toastr library, https://github.com/CodeSeven/toastr/blob/master/toastr.js, which is what AngularJS-Toaster was ported from, the functionality is identical.  preventDuplicates does not prevent ANY duplication in the toast array, but rather just the last toast (useful for accidental double firing from double-clicking, etc).
If this is a needed feature, rather than destroying the original functionality, it would make sense to expand the functionality in a new way (prevent-any-duplicates).

I do not think this is going to destroy something in original functionality. Instead of simple checking the latest  toaster it could loop the whole array. It will allow to keep existing functionality and expand it for new purpose (as you called it - prevent-any-duplicates).
See suggested pull request (https://github.com/jirikavi/AngularJS-Toaster/pull/149)
I still believe it can be done inside one option (prevent-duplicates). Do not see any reason to add new option and do this library so user-confused.

The original functionality explicitly did not check the entire array however, so the intent of the library WOULD mutate.  I'm not arguing that this is a bad change; in fact, it would probably be useful.  However, it is a very conscientious move from the original functionality of the library and it's predecessor and the impacts of that should be very clear before proceeding.

Is this library so tied to original one? I thought this is absolutely another, just similar library.
Let me explain the reason why I am asking about these changes.
I have the situation when I need to display several alerts (depends on some rules) using body-output-type: 'templateWithData'.
Template contains two buttons, say "Allow" and "Deny".
For instance, we have two alerts with two buttons inside each of them. My aim is to force user to pick up the suggested option (Allow or Deny). So when he still ignores these alerts and goes to another page I need to display alerts again.
When I have only one alerts, then it works nicely, but for multiple alerts it just duplicates existing ones.
NOTE: I cannot use toastId option and remove existing toasts from array and add them back due to animation.
I believe this is not rarely problem and a lot of developers who use this library will appreciate new changes.

Any updates? Is it going to be released soon?

Since no-one has raised any additional concerns, it seems like this is a reasonable change to make.  If someone down the road does not want full-array duplication checks, an optional flag can be added to distinguish behaviors, as I mentioned above.
Your merge request is missing the minified javascript.  Please minify and I'll approve the merge request.


Is source code available?

Hi @aparrish!
Thanks for making this. Is there a source code available for functions of this library? For example, for the pronouncing.search?

Yes, you can see it in https://github.com/aparrish/pronouncingpy/blob/master/pronouncing/init.py

Thanks!


Sampling throws the following error:

Thank you for sharing the project.
I'm getting the following error, I thought it had to do with the pyTorch version but after trying the minimum in the requirements file I still get the error. I'm not that familiar with Torch and would appreciate some help:

22-11-07 19:04:58.564 - INFO: Model [DDPM] is created.
22-11-07 19:04:58.564 - INFO: Initial Model Finished
22-11-07 19:04:58.565 - INFO: Begin Model Inference.
Traceback (most recent call last):
File "infer.py", line 70, in
diffusion.test(continous=True)
File "/content/Image-Super-Resolution-via-Iterative-Refinement/model/model.py", line 68, in test
self.data['SR'], continous)
File "/usr/local/lib/python3.7/dist-packages/torch/autograd/grad_mode.py", line 15, in decorate_context
return func(*args, **kwargs)
File "/content/Image-Super-Resolution-via-Iterative-Refinement/model/sr3_modules/diffusion.py", line 210, in super_resolution
return self.p_sample_loop(x_in, continous)
File "/usr/local/lib/python3.7/dist-packages/torch/autograd/grad_mode.py", line 15, in decorate_context
return func(*args, **kwargs)
File "/content/Image-Super-Resolution-via-Iterative-Refinement/model/sr3_modules/diffusion.py", line 182, in p_sample_loop
img = torch.randn(shape, device=device)
TypeError: randn() received an invalid combination of arguments - got (Tensor, device=torch.device), but expected one of:> 22-11-07 19:04:58.564 - INFO: Model [DDPM] is created.
22-11-07 19:04:58.564 - INFO: Initial Model Finished
22-11-07 19:04:58.565 - INFO: Begin Model Inference.
Traceback (most recent call last):
File "infer.py", line 70, in
diffusion.test(continous=True)
File "/content/Image-Super-Resolution-via-Iterative-Refinement/model/model.py", line 68, in test
self.data['SR'], continous)
File "/usr/local/lib/python3.7/dist-packages/torch/autograd/grad_mode.py", line 15, in decorate_context
return func(*args, **kwargs)
File "/content/Image-Super-Resolution-via-Iterative-Refinement/model/sr3_modules/diffusion.py", line 210, in super_resolution
return self.p_sample_loop(x_in, continous)
File "/usr/local/lib/python3.7/dist-packages/torch/autograd/grad_mode.py", line 15, in decorate_context
return func(*args, **kwargs)
File "/content/Image-Super-Resolution-via-Iterative-Refinement/model/sr3_modules/diffusion.py", line 182, in p_sample_loop
img = torch.randn(shape, device=device)
TypeError: randn() received an invalid combination of arguments - got (Tensor, device=torch.device), but expected one of:

(tuple of ints size, *, tuple of names names, torch.dtype dtype, torch.layout layout, torch.device device, bool pin_memory, bool requires_grad)

(tuple of ints size, *, torch.Generator generator, tuple of names names, torch.dtype dtype, torch.layout layout, torch.device device, bool pin_memory, bool requires_grad)

(tuple of ints size, *, torch.Generator generator, Tensor out, torch.dtype dtype, torch.layout layout, torch.device device, bool pin_memory, bool requires_grad)

(tuple of ints size, *, Tensor out, torch.dtype dtype, torch.layout layout, torch.device device, bool pin_memory, bool requires_grad)

(tuple of ints size, *, tuple of names names, torch.dtype dtype, torch.layout layout, torch.device device, bool pin_memory, bool requires_grad)

(tuple of ints size, *, torch.Generator generator, tuple of names names, torch.dtype dtype, torch.layout layout, torch.device device, bool pin_memory, bool requires_grad)

(tuple of ints size, *, torch.Generator generator, Tensor out, torch.dtype dtype, torch.layout layout, torch.device device, bool pin_memory, bool requires_grad)

(tuple of ints size, *, Tensor out, torch.dtype dtype, torch.layout layout, torch.device device, bool pin_memory, bool requires_grad)

I got it to run by changing on line 182 and line 191 of diffusion.py:
img = torch.randn(shape, device=device)
to
img = torch.randn(shape.size(), device=device)

And for the DDPM diffusion.py:
change:
b = shape[0]
to:
tmpShape = shape.size()
b = tmpShape[0]
in both instance.s

Feel free to reopen the issue if there is any question.


Separate Gemini v1 and v2 websocket integrations, Setup Gemini v2 Str…

https://github.com/knowm/XChange/issues/3863
A few open items:

I did not implement candlestick streaming
When you subscribe to the L2 price feed, trade and auction(although I didn't see any of these during my testing) messages are streamed in addition to l2_update messages. I didn't implement any behavior to react to non-l2 messages.

https://github.com/knowm/XChange/issues/3863
A few open items:

I did not implement candlestick streaming
When you subscribe to the L2 price feed, trade and auction(although I didn't see any of these during my testing) messages are streamed in addition to l2_update messages. I didn't implement any behavior to react to non-l2 messages.

Two comments
1). Is there anyway to subscribe to just the l2 messages? At the least I imagine non-l2 messages are filtered out?
2). I tend to prefer if you are building a v2 of the exchange to create a separate module xchange-gemini-v2 or something along those lines so that when it comes time to remove v1 it is a clean removal @timmolter not sure if you have a preference of how to do this.

Two comments
1). Is there anyway to subscribe to just the l2 messages? At the least I imagine non-l2 messages are filtered out?
2). I tend to prefer if you are building a v2 of the exchange to create a separate module xchange-gemini-v2 or something along those lines so that when it comes time to remove v1 it is a clean removal @timmolter not sure if you have a preference of how to do this.

@earce no preference, I've seen both options.

@earce no preference, I've seen both options.

In that case, I'll go ahead and create a separate module. @earce I'll take a look at the issues you raised in your comments sometime later this week.

In that case, I'll go ahead and create a separate module. @earce I'll take a look at the issues you raised in your comments sometime later this week.

Two comments
1). Is there anyway to subscribe to just the l2 messages? At the least I imagine non-l2 messages are filtered out?

I don't think so, the trade, auction, and heartbeat events are part and parcel to the L2 channel. They are being filtered out, at least no logic for processing them is currently in place.

Two comments
1). Is there anyway to subscribe to just the l2 messages? At the least I imagine non-l2 messages are filtered out?

I don't think so, the trade, auction, and heartbeat events are part and parcel to the L2 channel. They are being filtered out, at least no logic for processing them is currently in place.


Incrorrect wasmbinding query naming

Background
The following field in DenomAdmin wasmbinding query is incorrect: https://github.com/osmosis-labs/osmosis/blob/c783ef52af8617d3ec613d9ce9035386ba8d4a49/wasmbinding/bindings/query.go#L19
It is called Subdenom, however, this query expects smart contracts to pass full denom name.
Suggested Design
I suggest to rename this field into Denom. However, I acknowledge that this change will break existing contracts, it requires you to update them and it may get rejected for this reason.

I think we have to keep this due to breakage unfortunately :(


[BUG] [GSSOC' 21] Footer not fixed at the bottom

Describe the bug

In the index page the footer is not fixed at the bottom of the page i.e the footer is scrollable along with the page

To Reproduce
Steps to reproduce the behavior:

Go to the index.page
Scroll down
See the footer

Expected behavior

Fixed footer at the bottom of the site

Logs
If applicable, add logs to help explain your problem (e.g. the error message and/or exception traceback).
Environment (please complete the following information):

OS: Windows 10 pro
Browser: Google Chrome, Edge, Tor, FireFox

Additional context
@Vishal-raj-1 @ridsuteri

@Aditya201551 PR #681 is about to fix the issue.
kindly wait for 2-3 days..

@ridsuteri sure!

@ridsuteri ig its been 4 days now 😅

@Aditya201551 ok go ahead with it :)


[HOW-TO] Run a Custom Workflow

Question
How to run/execute a custom workflow in UCI?
Before we used this code:
xrmBrowser.CommandBar.ClickCommand("Run Workflow", "", true);
xrmBrowser.Dialogs.RunWorkflow("Name of the workflow");
Now:  try to use xrmApp, and don't know how.
Please help!
Thanks

Are you able to do it manually? How looks your Command Bar / Ribbon now?

Yes, we can run it manually.  Our workflow is under Flow -> Run Workflow (see image below). Sorry the image is not clear:

Thank you!

Were you able to find a Solution?


Manim review by Antonio

Thanks for the contribution! Please make sure your review is a new Markdown file in the new_reviews directory, eg: new_reviews/my_reviews.md.
Once you submit your pull request, the review will be validated and once all tests have passed we'll merge it into the repo.  GitHub Pages will then auto-magically generate the review at repo-reviews.github.io.
:heart: Repo-Reviews Contributors

Thank you for your review, @pingwie! It looks like the repository_owner and/or repository_name fields do not reference a valid GitHub repository.  Can you please update them to:
repository_owner: manimcommunity
repository_name: manim

Also, for your pictures, please remove the additional files added to assets/ and just paste directly into the markdown file while editing.  GitHub will automatically create a unique local asset for each image and link to it.
Thank you!

Hello,
Everything is fixed now, please let me know if there is any other issue.
El jue, 22 jun 2023 a las 9:11, repo-reviews @.***>)
escribió:

Thank you for your review, @pingwie https://github.com/pingwie! It
looks like the repository_owner and/or repository_name fields do not
reference a valid GitHub repository. Can you please update them to:
repository_owner: manimcommunity
repository_name: manim
Also, for your pictures, please remove the additional files added to
assets/ and just paste directly into the markdown file while editing.
GitHub will automatically create a unique local asset for each image and
link to it.
Thank you!
—
Reply to this email directly, view it on GitHub
https://github.com/repo-reviews/repo-reviews.github.io/pull/61#issuecomment-1602122556,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AK5VG4SRAKJFH63ULBKAM6TXMPVYNANCNFSM6AAAAAAZPGZFWE
.
You are receiving this because you were mentioned.Message ID:
@.***>


Generated code does not emit nested types correctly

I was authoring a test to use as an example of using Refit elsewhere, and to keep the code within the same file I considered declaring the types for the example as a nested class.
This however does not work because the code generated by Refit does not retain the parent class' name when generating the code to implement the specified interface, causing the project to fail to compile.
While this is easy to work around by restructuring the code on the part of the integrator, I feel that the generated code in this scenario should be valid to allow this scenario.
Code that generates the invalid code
using System.Threading.Tasks;
using Refit;
using Shouldly;
using Xunit;

namespace MyRefitExample
{
    public static class RefitExample
    {
        [Fact]
        public static async Task Nested_Types()
        {
            // Arrange
            var service = RestService.For<IGitHubApi>("https://api.github.com");

            // Act
            var actual = await service.GetUserAsync("paulcbetts");

            // Assert
            actual.ShouldNotBeNull();
            actual.Login.ShouldBe("paulcbetts");
        }

        [Headers("Accept: application/vnd.github.v3+json", "User-Agent: Refit-Nested-Types-Issue")]
        public interface IGitHubApi
        {
            [Get("/users/{user}")]
            Task<User> GetUserAsync(string user);
        }

        public class User
        {
            public string Login { get; set; }
            public string Id { get; set; }
            public string Url { get; set; }
        }
    }
}

Code that was generated
namespace MyRefitExample
{
    using RefitInternalGenerated;

    [Preserve]
    public partial class AutoGeneratedIGitHubApi : IGitHubApi
    {
        public HttpClient Client { get; protected set; }
        readonly Dictionary<string, Func<HttpClient, object[], object>> methodImpls;

        public AutoGeneratedIGitHubApi(HttpClient client, IRequestBuilder requestBuilder)
        {
            methodImpls = requestBuilder.InterfaceHttpMethods.ToDictionary(k => k, v => requestBuilder.BuildRestResultFuncForMethod(v));
            Client = client;
        }

        public virtual Task<User> GetUserAsync(string user)
        {
            var arguments = new object[] { user };
            return (Task<User>) methodImpls["GetUserAsync"](Client, arguments);
        }

    }
}

Code that should be generated
namespace MyRefitExample
{
    using RefitInternalGenerated;

    [Preserve]
    public partial class AutoGeneratedIGitHubApi : RefitExample.IGitHubApi
    {
        public HttpClient Client { get; protected set; }
        readonly Dictionary<string, Func<HttpClient, object[], object>> methodImpls;

        public AutoGeneratedIGitHubApi(HttpClient client, IRequestBuilder requestBuilder)
        {
            methodImpls = requestBuilder.InterfaceHttpMethods.ToDictionary(k => k, v => requestBuilder.BuildRestResultFuncForMethod(v));
            Client = client;
        }

        public virtual Task<RefitExample.User> GetUserAsync(string user)
        {
            var arguments = new object[] { user };
            return (Task<RefitExample.User>) methodImpls["GetUserAsync"](Client, arguments);
        }

    }
}

You're welcome to have a go at fixing this yourself, but it could be tricky. We only do syntax analysis on the interface files and copy their explicit references to the generated file. What you're asking would likely require either semantic analysis or a hack that's likely to only fix your specific use case.
There are two easy workarounds:

Move the interface into its own file.
Make the use of User in the interface explicit -- add the RefitExample. prefix yourself.

Since there are workarounds and it's not really a common scenario, this is going to be a very low priority for us, if we consider it at all.


Retyping after TextInput.clear() brings back characters before the clear.

Is this a bug report?
Yes
Have you read the Contributing Guidelines?
Yes
Environment

Target Platform: Android
Development Operating System: macOSX
Build tools: vscode, react-native-cli, android-studio, sdk: 23.0.1
Issue is specific to some android versions/devices: We could reproduce it with 'SM-G903F - 6.0.1'

Steps to Reproduce

Implement a textinput with a clear function that calls 'textinputRef.clear()' on an input ref
type something in the text field
trigger that clear
start typing in the exact same textinput

Expected Behavior

...
Textinput shows characters I typed
Texinput shows no characters
Textinput shows only the caracters typed after the clear

Actual Behavior

...
Textinput shows characters I typed
TexInput shows no characters
Textinput shows characters before the clear AND the characters typed after the clear

Reproducible Demo
https://snack.expo.io/HkCfLCYP-
The issue happens both with controlled and uncontrolled inputs.

same problem , anybody have some idea ?


feat: Add UpdatePolicy(ies) Functions

Added UpdatePolicy(ies) functions to support Update APIs added in Casbin.NET.

@AsakusaRinne @sagilio plz review


tar: /var/lib/ghost/content.orig: Cannot open

Host system
$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 16.04.5 LTS
Release:	16.04
Codename:	xenial

Docker version
$ docker -v
Docker version 18.06.1-ce, build e68fc7a

$ docker info
Containers: 15
 Running: 14
 Paused: 0
 Stopped: 1
Images: 41
Server Version: 18.06.1-ce
Storage Driver: overlay
 Backing Filesystem: extfs
 Supports d_type: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 468a545b9edcd5932818eb9de8e72413e616e86e
runc version: 69663f0bd4b60df09991c08812a60108003fa340
init version: fec3683
Security Options:
 seccomp
  Profile: default
Kernel Version: 4.4.38-std-1
Operating System: Ubuntu 16.04.5 LTS
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 1.956GiB
Name: feynman.scaleway
ID: KIQY:ET7I:ZF2Y:YKXC:KIKW:R46G:JDSX:PMR5:3XNC:5NLD:DOKV:634Z
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
 provider=generic
Experimental: false
Insecure Registries:
 <IP_ADDRESS>/8
Live Restore Enabled: false

WARNING: No cpu cfs quota support
WARNING: No cpu cfs period support

docker-compose.yaml
version: '3'
services:

  ghost:
    image: ghost:2.2
    restart: unless-stopped
    networks:
      - web
      - default
    volumes:
      - /srv/ghost:/var/lib/ghost
networks:
  web:
    external: true

Container log
$ docker logs ghost_ghost_1
tar: /var/lib/ghost/content.orig: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors
tar: /var/lib/ghost/content.orig: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors
tar: /var/lib/ghost/content.orig: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors
tar: /var/lib/ghost/content.orig: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors
tar: /var/lib/ghost/content.orig: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors
tar: /var/lib/ghost/content.orig: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors
tar: /var/lib/ghost/content.orig: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors
tar: /var/lib/ghost/content.orig: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors

Duplicate of https://github.com/docker-library/ghost/issues/69#issuecomment-319741569
https://github.com/docker-library/docs/tree/master/ghost#ghost-011x--ghost-1xx
Use /var/lib/ghost/content


Suggestion to make system more open

I noticed you had everything tied to sql server and active directory.
One suggestion I would have is to use more interfaces.
So a person can use sql lite if they want.
Or even cosmos db for storing data.
Next, allow flexibility so active directory is only one option.
A person can have flexibility for what to use for authentication.
I am able to design with interfaces so the business layer does not care how its being stored.
Let me know if I can help with that.

Making it more open would definitely be great.
However are you not able to swap the DBMS by creating new implementations of IUnitOfWork and its Repositories?
Or could you come with an example of how to improve the flexibility of this implementation?
Regarding Authentication, how would one make that more flexible other than being able to change these lines.
And then doing some more work on each endpoint?

Doing more work on each endpoint is worth it to be more flexible.  For the client side for example, if interfaces are used, then the client does not care what authentication is used.  I can help with those parts.

I checked that part.  Changing those lines mentioned is actually fine.
Because that is the program.cs.
The program.cs is where all the decisions are made.
It means another program can be created where different implementations can be used.


:ets.new(..., [..., write_concurrency: :auto]) only works with Erlang OTP-26

Hello,
Following the tutorial, I've generated a fresh new phoenix v1.7.11 with Ecspanse v0.8.1 on elixir v1.14.0 and with Erlang/OTP v24, and was surprised to get an error right after plugging the Ecspanse app in the application module:
** (Mix) Could not start application ecs: Ecs.Application.start(:normal, []) returned an error: shutdown: failed to start child: Ecs
    ** (EXIT) an exception was raised:
        ** (ArgumentError) errors were found at the given arguments:

  * 2nd argument: invalid options

            (stdlib <IP_ADDRESS>) :ets.new(:ets_ecspanse_components_state, [:set, :public, :named_table, {:read_concurrency, true}, {:write_concurrency, :auto}])
            (ecspanse 0.8.1) lib/ecspanse/server.ex:134: Ecspanse.Server.init/1
            (stdlib <IP_ADDRESS>) gen_server.erl:423: :gen_server.init_it/2
            (stdlib <IP_ADDRESS>) gen_server.erl:390: :gen_server.init_it/6
            (stdlib <IP_ADDRESS>) proc_lib.erl:226: :proc_lib.init_p_do_apply/3

This led me to this line:
https://github.com/iacobson/ecspanse/blob/2eb2f0eac9a922b0f574d599c15e9cdd08d2d87d/lib/ecspanse/server.ex#L139
    :ets.new(Util.components_state_ets_table(), [
      :set,
      :public,
      :named_table,
      read_concurrency: true,
      write_concurrency: :auto
    ])

From the :ets otp module, I see the :auto atom for write_concurrency has only been added in Erlang/OTP v26.
I'm going to restart using a later Elixir and Erlang/OTP v26, but I thought you might want to know in case you'd like backwards compatibility or something.

(and I can now confirm it starts fine with Elixir v1.16.2-otp-26 + Erlang/OTP 26.2.3)

Yes, I think simply publicising the requirements would be enough :) by the way, I'm almost done playing with the tutorial and it's behaving quite nicely :) thank you for your work.

Thanks so much 🙏 !


Encoding problem

If Cyrillic symbols are used, for example, "Задание", text becomes unreadable.
json file is in UTF-8.

Mh I have actually no idea how to fix this

Mh I have actually no idea how to fix this

Try adding UTF-8 to build.gradle
processResources {
	inputs.property "version", project.version
	filteringCharset "UTF-8"

	filesMatching("fabric.mod.json") {
		expand "version": project.version
	}
}

tasks.withType(JavaCompile).configureEach {
	it.options.encoding = "UTF-8"

	it.options.release = 17
}

levelz-1.1.5.zip
Added it here, would appreciate a test

But it's Villager Quests, not LevelZ :)

Ups XD sorry, I send one later

villagerquests-1.0.3.zip

Nope, the bug is there.

Honestly not sure how to fix this issue..

I call for help from other developers in here, cause this issue is important.

Maybe it was fixed now?


find_builtin_server_type should return Optional server type

This should not raise an error: https://github.com/idom-team/idom/blob/8a99b452fd877bea78b9718c1e32e8855c768166/src/idom/server/prefab.py#L16
It should just return None if no server implementations are installed. An error should then be raised at runtime if no server is explicitly given and no default exists.

Fixed by: https://github.com/idom-team/idom/commit/e29745e3f89fc58895978b3118fba3c6fe33d209


Percent

Codecov Report

Merging #148 (1e5bf1a) into main (71da1be) will increase coverage by 0.03%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main     #148      +/-   ##
==========================================
+ Coverage   90.68%   90.72%   +0.03%
==========================================
  Files          10       10
  Lines         827      830       +3
==========================================
+ Hits          750      753       +3
  Misses         77       77

Impacted Files
Coverage Δ

weather_command/_builder.py
100.00% <100.00%> (ø)

weather_command/_weather.py
100.00% <100.00%> (ø)

weather_command/models/weather.py
100.00% <100.00%> (ø)

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 71da1be...1e5bf1a. Read the comment docs.


More timecodes and related challenges

This is ready for review.
Timecodes and relatedChallenges for:
15-object-oriented-fractal-trees (also edited code links)
17-fractal-trees-space-colonization (also edited code links)
18-space-colonization
17 & 18 I added back some links that were in YT desc but not json
Edited the last  timecode in Julia set

Wonderful! Merging!


replace tftrue download with a more reliable source

This saves us some space, and also is a more reliable source than some domain which can always getting taken over. Also, we don't have to skip checking the certificate anymore.

Downloading the .so file is not enough, we need the .vdf file as well..


Reverse Webhook Support

It could be useful to have a way to set up a reverse webhook. I was thinking something like Devvit.registerWebhookListener(name: string, handler: (content: string) => void). This would register the given function as the handler for a webhook with the given name, and also add an entry to the app settings page containing a unique webhook URL that can be copied to be used on the other end: {name}: https://webhook.reddit.com/{unique id}.

This would unlock some huge new capabilities for our app and many others!


Fix installing plugins and running tests

Few things happening here:

Merge branch 'release'

Revert removing comments from downstream

Improve installing plugins
Install bytecode for plugins only for correct version of Python.
Replaces default plugin path in code with real installation path to
plugins.
JIRA: PDC-2193

Fix running tests when building rpm

I had to allow changing plugin path for pdc so the tests can be run when building RPM.
With this patch you can specify plugin directories.
PDC_CLIENT_PLUGIN_PATHS="/path/to/plugins1:/path/to/plugins2" pdc release update --help

I remember this feature was mentioned by @ahills; not sure if there is JIRA for this.


block repeated items in simple-list

to repeat items, pass in the allowRepeatedItems argument
this uses native setCustomValidity to make the input invalid until you try and add a different tag
trello ticket
also added arrow functions to eslintrc
NOTE: tags are case insensitive for purposes of comparison

Coverage decreased (-13.5%) to 74.391% when pulling 38b504ac84c8d1ae0753c7c26675181ee766929a on simple-list-repeat into 81d7018d63bf1094049db0b3fc59fd070165bc7c on master.

Coverage decreased (-0.1%) to 87.748% when pulling 468058062c4076e09bde143643e3d2050fb23be4 on simple-list-repeat into 81d7018d63bf1094049db0b3fc59fd070165bc7c on master.

Coverage decreased (-0.08%) to 87.765% when pulling f36f046789bdae1d4530987f471d19922c3d218d on simple-list-repeat into 81d7018d63bf1094049db0b3fc59fd070165bc7c on master.

:+1:


Feature request: toggle to remove marks after build

Make a toggle if you want to remove the marks used for building something (wall, fill, sphere, et cetera) after it has been build. Defaults to no.
Suggesting command: autoclearmarks on|off.

Added in https://github.com/TheBeems/pxt-worldBuilder/commit/6fd82cfc5a7f7a9e296e97caf4c219655320ad84


Is it able to pushdown selections into TableProvider?

TableProvider always return all columns in scanning, is it able to pushdown selections into TableProvider and return the schema after selections? I think it may be useful to reduce the memory usage in querying. Sorry I am not good at database querying, hope for your reply, thanks.

This is already supported in datafusion today. We have a projection push down optimization rule (https://github.com/apache/arrow-datafusion/blob/master/datafusion/src/optimizer/projection_push_down.rs) that generates projected column indexes based on selection plans. Then the vector gets passed in to the scan method at https://github.com/apache/arrow-datafusion/blob/bb616bf94bd952da8cc0c18b20cf33c55c30459e/datafusion/src/datasource/parquet.rs#L135.

Thank you, it is not clear about arguments of scan, so I missed it.


Combine pointAnchor and mouseHoverAnchor

Hello LeaderLine developes,
I have a short question:
How do you combine the 'attachments' pointAnchor and mouseHoverAnchor?

Hi @Verhoeckx, thank you for the comment.
What does “combine” mean?
This example uses mouseHoverAnchor and areaAnchor.
https://anseki.github.io/leader-line/#ex-040-cols

Hello Anseki,
With combine I mean that the LeaderLine start at a certain x and y position of the start element (pointAnchor) and also use the mouse hover effect (mouseHoverAnchor) on the start element.
Right now I solved it this way:
var line1 = new LeaderLine(
LeaderLine.pointAnchor( document.getElementById('hi-im-jeroen-text'), { x:'60%', y:'60%' }),
LeaderLine.pointAnchor( document.getElementById('passion-text'), { x:'50%', y:'0%' }),
{hide: true}
);

and
document.getElementById('hi-im-jeroen-text').addEventListener('mouseover', function() { line1.show('draw'); }, false);
document.getElementById('hi-im-jeroen-text').addEventListener('mouseout', function() { line1.hide('draw'); }, false);

Your solution is good.
Otherwise, you have to add new element to specify the point.

Ah, good to hear! Thanks for thinking along!!

:smile:

Thanks for this great library! I was exactly what I was looking for!!

Thank you! :smile:


Fix all UnknownNullness warnings

Added @NonNull and @Nullable annotations as appropriate to address 702 UnknownNullness lint warnings:

Unknown nullability; explicitly declare as @Nullable or @NonNull to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations

MotionLayout is being refactored this month:
moving platform independent core is:
androidx.constraintlayout.motion.utils
androidx.constraintlayout.motion.MotionController
Key* classes (splitting into two parts XML parsing in android & engine in core)
This month.

MotionLayout is being refactored this month:
moving platform independent core is:
androidx.constraintlayout.motion.utils
androidx.constraintlayout.motion.MotionController
Key* classes (splitting into two parts XML parsing in android & engine in core)
This month.

I can soft reset these changes and split them up so that I'm not conflicting with that refactor. For now I think I'll close the PR.

I can soft reset these changes and split them up so that I'm not conflicting with that refactor. For now I think I'll close the PR.


Performance comparison tests vs Node.js

These are the unscientific results of benchmarks done on Zewo and Node.js.
Tests were performed on a Ubuntu 15.10 VM with 4 vCPUs, 2Gb RAM, running under virtualbox.
Host processor is a Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz
10 testing attempts were performed, highest #req/s shown below.
Node.js
var http = require('http');

var server = http.createServer(function (request, response) {
  response.writeHead(200, {"Content-Type": "text/plain"});
  response.end("Hello World\n");
});

server.listen(8000);

console.log("Server running at http://<IP_ADDRESS>:8000/");

Results
Server Hostname:        localhost
Server Port:            8000

Document Path:          /hello
Document Length:        12 bytes

Concurrency Level:      200
Time taken for tests:   3.529 seconds
Complete requests:      10000
Failed requests:        0
Total transferred:      1130000 bytes
HTML transferred:       120000 bytes
Requests per second:    2833.54 [#/sec] (mean)
Time per request:       70.583 [ms] (mean)
Time per request:       0.353 [ms] (mean, across all concurrent requests)
Transfer rate:          312.69 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0   18 130.0      0    1006
Processing:     9   48  22.0     45     447
Waiting:        9   48  22.0     45     447
Total:         33   66 139.4     45    1448

Percentage of the requests served within a certain time (ms)
  50%     45
  66%     48
  75%     49
  80%     51
  90%     57
  95%     61
  98%     66
  99%   1047
 100%   1448 (longest request)`

Swift (Zewo)
import HTTPServer
import Router

let router = Router { route in
    route.get("/hello") { _ in
        return Response(body: "hello world")
    }
}

try Server(responder: router).start()

Results
Server Hostname:        localhost
Server Port:            8080

Document Path:          /hello
Document Length:        11 bytes

Concurrency Level:      200
Time taken for tests:   4.270 seconds
Complete requests:      10000
Failed requests:        0
Total transferred:      500000 bytes
HTML transferred:       110000 bytes
Requests per second:    2342.02 [#/sec] (mean)
Time per request:       85.396 [ms] (mean)
Time per request:       0.427 [ms] (mean, across all concurrent requests)
Transfer rate:          114.36 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0   18 216.2      0    3011
Processing:     4   58 133.2     49    3207
Waiting:        3   58 133.2     49    3207
Total:         26   76 306.5     49    4203

Percentage of the requests served within a certain time (ms)
  50%     49
  66%     49
  75%     50
  80%     50
  90%     53
  95%     56
  98%     64
  99%     70
 100%   4203 (longest request)

@tomaspinho
Hi! Nice to see someone interested in zewo performance!
Which version did you use? we have some performance issues with 0.4, trying to figure out it cause.
If you interested, i did some benchmarks as well. It's not very usefull for comparing swift frameworks,
because libdispatch is not fully implemented/supported on linux yet, but we can compare to rust/coreclr/node.js
It should be mentioned that this benchmark (your's and mine) measuring mostly Swift-VeniceX (libmill) bridge, not server-side swift in general, and result would be very different with AnnecyX (libdispatch)
Last but not least,
we moved from pre-fork model to port reusing, so for precise measuring we need to write:
try Server(reusePort: true, responder: router).start()

and run 4 processes for your 4 vCPUs configuration, because even if node is single threaded by default, rust and .net will eat all available cpu resources.

oh and the Zewo equivalent of that node's code is:
import HTTPServer
try Server({ _ in Response(body: "hello world")}).start()

@antonmes
wow, those are some whopping benchmark numbers!
I used the stable version directly from the deb repo: Version: 0.2.3


@Builder should support prototype"

Migrated from Google Code (issue 734)

This has been delivered via the toBuilder feature since v1.16.6


Release current sprint

Add missing vendor descriptions
Add order status link to the success page
Add production origin to the offers

Separately merged https://github.com/all3dp/printing-engine-client/pull/1432/commits/7a749fa699103e502a28b7fc326a79600e75c98d and https://github.com/all3dp/printing-engine-client/pull/1432/commits/5dd19dd31c0e6543b886f76e4aaba8ce1a4d0f1b to master. Closing PR


No trace_id in logs with log4j2 + Spring Boot

Describe the bug
The trace_id, span_id and trace_flags are not logged with log4j2 + spring boot.
With the javaagent provided from this repository (1.6.0)

log4j2: no logging context set at all
logback: log context set properly

With the javaagent from open-telemetry (1.6.2)

log4j2: logging in place
logback: logging in place

Steps to reproduce
Here is a repository that reproduces the described issue.
Note, there are no tests in the repository. But the application logs show the faulty behaviour.
What did you expect to see?

The aws otel javaagent should behave the same way as it does with the original distribution.

What did you see instead?

The aws otel javaagent is unable to set the correct log4j2 context.

Additional context
The same application works when using the native javaagent from the open-telemetry org.

gradle-q-dependencis.txt

@willarmiros Yeah think so - sorry for the delay, sent a fix in #102

Hey, everyone,
When I used Spring Boot 2.1.9.RELEASE, this bug recurrent.
So,excuse me, does this have anything to do with the Spring boot version? Because I can get trace_id in Spring boot 2.2.6.
Regards & Thanks.
Heyang


misc:rb: Fix possible infinity loop

The macro RB_FOR_EACH_CONTAINER could run infinitely when the function
_rb_foreach_next returns NULL.
Fixes #13464
Signed-off-by: Flavio Ceolin<EMAIL_ADDRESS>

#13464

Codecov Report

Merging #13695 into master will increase coverage by 0.03%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master   #13695      +/-   ##
==========================================
+ Coverage    52.3%   52.34%   +0.03%
==========================================
  Files         307      307
  Lines       45350    45350
  Branches    10464    10464
==========================================
+ Hits        23721    23737      +16
+ Misses      16877    16865      -12
+ Partials     4752     4748       -4

Impacted Files
Coverage Δ

include/misc/rb.h
100% <ø> (ø)
:arrow_up:

subsys/testsuite/ztest/src/ztest.c
72.72% <0%> (+7.43%)
:arrow_up:

subsys/testsuite/ztest/include/ztest_assert.h
70% <0%> (+35%)
:arrow_up:

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 45631c3...0762029. Read the comment docs.


Checksum validation with hf_hub_download on model files.

Is your feature request related to a problem? Please describe.
After reviewing: #1738  and #2223 it looks like file checksums are only computed on the cache dir in specific conditions. Ideally, a user could knowingly force a checksum post download as well as on retrieval from cache to ensure integrity of the files with any usage.
It's possible I misunderstood the code or discussion though.
Describe the solution you'd like
Add an input arg and environment variable to enforce checksums on files for each hf_hub_download call on the retrieved files.
Describe alternatives you've considered
Pre-downloading files manually and manually checking file integrity before using the cached files.

Hi @JGSweets, thanks for opening the issue. The 2 PRs you've linked are only related to "downloading to a local directory", not the generic "downloading into the HF cache directory" workflow. If we add such a validation, we would do it for both. The main problem with checking the file integrity after a download is the time it takes to do it:

I don't want to do it by default, because of the extra overhead it would have for users (computing a sha256 file on GBs of data can takes minutes)
I'm a bit chill to add a new parameter as it would most likely not be consistently propagated to all libraries using huggingface_hub
what we could have is to provide an extra utilities that checks the sha256 of files separately. Users wanting extra security would have to execute it before loading files. Would something like this work for you?
why not an environment variable but I'm worried it would result in a more logic client side for a feature that will most likely be hidden/not used by end users.
To be honest I'm still unsure we really need such a feature. We are already checking downloaded filesize to ensure all bytes have been retrieved from server (in case of network issues). Checking checksum is a security extra step to ensure the Hub is not corrupted but that could be checked on our side as well.

cc @Pierrci @julien-c in case you have other opinion


Move the trustworthy jwt checking to Citadel Agent

Please provide a description for what this PR is for.
And to help us figure out who should review this PR, please
put an X in all the areas that this PR affects.
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure

@pitlv2109: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

pilot-multicluster-e2e_istio
d155cdc40a402347e2aba9295fd7205d1ab4287e
link
/test pilot-multicluster-e2e_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@pitlv2109: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

pilot-multicluster-e2e_istio
d155cdc40a402347e2aba9295fd7205d1ab4287e
link
/test pilot-multicluster-e2e_istio

integ-new-install-k8s-tests_istio
d155cdc40a402347e2aba9295fd7205d1ab4287e
link
/test integ-new-install-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@pitlv2109: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

pilot-multicluster-e2e_istio
d155cdc40a402347e2aba9295fd7205d1ab4287e
link
/test pilot-multicluster-e2e_istio

integ-new-install-k8s-tests_istio
73803e7be28c067d6871302093baa2df105c5b04
link
/test integ-new-install-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


Access the rest API

I'm sorry to spam you with issues.
I'm trying to get access to the REST api using http://<IP_ADDRESS>:8080/api/rest/products/AKNMUG_BP but all I get is a 404 from the web server.
Is there something to add to nginx/apache to get the api working or am I doing something wrong?

No problem, I am happy to see people using those images ^^.
REST API works fine for me, but from a script, not from the web browser. From my web browser I have a 401, which is normal.
By script, I just followed this documentation: https://docs.akeneo.com/1.6/cookbook/rest_api/get-product.html#how-to-use-rest-api
It worked fine.

That's strange I only get 404.
I use this:
<?php
$username = "admin";
$apiKey   = "4a051465f12f4831a7d733a39042ba590d1b82bb";
$salt     = "2u4qal71n5kwgg44ss8sk4oogoo0kcw";

$nonce   = uniqid();
$created = date('c');

$digest  = base64_encode(sha1(base64_decode($nonce) . $created . $apiKey.'{'.$salt.'}', true));

$headers = array();
$headers[] = 'CONTENT_TYPE: application/json';
$headers[] = 'Authorization: WSSE profile="UsernameToken"';
$headers[] =
    sprintf(
        'X-WSSE: UsernameToken Username="%s", PasswordDigest="%s", Nonce="%s", Created="%s"',
        $username,
        $digest,
        $nonce,
        $created
    );

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://<IP_ADDRESS>:8080/api/rest/products/AKNMUG_BP');
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$result = curl_exec($ch);

$httpStatus = curl_getinfo($ch, CURLINFO_HTTP_CODE);

if (false === $result) {
    echo "ERROR:".curl_error($ch)."\n";
} else {
    echo "$result\n";
}

And I get this in return:
<!DOCTYPE html>

        <meta charset="UTF-8" />
        <title>An Error Occurred: Not Found</title>

Oops! An Error Occurred

The server returned a "404 Not Found".

            Something is broken. Please let us know what you were doing when this error occurred.
            We will fix it as soon as possible. Sorry for any inconvenience caused.

Please note I am on the nginx/fpm image which is somehow working for now.

I only tried with the apache image, I will try with nginx too.
One more thing, I tried with "localhost" instead of "<IP_ADDRESS>". No idea if it can have an effect.

Okay, I'm gonna try with the apache image and php5.6. I'll give you the result in a few minutes. I tried with localhost as well to no success.

Okay so same result, I get the 404 with the error message.

Just to be sure, I'm running this on the pim-community-dev on the master branch

That would explain! Akeneo API is completely reworked on master (future 1.7). The documentation you read is for 1.6.

Oh I see. And is there a way to access it now?

There is nothing at the moment but an empty PimApiBundle on master. The old API has been trashed, and the new one is on a separate branch for the moment, until it is finished.
The development is currently done on this branch: https://github.com/akeneo/pim-community-dev/tree/api-web.

Okay I see. I have two questions then, because I wanted to add something to the rest api:

Will there be an endpoint to list all the products inside the pim? Like a listing sku -> resource link?
Do you have any idea of a timeframe for the release of this new API/1.7 version of Akeneo?

Thanks,

Yes, the API will be able to do it. And Akeneo 1.7 is to be released end of February / first week of March (one release every 6 month).
If you want more info about the API, you should ask directly on Akeneo forums or the Akeneo Slack user group (https://akeneopim-ug.slack.com/). That is where you will have most information.

Super thank you!

You're welcome :)