Reducing medium-sized images

Hello,
I'm using lychee on my self-hosted machine, at home, with a "typical" DSL upload of 1Mb/s (at least in France).
From an admittedly small subset of images, I get an average of more than 300kB for the medium images, meaning that my users need to wait something like 3s between images, which is a bit too much to my taste :)
I was able to reduce this by simply modifying Photo.php, adding the two following lines in the Imagick section, resulting in images around 100kB :
$medium->stripImage(); $medium->setImageCompressionQuality(70);
Stripping the meta-data luckily doesn't break lychee "About" section, as the infos are fetched from the DB. The only thing we are losing is the ICC profile. The compression of 70 was quickly chosen, but on ~1920x1080 pictures, on a 24" display, I don't see the obvious compression differences without pixel-peeping (I don't have good eyes)
I have several questions / propositions :

Would you consider a global "low-bandwidth" setting ? If so, I can volunteer to implement it more properly than my hack (hoping GD offers meta-data manipulation), and I guess that the quality and inclusion of the ICC profile would then be subject to discussion.
Regardless of this, I think that always stripping the meta-data is a good idea. It's often just a few kB saved, but it's better than nothing.

Stripping the metadata and reducing the quality is definitely a good idea. A quality of 70 or 75 is good enough for a thumbnail (see this article on medium for an estimate of the quality used by some major companies).

always stripping the meta-data is a good idea

Except in the case of the original image I think.

The only thing we are losing is the ICC profile.

I think that losing the color profile isn't too bad, as a lot of screens today aren't calibrated and can have large delta E.

Totally agree!

->stripImage();

Should be implemented for thumbs and medium-photos.

->setImageCompressionQuality(70)

Should be implemented for medium-photos, but I would use 90.

Someone in the PHP doc comments has a good point:

Please note that striping off the exif information without handling the orientation information available in the exif will lead to wrong orientation of the image

We should check if this makes any trouble, but I don't think so as we are fixing the orientation in the adjustFile() function.

We could do a much better job adjusting the photo with Imagick: http://stackoverflow.com/a/31943940/207704
I'm going to implement this solution.

I realized Lychee creates a medium-sized photo no matter what format the photo has. This could turn huge animated GIFs into non-animated GIFs. As animated GIFs are usually small, this hasn't been a problem, yet.

I implemented the improved orientation handling. Could someone with Imagick installed take a look at it? My installation is currently not working correctly. Here're images to test: https://github.com/recurser/exif-orientation-examples

I had some time to test the orientation using the develop branch, every image from the examples you linked is displaying fine :). On the master branch, only the examples 1, 3 and 8 were correct.

Except in the case of the original image.

Should be implemented for thumbs and medium-photos.

Of course, stripping meta-data from the original image is nonsense. I however didn't though about the thumbnails, you're totally right.

Should be implemented for medium-photos, but I would use 90.

