Update eye disc compartments and cell types - Ariss et al. (2018)

Ariss et al. (2018) (FBrf0240781) performed scRNAseq analysis of third-instal larval eye discs.
No newly discovered cell type to add, but potentially some refinements to our current description of the eye disc, such as:

subdividing the peripodial epithelium of eye disc into ventral and dorsal peripodial epithelia;
possible redundancy between eye disc anterior to the morphogenetic furrow and eye disc anterior compartment (and similarly for posterior equivalent terms);
adding specific subclasses for otherwise pre-existing cell types referring to those cells in the eye disc (e.g., a subclass of embryonic/larval PNS perineurial glial cell for perineurial cells of the eye disc);
adding gene expression information.

We have two couples of terms referring to anterior and posterior compartments of the eye disc:

eye disc anterior compartment and eye disc anterior to the morphogenetic furrow;
eye disc posterior compartment and eye disc posterior to the morphogenetic furrow.

In the same vein, we also a couple anterior-posterior compartment boundary of the eye disc and morphogenetic furrow.
I believe the terms in those couples are redundant since, in all studies involving the eye disc that I know of, the morphogenetic furrow is the reference from which the anterior and posterior compartments are defined.
anterior-posterior compartment boundary of the eye disc has never been used in curation; eye disc anterior compartment and eye disc posterior compartment have been used in 20 records, and in the corresponding papers there is nothing suggesting the authors are defining the anterior and posterior compartments relatively to anything else than the morphogenetic furrow.
I therefore propose to merge:

eye disc anterior compartment with eye disc anterior to the morphogenetic furrow;
eye disc posterior compartment with eye disc posterior to the morphogenetic furrow;
anterior-posterior compartment boundary of the eye disc with morphogenetic furrow.

In all cases, the "surviving" term would be the one that has been the most used (or used at all) in curation; the "losing" term would as usual subsist as a synonym.

