Recipe zmnam update (hemisphere selection)

Description
The objective of this pull request is to update the zmnam recipe to extend the calculation to the
southern hemisphere. This is made possible by a parameter in the updated recipe and some changes
in the code. The documentation has also been updated to reflect the extended capabilities.
Some checks are failing, however I am not sure if there is a problem with the new code I've prepared.
I would appreciated some guidance on this.
Thanks in advance for your help with this.

Closes #2228
Link to documentation: https://esmvaltool--2230.org.readthedocs.build/en/2230/recipes/recipe_zmnam.html

Before you get started

[x] ☝ Create an issue to discuss what you are going to do

Checklist
It is the responsibility of the author to make sure the pull request is ready to review. The icons indicate whether the item will be subject to the 🛠 Technical or 🧪 Scientific review.

[x] 🛠 This pull request has a descriptive title
[x] 🛠 Code is written according to the code quality guidelines
[x] 🛠 Documentation is available
[x] 🛠 Tests run successfully
[x] 🛠 The list of authors is up to date
[x] 🛠 All checks below this pull request were successful

New or updated recipe/diagnostic

[x] 🧪 Recipe runs successfully
[ ] 🧪 Recipe is well documented
[ ] 🧪 Figure(s) and data look as expected from literature
[x] 🛠 Provenance information has been added

To help with the number of pull requests:

🙏 We kindly ask you to review two other open pull requests in this repository

Some checks are failing, however I am not sure if there is a problem with the new code I've prepared.
I would appreciated some guidance on this.

There are some minor code formatting issues in the new/updated code reported by flake8. You can find more information about that in our contribution guidelines on code quality. If you click the Details link behind the failed test on CircleCI and scroll to the bottom you can see them mentioned.

Thanks for the tip, it was due to some blank spaces. I should have sorted them out now.

I should have now addressed the request to move write_netcdf and write_plots from the config to the recipe, as asked some weeks ago. I haven't found many recipes to use as examples so I hope I did it correctly.

@esmvalbot Please run recipe_zmnam.yml

@esmvalbot Please run recipe_zmnam.yml

Could you change the caption of the figures so it is specific to each plot? Now each plot has the caption
"Compute zonal mean annular mode between 1979 and 2008", see: https://esmvaltool.cloud.dkrz.de/shared/esmvaltool/esmvalbot-output/zmnam_update-krnj6l9u/recipe_zmnam_20210728_140026/

Yes, I did not realize captions were set  with the provenance function (get_provenance_record).
Would it make sense to do this by passing a certain string as caption to that function, depending on the file name contents? The call to provenance_record should be moved in the loop setting the provenance information for individual output files.
I mean something like
if 'pc_da' in filename:
   caption = 'Daily principal component timeseries'
elif 'eofs' in filename:
   caption = 'Empirical orthogonal functions'
else:
    caption = 'Generic caption for zmnam recipe output'
 provenance_record = get_provenance_record(props, caption, ancestor_files=[ifile])

and then the call to the Logger.

I'm no expert on the output produced, but I think it should be clear from the caption what is in the figure. "Generic caption" does not sound very descriptive. And maybe it would be nice to mention what hemisphere the figure is for?

Sure, I was just wondering if there are specific guidelines.
I looked at other recipes (such as autoassess and climwip) and they caption parameter is passed to the get_provenance_record function. I would do something similar. Yes the 'generic caption' is just a placeholder/suggestion in case more outputs will be added in the future, but each file will have its own (and the hemisphere can be passed, even if it is already in the plots).

@esmvalbot Please run recipe_zmnam.yml

I am not having the error Error (cdf_put_vara_double): NetCDF: HDF error reported in https://esmvaltool.cloud.dkrz.de/shared/esmvaltool/esmvalbot-output/zmnam_update-kruza4ff/recipe_zmnam_20210802_190422/run/zmnam/main/log.txt on the server I am using for testing.
Try rerunning it to check if it was temporary...

@esmvalbot Please run recipe_zmnam.yml

I've made more tests locally and in one occasion the execution was not successful. Maybe the error is due to memory or disk space issues? Not sure why the bot did not start the test after the last request, will try again once the checks are completed

@esmvalbot Please run recipe_zmnam.yml

The bot ran out of disk space because of this cdo issue:
$ du -hsc /tmp/cdoPy*
132K	/tmp/cdoPy08kgs2bw
560K	/tmp/cdoPy1bmohcmf
465M	/tmp/cdoPy1jyqml4q
16M	/tmp/cdoPy1p3eo8ry
132K	/tmp/cdoPy2n5u7nan
7.4M	/tmp/cdoPy44vj0n0o
16M	/tmp/cdoPy6no2kr53
465M	/tmp/cdoPy7yjb77au
465M	/tmp/cdoPy7yooz_rg
16M	/tmp/cdoPy80svdmjw
132K	/tmp/cdoPy_8snxiye
132K	/tmp/cdoPyag1rjitb
7.4M	/tmp/cdoPyb2nb_z44
465M	/tmp/cdoPybwap2hoj
466M	/tmp/cdoPyc1xfol46
465M	/tmp/cdoPyd85ry_vl
465M	/tmp/cdoPydqpkmxyn
466M	/tmp/cdoPye4nlk5f6
560K	/tmp/cdoPyeah1a2py
16M	/tmp/cdoPy_eee2prg
16M	/tmp/cdoPyfixbbcqv
16M	/tmp/cdoPygvfiii5t
7.4M	/tmp/cdoPyhn5mkxam
256M	/tmp/cdoPyiaotmf8d
465M	/tmp/cdoPyijhu42ed
465M	/tmp/cdoPyjex3yib3
465M	/tmp/cdoPyjp705whc
465M	/tmp/cdoPym7f96wfl
466M	/tmp/cdoPym_rh4_kr
16M	/tmp/cdoPymtg219bo
465M	/tmp/cdoPyn9iirq4_
16M	/tmp/cdoPynq_67oww
465M	/tmp/cdoPyoa7tcgef
132K	/tmp/cdoPyoi6emlzw
132K	/tmp/cdoPyongwok79
132K	/tmp/cdoPyowc_xcc0
465M	/tmp/cdoPyplv7isw1
465M	/tmp/cdoPyq2h7xdu5
466M	/tmp/cdoPyrdpi33tg
16M	/tmp/cdoPyrk0r3qf8
465M	/tmp/cdoPyuf6wmpbq
560K	/tmp/cdoPyuot3jj6_
132K	/tmp/cdoPyuucw2nrh
16M	/tmp/cdoPyvycoi18f
9.1G	total

Could you please check your code and see if there are any cases where the output argument is missing, as suggested in the issue description?

I am not able to locally reproduce the cdo error. It seems related to the tmp folder being too large (there are several temporary 465 MB files), however it is not trivial to force a (partial) clean up (e.g. https://code.mpimet.mpg.de/projects/cdo/wiki/Cdo{rbpy}#Tempfile-handling) since two temporary files are outputs of the preprocessing.
Moreover, I am not sure if a full clean up would create problems to other ongoing processes (since the bot is using a common /tmp folder right?).

It would be best if your diagnostic script did not write to /tmp at all, as this is generally not recommended on the kind of compute clusters that our users use. Looking at the documentation that you pointed to, I think this can be achieved by starting cdo with
cdo = Cdo(tempdir=cfg['dir'])

where cfg is the dict you get from the run_diagnostic function.

I've implemented the selection of the specific tmp directory and an additional utility using the Cdo function to avoid retaining too many files (this could cause problems if processing many datasets at once).
Anyway I don't understand why the cdoPy* files in some cases were not removed at the end of a successful run (now they are removed by the cleaning function)

@esmvalbot Please run recipe_zmnam.yml

Anyway I don't understand why the cdoPy* files in some cases were not removed at the end of a successful run (now they are removed by the cleaning function)

I suspect they were not removed after a failed run because the bot failed to run the recipe a few times. However, the mechanism for removing these temporary files in the cdo python bindings looks a bit dodgy, so it could also be just that.

Great it works! The only minor modification I would do is to remove the s in the caption Monthly regression maps, since only one map is shown.

Woudl it be possible to ask one of your co-authors of this recipe to do the scientific pull request review?

Woudl it be possible to ask one of your co-authors of this recipe to do the scientific pull request review?

Yes, I've asked Jost, maybe he could have a look in the next weeks. One limitation is that there are few resources to use for comparison in the southern hemisphere; most indices are station based so they are useful for 1000 or 850 hPa but at lower pressures I could not find much so far.
Thanks for the approval and suggestions so far! :smiley:

I needed to merge with the updated main for the write_plots removal

@esmvalbot Please run recipe_zmnam.yml

Apparently the run failed due to the lack of disk space: [Errno 28] No space left on device: '/mnt/esmvaltool_disk1/esmvalbot-work/esmvalbotwork-zmnam_update-kvgpnenr/. Previously similar errors required manual disk clean up: @bouweandela can you please let me know if the error is caused by zmnam? Thanks

@esmvalbot Please run recipe_zmnam.yml

Apparently the run failed due to the lack of disk space

I believe there was some other issue with disk space on the bot recently. Maybe @zklaus or @remi-kazeroni can tell you more? Anyway, I just tried again to see if it's fixed now.

@fserva Release v2.5 is approaching quickly (the feature freeze will be on 2022-02-21). Since this pull request is marked for v2.5, could you briefly comment if you further intend to include this in the new release and/or if you are facing any problems with it? Thanks!!

Hi @schlunma there are no issues, I would just need some scientific review. Please let me check if I can get some feedback

Thanks @schlunma for the checks! Glad it worked well. Yes I would propose to merge now


spec: struct can implement an interface with an inherited method but attempting to call that method can cause an unexpected panic

What version of Go are you using (go version)?

$ go version
go version go1.14.4 linux/amd64

Does this issue reproduce with the latest release?
I believe go1.14.4 is the latest stable release, so yes.
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/finnb/.cache/go-build"
GOENV="/home/finnb/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/finnb/go:/home/finnb/git/finnbear/mazean"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/snap/go/5830"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/snap/go/5830/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build362984802=/tmp/go-build -gno-record-gcc-switches"

What did you do?
Playground link: https://play.golang.org/p/Xf3mskprGZV
package main

import (
	"fmt"
)

type Nilable interface {
	IsNil() bool
}

type Child struct {

}

func (child *Child) IsNil() bool {
	return child == nil
}

type Parent struct {
	Child
}

func main() {
	var something Nilable

	var child *Child
	something = child
	fmt.Println(something.IsNil())

	var parent *Parent
	something = parent
	fmt.Println(something.IsNil()) // Panic here
}

What did you expect to see?
true
true

What did you see instead?
true
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x4919f5]

