[gatesgarth] QT build is broken

Hi all,
Seems that changes in the upstream QT repositories have broken meta-qt5 for Yocto 3.2 Gatesgarth. Upstream branches 5.15.2 have been deleted and thus building in yocto fails at fetching with:

ERROR: qtwayland-5.15.2+gitAUTOINC+3cc17177b1-r0 do_fetch: Fetcher failure: Unable to find revision 3cc17177b1b03053276eb6236fda137c588261a7 in branch 5.15.2 even from upstream
ERROR: qtwayland-5.15.2+gitAUTOINC+3cc17177b1-r0 do_fetch: Fetcher failure for URL: 'git://code.qt.io/qt/qtwayland.git;name=qtwayland;branch=5.15.2;protocol=git'. Unable to fetch URL from any source.
ERROR: Logfile of failure stored in: ../ccimx6qpsbc/tmp/work/cortexa9t2hf-neon-mx6qdl-dey-linux-gnueabi/qtwayland/5.15.2+gitAUTOINC+3cc17177b1-r0/temp/log.do_fetch.4092915
NOTE: recipe qtwayland-5.15.2+gitAUTOINC+3cc17177b1-r0: task do_fetch: Failed
ERROR: Task (/mnt/ssd/jenkins/workspace/dey-github-gatesgarth/dey.gatesgarth/sources/meta-qt5/recipes-qt/qt5/qtwayland_git.bb:do_fetch) failed with exit code '1'
ERROR: qtquickcontrols-5.15.2+gitAUTOINC+7c29283041-r0 do_fetch: Fetcher failure: Unable to find revision 7c29283041a50def3ceca7de4471f211c9b30d4e in branch 5.15.2 even from upstream
ERROR: qtquickcontrols-5.15.2+gitAUTOINC+7c29283041-r0 do_fetch: Fetcher failure for URL: 'git://code.qt.io/qt/qtquickcontrols.git;name=qtquickcontrols;branch=5.15.2;protocol=git'. Unable to fetch URL from any source.
ERROR: Logfile of failure stored in: ../ccimx6qpsbc/tmp/work/cortexa9t2hf-neon-dey-linux-gnueabi/qtquickcontrols/5.15.2+gitAUTOINC+7c29283041-r0/temp/log.do_fetch.4126828
NOTE: recipe qtquickcontrols-5.15.2+gitAUTOINC+7c29283041-r0: task do_fetch: Failed
ERROR: Task (/mnt/ssd/jenkins/workspace/dey-github-gatesgarth/dey.gatesgarth/sources/meta-qt5/recipes-qt/qt5/qtquickcontrols_git.bb:do_fetch) failed with exit code '1'
ERROR: qtdeclarative-native-5.15.2+gitAUTOINC+104eae5b17-r0 do_fetch: Fetcher failure: Unable to find revision 104eae5b17b0ec700391e9539ee3a4f638588194 in branch 5.15.2 even from upstream
ERROR: qtdeclarative-native-5.15.2+gitAUTOINC+104eae5b17-r0 do_fetch: Fetcher failure for URL: 'git://code.qt.io/qt/qtdeclarative.git;name=qtdeclarative;branch=5.15.2;protocol=git'. Unable to fetch URL from any source.
ERROR: Logfile of failure stored in: ../ccimx6qpsbc/tmp/work/x86_64-linux/qtdeclarative-native/5.15.2+gitAUTOINC+104eae5b17-r0/temp/log.do_fetch.3859878
NOTE: recipe qtdeclarative-native-5.15.2+gitAUTOINC+104eae5b17-r0: task do_fetch: Failed
ERROR: Task (virtual:native:/mnt/ssd/jenkins/workspace/dey-github-gatesgarth/dey.gatesgarth/sources/meta-qt5/recipes-qt/qt5/qtdeclarative_git.bb:do_fetch) failed with exit code '1'
ERROR: qtdeclarative-5.15.2+gitAUTOINC+104eae5b17-r0 do_fetch: Fetcher failure: Unable to find revision 104eae5b17b0ec700391e9539ee3a4f638588194 in branch 5.15.2 even from upstream
ERROR: qtdeclarative-5.15.2+gitAUTOINC+104eae5b17-r0 do_fetch: Fetcher failure for URL: 'git://code.qt.io/qt/qtdeclarative.git;name=qtdeclarative;branch=5.15.2;protocol=git'. Unable to fetch URL from any source.
ERROR: Logfile of failure stored in: ../ccimx6qpsbc/tmp/work/cortexa9t2hf-neon-dey-linux-gnueabi/qtdeclarative/5.15.2+gitAUTOINC+104eae5b17-r0/temp/log.do_fetch.3872350
NOTE: recipe qtdeclarative-5.15.2+gitAUTOINC+104eae5b17-r0: task do_fetch: Failed
ERROR: Task (/mnt/ssd/jenkins/workspace/dey-github-gatesgarth/dey.gatesgarth/sources/meta-qt5/recipes-qt/qt5/qtdeclarative_git.bb:do_fetch) failed with exit code '1'
ERROR: qtbase-native-5.15.2+gitAUTOINC+40143c189b-r0 do_fetch: Fetcher failure: Unable to find revision 40143c189b7c1bf3c2058b77d00ea5c4e3be8b28 in branch 5.15.2 even from upstream
ERROR: qtbase-native-5.15.2+gitAUTOINC+40143c189b-r0 do_fetch: Fetcher failure for URL: 'git://code.qt.io/qt/qtbase.git;name=qtbase;branch=5.15.2;protocol=git'. Unable to fetch URL from any source.
ERROR: Logfile of failure stored in: ../ccimx6qpsbc/tmp/work/x86_64-linux/qtbase-native/5.15.2+gitAUTOINC+40143c189b-r0/temp/log.do_fetch.3810280
NOTE: recipe qtbase-native-5.15.2+gitAUTOINC+40143c189b-r0: task do_fetch: Failed
ERROR: Task (/mnt/ssd/jenkins/workspace/dey-github-gatesgarth/dey.gatesgarth/sources/meta-qt5/recipes-qt/qt5/qtbase-native_git.bb:do_fetch) failed with exit code '1'
ERROR: qtbase-5.15.2+gitAUTOINC+40143c189b-r0 do_fetch: Fetcher failure: Unable to find revision 40143c189b7c1bf3c2058b77d00ea5c4e3be8b28 in branch 5.15.2 even from upstream
ERROR: qtbase-5.15.2+gitAUTOINC+40143c189b-r0 do_fetch: Fetcher failure for URL: 'git://code.qt.io/qt/qtbase.git;name=qtbase;branch=5.15.2;protocol=git'. Unable to fetch URL from any source.

Not sure what is the proper fix for this. Maybe changing the not-existing branch for nobranch=1 in the recipes is the way to go, but I'm not sure if this has side effects.

I'm aware of this issue, but I don't plan to add nobranch in meta-qt5, see https://github.com/meta-qt5/meta-qt5/pull/377#pullrequestreview-585699882

I'm running into this problem as well.  Is there a workaround for it?

Not really.  The real answer is to quit picking "Z" branches where it's versioned X.Y.Z or use a specific githash for the commit in question.  Messy, but the problem people have is that there's upstream devs that absolutely don't have a handle on this.- they will delete the offending tags or worse.  It was rather annoying trying to use the version tags that FreeRTOS has because they put the tags in and apparently deleted them or propagated them from a mirror improperly.
@shr-project : SOMETHING needs to be done.  It makes it where only Master is safe for people to use- and at some point, we can't do reproducible builds because your stuff and the Qt projects' is nothing to rely upon.  If I'm mirroring it because I can't rely on it's history, etc. to be consistent, why bother?

SRCREV uses specific git hashes, but bitbake fetcher also checks that these git hashes are on the specified branch. Which isn't true after they deleted the X.Y.Z branches which they asked me to use instead of X.Y branches where the releases used to be downmerged (a I was waiting with meta-qt5 updates until that happened).

