More Search renames

Based on UX studies, please make the following changes as well:

Old name
New name
Notes

SearchIndexDataSource
SearchIndexerDataSourceConnection

SearchField.SynonymMaps
SearchField.SynonymMapNames
For dynamic languages with union support, you could instead accept either a string or object and, if an object that is a SynonymMap, extract it's name. But it's not always practical to expect they will create or even get a synonym map just to pass it in, so a string name (these are managed separately) is still required to be supported.

SearchField.Analyzer
SearchField.AnalyzerName

SearchField.IndexAnalyzer
SearchField.IndexAnalyzerName

SearchField.SearchAnalyzer
SearchField.SearchAnalyzerName

SearchableField.SynonymMaps
SearchableField.SynonymMapNames
Same as above

SearchableField.Analyzer
SearchableField.AnalyzerName

SearchableField.IndexAnalyzer
SearchableField.IndexAnalyzerName

SearchableField.SearchAnalyzer
SearchableField.SearchAnalyzerName

Note the typo I changed in the original description: should be SearchIndexerDataSource -> SearchIndexerDataSourceConnection.

Note the typo I changed in the original description: should be SearchIndexerDataSource -> SearchIndexerDataSourceConnection.


[Runtime] Fix private registry issue

Bump runtime version to v0.1.1-hp1

Version wrong, close it


Publish to webui.ipfs.io

Let's publish the revamp'd Web UI to it's own domain! It could follow the deployment pattern of our other websites; merging to master can trigger a CI built, test and publish of the update. Continuous Deployment! Imagine it! We ned to add more e2e tests to bolster our confidence, but in this'd be a huge improvement for the velocity of the project. No more waiting n months for a release! If a user navigates to webui.ipfs.io without having a local IPFS deamon running we can catch that an encourage them to go install it, and also offer them the option to "try it now" via an embedded js-ipfs version!
For IPFS sites we publish a dns txt record for the domain that points the latest CID for the last successful build and test cycle, so we'd only be deploying tested code, and have a stable address for "i want the latest webui".
We can update go-ipfs and js-ipfs to redirect to https://webui.ipfs.io when users go to :5001/webui. Right now we have to PR go-ipfs with a new CID to redirect to, but the proposal is we change that to redirect to a domain to simplify deployment. We need to enable CORS headers so that js-ipfs-api client can request resources from a node on localhost (or any remote address for that matter), but we could do that by default for webui.ipfs.io which'd be neat.
Companion would detect the dnslink record and serve the webui from IPFS where available. That'd redirect the url to <gateway>/ipfs/<latest-cid-for-webui>. If you are using a custom gateway then you'd have to sort out CORS for that or overlaying the /api routes on the gateway origin, like we do on the main gateway, and that is the same as it is now.
What am I missing? Is there any reason not to do this?

I personally like the idea and that was actually what I thought we were going to do since the beginning. webui.ipfs.io to rule them all! No more CIDs or hardcoded versions 😄

@lidel good point. So the plan is to use https://webui.ipfs.io for continuous deployment of the master branch. I'll tag and PR release CIDs to go-ips and js-ipfs after a few days of testing.
Of note, https://webui.ipfs.io when live with #806 🚢

We already publish to webui.ipfs.io!


Run tests on Python 3.11 as well

Codecov Report

Merging #14 (1081b3a) into main (20ac9a3) will not change coverage.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff            @@
##              main       #14   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            2         2
  Lines           33        33
  Branches        10        10
=========================================
  Hits            33        33

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Remove vertically symmetric BASEX

@DhrubajyotiDas,
Where are you at with cleaning up basex.py? I am playing with it, and I am not sure if it returns a one-quadrant transform. Also, I think that the symmetric transform code is still there.
We can get rid of the centering stuff as well.
I will merge a good draft of the abel.iabel function here in about an hour, so that should allow you to prune down the basex.py file.

@DanHickstein
I am getting rid of the symmetric transform code today, and I expect the transition to one-quadrant transform to not take very long as well. I will work on it independently, and make sure it plays well with the abel.iabel function when you put it up.

Sounds good! Thanks @DhrubajyotiDas!

PR #94 is mostly cleanup of the symmetric code. I am currently working on enabling the single-quadrant functionality.

#94 takes care of this issue.

Great work @DhrubajyotiDas!


Need to manually join CORDEX user group before executing esgf.ipynb

Executing esgf.ipynb requires to
(a) create an account at ESGF
(b) manually join the CORDEX user group (e.g., by copying the URL given in the notebook into a browser)
Without (b), downloads cause cryptic error messages
syntax error, unexpected WORD_WORD, expecting SCAN_ATTR or SCAN_DATASET or SCAN_ERROR context: (...)

Yes, i don't understand why the CORDEX access is still restricted (makes everything complicated). The license is more or less non-restrictive, so the data could just be made openly accessible (like CMIP5/6). I tried to suggest this in the community but there is some concerns. Maybe we will know more after the Cordex GA next week!


Add refresh button to CourseRenderPane

Summary
Adds a refresh button to the Class Search page, so users can reload the latest data from WebSoc.

Test Plan

Search for a class
Press the refresh button

verify that the component reloads

Switch to "Added Class" tab and then back to "Class Search"

verify that the course data is still cached

Issues
Close #116

Hmm I still think we run into the same issue though... someone leaves a tab open overnight, comes back to search in the morning, and gets results that are different from WebSOC.
I would be open to caching if we also included a time limit on it. Maybe we add a time field in the cache so if a cached result is older than 30min, we ignore it and fetch from WebSOC again.
We can create a separate issue for this if you'd like to work on it!

Hmm I still think we run into the same issue though... someone leaves a tab open overnight, comes back to search in the morning, and gets results that are different from WebSOC.
I would be open to caching if we also included a time limit on it. Maybe we add a time field in the cache so if a cached result is older than 30min, we ignore it and fetch from WebSOC again.
We can create a separate issue for this if you'd like to work on it!

Yeah this makes a lot of sense. I'll make the issue.


Try not push if no readers

Try check readers_count in push/extend, instead of
        if S::AUTO_CLEANUP {
            if self.readers.load(Ordering::Relaxed) == 0{
                self.cleanup_impl(&mut list);
            }
        }

in clear/truncate/resize
Do that after spmc implementation.
Benchmark.

Unjustified. Increase code complexity.


Add PostgreSQL to list of supported DirectQuery sources

Hi,
in the august 2019 feature summary, Postgresql was added as a (preview) data source.
https://powerbi.microsoft.com/en-us/blog/power-bi-desktop-august-2019-feature-summary/
Can we add this source in the list?
Is there a specific driver version necessary? Once I add a 'count' measure to a visual, I get the error "we couldn't fold the expression to the data source. please try a simpler expression".
thanks,

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

ID: cc3332c2-1973-ba6d-8b13-20185f3178a8
Version Independent ID: 09b16196-3c5e-8a12-edee-d1c095ebc6d0
Content: Data sources supported by DirectQuery in Power BI - Power BI
Content Source: powerbi-docs/desktop-directquery-data-sources.md
Service: powerbi
Sub-service: powerbi-desktop
GitHub Login: @davidiseminger
Microsoft Alias: davidi

I have this problem too. publishing the direct query report results in an error on the Web. Thanks for an update. Is there a Postgres minmal Version? Is 9.6 supported in direct Query mode?

We've added PostgreSQL to the list, thanks for pointing this out.


Unhelpful error in destructuring assignment

Consider the following:
var [,,y] = [1, [[2], 3]];
The error I get is Type '[number, (number | number[])[]]' has no property '2'. This is not actionable.

any suggestions on how to make this more palatable?

Tuple of type [blah, (blah | blah[])[]] with cardinality '3' cannot be indexed at '2'

The Type .... can not be destructured in at most 2 parts.
I would not use the word cardinality.... it has no meaning if you are not familiar with set theory.

with length*
Yeah, I'm mostly trying to avoid pluralization for 1-tuples.

@paulvanbrenk, I think @caitp has addressed this in #2238. Can you confirm?

It looks similar to #2090

Yup. Just spoke with Paul, this is indeed closed.


SDKMAN sets the wrong JAVA_HOME for GraalVM on MAC

When installing graalvm on mac sdk i java 1.0.0-rc-10-grl then the  JAVA_HOME env variable which is set by sdkman points to a wrong directory.
Is:
>echo $JAVA_HOME
/Users/me/.sdkman/candidates/java/current
>ls -la
current -> /Users/me/.sdkman/candidates/java/1.0.0-rc-10-grl

Should be for GraalVM:
>echo $JAVA_HOME
/Users/me/.sdkman/candidates/java/current/Contents/Home/
>ls -la
current -> /Users/me/.sdkman/candidates/java/1.0.0-rc-10-grl/Contents/Home

Please follow the contributor guidelines as clearly stipulated before opening an issue.

It seems to be more important to follow processes than solving problems. I tried to kickoff a discussion on https://gitter.im/sdkman/user-issues but nobody cares. Apparently it isn't important that there is bug.

@Vad1mo Gitter is not a real time communication system. On Gitter, you got an answer on the same day in the afternoon. In my opinion this is very good, because this is an open source project where all contributors spend their free time on.


Bump min python310

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

Changes

make dependency requirements of cf package the same as in the pypi package (see pyproject.toml), in particular follow SPEC0 and only support Python ≥3.10
add setuptools to host requirements (as recommended by linter)
add meta data URLs
add meta data description (from CITATION.cff)

@conda-forge-admin, please rerender


cleaned up and tested tp support

@debajyotidatta the way we are supporting tp by composing quantized tensor subclass and DTensor: https://github.com/pytorch/ao/pull/939, I believe the way its done in gpt-fast is outdated, would you be interested in integrating the new tp flow in generate.py instead?

@debajyotidatta the way we are supporting tp by composing quantized tensor subclass and DTensor: #939, I believe the way its done in gpt-fast is outdated, would you be interested in integrating the new tp flow in generate.py instead?

Sounds good! I will do that.


How to change the resolution on BMP format

Hello,
From https://github.com/ArduCAM/Arduino/blob/master/ArduCAM/ov2640_regs.h I see only one resolution option for BMP image,  OV2640_QVGA i.e. 320*240.
Can you please provide similar register address-data configurations for capturing different resolution images other than 320*240?
Thanks,
Chougala

@chougala
Hi,
We are also configuring more resolutions.We will release more demos as soon as possible.

Hi,
Thanks for quick response.  Is it possible for you to point us to any
document which explains how to change the resolution.
Regards,
Girija
On Sun, Sep 17, 2017 at 6:42 AM, supprot<EMAIL_ADDRESS>wrote:

@chougala https://github.com/chougala
Hi,
We are also configuring more resolutions.We will release more demos as
soon as possible.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ArduCAM/Arduino/issues/264#issuecomment-330041163,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AehCCJn2A7-fmQi5W0KCLkP9NbuyfrMlks5sjRO8gaJpZM4PZXQm
.