goroutine 1 [running]:
main.(*Parent).IsNil(0x0, 0xc0000b6008)
	<autogenerated>:1 +0x5
main.main()
	/tmp/sandbox080043792/prog.go:36 +0xad

I suspect what is happening is that calling IsNil on parent acts on parent.Child, thus dereferencing Child from a nil pointer parent, but this happens silently. I think one of the following should be done:

Assuming my theory is correct, the panic message should be improved to not act as if the issue occurred in the (*Child) IsNil receiver but in the intermediate step of accessing parent.Child
The documentation should be updated to warn about this behavior
In the unlikely event that this is a bug in Go, it should be fixed

@griesemer @ianlancetaylor

This is intended behavior.  Dereferencing a nil pointer in order to access an embedded field panics.
But in a quick glance at the language spec I don't see that documented anywhere, so I guess we ought to have an additional sentence in the spec somewhere.
I think the panic message is as good as it is going to get.  The IsNil method is promoted to become a method of *Parent, and that is where the crash happens.  There isn't an intermediate step that could appear in the stack trace or the panic message.

I now realize my statement

the panic message should be improved to not act as if the issue occurred in the (*Child) IsNil receiver

was wrong, since the panic actually states the location was in main.(*Parent).IsNil
An additional line in the spec/doc would be nice though.

Parent doesn't implement Nilable, *Parent does.
related: https://github.com/golang/go/issues/32021 https://github.com/golang/go/issues/32035

Parent doesn't implement Nilable, *Parent does.

I misspoke, my question was directed at why *Parent can implement Nilable. I have to do more research into whether *Parent has an internal Child, *Child, or something else...

I believe this is exactly the case described in #18617.
(Note that that issue is a proposal for a backward-incompatible change to the language.)

@finnbear
By the current rules,

type struct{T} gets all the methods of type T,
type *struct{T}, type struct{*T}, and type *struct{*T} get all the methods of type *T (as the method set of *T is always of T, so the three types also get all the methods of T)


WIP: Feature/googletokensupport coveragetest

A test for code coverage results; do not review

Coverage increased (+3.6%) to 64.87% when pulling 7b6549d328b0a9006f1b94290076e6b438f57b38 on feature/googletokensupport-coveragetest into 042875ea0da164066af275c015b06023e579f253 on develop.


fix(home-manager): remove incorrect config in gitui module

i am a bit confused here, as this is what the upstream port does as shown here (also see #111). could you explain why we might not want this?

Also that this is not the "gitui" module. Perhaps you made a PR from the wrong branch or something?


More inconsistent naming conventions

NumberFormat.currencyPattern has been deprecated and replaced by NumberFormat.currency but the following constructors remain

NumberFormat.decimalPattern
NumberFormat.percentPattern
NumberFormat.scientificPattern

Both decimalDigits and fractionDigits (and their variations) are being used

Thanks for pointing that out, although I can't promise when I'll get to it.


Update header colors to not clash with project icon

Is your feature request related to a problem? Please describe.
The project icon's color clashes roughly with the header colors.

Describe the solution you'd like
I think we need to use neutral colors for the two header toolbars, like some shades of gray. All of these websites seem to do that to avoid the clashing with their icons:
https://code.visualstudio.com/
https://reactflow.dev/
https://svelte.dev/
https://react.dev/
https://nextjs.org/
https://mui.com/
Describe alternatives you've considered
Additional context
Technical ideas

Probably keep the primary color as green? And just set the AppBars to use whatever grays are decided. Maybe the primary could be used for the font or something
Potentially we could consider doing the whole dark mode redesign #68 at this time, but be mindful that that'd be a huge scope increase

This was done as part of #458


[Helm chart] configmap-logging.yaml use the wrong "logEncoding" key

Version
Karpenter version: 0.16.2
Affected line: https://github.com/aws/karpenter/blob/main/charts/karpenter/templates/configmap-logging.yaml#L26
it should be like this:
"encoding": "{{ .Values.controller.logEncoding }}",

Expected Behavior
Set .Values.controller.logEncoding to json and it takes effective
Actual Behavior
It will be ignored by the Helm chart
Steps to Reproduce the Problem
Set .Values.controller.logEncoding to json and it will be ignored
Resource Specs and Logs
not relevant
Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

Thanks for reporting this @chrisduong .  I'll try to reproduce and get back to you.

Hey @chrisduong ,
The line you referenced is for the "Global" logEncoding value, which appears to work as expected (view below).  I'm wondering if we really need container specific logEncoding values.  I can't really think of a case where you would want the log format to be different between the Controller and Webhook containers.
helm upgrade --install --namespace karpenter --create-namespace \
  karpenter karpenter/karpenter \
  --version ${KARPENTER_VERSION} \
  --set serviceAccount.annotations."eks\.amazonaws\.com/role-arn"=${KARPENTER_IAM_ROLE_ARN} \
  --set clusterName=${CLUSTER_NAME} \
  --set clusterEndpoint=${CLUSTER_ENDPOINT} \
  --set aws.defaultInstanceProfile=KarpenterNodeInstanceProfile-${CLUSTER_NAME} \
  --set aws.enablePodENI=true \
  --set logEncoding="json" \
  --wait

# Example logs
{"level":"DEBUG","time":"2022-09-29T20:25:44.733Z","message":"Successfully created the logger."}
{"level":"DEBUG","time":"2022-09-29T20:25:44.733Z","message":"Logging level set to: debug"}
{"level":"INFO","time":"2022-09-29T20:25:44.742Z","logger":"controller","message":"Initializing with version v0.16.3","commit":"5d4ae35-dirty"}
{"level":"INFO","time":"2022-09-29T20:25:44.742Z","logger":"controller","message":"Setting GC memory limit to 966367641, container limit =<PHONE_NUMBER>","commit":"5d4ae35-dirty"}
{"level":"info","ts":1664483144.7420082,"logger":"fallback","caller":"injection/injection.go:61","msg":"Starting informers..."}
{"level":"DEBUG","time":"2022-09-29T20:25:44.776Z","logger":"controller.aws","message":"Using AWS region us-west-2","commit":"5d4ae35-dirty"}
{"level":"DEBUG","time":"2022-09-29T20:25:44.958Z","logger":"controller.aws","message":"Discovered caBundle, length 1066","commit":"5d4ae35-dirty"}
{"level":"INFO","time":"2022-09-29T20:25:44.958Z","logger":"controller","message":"loading config from karpenter/karpenter-global-settings","commit":"5d4ae35-dirty"}
{"level":"INFO","time":"2022-09-29T20:25:45.064Z","logger":"controller","message":"Starting server","commit":"5d4ae35-dirty","path":"/metrics","kind":"metrics","addr":"[::]:8080"}
{"level":"INFO","time":"2022-09-29T20:25:45.064Z","logger":"controller","message":"Starting server","commit":"5d4ae35-dirty","kind":"health probe","addr":"[::]:8081"}

Hi @dewjam, Thanks for explaining the usage of the Global  .Values.logEncoding, I overlook this.
For me, I'm good to have to one global log encoding for both controller and webhook.
But if .Values.controller.logEncoding is useless, it's better to be removed from the chart.

I agree, @chrisduong .  Let me look into removing those.

No more webhook, so only one option to control logEncoding now


Normalize AlignmentRecord.recordGroup* fields onto a separate record type

cf. a long discussion @fnothaft and I had in gitter, the recordGroup* fields should maybe be outsourced to their own record, and joined with ARs on the recordGroupName field.

Resolved by #906.


Seamless looping framework + times for Wild World

After some work, I have a framework for seamless looping of tracks, and have set up the loop times for Wild World. I haven't listened super closely to all the WW tracks, but for casual listening, I didn't hear any hiccups during the loops.
With this new setup, you can set start and end times for the loop in loopTimes.js. If no loop times exist for that game / hour combination, the extension will just loop the song from the beginning like it does currently. So right now if you listen to Wild World, you should get seamless loops for all hours, while the other games should function as they do in the current version.
Setting up loop times for the other games is super easy as far as the javascript is concerned, but time consuming to get the timecodes for the loop exactly right. I've added the loop points for 5pm in animal-forrest to show how to do this.
EDIT: I also added a debug flag in Utility.js, which prints some helpful text to the console and sets up some global functions to help with debugging when activated. If you're setting up loop times and want to check them without waiting for the correct time, make sure DEBUG_FLAG is true and that you're in the correct game, and then just call "setTime(hour)" in the web inspector console to change what hour the extension thinks it is.
NOTE: The method used for audio looping may not be compatible across different browsers, but for a chrome extension, that hopefully shouldn't matter too much. It's been rock-solid in every version of Chrome I've tested it in.

Amazing! That's really great, but is there a way to play the intro only once. Like : play song from beginning on if number of loops = 0 and from then on start the loop from x timestamp?
On Jan 25, 2016 1:16 AM, Kyle Owsen<EMAIL_ADDRESS>wrote:After some work, I have a framework for seamless looping of tracks, and have set up the loop times for Wild World. I haven't listened super closely to all the WW tracks, but for casual listening, I didn't hear any hiccups during the loops.
With this new setup, you can set start and end times for the loop in loopTimes.js. If no loop times exist for that game / hour combination, the extension will just loop the song from the beginning like it does currently. So right now if you listen to Wild World, you should get seamless loops for all hours, while the other games should function as they do in the current version.
Setting up loop times for the other games is super easy as far as the javascript is concerned, but time consuming to get the timecodes for the loop exactly right.
You can view, comment on, or merge this pull request online at:
  https://github.com/JdotCarver/Animal-Crossing-Music-Extension/pull/11
Commit Summary
Added structure for seemless looping, loop points for some Wild World hours.
Merge branch 'seamless_loop'
Added loop for 3pm, disabled DEBUG_FLAG
Added loop times for all Wild World songs, added some comments.
File Changes
M
manifest.json
(2)

M
scripts/AudioManager.js
(44)

A
scripts/LoopTimes.js
(109)

M
scripts/StateManager.js
(9)

M
scripts/Utility.js
(6)

Patch Links:
https://github.com/JdotCarver/Animal-Crossing-Music-Extension/pull/11.patch
https://github.com/JdotCarver/Animal-Crossing-Music-Extension/pull/11.diff
—Reply to this email directly or view it on GitHub.

That's actually what it does! The first time through it starts from the actual beginning of the song. The "start" timecode in loopTimes is just where the loop jumps back to each time it reaches "end".

 I was having a bit of an issue with the listeners jumping around with the time stamps. How did you manage to get the html5 audio object to play nice? From what I understand the progress event listener only gives a new currentTime property every ~250ms and wasn't consistent in my testing. How do you trigger the loops?
Harold Houchin

On Jan 24, 2016, at 11:25 PM, Kyle Owsen<EMAIL_ADDRESS>wrote:
That's actually what it does! The first time through it starts from the actual beginning of the song. The "start" timecode in loopTimes is just where the loop jumps back to each time it reaches "end".
—
Reply to this email directly or view it on GitHub.

I tried the progress listener, but had the same issue you must have had - it wasn't precise enough. Instead, when the song starts and on each iteration of the loop, it sets a setTimeout - which will change the audio object's currentTime to the start of the loop section of the song - to fire when we reach the end of the looping part of the song. This gives as little responsibility as possible to the html5 audio object, because you can't really trust it to be precise.
setTimeout isn't the most accurate timer in the world, but it's almost never off by more than 5-10 ms, which if you place your loop points well is nearly impossible to hear.

Nice work around! Very clever. Glad I wasn't crazy to try to use the
progress listener haha
On Sun, Jan 24, 2016 at 11:44 PM, Kyle Owsen<EMAIL_ADDRESS>wrote:

I tried the progress listener, but had the same issue you must have had -
it wasn't precise enough. Instead, when the song starts and on each
iteration of the loop, it sets a setTimeout - which will change the audio
object's currentTime to the start of the loop section of the song - to fire
when we reach the end of the looping part of the song. This gives as little
responsibility as possible to the html5 audio object, because you can't
really trust it to be precise.
setTimeout isn't the most accurate timer in the world, but it's almost
never off by more than 5-10 ms, which if you place your loop points well is
nearly impossible to hear.
—
Reply to this email directly or view it on GitHub
https://github.com/JdotCarver/Animal-Crossing-Music-Extension/pull/11#issuecomment-174410486
.

Thanks! If I've learned anything about JS, it's that you should try as hard as you can not to use setTimeout to hack your way around problems, but if you use them well you can work your way around pretty much anything.

Man I so want to get working on it now! :D

Could you please give me the name under which you'd like to appear in the credits? :)

You can call me by my actual name or my username whatever matches everyone else :)
Harold Houchin or hh4hooch
Sorry I didn't get a chance to contribute more.
I was working on the loops and was beat to the punch.