Merging nobranch=1 in meta-qt5 active branches wouldn't fix projects which are using older revision (for whatever reason, I know about big project still using 5.12.11 instead of warrior branch head with 5.12.12 and they have the same issue, for them I've created jansa/warrior-overrides branch where this is fixed (with only one nobranch in qtbase recipe, because only qtbase v5.12.12 tag isn't in any branch, other were downmerged to 5.12).
Others need to deal with it on their own or ask TQC to restore the branches as I said there "Branches are cheap, breaking existing projects like meta-qt5 without good reason is not.".


Add offline upgrade reconciler to sandbox controller

This will allow us to upgrade the subclusters in a sandbox. There is a new image field in the VerticaDB for the sandbox. When that is changed, it will cause the sandbox controller to drive the upgrade. The vdb controller will check if a sandbox needs an upgrade and will wake up the sandbox controller by setting the vdb resource version in the configmap annotations.
You can follow a sandbox upgrade progress through the upgradestate field in the sandbox status.

I have partially tested this. Sandbox Offline upgrade cannot complete successfully for now because there is no way to find sandboxed pods. We use sandboxname label to filter pods but it is not set yet. You work on that needs to go in first.

Ready for another round.

What happens if we pick a really old version for the sandbox? Say like we pick version 12.0.4. It doesn't sandboxing. Are we able to get out of this and go back to a good version? Or does the vdb verification in the sandbox controller prevent that?

@spilchen Do you mean if we change the sandbox version to 12.0.4?

What happens if we pick a really old version for the sandbox? Say like we pick version 12.0.4. It doesn't sandboxing. Are we able to get out of this and go back to a good version? Or does the vdb verification in the sandbox controller prevent that?

@spilchen Do you mean if we change the sandbox version to 12.0.4?

Yes. If the user pick a really old image for the sandbox. Is there a way to get out of that scenario? Or will the vdb verifier in the sandbox controller prevent that.

What happens if we pick a really old version for the sandbox? Say like we pick version 12.0.4. It doesn't sandboxing. Are we able to get out of this and go back to a good version? Or does the vdb verification in the sandbox controller prevent that?

@spilchen Do you mean if we change the sandbox version to 12.0.4?

Yes. If the user pick a really old image for the sandbox. Is there a way to get out of that scenario? Or will the vdb verifier in the sandbox controller prevent that.

vdb verifier checks only the vdb version(annotations) so not really useful for sandbox upgrade and we don't know the  new image is bad until we create new pods running it. I think what is needed here is to update the imageversion_reconciler. We can't rely on vdb annotations to get the old sandbox version so I think we need to cache that in the configmap annotations. So during offlineupgrade, at checkVersion step, when we call imageversion_reconciler, we check upgrade path, deployment type, the new version and update the version in the configmap. What do you think?

The latest changes look good. I'll approve after I see the next set of changes that will set the version annotation in the sandbox ConfigMap.

@spilchen Ready for another round.

Ready!


Cypress tests interact with each other

The teardown of the database between each cypress test seems to fail sometimes, leading to other knock-on test failures.

Still can't figure this one out @jdbocarsly...

This part, at least, is closed by #504


Can't find path specified

When I go to install via the run.bat, a cmd window pops up with this message. I thought it was a folder permission problem but I am not able to change it. I checked the bat file to see if the file paths are correct, and redownloaded the the Fate_Grand_Order__Lua. None of it seems to fix the problem of running the run.bat file. I tried downloading a daemon off of another place and running its .bat and experienced the same message "Can't find path specified". Was wondering if anyone else has had a similar issue or if you have an idea on what to do.

www.dropbox.com/s/04sncdwv4ufpbzz/ama_daemon_zh.v1.7.1.zip?dl=1
Try this?
"Please keep the file/folder structure intact"

I still have the issue. I haven't changed the file folder structure (Fate-Grand-Order_Lua \ama_daemon folder). My usb debugging mode is on, I tried moving the folders (of the Lua\ama_daemon) to different directories in my phone to run the .bat in each scenario but there was no change whatsoever. It might be an issue exclusive to my phone.

I am executing the daemon from my PC. I don't think I can do it from my phone in the first place. Your instructions seem clear on the manual. It's not your fault.


Tokeniser on displaCy not consistent.

Hi there,
Using the (wonderful!) displaCy visualiser for prototyping some ideas.
However I keep seeing many inconsistencies between POS tagger in displaCy and the POS tagger in the spacy python package- displaCy usually correct. Is this expected behaviour?
Thanks in advance!
Dave

Hey,
Could you give some examples? At a guess you might be referring to some extra token merging that displaCy does to post-process the spaCy output. The function can be seen here: https://github.com/spacy-io/displacy-server/blob/master/displacy/handlers.py#L31

HI @honnibal ,
Thanks for spaCy. I believe I have an example of different behaviour between the dependency tree from Displacy and Spacy.
If one tries the sentence: "A two-tier scheme (Pang and Lee, 2004) where sentences are first classified as subjective versus objective , and then applying the sentiment classifier on only the subjective sentences further improves performance."
The difference then is:

Displacy online: "improves" -> nsubj -> "scheme".
Spacy python package: "improves" -> csubj -> "applying".

The Displacy version being the correct one.
Thanks!

I'm going to tentatively close this — hopefully whatever the issue was, it's resolved in 1.0. Please reopen if things are still weird.


channeldb/channel.go: remove unsignedAckedUpdatesKey when we receive revocation

This changes the removal logic for the updates stored under unsignedAckedUpdatesKey. Before this change, the logs were removed when we signed the next commitment. However, if we sign a commitment and go down, the unsignedAckedUpdates will have been removed. This means that if a settle/fail was just signed for, there won't be any way to restore it since it was just deleted.
This fixes another long-standing force close bug that could occur with missing updates in the update logs. Since we want to remove the updates after they're completely locked in, we filter them when we receive a revocation. We filter as it's possible for more things to have been added to the key since our last signature.
For additional context, see the unit test or the commit descriptions of 1b9db8e and 90f2cb9

New itest error message:
<time> [ERR] LNWL: ChannelPoint(<chan_point>): Unable to fetch available balance: parent entry 3 for update 3 had zero local add height

Interestingly, it didn't cause an actual test failure. Perhaps we also need #4430 along-side this to have a clean build?

PTAL @Roasbeef @cfromknecht the PR is now built on top of #4430 and the itests pass.

Blocked by #4430 ?

@Crypt-iQ needs rebase


fix(deps): Update stack definition member versions

Update stack definition member versions

/run

/run pipeline

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


mLink Relay Module  - READ_RLY0() fails to return relay state, after changing I2C address

Cancelled

Raised in error


Allow MVT tiles without CartoCSS

In order to make requesting MVT tiles more developer-friendly, we need to remove the hard requirement on options.cartocss[_version].
Let's start with a simple approach, when:

All cartodb layers have the cartocss option: allow to request PNG and MVT tiles.
All cartodb layers miss cartocss option: it's only possible to request MVT tiles; when requesting PNG tiles, we return an error.
The cartodb layers mix cartocss with no cartocss option: we return an error at instantiation.

Related PR:

https://github.com/CartoDB/Windshaft-cartodb/pull/803
https://github.com/CartoDB/Windshaft/pull/575
https://github.com/CartoDB/grainstore/pull/139

Ready for CR

This is already done.


Build macOS binaries

Now available at: https://github.com/weavery/sworn/releases/download/1.0.0/sworn-1.0.0-macos.tar.gz


🇫🇷 [Translation WIP] Official French Translation from Vuejs-FR

We are the Vue-FR team. We provide our translation on Vue Router part (with cross consistency from others Vue documentations).
Fell free, if you prefer, to accept this pull request when all (or a lot of) pages will be translated but this pull request will help others translators to not done the review twice.
French adding:

Adding of french entry into LANGS.md
Translation of installation.md done.
Translation of essentials/getting-started.md done.
Translation of advanced/data-fetching
Translation of advanced/scroll-behavior.md
Translation of advanced/lazy-load.md
Translation of advanced/transitions.md
Translation of api/component-injections.md
Translation of api/options.md
Translation of api/route-object.md
Translation of api/router-instance.md
Translation of api/router-link.md
Translation of api/router-view.md
All others web pages with the following french mention to top meaning « work in progress, help us if you want » :

Cette page est en cours de traduction française. Revenez une autre fois pour lire une traduction achevée ou participez à la traduction française ici.

Process:

We will track all futur modification from en directory because in our working branch we use the en directory to work. All futur en modification at an already translated position will warns us with a conflict.
We reverse all work done from :working/en to :dev/fr and we will provide some pull request each time a set of pages will be translated.

@Haeresis is this PR ready?

Yeah @yyx990803, this PR is ok.

Hi @posva and @yyx990803
All files listed in first message are already translated and reviewed by one person or two people (depend of file). We will improve review each time the file will be updated later and it's not a problem to present work.

If you merge it from now (prefered solution for us):

PRO : the first part will be already accessible to french people and part not still translated will inform potential translator to help us (because a message « under translation, help us » is used
CON : All documentation is not in french currently.

If you merge it later:

PRO : when the merge will be done, all translation will be french
CON : that will not allows us to do some « communication » using documentation to ask help for translation not already done.

Ok, I'll merge it now then


Sand does not work properly

Sand cannot be put into any sieves besides tier 1 string one, and does not drop anything even after hundreds of sand inputs. It is stopping my ex nihilo skyblock survival. I cannot get any drops from it so I cannot get ancient spores.

Are there any recipes using sand visible in JEI please upload your SieveRegistry.json file to pastebin and post a link here.

what is JEI and how do i find SieveRegistry.json?

JEI is a mod which lets you view recipes, creatio has support for it and it can be used to see what items drop from what blocks+meshes. SieveRegistry.json would be in /configs/exnihilocreatio and if enabled in /configs/exnihilocreatio/exnihilocreatio.cfg is used to customize the drops that different block+mesh combinations give.

When you have more information please open a new issue.


Clearer documentation

Because line 66 is a double negative, I had to read it a few times to make sure I understood it correctly.
Thanks for your work on this package, and pardon the trivial nature of this pull request.
!false :gun:

Sorry for the confusion. You're the second person who brought it up, so I re-worked to match the sentiment I was going for in #67.


[PE-D][Tester D] list command does not show animals in alphabetical order

The user guide mentions that the list command should sort the list by alphabetical name order, but it does not.

Labels: severity.Medium type.FunctionalityBug
original: thaddeusong/ped#1

Same as #176


Charts with multiple series doesn't seem to work

I was trying to add two series to one chart using the following code:
Import-Module -Name ImportExcel -Verbose
$raw = @"
A,B,C,Date
2,1,1,2016-03-29
5,10,1,2016-03-29
"@
$data = ConvertFrom-Csv -InputObject $raw
Remove-Item -LiteralPath C:\temp\temp.xlsx
$data | Export-Excel -Path c:\temp\temp.xlsx -AutoSize -TableName Impressions -Show -ExcelChartDefinition @(
    New-ExcelChart -Title Impressions -ChartType Line -Header "Something" -XRange "Impressions[Date]" -YRange @("Impressions[B]","Impressions[A]")
)

But it doesn't seem to work, it would appear that XRange referenced on https://github.com/dfinke/ImportExcel/blob/master/Export-Excel.ps1#L359 should actually be YRange (as that is the property it indexes into in the loop: https://github.com/dfinke/ImportExcel/blob/master/Export-Excel.ps1#L365).

Thanks for posting. I like where this is heading. I had not considered this approach.
I'll investigate. Feel free to do a PR if you get there first.


Using pywal as a module fails

I have the script mentioned as the simple example in the Using pywal as a module page. It's been working really well for the past 6 months, but recently started to pose problems. The most noticeable one is not setting the wallpaper, but changing the terminal colours for open terminals only. Reinstalling both pywal and python yielded no solution. The output of running the script is:
Traceback (most recent call last):
  File "/home/mihai/bin/wal.py", line 41, in <module>
    main()
  File "/home/mihai/bin/wal.py", line 20, in main
    pywal.sequences.send(colors, False)
  File "/usr/lib/python3.6/site-packages/pywal/sequences.py", line 87, in send
    util.save_file(sequences, os.path.join(cache_dir, "sequences"))
  File "/usr/lib/python3.6/posixpath.py", line 80, in join
    a = os.fspath(a)
TypeError: expected str, bytes or os.PathLike object, not bool

The thing is, when using the wal command (/usr/bin/wal), everything works and there are no errors.
OS: Void Linux
pywal version: 3.3.0
python version: 3.6.9
If anyone needs the script:
#!/usr/bin/python
"""Simple script for wal api."""
import pywal

def main():
    """Main function."""
    # Validate image and pick a random image if a
    # directory is given below.
    image = pywal.image.get("/home/mihai/.config/wallpapers/")

    # Return a dict with the palette.
    # Set quiet to 'True' to disable notifications.
    colors = pywal.colors.get(image)

    # Apply the palette to all open terminals.
    # Second argument is a boolean for VTE terminals.
    # Set it to true if the terminal you're using is
    # VTE based. (xfce4-terminal, termite, gnome-terminal.)
    pywal.sequences.send(colors, False)

    # Export all template files.
    pywal.export.every(colors, cache_dir)

    # Export individual template files.
    pywal.export.color(colors, "xresources", "/home/mihai/.Xresources")
    pywal.export.color(colors, "shell", "/home/mihai/colors.sh")

    # Reload xrdb, i3 and polybar.
    pywal.reload.env()

    # Reload individual programs.
    pywal.reload.i3()
    pywal.reload.polybar()
    pywal.reload.xrdb()

    # Set the wallpaper.
    pywal.wallpaper.change(image)

main()

The issue is the fact in the new versions of pywal, the send function looks like so:
def send(colors, cache_dir=CACHE_DIR, to_send=True, vte_fix=False):

This means one has to change:
pywal.sequences.send(colors, False)

To:
pywal.sequences.send(colors, vte_fix=False)

I think it should be also noted that the latest copy of the Wiki documentation has not been updated to include this and reads:
pywal.sequences.send(colors, vte=False)

instead of:
pywal.sequences.send(colors, vte_fix=False)

I've updated the Wiki documentation, thanks for the heads up. :+1:


[DOC] Update README to include license information

Add License information in README file.

I would like to work on this.

https://github.com/abelljs/abell#-license
Its there now. It was added in #176


Only warn on errors in deleting LFS orphaned files during repo deletion

Codecov Report

Merging #7213 into master will increase coverage by <.01%.
The diff coverage is 0%.

@@            Coverage Diff             @@
##           master    #7213      +/-   ##
==========================================
+ Coverage   41.52%   41.53%   +<.01%
==========================================
  Files         449      449
  Lines       61306    61303       -3
==========================================
+ Hits        25460    25462       +2
+ Misses      32492    32488       -4
+ Partials     3354     3353       -1

Impacted Files
Coverage Δ

models/admin.go
81.63% <0%> (ø)
:arrow_up:

models/repo.go
48.35% <0%> (+0.07%)
:arrow_up:

models/unit.go
62.16% <0%> (-5.41%)
:arrow_down:

models/repo_list.go
73.09% <0%> (+1.01%)
:arrow_up:

modules/log/event.go
65.64% <0%> (+1.02%)
:arrow_up:

Continue to review full report at Codecov.

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


http.port override for ingress is not reflected in ports field for ingress returned using kubectl get ingress command.

Rancher server version - v1.2.0-pre2-rc4
Steps to reproduce the problem:
Create k8s environment.
Upgrade to k8s 1.3 version.
Create ingress rule by providing http.port override for ingress .
This is not reflected in ports field for ingress returned using kubectl get ingress command.

This issue is also seen in v1.2

Changing the target to 1.2. If I remember correctly, port was introduced to ingress only in k8s 1.3.

This is also an issue with k8s v1.2 in which we support http.override.

1.2 doesn't display the ingress port on ingress list/describe, and it wasn't allowed to set it using 1.2 Apis:
kubectl get ingress
NAME      RULE      BACKEND            ADDRESS   AGE
test      -         nginx-service:80             1s

> kubectl describe ingress test
Name:                   test
Namespace:              default
Address:                <IP_ADDRESS>
Default backend:        nginx-service:80 (<IP_ADDRESS>:80)
Rules:
  Host  Path    Backends
  ----  ----    --------
Annotations:
Events:
  FirstSeen     LastSeen        Count   From                            SubobjectPath   Type            Reason  Message
  ---------     --------        -----   ----                            -------------   --------        ------  -------
  1m            1m              1       {loadbalancer-controller }                      Normal          CREATE  default/
test
  42s           42s             1       {loadbalancer-controller }                      Normal          CREATE  ip: 127.
0.0.1
  42s           42s             1       {loadbalancer-controller }                      Normal          UPDATE  default/
test

Will have to investigate to see if k8s lets you set it for 1.3. Moving the release target back to Rancher 1.2

@sangeethah @deniseschannon ^^

@sangeethah this port field is not enabled on the Kubernetes Ingress API. It is kubectl client populating it based on the certificate presence in ingress resource:
https://github.com/kubernetes/kubernetes/blob/5eb75e4eb9d8a045e4d9cfbd1ff7bb84ef6d8f36/pkg/kubectl/resource_printer.go#L1180
func formatPorts(tls []extensions.IngressTLS) string {
	if len(tls) != 0 {
		return "80, 443"
	}
	return "80"
}

Lets keep this bug open for the future in case Kubernetes will allow to set the port on ingress. Today's Rancher's ingress annotation that lets you add the port to LB that is diff from 80/443, is a backdoor, and the information about it should be read from annotations as well.

Closing, will reopen if k8s allows to set port fields to custom values via API


Hhaljedd python

Class_01 finished!

Coverage increased (+29.9%) to 68.571% when pulling 4f464914f841ec4441a6fa0f3da51635e49441b5 on hhaljedd_python into 6abdba2cc53c804797fdc7d7c40b42eb0528d368 on master.

Coverage increased (+40.03%) to 78.667% when pulling 98e52a49139d292ba0ee098de33a4d89cad53f66 on hhaljedd_python into 6abdba2cc53c804797fdc7d7c40b42eb0528d368 on master.

Coverage increased (+47.4%) to 86.076% when pulling 27a8d5d8a879757d8c1a35df0e44b293a2547800 on hhaljedd_python into 6abdba2cc53c804797fdc7d7c40b42eb0528d368 on master.

Coverage increased (+47.4%) to 86.076% when pulling d12869bb89b25327986962ed2906d0a8a707a5a8 on hhaljedd_python into 6abdba2cc53c804797fdc7d7c40b42eb0528d368 on master.

Coverage increased (+52.9%) to 91.566% when pulling a1fae2a5f9b8a1885169d17332b7445841a3465e on hhaljedd_python into 6abdba2cc53c804797fdc7d7c40b42eb0528d368 on master.

Coverage increased (+52.9%) to 91.566% when pulling f8d9e653d1bec7aac86032aa65b392eeeb0d6ab5 on hhaljedd_python into 6abdba2cc53c804797fdc7d7c40b42eb0528d368 on master.

Coverage increased (+53.3%) to 91.954% when pulling 94b474dbd13b80969f6408e53d02451c0cf5dbe0 on hhaljedd_python into 6abdba2cc53c804797fdc7d7c40b42eb0528d368 on master.

Coverage increased (+53.3%) to 91.954% when pulling 7b7c471cae1ae0c963f9059b3df38ab06f95621c on hhaljedd_python into 6abdba2cc53c804797fdc7d7c40b42eb0528d368 on master.

Coverage increased (+60.3%) to 98.889% when pulling d15fe29ed567722bcb4ae0eec4aee350b30c5595 on hhaljedd_python into 6abdba2cc53c804797fdc7d7c40b42eb0528d368 on master.

Coverage increased (+57.2%) to 95.833% when pulling 6164a433ca2f7108369bf27b118779d48c8cc023 on hhaljedd_python into 6abdba2cc53c804797fdc7d7c40b42eb0528d368 on master.

Coverage increased (+60.3%) to 98.889% when pulling 7259fdb07a3572af44e2c488ac774c9b78283bdb on hhaljedd_python into 6abdba2cc53c804797fdc7d7c40b42eb0528d368 on master.

Coverage increased (+60.3%) to 98.889% when pulling f82975b103f1b0aeb32d3c4297807935268cbf0e on hhaljedd_python into 6abdba2cc53c804797fdc7d7c40b42eb0528d368 on master.

Coverage increased (+61.4%) to 100.0% when pulling 9535671b3884817d0809c1158550394e6055ac21 on hhaljedd_python into 6abdba2cc53c804797fdc7d7c40b42eb0528d368 on master.

Great you had 100%! ;-)


Add static keyword to parent function sig in error

If the "static" keyword is omitted on a subclass function, this is (correctly) interpreted as breaking polymorphism but the error message displayed doesn't include it, and so it can be more difficult than necessary to figure out what's going wrong.
This change fixes that.

I'm not so sure about this, static functions aren't necessarily overridden, I'm not sure this path makes sense here, should this error really appear for a static method?

I'm not sure if that's the case or not, but it currently does appear, thanks to line 1689.


BUG: multi-indexing sorting on axis=1 on >0 levels

In a DataFrame with MultiIndex, sorting on the level with date values does not do anything (order remains unchanged). This happens for both row and column indexes. In my case I am starting with a string index, converting that to datetime index, have not tried with datetime values at the start.
Code Sample, a copy-pastable example if possible
df = pd.DataFrame([[1, 2], [6, 7]])
df.columns = pd.MultiIndex.from_tuples([(0, '8/11/2016 12:00:00 AM'), (0, '8/9/2016 12:00:00 AM')], names=['l1', 'Date'])
df.columns.set_levels(df.columns.levels[1].to_datetime(), level=1, inplace=True)
df.sort_index(axis=1, level=1)

Expected Output
Columns ordered by date is the expected output.
Date	2016-08-09 00:00:00	2016-08-11 00:00:00
0	2	1
1	7	6

Actual output are columns in the original sort order (not even lexicographically sorted).
output of pd.show_versions()
INSTALLED VERSIONS
commit: None
python: 3.5.1.final.0
python-bits: 64
OS: Windows
OS-release: 10
machine: AMD64
processor: Intel64 Family 6 Model 60 Stepping 3, GenuineIntel
byteorder: little
LC_ALL: None
LANG: en_US.UTF-8
pandas: 0.18.1
nose: 1.3.7
pip: 8.1.1
setuptools: 20.3
Cython: 0.23.4
numpy: 1.11.0
scipy: 0.17.1
statsmodels: 0.6.1
xarray: None
IPython: 4.1.2
sphinx: 1.3.1
patsy: 0.4.0
dateutil: 2.5.1
pytz: 2016.2
blosc: None
bottleneck: 1.0.0
tables: 3.2.2
numexpr: 2.6.0
matplotlib: 1.5.1
openpyxl: 2.3.2
xlrd: 0.9.4
xlwt: 1.0.0
xlsxwriter: 0.8.4
lxml: 3.6.0
bs4: 4.4.1
html5lib: None
httplib2: None
apiclient: None
sqlalchemy: 1.0.12
pymysql: None
psycopg2: None
jinja2: 2.8
boto: 2.39.0
pandas_datareader: None

xref #13431

I seem to remember this exact issue, but can't find ATM.

As discussed in some of those issues, MultiIndex sorting is based on the ordering in the levels.  The levels are sorted on constructions, but not on re-assignment.  So a couple workarounds would be to construct the mi with the converted levels, or the index also has a sort_values() method that sorts by values.
In [22]: df.reindex(columns = df.columns.sort_values())
Out[22]:
l1            0
Date 2016-08-09 2016-08-11
0             2          1
1             7          6

MultiIndex sorting is based on the ordering in the levels.

Is this something we could consider changing?
In my opinion, this behaviour does not make much sense from a user perspective. If you want such behaviour, you can now use explicitly a CategoricalIndex. For most users of MultiIndex, the fact that it is implemented with label/levels (codes/categories) is only an implementation detail.

Rather than basing MultiIndex sorting on something other than sorted levels, what about requiring that each level always be sorted? I believe this is already done by default in every case where pandas constructs the MultiIndex levels, so this would only breaks cases where levels are provided explicitly in the MultiIndex constructor or set using set_levels.

That seems fairly reasonable, although the sorting behavior is documented, and I'm sure it would break somebody's code, though probably not too painful to detect/deprecate in 0.19, fix in 0.20 / 1.0?

Yes, assuredly someone relies on the existing behavior, but we could probably deprecate it. In my opinion the fact that levels and labels can be sorted differently can be a major source of confusion.
One option with set_level would be to automatically factorize new levels and change the underlying integer codes, too. That's probably not a good idea if someone explicitly wrote MultiIndex(levels, labels), though.

@chris-b1 : are you referring to the sentence "the present implementation of MultiIndex requires that the labels be sorted for some of the slicing"? Actually, I think most people (including me, until few minutes ago) interpret "the labels be sorted" as "the MultiIndex be sorted", not "the initialization arrays for .levels be sorted". And if instead they give the second interpretation, well then they should already be following the design proposed by @shoyer .
So if I'm not missing anything, it would be possible and great to have already in 0.19 the following behaviour: for each component of .levels passed at initialization, if it is not sorted, sort it, rearranging the correspondent component of .labels.
By the way: another case in which bad things currently happen is in a .join() of unsorted dataframes:
In [1]: import pandas as pd
   ...: labels = ['c', 'b']
   ...: comp = pd.DataFrame(index=pd.MultiIndex.from_product([labels, labels],
   ...:                                names =['uid', 'oth']))
   ...: idists = pd.Series(0, index=labels, name='Charles')
   ...: idists.index.name = 'uid'
   ...: cc = comp.join(idists, how='inner').sort_index()
   ...: len(cc.index.levels), cc.index.lexsort_depth, cc.index.is_monotonic
   ...:
Out[1]: (2, 0, True)

I meant this note at the end of paragraph, though I agree that isn't super clear either.

... labels are grouped and sorted by the original ordering of the associated factor at that level. Note that this does not necessarily mean the labels will be sorted lexicographically!

Yes, it is rather hidden in the docs that sorting does sort according to the order of the levels.
I am +1 to change the behaviour of sort to actually sort. But, if we do this by sorting the levels (on initialization, or when sorting), how many people would rely on the actual order of the levels? Eg if you use set_levels, you implicitly rely on the order ...

Looking at the MultiIndex docs, it looks like sort_index() was originally written to ensure that a MultiIndex is "lexsorted" in the way that MultiIndex needs for efficient operations (sorted integer labels a.k.a. codes #13443). I would be much happier using something more explicit like sort_index_codes() for that, though, and reserving sort_index() for actually sorting the index.
I'm less certain now that it's the right thing to always require that levels be sorted. There are some cases where this lets you do different types of indexing efficiently, and right now we expose most of the MultiIndex implementation directly as public API, so people are indeed probably making use of this.

While I understand that both behaviours can be useful, to my eyes it is a bit unnecessary to provide another way (than Categoricals) to impose an order on labels in a level. I'd rather have nice parameters that, for instance, create the required Categoricals on the fly when creating a MultiIndex.from, if a specific ordering is desired.
But if supporting the two different behaviours is considered worth the effort, then maybe a parameter (e.g. codes_sort=False) in sort_index() is sufficient, rather than adding a new method?
What I strongly agree on is that the default behaviour should be changed, despite the backwards incompatibility.


Various fixes for C++ project and item templates

This is a partial adoption of #3619 by @JaiganeshKumaran in order to expedite the merging of the changes from that PR which do not need additional time for discussion. The individual changes that were extracted from the aforementioned PR are as follows:

Removed usage of InitializeComponent as it's no longer recommended by C++/WinRT (see https://github.com/microsoft/cppwinrt/tree/master/nuget#initializecomponent for more details).
Removed Microsoft copyright notice.
Removed #include XAML headers in a template control header. This was in the C++/WinRT templates because a runtime component will not include XAML headers in pch.h, which is no longer the case with a WinUI 3 runtime component.
Made the WinUI 3 runtime component "desktop-only" as WinUI 3 cannot be used by UWP apps. This is a fix for #1780. (Note that unlike the original PR the source directory structure is not being changed in order to minimize potential merge conflicts.)
Removed App.idl because it's empty and not needed.
Indented App.xaml.cpp's content inside the implementation namespace, rather than using namespace for consistency with the rest of the code. Also removed using namespace for namespaces that aren't actually used (Controls and Navigation namespaces were needed for Frame navigation, which isn't performed in the WinUI 3 template. IInspectable is available as an alias in every WinRT implementation type, thus doesn't require prefixing it with Windows::Foundation).

Additionally, this PR replaces <ProjectTypeTag>uwp</ProjectTypeTag> with <ProjectTypeTag>WinUI</ProjectTypeTag> (or just adds the latter if the former was not present at all) in the item templates. I don't believe this tag is surfaced anywhere in the Visual Studio UI but the consistency makes me happier.

/azp run

/azp run

@evelynwu-msft You made all the categories lower-case:

Looks really weird:

cc @riverar


Addition of accelerometer rates and gains

Added the ability to also change accelerometer gains. Thoroughly tested everything and willing to upload my test scripts here.
accel_rates_gains_test_scripts.zip

Everything is corrected and ready to merge. Thanks everybody!

Thank you for your contribution.
This library has been split into separate libraries for the magnetometer and accelerometer. The accelerometer code will  be shared with another version of the LSM303 that uses the same accelerometer but not the magnetometer and this repo will be archived.
The new, split libraries
https://github.com/adafruit/Adafruit_CircuitPython_LSM303_Accel
https://github.com/adafruit/Adafruit_CircuitPython_LSM303DLH_Mag
The library for the new magnetometer
https://github.com/adafruit/Adafruit_CircuitPython_LSM303AGR_Mag
Unfortunately, I didn't check this PR until now and reproduced most of your work in the new libary. My apologies! You did however catch some typos that had made it into this library as well as the arduino libraries.
Thanks again for your contribution.


lower required glibcxx version

Links to #9

Thank you @cocoa-xu! Let's give compiling with 20.04 a try and, if people still run into issue, having this as reference will be very helpful. :)

Yeah I was near there but it seems that we still have some weird floating-point issues with ppc64le, as well as some issue with the emu-aarch64-static emulator that would cause a segementation fault when doing mix deps.get.

Hi @josevalim, I decided to only compile x86_64, i686 and s390 on manylinux2014 while keeping the rest of Linux targets compiled on ubuntu-20.04. Doing so should lower the required glibcxx version to 2.14 for x86_64, i686 and s390.
Moreover, as I believe most users are using x86_64-linux-gnu, lowering the glibcxx version should address the issue for users who have to work with some old versions of Linux.

Sounds good to me, as you prefer!


feat: improve i18n

Related to #310 (it does not fixes it completely).
Missing i18n in the UI:

flags
warnings
wiki: I'm not sure if we wanna translate the wiki as the docs is only in english. For instance: https://github.com/NodeSecure/js-x-ray/blob/master/docs/encoded-literal.md. Do we wanna translate theses docs ?

flags & warnings probably needs a @nodesecure/i18n new API that exports all translation. Do you agree ?
Missing i18n in the CLI:
As discussed in the issue, it might be a good opportunity to build our own package in TopCli that support translations. WDYT?

[!NOTE]
Also updated dependencies & GHAs

Draft until https://github.com/NodeSecure/i18n/pull/124 merged & releaed

flags & warnings probably needs a @nodesecure/i18n new API that exports all translation. Do you agree ?

Related to https://github.com/NodeSecure/i18n/issues/114 I guess ?


Fix: Tiny bugs and supported by Xcode7

Fix:

SAS token creator is wrong. 'sr' parameter require last position.
APNS native notification REST API returns 201.
WindowsAzureMessaging.framework doesn't support ENABLE_BITCODE. Currently, this sample require the settings of 'NO' in ENABLE_BITCODE of Xcode7

Hi @buchizo, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no contribution license agreement is required at this point. Real humans will now evaluate your PR.

TTYL, AZPRBOT;

@buchizo, Thanks for signing the contribution license agreement so quickly! Actual humans will now validate the agreement and then evaluate the PR.
Thanks, AZPRBOT;

Thanks for this contribution - sending to the author for review.

Lets merge this.

just a sec there might be another code change needed with this...

merge this. I can touch it up


Dismiss Chatterino update until the next version

Checklist

[X] I'm reporting a problem with Chatterino
[X] I've verified that I'm running the most recent nightly build or stable release
[X] I've looked for my problem on the wiki
[X] I've searched the issues and pull requests for similar looking reports

Describe your issue
If I am not interested in updating, then I remove the update button so that there is more space for tabs. But if you restart Chatterino, the update button appears again. You have to remove it every time, just because that's how it works.
My desire to update Chatterino does not depend on the update button in any way — it depends on whether there are changes in the update that I am interested in. This behavior looks ill-conceived or like a bug, because it is weird to update only to remove the update button. By the way, when I was on the beta version before the 2.5.0 release, the update button suggested that I downgrade the version and did not disappear either (for what?).
I suggest that after clicking "Dismiss", do not show the update button until the next version is available. For example, if I dismissed 2.5.1, then the update button should appear only when a version newer than 2.5.1 appears.
Screenshots

OS and Chatterino Version
Chatterino 2.5.0 (commit 3aead093 modified) built with Qt 6.5.0 Running on macOS 14.4, kernel: 23.4.0

I don't like the idea of locking someone out of updating because they clicked dismiss, you can already add portable to your modes file to avoid update prompts

I don't like the idea of locking someone out of updating because they clicked dismiss

It's unclear why you decided to defend the current solution, but ok.
To make it clearer to you, I will explain the issue from the other side. In order for the update button not to interfere with the tabs and not constantly remind you of what is clear after 1 time, you need to do one of the following actions:

Update Chatterino, even if you don't need it.
"add nightly to your modes file to avoid update prompts".

Seriously? Let me create the same issue every day until you solve it. It's the same thing.
I can think of a bunch of solutions to fix this issue. For example, you can simply make 3 buttons instead of 2, since you are so attached to the current solution: Postpone this version — Dismiss — Install.
If you don't really see an issue in the current solution, or you're not interested in finding a better solution for it, then I suggest you close this issue as Not planned and that's it.

I Googled what the "model file" is and found that this issue was raised more than 3 years ago. #2163
Then of course I wrote in vain. Obviously, it will not be corrected.

I'm going to ask you to please stop opening issues and discussion if you can't handle responses that aren't exactly what you want. You very often open discussions and close them when you feel like enough time has passed without a response or implementation. This is an open source application and features are added if/when someone does it, not when someone passive-aggressively bumps it.

if you can't handle responses that aren't exactly what you want.

What does this mean? Could you give examples, because now your claim seems to me to be something personal, and not to talk about Chatterino.

You very often open discussions and close them when you feel like enough time has passed without a response or implementation.

We have a different understanding of what "very often" is. I don't think that opening 20-30 issues and discussions in a year is often or very often. I don't think there is any problem in closing some of them after some time for one of the following reasons:

there was a similar issue/discussion, so I created a duplicate;
during our discussions, it became clear that my suggestion is useless — there is no point in keeping it open;
while a suggestion was open and time passed, I decided that it wasn't really useful. I have the right to reject it = close it.

As I said before, you have the right to reopen anything.
Your claims are incomprehensible and not close to me. I don't understand why you don't like everything all the time, and I don't want to deal with it. If we still have to talk, then I suggest we talk about those topics in which there will be a dialogue about Chatterino.
I have nothing more to add on this, because it is weird to waste time on such explanations.


committing a tutorial outline

Awesome, will do. Also, I'm okay to leave this PR open for a bit as I continue to make changes today. Thanks @scottyhq

hey @scottyhq and @jomey, I created a new branch and PR for my toc.yml updates. My goal was to be more up-to-date with the Main, and push a small change.

hmm, not doing too well on the checks (0/4). 😬 When I click the red 'Changes requested' link I don't see anything new that needs attention.  If possible, I'm interested in getting this merged before continuing to develop content.

Looks like your branch was not up to date with main when you created your branch.
Want to do a git merge main when you are on this branch and push anew?
Some failures look unrelated to your changes and due to having 'old' main content.

Thanks, @jomey. I'm up to date with the main now, but still, scoring a 0 on the checks? Notebook outputs were all cleared before doing a git push

after @jomey's comment, I probably should have done a git pull in my core-data branch? I think that's what git wants now since it won't let me git push my new index.md file.

Right, that message comes up b/c we just committed that last change (Update book/_tock.yml) on GitHub, but you didn't have that change locally. So git pull then git push

Awesome! Almost there. Under the 'Details' for the checks you'll see the following:
/home/runner/work/website2022/website2022/book/tutorials/core-datasets/01_campaigns-overview.ipynb:60002: WARNING: Non-consecutive header level increase; 1 to 3 [myst.header]
Jupyter Book is picky about headings for the table of contents. You can't have:
# Title
### Subtitle

It needs to be:
# Title
## Subtitle

awh, I recall that from last year! Thought I was being careful.

Woohoo! You can now see how things look here https://deploy-preview-62--snowex2022.netlify.app/tutorials/core-datasets/index.html . The remaining failing check is for empty cells in the notebook notebook cell 7: empty cell I actually think we're being too strict there, so I'll make a note to change that. But if you remove those placeholder cells for now we can merge

yay, some green! seems to think I still don't have clean notebooks... I'll be MIA for a bit, but afterward will jump back on!

copy! I wondered if blank cells would be an issue. I'll address that, but not yet. Thanks, @scottyhq !

Hey @scottyhq, I see I have some conflicts in the _toc.yml, but I'm not sure how to interpret what git is suggesting.

hey @jomey , I've been watching to make sure I keep up with main. I did a git merge main, git pull, git push again and am not convinced I'm up to date based on the cool branch tool you showed me. I read this as I'm still 7 commits behind. Maybe it never goes to zero while a PR is open, but the goal is to get a little more up-to-date with the main, verses before when I had a "really old main".

we're in the green zone @scottyhq !! (Still adding content to notebooks, but it's the first time all checks have passed). I see 'changes requested' still, but don't see detail on them.

'changes requested' still, but don't see detail on them.

That remains until I manually change to 'approved'.
This looks great, thanks @meganmason ! Nice work loading the dataframe from a gist URL! It looks like the GIF isn't rendering in the preview. I know that the following syntax works (from an icesat-2 hackweektutorial):
<img src='https://media0.giphy.com/media/r3Yeh3aAjsyYGObizC/giphy.gif' alt='cloud bouncing and smiling' style='width:350px' />
https://github.com/ICESAT-2HackWeek/website2022/blob/10229090a94edb3e5734dbc00149b0502ad5396a/book/tutorials/cloud-computing/cloud-computing-tutorial.ipynb?short_path=41df864#L12
But feel free to merge this one whenever, you can always start fresh with additional changes

Fantastic - yes not complete yet, but progress is happening! I'll go ahead and merge and then start fresh when I pick this back up. Thanks for the beta on the gif.


Scene with two cameras

Hello,
I have searched over the internet and have not found the best way to render two different cameras with postprocessing effects, only one camera at a time. I am seeing the framerate drop dramatically, after trying these two approaches:
Option 1: two different effect composers
I have tried the following (not tested code):
// Camera 1
const composer1 = new EffectComposer(renderer, {});
const renderPass = new RenderPass(scene, camera);
const effectPass = new EffectPass(
  camera,
  new VignetteEffect(),
);
composer1.addPass(renderPass);
composer1.addPass(effectPass);

// Camera 2
const composer2 = new EffectComposer(renderer, {});
const renderPass2 = new RenderPass(scene, camera2);
const effectPass2 = new EffectPass(
  camera2,
  new VignetteEffect(),
);
composer1.addPass(renderPass2);
composer2.addPass(effectPass2);

then in the render function:
if (condition) {
   composer1.render()
} else {
   composer2.render()
}

Option 2: two different render passes, one enabled the other not
const composer = new EffectComposer(renderer, {});
const renderPass1 = new RenderPass(scene, camera);
const renderPass2 = new RenderPass(scene, camera2);
const effectPass = new EffectPass(
  camera,
  new VignetteEffect(),
);
const effectPass2 = new EffectPass(
  camera2,
  new VignetteEffect(),
);
composer.addPass(effectPass);
composer.addPass(effectPass2);
composer.addPass(renderPass1);
composer.addPass(renderPass2);

then in the render function:
if (condition) {
   renderPass1.renderToScreen = true;
   renderPass2.renderToScreen = false
} else {
   renderPass1.renderToScreen = false;
   renderPass2.renderToScreen = true;
}
composer.render();

Which would be the best approach to handle this situation?

The performance issue you're describing has to do with three's outputEncoding system which bakes color conversion codecs into shaders. Assuming renderer.outputEncoding is set to anything other than LinearEncoding, changing the renderToScreen flag of any pass will result in a shader recompilation for all involved materials. If a pass renders into an offscreen render target, the output encoding will be LinearEncoding. If a pass renders to screen, the output encoding will be renderer.outputEncoding. Now, if you toggle the renderToScreen flag frequently there will be constant recompilation churn.
This is a known issue: https://github.com/mrdoob/three.js/issues/19056
I think what you're trying to do is to render a scene with two different cameras that each have their own effects, right? In that case, consider the following example:
import { Clock, HalfFloatType, sRGBEncoding } from "three";
import { EffectComposer, EffectPass, RenderPass, VignetteEffect } from "postprocessing";

renderer.outputEncoding = sRGBEncoding;

const composer = new EffectComposer(renderer, {
	frameBufferType: HalfFloatType // Avoid precision loss due to sRGB conversion.
});

const renderPass1 = new RenderPass(scene, camera1);
const renderPass2 = new RenderPass(scene, camera2);

const effectPass1 = new EffectPass(camera1, new VignetteEffect());
const effectPass2 = new EffectPass(camera2, new VignetteEffect());

// Determine which passes should render to screen.
effectPass1.renderToScreen = true;
effectPass2.renderToScreen = true;

// This can be toggled freely.
effectPass1.enabled = true;
effectPass2.enabled = false;

composer.addPass(renderPass1);
composer.addPass(renderPass2);
composer.addPass(effectPass1);
composer.addPass(effectPass2);

const clock = new Clock();

(function render(now) {

	requestAnimationFrame(render);

	effectPass1.enabled = condition;
	effectPass2.enabled = !condition

	composer.render(clock.getDelta());

}());

Thank you Raoul!
I will give it a try :)
Le mar. 4 août 2020 à 07:41, Raoul v. R<EMAIL_ADDRESS>a
écrit :