Hi UCTRONICS
I know this is an old post but I have a project that I need to change the BMP format to QQVGA (160x120).  I think I found the correct initialization code for this but not 100% sure it will work with the OV240 and Arducam.  Also what else would have to be changed in the code to default to the QQVGA format.  Attached is the code:
qqvga.txt

@mjs513 thank you for your config. I'm also interesting in get 160x120 bitmap.

Unfortunately could never get it working properly.  Gave up and just did a image size in my code before I save the image.

@mjs513 Yes, I also tried and failed. When you resize the image from QVGA to QQVGA, did you do it in memory after receive the whole image? I guess I might not have enough memory.


Eliminate Eh107InternalCacheManager by resolving services from services

I prefer #2339 which eliminates it as well. But without giving some special status to the StatisticsService. Because you never know what other services can be useful.

There is no special status here though. The Jsr107Service already declares a dependency on the StatisticsService, this just makes sure we retrieve it via the correct channels.

@henri-tremblay could you re-review this?  It's been tweaked and expanded since you last looked at it.


linux: add syncfs(2)

This adds binding for syncfs on Linux, which is implemented by
all supported libraries.
Ref: https://man7.org/linux/man-pages/man2/syncfs.2.html

r? @JohnTitor
(rust-highfive has picked a reviewer for you, use r? to override)

@bors r+

:pushpin: Commit 20543f3f24246f0306502898124dea1c26d2c225 has been approved by JohnTitor

:hourglass: Testing commit 20543f3f24246f0306502898124dea1c26d2c225 with merge c8941246864e2484fa9c2a8e1a8f573ef4311c5d...

:sunny: Test successful - checks-actions, checks-cirrus-freebsd-11, checks-cirrus-freebsd-12, checks-cirrus-freebsd-13
Approved by: JohnTitor
Pushing c8941246864e2484fa9c2a8e1a8f573ef4311c5d to master...

@JohnTitor thanks for the prompt review! May I submit a release PR for this early next week?

@lucab Sure!


MudFileUpload not working in safari browser.

Bug type
Component
Component name
MudFileUpload
What happened?
MudFileUpload is not working in safari browser this problem is in v7.x.x however the v6.x.x is working with safari browser.
Expected behavior
MudFileUpload is not working in safari browser this problem is in v7.x.x however the v6.x.x is working with safari browser.
Reproduction link
http://try.mudblazor.com
Reproduction steps

...
Relevant log output
No response
Version (bug)
7.0.0-preview 4
Version (working)
6.x.x
What browsers are you seeing the problem on?
Safari
On which operating systems are you experiencing the issue?
macOS
Pull Request

[ ] I would like to do a Pull Request

Code of Conduct

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

@henon

@igotinfected

@sardar97 can you describe what exactly isn't working + your version of MacOS and Safari? Seems to be working for me:

Can you show your code?

@ScarletKuro it's in the video, but I can reproduce it just by running the current docs with the Docs.Server project and testing the first. I'm not quite sure what is causing it though. It works on all other browsers, and adding logs to the mudWindow.click function shows that it is executed as expected... The drag and drop examples work with clicks btw.

Sorry guys for being late to answer I was very busy.
@igotinfected I tried with MudBlazor Docs.Server as well it is not working only on safari.
See the Example video

Sorry guys for being late to answer I was very busy. @igotinfected I tried with MudBlazor Docs.Server as well it is not working only on safari.
See the Example video

No worries! Been looking for solutions ;) Thought we would need to revert the recent changes to MudFileUpload because of Safari behaviour but I may have found a more robust way that works on every browser while keeping the reworked MudFileUpload. Will be opening a PR tonight or tomorrow if everything goes well.
The short version of the issue is that Safari doesn't like when some events are triggered programmatically without direct user interaction. Since we are using JS interop to trigger the file picker, Safari won't acknowledge the action when it is executed via Blazor Server, I'm assuming because there is a back and forth between client & server which might not pass whichever checks Safari runs.

The short version of the issue is that Safari doesn't like when some events are triggered programmatically without direct user interaction.

Sounds like a popup protection or so

Sounds like a popup protection or so

More like Safari being a special snowflake as always 😒

it doesn't work in my project but the docs site does work

Sounds like cache issue.

@Welchen other than the cache, make sure you remove the HtmlTag and for properties/attributes. These are no longer necessary and could be causing your issue:
v6
<MudFileUpload T="IBrowserFile" FilesChanged="UploadFiles">
    <ButtonTemplate>
        <MudButton HtmlTag="label"
                   Variant="Variant.Filled"
                   Color="Color.Primary"
<EMAIL_ADDRESS><EMAIL_ADDRESS>            Upload Files
        </MudButton>
    </ButtonTemplate>
</MudFileUpload>

v7
<MudFileUpload T="IBrowserFile" FilesChanged="UploadFiles">
    <ActivatorContent>
        <MudButton Variant="Variant.Filled"
                   Color="Color.Primary"
<EMAIL_ADDRESS>            Upload Files
        </MudButton>
    </ActivatorContent>
</MudFileUpload>

All problems were solved via discord.

great, but it would be cool to have the solution here for the googlers

great, but it would be cool to have the solution here for the googlers

The opening issue in Safari was fixed via clearing cache, obj, and bin folders.
The problem in edge/chrome with reopening(firing twice) was solved by removing HtmlTag="label" from the button in the ActivatorContent since it wasn't clean to the person from the guide from where it should be removed.

The problem in edge/chrome with reopening(firing twice) was solved by removing HtmlTag="label" from the button in the ActivatorContent since it wasn't clear to the person from the guide from where it should be removed.

To elaborate, the documentation for MudFileUpload states to remove the HtmlTag if you have it.  I looked at the MudFileUpload and didn't see one, so didn't think there was anything to be removed.  That statement in the docs is in reference to the button or activator in the ActivatorContent. Didn't think to look down in there. Now that I know what I was supposed to be looking for, I understand it.

I,ve  still the same problem. Only after I was clearing the cache in Chrome it was working again.
For me it is a caching issue. But this solution is not Ok for my endusers.

For me it is a caching issue. But this solution is not Ok for my endusers.

This is not a library's fault. The cache is always a concern for the end developer. You can implement the same mechanism for cache-busting as we use in the docs: we append a version to the CSS/JS URL at the end. When new docs are deployed with a new version of Mud, we change the version. This way, the end user never receives a cached version.

We found that the proposed solutions do work until we tried it on an older version of Safari.
The version we found it to still have issues on was:
OS = v10
Safari = v15.6

We found that the proposed solutions do work until we tried it on an older version of Safari.
The version we found it to still have issues on was:
OS = v10
Safari = v15.6

IIRC with #9157 the file picker will only work correctly with Safari 16+ because of a Safari limitation.


Documentation on count thresholds in relation using part5_agg2_60seconds

When the following conditions are all met:

Count data is used
params_general[["part5_agg2_60seconds"]] == TRUE
Epoch size from part 1 is not 60 seconds

then it is important for the user to understand that aggregation in part 5 happens by taking the mean and not the sum. As a result, the thresholds as specified for the epochs in part 2 still apply as it is still counts per 5 seconds or counts per 30 seconds. There is no need to convert them to 60 seconds.
@jhmigueles can you confirm that this interpretation is correct?
If yes, then my proposal is that we add an extra sentence to the cut-points vignette to clarify this.

Also consider summing counts epochs in part 5. Either way, this needs better documentation.


build: google format plugin upgrade

Torwards #867 . The old plugin version does not work with Gradle 6.
4 files are needed to be updated in new version. ./gradlew googleJavaFormat made the change.

Execution failed for task ':verifyGoogleJavaFormat'.
> com/google/googlejavaformat/java/JavaFormatterOptions$Style : Unsupported major.minor version 52.0

This is related to #865.
It seems only until google-java-format:0.6 is supported on Java 7 and unfortunately this version is not supported on Java-11.

@rahulKQL Shall we disable google format plugin for non-Java8 builds? While we care about JDK compatibility of gax-java artifacts and its tests, we don’t care source code style validation difference between JDK versions. Checking the style on Java 1.8 build should be enough.

@suztomo That sounds a good workaround to me

Travis builds succeeded.
Build with Java 8 ran googleFormatPlugin
> Task :verifyGoogleJavaFormat
> Task :verifyLicense
> Task :benchmark:verifyGoogleJavaFormat
> Task :benchmark:verifyLicense
> Task :gax:verifyGoogleJavaFormat
> Task :gax:verifyLicense
> Task :gax-bom:verifyGoogleJavaFormat NO-SOURCE
> Task :gax-bom:verifyLicense
> Task :gax-grpc:verifyGoogleJavaFormat
> Task :gax-grpc:verifyLicense
> Task :gax-httpjson:verifyGoogleJavaFormat

Build with Java 7 skips verifyGoogleJavaFormat.
> Task :verifyGoogleJavaFormat SKIPPED
> Task :verifyLicense
> Task :benchmark:verifyGoogleJavaFormat SKIPPED
> Task :benchmark:verifyLicense
> Task :gax:verifyGoogleJavaFormat SKIPPED
> Task :gax:verifyLicense
> Task :gax-bom:verifyGoogleJavaFormat SKIPPED
> Task :gax-bom:verifyLicense
> Task :gax-grpc:verifyGoogleJavaFormat SKIPPED
> Task :gax-grpc:verifyLicense
> Task :gax-httpjson:verifyGoogleJavaFormat SKIPPED

@suztomo Thanks for keeping me in the loop but I think we might need sign off from @kolea2 or @chingor13  as this would affect future PRs.
Also regarding the Java 11 build failure can be fixed by updating Jacoco version to "8.2.0+"

@rahulKQL Jacoco upgrade was not trivial. Not including that in this PR for now.
https://source.cloud.google.com/results/invocations/e8c74bc9-fc2d-4047-82b8-3e2d5b9cdc64/targets/cloud-devrel%2Fclient-libraries%2Fjava%2Fgax-java%2Fpresubmit%2Fjava7/log
* What went wrong:
A problem occurred configuring root project 'gax-java'.
> Could not resolve all artifacts for configuration ':classpath'.
   > Could not resolve gradle.plugin.com.dorongold.plugins:task-tree:1.3.1.
     Required by:
         project :
      > Could not resolve gradle.plugin.com.dorongold.plugins:task-tree:1.3.1.
         > Could not get resource 'https://plugins.gradle.org/m2/gradle/plugin/com/dorongold/plugins/task-tree/1.3.1/task-tree-1.3.1.pom'.
            > Could not GET 'https://plugins.gradle.org/m2/gradle/plugin/com/dorongold/plugins/task-tree/1.3.1/task-tree-1.3.1.pom'.
               > sun.security.validator.ValidatorException: PKIX path validation failed: java.security.cert.CertPathValidatorException: signature check failed