On Jan 25, 2016, at 12:17 PM, JdotCarver<EMAIL_ADDRESS>wrote:
Could you please give me the name under which you'd like to appear in the credits? :)
—
Reply to this email directly or view it on GitHub.

I'd like to be credited as Kyle Owsen.
Thanks!


Pull request for the deployment page

Since we can't pull request a wiki page, i suggest my changes here :

Specify how to install import excel module
Specify tenant ID in second position
Specify missing tenant ID parameter in deploy.ps1 command sample

Deployment Page below
Prerequisites
To begin, you will need:

Power Apps Studio
Power Automate
Azure Subscription with Global Administrator access level
Service account (used by Logic Apps to post welcome message with Teams user access permission)
SharePoint
Office 365 Groups connector
A copy of the Request-a-team app zip package

Step 1: Set up SharePoint and Azure resources
Please follow below steps to create new SharePoint site and lists:

Download the whole solution folder from GitHub

Open the PowerShell in administrator mode and navigate to deploy.ps1 in your local machine.

Before running the script, some installations are needed for the user who is running the script for the first time. Please find the steps below :

In the above-navigated path in PowerShell,run the command "Set-ExecutionPolicy -ExecutionPolicy unrestricted". This command will allow the user to run deploy.ps1 as execution policy is restricted by default. You can change it to restricted again after successful deployment.
Install Azure CLI module by running the command below :
"Invoke-WebRequest -Uri https://aka.ms/installazurecliwindows -OutFile .\AzureCLI.msi; Start-Process msiexec.exe -Wait -ArgumentList '/I AzureCLI.msi /quiet'"
Close the PowerShell window and open it again in administrator mode. Go to the path of deploy.ps1 script file.

Execute the following script (make sure to replace tenant name and site name with actual values)

Install ImportExcel module (it imports excel data to lists) :
"Find-Module -Name ImportExcel | Install-Module"

The script requires the following parameters:

TenantName - Name of the tenant to deploy to (excluding onmicrosoft.com) e.g. contoso

TenantId : This will be asked as a parameter when you run the script. (If you are not sure how to get Tenant ID, please check Azure Active Directory in Azure Portal. Under Manage, click Properties. The tenant ID is shown in the Directory ID box.)

RequestsSiteName - Name of the SharePoint site to store the requests, can include spaces (URL/Alias automatically generated). If the site exists, it will prompt to overwrite and will apply the provisioning template.

RequestsSiteDesc - Description of the site that will be created above.

ManagedPath - Managed path configured in the tenant e.g. 'sites' or 'teams' (no forward slash).

SubscriptionId - Azure subscription to deploy the solution to (MUST be associated with the Azure AD of the Office 365 tenant that you wish to deploy this solution to.)

Location - Azure region in which to create the resources. The internal name should be used e.g. uksouth. See Valid Azure Locations.

ResourceGroupName - Name for a new resource group to deploy the solution to - the script will create this resource group.

AppName - Name for the Azure AD app that will be created e.g. Request-a-team.

ServiceAccountUPN - UPN of Service Account to be used for the solution - used to connect the Logic App API connections.  Refer Assign a Teams license to know more details.

UseMSGraphBeta - Deploys a version of the provisioning logic app which uses solely the beta endpoint for the Microsoft Graph (provides the ability to create private channels when cloning teams and creating teams from your own defined templates). Otherwise the 1.0 endpoint will be used. Defaults to FALSE.

IsEdu - Specifies whether the current tenant is an Education tenant. If set to true, the Education Teams Templates will be deployed. These will be skipped if set to false or left blank.

>.\deploy.ps1 -TenantName "M365x023142" -TenantID "xxxxxxxx-xxxx-xxx-xxxxxxxxxxx" -RequestsSiteName "Request a team app" -RequestsSiteDesc "Used to store Teams Requests" -ManagedPath "sites" -SubscriptionId 7ed1653b-228c-4d26-a0c0-2cd164xxxxxx -Location "westus" -ResourceGroupName "teamsgovernanceapp-rg" -AppName "Requestateamapp" -ServiceAccountUPN<EMAIL_ADDRESS>-UseMSGraphBeta $false -IsEdu $false
The script will prompt for authentication during execution. Please login using a Global Administrator account except for the prompts below.
When the script asks for the Service Account password, please enter the password for your Service Account created earlier.
When the message "LOGIC APP CONNECTIONS AUTHORIZATION" is displayed, login to any authentication prompts using the Service Account specified above.
When the script has completed a "DEPLOYMENT COMPLETED SUCCESSFULLY" message will be displayed.

After running the script, SharePoint site, Logic Apps, Azure AD app and required API connections will get created.

Navigate to newly created SharePoint site and click on Site Content located at the left menu bar and confirm if there are 3 SharePoint lists created successfully (Teams Requests, Teams Templates and Team Request Settings).

Register Azure AD app as a SharePoint add-in (this is required for the solution to check if the requested Team exists before creation) -

Register Azure AD app as a SharePoint add-in

Navigate to the following page in the SharePoint Admin Center - https://contoso-admin.sharepoint.com/_layouts/15/appinv.aspx and enter the following information (replace contoso with the name of your tenant):

App Id: Application ID of the Azure AD app (Locate the Azure AD app created by the deployment script in Azure Active Directory and copy the Application ID).

Click 'Lookup'

In the 'App Domain' text box, enter a suitable domain.

In the App's Permissions Request XML text box, enter the following XML -
<AppPermissionRequests AllowAppOnlyPolicy="true"> <AppPermissionRequest Scope="http://sharepoint/content/tenant" Right="FullControl" /> </AppPermissionRequests>

Click 'Create'

Note:

If PowerShell script breaks during deployment, check if the resource group and SharePoint site is created. If created, please consider deleting them before running the script again.

Please make sure to click on each SharePoint list to see all columns are created, as the same will be linked with Power Apps.

Please copy the name of the site as it will be used in further steps.

Please share the SharePoint site to all Request-a-team application users by adding them as members a group or individually.

Step 2: Create Admin group
Please ignore this step from 1-7 if you already have a team of admins(who have the privilege to manage approval and rejection of team creation requests) and continue with #8.

Open Teams desktop app or open https://teams.microsoft.com/go#

Click on the Teams tab in the left menu bar

Click on Join or create team > click Create team button

Select Build your team from scratch > Select Private

Provide Team name and description > Click Next

After that a popup will open where you need to add members in your created team. Add all the members and then close the popup.

Confirm if a new team is created successfully.

Next to the team name, click on the "..." and select "Get link to team".
[[Images/Teamid1.png|Create Team]]

Click on "Copy" to copy the link to clipboard.
[[/Images/Teamid2.png|Copy Team ID]]

Get the groupID and channelID query string value as shown below:
[[/Images/ChangeChannelId.png|Get Channel ID from query string]]

tip: you can try online decoder to decode channel ID

Copy the groupId and channelId as it will be used in further steps.

Navigate to Team Request Settings list and edit TeamsTeamID and TeamsChannelID rows and In the 'value' column of these rows, add the copied groupID and channelID under TeamsTeamID and TeamsChannelID respectively.
[[/Images/TeamIdChannelId.png|Set Team ID and Channel ID in settings]]

Step 3: Set up Power Apps

Navigate to Power Apps. Click here

Click on Apps in the left side pane and click on Import canvas app.
[[/Images/step1.png|Request a team step 1]]

Download the package zip file and click Import.
[[/Images/step2.png|Request a team step 2]]

Under Related resources, you will be required to change the SharePoint connections. Click on wrench icon for SharePoint connection > Create new (you will be redirected to a new tab) > Click on SharePoint > switch back to main tab > click Refresh list > select name > Save.

Click on Import button.
[[Images/step3.png|Request a team set up step 3 for import]]

Configuring Power App

Click on Open app link when zip package is successfully imported. You will be redirected to Power Apps portal.

Click on Open menu at the left side > Power Apps > Request-a-team App which you have imported.