Is the morphogenetic furrow really the same thing as the boundary between the anterior and posterior compartments ? I thought that the morphogenetic furrow 'sweeps' across the eye as a wave of differentiation, so its a boundary between differentiated vs undifferentiated cells that doesn't stay in the same place with respect to anterior vs posterior part of the disc over time. I think the GO definition of GO:0007458 (progression of morphogenetic furrow involved in compound eye morphogenesis) does suggest that:
The morphogenetic furrow is a dorsoventral indentation which sweeps anteriorly across the eye disc. Ommatidia begin to form along the furrow, resulting in a graded series of ommatidial development across the anterior/posterior axis of the disc. [ http://www.ncbi.nlm.nih.gov/pubmed/3076112 http://www.ncbi.nlm.nih.gov/pubmed/3937883 ]
I thought the setting up the anterior and posterior compartments was something different that is set up earlier and didn't really move over time within a tissue/segment but maybe I'm wrong and its different for discs vs embryos ?

I thought that the morphogenetic furrow 'sweeps' across the eye as a wave of differentiation

Yes it does.

I thought the setting up the anterior and posterior compartments was something different that is set up earlier and didn't really move over time.

That's the case for the A/P compartments in the wing and leg discs, but not in the eye disc. A/P compartments in the eye disc are defined more by the properties and behaviours of cells on each side of the morphogenetic furrow (undifferentiated, proliferating cells anteriorly vs differentiating, non-proliferating cells posteriorly):

By contrast, the anterior and posterior domains of the eye are not restricted by cell lineage and the boundary between them is dynamic. [...] Two characteristics distinguish anterior from posterior in the eye disc: growth occurs in the anterior, with the exception of the second mitotic wave, and differentiation occurs in the posterior (Lee and Treisman, 2001 – FBrf0135725).

ooh, thanks for the link to the reference (learnt something new today !)

Those terms are not redundant; please don't do this.

I didn't account for the multiple issues in this ticket; I was specifically intending the A/P compartment & anterior/posterior to MF merge. I'm on board with the peripodial cell & perineurial glial cell issues.

I was specifically intending the A/P compartment & anterior/posterior to MF merge.

No worries, that how I understood your comment.

Closing as what has been agreed on has been done.


Alias (name) to each helper context

{{#each readings}}
<some-component reading="{.}"/>
{{/each}}

Some times one I want to wrap it with  and I have to change {.} to {../.}
{{#each readings}}
<another-component/>
   <some-component reading="{../.}"/>
</another-component/>
{{/each}}

If one could have name for each heper context and refere to it by given name, it would be more convinient without need of backtrack paths.
{{#each readings "reading"}}
<another-component/>
  <and-another-component/>
    <some-component reading="{reading}"/>
  </and-another-component/>
</another-component/>
{{/each}}

emberjs does it using sintax something like like: {{#each readings as "reading"}}

+1, useful!

I'm fine with this.  You would have to make the #each helper change the scope which it sets up here:
https://github.com/bitovi/canjs/blob/minor/view/stache/mustache_helpers.js#L34
Instead of .add(item), it would be more like:
var context = {};
context[asValue] = item;
.add(context);

To make "as" work, I think we do pass the expression data, so you could see that the argument name was "as".

@pYr0x or @whitecolor let me know if you want to tackle it.  Thanks!

@dylanrtt was looking for this too.

Closing as: https://github.com/canjs/can-stache/issues/16


Library Crate

Convert the current binary crate into a library and re-implement the user-facing functionality into an example.

Forgot to make a branch and just pushed it lol.


Make sure the notebook-controller image can be plugged into upstream Kubeflow

This is more of a continuous task, to confirm that the changes we make here are working with upstream kubeflow.
We can then see how kubeflow components (like the profile-controller) work with our changes.

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close.
/lifecycle stale

Rotten issues close after 30d of inactivity.
Reopen the issue with /reopen.
Mark the issue as fresh with /remove-lifecycle rotten.
/close

@sesheta: Closing this issue.

In response to this:

Rotten issues close after 30d of inactivity.
Reopen the issue with /reopen.
Mark the issue as fresh with /remove-lifecycle rotten.
/close

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


Clarify dkregistry's License

At current it appears the only available license information for this crate is in the cargo toml. This should be made more prominent (eg. a license file and headers in source files).

Thanks for the report. Licensing is indeed as specified in the Cargo manifest, i.e. MIT or APL-2.0 at your option.
But it would indeed be better to make this more prominent. #164 is open to tackle that. No need for headers in each source file, a machine-readable COPYRIGHT file is fine enough.

Thanks @lucab

(keeping this open until #164 lands)


stinger - INDI

Description
magic for variable rate stingers.  scrapped PID for INDI lateral tuning.  this works on other cars with forever ping pong too.
Testing
1200km of highway and in town driving with near perfect results.  a little lazy compared to my own driving style but, definitely usable.

Hi
thanks very much


Adding option to choose initial mode

#3

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

Comparison is base (87e5a31) 100.00% compared to head (33d0418) 100.00%.

Additional details and impacted files
@@            Coverage Diff            @@
##            master        #8   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            6         6
  Lines          210       227   +17
=========================================
+ Hits           210       227   +17

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


Tiny Temple Crash

https://discord.com/channels/463917049782075395/559837167430664203/1045058304071704647

Thanksgiving report

Crash upon loading a texture? Might be resolved with some base hack build routine changes


Update installation guide

sudo is no longer recommend, according to the script
Raspbian is now called Raspberry Pi OS
Added note about how long installation takes

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

Thank you for this! I really appreciate it!


feat: Added support for Message description

While working at https://github.com/springwolf/springwolf-core/pull/189 we found out that the provided Message description was, in fact, the one associated to the Operation. As a result we decided to fully remove the description until we could fix it.
This PR adds support for Message description.
Any Message object, annotated with @Schema will use the annotation description value, as the Message description.
The https://www.springwolf.dev/docs/configuration/documenting-schemas documentation is already stating this scenario, so I don't think we need further documentation updates.

Looks good, thanks for fixing this!


Login Screen. Naming issue

Login to your Symbol account

should be

Login to your Symbol profile

Fixed.

@bassemmagdy on spring-fixes branch I got still "account" instead of "profile":

@bassemmagdy thanks, fixed.

Fixed in integration branch.


a little question

A great application. I have learned a lot from your tutorial, but I got some questions.

First is that I don't know what is the folder named OpenCV models used for?
Second is how to learn OpenCV efficiently for me as a beginner?

thx : )

Hi @Wonderful99668, glad you liked my project :smile:
The answer to your questions:

The OpenCV models folder isn't used anywhere in the development of Finger Detection and Tracking. The folder contains the python script that I wrote while I was learning OpenCV.

The best place to start learning OpenCV is this.


Can remove all Listening Ports on Load Balancer's details page

v0.26.0-rc1
Steps:

Create a Load Balancer
Click on Load Balancer name to get to details page
Click on Config tab
Click on Edit Configuration button
Remove all Listening Ports and click Save

Results:
Allows you to remove all ports and save
Expected:
Should not save and should stay on overlay with message at top that says you have to have at least 1 port.

No stand-alone balancer/config page and the config tab no longer exist.


Adds quoting to entrypoint shell script

Fixes #8.
Signed-off-by: Felipe Zipitria<EMAIL_ADDRESS>

Thanks for your contribution! :+1:
Note that we will port all functionality not strictly related to the CRS, e.g. this entrypoint script, to the CRS-support/modsecurity-docker repository soon (as agreed with the CRS community in Bern, lately). This is meant to make the owasp/modsecurity image usable to the full extent also without the CRS.


Update master.go's UpdateAllContainers to every 5 seconds instead of 30.

Make pod status update every 5 seconds instead of every 30 to mask the issue #3952.  I suspect (but haven't confirmed) that #3927 doesn't completely address the issue since it will still happily cache a Pending status for up to 30 seconds even though the pod may have transitioned to Running already.

@brendandburns shortish term workaround, but has little downside that I see.

LGTM


Removed unrelated link documentation, added new

Removed the Bootstrap dropdown documentation link as it does not apply to this article. Added appropriate documentation for Bootstrap panels.

[x] I have read freeCodeCamp's contribution guidelines.
[ x] My pull request has a descriptive title (not a vague title like Update index.md)
[ x] My pull request targets the master branch of freeCodeCamp.
[ x] None of my changes are plagiarized from another source without proper attribution.
[ x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Thank you for opening this pull request.
This is a standard message notifying you that we’ve reviewed your pull request and have decided not to merge it. We would welcome future pull requests from you.
Thank you and happy coding.


[ICON REQUEST]

Icons of a cursor (windows, apple, linux)
My website im making would definitely look better with a cursor icon, since its named with the word "Click" and a cursor would make a good icon to show off its use.

the hand cursor or the arrow point cursor?

maybe just a cursor, yk how the windows is in "idle" where its the triangle with a stick look


feat(looker): index looker charts and dashboards by business term

Metadata Model Changes

Adds a new aspect InputFields for charts and dashboards. This tracks the inputs a chart uses so that relevant charts will be surfaced in search. It also stores column-level lineage information.
Adds a property label to the SchemaField model. This is an optional string for giving a more readable name to fields. It is currently not being displayed in the UI.

Ingestion Changes

Adds logic in looker to produce InputFields aspects for charts & dashboards, and to add the label property to views & explores.

Product Changes

Adds logic to show search snippets for charts and dashboards that are discovered by their input fields.

Checklist

[ ] The PR conforms to DataHub's Contributing Guideline (particularly Commit Message Format)
[ ] Links to related issues (if applicable)
[ ] Tests for the changes have been added/updated (if applicable)
[ ] Docs related to the changes have been added/updated (if applicable). If a new feature has been added a Usage Guide has been added for the same.
[ ] For any breaking change/potential downtime/deprecation/big changes an entry has been made in Updating DataHub

Putting this PR on hold until we address serialization of optional elements.


BandBao- implementation of findByGenre and implementation findByNameAndGenre

FindByGenre(BandGenre): this method should implements a search of bands by Genre. (Returns a list of bands with genre BandGenre.
FindByNameAndGenre(BandName, BandGenre ): this method should implements a search by Name and Genre

Please text me when you're stuck in something,i hope can help you! ;)

Something to consider! Do not forget to follow the BDD (behavior driven development) methodology! First have to implements the tests, an then the correct method.

The new working branch to Band team is  lb/band-team

@camicalca @agustinmartinez01
Please indicate the hash of the commit that resolves this functionality!

8d21472..b82eb7f  lb/band-team -> lb/band-team
test finished


Split up lxd/containers.go

lxd/containers.go is a big unreadable mess. We should split it into one file per command (exec, file, state changes, config, ...).

I read contribution guide and would like to contribute to this project. How can I choose this issue to work?

Just comment here that you're working on it and others will leave it alone.

Are you sure the right issue is fixed by the commit above?

Nope :)

messed up my bug numbers apparently, thanks for noticing.

Could you please take a look at my attempt to resolve this issue.
Thanks.


PDFViewerApplication.ScrollMode method to switch on call

Configuration:

Operating system and its version: Windows10
PDF.js version: latest

Hi, i'm trying to extract some pdfjs commands. There is a way to call a method to switch scrollMode with PDFViewerApplication ?
I'm trying to call it via :
PDFViewerApplication.pdfViewer.scrollMode = scrollMode.HORIZONTAL;
But it doesn't work.

In viewer.js line 3420, we can see that ScrollMode var as 4 option :

var ScrollMode = {   UNKNOWN: -1,   VERTICAL: 0,   HORIZONTAL: 1,   WRAPPED: 2 };
How can i set the ScrollMode view ? Please advise
For example: to rotate Left your PDF, you can call PDFViewerApplication.rotatePages(-90);
Similar to : #9178

You should use the PDFViewerApplication.pdfViewer.scrollMode setter. This is internally also used in https://github.com/mozilla/pdf.js/blob/fef86cc3e327f0554136482fee901b52909fa37a/web/app.js#L1990, which is the handler for pressing the button in the interface. You can find the underlying setter at https://github.com/mozilla/pdf.js/blob/master/web/base_viewer.js#L1072. If that doesn't work, then you'll need to provide a running example, otherwise we can't help out.

Thank you! I just need to return PDFViewerApplication.pdfViewer.scrollMode = {-1,0,1,2} to get the desired mod.


docker/test/run.sh: Make repo world readable for access from docker.

@enisoc
Previously, the permissions of all items within the repository were already updated, but not the repository itself.
This resulted into the error 'cp: cannot stat `/tmp/src/*': Permission denied' when running "docker/test/run.sh mariadb".

LGTM


added my name sandeep

@sandygit2201, I'm quite elated about your PR. I wanna evolve this project to addresses various problems faced by first time contributors. I'd love to learn about your journey in open source community, the problems, pain points you had etc.
Could you explain how you felt when you went through the tutorial, made a PR and learned that I accepted it?


Ports for api and authentication services can't be changed

Hi,
I'm trying to change the port for authentication module with no luck, the port remains on '9100' .
After the change I did also st2ctl restart.
I tried to edit this section, with new port 9109
[auth]
port = 9109
host = <IP_ADDRESS>
use_ssl = True

Stackstrom process still listens on 9100 port
tcp        0      0 <IP_ADDRESS>:9100          <IP_ADDRESS>:*               LISTEN
tcp        0      0 <IP_ADDRESS>:9101          <IP_ADDRESS>:*               LISTEN
tcp        0      0 <IP_ADDRESS>:9102          <IP_ADDRESS>:*               LISTEN

I checked also the api and it's the same issue.

To change listening ports on production installation (where installed using packages and services are managed by service manager and not running in a standalone mode), you need to change ports in the service manager files.
For example, for Ubuntu, that is in the upstart file - https://github.com/StackStorm/st2-packages/blob/master/packages/st2/debian/st2.st2api.upstart
Note to us: We should either document this or also utilize st2.conf when services are managed by a service manager.

I'm not sure what you meant by saying
"services are managed by service manager and not running in a standalone mode".
What is exactly standalone mode?

I still cant get how to change the port.
OS is Ubuntu 14.04

@hagay3 For Ubuntu14, edit the upstart init file located at: /etc/init/st2auth.conf.
You'll find the port definition there.
When you're done with modifying, don't forget to reload upstart configuration: sudo initctl reload-configuration and restart your service.
Hope that answers your question.

https://stackstorm.slack.com/archives/community/p1492346619722875

Thanks @armab it did the magic.
I still think the one conf file should utilize the port as it does in many other products (mysql, cassandra etc..)

I was having this issue with CentOS 7 and fixed it this way:

Edit /usr/lib/systemd/system/st2api.socket
Change ListenStream=<IP_ADDRESS>:9101 to ListenStream=<IP_ADDRESS>:9101

Reload systemd
systemctl daemon-reload

Reload st2api
st2ctl restart-component st2api

Check to see if it's re-bound

LISTEN     0      128          *:9101                     *:*

Cross-linking related issue: https://github.com/StackStorm/st2/issues/2676

Yeah, this is a problem indeed. I wasn't lucky with setting up ST2 on the Swarm. Or rather.. I actually was but the complexity was too much.
So I decided to simply register ST2's services on Consul so that I can have dynamic DNS to use on nginx upstream section. So that if ST2 suddenly spawns on another server due to failure in the previous one, nginx would still route nicely.
But it only binds to <IP_ADDRESS> making this impossible.

This is still an issue.
@armab what would be the way to change those ports on an installation with Ubuntu 18.04?

@luislobo You can find stackstorm systemd files via sudo ls -la /usr/lib/systemd/system/ | grep st2 and modify them manually with the port numbers  there.

It's possible to use systemd generators to create the .socket file contents dynamically from st2.conf.
An update to st2ctl service restarts would be required to perform a systemctl daemon-reload.  This is needed to execute the generators to read any potential changes made to st2.conf.
This solution would mean st2.conf becomes authoritative for st2api, st2auth and st2stream for the bind and port configuration.  This would make configuration more intuitive for users. I expect it would resolve this issue as well as #686 and #2676, since all supported OS' are now based on systemd.

@nzlosh That would be really nice indeed!

Thank you @nzlosh for your PRs!


Slider number indicator keep visible

Hello,
Is there any way by which the number indicator can be kept visible always. Also, can we change the indicator shape using drawable? if yes, how to do that?

@suhitak1, if you have figure out the indicator visible thing, please let me know, how I can do that.
Thanks in advance.


fix: workaround invalid types from device

:tada: This PR is included in version 1.3.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


maillog configuration?

The module is not managing log related settings, such as maillog_file or maillog_file_rotate_suffix.
Without these on Ubuntu and Debian, postfix logs are filling up /var/log/syslog, making it difficult to find none mail related information.
Affected Puppet, Ruby, OS and module versions/distributions

Module version: puppet-postfix (v4.4.0)

Correct.  For historic reasons, some parameters must be passed to the postfix class and are then passed to postfix::config resources, but rather than adding more like this, I feel it is better to directly write the config you wants with postfix::config resources.
Closing since the issue is resolved.

I see, thank you @smortex !
Do you have an example how to define them in hieradata?
Also I noticed that I do need postlog in master.cf but I haven't found an option to configure it with the module. If I add by hand it gets removed:
Apr 26 14:04:01 postfix-server postfix/postfix-script[1877795]: fatal: missing 'postlog' service in master.cf - run 'postfix upgrade-configuration'

Notice: /Stage[main]/Postfix::Files/File[/etc/postfix/master.cf]/content:
--- /etc/postfix/master.cf	2024-04-29 08:47:01.814602062 +0000
+++ /tmp/puppet-file20240429-1989427-r6yung	2024-04-29 08:47:16.946726595 +0000
@@ -44,7 +44,6 @@
 lmtp      unix  -       -       n       -       -       lmtp
 anvil     unix  -       -       n       -       1       anvil
 scache    unix  -       -       n       -       1       scache
-postlog   unix-dgram n  -       n       -       1       postlogd
 #
 # ====================================================================
 # Interfaces to non-Postfix software. Be sure to examine the manual

I can use master_entries to add the postlog line, good


DX: integrate PRLint

I'm open for changes here, but I wouldn't overthink it

nice idea :)  can we have Docs in lowercase as well so it matches the others ?(besides DX which is great in all upper)

@SpacePossum @localheinz @kubawerlos @julienfalque , this was the last step to stop using internal gh cli tool , now we can rely on github merge button 🎉

nice one :)    thanks so much!
curious about the change log generation for the releases without gh, but not something I worry about though, just curious :+1:

@SpacePossum
Release automation is fairly easy, see:

https://github.com/ergebnis/.github/blob/ad9e0939fc1ca80b8de4e7f4f102e834f3d17f63/.github/workflows/release.yaml
https://github.com/ergebnis/.github/blob/main/actions/github/release/create/action.yaml

might be worth updating the regex DX - cleanup test  is currently not allowed

actually, the changelog was always git log (with fancy filters etc) and not gh.
for release, we also bump internal code marker (eg version, codename) and trigger new release for phar repo, as well as trigger website regeneration. I would say it's another scope that has one blocker - I'm not comfortable to share my secret to sign phar file to CI, after issue in Travis that allowed to expose the secrets stored in CI system.


Any chance, or point, of reviving this?

I had to hunt at OpenJDK for a 32 bit version of Java 9, looks like MQL4 changed ever so slightly since this project was published, and certainly the JVM options changed, which probably explains why I do not get the EA activation dialog upon attaching to a chart. Has the project somewhat been superseded though?

I'll try it out but it will take a few days ...:-)

I've updated a few parts of the sample code to work with:
Visual Studio 2017
MT 4 Build 1090
Windows SDK 10
Open JDK 9 (32 bit)

many thanks indeed. :)

Haven't tested it yet, but it should be the next big thing :) Thanks!


[no-unstable-nested-components] Inline components wrapped in React.memo aren't detected

This test case isn't caught by the lint rule. Note the use of React.memo and not React.useMemo. AFAIK, it is susceptible to reconciliation problems since UnstableNestedFunctionComponent is different on each render:
function ParentComponent() {
  const UnstableNestedFunctionComponent = React.memo(() => {
    return <div />;
  });

  return (
    <div>
      <UnstableNestedFunctionComponent />
    </div>
  );
}

I'm working on a fix for this but wanted to flag in case I'm missing something.
Also, I wonder if the lint message can be improved to avoid this scenario. I think this happens because a dev sees the lint error, read the message saying to "memoize" the component, and accidentally mixes up React.memo and React.useMemo.
IMO it's still undesirable to use useMemo or useCallback here since the DOM subtree will be wiped if any of the hook dependencies change, so maybe the message shouldn't encourage this. But at the very least maybe we should clarify the message.

I think improving the message is easy and a good idea; a PR for that would be appreciated.
In this case, the thing that should be done is hoisting the component outside the parent.


[fix]: Fixes Ledger live path

Description
Fixes the ledger live paths which were generating the wrong addresses.
Supersedes PR: #895
Fixes Issue: #880
Additionally, removes unused tests and adjust build order for packages.
Checklist

[ ] The version field in package.json is incremented following semantic versioning
[x] I tested locally to make sure this feature/fix works
[ ] This PR passes the Circle CI checks

Closed in favour of #901


Seeting minimum k8s version to 1.26.15

What this PR does / why we need it:
PR introduces version 1.26.15
Which issue(s) this PR fixes:
Fixes https://github.com/gardener/hyperkube/issues/18
Special notes for your reviewer:
Release note:

Setting minimum version to be built to 1.26.15

/lgtm


Enhancement: Client Actions and Tools

Restore the CM client actions and client tools, as well as collection actions and tools, from the old CMWT.

Front-end is ready as of 2016.12.10, but the backend code is still in development.  I hope to have it done for the next release.


cargo-apk: Add cargo apk version command for querying release version

Print the package name and version from Cargo.toml that the crate/binary was built with.
Note that we still have to fix #217 somehow to make this truly useful, without having to switch to a directory that contains a valid crate setup.

:( Our CI got broken by an untested crate release: https://github.com/harryfei/which-rs/pull/49


Exponential backoff for for job completion check

Coverage increased (+0.06%) to 88.95% when pulling cb3edcce20b1dbebf2ad49d711c2f1977ab29eee on mprimi:GENIE-300-check-job-completion-backoff into 42472fb0923cd6754bd28abd0d18263fe282f2b9 on Netflix:3.3.x.

@tgianos addressed all your comments


Add guide for using Mizuki CFW (https://github.com/thedax/Mizuki/releases) for Step 5 and for region changing

Since this guide now uses an updated sysNAND format for A9LH, and this CFW (Mizuki) was just released specifically for this setup, it might be a good addition to have a guide for arm9loaderhax (step 5) with this CFW along with AuReiNAND and CakesFW. The CFW uses arm9 select by FIX94 for loading applications on boot (including itself) and is the first A9LH CFW that supports the 3DS loader replacement by yifanlu (https://github.com/yifanlu/3ds_injector). This loader then adds more features, such as region free loading from home menu and even region changing support. This CFW is minimalist CFW, so only the CFW's arm9loaderhax.bin is included in the download. In order to run, the AuiReiNAND firmware.bin files can be used and must be put in a /mizuki folder on the SD card, along with the custom loader, which must be named injector.cxi. From there, the arm9loaderhax.bin included in the Mizuki download must be renamed to default.bin and saved to the /arm9select folder on the SD card. For loading other applications on boot, the .bin files (such as decrypt9WIP.bin) have to be renamed to the proper button to be held on boot (a.bin, b.bin, etc) and put in the /arm9select folder, like in the AuReiNAND guide.
This CFW is probably the best option for beginners because it's less complicated compared to AuReiNAND and Cakes yet it supports nearly all of their features, including region free and loading apps from boot. For the guide, the hblauncher_loader and the A9LH installer files would still be needed (safeA9LH installer, slotkey bins, payload_input.zip, minipasta, etc.) along with the "on boot" applications (such as Decrypt9WIP and uncart for A9LH). However, other than that, all that would be needed is the most recent release of Mizuki, the 3DS custom loader, arm9select, and the AuReiNAND NTR firmware.bin files for Old and New3DS.
Also, this CFW can be used to switch regions on A9LH with Eshop access due to the custom loader, so that functionality could be utilized in the region changing guide.

Also, I forgot about something- the loader supports region changing eshop too!

I have decided against adding this CFW as an option (for now) because of the following reasons:

2 Options is already more than I initially wanted, I'd prefer no more
Arm9select similar functionality is already integrated into AuReiNAND
This is not the first CFW to support 3ds_injector, AuRei has had it integrated for days
"Minimalist" means nothing, and AuRei only need the arm9loaderhax.bin file to work, the rest aren't used other than the empty aurei folder
It's not less complicated than AuRei (other than not needing options turned on/off), and doesn't seem to offer any extra features in comparison
Finally, the actual region changing steps for yifanlu's eshop stuff is far more complicated than just using his loader

Thanks for clarifying what the custom loader does, I really didn't know too much about it before. I think the main reason I suggested this is simply because I should probably use AuiReiNAND for my CFW, it's just that right now it's being updated very frequently and I just don't want to redownload my CFW that often. Before using Mazuki CFW, I used Cakes because AuReiNAND had not yet came out yet when I installed A9LH. But I didn't like the bootCTR9 setup, which was slower than arm9select and the Smash 4/MH4 reboot patch in Cakes broke GBA/DSiWare games. While Cakes requires less in terms of folder structure compared to AuReiNAND, it's still a decent amount of setup. Mazuki CFW is just a good mixture of both- sure, it's not made to add any new features, it's really there to condense them down. That way, when this CFW is updated, there might be only a couple of files to replace, in comparison to many files when an AuiReiNAND or Cakes update occurs. Also, it gives me the two things a CFW on A9LH needs to provide: Booting applications with permissions and patching reboots and firmware without any extra clutter or even a menu. Those are just the reasons for my Mazuki CFW setup, if people want to use AuiReiNAND or Cakes instead though I don't really care what you choose.


one more fix for signaturehelp

@alex-popov-tech that actually brings the bug back but I think the issue is that the loop breaks early if it meets any client that supports signature_help but I think the logic based on the way the file is laid out should be enforce a loop through all clients and only return true if all clients support signature help.
I think better still @glepnir not sure if this is possible but seems when we request signature help we can't specify the client we are requesting signature help for? I think it would be better if it's possible, could be an nvim limitation to somehow specify the client id(s) for  which you are requesting signature help

@akinsho why all? f.e. i have .ts file and denols for autocompletion/etc and efm for formatting/linting, so I can potentially can see sig help from deno, and efm is attached as well...
can you send exact output of clients I'm trying to iterate through? maybe I can fix the loop

@alex-popov-tech I think the issue is that vim.lsp.buf_request(0, 'textDocument/signatureHelp) that is being sent lower down in that file is not only sending the request for just the supported clients. It seems that the is_supported check will abort if resolved_capabilities.signature_help is false but that check will only work if it only hits efm first then returns false. If it has another client that supports signature help it seems it will go ahead and request it for all the clients maybe?

@akinsho now it iterates through all clients, and return true if at least one supports sig help, and false if no one supports that...so if you get to sending request with efm only, problem is in check_server_support_signaturehelp func

so if you have only efm it should send nothing, otherwise, there is a bug in my code

@alex-popov-tech so I get
  Configured servers: html, efm, sumneko_lua, tsserver, jsonls, flow, vimls, rust_analyzer, dartls, gopls

  1 client(s) attached to this buffer: efm

    Client: efm (id 1)
    	root:      /home/akin/.dotfiles
    	filetypes: yaml, json, html, css, markdown, lua
    	cmd:       efm-langserver

  2 active client(s):

    Client: efm (id 1)
    	root:      /home/akin/.dotfiles
    	filetypes: yaml, json, html, css, markdown, lua
    	cmd:       efm-langserver

    Client: sumneko_lua (id 2)
    	root:      /home/akin/.dotfiles
    	filetypes: lua
    	cmd:       /home/akin/.local/share/nvim/lspinstall/lua-language-server/bin/Linux/lua-language-server -E /home/akin/.local/share/nvim/lspinstall/lua-language-server/main.lua

  Clients that match the filetype markdown:

    Config: efm
    	cmd:               efm-langserver
    	cmd is executable: True
    	identified root:   /home/akin/.dotfiles
    	custom handlers:

Only one client is attached efm but vim.lsp.get_active_clients does not actually return only the attached clients I think what this needs is use vim.lsp.buf_get_clients then check if the client for that buffer match the check. Since atm it is checking both lua and efm even though only efm is actually active
Also the actual error is that on line 141 result comes back as a number in this case so I believe the check on that line should also check the type(result) ~= "table" then return end
E5108: Error executing lua .../packer/start/lspsaga.nvim/lua/lspsaga/signaturehelp.lua:137: attempt to index local 'result' (a number value)

@akinsho can you paste raw output of vim.lsp.get_active_clients and vim.lsp.buf_get_clients here? it returns the same for me

@alex-popov-tech will do in a bit, I'm supposed to be working atm 😅 but in short its pretty large so hard to paste since it doesn't fit on the screen. Checking the length of vim.lsp.get_active_clients() is 2 and buf_get_clients is 1. Can you try opening nvim to a lua file then after opening a markdown file at this point if you run LspInfo you should see 2 active and 1 attached.

same thing :)
can you please share efm settings as well then? maybe I can reproduce your issue

Here's my efm config.
 efm = {
      init_options = {documentFormatting = true},
      filetypes = {"yaml", "json", "html", "css", "markdown", "lua"},
      settings = {
        -- add ".lua-format" to root if using lua-format
        rootMarkers = {".git/"},
        languages = {
          json = {prettier},
          html = {prettier},
          css = {prettier},
          yaml = {prettier},
          markdown = {prettier},
          lua = {
            {
              formatCommand = "luafmt --indent-count 2 --line-width 100 --stdin",
              formatStdin = true
            }
          }
        }

@akinsho thanks for the explanations! I've reproduced your issue, updated func to search in buf_get clients, can you please test once more? fix worked for me

@alex-popov-tech 💯  works like a charm 👍🏿 thanks for working on this

nice!
@glepnir mind merge that then?

Thanks for pr, LGTM merged.


No way to run with default upstream west.yml

For my project, I init west with just west init --mr v3.5.0. I can probably do without the --mr flag, but since action-zephyr-setup adds the -l flag, init fails because it makes west look for an explicit west.yml before checking out zephyr.
I'm pretty new to zephyr, so I'm not sure of the most idiomatic solution

Make the app-path input optional
My setup is actually wrong, and I should be committing a west.yml to my repository
I should add a fetch step in my workflow to get the default .yml before running action-zephyr-setup

Yeah the action is really meant to the workspace type of application layout, I'd suggest adding a west manifest to your application so that you can also add a module allowlist and make the checkout a lot faster by dropping the modules that you don't need, but if you really don't want to you should be able to add an extra actions/checkout check to your workflow to fetch the zephyr repository manually and then have the workflow do only the modules, it's sort-of how the upstream test works (https://github.com/zephyrproject-rtos/zephyr/blob/main/.github/workflows/hello_world_multiplatform.yaml).

Excellent! Thanks for the clarification, I'll do a manual checkout step for now and move to a custom west.yml once I've worked out which modules I'm keeping around.


After update I get migration error

Hi. I recently run composer update on my project. then I run artisan migrate command and got:
Illuminate\Database\QueryException  : SQLSTATE[HY000]: General error: 1215 Cannot add foreign key constraint (SQL: alter table role_useradd constraintrole_user_user_id_foreign foreign key (user_id) references users (id) on delete cascade)
i looked up the source and see that RolesServiceProvider.php has this line:
        $this->loadMigrationsFrom(__DIR__.'/Database/Migrations');
which i think couses the error.
I switched back to previous version of package, but its limiting some features.
Laravel Framework 5.6.39

Yeah, this is an issue; It seems if you follow the installation steps from the readme, it copies the Migrations from your package to the migrations folder in our project ... Aside from the timestamps being 2016 (which cause them to run first), I see the same exception. Killing the migrations in vendor/jeremykenedy/..../Migrations folder does the trick ...


fix: add types export to exports object

Add types export to exports field so TypeScript 4.7 is able to the the types when using the module resolution for Node 16+.
The types inside the exports object has to be first for TypeScript to be happy (see this issue: https://github.com/microsoft/TypeScript/issues/46334).

Thanks for the contribution, could you amend the commit message so that it follows the conventional commits convention because it fails the linter

@lbenie Done!

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


docker-machine created with driver hyperv could not connecting to exported ports (#489)

docker-machine create --driver hyperv manager

(manager) Creating SSH key...
(manager) Creating VM...
(manager) Using switch "DockerNAT"
(manager) Creating VHD
(manager) Starting VM...
(manager) Waiting for host to start...
Waiting for machine to be running, this may take a few minutes...
Detecting operating system of created instance...
Waiting for SSH to be available...
Detecting the provisioner...
Provisioning with boot2docker...
Copying certs to the local machine directory...
Copying certs to the remote machine...
Setting Docker configuration on the remote daemon...
This machine has been allocated an IP address, but Docker Machine could not
reach it successfully.
SSH for the machine should still work, but connecting to exposed ports, such as
the Docker daemon port (usually :2376), may not work properly.
You may need to add the route manually, or use another related workaround.
This could be due to a VPN, proxy, or host file configuration issue.
You also might want to clear any VirtualBox host only interfaces you are not using.
Checking connection to Docker...
Docker is up and running!
To see how to connect your Docker Client to the Docker Engine running on this virtual machine, run: docker-machine env manager

the hyperv-virtual-switch is DockerNAT which is internal net type.
should I create a virtual switch of external net type ?

the problem is resolved by change the switch type to external net


'has disposition at all times' only has one parent

From<EMAIL_ADDRESS>on August 13, 2012 10:44:16
I think if x 'has disposition at all times' (quantifier) d, x 'has disposition at some time' (quantifier) d.
Original issue: http://code.google.com/p/bfo/issues/detail?id=120

From<EMAIL_ADDRESS>on August 13, 2012 21:50:40
Yup. Thanks!
Status: Accepted
Owner<EMAIL_ADDRESS>

From<EMAIL_ADDRESS>on September 10, 2012 14:24:23
fixed in source
Status: Submitter-Review

From<EMAIL_ADDRESS>on September 13, 2012 16:30:16
Issue 127 has been merged into this issue.


[prosiebensat1] Unable to extract clip id

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

[X] I'm reporting that yt-dlp is broken on a supported site
[X] I've verified that I'm running yt-dlp version 2023.03.04 (update instructions) or later (specify commit)
[X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
[X] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[X] I've searched known issues and the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue
[X] I've read about sharing account credentials and I'm willing to share it if required

Region
Accessible in Germany/Austria/Switzerland. Possibly worldwide.
Provide a description that is worded well enough to be understood
steps to reproduce this issue

disable Widevine as instructed to confirm video is not DRM-protected
open URL in Firefox
click on video
site redirects to an authentication page
login (signup is free and fast as only email/firstname/bday are required, but can share login credentials if needed)
site redirects back to URL from step 2
video is now playable in Firefox
run yt-dlp --no-config -f- -v --cookies-from-browser firefox "URL"

expected result
yt-dlp download should start
actual result
ERROR: [prosiebensat1] tv/videos/der-sat-1-bio-check-aldi-rewe-denns-co-ganze-folge: Unable to extract clip id; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template.
possibly related issues

https://github.com/yt-dlp/yt-dlp/issues/2010#issuecomment-1207371636
#4828
#5421

Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[X] If using API, add 'verbose': True to YoutubeDL params instead
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
yt-dlp --no-config -f- -v --cookies-from-browser firefox "https://www.sat1.at/tv/videos/der-sat-1-bio-check-aldi-rewe-denns-co-ganze-folge"
[debug] Command-line config: ['--no-config', '-f-', '-v', '--cookies-from-browser', 'firefox', 'https://www.sat1.at/tv/videos/der-sat-1-bio-check-aldi-rewe-denns-co-ganze-folge']
[debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version<EMAIL_ADDRESS>[59d9fe083] (win_exe)
[debug] Python 3.8.10 (CPython AMD64 64bit) - Windows-10-10.0.19045-SP0 (OpenSSL 1.1.1k  25 Mar 2021)
[debug] exe versions: none
[debug] Optional libraries: Cryptodome-3.18.0, brotli-1.0.9, certifi-2023.05.07, mutagen-1.46.0, sqlite3-2.6.0, websockets-11.0.3
[Cookies] Extracting cookies from firefox
[debug] Extracting cookies from: "C:\Users\User\AppData\Roaming\Mozilla\Firefox\Profiles\4ad8do09.monika\cookies.sqlite"
[Cookies] Extracted 719 cookies from firefox
[debug] Proxy map: {}
[debug] Loaded 1840 extractors
[prosiebensat1] Extracting URL: https://www.sat1.at/tv/videos/der-sat-1-bio-check-aldi-rewe-denns-co-ganze-folge
[prosiebensat1] tv/videos/der-sat-1-bio-check-aldi-rewe-denns-co-ganze-folge: Downloading webpage
ERROR: [prosiebensat1] tv/videos/der-sat-1-bio-check-aldi-rewe-denns-co-ganze-folge: Unable to extract clip id; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
  File "yt_dlp\extractor\common.py", line 703, in extract
  File "yt_dlp\extractor\prosiebensat1.py", line 491, in _real_extract
  File "yt_dlp\extractor\prosiebensat1.py", line 431, in _extract_clip
  File "yt_dlp\extractor\common.py", line 1287, in _html_search_regex
  File "yt_dlp\extractor\common.py", line 1251, in _search_regex

There was PR #5593, which was abandoned because its solution to fix some extractors ended up breaking other extractors

There is something weird going on.

The following video is available at both prosieben.de and joyn.de (Note: These two videos are of a recent event and will most likely not be available after 14 Nov 2023):

https://www.prosieben.de/serien/joko-klaas-live-die-schatzsuche/videos/lesung-konzert-v_yd0czlu26gxi
https://www.joyn.de/play/serien/joko-klaas-live-die-schatzsuche/1-2-lesung-konzert

Joyn.de is still DRM. I verified this by disabled Widevine Content DRM in Firefox.
Prosieben.de is not DRM and can be played in Firefox with disabled DRM.
So, I understand that prosieben.de has their own content store? This is weird, because they are marketing Joyn quite extensively. Why should they maintain two streaming services, one with DRM and one without? This makes no sense.

I tried to download from ProSieben.de.
Try 1: I took the full source code of master and just applied this single fix to yt_dlp/extractor/prosiebensat1.py :
_CLIPID_REGEXES add the following: r'"video":\{"id":"([^"]+)"',
The download then starts.
Try 2: I cloned the whole repo https://github.com/Romern/yt-dlp/tree/fixprosiebensat1 (Nov 20, 2022 with PR #5593). But I also had to apply the patch with the Video ID. The download also starts.
At both tests, a video file was downloading. but actually, when I open the file, the video is just a black screen with the following text:
Diese App wurde eingestellt.
Die Inhalte findest Du jetzt bei Joyn.

(This app was discontinued. You will find the contents at Joyn. Download the App in the App-Store.)

So. This is weird. On one hand, downloading from prosieben.de says "app discontinued" (which makes sense since they are marketing Joyn.de), but on the other hand, I can play prosieben.de from Firefox without DRM, which suggests that I am NOT loading content from Joyn.de? @bashonly maybe you can take a quick look at it? My main question is what is going on, and is the plugin prosiebensat1 really dead, or is the "This app was discontinued" dummy video just telling that some parameters are wrong?

I have looked further in this topic. Below you can see how I can get to the video file.
I am not sure how the extractor code works, but since the extractor code says "VAS v4" and the current service is also called "VAS v4" - the base URL _V4_BASE_URL = 'https://vas-v4.p7s1video.net/4.0/get' is also the same - I believe that there are probably only a few differences, and I think the plugin can be modified to make it work.
I begin with this video URL:
https://www.prosieben.de/serien/joko-klaas-live-die-schatzsuche/videos/lesung-konzert-v_yd0czlu26gxi
This file is accessed in Chrome (but where do we get the JWT token?):
https://vas-v4.p7s1video.net/4.0/getsources?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Inhfc3VwZXJub3ZhdHZjLWRlIn0.eyJjb250ZW50X2lkcyI6eyJ2X3lkMGN6bHUyNmd4aSI6e319LCJzZWN1cmVfZGVsaXZlcnkiOnRydWUsImlhdCI6MTY5OTkxMjU4MiwibmJmIjoxNjk5OTEyMjgyLCJleHAiOjE2OTk5MTI4ODJ9.vPomNSmOsd5Wh1pNjBRuyEO4fRCWM2norj4V62UQX-I
Inside this "getsources" file, you wil find the video file:
https://p7s1-vod-001-prod.akamaized.net/02/v/t_001/4.0/progressive/clear/01/REbxn8rhHFGJUMAcT71XGMO65NWBQIBWUl-WawovzhyOT1fY0KKNyDlDdsXhDuqaA_HLypp48ItcvS1-8kVFf_GxxdNR7KUvRdMOhoU3iFlZ0NbhU5seGf3mli2ohMs1izaoZDu3HENmo9ga5wgwfim6LXxtoQG9d_J9i4xeFaA/v.ism/x.mp4?hdnea=st=1699912616~exp=1699920099~acl=*REbxn8rhHFGJUMAc*~hmac=bdfdf2b458c98b9f332120d33a79f2fd0ec3a002cbcb53ae76b6430e977a112d

The JWT decodes to this:
{
  "content_ids": {
    "v_yd0czlu26gxi": {}  /* from the programme URL */
  },
  "secure_delivery": true,
  "iat":<PHONE_NUMBER>,    /* t = '13 Nov 21:56:22 GMT 2023' */
  "nbf":<PHONE_NUMBER>,    /* t - 300s */
  "exp":<PHONE_NUMBER>     /* t + 300s */
}

Maybe one can make up a suitable JWT when querying the p7s1video.net API?

@dirkf Yes, I already looked into the contents of the JWT. The problem is that the JWT is signed by the server, so we cannot fake it. I guess when I load the video, some of the hundreds of JavaScripts loaded will contain the key. But how can I find which JavaScript contains the key?

Maybe brute force? Eg, capture the traffic generated by loading the page in a HAR file using browser devtools and search the HAR, with grep and/or jq, for the token used in that transaction. According to the non-specification the response.content.text fields are the place to look.

Thanks for the hint with the HAR files!
Here are more findings...
The JWT key is not in the HAR file. It is calculated using JavaScript in In https://oasis-player-prod.p7s1.io/web/15.18.0/bootstrap/bootstrap.js
        t.getJWT = function(e, t) {
            var n = e.encryption_key
              , a = e.access_id
              , o = Math.round(Date.now() / 1e3)
              , s = r.__assign(r.__assign({}, t), {
                iat: o,
                nbf: o + -300,
                exp: o + 300
            });
            return (0,
            i.default)(s, n, {
                kid: a
            })
        }

The JWT token is signed using algorithm "HS256". The secret can be found using the Chrome Developer Tools ("Sources" tab). I could set a breakpoint at the sign() method in<EMAIL_ADDRESS>to see the secrets.
The secrets are:

access_id = "x_supernovatvc-de"
encryption_key = "Ahsh3soxiemusijophoophiodeevujup"  (used for SHA256-HMAC)

function encode (data) {
  const stringifiedData = CryptoJS.enc.Utf8.parse(JSON.stringify(data));
  return base64url(stringifiedData);
}
var header = {
  "alg": "HS256",
  "typ": "JWT",
  "kid": "x_supernovatvc-de"
};
var payload = {
  "content_ids": {
    "v_yd0czlu26gxi": {}
  },
  "secure_delivery": true,
  "iat": Date.now(),
  "nbf": Date.now()-300,
  "exp": Date.now()+300
};
var payload = encode(header)+"."+encode(data);
var jwt = payload+"."+base64url(CryptoJS.HmacSHA256(payload, "Ahsh3soxiemusijophoophiodeevujup"))
console.log(jwt);

(It should be tested if the encryption key is individual for each video or not)
Unfortunately, I don't have experience with Python or the yt-dlp code, so I have no idea how to implement it...

Check out utils.jwt_encode_hs256 and other extractors that use it

Small update:
I tested another video on another Internet Connection:  https://www.prosieben.de/serien/joko-klaas-gegen-prosieben/videos/high-on-helium-joko-klaas-und-das-team-muessen-zu-viel-inhalieren-v_zjfg7mm6w3ae
The secret is the same, so it is not individual for a video or IP address.

The extractor yt_dlp/extractor/atvat.py seems to be very similar to the current findings! It also generates a JWT which is sent to https://vas-v4.p7s1video.net/4.0/getsources. Just the Access ID and Encryption Key are different. However, there are problems with reading the metadata (title, etc.). I think some of the things of atvat.py needs to be moved to prosiebensat1.py , and then it should work.

I haven't looked at the atv.at pages or (recently) any of the sites supported in  the existing ProSiebenSat1 extractor. However, you can get metadata from the page under test in two ways (at least). The method InfoExtractor._search_ld_json() returns an info_dict like this:
{
  'description': 'Wir haben eine Million Euro versteckt. In einem Koffer. Irgendwo in Deutschland.
The atv.at extractor logic looks for hydration JSON in the webpage containing video IDs and then makes the vas-v4.p7s1video.net request using a JWT with those IDs (content_ids). However for prosieben.de, the videos object was empty ({}) when the web client made the equivalent request, and the video ID that was the key can be extracted from the end of the URL:
    _VALID_URL = r'''(?x)
                    https?://
                        (?:www\.)?
                        prosieben(?:maxx)?\.(?:de|at|ch)/
                        serien/(?:[a-z\d-]+/)+videos/
                        (?P<slug>[a-z\d-]+)-(?P<id>[a-z]_[a-z\d]+)
                 '''

The vas-v4.p7s1video.net getsources API is geo-restricted. As you saw, this API host is already used in the existing yt-dlp ProSiebenSat1 extractor, but with different endpoints (eg geturls) and relying on other API hosts as removed in PR #5593. Presumably it's geturls vs getsources that causes the old code to return the "eingestellt" video.
The problem mentioned above is that ProSiebenSat1BaseIE is the base class of Puls4IE, which apparently still works. Therefore a separate or intermediate base class is needed for ProSiebenSat1IE, ideally one that could be used as a base class to simplify ATVAtIE. If any of the other sites supported by the existing ProSiebenSat1IE extractor might still be handled correctly, it will have to be cloned so that the module has ProSiebenSat1IE for those sites and ProSiebenSat1v2IE for prosieben.de and any other broken sites (eg, sat1.de from OP).

Any news on this? Thanks!

A few days ago, I made a quick'n'dirty mix between the ATV extractor and the old P7S1 extractor.
I had to hardcode video ID and title because I could not get the extracting of the metadata to work.
I could sucessfully create the JWT and "getsources" outputs the correct content.
However, I fail to decode the JSON. I do it the same way as ATV (video_id, videos_data = list(videos['data'].items())[0]), but I always get one node too deep into the structure. I also tried video_id = "v_zjfg7mm6w3ae" and videos_data = videos['data'][video_id], but that this also not worked.
My Python skills are too bad to fulfil this task, so I ask for your help.
Here is my code before I gave up.
import datetime

from .common import InfoExtractor
from ..utils import (
    float_or_none,
    jwt_encode_hs256,
    try_get,
    ExtractorError,
)

class ProSiebenSat1BaseIE(InfoExtractor):
    _DUMMY = 123

class ProSiebenSat1IE(InfoExtractor):
    _VALID_URL = r'''(?x)
                    https?://
                        (?:www\.)?
                        (?:
                            (?:beta\.)?
                            (?:
                                prosieben(?:maxx)?|sixx|sat1(?:gold)?|kabeleins(?:doku)?|the-voice-of-germany|advopedia
                            )\.(?:de|at|ch)|
                            ran\.de|fem\.com|advopedia\.de|galileo\.tv/video
                        )
                        /(?P<id>.+)
                    '''

    _TESTS = []

    # extracted from bootstrap.js function (search for e.encryption_key and use your browser's debugger)
    _ACCESS_ID = 'x_supernovatvc-de'
    _ENCRYPTION_KEY = 'Ahsh3soxiemusijophoophiodeevujup'

    def _extract_video_info(self, url, clip_id, video):
        formats = []
        print("test")
        print(url)
        print("bbb")
        print(clip_id)
        print("aaa")
        print(video)
        print("ccc")
        clip_urls = video['urls']
        for protocol, variant in clip_urls.items():
            source_url = try_get(variant, lambda x: x['clear']['url'])
            if not source_url:
                continue
            if protocol == 'dash':
                formats.extend(self._extract_mpd_formats(
                    source_url, clip_id, mpd_id=protocol, fatal=False))
            elif protocol == 'hls':
                formats.extend(self._extract_m3u8_formats(
                    source_url, clip_id, 'mp4', 'm3u8_native',
                    m3u8_id=protocol, fatal=False))
            else:
                formats.append({
                    'url': source_url,
                    'format_id': protocol,
                })
        self._sort_formats(formats)

        return {
            'id': clip_id,
            'title': "TITLE TODO",
            'duration': float_or_none(content.get('duration')),
            'series': content.get('tvShowTitle'),
            'formats': formats,
        }

    def _real_extract(self, url):
        video_id = self._match_id(url)
        webpage = self._download_webpage(url, video_id)

        video_title = "TITLE TODO"
        content_id = "v_zjfg7mm6w3ae"
        content_ids = []

        time_of_request = datetime.datetime.now()
        not_before = time_of_request - datetime.timedelta(minutes=5)
        expire = time_of_request + datetime.timedelta(minutes=5)
        payload = {
            'content_ids': {
                content_id: content_ids,
            },
            'secure_delivery': True,
            'iat': int(time_of_request.timestamp()),
            'nbf': int(not_before.timestamp()),
            'exp': int(expire.timestamp()),
        }
        jwt_token = jwt_encode_hs256(payload, self._ENCRYPTION_KEY, headers={'kid': self._ACCESS_ID})
        videos = self._download_json(
            'https://vas-v4.p7s1video.net/4.0/getsources',
            content_id, 'Downloading videos JSON', query={
                'token': jwt_token.decode('utf-8')
            })

        #video_id, videos_data = list(videos['data'].items())[0]
        video_id = "v_zjfg7mm6w3ae"
        videos_data = videos['data'][video_id]
        error_msg = try_get(videos_data, lambda x: x['error']['title'])
        if error_msg == 'Geo check failed':
            self.raise_geo_restricted(error_msg)
        elif error_msg:
            raise ExtractorError(error_msg)
        entries = [
            self._extract_video_info(url, "v_zjfg7mm6w3ae", video)
            for video in videos_data]

        return {
            '_type': 'multi_video',
            'id': video_id,
            'title': video_title,
            'entries': entries,
        }

Since it appears to be geo-locked, I'd provide the output of "getsources". You can use it for development (parsing of the JSON) and mock testing.
{
  "meta": {
    "countrycode_platform": "de",
    "countrycode_resolved": "de",
    "netspeed_resolved": "cable-dsl",
    "lifecycle_id": "09EFM7B14pUVFBdm1"
  },
  "data": {
    "v_yd0czlu26gxi": {
      "ad_intensity": {
        "preroll": {
          "max": 0
        },
        "midroll": {
          "max": 0
        },
        "postroll": {
          "max": 0
        }
      },
      "openrtb": {
        "id": "v_yd0czlu26gxi",
        "episode": 2,
        "title": "Lesung & Konzert",
        "series": "Joko & Klaas LIVE: Die Schatzsuche",
        "artist": "",
        "genre": "GAMESHOW",
        "cat": "269",
        "prodq": 1,
        "context": "video",
        "contentrating": "FSK12",
        "livestream": 0,
        "sourcerelationship": 1,
        "len": 283,
        "language": "German",
        "season": "Staffel 1"
      },
      "metadata": {
        "channelId": 1,
        "brand": "ProSieben",
        "productPlacement": true
      },
      "is_protected": false,
      "valid_until":<PHONE_NUMBER>,
      "age_ratings": {
        "de": {
          "schema": "P7S1_EDITOR",
          "certification": "12",
          "details": null
        }
      },
      "show_product_placement": false,
      "urls": {
        "dash": {
          "clear": {
            "url": "https://vas-v4.p7s1video.net/4.0/playlist.mpd?x=01&y=V8-mgP8o7QfNUCotSctV8hrTApgu2vpNmaEXpkTymW07Q4i1xnvCG9K8KXruL4Om7olXi2i29jP9oUxDL9D0HqVb-L0KJfY5BdJT7FCcrWea0zeX8Szj7-D8u1wPOiNc-CNDOSCmyXdQnyY_N09t-OuNgKyiUWvdQikj6phFXLak64iZ26LERWB9n6_7u9S175MGLgxGZP2Q85ndmGyEHoHm6SWnFoeTpwi8IrVY6dMBmztULhSXDsdXtnHUZwUn7RJ4UUSDi5AuwAdw2LY-L2ytSCmiaMW1fm_9DIHHOhx10WXZqGN6Wtork1D7uIxbd8P3muyHFQiQbM2Ms1LJHTNIlcoUElqlwkrfRDjyr4k",
            "cdn": "amazon"
          }
        },
        "hls": {
          "clear": {
            "url": "https://vas-v4.p7s1video.net/4.0/playlist.m3u8?x=01&y=f9nxhyrWyheG-RC8keqaQKulSInoQNFmsGJJ9WrpwBcF1d7FP-0Tq7B-yiq_PRDdktfkb1I1hUX56EdLYhmEV_AZ2BtBYtmpiu_UZnfXm1sO9o15tJkClivhK5LLD4_ZYg_yvdLTcYKRcrzJ1MXiHHgRIYobVOHLM_RMgUWH03yumgvhf-ZbmtY0qVkuZStzD5Bh8Rt14wyHYxFeptr71e6rMszgE4LzAC3Ih2pDDiUE_H-agQcwBvcmZSbO390TdK5JQB5cCTzwoAuzFcEqLkflsGcz6CjV00ScitdKujCkodsNgzggNVjThj5ne1-rjF6nZtQsB5YZijdJRLwWVlvtXqjzKiZIHpaktQyukbyEU4oLtDsmb7qPpOcq6rDS",
            "cdn": "amazon"
          }
        },
        "progressive": {
          "clear": {
            "url": "https://ac-vod-001.vod.p7s1video.net/02/v/t_001/4.0/progressive/clear/01/REbxn8rhHFGJUMAcT71XGMO65NWBQIBWUl-WawovzhyOT1fY0KKNyDlDdsXhDuqaA_HLypp48ItcvS1-8kVFf_GxxdNR7KUvRdMOhoU3iFlZ0NbhU5seGf3mli2ohMs1izaoZDu3HENmo9ga5wgwfim6LXxtoQG9d_J9i4xeFaA/v.ism/x.mp4?Policy=eyJTdGF0ZW1lbnQiOlt7IkNvbmRpdGlvbiI6eyJEYXRlR3JlYXRlclRoYW4iOnsiQVdTOkVwb2NoVGltZSI6MTcwMDYxMDIzNH0sIkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxNzAwNjE4MDE3fX0sIlJlc291cmNlIjoiKlJFYnhuOHJoSEZHSlVNQWMqIn1dfQ__&Signature=CYPyk8NSidBaRg0sGcG~WBpeNIZqJZFY-ow9EVoMSfMTp29ymVMVlnLFCRAWZMZr3i~9PHJaNtz6jENcyVG9HX0i~wi8JlA2mfUItH-KAuwVbbhdi4cpLDlweKsmHJky4xS~MDQfgO6BVR0Hmh9HSHKSI57GJB0cgBDls43w~GYqzpCwO8LojtGdWYvYkqhcaxIGXFDrYWOOzuiOS6W~xpzExhFfopVEXXeI6VY3Kgd0ikuaQtCFC94vrN5stH6ki3fzsrbJ9WO5s~cl~3m7MIzyNoMSP4o6xILxJh7W~54zPLxvBFaZHIiKRagCiZAcrLd53XibkhMJdRIfjUxg4g__&Key-Pair-Id=K1ICMR223W7GCK",
            "cdn": "amazon"
          }
        }
      },
      "seekthumbnails": [
        {
          "id": "s01",
          "format": "webvtt",
          "url": "https://ac-vod-001.vod.p7s1video.net/4.0/seekthumbnails/01/smABJg5LblvXVA6yOFYubNTvMlsjF-mQ56fG9vSWeqGmCmLyIxdtfwlAmtOjCpxRKUh0i4k3Mw8wSK9Qm8TFiHBZpLO3rcJ3mYucoHqQDopUZ9sin9XWBkMws1sbuzA2WFhdyf0Zk2lQCrChhxx5RzyIj2oCTMmWploiCyxrXr8ufPTSqrvCzIvYhSFoNk55TnvjY0nol98mx5iA-Ll8zxJcS6oZj13aNOCWSJ4xo24/s01.vtt?Policy=eyJTdGF0ZW1lbnQiOlt7IkNvbmRpdGlvbiI6eyJEYXRlR3JlYXRlclRoYW4iOnsiQVdTOkVwb2NoVGltZSI6MTcwMDYxMDIzNH0sIkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxNzAwNjE4MDE3fX0sIlJlc291cmNlIjoiKnNtQUJKZzVMYmx2WFZBNnkqIn1dfQ__&Signature=f0s7kf5T~aleQNqyYsMhkpndgMfd1I-ssgL4s50h4g4WGFzY9-k~whGNgVVeCBRTTfeERb43mGbICXi5ofyMT3hNs2irOIhVVRwNyIEZWhNoNxuOXZ1BnUC4rUGYQEWKjOAyL-TWwYxYRTbh58FXlWV6dubtbvCR5nUjSmWo8QlDkOLO-aPMI1MB6xi0jLA7vEmL83xj8V8MaDrIseNXFNGPiEeOeBiGtHKhAVbUx5moRkk7neA41fJ5wCevb-Idlx4NTGCNI5koQXsKRxts4CrSSkldUFcYU8S1T8IehtYKxRsw6YenyrWLKfmoO9yGNmkBk3MH1UaMGzr21fYm1w__&Key-Pair-Id=K1ICMR223W7GCK"
        }
      ]
    }
  }
}


Build changes between 1.16 and 1.17?

I am seeing issues when building the new 1.17.0 release - https://gist.github.com/jchauncey/9b03ca742b050637b69a2c8ab01fa750
Our CI didnt have any issues with the latest 1.16 release in December, so was wondering if anything has changed before I start digging deeper into this.

@jchauncey which lines are you referring to in your build log? It's probably worth validating that your build environment matches https://github.com/envoyproxy/envoy/blob/master/bazel/README.md. In general we declare breaking changes in https://www.envoyproxy.io/docs/envoy/latest/version_history/v1.17.0, but this might not fully cover build.

@jchauncey which lines are you referring to in your build log? It's probably worth validating that your build environment matches https://github.com/envoyproxy/envoy/blob/master/bazel/README.md. In general we declare breaking changes in https://www.envoyproxy.io/docs/envoy/latest/version_history/v1.17.0, but this might not fully cover build.

@jchauncey I don't see any error in the gist you posted, the log seems truncated.

@jchauncey I don't see any error in the gist you posted, the log seems truncated.

ok so the build ran again this morning and the warnings I was seeing in the output aren't there anymore but it still failed trying to create the container image. It's possible something changed on our build agents.
Before I was seeing errors like the following -
external/com_google_protobuf/src/google/protobuf/port_def.inc:169:44: note: expanded from macro 'PROTOBUF_DEPRECATED'
#define PROTOBUF_DEPRECATED __attribute__((deprecated))
                                           ^
7 warnings generated.
INFO: From Compiling external/envoy_api/envoy/api/v2/listener/listener.pb.cc:
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/listener/listener.pb.cc:4:
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/listener/listener.pb.h:33:
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/listener/listener_components.pb.h:35:
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/auth/tls.pb.h:35:
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/auth/secret.pb.h:36:
bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/core/config_source.pb.h:108:73: warning: 'ApiConfigSource_ApiType_UNSUPPORTED_REST_LEGACY' is deprecated [-Wdeprecated-declarations]
constexpr ApiConfigSource_ApiType ApiConfigSource_ApiType_ApiType_MIN = ApiConfigSource_ApiType_UNSUPPORTED_REST_LEGACY;
                                                                        ^
bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/core/config_source.pb.h:100:51: note: 'ApiConfigSource_ApiType_UNSUPPORTED_REST_LEGACY' has been explicitly marked deprecated here
  ApiConfigSource_ApiType_UNSUPPORTED_REST_LEGACY PROTOBUF_DEPRECATED_ENUM = 0,
                                                  ^
external/com_google_protobuf/src/google/protobuf/port_def.inc:170:49: note: expanded from macro 'PROTOBUF_DEPRECATED_ENUM'
#define PROTOBUF_DEPRECATED_ENUM __attribute__((deprecated))
                                                ^
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/listener/listener.pb.cc:4:
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/listener/listener.pb.h:33:
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/listener/listener_components.pb.h:35:
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/auth/tls.pb.h:35:
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/auth/secret.pb.h:36:
bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/core/config_source.pb.h:134:39: warning: 'AUTO' is deprecated [-Wdeprecated-declarations]
constexpr ApiVersion ApiVersion_MIN = AUTO;

But this last run those have disappeared.

ok so the build ran again this morning and the warnings I was seeing in the output aren't there anymore but it still failed trying to create the container image. It's possible something changed on our build agents.
Before I was seeing errors like the following -
external/com_google_protobuf/src/google/protobuf/port_def.inc:169:44: note: expanded from macro 'PROTOBUF_DEPRECATED'
#define PROTOBUF_DEPRECATED __attribute__((deprecated))
                                           ^
7 warnings generated.
INFO: From Compiling external/envoy_api/envoy/api/v2/listener/listener.pb.cc:
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/listener/listener.pb.cc:4:
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/listener/listener.pb.h:33:
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/listener/listener_components.pb.h:35:
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/auth/tls.pb.h:35:
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/auth/secret.pb.h:36:
bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/core/config_source.pb.h:108:73: warning: 'ApiConfigSource_ApiType_UNSUPPORTED_REST_LEGACY' is deprecated [-Wdeprecated-declarations]
constexpr ApiConfigSource_ApiType ApiConfigSource_ApiType_ApiType_MIN = ApiConfigSource_ApiType_UNSUPPORTED_REST_LEGACY;
                                                                        ^
bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/core/config_source.pb.h:100:51: note: 'ApiConfigSource_ApiType_UNSUPPORTED_REST_LEGACY' has been explicitly marked deprecated here
  ApiConfigSource_ApiType_UNSUPPORTED_REST_LEGACY PROTOBUF_DEPRECATED_ENUM = 0,
                                                  ^
external/com_google_protobuf/src/google/protobuf/port_def.inc:170:49: note: expanded from macro 'PROTOBUF_DEPRECATED_ENUM'
#define PROTOBUF_DEPRECATED_ENUM __attribute__((deprecated))
                                                ^
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/listener/listener.pb.cc:4:
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/listener/listener.pb.h:33:
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/listener/listener_components.pb.h:35:
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/auth/tls.pb.h:35:
In file included from bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/auth/secret.pb.h:36:
bazel-out/k8-opt/bin/external/envoy_api/envoy/api/v2/core/config_source.pb.h:134:39: warning: 'AUTO' is deprecated [-Wdeprecated-declarations]
constexpr ApiVersion ApiVersion_MIN = AUTO;

But this last run those have disappeared.

ok it looks to be me and not you. Thanks for you advice/suggestions though!

ok it looks to be me and not you. Thanks for you advice/suggestions though!


[BUG] Error - Call to undefined LayoutHerlper::isPreloaderEnabled()

Just updated today.
I comment that and is running now.
{{-- Preloader Animation --}}
{{-- @if($layoutHelper->isPreloaderEnabled())
@include('adminlte::partials.common.preloader')
@endif --}}

{{-- Preloader Animation --}}
{{--  @if($layoutHelper->isPreloaderEnabled())
@include('adminlte::partials.common.preloader')
@endif  --}}
I comment that and is running now.

@wbetalleluzd Please see #1256 , probably you published the package views previously and now you need to follow the complete Update Procedure.

@wbetalleluzd Please see #1256 , probably you published the package views previously and now you need to follow the complete Update Procedure. In other words, you need to update the previously published views in order to synchronize them with the new package version.

Should this have been a major update rather than a minor? I suppose it's a tricky one where publishing is involved.

I have reverted the patch version v3.9.5 and released the minor version v3.10.0.

Oh, we could actually add backward compatibility by adding again LayoutHerlper::isPreloaderEnabled() that just call the method that is now in the PreloaderHelper class.
On the other hand, if you want to access the new features, the review of previously published views is mandatory.

There was not any method called isPreloaderEnabled() in vendor\jeroennoten\laravel-adminlte\src\Helpers\LayoutHelper.php
I added the method after line 24:
/**
* Check if the preloader animation is enabled.
*
* @return bool
*/
public static function isPreloaderEnabled()
{
return config('adminlte.preloader.enabled', false);
}

You have to publish / update the viwes like the update guide. Please check other issues before creating an new one for the same topic.

@SammyJoseph The method was moved to a new class, due to a split-out refactor, it's now on the PreloaderHelper.php class:
https://github.com/jeroennoten/Laravel-AdminLTE/blob/21b94f6d7716ebde46849fcd77ec33c1565794ec/src/Helpers/PreloaderHelper.php#L13
Please, follow the update procedure and update your published views to sync them with the newest package version.

I solved it with the following: php artisan adminlte:install --only=main_views --force

I solved it with the following: php artisan adminlte:install --only=main_views --force Reference: https://github.com/jeroennoten/Laravel-AdminLTE/wiki/Updating

@pervilla You should be careful about using --force, because you will lose previous changes on the published views. You usually publish the views when you need to make a customization. So, it's always recommended to backup your set of published views before executing the previous command.

Closed, a solution to the issue was provided!


Improve the Documentation on Custom Elements

Is your feature request related to a problem? Please describe.
There appears to be no documentation in the guides or the related rust documents regarding the creation of custom elements in the view macro. After reading the source code, I figured out that instead of relying the custom function provided for the builder syntax users which may cause, as specified in the guides, performance loss, one could directly write them like normal HTML elements, i.e.
view! {
  <my-custom-element></my-custom-element>
}

This is great, but probably not that great if one could only figure it out after reviewing the macro source.
Describe the solution you'd like
This page could be improved by incorporating an example illustrating rendering a sample custom element (or probably even SVG and MathML) element.
Describe alternatives you've considered
It might be comparably reasonable to document this in a separated section, but another section would be a heavier solution certainly.
Additional context
None

I'm fine adding something to the documentation (for the view macro? somewhere else?) -- but surely this is a very intuitive syntax for using custom elements in the view, as it is the same exact syntax used for them in HTML? I'm sorry to hear you had to read the source code, and we can probably clarify, but wouldn't this be the first thing to try?

I would say that this is perfectly intuitive if I knew it, but there is actually a custom(...) function exported, which came into the way and disturbed my thinking. It initially suggested me that probably we should write something like
// This does not work
view {
  <custom el="my-custom-element" />
}

but this certainly does not work. So I wondered that we probably needed to "register" the element descriptor somewhere in the code in order to use them. Then, considering the product code ugly (and probably not that efficient because of the builder syntax involved), I actually turned to source code and figured this simply and ergonomic way out.
After all, this is just my personal experience with it, and I have no idea whether others may feel the same. Besides, thank you for maintaining this great library!


fix: (DPE-6055) fix regression on maas deployment

@paulomach  I have tested this locally, the original issue is no longer reproducible on MAAS. LGTM.


Handle unresolved JS import when type is exported with the same name

This was not giving any error
// fileA.js
export type MyType = {};

// fileB.js
import { MyType } from './fileA.js'

P.S. Some specs are failing in master?
1) ExportMap does not return a cached copy after modification:
2) exports-last valid
        const foo = 'bar'
        export default function foo () {
          const very = 'multiline'
        }
        export const bar = true
      :

There have been enough Flow issues lately that I'm tempted to have ExportMap just ignore them completely, especially since Flow will complain if things are wrong... but if the merge conflicts resolve without test issues, I'll probably merge as-is for now. Thanks!

@Coobaha i've rebased this, and around 10 tests are failing. When i comment out your implementation changes, only 2 tests are failing.
I know it's been awhile, but it'd be great to get this updated and landed :-) please mark it as ready for review once it's so.

@Coobaha im not sure why you deleted the branch; it’d be great to get this in. Can you restore and reopen it?

@ljharb Sorry was doing github cleanup and pruning stale branches. Branch is now restored


testing against httpbin.org on Windows by default

use of new HTTPBIN_HOST environment variable
platform specific import of envoy
Caution, it's not tested under Linux.

Why did you remove all of the idna and unicode url tests?

Well, I've just spotted it a minute ago... Something went wrong. You can skip this when merging all I can fix this.

As you think of using standard http server I'm closing this.


Feature/sandy theme

Quick icon fix @IceOfWraith

Looks like there's conflicts causing it to not be rebased.

feel free to prune everything if that helps and I can start the PR over again

Squash and merge was disabled in this repo. Got it turned on so we're good now.

Squash and merge was disabled in this repo. Got it turned on so we're good now.

Okay sweet, thanks..  I'd re-pulled master into my local just in case and pushed that out moments ago :)


Add companies without verification they work in Portugal?

Should companies that have 0 references to work in Portugal be added?
It's my opinion that if the company site, or job vacancies, have no mention of working in Portugal they should no be added.
#127 Was the second time I noticed this. The company site has 0 references to Lisbon. The same goes for the job offers site that actually has 0 vacancies.
It's fine to trust people and all, but it's weird to check a company in the list that has no mention to work in Portugal.

Hi @vpereira01,
You are right, I often trust too much.
I will try to pay more attention next time.
Thanks for calling this out.

Hi @wiiaboo,
Can you please inform us if there are tech people working at Fruition Partners' offices in Fundão and/or Lisbon?
Thanks.

Yeah, both Fundão and Lisbon have developer offices with about 30 consultants/app developers (I'm one of them) and 15(?) in SecondHome, respectively. The PT offices are a branch of the Netherlands/NCE part of Fruition.

Issue raised and cleared.


ARSceneNavigator not destroyed even after switching the View

Hi Guys,
I created a new project using viro-cli using Virocore 2.7.3.In the sample project created i wanted a normal view to come back from the ARScene Navigator,so followed the below steps,
in App.js
_getExperienceselector{
     <View style={localStyles.outer} >
        <View style={localStyles.inner} >

          <Text style={localStyles.titleText}>
            Choose your desired experience:
          </Text>

          <TouchableHighlight style={localStyles.buttons}
            onPress={this._getExperienceButtonOnPress(AR_NAVIGATOR_TYPE)}
            underlayColor={'#68a0ff'} >

            <Text style={localStyles.buttonText}>AR</Text>
          </TouchableHighlight>

          <TouchableHighlight style={localStyles.buttons}
            onPress={this._getExperienceButtonOnPress(VR_NAVIGATOR_TYPE)}
            underlayColor={'#68a0ff'} >

            <Text style={localStyles.buttonText}>VR</Text>
          </TouchableHighlight>
        </View>
      </View>
}
_getARNavigator() {
    return (
       <View style={{flex:1}}>
        <ViroARSceneNavigator ref={ARScene_REF} {...this.state.sharedProps} initialScene={{scene: InitialARScene}} onExit={this._exitViro}/>
        <View style={{position: 'absolute',  left: 0, right: 0, top : 20,width:80, alignItems: 'center'}}>
              <TouchableHighlight onPress={this._exitViro} >
                <Text style={{ fontSize: 18, color: 'white' }}>< Back</Text>
              </TouchableHighlight>
        </View>
      </View>
    );
  }

  **_exitViro()** {
    this.setState({
      navigatorType : UNSET
    })
  }

HelloWorldSceneAR.js
I have a ViroVideo Playing a mp4 video triggered by a ViroARImageMarker
Let's say I am playing the Video with music and once i click the back button as per the getARNavigator it successfully returns back but i hear the music still playing behind.

Thanks @mkharibalaji, two quick questions:

You have verified that getARNavigator() is no longer called / rendered in your app?
could you share the code of your InitialARScene that contains the video you are playing? Feel free to send it to us via<EMAIL_ADDRESS>if needed.

Much thanks!

Hi @dthian ,
I had attached the code and sent it to the support email.
Thanks for the support.

+1 I'm experiencing the same problem. You can also this issue when displaying the feature points, navigating back and then again opening the ar screen. The feature points are displayed as transparent squares instead of opaque circles.

Hey @oOMoeOo, do you mean you have confirmed a scene Navigation leak? Or that a visual bug with the feature points where the circles become transparent squares - Please file a separate bug if this is the case so that we don't conflate this github issue here.

Hey @mkharibalaji, thanks for your reply. Can you double check if you've sent your message to the right email? I can't seem to find it in our @support. Also, please feel free to directly message me in Slack if need be as well, thanks!

@dthian - Could you please give your slack id.I have sent the email again with the github no. as attachment

Hi @dthian,
Thanks for the wonderful support on slack and found the problem to be with ScrollView which once wrapped by a View got it resolved.
so wecan close this issue.

I've exactly the same error! In my case works perfectly in Android, but when I tested on iOS  and I back from the view camera I hear the music still playing behind.
How did you solve it? I tried to look for it in slack, but I haven't found it

Hi Guys,
I created a new project using viro-cli using Virocore 2.7.3.In the sample project created i wanted a normal view to come back from the ARScene Navigator,so followed the below steps,
in App.js
_getExperienceselector{
     <View style={localStyles.outer} >
        <View style={localStyles.inner} >

          <Text style={localStyles.titleText}>
            Choose your desired experience:
          </Text>

          <TouchableHighlight style={localStyles.buttons}
            onPress={this._getExperienceButtonOnPress(AR_NAVIGATOR_TYPE)}
            underlayColor={'#68a0ff'} >

            <Text style={localStyles.buttonText}>AR</Text>
          </TouchableHighlight>

          <TouchableHighlight style={localStyles.buttons}
            onPress={this._getExperienceButtonOnPress(VR_NAVIGATOR_TYPE)}
            underlayColor={'#68a0ff'} >

            <Text style={localStyles.buttonText}>VR</Text>
          </TouchableHighlight>
        </View>
      </View>
}
_getARNavigator() {
    return (
       <View style={{flex:1}}>
        <ViroARSceneNavigator ref={ARScene_REF} {...this.state.sharedProps} initialScene={{scene: InitialARScene}} onExit={this._exitViro}/>
        <View style={{position: 'absolute',  left: 0, right: 0, top : 20,width:80, alignItems: 'center'}}>
              <TouchableHighlight onPress={this._exitViro} >
                <Text style={{ fontSize: 18, color: 'white' }}>< Back</Text>
              </TouchableHighlight>
        </View>
      </View>
    );
  }

  **_exitViro()** {
    this.setState({
      navigatorType : UNSET
    })
  }

HelloWorldSceneAR.js
I have a ViroVideo Playing a mp4 video triggered by a ViroARImageMarker
Let's say I am playing the Video with music and once i click the back button as per the getARNavigator it successfully returns back but i hear the music still playing behind.


Fix/ipct1 392/splash screen UI correction

This PR fixes [IPCT1-392] at https://impactmarket.atlassian.net/browse/IPCT1-392
Description
This PR fix splash screen UI in devices where resolution is not covered by the images in place.
Type of change

Bug fix (fixes an issue)

How Has This Been Tested?

[x] Manually

[x] BLU Advance L5
[ ] SLIDE SP4514
[ ] Asus ZenFone 3 Max
[ ] iPhone 6
[x] Other REDMI 5 Plus

[ ] Automated

Screenshots/Videos

I think this PR has more than one thing.
And the issue with the splash screen is not about the color.

I'll rollback the non related splash screen changes, and as stated on slack the issue isn't about the color although the color is a fallback in case there's no correct image sizing depending on the user's device. The bug is caused because of the 18:9 ratio of some devices. As you can see in the image, such behaviour doesn't happen anymore because such exception is covered by the correct color behind.


failed to download chart

Hey there,
Using the module leads to this error:
module.cert_manager.helm_release.cert_manager: Creating...
╷
│ Error: failed to download "https://charts.jetstack.io/charts/cert-manager-v1.6.1.tgz" at version "1.6.1"
│
│   with module.cert_manager.helm_release.cert_manager,
│   on .terraform/modules/cert_manager/main.tf line 12, in resource "helm_release" "cert_manager":
│   12: resource "helm_release" "cert_manager" {

change variable chart_version from 1.6.1 to v1.6.1 in .terraform/modules/cert_manager/variables.tf seems to do the job
what could i have done?
EKS 1.20, terraform 1.0.1, kubectl 1.21
  required_providers {
    aws = {
      source = "hashicorp/aws"
    }
    kubernetes = {
      source  = "hashicorp/kubernetes"
      version = "2.6.1"
    }
    kubectl = {
      source  = "gavinbunney/kubectl"
      version = "1.13.1"
    }
  }
  required_version = ">= 1.0.1"

Thanks!
Edit: my bad, doesn't work either with v1.6.1

Have you configured helm provider in terraform ?

Yes
provider "helm" {
  kubernetes {
    host                   = data.aws_eks_cluster.cluster.endpoint
    cluster_ca_certificate = base64decode(data.aws_eks_cluster.cluster.certificate_authority.0.data)
    token                  = data.aws_eks_cluster_auth.cluster.token
    exec {
      api_version = "client.authentication.k8s.io/v1alpha1"
      args        = ["eks", "get-token", "--cluster-name", terraform.workspace]
      command     = "aws"
    }
  }
}

Could you please try to execute in terminal: helm repo update

What a dumb... Sorry..
It worked


[zh] sync source-ip.md

Sync with en.
content/zh-cn/docs/tutorials/services/source-ip.md

Preview: https://deploy-preview-37528--kubernetes-io-main-staging.netlify.app/zh-cn/docs/tutorials/services/source-ip/

/approve


Add test for preventing delegation to address(0)

This tests covers the fix implemented in #88

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.1%) to 94.207%

Totals

Change from base Build<PHONE_NUMBER>:
0.1%

Covered Lines:
512

Relevant Lines:
529

💛  - Coveralls