@chingor13 @kolea2 Would you approve and merge this? (Now I'm in googleapis organization but I don't have write permission)
Linkage Monitor fails until https://github.com/googleapis/gax-java/pull/864 is merged (Would you merge that as well?)
Java 11 fails until the Jacoco version is upgraded (not in this PR).

@kolea2 @chingor13  Thank you.


Adjust build options for compatibility with Triton's build.py

Close #50

@GuanLuo could I get a quick re-review on this? Just had a minor correction for consistency with the rest of the build infrastructure.


Deployments don't work

As documented, we should be able to run npm version patch and get a new release made. We've had other issues around this in the past, but this issue is specifically about improving the deploy process and updating the documentation in the readme.
Questions:

Is make update_specs_repos still required? Does it work as expected? What about make ship_yoga?
It seems like we've got our foot half in the door of automated npm magic, and half in the door of a home-rolled process, maybe we should go all-in on doing things ourselves? When something fails, it's not clear where it failed and where to pick up from.

These are the steps I currently take to deploy Emission (not including any updates to React Native, Yoga, etc):

Follow the instructions in the readme up the npm version command.
npm version patch will fail when running this command in the postversion script: env EMISSION_ROOT=\"$(pwd)\" pod repo push artsy --allow-warnings --use-json --skip-import-validation.
To get around that failure, we need to push the podspec using a modified version of the release script. Comment out all the lines at the bottom except for publishPodspec("Emission.podspec") and run the script with node scripts/release.js.
In a local metaphysics folder adjacent to Emission, pull the latest from master and then run node scripts/merge-graphql-query-map.js. Then send a PR to Metaphysics with those changes.

What we could do is move the podspec publishing to a script so we can make temporary adjustments there and the release tasks in package.json can remain stable.

linking these two issues, https://github.com/artsy/emission/issues/971

Right! I meant to lint to that, thanks Orta.

for anyone reading along, this error is because we don't have yoga (lowercase y) in our specs repo (and at version 0.54.4 ) https://github.com/artsy/Specs/tree/master/Yoga

As  long as it gets pushed to the tag correctly, which it look like it does then it should be fine

I'd be fine with that 👍


TE-1.1 Static ARP

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 62.178%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
651

Relevant Lines:
1047

💛  - Coveralls

Request to assign reviewer.

@bstoll could you please provide your review to this PR?

/gcbrun

Fixes #536


[FormBuilderRangeSlider]: Slider always at min value if initialValue is not set

Is there an existing issue for this?

[X] I have searched the existing issues

Package/Plugin version
9.1.1
Platforms

[X] Android
[X] iOS
[ ] Linux
[ ] MacOS
[X] Web
[ ] Windows

Flutter doctor

Flutter doctor

Minimal code example
The code below is in the builder method so it is executed on each build. If initialValue is not set if will always set the value at min range. The field is unusable for the user.
          if (initialValue == null) {
            field.setValue(RangeValues(min, min));
          }

Current Behavior
see above
Expected Behavior
see above
Steps To Reproduce
see above
Aditional information
No response

Solved by https://github.com/flutter-form-builder-ecosystem/flutter_form_builder/pull/1331


Existing geocode function is unusable

Geocoder shoud be able to process multiple results of address->coordinates geocoding, filter candidates by address type, location type, order by some quality criteria.
Filtering and sorting should be customizable.
It will be freat if geocode provider will be also customizable, i.e. not Google Maps only, but OpenStreetMap, Yandex, etc, etc.

It currently only handles one operation at a time by design. Processing of aggregate results is highly dependent on end users' needs and isn't something I plan on implementing at this time.
Being compatible with other providers is something I need to look into. Do you know if the APIs are similar?

You can just add one or two functions for results processing, like existing onComplete.

I know about yandex maps geocoding API in detail, and about Esri (ArcGIS). They are all similar to each other.

Only difference in general is returned JSON structure - i.e. object and field names.

Just for example: to geocode street address, we can ask google/arcgis/yandex/openstreetmap, filter results by quality (remove results like city/region, not street with buiding number), order by quality, and if we still have more that 1 result, return 1st one - as you have implemented right now.
If you don't do filtering at all - list of candidates could be used to show suggestions. I.e. this is just another use case for the same code.


Add localisation

Use something like https://crowdin.com
We will implement a few top languages used by Hololive fans first.
Since we are using Svelte let's try to use something like https://github.com/kaisermann/svelte-i18n

I have good experiences with Crowding, seems like a nice option

@VTGare would you like to help out with UA localisation later?

@VTGare would you like to help out with UA localisation later?

Yes sure! I can translate it to Russian and Ukrainian


esCleaner.py fails to run with istio sidecar

Describe the bug
I have istio 1.5.4 installed and the sidecar is being deployed to all components of jaeger. Services such as ingester are able to handle issues (such as not connecting to ES,) at startup since the ingester container will restart and after the istio container completes the ingester will connect. This is not true for the esCleaner (possibly other jobs.)
Possible solutions I see:

Rescue a connection refused exception and retry some configurable amount of tries.
Change the restart policy on the job to be OnFailure (perhaps this has too much potential for destruction?)
Run a pre-check until the port is open and exit after some configurable amount of tries.

To Reproduce
Steps to reproduce the behavior:

Launch and configure istio
In the Jaeger CR, set spec.annotations.sidecar.istio.io/inject = "true" and setup jaeger to use elasticsearch
Wait for the cron job to fire and view the logs on the es index cleaner container.

Expected behavior
Container manages a temporary lack of connection to ES at startup
Version (please complete the following information):

OS: Linux
Jaeger version: 1.18
Deployment: Kubernetes 1.15 on GKE