The app will request your permission to use all the listed data connections.
[[/Images/permission.png|Request a team Permission]]

Once the app opens, in the horizontal menu, click on View and select Data sources.
**Remove the three existing demo SharePoint connections by clicking on "..." and remove **. This ensure that the dummy SharePoint connections are removed and the app is ready to connect with the SharePoint site.

Search for SharePoint created during deployment and select.
[[/Images/edit1.png|Edit SharePoint connection]]

Enter the newly created SharePoint URL in pop-up window (it is same as provided for -RequestsSiteName parameter in deployment script)
[[/Images/edit2.png|Enter SharePoint site URL]]

Choose 'Teams Requests', 'Teams Templates', 'Team Request Settings' lists and connect it.
[[/Images/edit3.png|Select Teams Template]]

On app 'OnStart' function, paste the groupId of the admin group which you have created and saved the id before.
[[/Images/AppStart.png|Power Apps OnStart]]

Step 4: Set up Power Automate

Navigate to https://flow.microsoft.com using an account with 'Maker' permissions.
Click My Flows > Import.
Browse to the file location of the provided flow package - TeamRequestApproval.zip.
Update the Outlook Office 365, SharePoint and Approvals connection to use an existing connection or create new ones. Under Related resources, you will be required to change the connection. Click on wrench icon for SharePoint connection > Create new (you will be redirected to a new tab) > Click on SharePoint > switch back to main tab > click Refresh list > select name > Save.
Click Import.

Configuring Flows

Navigate to My Flows.

Edit the Team Request Approval flow.

Update SharePoint site address for step s“When a team request item is submitted” and “Teams Request Site”.

Replace admin’s email id if there is no admins team for application.

Click Save

Repeat the above process for the Check Team Availability flow. Update the SharePoint site address for steps

Check if site exists -SP API and
Check site exists response > Check for existing requests matching URL

Open Azure portal and under new resource group, search Logic App (Process team request). Edit Logic App to confirm

SharePoint site address:

[[/Images/LogicAppStep1.PNG|Logic Apps step]]
[[/Images/LogicAppStep2.PNG|Logic Apps step 2]]

You can change the Interval and Frequency in first step When an item is created or modified in order to process team requests at given interval. It will execute to read all Approved team requests to create SharePoint. The default setting is 1 week.

Step 5: Share Power Apps and SharePoint site

Admin needs to share the app to all individuals who will be using the app.

Open https://make.preview.powerapps.com/

Go to Apps menu in the left menu bar and you will be able to see the app you have imported.
[[/Images/Share11.png|Power Apps menu bar]]

Click on 3 dots (Options) for your app and click on Share.

Enter the group name meant for users in the popup and click on Share. You can also add additional members if needed. This is required to allow members to access Request-a-team App.

Share the SharePoint site to all members

Admin also needs to share the SharePoint site to all individuals who will be using the app. For giving access of SharePoint site, please follow below steps:

Go to SharePoint site created during deployment > click on Settings icon at top right corner > click on the "Site permission":