IMHO, 75 is good enough, both from my experience (I'm not a hardcore photographer, but I archive my processed RAWs in jpeg at this level), and from the article @qligier mentioned.
In any case, for my peculiar needs, I'll probably lower it to 60 or 65, but that's my problem.
Are you interested in a pull request (I didn't code anything yet), or are you faster doing it yourself ?

IMHO, 75 is good enough

There's a comment on StackOverflow which perfectly reflects my experience with JPEGs.

Use 90, or preferably 95. In my experience, the size gain when using anything under 90 is in most cases no longer beneficial in relation to perceivable quality loss[…]

It always depends on the image, but I will go with 90 as it might be the best for most images.

Are you interested in a pull request (I didn't code anything yet), or are you faster doing it yourself ?

Highly welcome! :) Please use the develop branch for the PR.

Implemented! Please let me know if everything works.

I went to do that this morning, you beat me to it !
As for GD, there is no medium-size generation ?
Anyway, thanks !
(I see that I can close this, so I'll do it, apologies if it wasn't my job)

@nerbrume Yes, no medium-size generation with GD. It's too slow and PHP runs out of memory most of the time :-/

Hi,
I have a slow uplink from my server and I am trying to reduce the resolution and/or compression of medium images to save some space. I have changed the resolution from 1920x1200 to 1024x768 in these two files:
Lychee/php/modules/Photo.php
Lychee/plugins/lychee-create-medium/index.php
In both files there is this comment:
Size of the medium-photo
When changing these values,
also change the size detection in the front-end
Sorry but I am a newb an I have no idea what/where "the front-end" is. Could someone point me to the correct souce-file?
Thanks!
Øyvin Eikeland

@oyvine With front-end we mean the HTML, CSS and JS files. I recommend to take a look at the JS files, where the size has been defined, too.

Thanks. After some experimentation I find that the best result comes from keeping the size at 1920x1080 and reducing the quality to 80% or 85%. This gives good results when I reduce the window size so that medium images are shown. The problem is when I enlarge the window to fullscreen and Lychee decides to go fetch the full size images and downscale them. Now, if I could only force Lychee to always use medium images for browsing and only use the full size images when I select "full photo". I gather that there must be an "if" function somewhere in the "front end" that selects between full and medium images. I am not able to find it. I would really appreciate some help on this. Thanks!

@oyvine It's not really an if. The browser chooses the best image by itself. We just tell him what sizes are available (srcset): https://github.com/electerious/Lychee/blob/master/src/scripts/build.js#L126


Add string constants for gateway route names

The route names here should be extracted to constants:
https://github.com/fedimint/fedimint/blob/043f6c3a46ddc6833621daf775bbf59fe1b75b83/gateway/ln-gateway/src/rpc/rpc_server.rs#L53-L92
And those new constants should also be used where these routes are consumed in rpc_client.rs.
See here for an example where we do something similar.

Fixed in the linked PRs


Prevent last page number from showing on empty folder

The navigation page was showing '0' when navigating into an empty folder

Looks good however If possible, can we add a test for this, please? Not sure, if we have an end-to-end test to cover this scenario.

Thanks, I've added more cases to the empty folder test. I believe we won't be adding e2e tests until all the pages are linked


Safari Extension on App Store

I converted the extension to a safari extension and uploaded to the App Store, free and open source so everyone can download on their iPhones.
https://apps.apple.com/us/app/eight-dollars/id1665510409
https://github.com/jawshoeadan/eight-dollars
Edit: Mac version stuck in review but coming soon.

Any update on the Mac version?


Add Angular default "strictTemplates" flag for Angular compiler options.

During working on admin separation ticket, there was an comment for this issue.
Create this ticket for future enhancement. Comment copied from the issue:
Initial build for new 'admin' had some errors not seen from previous 'public' build.
For example, something like this:
`
/foms/fom-submission/fom-submission.component.html: 100:85 - error TS2339: Property 'count' does not exist on type 'SubmissionDetailResponse'.
100 Cut block submission - {{spatialSubmission.cutblocks.count}} blocks
Error: src/app/foms/review-comments/review-comments.component.html:21:54 - error TS2339: Property 'length' does not exist on type 'unknown'.
21     <h2 style="margin: 0;"> Comments ({{data?.length}})
=> Most error happens on array[]. For some reason, the array is type of 'unknown' thus it could not see the property 'length'.
`
After some digging, it seems to be related to additional Type checking set in tsconfig.json at 'angularCompilerOptions' for the flag '"strictTemplates": true'.
According to Angular documentation, this is included by default for newly created Angular project for good to have option.
From what I see our FOM project was migrated from previous version Angular (probably Angular 6) to Angular 11. This flag to my best knowledge, wasn't included that time when it was under mono-repo and the build works fine.
I tried without the flag and it could be built without this good-to-have compile option. I will ignore (remove) this flag for now. Note, 'public' does have this flag (wasn't included previously at mono-repo) but does not have build issue so far (perhaps because public is simple enough).
We could include this flag in the future but some source code will need to be fixed accordingly.
Link to the ticket.

This may be addressed by Angular upgrade (#158)


Release Process for v7.x.x

Checklist

[x] Verify that PowerShell-Native has been updated / released as needed.
[x] Check for PowerShellGet and PackageManagement release plans.
[x] Start process to sync Azure DevOps artifacts feed such as modules and NuGet packages.
[x] Create a private branch named release/v6.x.x in Azure DevOps repository.
All release related changes should happen in this branch.
[x] Prepare packages

[ ] Kick off coordinated build.

[x] Kick off Release pipeline.

These tasks are orchestrated by the release pipeline, but here as status to the community.
[ ] Prepare packages

[ ] Sign the RPM package.
[ ] Install and verify the packages.
[ ] Trigger the docker staging builds (signing must be done).

[ ] Create the release tag and push the tag to PowerShell/PowerShell repository.
[ ] Run tests on all supported Linux distributions and publish results.
[ ] Update documentation, and scripts.

[ ] Update CHANGELOG.md with the finalized change log draft.
[ ] Stage a PR to master to update other documents and
scripts to use the new package names, links, and metadata.json.

[ ] For preview releases,
merge the release branch to GitHub master with a merge commit.
[ ] For non-preview releases,
make sure all changes are either already in master or have a PR open.
[ ] Delete the release branch.
[ ] Trigger the Docker image release.
[ ] Retain builds.
[ ] Update https://github.com/dotnet/dotnet-docker/tree/master/3.0/sdk with new version and SHA hashes for global tool. NOTE: this link is broken!

*🎲💰🛡🏰💕🌈❤❤❤🏦💻🏬💸🧬💯🍏📐🕥⏩🌈🌎🌎


Bug bounty test - PLEASE DO NOT APPROVE. mhnlsm

Bug bounty test - PLEASE DO NOT APPROVE. mhnlsm

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Engine Settings

Allow the user to customise the engine by implementing an easily scalable settings menu and save changes to file.

Solved by 52b049788c69aacb67f00a2500f8b0a51259e503


Create a CupertinoScaffold

#10466
In this PR:

Basic layout structure, positions nav bar and tab bar in it
A tabbed content area that connects with a tab bar automatically

Not in this PR:

Navigation and gestures
Different navigator stack per tab

Ummm it doesn't properly update to my branch anymore once I close it. I'll reopen it, mainly to get some broader feedback. The classes documentations aren't updated yet.

I guess I was wrong about MultiChildCustomLayout. Disregard me. :-)

For posterity, moved back to Stack for readability simplicity. Tweaked docs and added tests.
Performance behaviour looks as expected.

No frames are triggered until tabs are changed and only one frame is redrawn per tab.

(This raised our technical debt by about $9,000. This is fine, just reporting this for transparency.)

Ha, was it all the TODOs? Hope the interest rates aren't too high for a week or so.

Yup. :-)


Information about caller is not provided in for calls via Microsoft Teams call-queues

Package Name: @azure/communication-calling
Package Version: 1.10.1
Operating system:
[x] browser

name/version: Google Chrome/112.0.5615.165

Describe the bug
We use the JavaScript Calling API of the Azure Communication Services in our product to allow the user to accept and initiate Microsoft Teams calls (here is the documentation from Microsoft: https://learn.microsoft.com/en-us/javascript/api/azure-communication-services/@azure/communication-calling/?view=azure-communication-services-js).
When a user receives a call via a call-queue, we get the following object (callerInfo) over the interface:
"callerInfo":{
 "identifier":{
 "kind":"unknown",
 "id":"28:orgid:eae6bcce-b5ba-45db-8a2f-5bdfcdc95df9"
 },
 "displayName":""
}

IncomingCall: https://learn.microsoft.com/en-us/javascript/api/azure-communication-services/@azure/communication-calling/incomingcall?view=azure-communication-services-js
CallerInfo: https://learn.microsoft.com/en-us/javascript/api/azure-communication-services/@azure/communication-calling/incomingcall?view=azure-communication-services-js#@azure-communication-calling-incomingcall-callerinfo

On the one hand we get the value "unknown" as IdentifierKind and on the other hand the UUID we get is the UUID of the call-queue (without any readable name) which has nothing to do with the caller. So we currently have no possibility to identify the caller before the call is answered.
We expect some information about the caller (PhoneNumberKind with a phone-number or MicrosoftTeamsUserKind with a MicrosoftTeamsUserId) and additionally the information about the call-queue (preferably we could display the same information as the Microsoft Teams Client does: "Call Queue: Support / Caller: John Doe").
To Reproduce

Create an azure-communication calling application with Teams interoperability (https://learn.microsoft.com/en-us/azure/communication-services/how-tos/cte-calling-sdk/manage-calls)
Receive a call via a Teams call-queue
We get information about the call-queue

Expected behavior
We get information about the actual caller (and the call-queue).
Additional context
The information about the caller is essential for our product because a lot of our customers are using call-queues (typically call-centers) and must identify the customer before the call is answered.

@egloff , thanks for reporting the issue, do you have the callId for this ? can you explain your scenario - are you using Teams user ( via ACS SDK) as one of the agent behind call queue (CQ ) ? what mode is CQ configured - conf or transfer mode ?
if transfer mode, can you try to repro it using a conf mode CQ ?
please send callIds in both success/failure case.

Hey @ansrin
Thanks for the response. Finally we got a response from our company's Microsoft support (we are waiting there since February, therefore I created this issue because it seems like this is faster). May we pause this issue (or shall I close it?) until our support-case has been successfully processed and update this issue afterwards?

@egloff , sure. we can follow up using the support ticket route and close this.


Support multiple versions of logstash by renaming the logstash class

Hi!
This modul has supported older versions of logstash with the version 0.6.x. With 5.x it only supports logstash 5. For older versions the legacy module should be used as stated in the readme.
The problem is that both modules use the same classname and thus can't be used together in one environment. We are providing a lot of servers with different versions of logstash which is not possible if both modules share the same classname.
My suggestion: if v5.x if this module only supports v5.x of logstash, then rename the class to logstash5.
Regards,
Alex

I have not tried but isn't the recommended way to deal with this kind of cases to create different environments?
I can imagine a scenario like this:
env=puppetV2.34 (has logstash 2.3)
env=puppetV2.35 (has logstash 5.1)
And each time you upgrade a module you create a new environment. I'm curious to know how this are intended to work. I can imagine that "java" will suffer from the same problem.
Cheers
Fredrik

That would mean you need to create an environment for every combination of modules which are conflicting. If you only have a small number it might be possible but with growing projects the number of used modules are growing as well. My personal opinion is that a module should have no version number if it supports multiple versions of a product. But if it is specific to a certain version it should contain that in the class name.

@AlexWerz That's true :-1:
We are in the same situation and don't want to "paint our self into a corner". I've asked around and read a few pages but still confused how to handle this.
We have +300 machines running puppet in one environment, we are moving to Redhat satellite so I need to understand how they'll handle it...

I definitely agree with @AlexWerz here, it should also be noted that loading multiple different versions of a single module in different environments has only been supported since rather recent puppetserver releases.

I think there are some great points here, and unfortunately, no easy answers. Versioning and namespacing in Puppet have always been challenging. Directory environments and SCM certainly help, but as you correctly point out @AlexWerz, the directory environment solution doesn't scale well if you have multiple challenges of this kind.
If my shop was facing this problem, I would most likely fork and rename the Logstash 2 module. Forking is not as bad as it may sound in this case, because upstream development (hey that's me!) on the version 2 module has ceased except for critical bugs. We could even consider formalising the rename if people think it's useful, by maintaining a branch here on GitHub and perhaps releasing it on The Forge as elastic/logstash2. What do you all think?
I'd rather not rename the version 5 module. It's released to The Forge now, so renaming it will spontaneously break every site that is using it. It's also very possible that we will be able to maintain forward compatibility when Logstash 6 comes out. It would be a shame to force ourselves (and our users) into a versioned naming scheme if we don't need to. I also want to maintain the best possible out of box experience for new users, and part of that is the promise that include logstash is all you need to get a working install of the latest version.

another problem regarding different versions of the same (named) module in different environments is https://docs.puppet.com/puppet/latest/environment_isolation.html with ruby types. adding new parameters or completly new types will break things.
by comparing names elastic/logstash and elastic/logstash2 it sounds like logstash2 would be newer. If renaming something indicating its not the latest like elastic/logstash_legacy?

Don't know why there is no reply all these months (I would expect more people to want this!) but, please do @jarpy
It would help our situation.


refund pools only at epoch

The stand-alone accounting document has been updated so that pools are only refunded on epoch boundaries.  As such, pool retirements are now tracked by the ledger state.

@JaredCorduan why not add --tt to the lhs2TeX options in the Makefile? I had to install texlive-fonts-extra for this, but it was worth it.


Fixup Details::sortObject() overload for Cuda execution space

Fix #263
Change Kokkos::View<..., DeviceType> -> Kokkos::View<..., MemorySpace> to morton_indices in the BVH constructor caused the wrong sortObjects() overload to be called.  This bug was introduced in #251

OK, here is a bit more explanation (probably just for myself, because I did not understand it before).
Kokkos::View<T*, DeviceType> and Kokkos::View<T*, MemorySpace> are different types, despite them behaving the same. The morton codes view in construction was declared as Kokkos::View<T*, MemorySpace>. It did not match to  Kokkos::View<T*, Kokkos::DeviceType<Kokkos::Cuda, MemorySpace> signature for sortObjects() overload, and thus instead of using Thrust sort it was using Kokkos::BinSort. This PR templates overloaded signature on the view rather than View template arguments, thus producing the match.
The reason why it only affected construction, and not queries, is that the Kokkos::View<T*, MemorySpace> was only in the construction, while queries still use the old declaration Kokkos::View<T*, DeviceType> producing a match.
It is also important to note that apparently using BinSort for smaller arrays may be significantly faster than using Thrust sort, which is news to me. We really should dedicate time to analyzing sort routines, and understanding its behavior.

This comment is placeholder. I will be running performance experiments confirming that this PR fixes the behavior tracing back to before-execution-space-introduction time.

Retest this please

Retest this please.

@masterleinad Did you notice
devmapper: Thin Pool has 154953 free data blocks which is less than minimum required 163840 free data blocks. Create more free space in thin pool or use dm.min_free_space option to change behavior

in the Clang build?

Yes, but I was expecting it to be related to the disk space problems earlier today.

Retest this please

Yes, but I was expecting it to be related to the disk space problems earlier today.

The build ran on different machines

Retest this please

I also ran other device types comparing 0fbcb17 (last merge commit prior to execution space work) with the tip of this PR. Of note, Serial construction is much faster:
$ compare_bench.py benchmarks<PHONE_NUMBER>58_0fbcb17_pre_exec_space.json<PHONE_NUMBER>58_df406ab_267.json | grep median
BM_construction<ArborX::BVH<Serial>>/10000/0/manual_time_median                                    +0.0116         +0.0360          3015          3050          3015          3124
BM_construction<ArborX::BVH<Serial>>/100000/0/manual_time_median                                   -0.1128         -0.1102         29049         25773         29045         25846
BM_construction<ArborX::BVH<Serial>>/1000000/0/manual_time_median                                  -0.1696         -0.1689        324628        269556        324929        270034
BM_construction<ArborX::BVH<Serial>>/10000/1/manual_time_median                                    -0.0301         -0.0065          3118          3024          3119          3098
BM_construction<ArborX::BVH<Serial>>/100000/1/manual_time_median                                   -0.1787         -0.1762         30840         25330         30835         25403
BM_construction<ArborX::BVH<Serial>>/1000000/1/manual_time_median                                  -0.2443         -0.2435        353710        267296        353954        267772

I'm not sure what causes this, as I don't see anything related in between, and it does not seem to affect OpenMP.

Retest this please


fixed nodebalancer ssl settings placeholder color

Closes #2179
This is my first pull request! Please let me know if something needs to be changed or added.

Thanks! Two things: 1) could you make this pr against the develop branch instead of master and 2) could you delete these lines from inside the .Input section in components/scss/components/forms/Input.scss?

If this is doing what I think it is then it will also close #1684.

Closes #1684 now.
Added the rules to the .form-group class, and now the placeholder text is the same color for Input and textarea boxes.

Tested, looks good

LGTM. Thank you!


OpenIMCore2.0.9: Cannot find 'Open_im_sdkSetGroupMemberRoleLevel'

在OpenIMCore2.0.9的版本中，找不到Open_im_sdkSetGroupMemberRoleLevel这个方法。
使用OpenIMCore2.1.0之后
[!] CocoaPods could not find compatible versions for pod "OpenIMSDKCore":
In Podfile:
flutter_openim_sdk (from .symlinks/plugins/flutter_openim_sdk/ios) was resolved to 0.0.1, which depends on
OpenIMSDKCore (= 2.1.0)
None of your spec sources contain a spec satisfying the dependency: OpenIMSDKCore (= 2.1.0).

更新最新sdk


VM freezes for 10-20 seconds, when scrolling

VM completely freezes, it looks as if it was "swapping" or similar. No cursor shows, does not react to any input. It fixes itself after 10-20 seconds.

UTM Version: 4.0.1
macOS Version: host: 12.5 guest 13.1
Mac Chip (Intel, M1, ...): M1, host 16gb ram, guest uses 8gb, the smaller guest ram seems to make it more frequent

I think I'm having the same issue... #4636

I am also seeing this issue since upgrading my host to ventura (guest macos was already on ventura).  Is it possible this being caused by the trackpad support that was added recently?
In system preferences, I still just see a mouse, not a trackpad.

I downgraded UTM to 3.2.4 and re-created my Ventura VM.  No scrolling lockups on that release.

Still reproduces on 4.1.6 with Ventura host/guest


Update rear_mad_min for CH

Change Chinook minimum rearing MAD form 1.5 to 0.56

Hi Nick,
Can you sync your fork before you create a new PR? https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/syncing-a-fork
Merging that PR removed two new falls loaded since you created the fork.
thanks!

Hi Simon,
I thought I had done this, but there must have been an issue with the sync. Sorry about that!
Nick

No problem. I've made the change, model running now.


Fix features

now compiles on stable!
upgrades OpenSSL (by ditching sodium for examples; oddly enough this also changed some of the hashes which doesn't seem good). No other code was changed though, which probably means the hashing algorithms differ somehow.
added an example to the entry point

Thanks!

yay, tests passing again!


Document createIndexes, listIndexes, and dropIndexes commands

Description
Closes #2271.

Readiness checklist

[ ] I added/updated unit tests.
[ ] I added/updated integration/compatibility tests.
[ ] I added/updated comments and checked rendering.
[ ] I made spot refactorings.
[x] I updated user documentation.
[ ] I ran task all, and it passed.
[x] I ensured that PR title is good enough for the changelog.
[x] (for maintainers only) I set Reviewers (@FerretDB/core), Labels, Project and project's Sprint fields.
[x] I marked all done items in this checklist.

@AlekSi PTAL


How to personalize well the badge ?

Thank you @viktor-shmigol for your work !
What's the best way to personalize the style of the badge ?
Tried to use the options, but the badge becomes blurred with all kind of options.
Could yo give us different types of options, and the visual result ? In my case i just tried to make the same badge as Slack app for windows, so little bit smaller and light font.
Thanks a lot for your help !

@viktor-shmigol yes i used them, but the result is everytime ugly

@Aarbel Even I face the same issue. Did u get any solution?


[feature] Display a loading screen while the app is loading

Display a loading screen while the app is loading
Because of the async behaviour of the app, we need to show the final page to the use after all have been load

Create simple page animation when the app is ready
http://pinnackl.com/index
.container{

	padding: 1em 4em 0;

	-moz-box-sizing: border-box;

	-webkit-box-sizing: border-box;

	box-sizing: border-box;
        animation-name: appear;
        animation-duration: 1s;
        animation-fill-mode: both;
}

@keyframes appear {

	0% {

	    opacity: 0;

	    transform: translateX(40px);

	}

	100% {

	    opacity: 1;

	    transform: translateX(0px);

	}

}

.appear {

    animation-name: appear;

}


[web] flutter app expands to the full screen size as after Hot restart

Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Steps to reproduce
Create a new web project with flutter create.
Add the example code to the  of the index.html.
Star the web project in debug mode with the device "Web Server"
The flutter app is shown in the
 with id flutter_app, as expected.
Press hot restart.
Expected results
Hot restart is working for sites with hostElement as well.
Actual results
After pressing hot restart, the flutter app expands to the full screen size as if the hostElement was not defined.
There are no errors or exceptions.
Code sample
Code sample

hello

placeholder for flutter app

Flutter Doctor output
Doctor output
[✓] Flutter (Channel stable, 3.10.1, on Ubuntu 20.04.5 LTS <IP_ADDRESS>-microsoft-standard-WSL2, locale en_US.UTF-8)
    • Flutter version 3.10.1 on channel stable at /flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision d3d8effc68 (7 days ago), 2023-05-16 17:59:05 -0700
    • Engine revision b4fb11214d
    • Dart version 3.0.1
    • DevTools version 2.23.1

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    • Android SDK at /android-sdk
    • Platform android-33, build-tools 33.0.0
    • ANDROID_HOME = /android-sdk
    • ANDROID_SDK_ROOT = /android-sdk
    • Java binary at: /usr/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.5+8-Ubuntu-2ubuntu120.04)
    • All Android licenses accepted.

[✗] Chrome - develop for the web (Cannot find Chrome executable at google-chrome)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.

[✗] Linux toolchain - develop for Linux desktop
    ✗ clang++ is required for Linux development.
      It is likely available from your distribution (e.g.: apt install clang), or can be downloaded from https://releases.llvm.org/
    ✗ CMake is required for Linux development.
      It is likely available from your distribution (e.g.: apt install cmake), or can be downloaded from https://cmake.org/download/
    ✗ ninja is required for Linux development.
      It is likely available from your distribution (e.g.: apt install ninja-build), or can be downloaded from https://github.com/ninja-build/ninja/releases
    ✗ pkg-config is required for Linux development.
      It is likely available from your distribution (e.g.: apt install pkg-config), or can be downloaded from https://www.freedesktop.org/wiki/Software/pkg-config/

[!] Android Studio (not installed)
    • Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.dev/docs/get-started/install/linux#android-setup for detailed instructions).

[✓] Connected device (1 available)
    • Linux (desktop) • linux • linux-x64 • Ubuntu 20.04.5 LTS <IP_ADDRESS>-microsoft-standard-WSL2

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 3 categories.

Thanks for your report. Reproduced the issue on the master channel as well.

Demo video
https://github.com/flutter/flutter/assets/104349824/fe73e692-b708-4b5a-b045-740dfd4d4213

flutter doctor -v (stable and master)
[✓] Flutter (Channel stable, 3.10.1, on macOS 13.0.1 22A400 darwin-x64, locale en-VN)
    • Flutter version 3.10.1 on channel stable at /Users/huynq/Documents/GitHub/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision d3d8effc68 (26 hours ago), 2023-05-16 17:59:05 -0700
    • Engine revision b4fb11214d
    • Dart version 3.0.1
    • DevTools version 2.23.1

[✓] Android toolchain - develop for Android devices (Android SDK version 32.0.0)
    • Android SDK at /Users/huynq/Library/Android/sdk
    • Platform android-33, build-tools 32.0.0
    • ANDROID_HOME = /Users/huynq/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b802.4-9586694)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14E222b
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b802.4-9586694)

[✓] VS Code (version 1.78.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.64.0

[✓] Connected device (3 available)
    • RMX2001 (mobile) • EUYTFEUSQSRGDA6D • android-arm64  • Android 11 (API 30)
    • macOS (desktop)  • macos            • darwin-x64     • macOS 13.0.1 22A400 darwin-x64
    • Chrome (web)     • chrome           • web-javascript • Google Chrome 113.0.5672.126

[✓] Network resources
    • All expected network resources are available.

• No issues found!

[!] Flutter (Channel master, 3.11.0-12.0.pre.27, on macOS 13.0.1 22A400 darwin-x64, locale en-VN)
    • Flutter version 3.11.0-12.0.pre.27 on channel master at /Users/huynq/Documents/GitHub/flutter_master
    ! Warning: `flutter` on your path resolves to /Users/huynq/Documents/GitHub/flutter/bin/flutter, which is not inside your current Flutter SDK checkout at /Users/huynq/Documents/GitHub/flutter_master. Consider adding /Users/huynq/Documents/GitHub/flutter_master/bin to the front of your path.
    ! Warning: `dart` on your path resolves to /Users/huynq/Documents/GitHub/flutter/bin/dart, which is not inside your current Flutter SDK checkout at /Users/huynq/Documents/GitHub/flutter_master. Consider adding /Users/huynq/Documents/GitHub/flutter_master/bin to the front of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 90cf8d1dd4 (80 minutes ago), 2023-05-23 21:51:25 -0400
    • Engine revision aba9dc4640
    • Dart version 3.1.0 (build 3.1.0-139.0.dev)
    • DevTools version 2.23.1
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

[✓] Android toolchain - develop for Android devices (Android SDK version 32.0.0)
    • Android SDK at /Users/huynq/Library/Android/sdk
    • Platform android-33, build-tools 32.0.0
    • ANDROID_HOME = /Users/huynq/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b802.4-9586694)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14E222b
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b802.4-9586694)