What troubleshooting steps did you try?
Tried to see if there is a way to restart just the container with kubelet but did not succeed. Tried to kill the container before noticing the restart policy was set to never.
Additional context
Logs:
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/urllib3/connection.py", line 158, in _new_conn
    conn = connection.create_connection(
  File "/usr/local/lib/python3.8/site-packages/urllib3/util/connection.py", line 80, in create_connection
    raise err
  File "/usr/local/lib/python3.8/site-packages/urllib3/util/connection.py", line 70, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

@snuggie12 thanks for reporting the issue. We will need more information to understand the issue.
How is the Jaeger instance deployed?
If it is deployed via Jaeger Operator then paste here the content of Jaeger CR. If it's deployed via other systems provide the config for those or paste the manifest of Jaeger collector kubectl get deployment/jaeger-collector.

@pavolloffay A little confused why you would want the jaeger-collector yaml. If it's because I mentioned it in my example I was merely comparing restart policies between any Deployment vs the esCleaner Job. I've clarified a bit in my summary as my collector actually talks to kafka.
I'm using the operator with istio mTLS on for all components (see repro steps,) and my ES cluster also has mTLS on as well.
Jaeger CR (omitted parts not involved):
---
apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
  name: jaeger
  namespace: default
spec:
  agent:
    ...
  annotations:
    sidecar.istio.io/inject: "true"
  collector:
    ...
  ingester:
    options:
      kafka:
        consumer:
          brokers: jaeger-kafka-brokers.default:9092
          topic: jaeger-spans
  ingress:
    enabled: false
  storage:
    options:
      es:
        index-prefix: traces
        server-urls: http://jaeger-es-http.default.svc:9200
    secretName: jaeger-es-auth
    type: elasticsearch
  strategy: streaming

Now can you paste es-cleaner-job k8s spec?

apiVersion: batch/v1
kind: Job
metadata:
  creationTimestamp: '2020-06-04T23:55:07Z'
  labels:
    app: jaeger
    app.kubernetes.io/component: cronjob-es-index-cleaner
    app.kubernetes.io/instance: jaeger
    app.kubernetes.io/managed-by: jaeger-operator
    app.kubernetes.io/name: jaeger-es-index-cleaner
    app.kubernetes.io/part-of: jaeger
    controller-uid: 87e20d12-a8a5-4d50-a1c6-30d1d8bf015c
    job-name: jaeger-es-index-cleaner-1591314900
  name: jaeger-es-index-cleaner-1591314900
  namespace: default
  ownerReferences:
    - apiVersion: batch/v1beta1
      blockOwnerDeletion: true
      controller: true
      kind: CronJob
      name: jaeger-es-index-cleaner
      uid: c5838657-8a9e-408a-a111-a134993a82bf
  resourceVersion: '53155044'
  selfLink: /apis/batch/v1/namespaces/default/jobs/jaeger-es-index-cleaner-1591314900
  uid: 87e20d12-a8a5-4d50-a1c6-30d1d8bf015c
spec:
  backoffLimit: 6
  parallelism: 1
  selector:
    matchLabels:
      controller-uid: 87e20d12-a8a5-4d50-a1c6-30d1d8bf015c
  template:
    metadata:
      annotations:
        linkerd.io/inject: disabled
        prometheus.io/scrape: 'false'
        sidecar.istio.io/inject: 'true'
      creationTimestamp: null
      labels:
        app: jaeger
        app.kubernetes.io/component: cronjob-es-index-cleaner
        app.kubernetes.io/instance: jaeger
        app.kubernetes.io/managed-by: jaeger-operator
        app.kubernetes.io/name: jaeger-es-index-cleaner
        app.kubernetes.io/part-of: jaeger
        controller-uid: 87e20d12-a8a5-4d50-a1c6-30d1d8bf015c
        job-name: jaeger-es-index-cleaner-1591314900
    spec:
      containers:
        - args:
            - '7'
            - 'http://jaeger-es-http.default.svc:9200'
          env:
            - name: INDEX_PREFIX
              value: traces
          envFrom:
            - secretRef:
                name: jaeger-es-auth
          image: 'jaegertracing/jaeger-es-index-cleaner:1.18.0'
          imagePullPolicy: IfNotPresent
          name: jaeger-es-index-cleaner
          resources: {}
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
      dnsPolicy: ClusterFirst
      restartPolicy: Never
      schedulerName: default-scheduler
      securityContext: {}
      serviceAccount: jaeger
      serviceAccountName: jaeger
      terminationGracePeriodSeconds: 30

However that is the default plus the settings provided in the Jaeger resource.
I'm going to presume you actually want the pod spec as that has the istio sidecar? Here is one of them:
apiVersion: v1
kind: Pod
metadata:
  annotations:
    linkerd.io/inject: disabled
    prometheus.io/scrape: "false"
    sidecar.istio.io/inject: "true"
    sidecar.istio.io/status: '{"version":"fca84600f9d5ec316cf1cf577da902f38bac258ab0fd595ee208ec0203dc0c6d","initContainers":["istio-init"],"containers":["istio-proxy"],"volumes":["istio-envoy","podinfo","istio-token","istiod-ca-cert"],"imagePullSecrets":null}'
  creationTimestamp: "2020-06-06T23:55:05Z"
  generateName: jaeger-es-index-cleaner-1591487700-
  labels:
    app: jaeger
    app.kubernetes.io/component: cronjob-es-index-cleaner
    app.kubernetes.io/instance: jaeger
    app.kubernetes.io/managed-by: jaeger-operator
    app.kubernetes.io/name: jaeger-es-index-cleaner
    app.kubernetes.io/part-of: jaeger
    controller-uid: 7ec6c073-542a-4453-89e6-3c0157c54185
    job-name: jaeger-es-index-cleaner-1591487700
    security.istio.io/tlsMode: istio
    service.istio.io/canonical-name: jaeger-es-index-cleaner
    service.istio.io/canonical-revision: latest
  name: jaeger-es-index-cleaner-1591487700-xs9cw
  namespace: default
  ownerReferences:
  - apiVersion: batch/v1
    blockOwnerDeletion: true
    controller: true
    kind: Job
    name: jaeger-es-index-cleaner-1591487700
    uid: 7ec6c073-542a-4453-89e6-3c0157c54185
  resourceVersion: "56194353"
  selfLink: /api/v1/namespaces/default/pods/jaeger-es-index-cleaner-1591487700-xs9cw
  uid: 8981882b-1c68-4d5f-8c29-072efb434c37
spec:
  containers:
  - args:
    - "7"
    - http://jaeger-es-http.default.svc:9200
    env:
    - name: INDEX_PREFIX
      value: traces
    envFrom:
    - secretRef:
        name: jaeger-es-auth
    image: jaegertracing/jaeger-es-index-cleaner:1.18.0
    imagePullPolicy: IfNotPresent
    name: jaeger-es-index-cleaner
    resources: {}
    terminationMessagePath: /dev/termination-log
    terminationMessagePolicy: File
    volumeMounts:
    - mountPath: /var/run/secrets/kubernetes.io/serviceaccount
      name: jaeger-token-bxxz4
      readOnly: true
  - args:
    - proxy
    - sidecar
    - --domain
    - $(POD_NAMESPACE).svc.cluster.local
    - --configPath
    - /etc/istio/proxy
    - --binaryPath
    - /usr/local/bin/envoy
    - --serviceCluster
    - jaeger.$(POD_NAMESPACE)
    - --drainDuration
    - 45s
    - --parentShutdownDuration
    - 1m0s
    - --discoveryAddress
    - istiod.istio-system.svc:15012
    - --zipkinAddress
    - jaeger-collector.default:9411
    - --proxyLogLevel=warning
    - --proxyComponentLogLevel=misc:error
    - --connectTimeout
    - 10s
    - --proxyAdminPort
    - "15000"
    - --concurrency
    - "2"
    - --controlPlaneAuthPolicy
    - NONE
    - --dnsRefreshRate
    - 300s
    - --statusPort
    - "15020"
    - --trust-domain=cluster.local
    - --controlPlaneBootstrap=false
    env:
    - name: JWT_POLICY
      value: third-party-jwt
    - name: PILOT_CERT_PROVIDER
      value: istiod
    - name: CA_ADDR
      value: istio-pilot.istio-system.svc:15012
    - name: POD_NAME
      valueFrom:
        fieldRef:
          apiVersion: v1
          fieldPath: metadata.name
    - name: POD_NAMESPACE
      valueFrom:
        fieldRef:
          apiVersion: v1
          fieldPath: metadata.namespace
    - name: INSTANCE_IP
      valueFrom:
        fieldRef:
          apiVersion: v1
          fieldPath: status.podIP
    - name: SERVICE_ACCOUNT
      valueFrom:
        fieldRef:
          apiVersion: v1
          fieldPath: spec.serviceAccountName
    - name: HOST_IP
      valueFrom:
        fieldRef:
          apiVersion: v1
          fieldPath: status.hostIP
    - name: ISTIO_META_POD_PORTS
      value: |-
        [
        ]
    - name: ISTIO_META_APP_CONTAINERS
      value: |-
        [
            jaeger-es-index-cleaner
        ]
    - name: ISTIO_META_CLUSTER_ID
      value: Kubernetes
    - name: ISTIO_META_POD_NAME
      valueFrom:
        fieldRef:
          apiVersion: v1
          fieldPath: metadata.name
    - name: ISTIO_META_CONFIG_NAMESPACE
      valueFrom:
        fieldRef:
          apiVersion: v1
          fieldPath: metadata.namespace
    - name: ISTIO_META_INTERCEPTION_MODE
      value: REDIRECT
    - name: ISTIO_METAJSON_ANNOTATIONS
      value: |
        {"linkerd.io/inject":"disabled","prometheus.io/scrape":"false","sidecar.istio.io/inject":"true"}
    - name: ISTIO_META_WORKLOAD_NAME
      value: jaeger-es-index-cleaner-1591487700
    - name: ISTIO_META_OWNER
      value: kubernetes://apis/batch/v1/namespaces/default/jobs/jaeger-es-index-cleaner-1591487700
    - name: ISTIO_META_MESH_ID
      value: cluster.local
    - name: ISTIO_KUBE_APP_PROBERS
      value: '{}'
    image: docker.io/istio/proxyv2:1.5.4
    imagePullPolicy: IfNotPresent
    name: istio-proxy
    ports:
    - containerPort: 15090
      name: http-envoy-prom
      protocol: TCP
    readinessProbe:
      failureThreshold: 30
      httpGet:
        path: /healthz/ready
        port: 15020
        scheme: HTTP
      initialDelaySeconds: 1
      periodSeconds: 2
      successThreshold: 1
      timeoutSeconds: 1
    resources:
      limits:
        cpu: "2"
        memory: 1Gi
      requests:
        cpu: 100m
        memory: 128Mi
    securityContext:
      allowPrivilegeEscalation: false
      capabilities:
        drop:
        - ALL
      privileged: false
      readOnlyRootFilesystem: true
      runAsGroup: 1337
      runAsNonRoot: true
      runAsUser: 1337
    terminationMessagePath: /dev/termination-log
    terminationMessagePolicy: File
    volumeMounts:
    - mountPath: /var/run/secrets/istio
      name: istiod-ca-cert
    - mountPath: /etc/istio/proxy
      name: istio-envoy
    - mountPath: /var/run/secrets/tokens
      name: istio-token
    - mountPath: /etc/istio/pod
      name: podinfo
    - mountPath: /var/run/secrets/kubernetes.io/serviceaccount
      name: jaeger-token-bxxz4
      readOnly: true
  dnsPolicy: ClusterFirst
  enableServiceLinks: true
  initContainers:
  - command:
    - istio-iptables
    - -p
    - "15001"
    - -z
    - "15006"
    - -u
    - "1337"
    - -m
    - REDIRECT
    - -i
    - '*'
    - -x
    - ""
    - -b
    - '*'
    - -d
    - 15090,15020
    image: docker.io/istio/proxyv2:1.5.4
    imagePullPolicy: IfNotPresent
    name: istio-init
    resources:
      limits:
        cpu: 100m
        memory: 50Mi
      requests:
        cpu: 10m
        memory: 10Mi
    securityContext:
      allowPrivilegeEscalation: false
      capabilities:
        add:
        - NET_ADMIN
        - NET_RAW
        drop:
        - ALL
      privileged: false
      readOnlyRootFilesystem: false
      runAsGroup: 0
      runAsNonRoot: false
      runAsUser: 0
    terminationMessagePath: /dev/termination-log
    terminationMessagePolicy: File
    volumeMounts:
    - mountPath: /var/run/secrets/kubernetes.io/serviceaccount
      name: jaeger-token-bxxz4
      readOnly: true
  nodeName: default-c9c9a635-rd9r
  priority: 0
  restartPolicy: Never
  schedulerName: default-scheduler
  securityContext:
    fsGroup: 1337
  serviceAccount: jaeger
  serviceAccountName: jaeger
  terminationGracePeriodSeconds: 30
  tolerations:
  - effect: NoExecute
    key: node.kubernetes.io/not-ready
    operator: Exists
    tolerationSeconds: 300
  - effect: NoExecute
    key: node.kubernetes.io/unreachable
    operator: Exists
    tolerationSeconds: 300
  volumes:
  - name: jaeger-token-bxxz4
    secret:
      defaultMode: 420
      secretName: jaeger-token-bxxz4
  - emptyDir:
      medium: Memory
    name: istio-envoy
  - downwardAPI:
      defaultMode: 420
      items:
      - fieldRef:
          apiVersion: v1
          fieldPath: metadata.labels
        path: labels
      - fieldRef:
          apiVersion: v1
          fieldPath: metadata.annotations
        path: annotations
    name: podinfo
  - name: istio-token
    projected:
      defaultMode: 420
      sources:
      - serviceAccountToken:
          audience: istio-ca
          expirationSeconds: 43200
          path: istio-token
  - configMap:
      defaultMode: 420
      name: istio-ca-root-cert
    name: istiod-ca-cert
status:
  conditions:
  - lastProbeTime: null
    lastTransitionTime: "2020-06-06T23:55:08Z"
    status: "True"
    type: Initialized
  - lastProbeTime: null
    lastTransitionTime: "2020-06-06T23:55:05Z"
    message: 'containers with unready status: [jaeger-es-index-cleaner]'
    reason: ContainersNotReady
    status: "False"
    type: Ready
  - lastProbeTime: null
    lastTransitionTime: "2020-06-06T23:55:05Z"
    message: 'containers with unready status: [jaeger-es-index-cleaner]'
    reason: ContainersNotReady
    status: "False"
    type: ContainersReady
  - lastProbeTime: null
    lastTransitionTime: "2020-06-06T23:55:05Z"
    status: "True"
    type: PodScheduled
  containerStatuses:
  - containerID: docker://54adc665396ac00979bc0731053c250d7d89da270a17fc60fbbe02da055f2808
    image: istio/proxyv2:1.5.4
    imageID: docker-pullable://istio/proxyv2@sha256:e16e2801b7fd93154e8fcb5f4e2fb1240d73349d425b8be90691d48e8b9bb944
    lastState: {}
    name: istio-proxy
    ready: true
    restartCount: 0
    state:
      running:
        startedAt: "2020-06-06T23:55:09Z"
  - containerID: docker://1be0f651c0f332ad49f6e42f9a28b45189d34dcb6b3f5b4cff0d7c574130b913
    image: jaegertracing/jaeger-es-index-cleaner:1.18.0
    imageID: docker-pullable://jaegertracing/jaeger-es-index-cleaner@sha256:3069c7bde5785b2966fb4a248c58b59eb5ab8630b3997e069250d96966f74889
    lastState: {}
    name: jaeger-es-index-cleaner
    ready: false
    restartCount: 0
    state:
      terminated:
        containerID: docker://1be0f651c0f332ad49f6e42f9a28b45189d34dcb6b3f5b4cff0d7c574130b913
        exitCode: 1
        finishedAt: "2020-06-06T23:55:11Z"
        reason: Error
        startedAt: "2020-06-06T23:55:08Z"
  hostIP: <IP_ADDRESS>
  initContainerStatuses:
  - containerID: docker://6efbdeb233ff381ea6d1b56a4c8193707c6fc8578735f2967c80d7554012f5ce
    image: istio/proxyv2:1.5.4
    imageID: docker-pullable://istio/proxyv2@sha256:e16e2801b7fd93154e8fcb5f4e2fb1240d73349d425b8be90691d48e8b9bb944
    lastState: {}
    name: istio-init
    ready: true
    restartCount: 0
    state:
      terminated:
        containerID: docker://6efbdeb233ff381ea6d1b56a4c8193707c6fc8578735f2967c80d7554012f5ce
        exitCode: 0
        finishedAt: "2020-06-06T23:55:07Z"
        reason: Completed
        startedAt: "2020-06-06T23:55:06Z"
  phase: Running
  podIP: <IP_ADDRESS>
  qosClass: Burstable
  startTime: "2020-06-06T23:55:05Z"

I see that you are using secret jaeger-es-auth with probably user name and password to connect to the ES cluster. The secret seems to be used well in the cleaner job.

I'm using the operator with istio mTLS on for all components (see repro steps,) and my ES cluster also has mTLS on as well.

Regarding the mTLS and ES cluster - is it enabled by Istio. In this case, it should be transparent to the app, is that right? I don't see that you configured certs in the Jaeger CR.
Maybe the proxy container istio-proxy is causing the connection problem between index cleaner and ES. Could you try to disable the sidecar proxy from the ES cleaner? Or you could try to port-forward  ES URL to localhost and run the index cleaner on your host.

Ack, I got the root cause now.
Would restart policy OnFailure solve the issue?
Otherwise, I agree that retries are the right way to go.

I can test it, but yes, in theory that should fix it. However, I don't feel authoritative on whether that's a good idea or not. Is the cleaner idempotent? If it's potentially dangerous to the cluster to run more than once if, for instance, it only gets halfway through then I'd opt for the pre-check or exception handling option.

In theory the index cleaner should be idempotent. I cannot think of anything that would cause problems when it's run multiple times.
Eventually, the future k8s versions will have direct support for sidecar containers https://medium.com/@chan_seeker/sidecar-containers-improvement-in-kubernetes-1-18-b5eb66ee2b83. The sidecar container will start before the application and finish after.

Ahh, I had forgotten about what happens if nothing goes wrong. The job remains there anyways because istio never shuts down. I think for now I'll need to disable istio on this pod no matter. Is there a way to add annotations to the various Jobs?

The job remains there anyways because istio never shuts down. I think for now I'll need to disable istio on this pod no matter. Is there a way to add annotations to the various Jobs?

This seems like a related issue to your problem: https://github.com/jaegertracing/jaeger-operator/issues/1082. Try setting the ttlSecondsAfterFinished.
It should be possible to add annotations. They are part of the common spec which is embedded into multiple CR nodes https://godoc.org/github.com/jaegertracing/jaeger-operator/pkg/apis/jaegertracing/v1#JaegerCommonSpec


netboot/mk-s390image: Fix size when argument is a symlink

du -b by default returns the size of a symlink when it is passed a
symlink. Adding the -L option allows passing symlinks to mk-s390image
without resulting in unbootable image.

Note: see https://gitlab.alpinelinux.org/alpine/aports/-/issues/16310 and https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/70132#note_426060 for further context.

Thanks for your contribution.
It makes sense to not use the size of a symbolic link.
A nit: Please start with a capital letter in your commit message:

netboot/mk-s390image: Fix size when argument is a symlink

LGTM

While you are at it:
Could you also add the -L to line 138
- parmfile_size=$(du -b $parmfile | cut -f1)
+ parmfile_size=$(du -b -L $parmfile | cut -f1)

Thanks!

I applied all suggestions now

Thank you.
I will pick the patch.
Note we do not use GH to apply pull requests.

Fixed with https://github.ibm.com/linuxonz/s390-tools/commit/31c0de7f4817f782d1c4170cb87d57359a4b6ee6
The commit mentioned the wrong PR number.
Closing.

Tagged the commit wrong.
fe2d240 closed this issue.


WIREFRAME: Homescreen

Parent Epic: GUI_V2 #31
REPEATABLE
Multiple people can work on this story. Once a wireframe is completed, post it for discussion in the wireframes channel on the club discord.
Business Requirements
See the parent story for general details on the replacement GUI. We need a general home-screen from which the user will be able to access the three current primary functionalities:

Manual Drone Control
Save brainwave donation data
Brainwave Piloting: Control the drone through predictions on a brainwave stream

Considerations: At the moment there is not a system for authentication or specific users. If an authentication system is added, we would want some form of banner or navigation to a user profile section.
Technical Requirements
Using Figma create a wireframe with your design idea for the home screen. The options for the design are open ended, and the wireframing will also serve as brainstorming and opportunity for UI/UX discussion.
Acceptance Criteria

A wireframe is created in Figma.
The wireframe includes, either through direct ability on the homescreen or links to navigate to alternative screens, the three primary functionalities
For Midterm/Bounty submit a PR with a file to a directory named Wireframes

That new GUI Tab was implemented and added to the code repo.


[Neo4j] The Everyman library is not compatible with PHP 7

The dependency we use for the neo4j driver uses Null as a classname which causes tests to fail on PHP7. I know that those are allowed to fail, but not that 7 is out, I think we should strive for passing.
There is an active PR to resolve this on the dependencies repo, but it doesn't seem to be getting traction. We could pull from that PR's fork or even fork our own with those changes (its only about 4 lines) and make sure we keep up to date with the master repo until the change has been made.
Let me know what you think.

Ideally this should be fixed on the main repo. Less work for us.
Including the link to the PR for easy tracking.
https://github.com/jadell/neo4jphp/pull/174

This has been resolved in the upstream repo.


Fix sorting for null values

Columns with some null values are not sorted correctly.

thanks, @Kurtas, I'll check this out :)

Released on v2.3.2. Thanks @Kurtas


Updated Kustomize to 2.0.0 and Kubectl to 1.13.3

I should really automate this.

2.0.0 tag is live on Docker hub!

Thank you very much!


dotnetCorePackages.dotnet_9.vmr: 9.0.0-preview.1 -> 9.0.0-preview.2

Description of changes
This is everything needed for both the binary and source builds of 9.0.0-preview.2.
There were quite a lot of new issues from upstream changes.
FYI @NixOS/dotnet

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[x] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Given the amount of patches we're having to do and how version-dependent they are, I'm starting to think that we'd be better off maintaining a fork of the VMR

I'm just in the process of testing on darwin.  It's more broken there than I had hoped, so I've marked it as draft for now.

Okay, I think I got everything working on darwin.  I just had to cherry pick #290684 for it to build in a sandbox.

Result of nixpkgs-review pr 301546 run on x86_64-linux 1

15 packages built:

dotnetCorePackages.aspnetcore_9_0
dotnetCorePackages.dotnet_8.aspnetcore
dotnetCorePackages.dotnet_8.runtime
dotnetCorePackages.dotnet_8.sdk
dotnetCorePackages.dotnet_8.sdk.artifacts
dotnetCorePackages.dotnet_8.sdk.packages
dotnetCorePackages.dotnet_8.vmr
dotnetCorePackages.dotnet_9.aspnetcore
dotnetCorePackages.dotnet_9.runtime
dotnetCorePackages.dotnet_9.sdk
dotnetCorePackages.dotnet_9.sdk.artifacts
dotnetCorePackages.dotnet_9.sdk.packages
dotnetCorePackages.dotnet_9.vmr
dotnetCorePackages.runtime_9_0
dotnetCorePackages.sdk_9_0

Given the amount of patches we're having to do and how version-dependent they are, I'm starting to think that we'd be better off maintaining a fork of the VMR

A lot of these are issues that are tracked upstream, or nixisms.  I'm not sure I'm ready to maintain a fork.
Hopefully things will get more stable after the preview releases are done.

Given the amount of patches we're having to do and how version-dependent they are, I'm starting to think that we'd be better off maintaining a fork of the VMR

A lot of these are issues that are tracked upstream, or nixisms.  I'm not sure I'm ready to maintain a fork.
Hopefully things will get more stable after the preview releases are done.

I mean, what I had in mind was just forking the VMR, applying these changes onto the release branch and then periodically rebasing it with new releases, but maybe I've underestimated the effort

I mean, what I had in mind was just forking the VMR, applying these changes onto the release branch and then periodically rebasing it with new releases, but maybe I've underestimated the effort

IMO most of these things work better as scripted replacements than they would as patches.  e.g. using xmlstarlet to inject imports/properties.  A lot of them work across 8 and 9 whereas two patch sets would need to be maintained.

IMO most of these things work better as scripted replacements than they would as patches.  e.g. using xmlstarlet to inject imports/properties.  A lot of them work across 8 and 9 whereas two patch sets would need to be maintained.

Fair enough, did not think of that.
Also, another question, what does .NET 9 use node.js for? I saw it got added as a dep and got curious

Also, another question, what does .NET 9 use node.js for? I saw it got added as a dep and got curious

Oh, funny story...  So in 8.0 they have some files in the repo like:
https://github.com/dotnet/dotnet/blob/v8.0.3/src/aspnetcore/src/Components/Web.JS/dist/Release/blazor.web.js
Which is some sort of minified, compiled artefact, built by node/npm.  I think it always could be built, even in 8.0, if you had node available, but it would fall-back to the compiled one.  In 9.0.0-preview.2 they removed the compiled files.
In order for it to build self-contained, they added the whole binary cache of npm dependencies, into the repo (https://github.com/dotnet/source-build/issues/4161), which they install from during build.  This is not really open source, but it works for now.  Long term, we might have to pull in the node dependencies from nixpkgs and/or node2nix.

Oh, funny story...  So in 8.0 they have some files in the repo like:
https://github.com/dotnet/dotnet/blob/v8.0.3/src/aspnetcore/src/Components/Web.JS/dist/Release/blazor.web.js
Which is some sort of minified, compiled artefact, built by node/npm.  I think it always could be built, even in 8.0, if you had node available, but it would fall-back to the compiled one.  In 9.0.0-preview.2 they removed the compiled files.
In order for it to build self-contained, they added the whole binary cache of npm dependencies, into the repo (https://github.com/dotnet/source-build/issues/4161), which they install from during build.  This is not really open source, but it works for now.  Long term, we might have to pull in the node dependencies from nixpkgs and/or node2nix.

Oh, I see. Guess it makes sense.
Yeah, we can look into node2nix and nixpkgs based ones later on

Result of nixpkgs-review pr 301546 run on x86_64-linux 1

15 packages built:

dotnetCorePackages.aspnetcore_9_0
dotnetCorePackages.dotnet_8.aspnetcore
dotnetCorePackages.dotnet_8.runtime
dotnetCorePackages.dotnet_8.sdk
dotnetCorePackages.dotnet_8.sdk.artifacts
dotnetCorePackages.dotnet_8.sdk.packages
dotnetCorePackages.dotnet_8.vmr
dotnetCorePackages.dotnet_9.aspnetcore
dotnetCorePackages.dotnet_9.runtime
dotnetCorePackages.dotnet_9.sdk
dotnetCorePackages.dotnet_9.sdk.artifacts
dotnetCorePackages.dotnet_9.sdk.packages
dotnetCorePackages.dotnet_9.vmr
dotnetCorePackages.runtime_9_0
dotnetCorePackages.sdk_9_0 (dotnetCorePackages.sdk_9_0_1xx)


Fixes #2419 - Add rich text editor support to feature block

A few opening short tags were removed too.

This looks good but as of 5.7.4 the best (and easiest way) to do this is to simply use the RedactorEditor class. I've just added some documentation about it:
http://www.concrete5.org/documentation/developers/5.7/interface-customization/rich-text-editor/embedding-rich-text-editor/
You can probably remove 90% of your code and just include the outputStandardEditor() method from Core::make('editor') instead. This'll then check to see if you have access to the file manager, it'll output all the assets, it'll include active plugins, etc...

The new markup and inclusion of all available plugins is excellent.
I noticed that "custom styles" is not included in non-content blocks. Is there a way to make that available?

Thanks! I have manually merged this into the <IP_ADDRESS> release branch that I have going, so this can be closed.
You are right about custom styles – it seems like we ought to have a separate method for using redactor in the edit interface (in blocks, in composer) and separately in other custom interfaces. I think outputStandardEditor() should be good for that (and should not have any special styles or concrete5-specific stuff), and in its place I've added outputBlockEditModeEditor – which is currently the same thing as outputPageComposerEditor(). So now the feature block will have the custom styles in it.


Add contextualize method

Description

Related Issues

Checklist

[ ] Is this code covered by new or existing unit tests or integration tests?
[ ] Did you run make test successfully?
[ ] Do new classes, functions, methods and parameters all have docstrings?
[ ] Were existing docstrings updated, if necessary?
[ ] Was external documentation updated, if necessary?

Additional Notes or Comments

Codecov Report
Patch coverage: 75.00% and project coverage change: -0.03% :warning:

Comparison is base (00c9d9a) 79.82% compared to head (77bb4e6) 79.79%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #683      +/-   ##
==========================================
- Coverage   79.82%   79.79%   -0.03%
==========================================
  Files          78       79       +1
  Lines        4937     4935       -2
==========================================
- Hits         3941     3938       -3
- Misses        996      997       +1

Files Changed
Coverage Δ

superduperdb/misc/text.py
75.00% <75.00%> (ø)

... and 6 files with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


How to open modal from component.?

Check out the example here: https://github.com/InfomediaLtd/angular2-materialize/blob/master/app/components/dialogs.ts


⚠ Fox Sports has degraded performance

In adc2ba3, Fox Sports (https://foxsports.com) experienced degraded performance:

HTTP code: 200
Response time: 1693 ms

Resolved: Fox Sports performance has improved in 08c6e3d.


Who can give me a acme.json sample ?

I don't know how to write  acme.json.
Who can give me a acme.json sample ?

There is no need to write it, this file should be generated automatically by traefik, cf. https://docs.traefik.io/toml/#acme-lets-encrypt-configuration.
You just need to set up the appropriate configuration, either manually listing your domains under acme.domains, or using onHostRule so that they're grabbed directly from your frontend rules.

I have lost my acme.json backup and reached Let's Encrypt weekly limit. I still have my private key and certificate pem. Can someone post an acme.json sample so that I can fill in the blanks? Thanks!

{
  "Account": {
    "Email"<EMAIL_ADDRESS>    "Registration": {
      "body": {
        "status": "valid",
        "contact": [
<EMAIL_ADDRESS>        ]
      },
      "uri": "https://acme-v02.api.letsencrypt.org/acme/acct/XXXX"
    },
    "PrivateKey": "xxxx",
    "KeyType": "2048"
  },
  "Certificates": [
    {
      "Domain": {
        "Main": "domain.com",
        "SANs": ["san.domain.com"]
      },
      "Certificate": "xxx",
      "Key": "xxx"
    }
  ],
  "HTTPChallenges": null,
  "TLSChallenges": {}
}

Thank you @Idez ! Would you know the format of the "Certificate" field? It's not regular PEM since line breaks don't seem to be allowed.


cookie remap plugin

Cherry picked from the master with fixes for compiling in 7.1.x

The clang format test is one that isn't going to get better if you redo it. Note that the clang-format changed between 7 and 9, so it may be necessary to get the 7 version. I'm not sure what the CI runs.

make clan-format will run the appropriate version automatically

Why is this a 9.0 milestone when it's a backport to 7.x?

I think if we are going to land this into 7, it needs to use an external YAML CPP, and look for it using normal detection like pkgconfig and a —with-yaml-cpp=... option. I can maybe install such a library on the latest Fedora VM for the CI, it’s be a good tea that we can build with a “conflicting” installation of the YAML packages.

@zwoop That is what I have done. I detect an external yaml-cpp using --with-yaml-cpp:
./configure --enable-experimental-plugins --with-yaml-cpp=/home/ppradhan/yaml-cpp-master

I think Pushkar has dealt with the various issues with the backport, this should be a clean commit that won't break things for anyone not using the plugin.


Docs not correct for JSON in CheerioCrawler and other docs issues

The docs say that you need to add json to the additionalMimeTypes, but that's not true. I'd fix it, but we need to check it in HTTP crawler as well plus build and update the v3 of docs to release it, so I'm making an issue instead.
https://github.com/apify/crawlee/blob/e7b8c629bcaeb4570f41fcbbc27b870d83249f65/packages/http-crawler/src/internals/http-crawler.ts#L355

It seems that some functions are reported as methods and some as properties?

It seems that some functions are reported as methods and some as properties?

This will be resolved by #1550, it depends on the signature, e.g. foo(): any vs foo: () => any.


Ubuntu 16.04 changed sentinel config filename

so it now is supposed to be called /etc/redis/sentinel.conf
I couldn't find a nice way (without large restructuring) to fix this in params.pp.. I've moved to data-in-modules which makes it a lot easier to handle such exceptions.

and you're managing /etc/init.d/redis-sentinel - but since 16.04 is systemd - it uses the systemd file from the package - which points at /etc/redis/sentinel.conf
So perhaps a better fix - would be to just manage the systemd file? I'll gladly do a PR for that ?

A PR to manage the systemd file would be greatly appreciated! 😄

can I use epp templates, or ?

ERB for now, I want to get the last few features fixed before we move onto Puppet 4, like parameters only being included on certain versions and multiple instances of redis on one server.

I have it ready now.. will send PR tonight so you can give feedback (have to go from work now :)

No problem, looking forward to it! 👍

https://github.com/arioch/puppet-redis/pull/176 - I choose to install systemd override when system is running systemd.. did not make sense to do it any other way IMHO :)

Ok, looking at all the debian flavours out there (Deb 8, Ubuntu 14.04 - PPA and external, and 16.04 upstream) it looks like this should always be /etc/redis/sentinel.conf.
So I've opened a PR to fix it for all Debian flavour machines: https://github.com/arioch/puppet-redis/pull/184


When I try ti install libratbag I get an error

Information

ratbagd version (ratbagd --version):
Distribution: POP_OS
Kernel version (ex. uname -srmo): Linux 5.8.0-7642-generic x86_64

Device info (if applicable):
Laptop MSI GF63 10scsr
$ ratbagctl  info
OUTPUT HERE

**Describe the bug**
When  try ti install libratbag I get an error on the "meson builddir" step

**To Reproduce**
Steps to reproduce the behavior:
1. git clone https://github.com/libratbag/libratbag.git
2. cd libratbag
3. meson builddir
4. See error

**Logs**
**Build started at 2021-03-07T16:47:20.755805
Main binary: /usr/bin/python3
Build Options:
Python system: Linux
The Meson build system
Version: 0.53.2
Source dir: /home/max/Downloads/libratbag
Build dir: /home/max/Downloads/libratbag/builddir
Build type: native build
Project name: libratbag
Project version: 0.15
No CFLAGS in the environment, not changing global flags.
No LDFLAGS in the environment, not changing global flags.
No CPPFLAGS in the environment, not changing global flags.
Sanity testing C compiler: cc
Is cross compiler: False.
Sanity check compiler command line: cc /home/max/Downloads/libratbag/builddir/meson-private/sanitycheckc.c -o /home/max/Downloads/libratbag/builddir/meson-private/sanitycheckc.exe -pipe -D_FILE_OFFSET_BITS=64
Sanity check compile stdout:

-----
Sanity check compile stderr:

-----
Running test binary command: /home/max/Downloads/libratbag/builddir/meson-private/sanitycheckc.exe
C compiler for the build machine: cc (gcc 9.3.0 "cc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0")
C linker for the build machine: cc ld.bfd 2.34
No CFLAGS in the environment, not changing global flags.
No LDFLAGS in the environment, not changing global flags.
No CPPFLAGS in the environment, not changing global flags.
Sanity testing C compiler: cc
Is cross compiler: False.
Sanity check compiler command line: cc /home/max/Downloads/libratbag/builddir/meson-private/sanitycheckc.c -o /home/max/Downloads/libratbag/builddir/meson-private/sanitycheckc.exe -pipe -D_FILE_OFFSET_BITS=64
Sanity check compile stdout:

-----
Sanity check compile stderr:

-----
Running test binary command: /home/max/Downloads/libratbag/builddir/meson-private/sanitycheckc.exe
C compiler for the host machine: cc (gcc 9.3.0 "cc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0")
C linker for the host machine: cc ld.bfd 2.34
Build machine cpu family: x86_64
Build machine cpu: x86_64
Host machine cpu family: x86_64
Host machine cpu: x86_64
Target machine cpu family: x86_64
Target machine cpu: x86_64
Pkg-config binary for MachineChoice.HOST is not cached.
Pkg-config binary missing from cross or native file, or env var undefined.
Trying a default pkg-config fallback at pkg-config
Trying pkg-config binary pkg-config for machine MachineChoice.HOST at ['/usr/bin/pkg-config']
Found pkg-config: /usr/bin/pkg-config (0.29.1)
Determining dependency 'libudev' with pkg-config executable '/usr/bin/pkg-config'
PKG_CONFIG_PATH:
Called `/usr/bin/pkg-config --modversion libudev` -> 1

CMake binary for MachineChoice.HOST is not cached
CMake binary missing from cross or native file, or env var undefined.
Trying a default CMake fallback at cmake
Trying CMake binary cmake for machine MachineChoice.HOST at [None]
Did not find CMake 'cmake'
Found CMake: NO
No CMake binary for machine MachineChoice.HOST not found. Giving up.
Run-time dependency libudev found: NO (tried pkgconfig)

meson.build:72:0: ERROR: Dependency "libudev" not found, tried pkgconfig

First make sure it isn't running already.

$ ratbagd --verbose=raw**
OUTPUT HERE
Version: 0.53.2
Source dir: /home/max/libratbag
Build dir: /home/max/libratbag/builddir
Build type: native build
Project name: libratbag
Project version: 0.15
C compiler for the host machine: cc (gcc 9.3.0 "cc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0")
C linker for the host machine: cc ld.bfd 2.34
Host machine cpu family: x86_64
Host machine cpu: x86_64
Found pkg-config: /usr/bin/pkg-config (0.29.1)
Did not find CMake 'cmake'
Found CMake: NO
Run-time dependency libudev found: NO (tried pkgconfig)

meson.build:72:0: ERROR: Dependency "libudev" not found, tried pkgconfig

A full log can be found at /home/max/libratbag/builddir/meson-logs/meson-log.txt*

**Additional context**
Add any other context about the problem here.

Getting same error.

You need to install libudev-dev (or whatever package provides libudev.pc on Ubuntu).


Can ALB be shared across multiple cluster?

We have the need to deploy a service across more than one k8s cluster. Is it possible share the underlying ALB across the clusters?
Many thanks.

currently we don't support it. But ideally it should be possible.
But it need some federated control plane to coordinate information between clusters. (like rule orders)

iiuc, If the controller allows explicitly specifying ALB ARN directly, we can deploy the controller across multiple k8s clusters. Each k8s service resource will be a separated target group added the this ALB.

Just wanted to chime in and second this request, we have a major need for it on the horizon.

/remove-lifecycle rotten


Fix typos in docs and website folder

What kind of change does this PR introduce?
This PR introduce the typo fix in files of docs and website

Did you add tests for your changes?
No
Summary

Does this PR introduce a breaking change?
No

Other information
platfrom > platform

These files are generated and we should fix it in the source.

@OrKoN  How can I do so?

@thapasusheel could you update packages/browsers/src/browser-data/types.ts (line 31) and run npm run docs

@thapasusheel could you update packages/browsers/src/browser-data/types.ts (line 31) and run npm run docs?

I have updated that file and run npm run docs. Do I need to commit docs file too?

Yes, and also revert the changes to the website folder.

Yes, and also revert the changes to the website folder.

Please review it.


[feature] allow up and down arrow keys to select perticular subdirectory for traversal

Hi @JoaoDanielRufino ,
currently autocomplete doesn't give flexibility of listing sub-directories of given directory. This may pose little inconvenience to user if she doesn't already know the name of sub-directory. So , proposal is along with tab key, we should support up/down arrow keys, which will display the sub-directories name one by one. This will help user in selecting particular sub-directory more easily.
What you say?
Regards.

Hi @WheeskyJack, this is a really good idea, it will help a lot.
Thanks.


Feature request: Mini player

GPM in Chrome uses a Chrome app as a mini player of sorts; it's not particularly good, but it does the job for people like me who love using mini players! I would love to see this app with an even better mini player implementation than the official Google one.

What exactly do you want this mini player to do that the Chrome one does not?
Mirroring the functioanlity of the chrome mini player seems a reasonably simple task but I am un sure as to how you want to improve on it?

The Chrome mini player is more-or-less functionally complete, but some of the design choices I'm not that fond of personally. I love the iTunes album art mini player (at least, the way it works on Windows 8 - it's buggy on 10), in that it only shows album art and displays the track information and media controls only on mouse over. It would also be nice to be able to see the queued tracks from the mini player. It would also be nice to have the mini player and the full site in the same window (again, similar to the iTunes player); the way the Chrome mini player is implemented, it runs as a separate app, so the web player still has to be open in a Chrome tab.

Mini player is functional
Bug testing over the next couple of days to make sure there are no side effects :smiley_cat:

Introduced in version 1.5.0
You should recieve an update notification in your current install :smile:

Awesome stuff, I look forward to checking it out! :smile:

I know this may sound like a dumb question but how do I access this mini player on windows 10?

@nintyuk There is a button in the bottom right of the player controls

@MarshallOfSound For some reason It didn't show up on first launch. Probably because I has to log in or something.

@nintyuk Interesting, sounds like a bug all by itself.  I'll look into it


[WIP] Change kubeconfigs to point to the host IP

Signed-off-by: Ricardo Noriega<EMAIL_ADDRESS>

I'm now thinking about the case where the device is restarted and the IP address changes due to a dhcp renewal. MicroShift will keep the host IP in the kubeconfigs and it'll crash.
Would that work with microshift.cluster.local using mDNS? @mangelajo

what about using a name in the kubeconfigs? That way if the DHCP address changes the name should get patched as well. I think it would net us more possibilities for customers in the event that the facility in which microshift was running has some sort of VPN back to a home base a users could then load the kubeconfig into Argo and app of apps if they wanted

I'm now thinking about the case where the device is restarted and the IP address changes due to a dhcp renewal. MicroShift will keep the host IP in the kubeconfigs and it'll crash.
Would that work with microshift.cluster.local using mDNS? @mangelajo

yes, mDNS would handle this, via microshift.local or hostname.local etc .. :)

included in https://github.com/redhat-et/microshift/pull/471


Mwpw 160409 announcement preview tests

Test cases for Announcement Preview block can be found on this page: Announcements Preview Test Cases
Before: https://stage--dme-partners--adobecom.hlx.live/channelpartners/?georouting=off
After: https://mwpw-160409-announcement-preview-tests--dme-partners--adobecom.hlx.live/channelpartners/?georouting=off

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 82.64%. Comparing base (05344b6) to head (a17ccd9).

Additional details and impacted files
@@           Coverage Diff           @@
##            stage     #117   +/-   ##
=======================================
  Coverage   82.64%   82.64%
=======================================
  Files          10       10
  Lines        3249     3249
=======================================
  Hits         2685     2685
  Misses        564      564

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


[BiliIntl] Add login + misc improvements

Please follow the guide below

You will be asked some questions, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your pull request (like that [x])
Use Preview tab to see how your pull request will actually look like

Before submitting a pull request make sure you have:

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

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

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

What is the purpose of your pull request?

[x] Bug fix
[ ] Improvement
[ ] New extractor
[x] New feature

Description of your pull request and other information
Explanation of your pull request in arbitrary form goes here. Please make sure the description explains the purpose and effect of your pull request and is worded well enough to be understood. Provide as much context and examples as possible.

Add login
Properly catch error codes
Fix videos with "broken" subtitles

[debug] Command-line config: ['-vU', '-S', 'res:1080', '-P', '\Downloads', '--add-header', 'User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64;
x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36', '--external-downloader', 'aria2c', '--cookies', 'bilibili.t
v_cookies_1080.txt', '--sub-langs', 'all', '--write-subs', '--embed-subs', '--compat-options', 'no-keep-subs', '--merge-output-format', 'mkv
', 'https://www.bilibili.tv/en/play/1005144/10131790?bstar_from=bstar-web.pgc-video-detail.episode.0', '-o', 'Naruto - %(title)s - E%(episod
e_number)02d - (%(height)sp)']
[debug] Encodings: locale cp1252, fs utf-8, out utf-8 (No ANSI), err utf-8 (No ANSI), pref cp1252
[debug] yt-dlp version 2021.12.27 [6223f67] (win_exe)
[debug] Compatibility options: no-keep-subs
[debug] Python version 3.8.10 (CPython 64bit) - Windows-7-6.1.7601-SP1
[debug] exe versions: ffmpeg 2021-04-18-git-d43b26b30d-essentials_build-www.gyan.dev (setts), ffprobe 2021-04-18-git-d43b26b30d-essentials_b
uild-www.gyan.dev
[debug] Optional libraries: Cryptodome, mutagen, sqlite, websockets
[debug] Proxy map: {}
Latest version: 2021.12.27, Current version: 2021.12.27
yt-dlp is up to date (2021.12.27)
[debug] [BiliIntl] Extracting URL: https://www.bilibili.tv/en/play/1005144/10131790?bstar_from=bstar-web.pgc-video-detail.episode.0
[BiliIntl] 10131790: Downloading webpage
[BiliIntl] 10131790: Downloading JSON metadata
[BiliIntl] 10131790: Downloading video formats
[debug] Sort order given by user: res:1080
[debug] Formats sorted by: hasvid, ie_pref, res:1080(1080.0), lang, quality, fps, hdr:12(7), vcodec:vp9.2(10), acodec, filesize, fs_approx,
tbr, vbr, abr, asr, proto, vext, aext, hasaud, source, id
[BiliIntl] 10131790: Downloading JSON metadata
[BiliIntl] 10131790: Downloading subtitles for English
[BiliIntl] 10131790: Downloading subtitles for ภาษาไทย
ERROR: 10131790: An extractor error has occurred. (caused by KeyError('content')); please report this issue on  https://github.com/yt-dlp/yt
-dlp . Make sure you are using the latest version; type  yt-dlp -U  to update. Be sure to call yt-dlp with the --verbose flag and include it
s complete output.
Traceback (most recent call last):
File "yt_dlp\extractor\common.py", line 599, in extract
File "yt_dlp\extractor\bilibili.py", line 854, in _real_extract
File "yt_dlp\extractor\bilibili.py", line 809, in _extract_ep_info
File "yt_dlp\extractor\bilibili.py", line 751, in _get_subtitles
File "yt_dlp\extractor\bilibili.py", line 732, in json2srt
File "yt_dlp\extractor\bilibili.py", line 733, in
KeyError: 'content'
Traceback (most recent call last):
File "yt_dlp\extractor\common.py", line 599, in extract
File "yt_dlp\extractor\bilibili.py", line 854, in _real_extract
File "yt_dlp\extractor\bilibili.py", line 809, in _extract_ep_info
File "yt_dlp\extractor\bilibili.py", line 751, in _get_subtitles
File "yt_dlp\extractor\bilibili.py", line 732, in json2srt
File "yt_dlp\extractor\bilibili.py", line 733, in
KeyError: 'content'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "yt_dlp\YoutubeDL.py", line 1353, in wrapper
File "yt_dlp\YoutubeDL.py", line 1423, in __extract_info
File "yt_dlp\extractor\common.py", line 629, in extract
yt_dlp.utils.ExtractorError: 10131790: An extractor error has occurred. (caused by KeyError('content')); please report this issue on  https:
//github.com/yt-dlp/yt-dlp . Make sure you are using the latest version; type  yt-dlp -U  to update. Be sure to call yt-dlp with the --verbo
se flag and include its complete output.

[debug] yt-dlp version 2021.12.27 [6223f67] (win_exe)

@TZ17-droid You are not running from this PR

[debug] yt-dlp version 2021.12.27 [6223f67] (win_exe)

@TZ17-droid You are not running from this PR

Oh my mistake, sorry...


Settings file not found when updating

If there is no appsettings.json then the application throws an error. Currently I get around it with the below:
    private static void AddEnrollmentSettingsFile(HostBuilderContext hostContext, IServiceCollection services)
    {
        // Per https://github.com/nogic1008/WritableOptions.Net
        var enrollmentSettingsPath = Path.Combine(AppConfigPath, EnrollmentSettingsFileName);
        services.ConfigureWritable<EnrollmentSettings>(
            hostContext.Configuration.GetSection(nameof(EnrollmentSettings)),
            enrollmentSettingsPath);

        if (File.Exists(enrollmentSettingsPath) == false)
            File.AppendAllText(enrollmentSettingsPath, "{" + Environment.NewLine + "}");
    }

Anything that would do this for me, without the above workaround?
Also is adding the settings file that will be modified via host builder ConfigureAppConfiguration((hostContext, config) => config.AddJsonFile(settingsPath)) needed?
Thanks for the great library, working great!

@csmorley
Thank you for using my library and reporting issue.
It can be solved by creating a new JSON file at some point, but which timing is better?

On IServiceCollection.ConfigureWritable<T>() called
On JsonWritableOptions.Updete() called


Add WebSphere integration tests

Seems like we can use https://hub.docker.com/r/ibmcom/websphere-traditional

I found out that the deployment directory is /work/app (see https://github.com/WASdev/ci.docker.websphere-traditional#building-an-application-image).
But I was unable to actually deploy and access an application. It seems to be a bit complicated. See also https://github.com/WASdev/ci.docker.websphere-traditional#adding-an-application-and-advanced-configuration-during-build-phase
Another challenge is that it uses https with self-signed certificates. That will make executing the endpoints a bit trickier.


Fix for issue https://github.com/highlightjs/highlight.js/issues/3256

Fixing regular expressions TAG_NAME_RE and XML_IDENT_RE to include non-ASCII letters the XML spec allows as Unicode range \uDDDD-\uDDDD, as far as JavaScript allows that with four digit hex codes

This is my attempt to fix issue 3256 https://github.com/highlightjs/highlight.js/issues/3256, instead of using only ASCII letters I fixed the regular expressions to include non-ASCII letters from the XML spec, expressing them as Unicode range \uDDDD-\uDDDD
Changes

Included non-ASCII letters the XML spec allows as Unicode ranges in regular expressions TAG_NAME_RE and XML_IDENT_RE
Checklist

[X] Added markup test non-ascii-element-name.txt
[X] Updated the changelog at CHANGES.md

@joshgoebel , do I need to request a review from a certain person or team or will someone pick up this pull request automatically and do the required review?

I'm worried this might fall into the same category as: https://github.com/highlightjs/highlight.js/issues/2756
I wonder if some of the newer \p{} UTF-8 features aren't the more correct way to handle this, but there are observed performance issues (see issue).  There are also performance implications of making these rules more complex.  I realize this may be "technically" correct, but it's hard to justify if it makes things slower for 99% of people not using UTF-8 in tagnames.
Before even considering something like this I'd want to consider alternative approaches... what about splitting the rule:
<A-Z (same rules we use now, relevance 1)
<[no spaces *][space] (relevance 0, but highlights ALL contiguous characters without resorting to complex UTF-8 regex)

Auto-detect will continue to work for ASCII HTML (which is most common) but highlighting would also still work on unicode.
Thoughts?

What is an example where the XML_IDENT_RE change matters?  I only see TAG_NAME tests in your test changes.

The rule change for XML_IDENT_RE ensures attribute names using non-ASCII letters are marked up correctly, currently
var result = hljs.highlight('<producto categoría="mueble">mesa</producto>', {language: 'xml'}).value;

gives
<producto categoría="mueble">mesa</producto>

XML_IDENT_RE ensures attribute names

Ah yes, I'd imagine this could be handled the same way as I suggest for tag names...

[a-z]= simple rule for relevance (with ASCII attributes)
[not whitespace]= for 100% highlighting coverage, but no relevance

Probably should be using the new multi-scope stuff for attributes anyways.  Until we have performance regressions tests for this sort of thing I'm much more comfortable finding ways to avoid all these UTF-8 variants in cases where that's simple to do, as it seems to be here.

Example:
      {
        scope: 'tag',
        beginScope: {
          2: 'name'
        },
        variants: [
          {
            begin: [
              /<\//,
              TAG_NAME_RE, // handle ASCII tag names
              />/
            ],
          },
          {
            relevance: 0,
            begin: [
              /<\//,
              /\S+/, // handle non-ASCII tag names
              />/
            ],
          }
        ]
      }

Though I'm not 100% sure we need this dual-mode for closing tags.  That's the idea though, and an example of multi-scope.

@martin-honnen Would you want to make another pass at this going the route I suggested - or should we close this and leave the issue open until I or someone else can take a look?

I haven't been able to think your suggestion through and test it as it tackles the problem from a quite different point of view, might be a pragmatic way. So if you don't want to take the pull request for performance problems the longish but precise regular expressions might cause, close it, I think. And see whether you or someone else can fix the issue using another route.

This may want to wait until after we see how #3280 goes... perhaps once we have some benchmarks we can benchmark this before/after and see if the performance is comparable or not... if my fears of performance changes are unfounded then this could be fine as-is...
Indeed using regex (as in this PR) is a more "proper" approach - so if we can have our cake and eat it too we certainly will want to... :-)

Ok, since #3280 was merged my first question here is can we use the new UTF-8 regex stuff instead of these super long regex forms?

I think my initial attempt was along the lines of e.g. var xmlName = /^\p{L}[\p{L}0-9\-.]*(:[\p{L}0-9\-.]+)?$/u which should do more justice to non-ASCII letters than the existing regular expression while perhaps not being completely in sync with that the XML spec considers a name letter.
I have asked some other JavaScript/XML based implementers what they use and whether the \p{L} based approach would suffice, none was willing, as least as I recall, to judge the compliance issue, the current practice seems to be something like https://github.com/bwrrp/slimdom.js/blob/main/src/util/namespaceHelpers.ts#L132 which uses a long regex.
But I think for the syntax highlighter, if we can allow Unicode letters instead of ASCII letters, the detrimental effect current XML vocabularies with non-ASCII letters see, will be gone and the number of users that throw that exotic characters at the highlighter that the XML names and the Unicode letter categories distinguish them are probably very low.
Thus, I think avoiding the long regex but relying on Unicode categories and Javascript RegEx Unicode support, is a good compromise.

I'll try to push #3280 to home plate soon... then we can switch this PR to UTF-8 regex and rebase it.  The comments about the "official" specs can remain and we'll explain in comment that for simplicity we're using a much simpler regex that should work out the same in practice.
If this fails to be the case in the future we can re-review.

The test should be expanded though to include both tag names and attribute names.
An actual real example would be better (can we just copy a UTF-8 Spanish word or something from another source?) than a random character inserted

I am not sure what you consider a real example or where you see a random character, categoría is the correct and official spelling of a real Spanish word: https://dle.rae.es/categoría?m=form.

Oh, my apologies then.  I guess I thought GitHub would do a better job of displaying it properly and was making assumptions based on it's ugly appearance in the review screen.

#3280 has been merged so I think this could move forward now.

Closing for inactivity. Happy to pursue this again in the future if you ever want to reopen and have time to work on.


Add 'css.lint.unknownAtRules' setting to ignore unknown @-rules

This PR adds the following configuration to the settings.json file:
"css.lint.unknownAtRules": "ignore",
By setting css.lint.unknownAtRules to "ignore," we are instructing the CSS linter to ignore any unknown @-rules.

🤔 Strange, on my side, I'm getting warnings about it 😅.

Perhaps the configuration of my VSCode is the cause. If on your side, there are no errors or warnings, I will close this PR then.


[AWS] Stat file before downloading it when doing binary cache lookup.

Currently when downloading file while doing binary caching lookup fails with an error because there is a cache miss, msbuild interprets this as an error and fails the build step. Also, this adds a fatal error message in the log that is usually not ok because cache miss is a normal and expected situation.
This PR adds a stat operation before actual file download on cache lookup to eliminate fatal error and prettify log a little.
Signed-off-by: Vitalii Koshura<EMAIL_ADDRESS>

@BillyONeal, please review

Looks good to me


Redesign Single Layout

redesign layout to be more consistent

Unfortunately, I wasn't sure what to really change about this - closing it for now. If i think of anything else, i will add it.

Now that I've figured out what I want to fix (grid only for posts) I think i can get it from here.

Redesign is complete!


JsonSchemaFlatten + DataContract - Output missing fields

  [JsonSchemaFlatten]
    [JsonSchema(Name ="Class")]
    public class SomeClass : Item<string>
    {
        public string Email { get; set; }
    }

[DataContract]
public abstract class Item<TKey>
    {
        [DataMember]
        public virtual TKey Id { get; set; }
    }

The above scenario only outputs the properties from the base class Item<T>, and I don't see Email in the output as expected...  Only if I remove the DataContract / DataMember on the base class do I see all the fields in the output.
I normally wouldnt mix / match different serialization attributes - but I am trying things out and I would expect the outer most class's attributes to take precedence when flattening

I think you just need to add DataContract and DataMember to the SomeClass class and property

I am sure that will work, I am just pointing out that its possible as a user you may have no control of the 'base' class of an object.  obviously if i can control both classes, I would not mix attributes  :-)

as a user you may have no control of the 'base' class of an object

But will the serialization/deserialization work as expected in this case?

Why not?  newtonsoft json serilalizer works with data contract and has a precedence defined:
https://www.newtonsoft.com/json/help/html/SerializationAttributes.htm
As well as using the built-in Json.NET attributes, Json.NET also looks for the SerializableAttribute (if IgnoreSerializableAttribute on DefaultContractResolver is set to false) DataContractAttribute, DataMemberAttribute, and NonSerializedAttribute and attributes when determining how JSON is to be serialized and deserialized.
Json.NET attributes take precedence over standard .NET serialization attributes (e.g. if both JsonPropertyAttribute and DataMemberAttribute are present on a property and both customize the name, the name from JsonPropertyAttribute will be used).
I would expect this behavior at the very least :-)

@RicoSuter   - Does the newtonsoft doc/spec provide enough guidance on how to handle different sets of serialization attributes?