[[https://github.com/OfficeDev/microsoft-teams-apps-associateinsights/wiki/Images/sharesharepointsite-part1.png|Share SharePoint Site]]

Click on "Advanced Permissions settings".

Click on the Grant Permission option from top menu bar and search the user name or type the email address of the user to whom you want to share the site.

[[https://github.com/OfficeDev/microsoft-teams-apps-associateinsights/wiki/Images/sharesharepointsite-part2.png|Share SharePoint Site]]
Note: Every user accessing the app for the first time will be prompted to provide permissions to the App to access the SharePoint source. User should click on 'Allow' to proceed ahead.

Step 6: Install Teams Package

Open https://make.preview.powerapps.com/

Go to Apps menu in the left menu bar and you will be able to see the app you have imported.

Click on 3 dots (Options) for your app and click on Add to Teams.
[[/Images/Export1.png|Export application]]

Click on Download App in the popup to download a zip package.

Step 7: Adding app to Teams

Go to Teams > Apps (in the left menu) > Upload a Custom App.

Select the downloaded zip package from the previous step.

Click on Add > Add to a team in the popup.

Select a team or channel name.

Click on Setup a tab.
[[/Images/install1.png|Set up as a tab]]

The description for the app will be shown in the popup, click on Save.

You will be able to see the app in the tab.
[[/Images/install2.png|Application in Teams]]

Thanks @jeffangama - I will send this to the team who looks after the documentation element.

Working through deploying this. Suggest removing the recommendation to delete the Sharepoint site if the deploy.ps1 fails and instead just allow the script to overwrite on the next run.  If you delete the site, it goes into Deleted Sites and at least in my tenant, I cannot permanently delete the site.  Because it is "deleted" but not permanently the site alias is still reserved by Sharepoint.  If you run deploy.ps1 again the script cannot re-use the same site alias and you end up with something like .../sites/requestateam2.


NullPointerException in okio/okhttp3

got following crash in google play dev console using okhttp3.10 okio1.14
(only once but some hardening would be nice)
java.lang.NullPointerException:
at com.android.org.conscrypt.NativeCrypto.SSL_read (NativeCrypto.java)
at com.android.org.conscrypt.OpenSSLSocketImpl$SSLInputStream.read (OpenSSLSocketImpl.java:789)
at okio.Okio$2.read (Okio.java)
at okio.AsyncTimeout$2.read (AsyncTimeout.java)
at okio.RealBufferedSource.request (RealBufferedSource.java)
at okio.RealBufferedSource.require (RealBufferedSource.java)
at okhttp3.internal.http2.Http2Reader.nextFrame (Http2Reader.java)
at okhttp3.internal.http2.Http2Connection$ReaderRunnable.execute (Http2Connection.java)
at okhttp3.internal.NamedRunnable.run (NamedRunnable.java)
at java.lang.Thread.run (Thread.java:762)
Samsung Galaxy J7 Prime (j7popeltemtr), 2048MB RAM, Android 7.0

@swankjesse I know this is Android bug, but given it's not in app code either, should we consider handling in key places similarly to RealConnection.connectSocket?
    // The following try/catch block is a pseudo hacky way to get around a crash on Android 7.0
    // More details:
    // https://github.com/square/okhttp/issues/3245
    // https://android-review.googlesource.com/#/c/271775/
    try {
      source = Okio.buffer(Okio.source(rawSocket));
      sink = Okio.buffer(Okio.sink(rawSocket));
    } catch (NullPointerException npe) {
      if (NPE_THROW_WITH_NULL.equals(npe.getMessage())) {
        throw new IOException(npe);
      }
    }

Maybe this could be handled across the whole codebase by a Okio wrapper?

It mostly depends on frequency. If this impacted one device once we should ignore it.
If it impacts many devices we should attempt to get the root cause fixed, and then perhaps paper over the problem if people aren't able to get that fix.
In this case we're still without a root cause. Might be something specific to this app, like a bad JNI library that is scribbling over the managed heap.

Closing as a one off, I don't think we are planning a fix unless you see a significant number of these errors, especially with a rising android version e.g. 8.1.0


add enableReloadSchema flag to ExecuteFetchAsDba in tabletmanager

enableReloadSchema is false by default. If it is set to be true, ExecuteFetchAsDba
will reload tablet schema once it finishes successfully. In addition, this change
also make CopySchemaShard trigger schema reload.

OK I'll be a pain for the rest of the variables too, they're all named enableReloadSchema, should be just reloadSchema everywhere. Last nit pick, I swear. :)

Done. Rename variable to reloadSchema.

LGTM


Migrate to eslint

Issue #, if available:
#729
Description of changes:
TSLint is not evolving anymore, it is recommended to migrate to ESLint and that's what this PR is doing. I have also disabled all recommended rules that fail for current code base - can be fixed in further PRs. Notes:

TSLint was not connected to builds at all, and when I tried to run it manually multiple checks failed. I am enabling linting checks as a part of build process.
We cannot use the latest versions of ESLint and plugins as this library still supports Node v10.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Thanks for putting this together! I notice it's still in draft mode, were you planning to wait until the dependency on node v10 was removed?

Could you have this target the 5.0.0-development branch so we can include it in the next release? The dependency on Node v10 has already been removed there.


Android - Crash while an alert is shown when activity/fragment is not running

The commit above should fix this kind of crash.
I check only if the fragment is running but since a fragment cannot just run outside an activity...


Allow compiling with OpenCascade 7.3.0

Basically some of the BOP*** classes have been replaced by TopTools. Please have a look if older OCC versions still compile.

@rainman110 btw: is there a way to restart a CI build? it looks like appveyor did not error because of code changes.

Sure, I'll restart it.


[FEATURE REQ] mgmt function app, convenience API for container app daprConfig and managedEnvironmentId

Will support them when stable 2023-01-01 gets into main branch.

There is another change in the swagger which our team made. Add Container Apps Environment Id in checknameavailability API (#24102) · Azure/azure-rest-api-specs@d378056 (github.com).

upgrade request https://github.com/Azure/sdk-release-request/issues/4460


Add opening bracket to GlogFormatter

I can't tell if this is intentional or not: https://github.com/op/go-logging/blob/master/format.go#L121
This produces output like:
I0321 19:49:55.5152 64259 music.go:75] Starting application

I think that the desired output is similar to the following with an opening bracket (which this PR adds):
[I0321 19:49:55.5152 64259 music.go:75] Starting application

That format tries to mimic the output of glog which does not contain the leading bracket AFAIK.
https://github.com/golang/glog

You're correct. Here's the line for reference: glog.go:564.

Awesome, thanks though.

I guess it's more of a divider, much like you might list things like 1) 2) 3)


[Web] Chart Path flickers with reanimated 2.3

sigh #60 led to a regression on Web, wherein the line chart flickers.
Video: https://www.loom.com/share/5d0da352c04c46b7b9292f11496dff7d
My guess is this is due to the underlying usage of setNativeProps or something. Will have to look into it. I think Reanimated really needs to rethink its usage of setNativeProps on Web.

I ended up hiding inactive path on Web.


TypeError: Cannot read properties of undefined (reading 'minimalContext')

Please provide the environment you discovered this bug in.
Analog version
v1.5.0
Tested on:
3 windows machines
1 stackblitz
https://stackblitz.com/github/analogjs/analog/tree/stackblitz/packages/create-analog/template-latest?file=vite.config.ts&preset=node

Which area/package is the issue in?
create-analog
Description
after running

npm create analog@latest
npm i
and when running npm start the analog app starts
however this error message appears :

Please provide the exception or error you saw
TypeError: Cannot read properties of undefined (reading 'minimalContext')
TypeError: Cannot read properties of undefined (reading 'minimalContext')

Other information
so far I know that this affects the styles:

the elements are no longer centered
the cool on hover box shadow on the Analog logo doesn't work
and possibly more

I first encountered the error within the last 48h

2 days ago I created a v1.5.0 Analog app without seeing this error message

As much as I would like to I could not submit a PR since I do not know where that
minimalContext is, could not find it
I would be willing to submit a PR to fix this issue

[ ] Yes
[ ] No

The issue is the Angular CLI is pinned to 5.2.11 and using ^5.0.0 installs the latest version of Vite which is 5.3.0. This causes two copies of Vite to be installed.
The fix has already landed on beta but you can update your package.json for Vite to ~5.2.11

all paths lead to Vite 😅 ok, thank you so much @brandonroberts
I will make the suggested adjustments 🙏

Landed a proper fix for this in https://github.com/analogjs/analog/pull/1214. It will go out with 1.6.2


Configuring slbs stopped working with 32.0.0

With 32.0.0 using load balancer via VM extension does not work anymore. It works fine with 31.0.0. Potentially this is caused by https://github.com/cloudfoundry-incubator/bosh-alicloud-cpi-release/pull/115 and/or https://github.com/cloudfoundry-incubator/bosh-alicloud-cpi-release/pull/114.
Also see docs https://bosh.io/docs/alicloud-cpi/#resource-pools. The formatting is broken by the way.

@friegger What problems do you encounter with 32.0.0 and why do you think 114 or 115 pr has problems

Hi ,
following is a very simple code to reproduce this issue
vm_extensions:

name: landscape_credhub_lb
cloud_properties:
slbs:

(( .terraform.credhub_lb_id ))

name: landscape_uaa_lb
cloud_properties:
slbs:

(( .terraform.uaa_lb_id ))
The lb_ids are the output from terraform of a alicloud_slb resource:
output "credhub_lb_id" {
value = alicloud_slb.credhub-lb.id
}

What are the errors you encountered during deployment

the symptom is VM is not attached to LB as above

I'm sorry, I can't see the image content information, but I think it may be a parameter type conversion error. Maybe you need to convert the parameter type from string to int.

I'm sorry, I can't see the image content information, but I think it may be a parameter type conversion error. Maybe you need to convert the parameter type from string to int.

Hi @chushenmeshile ，
I don't understand what you mean. This issue only happens in new cpi version. there should be some changes in CPI which causes this issue. Do you try to reproduce it？

Hi @chushenmeshile ，
I don't understand what you mean. This issue only happens in new cpi version. there should be some changes in CPI which causes this issue. Do you try to reproduce it？

The parameter type has changed from string to int, and the default value has been cancelled. Therefore, I think there may be a problem with the data type you passed in the configuration file.

The parameter type has changed from string to int, and the default value has been cancelled. Therefore, I think there may be a problem with the data type you passed in the configuration file.

HI @friegger I am sorry for the late reply. This issue has been fixed by #120 and it has been published in the release v33.0.0. Please have a check.


Recommended Improvements for the Code GSSOC'23

Is your feature request related to a problem? Please describe.
There are a few improvements that can be made to the code:
-Avoid Duplicate CDN Link
-Organize CSS Styles
-Minimize JavaScript
Describe the solution you'd like.
-Avoid Duplicate CDN Links: The code has multiple duplicate links for the same external resources, such as Google Fonts and Email.js. You can remove the duplicate links to keep the code cleaner.
-Organize CSS Styles: The CSS styles in the

I would like to work on this issue please assign it to me.

Sure @shivam0277


perf(InnerProduct.Adjoint): speed up elaboration in two proofs

For as yet un-completely diagnosed reasons, unitary.star_mul_self_of_mem hu for (hu : u ∈ unitary (H →L[𝕜] H)) elaborates slowly thanks to [1.068378s] ✅ ContinuousLinearMap.comp (ContinuousLinearMap.adjoint u) u =?= star ?a * ?b. This PR pulls out the statements into have's which speeds up the proofs significantly. #11299 documents the issue for future investigation.

!bench

@j-loreaux is this too silly?

The fact that it's necessary is silly, but the PR is fine (especially for a 9% speedup on this file)
bors merge


feat(eds/store): Padding deduplication inside ODS CAR via mount logic

This was a dupe and not an issue anyways because a padding share is only stored once per CAR. Regardless, we are deprecating CARs soon.


complete the services we have documentation on Java Developer Guide

Many services Java SDK support do not appear on the left bar of Java Developer Guide
http://msdn.microsoft.com/en-us/library/windowsazure/hh690943(VS.103).aspx

Thank you for the suggestion.  It appears this issue is out of date.  Please let us know if you still see a problem.


Use lazy JsObjects for JS tracing

Describe the feature
Currently we create new JsObjects on demand during JS tracing:
for example for step:
https://github.com/paradigmxyz/reth/blob/main/crates/revm/revm-inspectors/src/tracing/js/mod.rs#L216-L223
profiling showed, creating new JsObjects is very expensive.
Instead, we want a solution that utilizes  existing JsObjects so we only have to create them once and clone them instead with updated state
This needs a bit more investigation how geth js tracing behaves if the input objects are stored in js trace object's context
Additional context
No response

Can I take this?

yes!
this is a bit tricky though, we likely need to use same Rc and shared mutability hacks here.
if you need some pointers/questions lmk by opening a draft PR

revm-inspector seems to have been removed from the repo


Render all diagnostics in hovers

For #405

Coverage increased (+0.8%) to 28.246% when pulling<PHONE_NUMBER>11918cbf6ce27abbcca20d7758edc3 on hint-info-diagnostic-ui into 25e63ba9c7df8b92d21bc282cdf0fe1910e268a1 on master.


CXXCBC-145: Search query request raw option not used

Jenkins, test this please

Jenkins, test this please


add fft2d + test

Note: Using https://github.com/headupinclouds/fft2d
Need: https://github.com/hunter-packages/fft2d
https://github.com/ruslo/hunter/issues/1153

[x] has hunter-packages/fft2d

Testing:

https://ci.appveyor.com/project/ingenue/hunter/build/1.0.2713
https://travis-ci.org/ingenue/hunter/builds/299737592?utm_source=github_status&utm_medium=notification

Merge branch 'master' into pr.fft2d ... b62fef4

Have to retest:

https://ci.appveyor.com/project/ingenue/hunter/build/1.0.2724
https://travis-ci.org/ingenue/hunter/builds/300053604?utm_source=github_status&utm_medium=notification

Uploading:

https://ci.appveyor.com/project/ingenue/hunter/build/1.0.2726
https://travis-ci.org/ingenue/hunter/builds/300062849?utm_source=github_status&utm_medium=notification

Follow-up: https://github.com/ruslo/hunter/commit/715214296932de8d116db4055f5040963d13fb0f
Released: https://github.com/ruslo/hunter/releases/tag/v0.19.146


WIP: New collision strategy: impulse resolution

Based on https://gamedevelopment.tutsplus.com/tutorials/how-to-create-a-custom-2d-physics-engine-the-basics-and-impulse-resolution--gamedev-6331. Only the circular version is implemented so far.
It seems to be working OK, but it sometimes looks kind of weird, and I think that's because of a problem with the positional correction.
View deploy preview here: https://deploy-preview-5--pensive-galileo-df7257.netlify.app/
@JarnaChao09 @regexBuster @presssssure

I've now implemented axis-aligned boxes, and the walls on the edges of the page are now just boxes with infinite masses.
The collisions seem to be working pretty well.
The main bug I've noticed is that objects can sometimes go through the walls. This happens especially with small objects and with fast-moving objects. I've seen this with circular objects, and I haven't checked whether it happens with boxes.

Perhaps increasing frame rate for the p5 sketch might allow us to catch some of the small fast moving objects.

Another workaround for wall collisions in particular might be to just make the walls a lot thicker.


tput: command not found

Sail Version: 1.13.8
Laravel Version: Framework 9.6.0
PHP Version: 8.1
OS: Linux (Synology DSM 7.0.1-42218 Update 3)

Description:
I'm developing Laravel web apps with sail on a Synology NAS with Docker. Today I started a new Laravel project with the command:
curl -s "https://laravel.build/example-app" | bash
After installation I started the Docker container with the command:
./vendor/bin/sail up
The first result I get was:
vendor/laravel/sail/bin/sail: line 21: tput: command not found
It resulted in a working Docker container, but I don't know what this error meant. Can someone explain it and perhaps repair it?
Steps To Reproduce:
curl -s "https://laravel.build/example-app" | bash
./vendor/bin/sail up

If there's no immediate bug then I don't think this is the right place for this. I'm not sure what that message means but if everything works for you then I'm going to close this for now. We'd welcome PR's to resolve that message.

On Redit I read this about Synology DSM NAS:

DSM is a very slim OS compared to a full-fat server OS like Ubuntu or CentOS, and it straight up does not have many common libraries and binaries (for example, it doesn't have basic binaries like lsof, nano, cal, man pages, make, locate, etc.).
Maybe tput is not installed on a Synology NAS device?

Still exists:
Sail scaffolding installed successfully.
   WARN  TTY mode requires /dev/tty to be read/writable.

/root/example-app/vendor/laravel/sail/bin/sail: line 21: tput: command not found


Add basic implementation of primitives

The basic implementation for Model, Sampler and MAML have been added,
along with two launcher scripts:

One for training a basic classifier
One for training the MAML algorithm

Currently there's only one specific sampler for MNIST.
The MAML algorithm is not converging to good results, even if a pre-
trained model is used (see save and restored methods in Model), so
further debugging is required.

I will try to debug MAML today. The basic implementations looks good.
Thanks Utkarsh.
Ok, I actually will merge everything here except MAML, and put MAML in its own branch until it works to only keep working code in master.


Add extandable multi-OS support

Resolves #29.
Adds ability to implement #40 (current mongod binary version (4.4.6) is now defined only in MongodBinary class).
This PR extends plugin support up to:

Ubuntu 16.04 (with warning)
Ubuntu 18.04
Ubuntu 20.04
Debian 9.2 (with warning)
Debian 10.0 (with warning)
macOS
Windows

I added warnings to several OS because none of the contributors seems to use them. However, they SHOULD work as intended. In case of using non LTS version of the distro, I added fallback strategy.
As the plugin highly depends on mongod binary, the only OS left unsupported are:

Amazon Linux
CentOS
SUSE
all ARM versions of OS

I've also replaced downloading function from plugin.py::mongod_binary function to MongodBinary class, as well as separated it with unpacking function. The unpacking function was upgraded to support .zip format, which mongod binary for Windows uses.

Also, as discussed in #29, we may want to create a new long-term enhancement issue for docker and existing installation support.

Fixed #38 as well.

Also, I should have started this review by saying thanks! Pulling this out of the main plugin module is a great improvement and adding support for more platforms is awesome too!

FYI I just added a new GitHub Action job to check the formatting of the code and made it a required status check for the master branch. I think you will have to merge master into your branch so that it runs on this PR.

Merged, except for test_mongo_ver function, because I already rewrote it.


ISPN-12568 CLI alias command help

https://issues.redhat.com/browse/ISPN-12568
Needs backport to 11.0.x

integrated! thanks @oraNod !


[VL] Rework gluten-te for containerized static build

Description
Once we wanted to remove gluten-te but over time it's like we are still lack of a way to create a runnable, portable gluten build within minimal effort.
So we may keep gluten-te but rework it to:

Drop gluten-te's dynamic build code path
Add static build code path instead
Add documents for single-command containerized build through gluten-te

1st PR merged https://github.com/apache/incubator-gluten/pull/6457

2nd PR merged https://github.com/apache/incubator-gluten/issues/7535


Fuzzy Search in bookmarks

This would be great!
One way to implement:

I type "boo", matches "Bookmarks..."
A new panel opens containing all the bookmarks.
I type again to narrow list of bookmarks and press enter.


add default constructors in some accessorClasses.cpp classes for empty cases.

Fixes Issue #379

If it fixes the problem, then looks good to me.  Thanks @perrydv

I cleaned up the trailing semi-colons.  That is such a trivial change I am now going to squash and merge. @danielturek this should let you move ahead with Issue #379 fixed

Thanks!


fixes distance from scroll

This PR uses @caltabid's suggested fix to address issue #38.

I just took a look and this seems reasonable to me, anything that can be done to simplify the get the elements top logic is good. Considering people claim that this is fixing something, can you manage to write a failing test? If not, why do the current tests pass when they are broken in your implementation? The app I work on uses this allot, this page for example uses the lib to power those ['overview', 'details', 'location', 'reviews'] tabs, they work fine when scrolling in reverse (which I believe was the original issue in #38)
Anyways, I just pulled this in and ran the test suite on the decently massive ember app I work on and things look good.
However, @sardyy I cannot merge things here, I am just a lurker and not currently a contributor on this repo.


Advanced find in combination with Personal views not working

I am missing the option to use my personal views in advanced find directly from the actual personal view. In 7 different environments all giving me an error that I do not have permission (I am an admin) for the view and that my own personal view can not be used in advanced find.

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

ID: 9ab324e0-f5c6-64cb-d93b-85d238bf25d3
Version Independent ID: 94fbb660-5300-51a1-9c98-4b6500800e29
Content: About Unified Interface Dynamics 365 for Customer Engagement apps
Content Source: ce/admin/about-unified-interface.md
Service: crm-online
GitHub Login: @mduelae
Microsoft Alias: mkaur

@basvb1992 Thank you for your feedback. This looks like a product related issue that you will need to contact support. This forum is for feedback on content issues only.
Thank you,
Mints


Firefox: router can't identify route if it contains | (pipe) char

Basically Firefox doesn't encode | (pipe) char, actually even if it is already encoded to %7c it decodes it - this way router can't identify the route.
Actually this issue is related to route-node https://github.com/troch/route-node/issues/19 but wanted to point it out here, as it bugs router5 in some way.

Fixed in route-node v3.0.3


The data format of sample_id and sample_words in the decoder outputs

I got this weird data format from the decoder for sample_words, something like:
[[b'i' b'am' b'fine' b',' b'thank' b'you' b'.' b'eos']]
I don't know what this is. When I posted this on stackoverflow, many people considered that I had typo and did not include the commas. I double checked the sample_id before the lookup from the reverse_vocab_table, it looks like this:
[[ 53 162 169 24 152 27 3 2]]
What is the data format? I don't know how to convert them.
However, I did see that TensorFlow knows there are 8 elements there (although it is not a python list). I carefully checked the decode_and_evaluate method and get_translation methods, but I could not make it work.
Could you please explain or provide ways to correct this?
Thank you so much!

When I added a line to check the shape of sample_words, it suddenly started to work (with commas in between each token). Maybe my IDE was having some kind of problem. Anyway, thanks.


Integrate ExportBamDefinitionXml V2.0

Need to integrate ExportBamDefinitionXml V2.0.  No longer requires Excel to be installed (no longer uses Excel automation).
This work item was migrated from CodePlex
CodePlex work item ID: '6034'
Assigned to: 'tfabraham'
Vote count: '0'

[UnknownUser@2/16/2010]
Resolved with changeset 36599.

[UnknownUser@2/21/2013]

[UnknownUser@5/16/2013]


Asbtract Companies House search

Context

Abstract Companies House search into its own JS file
Ensure UkEmployerForm across both user journeys are unified:

when user registers a new account
when user registers an interest in a case

Codecov Report
Base: 40.37% // Head: 40.43% // Increases project coverage by +0.05% :tada:

Coverage data is based on head (690aaa1) compared to base (cfdfaa8).
Patch coverage: 100.00% of modified lines in pull request are covered.

Additional details and impacted files
@@             Coverage Diff             @@
##           develop     #241      +/-   ##
===========================================
+ Coverage    40.37%   40.43%   +0.05%
===========================================
  Files           93       93
  Lines         5241     5246       +5
  Branches       602      602
===========================================
+ Hits          2116     2121       +5
  Misses        3125     3125

Impacted Files
Coverage Δ

trade_remedies_public/cases/tests.py
100.00% <100.00%> (ø)

..._public/cases/v2_forms/registration_of_interest.py
100.00% <100.00%> (ø)

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

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


PR for #18: typo in helpfiles xtevent and xteventplot

Closes #18

@Constantino-Carreto-Romero why is this PR showing changes to so many files? Looks like some commits from other issues are in this PR and they shouldn't be, since this is only for #18. Please check.

@Constantino-Carreto-Romero I think what happened was that you made commits in the other issues after starting a PR, instead of adding them to the PR itself, and so they latched to this PR. Can you fix this?

@Constantino-Carreto-Romero on second thought, maybe what happened is that you did not generate code branches for each issue, hence the mixup.


Add Transactions pagination

I added the transactions_pagination function.
I would like you to check and merge.

Thank you for your PR.
I'll check it.


Lambda-Specific Resource Actions Enhancement

We use Cloud Custodian to report on non-compliant Lambda functions, and having an action that suspends them like other resource types would be useful.
(I realize it's not really due to cost, it's more about maintenance and being able to contact someone when their code goes sideways.)
A really effective way of disabling lambdas is setting their concurrency to 0. Below is the script we've been using - it just takes as input a file name that has lambda function names deliminated by a newline char.
> import boto3
>
> __filepath__ = 'lambda.txt'
>
> def suspend_lambda(client, function_name):
>     response = client.put_function_concurrency(
>         FunctionName=function_name,
>         ReservedConcurrentExecutions=0
>     )
>     return response
>
> def main():
>
>     client = boto3.client('lambda', region_name = 'us-west-2')
>
>     with open(__filepath__) as fp:
>         line = fp.readline()
>         while line:
>           try:
>             line = fp.readline().strip()
>             print(line)
>             response = suspend_lambda(client, line)
>           except Exception as e:
>             print(e)
>             pass
>     return
>
> if __name__ == '__main__':
>     main()

If this is already a feature that I'm not aware of, please let me know 👍
EDIT: the code looks a little funny because github isn't commenting out the code right...

one caveat we'll need to add a separate filter (at the cost of an api call per lambda) to retrieve extant reserved concurrency allocation. i took a stab at the action earlier today, for setting concurrency to a static value, deleting concurrency, and setting concurrency to a cw metric queried value.


Unexpected Error when clicked on save/reset button in my settings

Version-Release number of selected component (if applicable):
master.20150304013001_57a1769
How reproducible:
100%
Steps to Reproduce:
1.Navigate to configure->my settings->visuals
2.click on save or reset button
3.
Actual results:
unexpected error displayed. see attached screenshot
Expected results:
No error

production.log:
[----] I, [2015-03-04T04:58:56.014516 #2365:c2de90]  INFO -- :   Parameters: {"utf8"=>"✓", "authenticity_token"=>"anSfpvw06tADANZcDbZyl4i7nlFbb55QL+RnmrG2gPY=", "quadicons_ems"=>"1", "quadicons_ems_cloud"=>"1", "quadicons_host"=>"1", "quadicons_storage"=>"1", "quadicons_vm"=>"1", "quadicons_miq_template"=>"1", "quad_truncate"=>"m", "start_page"=>"/dashboard/show", "perpage_grid"=>"20", "perpage_tile"=>"20", "perpage_list"=>"20", "perpage_reports"=>"20", "display_reporttheme"=>"MIQ", "display_timezone"=>"UTC", "display_locale"=>"default", "button"=>""}
[----] F, [2015-03-04T04:58:56.031687 #2365:c2de90] FATAL -- : Error caught: [ActionView::MissingTemplate] Missing template configuration/update, application/update with {:locale=>[:en], :formats=>[:html], :handlers=>[:erb, :builder, :jbuilder, :rjs, :haml]}. Searched in:

"/var/www/miq/vmdb/app/views"

/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_view/path_set.rb:58:in find' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_view/lookup_context.rb:122:in find'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_view/renderer/abstract_renderer.rb:3:in find_template' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_view/renderer/template_renderer.rb:34:in determine_template'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_view/renderer/template_renderer.rb:10:in render' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_view/renderer/renderer.rb:36:in render_template'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_view/renderer/renderer.rb:17:in render' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/abstract_controller/rendering.rb:110:in _render_template'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_controller/metal/streaming.rb:225:in _render_template' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/abstract_controller/rendering.rb:103:in render_to_body'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_controller/metal/renderers.rb:28:in render_to_body' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_controller/metal/compatibility.rb:50:in render_to_body'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/abstract_controller/rendering.rb:88:in render' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_controller/metal/rendering.rb:16:in render'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_controller/metal/instrumentation.rb:40:in block (2 levels) in render' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/activesupport/lib/active_support/core_ext/benchmark.rb:5:in block in ms'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/2.0.0/benchmark.rb:296:in realtime' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/activesupport/lib/active_support/core_ext/benchmark.rb:5:in ms'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_controller/metal/instrumentation.rb:40:in block in render' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_controller/metal/instrumentation.rb:83:in cleanup_view_runtime'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/activerecord/lib/active_record/railties/controller_runtime.rb:24:in cleanup_view_runtime' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_controller/metal/instrumentation.rb:39:in render'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_controller/metal/implicit_render.rb:10:in default_render' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_controller/metal/implicit_render.rb:5:in send_action'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/abstract_controller/base.rb:167:in process_action' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_controller/metal/rendering.rb:10:in process_action'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/abstract_controller/callbacks.rb:18:in block in process_action' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/activesupport/lib/active_support/callbacks.rb:557:in _run__1136758575631020489__process_action__2012266661704671884__callbacks'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/activesupport/lib/active_support/callbacks.rb:405:in __run_callback' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/activesupport/lib/active_support/callbacks.rb:385:in _run_process_action_callbacks'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/activesupport/lib/active_support/callbacks.rb:81:in run_callbacks' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/abstract_controller/callbacks.rb:17:in process_action'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_controller/metal/rescue.rb:29:in process_action' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_controller/metal/instrumentation.rb:30:in block in process_action'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/activesupport/lib/active_support/notifications.rb:123:in block in instrument' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/activesupport/lib/active_support/notifications/instrumenter.rb:20:in instrument'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/activesupport/lib/active_support/notifications.rb:123:in instrument' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_controller/metal/instrumentation.rb:29:in process_action'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_controller/metal/params_wrapper.rb:207:in process_action' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/activerecord/lib/active_record/railties/controller_runtime.rb:18:in process_action'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/abstract_controller/base.rb:121:in process' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/abstract_controller/rendering.rb:45:in process'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_controller/metal.rb:203:in dispatch' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_controller/metal/rack_delegation.rb:14:in dispatch'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_controller/metal.rb:246:in block in action' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_dispatch/routing/route_set.rb:73:in call'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_dispatch/routing/route_set.rb:73:in dispatch' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_dispatch/routing/route_set.rb:36:in call'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/journey-1.0.4/lib/journey/router.rb:68:in block in call' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/journey-1.0.4/lib/journey/router.rb:56:in each'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/journey-1.0.4/lib/journey/router.rb:56:in call' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_dispatch/routing/route_set.rb:608:in call'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/rack-cache-1.2/lib/rack/cache/context.rb:136:in forward' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/rack-cache-1.2/lib/rack/cache/context.rb:143:in pass'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/rack-cache-1.2/lib/rack/cache/context.rb:155:in invalidate' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/rack-cache-1.2/lib/rack/cache/context.rb:71:in call!'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/rack-cache-1.2/lib/rack/cache/context.rb:51:in call' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_dispatch/middleware/best_standards_support.rb:17:in call'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/rack-1.4.5/lib/rack/etag.rb:23:in call' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/rack-1.4.5/lib/rack/conditionalget.rb:35:in call'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_dispatch/middleware/head.rb:14:in call' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_dispatch/middleware/params_parser.rb:21:in call'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_dispatch/middleware/flash.rb:242:in call' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/rack-1.4.5/lib/rack/session/abstract/id.rb:210:in context'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/rack-1.4.5/lib/rack/session/abstract/id.rb:205:in call' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_dispatch/middleware/cookies.rb:341:in call'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/activerecord/lib/active_record/query_cache.rb:64:in call' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb:479:in call'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_dispatch/middleware/callbacks.rb:28:in block in call' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/activesupport/lib/active_support/callbacks.rb:405:in _run__3315031746344454710__call__1252446697955162131__callbacks'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/activesupport/lib/active_support/callbacks.rb:405:in __run_callback' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/activesupport/lib/active_support/callbacks.rb:385:in _run_call_callbacks'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/activesupport/lib/active_support/callbacks.rb:81:in run_callbacks' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_dispatch/middleware/callbacks.rb:27:in call'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_dispatch/middleware/remote_ip.rb:31:in call' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_dispatch/middleware/debug_exceptions.rb:16:in call'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_dispatch/middleware/show_exceptions.rb:56:in call' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/railties/lib/rails/rack/logger.rb:32:in call_app'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/railties/lib/rails/rack/logger.rb:18:in call' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_dispatch/middleware/request_id.rb:22:in call'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/rack-1.4.5/lib/rack/methodoverride.rb:21:in call' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/rack-1.4.5/lib/rack/runtime.rb:17:in call'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/activesupport/lib/active_support/cache/strategy/local_cache.rb:72:in call' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/rack-1.4.5/lib/rack/lock.rb:15:in call'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/actionpack/lib/action_dispatch/middleware/static.rb:63:in call' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/railties/lib/rails/engine.rb:484:in call'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/railties/lib/rails/application.rb:231:in call' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/rack-1.4.5/lib/rack/content_length.rb:14:in call'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/railties/lib/rails/rack/log_tailer.rb:17:in call' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/thin-1.3.1/lib/thin/connection.rb:80:in block in pre_process'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/thin-1.3.1/lib/thin/connection.rb:78:in catch' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/thin-1.3.1/lib/thin/connection.rb:78:in pre_process'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/thin-1.3.1/lib/thin/connection.rb:53:in process' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/thin-1.3.1/lib/thin/connection.rb:38:in receive_data'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/eventmachine-1.0.7/lib/eventmachine.rb:187:in run_machine' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/eventmachine-1.0.7/lib/eventmachine.rb:187:in run'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/thin-1.3.1/lib/thin/backends/base.rb:61:in start' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/thin-1.3.1/lib/thin/server.rb:159:in start'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/rack-1.4.5/lib/rack/handler/thin.rb:13:in run' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/gems/rack-1.4.5/lib/rack/server.rb:268:in start'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/railties/lib/rails/commands/server.rb:70:in start' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/railties/lib/rails/commands.rb:55:in block in <top (required)>'
/opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/railties/lib/rails/commands.rb:50:in tap' /opt/rubies/ruby-2.0.0-p643/lib/ruby/gems/2.0.0/bundler/gems/rails-8f014fba21f9/railties/lib/rails/commands.rb:50:in <top (required)>'
script/rails:6:in require' script/rails:6:in '

@akarol , Can you please provide browser information, and exact steps to recreate i have not been able to recreate this on Firefox 35.0 & Chrome 40.0.2214.111 (64-bit).

@akarol I can not recreate either . .. please verify or provide more detailed info.  The Save/Reset buttons should not be enabled until you change something on the form.  Even after that, though, both buttons work for me.

@dclarizio maybe same issue as https://bugzilla.redhat.com/show_bug.cgi?id=1202216

fixed in PR #2182

No error on save/reset buttons.
verified :master.20150430053603_05ac99e


Handle the error event on the child process

Short description of what this resolves:
Changes proposed in this pull request:

Ionic Version: 4.0
Fixes: Fix person like me who can't be able to npm install the core directory too... 👍

Thank you for the PR! It seems this has been reworked since so I will be closing this, but we appreciate it!


Partition object ownership

test_initPtnObjOwnership demonstrates a potential problem with the relationship between the Partition object and its use by the Redev object.  Specifically, a reference to the Partition object is stored in Redev here:
https://github.com/SCOREC/redev/blob/17e2c769b0d4a6bcde8b496f72796c496cb9ab60/redev.h#L114
and if the user lets the Partition object go out of scope the reference will be invalid/dangling.
A bit of background: Redev calls the methods of the polymorphic Partition virtual class for pass information about the 'rendezvous' partition to the client applications.  There are currently two derived Partition classes: RCBPtn and ClassPtn.
Note, the ctest test that demonstrates the problem is marked as WILL_FAIL here:
https://github.com/SCOREC/redev/blob/17e2c769b0d4a6bcde8b496f72796c496cb9ab60/CMakeLists.txt#L126
Some possible fixes:

Store a unique_pointer in Redev instead of a reference - this blog https://iamsorush.com/posts/unique-pointers-cpp/ uses a factory method but that would be problematic here given the different constructors of RCBPtn and ClassPtn.
Store a shared_pointer? https://iamsorush.com/posts/unique-pointers-cpp/
Hide the derived partition classes and have Redev provide a method that wraps the constructors and owns the resulting object.  IIRC, the user only ever passes the partition object into Redev so this may be the best approach if the 'tight coupling' of the two objects (redev and partition) was OK.

I think the disadvantage of unique_ptr is different than the one you state, but still the easiest/most ideal choice for this. You don't necessarily need a factory function, you can just make the user construct a unique_ptr of one of the derived classes instead of constructing the object directly. You can pass in the unique_ptr of derived into a function that takes unique_ptr of base. See godbolt .
The disadvantage of unique_ptr is that it makes your class move only unless you add copy constructors/assignment. There is another technique called type erasure which could be used to give the Partition type value semantics w/o exposing pointers in the API. I highly recommend this talk on the topic. Happy to have a more robust discussion on the topic.


fix(misc): kill redundant redraw during incsearch (#485)

I just use nvim-cmp to test nvimlsp and found the redraw issue for incsearch.
<C-r><Esc> is less side effect than <C-r>=""<CR>

LGTM. It works great. Thank you!


Allow plugin registration via command line (issue 23)

https://github.com/walmartlabs/lumbar/issues/23

Outside of two minor things the new stuff looks fine. I think we should updating the existing plugins to instance returning objects to match the style used here but that can be done in another pull.


update some dependencies

Signed-off-by: koushiro<EMAIL_ADDRESS>
update some dependencies
use thiserror intead of quick-error for error handling
make clippy happy

@koushiro thanks! Could you resolve the conflict? And have you tried to compile the branch with TiKV master?

@koushiro thanks! Could you resolve the conflict? And have you tried to compile the branch with TiKV master?

Yeah, I have tried it.
But the changes of MemTableAccessor::new caused the CI fail :confused:


new codewoners added

↪ Pull Request

✔ PR Todo

[ ] Add documentation
[ ] Add examples
[ ] Ensure you are following the practices in the contributor guide and coding_standards

Use consistent and descriptive name conventions
Uses google-style docstrings
Uses versioned API/client methods only
Avoid global variables
Avoid giant try/catch
Don't use mutable default variables
Use a main() function in your scripts

[ ] Added/updated testing for this change (ensure you are testing any changes/new code!)
[ ] Update title to link to TBOX issue (i.e. start pull request title with TBOX-xx)
[ ] Approval from first code-reviewer
[ ] Approval from second code-reviewer (only required if a second reviewer has left comments)
[ ] Pass all checks

Can you link this to the Jira ticket by starting the title with "TBOX-: "?


Add OutputIdProof to /api/core/v3/outputs/{outputId}

https://editor.swagger.io/?url=https://raw.githubusercontent.com/iotaledger/tips/tip48/tips/TIP-0048/openapi3-core.yaml
Started with this, but then wasn't sure about the type for output_commitment_proof
/// The proof of the output identifier.
#[derive(Clone, Debug, Eq, PartialEq, Hash)]
#[cfg_attr(
    feature = "serde",
    derive(serde::Serialize, serde::Deserialize),
    serde(rename_all = "camelCase")
)]
pub struct OutputIdProof {
    /// The slot index of the output.
    slot: SlotIndex,
    /// The index of the output.
    output_index: u16,
    /// The commitment of the transaction that created the output.
    transaction_commitment: SlotCommitmentId,
    /// The proof of the output commitment.
    output_commitment_proof: todo!("what type here?"),
}

Open questions (optional)
Is output_commitment_proof really a string? https://github.com/iotaledger/tips/pull/153/files#r1405938087

Closed by https://github.com/iotaledger/iota-sdk/pull/1763


Detecting message type

Is there a way to detect the incoming message type?
Or the solution is to iterate through decoders and see what manages to parse the message?

One solution might be to define an envelope like this, holding all of the possible message types but with only one of them being set:
message Envelope {
  oneof message {
    optional MyMessage1 = 1;
    optional MyMessage2 = 2;
    ...
  }
}

After decoding, check the virtual message property for which inner message is actually present.

Closing this for now.
protobuf.js 6.0.0
Feel free to send a pull request if this is still a requirement.


Wrong formatting when line only contains />

Hi, I encountered a bug where the rest of a JSX file is rendered completely blue beginning from a line containing only />. Example:
<MyComponent
  prop1="one"
  prop2="two"
/>

<ImRenderedBlue
  ohno="what's going on?"
  iDontKnow="I'm blue dabbedeedabbedie"
/>

Try to copy and paste this to reproduce in Atom v1.0.11 with plugin version v0.1.1

This is still an issue. It seems like everything starting from the / is interpreted as a regular expression until a new / is encountered.


Remove layer suffix

This PR removes the '_layer' suffix from abstraction layer and user layer packages as agreed to in #10

Coverage remained the same at 78.13% when pulling 8894584b6e1042de57423a6bbd8d2dc5647f7d3b on tclose:remove_layer_suffix into 31b81fb1d20d1683b9fa952fc0d456a9e598f890 on INCF:master.


cmd/cip: Use sigs.k8s.io/release-utils/log instead of k/release/pkg/log

What type of PR is this?
/kind cleanup
What this PR does / why we need it:
Different package, same great taste!
(Peeling some commits off of https://github.com/kubernetes-sigs/k8s-container-image-promoter/pull/291.)
Signed-off-by: Stephen Augustus<EMAIL_ADDRESS>Which issue(s) this PR fixes:

Special notes for your reviewer:
Does this PR introduce a user-facing change?

cmd/cip: Use sigs.k8s.io/release-utils/log instead of k/release/pkg/log

/assign @hasheddan @puerco
cc: @kubernetes-sigs/release-engineering


Support MQTT-5 property topicAliasMaximum

Motivation
Support MQTT-5 property topicAliasMaximum
Modifications

Support MQTT-5 property topicAliasMaximum

Verifying this change

[x] Make sure that the change passes the CI checks.

(Please pick either of the following options)
This change is a trivial rework / code cleanup without any test coverage.
(or)
This change is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
(example:)

Added integration tests for end-to-end deployment with large payloads (10MB)
Extended integration test for recovery after broker failure

Documentation
Check the box below.
Need to update docs?

[ ] doc-required
(If you need help on updating docs, create a doc issue)

[x] no-need-doc
(Please explain why)

[ ] doc
(If this PR contains doc changes)

Codecov Report

Merging #686 (4f0ad8c) into master (3bfcc5c) will increase coverage by 0.54%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##             master     #686      +/-   ##
============================================
+ Coverage     78.12%   78.67%   +0.54%
- Complexity      953      961       +8
============================================
  Files           108      108
  Lines          4096     4107      +11
  Branches        309      309
============================================
+ Hits           3200     3231      +31
+ Misses          725      705      -20
  Partials        171      171

Impacted Files
Coverage Δ

.../streamnative/pulsar/handlers/mqtt/Connection.java
88.60% <100.00%> (+0.07%)
:arrow_up:

...lsar/handlers/mqtt/messages/MqttPropertyUtils.java
90.24% <100.00%> (+0.77%)
:arrow_up:

...sar/handlers/mqtt/messages/ack/MqttConnectAck.java
77.00% <100.00%> (+1.46%)
:arrow_up:

...handlers/mqtt/restrictions/ClientRestrictions.java
67.85% <100.00%> (+1.19%)
:arrow_up:

...andlers/mqtt/proxy/PulsarServiceLookupHandler.java
70.12% <0.00%> (+2.59%)
:arrow_up:

...s/mqtt/proxy/MQTTProxyProtocolMethodProcessor.java
82.31% <0.00%> (+4.33%)
:arrow_up:

...pulsar/handlers/mqtt/MQTTCommonInboundHandler.java
83.82% <0.00%> (+5.88%)
:arrow_up:

.../pulsar/handlers/mqtt/proxy/MessageAckTracker.java
92.85% <0.00%> (+14.28%)
: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 3bfcc5c...4f0ad8c. Read the comment docs.


Rename Дискваліфікація → Дискваліфікувати

This change is

Reviewed 1 of 1 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from the review on Reviewable.io


Added cross-framework compatibility

Rewrote PR on top of latest merge #https://github.com/YAXLib/YAXLib/commit/5a566a121c1d9f86b379c15f76431914ab8f6e6a

I'm afraid I'm not the right person to review this pr.
It has been some years I used this library.

lgtm

lgtm

@NKnusperer please set a approval here:


Win+Ctrl+E for AoT does not trigger

Microsoft PowerToys version
0.56.2
Running as admin

[X] Yes

Area(s) with issue?
Always on Top
Steps to reproduce

Active a window
Press hot key

✔ Expected Behavior
Toggle Always on Top active a window
❌ Actual Behavior
Nothing
Other Software

Window 10 Calculator 10.2103.8.
PowerToysReport_2022-03-11-04-39-46.zip
0

@jaimecbernardo / @SeraphimaZ looks like this keystroke won't trigger.  Doesn't seem like it is a reserved keystroke too

@crutkas
TLDR: Explorer has Control+Windows+E registered but doesn't seem to do anything with it.
Can't seem to register this keystroke in my system as well.
Tried using Windows Visual Studio Spy++ from C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\Tools as described in https://stackoverflow.com/questions/829007/find-out-what-process-registered-a-global-hotkey-windows-api/834661 .
This allows us to see which window handler registered a certain hotkey.
It seems Explorer has this hotkey registered, on a Window named "WorkerW". It's not clear what it is for, though.

Low level keyboard hooks would be what we could do here.

We released 0.60.1 and this is included in it!  https://aka.ms/installpowertoys


How do you detect the Ctrl or Shift key during a drag

I want to use Ctrl to indicate a Copy operation when dragging a node.  Is there a way to do this?

Is there a way to set this behavior as the default when dragging from one tree to another tree?

@clementprevot I am not having much luck implementing this. Any chance you have a plunker for example?
I see when I start to drag an element it does an immediate clone. But when I drop that element on the same tree or a different tree then the clone in the original tree is gone.
I am looking to create an attribute that prevents any remove of the source tree. It only populates another tree with cloned elements. Also the source tree I need the nodrop to work and I am having zero luck accomplishing this. If you could point me in the right direction I would greatly appreciate it.

I am still not able to drag and drop multiple item at a time..could you please help me on this..and If possible please upload a sample code how to use it.

Has this function been removed? Is it possible to copy the node from one branch to another within the same tree using the latest version?


feature/tx/HPHX-18342-18365

HPHX-18342-18365: Merging internal PRs 402, 403, 404 406.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: vishwanathan-m1:x: amitaG-HCLYou have signed the CLA already but the status is still pending? Let us recheck it.


Batch API: offer way to replace existing

When writing to ArangoDB in batches one currently gets one state per item. One of those states may be 'uniq constraint violated' if _keyalready exists.
Similar to AQL UPSERT there should be a way to automatically replace the existing document here.

A body param like in the import API?

onDuplicate (optional): Controls what action is carried out in case of a unique key constraint violation. Possible values are:

error: this will not import the current document because of the unique key constraint violation. This is the default setting.
update: this will update an existing document in the database with the data specified in the request. Attributes of the existing document that are not present in the request will be preserved.
replace: this will replace an existing document in the database with the data specified in the request.
ignore: this will not update an existing document and simply ignore the error caused by the unique key constraint violation.

@Simran-B Let's say we use ignore, will there be a way of getting to know the errors after the entire batch operation is finished? What I want to achieve is: don't raise an exception but also let me know what all documents had an issue at the end of the batch so that I can get their states/document handles etc in the response.


Some Fixes in Editor

fix(*): inspector in panel cannot scrolling by wheel
update dependency 'react-use-gesture' version
feat(*): modify mould name on state panel
fix(toolbar/*): the popover still display while dragging

Updated: fix(mouldstate): mouldName not re-render issue


Performance loading the layout: can I improve it?

Hi,
I've been using dockpanel for a long time.   And I like it very much.
However one thing that I've been always concerned was about the loading time, starting the application.  It's pretty slow, or this is my feeling.  Can I improve it? like if necessary  having threads, or delaying some loads or something else?
I check in the visual studio profiler, and the function reference call is  DockPanel+Persistor::LoadFromXml  in the Docking.dll
Another little issue which may be related is about cosmetics, while loading the UI seems to be created in pieces (controls) and this process is shown to the user,  well I dont like this much,  I would prefer like in another professional tool, that the user  sees a blank screen followed by the whole UI.  Perhaps using a splash screen would help?
Thanks a lot in advance.
Ray.

The following also seems to work very well in our project:
mDockPanel.SuspendLayout(true); CloseAllContents(); mDockPanel.LoadFromXml(configFilePath, mDeserializeDockContent); mDockPanel.ResumeLayout(true, true);