[✓] VS Code (version 1.78.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.64.0

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-x64     • macOS 13.0.1 22A400 darwin-x64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 113.0.5672.126

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 1 category.

Hey @fhuonder, thanks for the report!
The problem here is that the engineInitializer promise cannot be resolved more than once, so on hot restart flutter re-initializes with default values (full-screen, and any other customizations to the engine, actually!)
To work around this you should use the onEntrypointLoaded callback style (which can be called multiple times, like when hot reloading), as described here:

https://docs.flutter.dev/platform-integration/web/initialization#getting-started

You can easily convert your index to comply with the new style with something like:
    // Download main.dart.js
    _flutter.loader.loadEntrypoint({
      entrypointUrl: "/main.dart.js",
      serviceWorker: {
        serviceWorkerUrl: "/flutter_service_worker.js?v=",
        serviceWorkerVersion: serviceWorkerVersion,
      },
      onEntrypointLoaded: async function(engineInitializer) {
        // Initialize the Flutter engine
        let appRunner = await engineInitializer.initializeEngine({
          hostElement: document.querySelector("#flutter_app")
        });
        // Run the app
        await appRunner.runApp();
      }
    });

(The old promise syntax was left in for backwards-compatibility, but really only works well for non-customized apps. Have you noticed the console warning suggesting you to use the onEntrypointLoaded callback?)
Let me know if the documented initialization style works for you!

Hi @ditman
It works when changing to code to the new style. Thanks for the hint.
But it is so that flutter create still creates the old-style onEntrypointLoaded. This should be fixed.
Further I did not see a warning in the Chrome console.
Regards,
Florian

Hey @fhuonder!
flutter create is generating valid initialization with onEntrypointLoaded. The only thing that it is not doing is to pass any configuration to the initializeEngine method.
Here's the PR where the original issue you reported was fixed:

https://github.com/flutter/flutter/pull/110229

(Note that your sample code does: loadEntrypoint().then().then() and the new style is: loadEntrypoint({onEntrypointLoaded: function()...}})
Where did you find your Code sample? Do we have some outdated example?

Sorry for my late response.
Ah I see... Then everything is ok.
In the end my problem was that I updated to the newest flutter and introduced hostElement based on an old-style Flutter init in index.html.
So from my point of view this issue can be closed.

Thanks for the bug report, and double checking your code @fhuonder!


Work in Progress

Status page is a work in progress and is under development.

Testing closing of issue.


CUDA Error in Windows 10

CUDA must be available in order to use Deep Daze

Have you installed CUDA? e.g.
conda install pytorch torchvision torchaudio cudatoolkit=11.1 -c pytorch -c conda-forge
Ref: https://pytorch.org/get-started/locally/

Can we run it on CPU for the AMD fanboys?

Can we run it on CPU for the AMD fanboys?

You can - https://github.com/lucidrains/deep-daze/issues/154#issuecomment-949205750 - if it does not find CUDA, it will just default to using the CPU (with poor results though - at least from my local testing).


[CARBONDATA-1514] Sort Column  Property is not getting added in case of alter operation

Problem:: Sort Column  Property is not getting added in case of alter operation
Solution: Need to add sort column if use has added in alter operation

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/287/

Build Success with Spark 1.6, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/163/

SDV Build Fail , Please check CI http://<IP_ADDRESS>:8080/job/ApacheSDVTests/919/

@kumarvishal09 SDV testcase is failed, please check

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/366/

Build Success with Spark 1.6, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/242/

SDV Build Success , Please check CI http://<IP_ADDRESS>:8080/job/ApacheSDVTests/994/

LGTM


Uncaught Error: Cannot read property 'object' of undefinedTypeError: Cannot read property 'objec...

[Enter steps to reproduce below:]

...
...

Atom Version: 1.9.8
System: Ubuntu 16.04.1
Thrown From: Atom Core
Stack Trace
Uncaught Error: Cannot read property 'object' of undefined
TypeError: Cannot read property 'object' of undefined
at ObjectsRegistry.get (/usr/share/atom/resources/electron.asar/browser/objects-registry.js:44:28)
at EventEmitter. (/usr/share/atom/resources/electron.asar/browser/rpc-server.js:309:31)
at emitMany (events.js:121:13)
at EventEmitter.emit (events.js:195:7)
at EventEmitter. (/usr/share/atom/resources/electron.asar/browser/api/web-contents.js:141:25)
at emitTwo (events.js:100:13)
at EventEmitter.emit (events.js:185:7)
At /usr/share/atom/resources/electron.asar/renderer/api/remote.js:178

Error: Cannot read property 'object' of undefined
TypeError: Cannot read property 'object' of undefined
    at ObjectsRegistry.get (/usr/share/atom/resources/electron.asar/browser/objects-registry.js:44:28)
    at EventEmitter.<anonymous> (/usr/share/atom/resources/electron.asar/browser/rpc-server.js:309:31)
    at emitMany (events.js:121:13)
    at EventEmitter.emit (events.js:195:7)
    at EventEmitter.<anonymous> (/usr/share/atom/resources/electron.asar/browser/api/web-contents.js:141:25)
    at emitTwo (events.js:100:13)
    at EventEmitter.emit (events.js:185:7)
    at metaToValue (/usr/share/atom/resources/electron.asar/renderer/api/remote.js:178:13)
    at undefined.remoteMemberFunction (/usr/share/atom/resources/electron.asar/renderer/api/remote.js:112:18)
    at AtomEnvironment.module.exports.AtomEnvironment.getWindowDimensions (/usr/share/atom/resources/app.asar/src/atom-environment.js:631:29)
    at AtomEnvironment.module.exports.AtomEnvironment.storeWindowDimensions (/usr/share/atom/resources/app.asar/src/atom-environment.js:665:36)
    at WindowEventHandler.module.exports.WindowEventHandler.handleWindowBlur (/usr/share/atom/resources/app.asar/src/window-event-handler.js:182:35)
    at /usr/share/atom/resources/app.asar/src/window-event-handler.js:3:61

Commands
     -0:42 core:save (atom-text-editor.editor.is-focused)
  9x -0:36.2.0 core:move-down (atom-text-editor.editor.is-focused)
     -0:34.4.0 editor:move-to-end-of-screen-line (atom-text-editor.editor.is-focused)
  3x -0:34.2.0 core:select-up (atom-text-editor.editor.is-focused)
  2x -0:32.7.0 core:select-down (atom-text-editor.editor.is-focused)
     -0:31.9.0 core:backspace (atom-text-editor.editor.is-focused)
  5x -0:31.3.0 core:move-up (atom-text-editor.editor.is-focused)
     -0:30.4.0 editor:newline (atom-text-editor.editor.is-focused)
     -0:29.8.0 core:undo (atom-text-editor.editor.is-focused)
     -0:29.5.0 core:move-down (atom-text-editor.editor.is-focused)
     -0:29.2.0 editor:newline (atom-text-editor.editor.is-focused)
     -0:29 snippets:next-tab-stop (atom-text-editor.editor.is-focused)
     -0:29 snippets:expand (atom-text-editor.editor.is-focused)
     -0:29 editor:indent (atom-text-editor.editor.is-focused)
  2x -0:24.9.0 core:move-right (atom-text-editor.editor.is-focused)
     -0:23.9.0 core:save (atom-text-editor.editor.is-focused)

Config
{
  "editor": {
    "fontSize": 11
  }
}

Installed Packages
# User
git-plus, v5.16.2 (inactive)
project-manager, v2.9.7 (active)
todo-show, v1.7.0 (inactive)
atom-dark-syntax, v0.27.0 (inactive)
atom-dark-ui, v0.51.0 (inactive)
atom-light-syntax, v0.28.0 (inactive)
atom-light-ui, v0.43.0 (inactive)
base16-tomorrow-dark-theme, v1.1.0 (inactive)
base16-tomorrow-light-theme, v1.1.1 (inactive)
one-dark-ui, v1.3.2 (active)
one-light-ui, v1.3.2 (inactive)
one-dark-syntax, v1.2.0 (active)
one-light-syntax, v1.2.0 (inactive)
solarized-dark-syntax, v1.0.2 (inactive)
solarized-light-syntax, v1.0.2 (inactive)
about, v1.5.2 (active)
archive-view, v0.61.1 (active)
autocomplete-atom-api, v0.10.0 (active)
autocomplete-css, v0.11.1 (active)
autocomplete-html, v0.7.2 (active)
autocomplete-plus, v2.31.0 (active)
autocomplete-snippets, v1.11.0 (active)
autoflow, v0.27.0 (inactive)
autosave, v0.23.1 (active)
background-tips, v0.26.0 (active)
bookmarks, v0.41.0 (active)
bracket-matcher, v0.82.1 (active)
command-palette, v0.38.0 (inactive)
deprecation-cop, v0.54.1 (active)
dev-live-reload, v0.47.0 (active)
encoding-selector, v0.22.0 (active)
exception-reporting, v0.39.0 (active)
fuzzy-finder, v1.3.0 (active)
git-diff, v1.1.0 (active)
find-and-replace, v0.198.0 (active)
go-to-line, v0.31.0 (inactive)
grammar-selector, v0.48.1 (active)
image-view, v0.58.0 (active)
incompatible-packages, v0.26.1 (active)
keybinding-resolver, v0.35.0 (active)
line-ending-selector, v0.5.0 (active)
link, v0.31.1 (inactive)
markdown-preview, v0.158.0 (active)
metrics, v0.53.1 (active)
notifications, v0.64.1 (active)
open-on-github, v1.2.0 (inactive)
package-generator, v1.0.0 (inactive)
settings-view, v0.238.2 (active)
snippets, v1.0.2 (active)
spell-check, v0.67.1 (active)
status-bar, v1.4.1 (active)
styleguide, v0.46.0 (active)
symbols-view, v0.113.0 (inactive)
tabs, v0.98.1 (active)
timecop, v0.33.1 (active)
tree-view, v0.208.0 (active)
update-package-dependencies, v0.10.0 (active)
welcome, v0.34.0 (active)
whitespace, v0.32.2 (active)
wrap-guide, v0.38.1 (active)
language-c, v0.52.1 (active)
language-clojure, v0.21.0 (active)
language-coffee-script, v0.47.0 (active)
language-csharp, v0.12.1 (active)
language-css, v0.36.2 (active)
language-gfm, v0.86.0 (active)
language-git, v0.13.0 (active)
language-go, v0.42.0 (active)
language-html, v0.44.1 (active)
language-hyperlink, v0.16.0 (active)
language-java, v0.22.0 (active)
language-javascript, v0.119.0 (active)
language-json, v0.18.0 (active)
language-less, v0.29.3 (active)
language-make, v0.22.2 (active)
language-mustache, v0.13.0 (active)
language-objective-c, v0.15.1 (active)
language-perl, v0.35.0 (active)
language-php, v0.37.0 (active)
language-property-list, v0.8.0 (active)
language-python, v0.45.0 (active)
language-ruby, v0.68.5 (active)
language-ruby-on-rails, v0.25.0 (active)
language-sass, v0.52.0 (active)
language-shellscript, v0.22.3 (active)
language-source, v0.9.0 (active)
language-sql, v0.21.1 (active)
language-text, v0.7.1 (active)
language-todo, v0.28.0 (active)
language-toml, v0.18.0 (active)
language-xml, v0.34.8 (active)
language-yaml, v0.26.0 (active)

# Dev
No dev packages

This is a duplicate of #11692 - feel free to subscribe there for updates.


Upgrade to ghc-lib-parser-8.10.3, ghc-lib-parser-ex-<IP_ADDRESS>

Book-keeping basically. This leaves us safe in the knowledge that new installs of hlint are linking ghc-lib-parser-20201220 and the verified compatible ghc-lib-parser-ex-<IP_ADDRESS>.

Ooh! Look at this fancy new CI! 😀

I think our fancy new CI ignores stack.yaml entirely now. I wonder if we should delete it, or does it still bring value to you?

I think our fancy new CI ignores stack.yaml entirely now. I wonder if we should delete it, or does it still bring value to you?

Please, if not deleting it is an option, let us keep it. It's integral to my workflow!

Not deleting it is absolutely fine. It can stay as long as you find it useful.


change the behavior of limit of client.list_example method

Feature request
one small suggestion, client.list_example method has limit of 100 which is not explicit. I usually expect API to return everything when not specifying limit, so how about either change not to have default limit or show the warning when there are more than 100 examples in the datasets?

“limit”: min(limit, 100) if limit is not None else 100,

Motivation
when I fetched examples from a dataset that have more than 100 examples, I could not realize why there were missing examples

Hi @kazuyaseki - thanks for reporting this issue. Could you share some code to help me reproduce?
I am able to pull 300 examples here no problem:
from langsmith import Client

c = Client()
name = "abcd test"
d = c.create_dataset(dataset_name=name)
c.create_examples(inputs=[{"in": i} for i in range(300)], dataset_id=d.id)
print(f"Created dataset {d.id}")
all_examples = list(c.list_examples(dataset_name=name))
print(f"Loaded {len(all_examples)} examples")
# Loaded 300 examples

@hinthornw
actually that was my misunderstanding, actual problem was in delete_example.
below code does not delete all examples.
    name = "abcd test"
    d = client.create_dataset(dataset_name=name)
    client.create_examples(inputs=[{"in": i} for i in range(300)], dataset_id=d.id)
    print(f"Created dataset {d.id}")
    all_examples = client.list_examples(dataset_name=name)

    for example in all_examples:
        client.delete_example(example_id=example.id)

100 examples remaining.

@kazuyaseki I believe this is happening because you are altering the resource while you are iterating over it.
the list endpoint auto-paginates for you and will re-fetch after each "<batch-size = 100>" examples.
So the provided code does these actions:

Fetch 100 examples, maintaining the cursor in memory
Delete 100 examples.
Try to fetch examples 100-200. Problem is the cursor now points to what was originally example #200 since you altered the underlying container while iterating over it.
Delete 100 examples
Try to fetch examples 200-300. Nothing to return.

This means examples 100-200 were not deleted.
It's a little like doing
data = list(range(300))
batch_size = 100
for i in range(0, len(data), batch_size):
     vals=. data[i:i+batch_size]
     for val in vals:
         data.remove(val)
print("data", data)
```

Would be better to first fetch all the example ids and then delete them:

```
# fetch all the indices to delete so we're not modifying the container while iterating
all_examples = list(client.list_examples(dataset_name=name))

for example in all_examples:
    client.delete_example(example_id=example.id)
```

@hinthornw
I apologize for the late reply and taking your time.
thanks for clear explanation! that was my mistake and will close the issue


Unable to decrypt SSL in Wireshark if captured in "regular" mode. Works in "transparent" mode.

I am using 0.11.3 on CentOS 6.6. I run the proxy in transparent mode and use iptables to redirect traffic as detailed in the tutorial. The mitdump command is:
mitmdump -T -p 7777 -s 'responseMod.py' --anticache --ciphers '!DH:!ECDH:HIGH:MEDIUM:!aNULL:!MD5'
The traffic flow is:
[Firefox on VM host] <--> [eth1 on VM running proxy]-[eth0 on VM running proxy] <--> [Website]
This works fine; the responses of HTTPS pages are modified as expected.
I am simultaneously capturing the traffic using tcpdump on eth1:
tcpdump -ni eth1 -s0 port 443 -w /tmp/transparent.pcap
Again, this works fine. I can use the mitmproxy-ca.pem key in Wireshark and decrypt the traffic.
The problem is if I switch from transparent to regular mode. I remove the -T option in mitmdump and the iptables rules, and configure Firefox to use the proxy explicitly on 7777 (all protocols) and run:
mitmdump -p 7777 -s 'responseMod.py' --anticache --ciphers '!DH:!ECDH:HIGH:MEDIUM:!aNULL:!MD5'
Now, if I capture in tcpdump I have to specify port 7777:
tcpdump -ni eth1 -s0 port 7777 -w /tmp/regular.pcap
But I cannot decrypt the traffic in Wireshark. Everything is fine in Firefox in both regular and transparent mode - the response of HTTPS pages is modified as expected - but I need the ability to passively capture and decrypt the traffic at the same time, and that only works in transparent mode.
I should say up front that I don't know if this is a bug, a limitation, or just a reflection of my lack of deep understanding of SSL decryption and how it works. Is this expected behaviour? I want to use regular mode if possible as it makes it much easier for users to set up.
Many thanks!

Hi @idiotsavant,

But I cannot decrypt the traffic in Wireshark. Everything is fine in Firefox in both regular and transparent mode - the response of HTTPS pages is modified as expected - but I need the ability to passively capture and decrypt the traffic at the same time, and that only works in transparent mode.

This terribely sounds like a bug in Wireshark. In fact, I can even reproduce it :smile:
I just recorded a small conversation on my Ubuntu VM - once I select "Follow SSL stream" an empty window pops up. However, if I take a look at the Wireshark SSL debug file (SSL Protocol Preferences), I see multiple snippets similar to this
ssl_decrypt_record: allocating 4368 bytes for decrypt data (old len 624)
Plaintext[4336]:
| 04 57 f6 35 94 6f a6 93 2d 5f 20 52 ab ff c4 17 |.W.5.o..-_ R....|
| 48 54 54 50 2f 31 2e 31 20 32 30 30 20 4f 4b 0d |HTTP/1.1 200 OK.|
| 0a 53 65 72 76 65 72 3a 20 6e 67 69 6e 78 2f 31 |.Server: nginx/1|
| 2e 31 2e 31 39 0d 0a 44 61 74 65 3a 20 4d 6f 6e |.1.19..Date: Mon|
<snip>

ssl_decrypt_record found padding 11 final len 4324
checking mac (len 4288, version 303, ct 23 seq 1)
tls_check_mac mac type:SHA1 md 2
Mac[20]:
| 15 ab 52 e5 06 12 de a1 05 e0 d4 fa 1d 6e 33 1a |..R..........n3.|
| 55 3a 59 46                                     |U:YF            |
ssl_decrypt_record: mac failed

As it seems, decryption works, but there is some MAC error which makes Wireshark fail. I copied my mitmproxy-ca.pem and the pcap file to my windows machine - decryption works perfectly here.
TL;DR: You should get a Windows box :stuck_out_tongue:
Cheers,
Max

Hi Max,
I saw the same thing when I had the proxy in transparent mode: I was unable to see my decrypted traffic in the Wireshark GUI but I could see the plaintext in the debug file. I didn't mention that it wasn't working for me in the Wireshark GUI because I wanted to keep the explanation of the symptoms simple.
If I capture traffic with the proxy regular mode I do NOT see any plain text in the debug file.
This isn't just a Wireshark bug, because my test with tcpdump and Wireshark is just an illustration of the problem using tools that are widely available. What I'm actually using is a passive capture application that captures in a way very similar to tcpdump, and using that I see the same problem: I can decrypt captured SSL traffic only if the proxy is in transparent mode.
Many thanks!
Dan

Ok, then I can't reproduce it - apart from the problems mentioned above, it works fine for me on Windows and Linux in regular mode. What's stated in the Wireshark debug log? Which cipher is negotatied in the handshake? We defer all SSL processing to (py)OpenSSL, there's not really much we can do wrong if the connection works.
Cheers,
Max

I'll gather that information together for you shortly. Thanks for taking a look!
One question: do you have two interfaces on the box where mitmproxy is running? I have it on a VM in VirtualBox with eth1 on a host-only network and eth0 connected to my router using DHCP. I'm wondering if that might be a contributing factor.
Cheers,
Dan

Hi Max,
I'm linking to two small .pcap files, captured as detailed in my first post, and the corresponding Wireshark debug files. The larger one has lots of plaintext content and corresponds to the traffic captured whilst the proxy was in transparent mode.
The cipher in both cases was TLS_RSA_WITH_AES_128_CBC_SHA (0x002f).
Cheers,
Dan
https://dl.dropboxusercontent.com/u/18927567/2xPCAPand2xWiresharkLogs.zip (5 MB)

OK, my mistake!
I hadn't updated the port in the RSA keys window in Wireshark to change it from 443 to 7777. I now see plain text in with the traffic captured in the regular proxy mode. Which means the issue is with my capture app, and not Wireshark or mitmproxy.
Many thanks for your help, and sorry to waste your time.
Dan

No problem. Thanks for clarifying!
Cheers,
Max


virtual display missing when pc start

hi
Thank you for the development，
When computer restarts, only the software is turned on, and the virtual display does not remember the last time it was added.
Also, is it possible to add a virtual display to boot to the sunshine command line?
thanks in advance for the help!

Duplicate #17 #13


How to get deployment_token using CLI or ARM template?

To automate stage setup and deployment I would like to be able to get the deployment_token using the CLI so that I can acquire the token in my pipeline before I deploy from Azure DevOps.
I couldn't find a way to do that.
Even better of course would be if I could just use my AAD credentials instead of a special credential to do my deployments.

There’s no Azure CLI command for token management yet but it’s tracked here and you can see the az rest command that you can use for now to retrieve the token: https://github.com/Azure/azure-cli/issues/16470#issue-782483120
The request for authenticating using service principal is here but not something we have committed to add yet: #312

As for ARM templates, I managed to get it like this:
    "variables": {
        "resourceId": "[resourceId('Microsoft.Web/staticSites/', parameters('webAppName'))]"
    },

    "outputs": {
        "deploymentToken": {
            "type": "string",
            "value": "[listSecrets(variables('resourceId'), '2019-08-01').properties.apiKey]"
        }
    }

Found this through google. az staticwebapp secrets list is working in az cli 2.30.0

@ebuzyuma
According to Bicep lint rule outputs-should-not-contain-secrets, outputting sensitive data is a bad idea:

Don't include any values in an output that could potentially expose secrets. For example, secure parameters of type secureString or secureObject, or list* functions such as listKeys.
The output from a template is stored in the deployment history, so a malicious user could find that information.

Here's an example pipeline that acquires the secrets used for deployment; https://blog.johnnyreilly.com/2021/12/05/azure-static-web-app-deploy-previews-with-azure-devops#azure-pipelines-tweaks

Hey all, as @MPapst has mentioned above, we can officially get the deployment token now from the AZ CLI using az staticwebapp secrets list. For more information, check out the official documentation.
Closing this issue.

Amazing... thanks @austincrft
Feels like the Powershell option should be added to the docs here:
https://learn.microsoft.com/en-us/azure/static-web-apps/static-web-apps-cli-deploy


Strategy for missed posts?

Hi Matt,
Thanks for pmaw - it's a very nice library you've created!
This is not a problem with pmaw, but with my understanding of how to use it.
I have executed a search_comments with the same before and after parameters in both psaw and pmaw. It was so much faster in psaw, I was amazed! But, success rate varied from 93% to 83%, so at the end I had 40,630 comments using pmaw compared to 40,762 using psaw.
What is the best strategy for retrieving the comments that were missed? Should I assemble a list of submission ids from a search_submissions with the same parameters, based on their having num_comments greater than in the retrieved comments (or not even in the comments), then use search_submission_comment_ids with them? Or, can I utilize safe_exit, and re-run the process to see if I can get more? Or, something else?
Perhaps I it would be best to use search_submission_comment_id from the get-go? I have found that searching by id with psaw much slower that just using a date range, and as I have a range I didn't bother with it in this case. Is it slower to use than search_comments?
Cheers
Chris

Hi @ChrisPalmerNZ, the success rate metric which is printed represents how many requests are rejected due to rate-limiting from Pushshift, any failed request is retried automatically.
That's interesting that there was a different number of comments. Can you share the query that you ran? Were there any shards down while you ran the query?
The safe_exit feature is intended for long-running queries which may be interrupted during execution, as it allows you to resume using cached requests and responses. I may be able to recommend a strategy for missed posts based on the parameters you are using.

Hi @mattpodolak
Thanks for replying, sorry its taken me a while to get back to you.
I used the same subreddit, start, end and parameters, and query for both libraries, they were subreddit=CovidVaccinated', before=1618581599, and after=1606262347.
And the query ( signifies that I used either psaw or pmaw):
   <api>.search_comments(
                    after=after,
                    before=before,
                    subreddit=subreddit,
                    fields=["id","subreddit","link_id","parent_id","is_submitter","author",
                                "author_fullname","body","score","created_utc","permalink"],
                    limit=None
                    )

I didn't check shards, should I execute an api.metadata_.get('shards') to check them?
I got this from psaw - but eventually  I got 40,762 comments:
D:\anaconda3\envs\pytorch_1_4\lib\site-packages\psaw\PushshiftAPI.py:192: UserWarning: Got non 200 code 502
  warnings.warn("Got non 200 code %s" % response.status_code)
D:\anaconda3\envs\pytorch_1_4\lib\site-packages\psaw\PushshiftAPI.py:192: UserWarning: Got non 200 code 522
  warnings.warn("Got non 200 code %s" % response.status_code)

I got this from pmaw, and got 40,630 comments:
40730 results available in Pushshift
Checkpoint:: Success Rate: 93.00% - Requests: 100 - Batches: 10 - Items Remaining: 31889
Checkpoint:: Success Rate: 90.50% - Requests: 200 - Batches: 20 - Items Remaining: 23382
Checkpoint:: Success Rate: 88.00% - Requests: 300 - Batches: 30 - Items Remaining: 16397
Checkpoint:: Success Rate: 84.50% - Requests: 400 - Batches: 40 - Items Remaining: 10293
Checkpoint:: Success Rate: 83.20% - Requests: 500 - Batches: 50 - Items Remaining: 4528
Total:: Success Rate: 83.02% - Requests: 583 - Batches: 59 - Items Remaining: 1
Checkpoint:: Success Rate: 82.48% - Requests: 588 - Batches: 60 - Items Remaining: -99
Total:: Success Rate: 82.48% - Requests: 588 - Batches: 60 - Items Remaining: 0

I'm currently working on troubleshooting what happened to those 100 missing comments.
The number of comments returned by psaw is likely incorrect, I ran your query directly against Pushshift, the metadata indicates that there are only 40730 total results available.
https://api.pushshift.io/reddit/search/comment/?after=1606262347&before=1618581599&subreddit=CovidVaccinated&metadata=true
"metadata": {
        "after":<PHONE_NUMBER>,
        "agg_size": 100,
        "api_version": "3.0",
        "before":<PHONE_NUMBER>,
        "es_query": {
            "query": {
                "bool": {
                    "filter": {
                        "bool": {
                            "must": [
                                {
                                    "terms": {
                                        "subreddit": [
                                            "covidvaccinated"
                                        ]
                                    }
                                },
                                {
                                    "range": {
                                        "created_utc": {
                                            "gt":<PHONE_NUMBER>
                                        }
                                    }
                                },
                                {
                                    "range": {
                                        "created_utc": {
                                            "lt":<PHONE_NUMBER>
                                        }
                                    }
                                }
                            ],
                            "should": []
                        }
                    },
                    "must_not": []
                }
            },
            "size": 25,
            "sort": {
                "created_utc": "asc"
            }
        },
        "execution_time_milliseconds": 38.79,
        "index": "rc_delta3",
        "metadata": "true",
        "ranges": [
            {
                "range": {
                    "created_utc": {
                        "gt":<PHONE_NUMBER>
                    }
                }
            },
            {
                "range": {
                    "created_utc": {
                        "lt":<PHONE_NUMBER>
                    }
                }
            }
        ],
        "results_returned": 25,
        "shards": {
            "failed": 0,
            "skipped": 0,
            "successful": 4,
            "total": 4
        },
        "size": 25,
        "sort": "asc",
        "sort_type": "created_utc",
        "subreddit": [
            "CovidVaccinated"
        ],
        "timed_out": false,
        "total_results": 40730
    }

Additional update, I ran your query with both psaw and pmaw.
psaw returned 38326 unique comments, while pmaw returned 40729 unique comments.
I am currently investigating why there was 1 comment missed, I'll release an update sometime this week once I discover the root cause.

Than(40,730) ks for doing this Matthew. I ran the pmaw query a day after the psaw one, and I noticed at that time that it said that fewer posts were available than what psaw returned. I measured the number of posts from both libraries by the length of the data, rather than any reporting by the library. I am not currently in front of my PC, but I have saved the data so when I get home tonight I will look at it to see if there were any duplicates returned that might explain the higher psaw number.

Hi Matthew
I looked at my data, and realize that I transposed the last 2 digits of the psaw data - it was 40,726 rather than 40,762.  Which agrees with what you reported for psaw. However, my data from pmaw was less at  40,630. Perhaps I was unlucky and there were shards down - can you advise me how I should have tested for that? I am happy to email the IDs to you if that helps your inquiry.

Usually, if shards are down a warning should be printed in both pmaw and psaw. However, it seems like there was some data inconsistency issue on the side of Pushshift which has caused the same query to return a different amount.
I would refer to the number of items available reported by pmaw: "40730 results available in Pushshift," as a baseline for the number that you should expect to be returned for a query, and you can re-run accordingly.
Based on the logs you provided, it appears that pmaw re-ran the query after 1 result was not found, this has been fixed for the next version which will be released.
Total:: Success Rate: 83.02% - Requests: 583 - Batches: 59 - Items Remaining: 1 # finished the query
Checkpoint:: Success Rate: 82.48% - Requests: 588 - Batches: 60 - Items Remaining: -99 # re-tries the query to get the missing item
Total:: Success Rate: 82.48% - Requests: 588 - Batches: 60 - Items Remaining: 0

Two issues discovered thanks to this issue:

Duplicate results can be included if a query with before and after misses result(s) - fixed in v1.0.5
Missing results can occur for queries that specify before and after - will be tracked in #13

Thanks for all of that Matt - I'm glad, and very impressed, that my issue resulted in your devoted attention, and that it led to an improvement - its a great product! BTW, last night I re-ran the query and got all 40,730 results.

No problem, thanks for reporting the issue. It's worth noting that the 40,730 results that pmaw returned to you likely has a single duplicate.
I'm still working on figuring out the root cause, but v1.0.5 will not add duplicate results.


SwiftLint error (identifiers names too short)

Using swiftlint 0.25.1 and Carthage, I can't build the project without renaming the too short identifiers or disabling the rule

This is an issue with SwiftLint, not with the library itself.


Add rewrite-all module

So I'm thinking that this is at least a starting place for this. Given there is the desire to additionally have recipe jars included as well, this may have to entirely be a net new project otherwise we will have a circular dependency that can't be broken.
Ex: rewrite-core -> rewrite-spring -> rewrite-all

rewrite-all should be acyclic in the end.

However, this can't be an included project of the multi-module project rewrite project. It could use the same build almost, but would probably have a different version (so shouldn't be in the same repo driven by the same set of tags).
I think we could accomplish the inclusion of downstream projects by listing them here and including the rest of the rewrite language modules via a composite, but this still wouldn't solve the versioning issue. We could forgo nebula release and version rewrite-all with 2021.4.13 or something? Then it could be in this project, as long as it is published with a separate github action workflow that we trigger after all downstreams are built.

So since this module would have to be disconnected both from this repository's Gradle project, but also need to consume the recipe projects as diagramed, how does a new repository sound to hold this particular use case?
I bounced some ideas in terms of that particular path off of @sambsnyd and we were thinking that maybe what you have as rewrite-all becomes just simply a BOM for the purposes of providing version alignment. End users are still responsible for bringing in what they need as part of the selection, but would ease the versioning issue as described in the original issue.
On this path, we were thinking that maybe we'd leave openrewrite/rewrite the way that it is today, then create a repository that was only responsible for publishing the java platform for something like org.openrewrite.recipes:rewrite-recipes-bom which would depend upon the org.openrewrite:rewrite-bom:latest.release (resolved to ) and each of the specific recipe jars -- org.openrewrite.recipes:rewrite-spring:latest.release (also resolved to ). Then with each release of either core OR recipes OR adding a new recipes, the rewrite-recipes-bom project would be launched to version align everything based upon current processes.
Thoughts?

@shanman190 This all looks reasonable to me. Chatting with Sam, he just created a new repo https://github.com/openrewrite/rewrite-recipe-bom to host the new module.

Added bom over at https://github.com/openrewrite/rewrite-recipe-bom/pull/1.
Going to rework this PR to align with the rewrite-recipes-bom PR.


Create Kashika-PR.md

Pending PR
My PR got merged from my github account kashikaga which was suspended and till the time for contributing to GSSOC a made a new profile KGupta2126 Could you please review and provide me the points to my account KGupta2126 The PR was of level 2
https://github.com/jinx-vi-0/passop/pull/16
@MastanSayyad kindly provide me the points in my account KGupta2126

@MastanSayyad could you please check it


food recommendations

Would be so good if we can find an API that gives us information about the local food of the chosen place.


Error when docker build process please suggest how to develop?

please guild me,thank

Hey. Could you share some logs, otherwise it won't be possible to identify the cause. I will also write a quickstart guide the next week to clarify the configuration.


Operand #2 does not dominate this use in multiclause function

init.erl
-module(init).
-export([start/0, spawn_chain/1, counter/1, create_processes/1]).
-import(erlang, [display/1]).

start() ->
  [_Program | Args] = init:get_plain_arguments(),
  case Args of
    [CountBinary] ->
      Count = binary_to_integer(CountBinary),
      spawn_chain(Count)
  end.

spawn_chain(Count) when Count > 0 ->
  display({self(), count, to, Count}),
  create_processes(Count).

create_processes(Count) ->
  Last = reduce(1, Count, self()),
  Last ! 0,
  receive
    FinalAnswer when is_integer(FinalAnswer) ->
      display({result, is, FinalAnswer})
  end.

reduce(Final, Final, Receiver) ->
  spawn(?MODULE, counter, [Receiver]);
reduce(Acc, Final, Receiver) ->
  Sender = spawn(?MODULE, counter, [Receiver]),
  reduce(Acc + 1, Final, Sender).

counter(Receiver) ->
  receive
    N ->
      display({self(), received, N}),
      Sent = Receiver ! N + 1,
      display({self(), sent, Sent, to, Receiver})
  end.

lumen compile --output bin/spawn-chain --output-dir _build src
   Compiling src/init.erl
error: operand #2 does not dominate this use
   ┌─ src/init.erl:26:1
   │
26 │ ╭ ╭ ╭   spawn(?MODULE, counter, [Receiver]);
27 │ │ │ │ reduce(Acc, Final, Receiver) ->
   │ ╰─│─│^ problem during codegen related to this source code
   │   ╰─│' see current operation: %23 = "eir.call"(%20, %22, %17) {callee = @"erlang:spawn/3", musttail} : (!eir.term, !eir.term, !eir.box<!eir.cons>) -> !eir.term

   │     ╰' operand defined here

As of today 11 of 25% of the tests are affected by the does not dominate this use issue


Lighting issues with linked portals facing different directions

This is not an issue, it's how lighting in Minecraft works and how portals work, light does not go through portals

Minecraft renders different light on different faces, this is normal behavior. You can use a darker block or use different materials to make it less visible.


Update index.rst

Possible copy and paste error, the same placeholder was used for client-id, client-secret and redirect-uri

Hey! I am hosting a new master branch for this repo since the old creator has been MIA for 2 years. Hoping to get this repo back on it's feet and in good standing. I've been working on updating tests and adding all new functionality and have merged some of the PR's that I thought were sufficient for merging. If your PR didn't make it, resubmit it please.
Thanks!
https://github.com/Harrison97/spotipy

Thanks! Done in https://github.com/plamere/spotipy/pull/414


Beautify Errors, does not beautify

I am struggling to beautify my errors without editing the code directly. I was able to accomplish my goal by changing line 51 in middleware.js from:
return Promise.resolve(error);
to:
return Promise.resolve(error.errors);
However, I should not have to do this manually to receive the beautified error. Is there any way to receive the error other than modifying the code?

Can't you use errorFormatter param to format them exactly as you need them?

Thank you I did not understand the purpose of errorFormatter, until looking at the documentation further.


Using the new poetry dev group

The pyproject.toml file had both old-style and new-style dev dependency grouping. Updated to just use the new poetry style.
Should check that this does not impact CI and builds.
If you don't wish to review the poetry.lock file. I'd be happy to re-submit with just the pyproject.toml file changes. Then you could perform poetry lock --no-update on your own.

Could you rebase the PR?

I have rebased it. I did remove poetry.lock from the commit, as I was seeing some unintended changes in poetry output there, perhaps owing to version differences or config. I think it probably makes more sense for @danihodovic to execute changes to the lockfile.


Added support for multiline inputs.

This commit modifies the format() method to support multiple lines being formatted.
Normally, when formatting multiple lines, the first line would be formatted, then the rest would print as if not formatted.
With this modification, it builds a string line-by-line from the input, using the color formatting on each line, then returns the compiled string.
To do this, it is required to cast the input record.msg as a string, because it uses the native splitlines() method.  This should not be an issue as logger.Formatter.format() already converts the input to a string if it isn't already.
Example code:
import traceback
import logging
import coloredlogs

log = logging.getLogger('multilineloggerexample')
coloredlogs.install(level=logging.DEBUG, logger=log, fmt='[%(levelname)8s] %(message)s')

log.warning('multiline\nerrorgoes\nhereandends\nonthisline')
log.error(ValueError('value error here\nand ends here'))

try:
    raise ValueError()
except ValueError:
    log.debug(traceback.format_exc())

Outputs something like this (but with color):
[ WARNING] multiline
[ WARNING] errorgoes
[ WARNING] hereandends
[ WARNING] onthisline
[   ERROR] value error here
[   ERROR] and ends here
[   DEBUG] Traceback (most recent call last):
[   DEBUG]   File "main.py", line 12, in <module>
[   DEBUG]     raise ValueError()
[   DEBUG] ValueError

Coverage decreased (-0.1%) to 91.424% when pulling bfb8f29030a11aaec3f254e7f4c57b3d8e413cca on cclloyd:master into<PHONE_NUMBER>bc39057f824c545f2decab49c019ad on xolox:master.


Add configurable directory

Expected behaviour
allow configuration of directory to save screenshots. I'd like to have the master's saved at app/test/resources/screenshots
Actual behaviour
all screenshots are shared in app/screenshots directory
Would be happy to contribute this. Thank you for the awesome lib

Hi, have you tried
'''
screenshots {
// Points to the directory containing all the files pulled from a device
referenceDir = path/to/screenshots
}
'''

Hey, @digitalbuddha changing the base directory could be interesting. Is there any special reason to use that specific directory you mentioned? Or any other reason?
Before contributing there is a branch I'm working on a big change for the folders configuration we should merge before any other change. You can take a look here: https://github.com/Karumi/Shot/tree/provide-flavors-support This branch will change where the screenshots are placed to use a directory tree based on the flavors and build types.
I'd love to help you if you want to implement this feature once the branch I mentioned is merged 😃

Sounds great! As for the particular directory - it was just an example. Primary driver here is to have screenshots for testing appear in a test source tree.

Hey @CedrickFlocon your PR I just merged enables a different feature, I think @digitalbuddha was asking for a different change so I'm going to leave the issue open for now.


React to lobby kick / close game request from server

pls rebase

rebased

Im confused, why does this PR exist twice? (https://github.com/FAForever/downlords-faf-client/pull/1481)

Can we please localize the kick message on the client instead of having it hardcoded somewhere deep inside the lobby server.
https://github.com/FAForever/server/issues/499

@Askaholic :+1: will you change it server sided?

For sure! I'll also do it for any other message that's currently being sent in plain English by the server.
Client issue: #1292
Server issue with list of messages that need work: FAForever/server#444.

@Geosearchef Done https://github.com/FAForever/server/pull/502

done

@Geosearchef pls in the future issue and "fixes #" both are missing here and now it is not in the change log , same goes for some other Prs of yours

Always have an issue


Cannot change to line placement mode

Hey, I am unable to change from square placement to line placement. I think the problem is the fact that my keybind for map was already set to C, so when I installed the mod I feel like maybe it got permanently overwritten? I've tried rebooting the game after rebinding map back to M with no luck.

Please try resetting keybinds or manually setting the keybinds.

Also make sure you see custom keybinds in the controls section. If you don't please check your installation.

Ah, terribly sorry, I didn't realize there were custom binds in the controls menu.


Can't tell when targeting is done in some cases

Imagine a file with several as in it:
a
a
a
a

If you try to target the first a, targets will appear.  The problem is that the first a gets an a target drawn on it.  When you're focusing on where you want to edit rather than looking around for other labels or looking at the modeline, you can't tell if targeting is done and the cursor is inverting the a, or whether you're looking at an a target.
One idea for fixing this is to forbid using the same letter as what you're targeting, but then we'd no longer be able to get away with a lot of the inputChar - 'a' math that we do right now when handling targeting.

It looks like most terminal emulators could be configured to either blink the cursor, use a different highlight for the highlighted targets vs the cursor, or change the cursor shape.  So I don't think it's worth worrying about solving this in code.


multipleSelection on File Manager

Multiple file selection on File Manager seems to have been removed on recent versions.
The method described here no longer seems to work:
https://documentation.concrete5.org/developers/working-with-files-and-the-file-manager/working-with-existing-files/add-file-manager-support-to-your-blocks-and-single-pages
This is a very useful feature as there's situations that require adding long lists of files and adding one by one is far from ideal. Currently the window closes after clicking on the first file.
I wonder if we can look into getting this feature back?

So I managed to re-implement this with the new concrete5 file manager. Though it's a bit different to the checkbox implementation that used to be available.
Here is an example showing a possible implementation

So I managed to re-implement this with the new concrete5 file manager. Though it's a bit different to the checkbox implementation that used to be available.
Here is an example showing a possible implementation

It would be simply perfect...

So I managed to re-implement this with the new concrete5 file manager. Though it's a bit different to the checkbox implementation that used to be available.
Here is an example showing a possible implementation

That looks pretty decent! Maybe do a PR with that implementation, that'd be super useful.


Descriptive custom attribute columns

update of #11916
BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1416220
Completed on the UI side by https://github.com/ManageIQ/manageiq-ui-classic/pull/733
does version -> CustomAttribute: section: version in report columns.
@lpichler Please review
cc @simon3z
@miq-bot add_label euwe/yes, chargeback, providers/containers

@zeari I added some comments on https://github.com/ManageIQ/manageiq-ui-classic/pull/733 that are relevant here as well (adding the section in the field name, e.g. Custom Attribute: label : version and adding tests).

@zeari I added some comments on ManageIQ/manageiq-ui-classic#733 that are relevant here as well (adding the section in the field name, e.g. Custom Attribute: label : version and adding tests).

@simon3z

Can CustomAttribute.section be nil?
I think labels: version is better than Custom Attribute: label : version since 'CustomAttribute' doesnt mean much to the user

Can CustomAttribute.section be nil? we need to take this into consideration since this change is across all of reporting

I don't think a section can be nil (I can't imagine what would mean). Anyway @gtanzillo and @blomquisg should have more information.

I think labels: version is better than Custom Attribute: label : version since 'CustomAttribute' doesnt mean much to the user

Yes, I don't think it we should expose "Custom Attribute".
LGTM :+1:
@miq-bot assign gtanzillo

@lpichler can you review this?

@lpichler Please also review with respect to reporting and how custom attributes can be filtered against.

Can CustomAttribute.section be nil? we need to take this into consideration since this change is across all of reporting

Yes, it can be nil.  The key/value part (and maybe source) are the only columns that matter.  Section is extra, but is not necessarily needed.  In my mind I think of this table like an ini file, where the section is optional, and the source would be like the ini file name.

@Fryguy We are letting go of section for now. I think this is ready for merge once travis completes.


add fixes for new gekko version

Does not fix my error. Still process out of memory :/ You just did changes in the bruteforce.js, correct?

It doesnt fix the out of memory, but it works for the new version of Gekko, due to API being changed. I will look into out of memory issue later.


Solution for  1498-Number of Subsequences That Satisfy the Given Sum …

…Condition.java

File(s) Modified: 0001-two-sum.py, 0002-add-two-numbers.py, etc...
Language(s) Used: python, javascript, etc...
Submission URL: _https://leetcode.com/submissions/detail/1201546112/

Important
Please make sure the file name is lowercase and a duplicate file does not already exist before merging.

@Aksshay88 Thanks for your contribution 👍. Next time, make sure the file name matches the Contributing guidelines.

@Ykhan799 sure thank you for the words ☺


fix default socket path on osx

On OSX, the keepassx socket is in the user temporary directory.

LGTM! Thanks

LGTM! Thanks


Remove demo folder

Given these were intended for kubecon demo, they dont really fit in this repo anymore

This PR conflicts with #195


Bug: can't import

I see this:

I tried to remove the part of the "publish", but still got an error:

How come?

publish {
  userOrg = POM_DEVELOPER_ID
  groupId = GROUP
  artifactId = ARTIFACT_ID
  publishVersion = VERSION_NAME
  desc = POM_DESCRIPTION
  website = POM_URL
//  bintrayUser = BINTRAY_USER
//  bintrayKey = BINTRAY_API_KEY
  autoPublish = false
}

you should delete bintrayUser & bintrayKey

@nuoxiang I've tried now. Still got build errors:

@AndroidDeveloperLB the errors seem like download library error，check you network .

try click Re-download dependencies ...

My network is fine. Pressing on this link doesn't help.

Tested on 2 PCs on different cities. Still same issue.

or u try to click Try again

I think your gradle version is too high , some plugin don't compatibility.
in build.gradle
...
 dependencies {
        classpath 'com.android.tools.build:gradle:3.2.0-alpha04'
//        classpath 'com.novoda:bintray-release:0.3.4'
    }

in /richeditor/build.gradle
apply plugin: 'com.android.library'
//apply plugin: 'com.novoda.bintray-release'
...
//publish {
//  userOrg = POM_DEVELOPER_ID
//  groupId = GROUP
//  artifactId = ARTIFACT_ID
//  publishVersion = VERSION_NAME
//  desc = POM_DESCRIPTION
//  website = POM_URL
//  bintrayUser = BINTRAY_USER
//  bintrayKey = BINTRAY_API_KEY
//  autoPublish = false
//}

or you can use this project config.

@nuoxiang The gradle version is fine. It will occur on the stable version too:
classpath 'com.android.tools.build:gradle:3.0.1'

Please update the project to work at least with the stable version of gradle, without the need of us changing anything in the code to make it work.
Only after commenting what you wrote, including the buildToolsVersion part (it's written twice for some reason) , it builds fine:

com.novoda.bintray-release plugin maybe have compatibility,the plugin only use publish library.

@nuoxiang That may be, but still it ruins the entire build for anyone who wish to try this sample.

@AndroidDeveloperLB
I got the same trouble,
and have solved according to your method .
thanks.

Versions of components is one thing, but messing around with random text in the gradle files...

thx


Role-based access control with keycloak

I suggest implementing fine grained roles for various actions in the Rest-API. The Keycloak documentation explains how the concepts of roles, groups and users work together. For further reading I suggest the Wikipedia-article about RBAC
This would of course imply a documentation of the necessary roles linked to the API calls.
Pro's

This would reuse already and well implemented features from Keycloak reducing complexity in the core server.
Flexibility and programmability for later extensions on a high non-code level.
Standardized access control paradigm.
Access control is not hard-coded.
New actions in the Rest-API can be added independently from the access control.
No need for config files.

Con's

Maybe a little bit of work.

I implemented a pre-validation of token with the actix-web FromRequest conversion which makes forgetting to validate the token harder. Any invalid token will be rejected. Missing token will return an well typed anonymous claim.
I implemented new roles which represents the access to certain parts of the api. (liberation:aristocrat, liberation:librarian:librarium, liberation:member)
Checking the claims is done trough a streamlined result handling

Actually I decided to go the really fine-grained approach now.
    pub const ACCOUNTS_READ: &'static str = "liberation:accounts:read";
    pub const ACCOUNTS_EDIT: &'static str = "liberation:accounts:edit";
    pub const LIBRARIAN_ROLE_PREFIX: &'static str = "liberation:librarian:";
    pub const MEMBER_ROLE: &'static str = "liberation:member";
    pub const RPGSYSTEMS_EDIT: &'static str = "liberation:rpgsystems:edit";
    pub const RPGSYSTEMS_CREATE: &'static str = "liberation:rpgsystems:create";
    pub const RPGSYSTEMS_DELETE: &'static str = "liberation:rpgsystems:delete";
    pub const TITLES_EDIT: &'static str = "liberation:titles:edit";
    pub const TITLES_CREATE: &'static str = "liberation:titles:create";
    pub const TITLES_DELETE: &'static str = "liberation:titles:delete";


Interest in adding Structural Topic Model?

Hi @bab2min , thanks again for your awesome work.
In R, one of the most popular packages implements structural topic models. https://cran.r-project.org/web/packages/stm/vignettes/stmVignette.pdf .
As far as I know, a python counterpart does not exist, it might be interesting to include it into tomotopy.
Here is the paper: https://scholar.princeton.edu/files/bstewart/files/stmnips2013.pdf
thank you!

Hi @ebergam, sorry for the late answer.
Thanks for the good suggestion.
I'll take a look at the paper and see if it can be implemented efficiently.

Hi! tomotopy is very impressive, thank you for your work @bab2min
I agree, STM is indeed a loooong-awaited addition to the pythonic landscape. It would be so convenient to combine it with all other pythonic NLP libraries' magic.


Expose task state as a method of AppFuture

Partly addresses #103 - it exposes the task state
to end uses via the AppFuture interface; but the
task state is not particularly rich information.

@benclifford and I had a chat about this and decided that it would be useful to have a broader discussion of what states might be useful to expose to the user that we already can tease out from the DFK. In addition we also need to consider the perf cost of fine grained state reporting from the new executors.

Another thing I was wondering is what people want to do with more exposed/interesting state: if it is something like log it to a console / group it by identical states, then we could return a string and have great flexibility in how we proceed; if we're trying to do something with more structured data, there's a rathole of data structure design/backward compatibility constraints to fall down.

I think this feature is worth revisiting soonish, in the context of the richer information now available (sometimes) in the monitoring DB. One view is that this call would give a view into the relevant part of the monitoring DB information.

@benclifford What do we want to do about this. I'm okay with merging this, the code is fine. As covered in the discussion we do not yet have the richer state info that might be in the monitoring db available yet in the dfk side.


Azure Spatial Anchor Tutorials update for MRTK v2.1.0

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: martinwilter sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

Docs Build status updates of commit 493bb88:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mixed-reality-docs/images/Lesson1Chapter2Step2b.JPG
:white_check_mark:Succeeded

mixed-reality-docs/images/Lesson1Chapter2Step3.JPG
:white_check_mark:Succeeded

mixed-reality-docs/images/Lesson2_Chapter4_Step2.JPG
:white_check_mark:Succeeded

mixed-reality-docs/images/Lesson2_Chapter4_Step3.JPG
:white_check_mark:Succeeded

mixed-reality-docs/images/Lesson2_Chapter4_Step4.JPG
:white_check_mark:Succeeded

mixed-reality-docs/images/Lesson3_Chapter3_step1im.PNG
:white_check_mark:Succeeded

mixed-reality-docs/images/Lesson3_chapter3_step3im.PNG
:white_check_mark:Succeeded

mixed-reality-docs/images/Lesson3_chapter3_step4im.PNG
:white_check_mark:Succeeded

mixed-reality-docs/images/Lesson3_chapter3_step5im.PNG
:white_check_mark:Succeeded

mixed-reality-docs/images/Lesson4_Chapter1_step1im.PNG
:white_check_mark:Succeeded

mixed-reality-docs/images/Lesson4_Chapter3_step8im.PNG
:white_check_mark:Succeeded

mixed-reality-docs/images/Lesson4_chapter1_notebim.PNG
:white_check_mark:Succeeded

mixed-reality-docs/images/Lesson4_chapter1_step4ima.PNG
:white_check_mark:Succeeded

mixed-reality-docs/images/Lesson4_chapter3_step4-7im.PNG
:white_check_mark:Succeeded

mixed-reality-docs/images/Lesson4_chapter3_step9im.PNG
:white_check_mark:Succeeded

mixed-reality-docs/images/Lesson4_chapter4_step3-5-noteim.PNG
:white_check_mark:Succeeded

mixed-reality-docs/images/module2chapter1step4im.PNG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/module2chapter2step7bim.PNG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-asa-ch1-3-step1.jpg
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-asa-ch1-3-step11.jpg
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-asa-ch1-3-step12.jpg
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-asa-ch1-3-step6.jpg
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-asa-ch1-3-step7.jpg
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-asa-ch1-3-step7B.PNG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-asa-ch1-3-step8.jpg
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-1-step2.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-1-step3.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-1-step4.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-1-step5.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-1-step6.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-2-step1.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-2-step2.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-2-step3.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-2-step4.jpg
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-2-step5.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-3-step2a.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-3-step2b.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-3-step3.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-3-step4-note1.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-4-step1.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-4-step2a.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-4-step2b.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-5-step1.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-5-step3.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-5-step4.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-5-step5.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-5-step7.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch1-5-step8.JPG
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch2-1-step1.png
:white_check_mark:Succeeded
View

mixed-reality-docs/images/mrlearning-base-ch2-1-step2a.png
:white_check_mark:Succeeded
View

This comment lists only the first 50 files in the pull request.
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.