The performance issue you're describing has to do with three's
outputEncoding system which bakes color conversion codecs into shaders.
Assuming renderer.outputEncoding is set to anything other than
LinearEncoding, changing the renderToScreen flag of any pass will result
in a shader recompilation for all involved materials. If a pass renders
into an offscreen render target, the output encoding will be
LinearEncoding
https://github.com/mrdoob/three.js/blob/612f544c0c42bb01244472ffd57d0c88a37275b3/src/textures/Texture.js#L62.
If a pass renders to screen, the output encoding will be
renderer.outputEncoding
https://github.com/mrdoob/three.js/blob/612f544c0c42bb01244472ffd57d0c88a37275b3/src/renderers/webgl/WebGLPrograms.js#L175.
Now, if you toggle the renderToScreen flag frequently there will be
constant recompilation churn.
This is a known issue: mrdoob/three.js#19056
https://github.com/mrdoob/three.js/issues/19056
I think what you're trying to do is to render a scene with two different
cameras that each have their own effects, right? In that case, consider the
following example:
import { Clock, HalfFloatType, sRGBEncoding } from "three";import { EffectComposer, EffectPass, RenderPass, VignetteEffect } from "postprocessing";
renderer.outputEncoding = sRGBEncoding;
const composer = new EffectComposer(renderer, {
frameBufferType: HalfFloatType // Avoid precision loss due to sRGB conversion.});
const renderPass1 = new RenderPass(scene, camera1);const renderPass2 = new RenderPass(scene, camera2);
const effectPass1 = new EffectPass(camera1, new VignetteEffect());const effectPass2 = new EffectPass(camera2, new VignetteEffect());
// Determine which passes should render to screen.effectPass1.renderToScreen = true;effectPass2.renderToScreen = true;
// This can be toggled freely.effectPass1.enabled = true;effectPass2.enabled = false;
composer.addPass(renderPass1);composer.addPass(renderPass2);composer.addPass(effectPass1);composer.addPass(effectPass2);
const clock = new Clock();
(function render(now) {
requestAnimationFrame(render);
effectPass1.enabled = condition;
effectPass2.enabled = !condition
composer.render(clock.getDelta());
}());
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/vanruesc/postprocessing/issues/219#issuecomment-668572380,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABW6ANOBVOQXC5R7GJOTMJTR676V3ANCNFSM4PT553HQ
.

Closing due to inactivity. If the provided solution doesn't work for you, feel free to reopen.


Fix parameters and guess at constants

So is SLIDER_SIZE supposed to be SLIDER_WIDTH?

@hagna thanks for the review! raygui changed lately and examples were not properly updated...


Fix #6140 - Allow linking between controller and page

The issue here is that route values used for action selection are
'global'. That means that pages need to have a 'null' route value for
'action' and controllers need to have a 'null' route value for pages. This
is the same way that areas work.
The fix is to move the 'merge' of route values up to a level where pages
and controllers can work together. Since ADPs use the russian-doll
pattern, the fix is to run this 'merge' in the controller ADP, but after
all of the ADs have been created.

4bf518b09b690f6a364071b9ea441ab5d4800894


MNIST C++ Example with Input from File

Is your feature request related to a problem? Please describe.
Many data scientists and AI engineers are experienced in using TensorFlow or PyTorch in the Python language and want to port their models to C++ for inference. However, many are inexperienced in C++. The MNIST example is good, but it is frustrating that there is not an example that takes an image from a file as input. It is much more likely that someone will want to input an image rather than draw an image and the code will be much shorter and understandable to newcomers.
Describe the solution you'd like
Please can someone provide a new example based on the MNIST C++ example that demonstrates a prediction being made on an image loaded from the disk, as opposed to drawing an image, potentially using OpenCV.
Many thanks

I know Windows APIs better than OpenCV.  I wrote one based on Windows APIs: https://github.com/microsoft/onnxruntime-inference-examples/blob/main/c_cxx/imagenet/image_loader_wic.cc#L37. The file has example of how to read a file into a RGB buffer.
Then you will need to convert the RGB values to gray values, like what is showed in https://github.com/onnx/models/tree/master/vision/classification/mnist
import numpy as np
import cv2

image = cv2.imread('input.png')
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
gray = cv2.resize(gray, (28,28)).astype(np.float32)/255
input = np.reshape(gray, (1,1,28,28)

Thanks for your response. How does the C++ code you've linked to demonstrate the C++ equivalent of input = np.reshape(gray, (1,1,28,28))? To know how to alter the dimensions of the input image to match the dimensions of the input layer would be really useful.

I think you are saying image resizing, which doesn't apply the mnist dataset. mnist dataset images are all in fixed size. So all the models do not define how to do image resizing. (While imagenet models must define it)
You can use your own way to do image resizing, by using whatever algorithm.
Like: https://github.com/microsoft/onnxruntime-inference-examples/blob/main/c_cxx/imagenet/image_loader.cc#L62
Or
#include <shcore.h>
#include <wincodec.h>
#include <wincodecsdk.h>

#include <filesystem>
#include <vector>

#include "image_file.h"
#include "wil/com.h"

/**
 *  Read the file from `input_file` and auto-scale it to 720x720
 * \param out should be freed by caller after use
 * \param output_count Array length of the `out` param
 */
int read_image_file(_In_z_ const ORTCHAR_T* input_file, _Out_ size_t* height, _Out_ size_t* width, _Outptr_ float** out,
                  _Out_ size_t* output_count) {
  wil::com_ptr_failfast<IWICImagingFactory> piFactory =
      wil::CoCreateInstanceFailFast<IWICImagingFactory>(CLSID_WICImagingFactory);
  wil::com_ptr_failfast<IWICBitmapDecoder> decoder;
  FAIL_FAST_IF_FAILED(
      piFactory->CreateDecoderFromFilename(input_file, NULL, GENERIC_READ,
                                           WICDecodeMetadataCacheOnDemand,  // defer parsing non-critical metadata
                                           &decoder));
  UINT count = 0;
  FAIL_FAST_IF_FAILED(decoder->GetFrameCount(&count));
  if (count != 1) {
    printf("The image has multiple frames, I don't know which to choose.\n");
    abort();
  }
  wil::com_ptr_failfast<IWICBitmapFrameDecode> piFrameDecode;
  FAIL_FAST_IF_FAILED(decoder->GetFrame(0, &piFrameDecode));
  UINT image_width, image_height;
  FAIL_FAST_IF_FAILED(piFrameDecode->GetSize(&image_width, &image_height));
  wil::com_ptr_failfast<IWICBitmapScaler> scaler;
  IWICBitmapSource* source_to_copy = piFrameDecode.get();
  if (image_width != 720 || image_height != 720) {
    FAIL_FAST_IF_FAILED(piFactory->CreateBitmapScaler(&scaler)); //This is the resizing you are asking
    FAIL_FAST_IF_FAILED(scaler->Initialize(source_to_copy, 720, 720, WICBitmapInterpolationModeFant));
    source_to_copy = scaler.get();
    image_width = 720;
    image_height = 720;
  }
  wil::com_ptr_failfast<IWICFormatConverter> ppIFormatConverter;
  FAIL_FAST_IF_FAILED(piFactory->CreateFormatConverter(&ppIFormatConverter));
  FAIL_FAST_IF_FAILED(ppIFormatConverter->Initialize(source_to_copy, GUID_WICPixelFormat24bppRGB,
                                                     WICBitmapDitherTypeNone, NULL, 0.f, WICBitmapPaletteTypeCustom));
  // output format is 24bpp, which means 24 bits per pixel
  constexpr UINT bytes_per_pixel = 24 / 8;
  UINT stride = image_width * bytes_per_pixel;
  std::vector<uint8_t> data(image_width * image_height * bytes_per_pixel);
  FAIL_FAST_IF_FAILED(ppIFormatConverter->CopyPixels(nullptr, stride, static_cast<UINT>(data.size()), data.data()));

  hwc_to_chw(data.data(), image_height, image_width, out, output_count);
  *height = 720;
  *width = 720;
  return 0;
}

In MNIST.cpp, there are some guidelines without code examples:
// After instantiation, set the input_image_ data to be the 28x28 pixel image of the number to recognize
...
// std::array<float, width_ * height_> input_image_{};
I am sorry I don't understand. What should I do to build input image for inferrence ?
ps. Does 'model.onnx' files under ./js/* folder work for MNIST?

@coderjoonwoo Looks like model needs to be download from https://github.com/onnx/models/tree/main/vision/classification/mnist
Not sure why this was not mentioned anywhere in documentation.


[Linux] Linking issue with extlibs when using gmake2 generator

Hi,
When using gmake2 generator for premake, the linking step of NazaraPhysics3D fails because it can't find libNewton. I compared the linking command of both gmake and gmake2, and it seems that the only reason is gmake2 not adding the correct library path in the (LINKCMD)
Here is the gmake2 command line:
g++ -o
"bin/x64/DebugDynamic/libNazaraPhysics3D-d.so"
obj/x64/DebugDynamic/NazaraPhysics3D/Collider3D.o
obj/x64/DebugDynamic/NazaraPhysics3D/NewOverload.o
obj/x64/DebugDynamic/NazaraPhysics3D/PhysWorld3D.o
obj/x64/DebugDynamic/NazaraPhysics3D/Physics3D.o
obj/x64/DebugDynamic/NazaraPhysics3D/RigidBody3D.
-L ../../../thirdparty/lib/common
-L ../../../lib
-L ../../../thirdparty/lib/common/x64
-L /usr/lib64 -m64 -shared
-Wl,-soname=libNazaraPhysics3D-d.so
-lNewton
-lNazaraCore-d
/usr/bin/ld : ne peut trouver -lNewton

And the gmake output command:
g++ -o
"../../../lib/gmake/x64/libNazaraPhysics3D-d.so"
obj/x64/DebugDynamic/NazaraPhysics3D/Collider3D.o
obj/x64/DebugDynamic/NazaraPhysics3D/NewOverload.o
obj/x64/DebugDynamic/NazaraPhysics3D/PhysWorld3D.o
obj/x64/DebugDynamic/NazaraPhysics3D/Physics3D.o
obj/x64/DebugDynamic/NazaraPhysics3D/RigidBody3D.o
-L../../../thirdparty/lib/gmake/x64
-L../../../lib/gmake/x64
-L../../../thirdparty/lib/common
-L../../../lib
-L../../../thirdparty/lib/common/x64
-L/usr/lib64
-m64
-shared
-Wl,-soname=libNazaraPhysics3D-d.so
-lNewton
-lNazaraCore-d

if I add the following path, it builds correctly until the NazaraUnitTests
-L../../../thirdparty/lib/gmake/x64
-L../../../lib/gmake/x64

Then NazaraUnitTests fails because of linking errors too, against the NDK, which seems reasonable as the output dir is build/gmake2/tools/bin/x64/DebugDynamic/ instead of lib/gmake2/x64/.


Added the ability to rollback/revert PaperTrail version history. Includes change previewing.

This pull request solves #1857. It gives the user the ability to preview and revert the changes recorded with PaperTrail.
A jQuery html diff'ing plugin was added to help visualise the version changes. The preview works on the rails_admin dashboard, history_index and history_show views and appears in a modal (see screenshots below).
I feel it adds much needed (and lacking) functionality and finishes off the auditing nicely. Please test and let me know what you think!
To-dos:

[x] Remove modal table column width limit as it cuts off content on longer lines. Edit: was actually css based, extra commit fixes this below

Looks promising.
But to merge this in, we have to consider several issues:

must be fully covered by tests
need to work harmlessly with internal audit plugin

Instead, could you consider implementing this as RailsAdmin plugin? I'm not quite sure if everyone who uses RailsAdmin will need this rollback feature...

Hi @mshibuya, thanks for your feedback. Admittedly, tests are lacking. I thought the internal auditing was being phased out? Either way, I think this is a logical addition (even if it is a plugin). It makes sense to be able to actually use the history, especially in a more visual manner.
I'm currently working on another plugin, so I might convert this over to it's own too. I'll keep you posted.

Plugin created! I'll release it and close this pull request. May I add it to the wiki when it's released?

Great! :beers:


Create Rule to install dependencies

Add a rule to install R dependencies. Changes have already been started on the streamline branch:
https://github.com/hdr-bgnn/Minnow_Segmented_Traits/blob/7873208e1728072f18e8a15a53914843a2ee54da/workflow/Snakefile#L40-L42

@megbalk Do you prefer a specific version of R you prefer for this code? The run-workflow.sh script is using R 4.2.1:
https://github.com/hdr-bgnn/Minnow_Segmented_Traits/blob/7873208e1728072f18e8a15a53914843a2ee54da/run-workflow.sh#L18
However dependencies.R is trying to install utils 3.6.2:
https://github.com/hdr-bgnn/Minnow_Segmented_Traits/blob/7873208e1728072f18e8a15a53914843a2ee54da/dependencies.R#L36-L37
Installing this packages results in the following error:
package ‘utils’ is a base package, and should not be updated

So it sounds like utils version 3.6.2 is only for R 3.6.2.

Let's try utils 4.2.1. Hopefully the syntax didn't change; if it did, then it needs to be 3.6.2.

can remove moments; can replace tidyr, dplyr, and stringr with tidyverse

tidyverse v 1.3.1


added RDS support

Fixes #1

@fblecha the diff is huge and it includes much more than just RDS support. I'd recommend reverting all the refactoring and eventually opening a separate PR.

@alexcasalboni it's a result of the way the nodeTypes data structure is embedded at the top of the file.  Any change there, changes the format for everything else in the file (which is why the diff is huge).  I'd say the first thing is to break that out into another file and import it.

@fblecha yes splitting that file a good idea as well. But I was more concerned about "compromising" the git history just to change ' into " (AFAIK, any IDE can be configured to avoid it).

I am not 100% sure I'd add RDS support here. The idea here is not to replicate the CloudFormation Designer or other more advance tools that cover all AWS services, but to have something small and lean to think and design serverless apps. Happy to get other feedbacks here.

@danilop I know RDS isn't "serverless" but for some use cases I like having postgresql as my underlying datastore (e.g. postgis, postgraphql, timezones, etc.) and I like being able to use sql as my query language. The use case I use frequently right now for prototyping is API Gateway -> Lambda -> RDS to serve up a graphql endpoint (via postgraphql).
I was using this as an easy diagramming tool, primarily to show connections/dataflow (vs something like cloud crafted).
I'm happy to leave this over in my fork if you want to keep this as purely serverless/cost-per-use diagramming tool.

Waiting for some feedback here from other users. I would keep this focused on serverless if possible, but RDS, with Amazon Aurora, can trigger Lambda functions, so the border is blurred :)


Add offline feedback for deleted task action

Details

Add offline feedback for deleted task action
Fixed Issues

$ https://github.com/Expensify/App/issues/33986
PROPOSAL: https://github.com/Expensify/App/issues/33986#issuecomment-1878145479
Tests

Go offline
Create a task report
Go to the task report and send a message
Click on three-dot > Delete task
Verify that the deleted task is grey out

[x] Verify that no errors appear in the JS console

Offline tests

Same as above
QA Steps

Go offline
Create a task report
Go to the task report and send a message
Click on three-dot > Delete task
Verify that the deleted task is grey out

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native
https://github.com/Expensify/App/assets/129500732/950c2cde-0ae4-4501-b23a-bd3d745e3df5

Android: mWeb Chrome
https://github.com/Expensify/App/assets/129500732/f78ff66b-f288-4b8d-a004-b393713fd132

iOS: Native
https://github.com/Expensify/App/assets/129500732/b960bbfc-14a8-4bbb-890c-4f0ace70da47

iOS: mWeb Safari
https://github.com/Expensify/App/assets/129500732/eadc4e89-e6b4-4505-98d6-9cd141bb0d9d

MacOS: Chrome / Safari
https://github.com/Expensify/App/assets/129500732/5c0591c2-1251-450c-8c40-4bdfd9378137

MacOS: Desktop
https://github.com/Expensify/App/assets/129500732/2a5dcdc4-3c06-49d9-986a-6b3648981fbe

@dukenv0307 could you please resolve the conflicts. Reviewing the PR

@dukenv0307 the perf tests are still failing, could you please give them a look. Thanks 🙇

Reviewer Checklist

[ ] I have verified the author checklist is complete (all boxes are checked off).
[ ] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I included screenshots or videos for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

[ ] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[ ] MacOS: Chrome / Safari
[ ] MacOS: Desktop

[ ] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[ ] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[ ] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[ ] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[ ] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[ ] If any new file was added I verified that:

[ ] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn't already exist
[ ] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)

[ ] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[ ] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[ ] If the PR modifies the form input styles:

[ ] I verified that all the inputs inside a form are aligned with each other.
[ ] I added Design label so the design team can review the changes.

[ ] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[ ] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

MacOS: Desktop

@rushatgabhane @dukenv0307 , @marcaaron is OOO til next week, if this needs a timely review, will you ping me in Slack/NewDot?  Thx

@marcaaron is back Monday, I'll ping him in NewDot too.  If he's unable to review it promptly he can reassign.  Thx @dukenv0307

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/marcaaron in version: 1.4.44-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/puneetlath in version: 1.4.44-13 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Window size off after using MC's mcedit or subshell

Version
Microsoft Windows [Version 10.0.22000.556]
WSL Version

[X] WSL 2
[ ] WSL 1

Kernel Version
<IP_ADDRESS>
Distro Version
Ubuntu 20.04
Other Software
No response
Repro Steps
Install Ubuntu 18.04/20.04 from Store, then open mc, open some text file with mcedit (press F4), and exit it (Esc / F10).
This is the behavior when the window is snapped to the right side of the screen:
Before:

After:

Note how the right panel overflows the actual WSL window.
Also note that even the containing WSL window is off (X button in top right is missing, which is particularly odd as I made the screenshot with Alt + PrtScr, which is supposed to capture the whole window).

Snapped to the left, it's even weirder. Before:

After opening mcedit, it covers some of the right screen:

When I exit the editor, it remains off:

If I do it maximized, the containing WSL window is preserved (the top right controls remain visible), but MC itself will still be off:
Before:

After:

The correct behavior can be restored with a restore+mazimize combo (e.g. Win+Down, Win+Up). Always reproducible, it WILL break every time time I edit another file. Super annoying.
Happens both on 18.04 and 20.04. For the record, I updated a 20.04 instance to 21.10 manually (by editing apt config files), the issue persists.
Opening and exiting an MC subshell causes the same thing to happen (Ctrl + O, Ctrl + O inside MC).
nano appears to inhibit the same behavior, but it seems more erratic. It happened once when doing visudo with it, the bottom bar was invisible until I did the Win+Down, Win+Up trick. What I'm trying to say is that the issue seems to be more widespread than just MC. I guess the window size is reported erroneously to Linux somewhere along the way.
Expected Behavior
I expect the whole window and all UI elements to remain visible. I also expect the WSL main window to retain its size.
Actual Behavior
The MC window "resizes itself" as if the containing WSL window became larger. If snapped to the left, the WSL window does resize itself, too.
Diagnostic Logs
No response

Prolly unrelated, but can't rule out either: #1879

Hmm I can't seem to be able to reproduce this on 16:9/10 displays, so this might be limited to 21:9 monitors.

 Will the bug also fix itself automatically?


Take picture

Simply for documenting a POI
Also to publish it on the web (Mapillary, Wikimedia Commons…) and set the appropriate tags (mapillary, wikimedia_commons, image…)

In the first case, pictures could be stored in the phone gallery according user preferences (SD card, phone memory).

Note that StreetComplete allows users to add a picture on a note. Ex:

https://www.openstreetmap.org/note/3176448
https://westnordost.de/p/99124.jpg

May be @Zverik can host a similar solution on https://ilya.zverev.info ?
Server side @westnordost uses a PHP application: https://github.com/streetcomplete/sc-photo-service
And client side, he implements the upload in this class: StreetCompleteImageUploader
Have a nice day

The problem is that the pictures taken in Streetcomplete are photo-notes and are note taken to be linked with the OSM objetct.

The problems with StreetComplete are:

pictures are reduced (so it's difficult or impossible to read something i.e. a house number)
pictures are automatically deleted after a while when notes are closed.

When I collaborate with Robert Koch to OsmHydrant few years ago, previous Flickr OsmHydrant pictures were uploaded to Wikimedia Commons, and since, the web app upload new pictures directly to Commons.
But anyway, the ideal app should be agnostic : take a picture and publish it to the preferred repository (Flickr, Wikimedia Commons, Mapillary, a GitHub repo, a "Géo Commun"…).
If applicable, metadata in the repo could be set (i.e. date, lat, lon, ±osm id, ±wikidata item…) and an osm tag too (mapillary, wikimedia_commons, image)

Have you checked Commons (Android) app ? It gives option to push pictures in wikimedia servers. In my idea if we are able to create OSM categories we would upload located pictures that would be connected with OSM pictures like OSMhydrant did at the end.

Imgur has an anonymous image upload API. This could work as well.

Imgur has an anonymous image upload API. This could work as well.

Update!!
Imgur will remove anonymously-uploaded images that have not been accessed.

So I'm warming up to the idea of taking photos with the app for notes. The latest version already has two types of notes and a dedicated server, so no reason not to add a third one, for photos. They can be stored for half a year with an option of exporting them in bulk to re-upload to e.g. wikimedia commons.

I see the appeal to add a custom image feature to every door. I still have hopes that at some point we will build a solution that works for OSM general or at least for alle editors(*). Until then, a few more links

https://github.com/pietervdvn/MapComplete/issues/1451 holds information on how MapComplete plant so handle user image uploads in the future. Those images are attached to the OSM object, though, not OSM Notes.
https://github.com/streetcomplete/StreetComplete/issues/5489#issuecomment-1962339611 is a good summary on the status of this feature in StreetComplete and has a few links on what was tried on the OSM website / operations side of things.

(*) There was some activity on micro grants a short while ago, so maybe those will come again and maybe this is something to build in such a project?

Update on …

Upload pictures to Panoramax/Geovisio instead of Imgur pietervdvn/MapComplete#1451 holds information on how MapComplete plant so handle user image uploads in the future. Those images are attached to the OSM object, though, not OSM Notes.

https://github.com/openstreetmap/iD/issues/9941#issuecomment-2037888222 suggests there will be some progress on the Panoramax side of things if the funding does happen.

Mapcomplete now has Panoramax integration
https://github.com/pietervdvn/MapComplete/issues/1451#issuecomment-2380550206

In https://github.com/bryceco/GoMap/issues/822 I asked how this MapComplete feature could be shared with GoMap but it sounds like this is not planned.


Add an option to skip OSGi service registrations from being tracking by the Startup Order Resolver

Description:
As discussed in the [C5] Skipping service registrations from Startup Order Resolver in ther server startup architecture mail thread, there are some scenarios where OSGi service registrations are done dynamically in the server startup. These OSGi services doesn't affects the startup order, hence the Startup Order Resolver should skip them. However, currently there is no way to explicitly tell the Startup Order Resolver to ignore a service registration.
Affected Product Version:
5.2.0
OS, DB, other environment details and versions:
N/A
Steps to reproduce:
N/A
Related Issues:
N/A

Implementation suggestion:
OSGi servie has to be registered as follows in order to skip Startup Order Resolver.
Dictionary<String, Object> properties = new Hashtable<>();
properties.put("skipCarbonStartupResolver", true);
bundleContext.registerService(SomeService.class, new SomeServiceImpl(), properties);

Startup Order Resolver should look for the skipCarbonStartupResolver property, if that is true then that service registration should be skipped.


Iteration still printing in horizontal equilibrium when using horizontal_nodal

Hello,
The display for print the number of iterations was solver for the horizontal equilibrium, but not when using the horizontal_nodal solver.
This calls for the function parallelise_nodal that has no attribute 'display'. Can we either comment it out or add attribute 'display' to this function?
https://github.com/BlockResearchGroup/compas_tna/blob/a8008c724ce4b324520da4082730e9839d5a8f57/src/compas_tna/utilities/diagrams.py#L87
Gracias!
Ricardo

something must have gone wrong with pushing and pulling on my end because this was fixed a few days ago. now also in the online repo :)


Parallelize Lambda Controllers

Currently the PoC goes through each Lambda Controller one at a time. We should use some amount of concurrency.

Different types of controllers (e.g. two different CompositeControllers, like CatSet vs IndexedJob) are now processed in parallel as of #19.
Within a given CompositeController, it will become possible to process multiple instances (e.g. two different CatSets) in parallel as part of implementing #8.


All of my enchiridion books have taken on the texture of the Spellforger's Codex (from Wizardry)

All of the books normally have their own texture. Pulling Wizardry causes the books to have their own texture again.
This mod: https://minecraft.curseforge.com/projects/wizardry-mod?gameCategorySlug=mc-mods&projectID=278155

Thanks for your report!
As Demoniaque said in https://github.com/TeamWizardry/Wizardry/issues/129, it's most likely caused by Wizardry Mod Mod.


Site support: https://www.nbc.com/sign-up

Please follow the guide below

You will be asked some questions and requested to provide some information, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your issue (like this: [x])
Use the Preview tab to see what your issue will actually look like

My last issue was incorrectly labeled tv-provider-account-needed which is NOT correct.
https://github.com/rg3/youtube-dl/issues/14441
So i made a new issue
Site support: https://www.nbc.com/sign-up
For what reason this label has been added i dont know, tv-provider-account-needed.
https://www.nbc.com/sign-up
Instantly get 3 free credits to watch locked content.
What need to be done is that a update to youtube dl to add support for NBC profile login and password this could be done and would work, why label this issue as tv-provider-account-needed is absurd, NBC profile is free and does NOT need a tv-provider of us tv service login to use view locked content.
Can someone here look again at this, youtube dl needs a update which adds NBC FREE Profile login and password support eg this login here
https://www.nbc.com/sign-in
https://www.nbc.com/sign-up
better way to tackle this, than just labeling this as tv-provider-account-needed , when clearly this is not what the issue at all!

Stop posting duplicates. Labels are for developers not for you. We are well aware of what needs to be done and what's required in general.


Update us-year-end.md

fix 1095

1095

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

dynamics-gp/payroll/us-year-end.md
:white_check_mark:Succeeded
View

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


Add bounds control controller simulation tests

Overview
Add controller simulation tests to bounds control tests as the feature is no longer experimental. Also add some tests to InteractableEvent.
Changes

Follows #8401.

/azp run

/azp run


Discord automation check empty body "blank issue"

Bug summary
https://github.com/howijd/.github/actions/runs/1735005288
Description
Empty issues or issues created from project cards have invalid body value
Provide aditional context or logs
No response
Code of Conduct
I agree to follow this project's Code of Conduct

this is part of next miles general automation update


Add documentation

Addresses #47, for adding standardized repo documentation and updating the README
Addresses #49 to initialize the develop documentation. The WIP is deployed: https://statcan.github.io/StatCan.OrchardCore/
todo: Module documentation will need to be updated in a separate ticket ; localization

A few things I would suggest (coming from a student with no dotnet experience). These are definitely coming from someone with less familiarity with our projects, but if the team wants to keep recruiting new people and students, it's important to make the documentation clear and self explanitory

NuGet: Mention where to find the artifactory credentials that you need to add to the config file
NuGet: Is the file location of the NuGet config on the system, or part of the project once it's cloned? Maybe linking to the repo or referencing it by name would be useful
Recommended PowerShell setup: It might be a good idea to include what the bash or zsh commands are in addition to the PowerShell ones, unless assumed everyone is developing on Windows. Again I'm a bit lost in the sense of the context of this as mentioned in the last point.

Missing the hackathon module/theme? Other than that I think it looks good so far.

Maybe adding a section for release notes or change logs.

@jonlamdev how are we dowin on this one ?

Closing...merging to master as it is "minimally viable": there is hosted documentation, tracked in source, and mechanism for updating. Content needs to be updated and kept updated.

Thanks all for comments and first look 🎉


[Bloc] Event dispatching is very inefficient

While scrolling the text editor, most of the time is spent in sending various events:

Elements should not dispatch high frequent events all the time. Instead, we should be able to explicitly enable them on per-element basis if needed

event dispatching was significantly improved