Workspace switcher - Workspace switcher reopens after selecting a workspace with keyboard

Details

Fix issue with workspace switcher re-opening after selecting a workspace with a keyboard instead of a mouse.
Fixed Issues

$ https://github.com/Expensify/App/issues/35823
Tests

Press on the workspace switcher button in the top left corner of LHP.
Use the arrow buttons to chose one of your workspaces.
Press enter and confirm that it properly routes you to the chosen workspace and the workspace switcher modal doesn't reopen.

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

Offline tests

QA Steps

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

PR Author Checklist

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

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

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

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

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

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

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

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

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

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

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

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

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

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

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

Screenshots/Videos

Android: Native
https://github.com/Expensify/App/assets/88325488/8a6012a7-0e7f-4499-94be-30a64d10b1d1

Android: mWeb Chrome
https://github.com/Expensify/App/assets/88325488/150e92b4-7149-40b2-9120-c1ffa2de4dea

iOS: Native
https://github.com/Expensify/App/assets/88325488/d12bd896-bc67-45c8-b69b-ae994e983fd3

iOS: mWeb Safari
https://github.com/Expensify/App/assets/88325488/4873ec2c-6e9d-4be2-8080-d275b457ac8f

MacOS: Chrome / Safari
https://github.com/Expensify/App/assets/88325488/d8eb6171-5162-4d53-b6d1-b0ab81f9d387

MacOS: Desktop
https://github.com/Expensify/App/assets/88325488/fa5afaea-d634-48ba-ab6f-ba482d2d3b63

@getusha what is your ETA for this one?

No problem, there was no delay really, just wanted to get a sense of when you can address this.
Thank you

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

🚀 Deployed to staging by https://github.com/mountiny in version: 1.4.61-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
cancelled 🔪

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/mountiny in version: 1.4.61-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/Julesssss in version: 1.4.61-8 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


blank png when exporting SVG with image tag

Hello
i work in a project with SVG and i would like to export the whole SVG created by the user as a png.
your plugin works pretty fine but when i try to add an image tag inside my SVG and i export it, the plugin gives me a blank png.
how can i fix it ?

Thanks for the report. Can you  provide some example code that demonstrates the problem? The test page has a very simple example of including an image within an SVG. Here's the XML:
https://github.com/exupero/saveSvgAsPng/blob/115bf91a7eca18cfbe7bc0202c0d02ec7d2b647d/index.html#L156-L158
That does save as a PNG with the image, but I wouldn't be surprised if more complex scenarios fail.

I had the same issue when working locally. Working off a server fixed the issue:
Access to Image at '<filename>' from origin 'null' has been blocked by CORS policy: Invalid response. Origin 'null' is therefore not allowed access.


cmd/compile: failed to cross-compile to wasm on s390x

Go version
go version go1.23.3 linux/s390x
Output of go env in your module/workspace:
GO111MODULE=''
GOARCH='s390x'
GOBIN=''
GOCACHE='/home/linux1/.cache/go-build'
GOENV='/home/linux1/.config/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='s390x'
GOHOSTOS='linux'
GOINSECURE=''
GOMODCACHE='/home/linux1/go/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='linux'
GOPATH='/home/linux1/go'
GOPRIVATE=''
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/snap/go/10737'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/snap/go/10737/pkg/tool/linux_s390x'
GOVCS=''
GOVERSION='go1.23.3'
GODEBUG=''
GOTELEMETRY='local'
GOTELEMETRYDIR='/home/linux1/.config/go/telemetry'
GCCGO='gccgo'
AR='ar'
CC='gcc'
CXX='g++'
CGO_ENABLED='1'
GOMOD='/dev/null'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -m64 -march=z196 -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build3325072388=/tmp/go-build -gno-record-gcc-switches'

What did you do?
Run following command
git clone https://github.com/Zxilly/go-size-analyzer.git
GOOS=js GOARCH=wasm go test -v -covermode=atomic -cover -coverpkg=../../...

Then build failed.
What did you see happen?
# runtime
../../_tool/go/1.23.2/s390x/src/runtime/panic.go:652:10: write barrier prohibited by caller; preprintpanics
	../../_tool/go/1.23.2/s390x/src/runtime/panic.go:802:77: called by gopanic
	../../_tool/go/1.23.2/s390x/src/runtime/panic.go:171:7: called by goPanicSlice3AlenU
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:253:71: called by (*bucket).stk
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:309:68: called by stkbucket
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:854:16: called by saveBlockEventStack
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:840:21: called by (*mLockProfile).store
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:773:13: called by (*mLockProfile).recordUnlock
../../_tool/go/1.23.2/s390x/src/runtime/panic.go:819:12: write barrier prohibited by caller; (*_panic).start
	../../_tool/go/1.23.2/s390x/src/runtime/panic.go:779:9: called by gopanic
	../../_tool/go/1.23.2/s390x/src/runtime/panic.go:171:7: called by goPanicSlice3AlenU
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:253:71: called by (*bucket).stk
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:309:68: called by stkbucket
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:854:16: called by saveBlockEventStack
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:840:21: called by (*mLockProfile).store
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:773:13: called by (*mLockProfile).recordUnlock
../../_tool/go/1.23.2/s390x/src/runtime/panic.go:872:69: write barrier prohibited by caller; (*_panic).nextDefer
	../../_tool/go/1.23.2/s390x/src/runtime/panic.go:781:24: called by gopanic
	../../_tool/go/1.23.2/s390x/src/runtime/panic.go:171:7: called by goPanicSlice3AlenU
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:253:71: called by (*bucket).stk
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:309:68: called by stkbucket
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:854:16: called by saveBlockEventStack
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:840:21: called by (*mLockProfile).store
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:773:13: called by (*mLockProfile).recordUnlock
../../_tool/go/1.23.2/s390x/src/runtime/malloc.go:1187:19: write barrier prohibited by caller; mallocgc
	../../_tool/go/1.23.2/s390x/src/runtime/iface.go:360:74: called by convTnoptr
	../../_tool/go/1.23.2/s390x/src/runtime/panic.go:171:19: called by goPanicSlice3AlenU
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:253:71: called by (*bucket).stk
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:309:68: called by stkbucket
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:854:16: called by saveBlockEventStack
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:840:21: called by (*mLockProfile).store
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:773:13: called by (*mLockProfile).recordUnlock
../../_tool/go/1.23.2/s390x/src/runtime/runtime.go:172:8: write barrier prohibited by caller; (*godebugInc).IncNonDefault
	../../_tool/go/1.23.2/s390x/src/runtime/panic.go:740:26: called by gopanic
	../../_tool/go/1.23.2/s390x/src/runtime/panic.go:171:7: called by goPanicSlice3AlenU
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:253:71: called by (*bucket).stk
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:309:68: called by stkbucket
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:854:16: called by saveBlockEventStack
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:840:21: called by (*mLockProfile).store
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:773:13: called by (*mLockProfile).recordUnlock
../../_tool/go/1.23.2/s390x/src/runtime/trace.go:493:17: write barrier prohibited by caller; traceAdvance
	../../_tool/go/1.23.2/s390x/src/runtime/panic.go:795:15: called by gopanic
	../../_tool/go/1.23.2/s390x/src/runtime/panic.go:171:7: called by goPanicSlice3AlenU
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:253:71: called by (*bucket).stk
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:309:68: called by stkbucket
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:854:16: called by saveBlockEventStack
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:840:21: called by (*mLockProfile).store
	../../_tool/go/1.23.2/s390x/src/runtime/mprof.go:773:13: called by (*mLockProfile).recordUnlock
FAIL	github.com/Zxilly/go-size-analyzer [build failed]

What did you expect to see?
Works correctly

Related Issues

runtime: fatal error: malloc deadlock on s390x #58783 (closed)
cmd/compile: unreachable panic with GODEBUG=gotypesalias=1 #65778 (closed)
cmd/compile: panic during sccp while compiling main runtime error: index out of range [-5] #64826 (closed)
runtime: fatal error: stack growth after fork on s390x  #58785 (closed)
cmd/compile: compiler panic in ssa.tighten #19312 (closed)
cmd/cgo/internal/testcarchive: `TestSignalForwardingGo` failures with SIGABRT instead of the expected SIGSEGV #64656
cmd/compile: panic during early copyelim crash #35658 (closed)
cmd/go: build failure on a machine with gccgo installed after commit 38431f1044 #32060 (closed)
cmd/compile: 'panic during opt while compiling testfloat' on mipsle #27685 (closed)
cmd/buildid: failures in cmd/go introduced in commit afd090c on multiple platforms including ppc64le, s390, and arm64 #23339 (closed)

(Emoji vote if this was helpful or unhelpful; more detailed feedback welcome in this discussion.)

cc @golang/s390x

I don't think this is S390X specific.
GOOS=js GOARCH=wasm go test -v -covermode=atomic -cover -coverpkg=all cmd/compile on my darwin/arm64 machine as well. So does GOOS=js GOARCH=wasm go build -cover runtime.
So it seems coverage mode doesn't fully work on Wasm, at least for the runtime package.

This is strange because these test codes have always passed on other architectures, including darwin arm64/amd64, windows/linux amd64. this error only occurs on the newly added s390x machine.
See https://github.com/Zxilly/go-size-analyzer/pull/270
Maybe it's because of the different go versions? I will check these differences further.

Maybe it's because of the different go versions?

On my machine (darwin/arm64), GOOS=js GOARCH=wasm go1 build -cover runtime works for Go 1.21, but fails on 1.22. So there is indeed a version dependence... (and a regression)
Perhaps your -coverpkg=../../... matches different things on different machines depending on your local file tree?

If you want to cover (just) your module, -coverpkg=github.com/Zxilly/go-size-analyzer/... will probably do, regardless of your working directory.

git clone https://github.com/Zxilly/go-size-analyzer.git
GOOS=js GOARCH=wasm go test -v -covermode=atomic -cover -coverpkg=../../...

Which directory are you running the build from?

Thanks, I'll give it a try.
When I checked the test script, I noticed that the actual run directory is the root directory of the project, which isn't quite what I remembered, so maybe there's some confusion in that part of the code. I will clean up these test scripts.

CC @thanm maybe?


Request permissions to release configurationslicing

Hey,

Description
I Have recently adopted the plugin, I have a new version ready to release but I am getting:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.8.2:deploy (default-deploy) on project configurationslicing: Failed to deploy artifacts: Could not transfer artifact org.jenkins-ci.plugins:configurationslicing:hpi:1.50 from/to maven.jenkins-ci.org (https://repo.jenkins-ci.org/releases/): Transfer failed for https://repo.jenkins-ci.org/releases/org/jenkins-ci/plugins/configurationslicing/1.50/configurationslicing-1.50.hpi 401 Unauthorized -> [Help 1]

Submitter checklist for changing permissions

Always

[x] Add link to plugin/component Git repository in description above
https://plugins.jenkins.io/configurationslicing/

For a newly hosted plugin only

[x] Add link to resolved HOSTING issue in description above

For a new permissions file only

[x] Make sure the file is created in permissions/ directory
[x] artifactId (pom.xml) is used for name (permissions YAML file).
[x] groupId / artifactId (pom.xml) are correctly represented in path (permissions YAML file)
[x] Check that the file is named plugin-${artifactId}.yml for plugins

When adding new uploaders (this includes newly created permissions files)
@guysoft

[x] Make sure to @mention an existing maintainer to confirm the permissions request, if applicable
[x] Use the Jenkins community (LDAP) account name in the YAML file, not the GitHub account name
(Account from https://accounts.jenkins.io/)
[x] Make sure to @mention the users being added so their GitHub account names are known if they require GitHub merge access (see below).
[x] All newly added users have logged in to Artifactory at least once

Reviewer checklist (not for requesters!)

[ ] Check this if newly added person also needs to be given merge permission to the GitHub repo (please @ the people/person with their GitHub username in this issue as well). If needed, it can be done using an IRC Bot command
[ ] Check that the $pluginId Developers team has Admin permissions while granting the access.
[ ] In the case of plugin adoption, ensure that the Jenkins Jira default assignee is either removed or changed to the new maintainer.
[ ] If security contacts are changed (this includes add/remove), ping the security officer (currently @daniel-beck) in this pull request. If an email contact is changed, wait for approval from the security officer.

There are IRC Bot commands for it

[2020-05-23T13:53:05.930Z] Exception in thread "main" java.lang.IllegalStateException: User name not known to Artifactory: guysoft

Have you logged into artifactory yet?

Yes, Just making sure this means I am in right?

Yep, it syncs the list of people logged in every 15 minutes (believe), so it probably hadn't syned yet by the time the CI ran.
I don't have permissions to re-run it, if you have the ability to close, wait a few seconds and reopen this, it should re-run.
Otherwise wait for those with access

Closing, see #1539

oh okay, close and reopen just meant click the button twice type thing, but that totally works :)

Ah, ok, I thought you need a whole new PR.
Done, should build and work since the other PR did.

@halkeye Hey, its passing - is there anything else you need?

Oh I just randomly help with reviews. I don't have approval access.

I'll nudge though


A couple of bugs in C output

Hi Kyle,
Thank you for making the converter available. I found a couple of errors in the C output. I compiled using gcc -std=c99 *.c -lm. For testing, I used a mechanism consisting of 5 species and 1 reaction. I'm not a python expert so I didn't trace the errors back in the code generator. They are listed below. I hope the Fortran option will become functional soon.
Best regards,
Ahmad
in dydt.c:
(1) missing ',' before rho in
eval_conc_rho (y[0]rho, &y[1], &y_N, &mw_avg, &pres, conc);
-> eval_conc_rho (y[0],rho, &y[1], &y_N, &mw_avg, &pres, conc);
(2) Mean specific heat at constant volume C_v = \sum_{i=1}^N C_{v,i}Y_i:
missing '+' before the contribution of the last species to the summation in
double cv_avg = (cv[0] * y[1]) + (cv[1] * y[2]) + (cv[2] * y[3]) + (cv[3] * y[4])(cv[4] * y_N);
->double cv_avg = (cv[0] * y[1]) + (cv[1] * y[2]) + (cv[2] * y[3]) + (cv[3] * y[4]) + (cv[4] * y_N);
in main_cpu.c:
(1) INTEGRATOR does not exit. I suppose it has not been implemented yet or its code was not included in the package.
(2) Size of data array in bytes
uint size = NUM * sizeof(Real) * {:};
It's not clear to what {:} stands for. gcc does not like it.

Could you share the mechanism files you tried, so that I can test them?
Unfortunately I don't have any near-term plans to finish the Fortran support... but, it's fairly easy to link C code with Fortran.
You're correct about INTEGRATOR, that is intended to be a placeholder. The issue with the declaration of size is a bug.

Hi Kyle,
It doesn't matter which mechanism is used. There are minor issues in 'write_derivs' (rate_subs.py):
(1) Line 1976: a comma is missing at the end of the line
file.write('  eval_conc_rho (' + utils.get_array(lang, 'y', 0) + ', '                    'rho, &' + utils.get_array(lang, 'y', 1) + ', '                    '&y_N, &mw_avg, &pres, conc);\n\n'                    )
(2) Line 2025: a + is missing before the parenthesis at the beginning of the line
line += ' + (' + utils.get_array(lang, 'cv', len(specs) - 1) + ' * y_N)'
Could you please clarify which system of units is used? It seems like it's the same as the one use in Cantera, the pressure is in [Pa] and the production rates (output of eval_spec_rates) are in  [kmol/(m^3.s)]. When converted to the CGS system, the output is the same as that of CHEMKIN. Please correct me if I'm wrong.
As you recommended, I wrote a Fortran interface that uses ISO_C_BINDING. It's automatically generated in rate_subs.py. It wraps a code very similar to the one contained in dydt.c. I'd be happy to share these extensions if you're interested.
One last observation. You've done a great job implementing various CHEMKIN keywords, including modern ones such as CHEB and PLOG. However, it seems like you missed two important keywords, FORD and RORD, which are used to set the forward and reverse orders of a reaction. I can try to add them in my free time if you're interested.
Regards,
Ahmad


Working very well on training but doing pretty poorly at inference

Hi,
Thanks you for publishing this model :)
I want to use this model for Document Parsing. I have annotations for two kinds of pdf, 20 images per type.
At training it achieves very good edit distances 0.08, 0.0, 0.1, 0.13... But when I try it at inference the edit distance is very bad 0.8
In addition in those predictions I am seeing that in several predictions it outputs: {"text_sequence": "word1 word1 word1 ... word1"} where word1 is a random word repeated all over the place
Thanks in advance

what is the prompt you are using while inference? most probably it is messing up the json output. If you have fine-tuned base model for your task, try using <s_REPLACE_YOUR_DATASET_NAME> as prompt at inference time.

Hi @satheeshkatipomu , thank you for answering.
I was following this training tutorial.
If you check his lightning module:
def validation_step(self, batch, batch_idx, dataset_idx=0):
        pixel_values, labels, answers = batch
        batch_size = pixel_values.shape[0]
        # we feed the prompt to the model
        decoder_input_ids = torch.full((batch_size, 1), self.model.config.decoder_start_token_id, device=self.device)

        outputs = self.model.generate(pixel_values,
                                   decoder_input_ids=decoder_input_ids,
                                   max_length=max_length,
                                   early_stopping=True,
                                   pad_token_id=self.processor.tokenizer.pad_token_id,
                                   eos_token_id=self.processor.tokenizer.eos_token_id,
                                   use_cache=True,
                                   num_beams=1,
                                   bad_words_ids=[[self.processor.tokenizer.unk_token_id]],
                                   return_dict_in_generate=True,)

        predictions = []
        for seq in self.processor.tokenizer.batch_decode(outputs.sequences):
            seq = seq.replace(self.processor.tokenizer.eos_token, "").replace(self.processor.tokenizer.pad_token, "")
            seq = re.sub(r"<.*?>", "", seq, count=1).strip()  # remove first task start token
            predictions.append(seq)

        scores = list()
        for pred, answer in zip(predictions, answers):
            pred = re.sub(r"(?:(?<=>) | (?=</s_))", "", pred)
            # NOT NEEDED ANYMORE
            # answer = re.sub(r"<.*?>", "", answer, count=1)
            answer = answer.replace(self.processor.tokenizer.eos_token, "")
            scores.append(edit_distance(pred, answer) / max(len(pred), len(answer)))

            if self.config.get("verbose", False) and len(scores) == 1:
                print(f"Prediction: {pred}")
                print(f"    Answer: {answer}")
                print(f" Normed ED: {scores[0]}")

        return scores

He uses decoder_input_ids = torch.full((batch_size, 1), self.model.config.decoder_start_token_id, device=self.device) as decoder_input_ids instead of
    task_prompt = "<s_cord-v2>"
    decoder_input_ids = processor.tokenizer(task_prompt, add_special_tokens=False, return_tensors="pt").input_ids

If at inference time I use: decoder_input_ids = torch.full((batch_size, 1), self.model.config.decoder_start_token_id, device=self.device) the performance improves

did you fine-tune the model on your custom dataset? or trying to use the off the shelf cord-v2 model?

Yes, I finetuned the model with my custom dataset but I used that code @satheeshkatipomu

I see some changes compared to the code in this repo. but still I suggest checking your prompt at inference time if you think edit distance very less during training but very high while inference AND assuming your test images are similar to training data.
For example here in the fine-tuning notebook they hard corded start and end token as <s_cord-v2>.

Please check if it same during training and inference, If yes, sorry I am unable to help solve your problem.

I had the same issue as you, the model performed very well in validation during training, but very poorly during inference (the model just output gibberish).
Try to check added_tokens.json file in your trained model path. Your task prompt should be among the added tokens. For some reason, my task prompt was just <s_> instead of <s_{DATASET_NAME}>.

I am having the same issue as it is giving very good accuracy and prediction during validation however it is giving garbish value while predicting the same image. My added tokens json is fine. Kindly help. @WaterKnight1998 @satheeshkatipomu @outday29

@Mohtadrao @WaterKnight1998 have you founded a solución? I have the same error. Thanks

@CarlosSerrano88 yeah. My accuracy was increase when my number of epochs along with training data was increased. Also need to adjust the config file accordingly.

@Mohtadrao @WaterKnight1998 have you founded a solución? I have the same error. Thanks
Same problem here, predictions are all (s) (s) (s) ....
Have someone solved the problem ?

tried prediction with data on a custom data huggingface repo and could confirmed that the dataset name in the "added_tokens.json" which get produced after a training.

set the datasetname after "<s_ ....>"
output = model.inference(image=image, prompt="<s_donut-jp-bill>")`

@Ruxin124 This is normal error. You just need to train, I dont know how much of data you have but considering my data that was aprox 7-8k images. For 45 epochs it was already giving me 90% accuracy. Also need to write config file accurately according to your data.


Display better error message when "ssh-keygen" is missing

Digitalocean driver assumes ssh-keygen is installed, if not it leaves a node in an error state. I hade to machine rm test and install ssh-keygen and recreate the node. A check for public key and/or ssh-keygen before creating the node might solve this.
FATA[0000] Host "test" already exists
root@4a6e561799c5:/go# machine ls
ERRO[0000] error getting state for host test: GET https://api.digitalocean.com/v2/droplets/0: 404 The resource you were accessing could not be found.
ERRO[0000] error getting URL for host test: IP address is not set
NAME   ACTIVE   DRIVER         STATE   URL
test            digitalocean   Error

Closing as #257 was merged.


fix(select): Arrow position/animation for appearance="standard"

This commit aims to fix the arrow positioning of mat-selects
with appearance="standard". Since the label moves down whenever
the selected value is empty, the arrow looks out of place.
I added an animation that matches the speed of the label
animation:

Going from filled to empty transitions the arrow down so that it
sits level with the label.
Going from empty to filled snaps the arrow back up, matching the
label's behavior.

To test/compare the different appearances I added another card
to the demo-app with all of them.
Fixes #11925.

Alright! Switched over to a simple css animation and added a toggle button to the select-demo to quickly see the effect.

Heh, rebased onto current master again to trigger a new CI run, now circleci passes but travis failed. Could you look into it once again @mmalerba?

failure looks like a flake, I restarted it


Mismatched Id of listed VC++ upgrade

Brief description of your issue
Running winget upgrade shows incorrect package Id for Microsoft Visual C++ 2015-2022 Redistributable, hence doesn't perform an upgrade with the given Id.
Steps to reproduce
I have both Microsoft Visual C++ 2015-2022 Redistributable (x86) and Microsoft Visual C++ 2015-2022 Redistributable (x64) installed, with x64 one at latest version and x86 one older (not the latest).
Running winget upgrade shows:
Name                                                               Id                           Version       Available     Source
----------------------------------------------------------------------------------------------------------------------------------
Microsoft Visual C++ 2015-2022 Redistributable (x86) - 14.32.31332 Microsoft.VCRedist.2015+.x64 14.32.31332.0 14.34.31823.3 winget

Expected behavior
Suggested package Id above Microsoft.VCRedist.2015+.x64 does not match the package (x86). Id should be Microsoft.VCRedist.2015+.x86 in this case, so that running winget upgrade Microsoft.VCRedist.2015+.x86 can upgrade the relevant package.
Actual behavior
Running, winget upgrade Microsoft.VCRedist.2015+.x64 (suggested Id above) does not perform an upgrade, because the listed Id is incorrect (x64) for an x86 library package, but both packages list fine in Windows - Installed Apps.
Environment
Windows Package Manager v1.3.2691
Windows: Windows.Desktop v10.0.22621.675
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.18.2691.0

Are you able to post the logs from winget upgrade --verbose-logs ?

@OfficialEsco - Any ideas here? I see that this version of x86 does have the product code at both levels, so I'm not sure what would be causing the mismatch

Hi,
I noticed similar behaviour while upgrading C++ libraries on some vm's
win10 has no issue
PS C:\windows\system32> winget list --id "Microsoft.VCRedist.2010.x86" --verbose-logs
Name                                          Id                          Version    Source
Microsoft Visual C++ 2010 x86 Redistributable Microsoft.VCRedist.2010.x86 10.0.40219 winget
Win11 returns x86+x64
PS C:\Users\Admin> winget list --id "Microsoft.VCRedist.2010.x86" --verbose-logs
Name                                                        Id                                     Version    Source
Microsoft Visual C++ 2010 x86 Redistributable               Microsoft.VCRedist.2010.x86            10.0.40219 winget
Microsoft Visual C++ 2010  x64 Redistributable - 10.0.40219 {1D8E6291-B0D5-35EC-8441-6616F567A0F7} 10.0.4
I added the win11 verbose log below
WinGet-2022-10-19-16-11-11.219.log


Docs: fix autobuild command

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

Project coverage is 71.78%. Comparing base (243643a) to head (292b1fe).
 Consider uploading reports for the commit a8b65cf to get more accurate results

Additional details and impacted files

@@           Coverage Diff           @@
##             main     #462   +/-   ##
=======================================
  Coverage   71.78%   71.78%
=======================================
  Files          45       45
  Lines        2715     2715
  Branches      587      587
=======================================
  Hits         1949     1949
  Misses        582      582
  Partials      184      184

Flag
Coverage Δ

unittests
71.27% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.


Declared Apache 2.0

Type: Missing
Summary:
Declared Apache 2.0
Details:
Declared Apache 2.0 found here (https://github.com/aspnet/Security/blob/2.2.0/LICENSE.txt)
Resolution:
Declared Apache 2.0
Affected definitions:

microsoft.aspnetcore.authentication.cookies 2.2.0

Closing due to casing issue; resubmitted in #2531


AboutPaladin doesn't show the "current" version in the image

At the least it should show 2.7 atm?

Correct. This is a bug. I'll try and get this built from the most recent git version tag and automate it to prevent this from cropping up in future. Thanks for the report.


fix #1095 param map overwrite priority

Its mainly explained in https://github.com/revel/revel/issues/503#issuecomment-65252825 - Excerpt below
Problem
The problem is that the order in which all the parameters of different types are appended is not documented and defined explicitly.
#503 has become possible because for Static.Serve(prefix, filepath string) only first prefix's value from c.Params is binded:
c.Params = url.Values {
    "prefix": []url{"some_param_from_query", "public"},
}

Before #504 it was query parameter. Now it is a fixed parameter.
But we still should define what we are trying to get when we are appending parameters of different types both safe and unsafe ones together.
If it brings any value (and it looks like it does) we should better document the order (probably, we need to rethink and change it) and the fact that c.Params can never be trusted (#809). c.FixedParams should be used by framework users and module developers when safe param from routes file is expected.

Summarised, changed params order from

Fixed, Path, Form, Query
to
Query, Form, Path, Fixed

So the reason the order is reversed is that we want the highest valued item - ie the Fixed item to be bound from the Param.values map right ? In theory this really shouldn't break anything beyond preventing a hack. Alternatively we could have changed the code to only add values to the map if the value did not already exist in the map (this is definitely more efficient) @pedromorgan is there documentation now that indicates the bind order ?

Fixed
Path
Form
Query

So when we add the values to the map we do so in reverse, Query, Form, Path, Fixed.

Correct, its opposite.. so a Fixed will overwrite a Query.


Documentation links broken

This commit changed all the links in the docs and now they are all broken on Github (404 not found).
Example old link: https://github.com/Homebrew/brew/blob/master/docs/Manpage.md
Example new (broken) link: https://github.com/Homebrew/brew/blob/master/docs/Manpage
The easiest fix seems to be to revert the commit, unless the change was done for a specific reason?

[x] are reporting a bug others will be able to reproduce and not asking a question. If you're not sure or want to ask a question do so on our Discourse: https://discourse.brew.sh
[ ] ran a brew command and reproduced the problem with multiple formulae? If it's a problem with a single, official formula (not cask) please file this issue at Homebrew/homebrew-core: https://github.com/Homebrew/homebrew-core/issues/new. If it's a brew cask problem please file this issue at https://github.com/caskroom/homebrew-cask/issues/new. If it's a tap (e.g. Homebrew/homebrew-php) problem please file this issue at the tap.
[ ] ran brew update and can still reproduce the problem?
[ ] ran brew doctor, fixed all issues and can still reproduce the problem?
[ ] ran brew config and brew doctor and included their output with your issue?

To help us debug your issue please explain:

What you were trying to do (and why)
What happened (include command output)
What you expected to happen
Step-by-step reproduction instructions (by running brew commands)

I want to fix this without reverting immediately. Note that https://docs.brew.sh are considered the official docs; if we're linking to not-them anywhere, let me know. Out of interest: ow did you end up on https://github.com/Homebrew/brew/blob/master/docs/Manpage.md?

Yeah, if these are not the official docs, that makes sense :)
I got linked to the docs readme from this post.

@nikoladev Cool, thanks!


Investigate issues with utf8mb4 and MariaDB

https://docs.silverstripe.org/en/4/changelogs/4.7.0/#default-mysql-collation-updated. This appears to have caused problems with installations using MariaDB. See https://github.com/silverstripe/silverstripe-framework/issues/9811 for more discussion.
The change was accidentally made opt-out for 4.7.0, it should be opt-in for 4.7.1 once https://github.com/silverstripe/recipe-core/pull/64 is merged.

 AND ("STMessage"."Created" < ?)

You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '."ClassName", "STMessage"."LastEdited", "STMessage"."Created", "STMessage"."Text' at line 1
#55 /ORM/Connect/DBConnector.php(64): SilverStripe\ORM\Connect\DBConnector::databaseError
#54 /ORM/Connect/MySQLiConnector.php(300): SilverStripe\ORM\Connect\MySQLiConnector::preparedQuery
#53 /ORM/Connect/Database.php(185): SilverStripe\ORM\Connect\Database::SilverStripe\ORM\Connect\{closure}
#52 /ORM/Connect/Database.php(258): SilverStripe\ORM\Connect\Database::benchmarkQuery
#51 /ORM/Connect/Database.php(183): SilverStripe\ORM\Connect\Database::preparedQuery
#50 /ORM/Connect/MySQLDatabase.php(402): SilverStripe\ORM\Connect\MySQLDatabase::preparedQuery
#49 /ORM/DB.php(445): SilverStripe\ORM\DB::prepared_query
#48 /ORM/Queries/SQLExpression.php(115): SilverStripe\ORM\Queries\SQLExpression::execute
#47 /ORM/DataList.php(743): SilverStripe\ORM\DataList::toArray
#46 /ORM/DataList.php(871): SilverStripe\ORM\DataList::getIterator
#45 /Tasks/ClearPrivateMessages.php(29): Firesphere\StickerTrade\Jobs\ClearPrivateMessages::run
#44 /Dev/TaskRunner.php(127): SilverStripe\Dev\TaskRunner::runTask
#43 /Control/RequestHandler.php(323): SilverStripe\Control\RequestHandler::handleAction
#42 /Control/Controller.php(286): SilverStripe\Control\Controller::handleAction
#41 /Control/RequestHandler.php(202): SilverStripe\Control\RequestHandler::handleRequest
#40 /Control/Controller.php(212): SilverStripe\Control\Controller::handleRequest
#39 /Control/RequestHandler.php(226): SilverStripe\Control\RequestHandler::handleRequest
#38 /Control/Controller.php(212): SilverStripe\Control\Controller::handleRequest
#37 /Control/Director.php(360): SilverStripe\Control\Director::SilverStripe\Control\{closure}
#36 /VersionedHTTPMiddleware.php(41): SilverStripe\Versioned\VersionedHTTPMiddleware::process
#35 /Control/Middleware/HTTPMiddlewareAware.php(62): SilverStripe\Control\Director::SilverStripe\Control\Middleware\{closure}
#34 /Control/Middleware/ConfirmationMiddleware.php(254): SilverStripe\Control\Middleware\ConfirmationMiddleware::process
#33 /Control/Middleware/HTTPMiddlewareAware.php(62): SilverStripe\Control\Director::SilverStripe\Control\Middleware\{closure}
#32 /Control/Middleware/ConfirmationMiddleware.php(254): SilverStripe\Control\Middleware\ConfirmationMiddleware::process
#31 /Control/Middleware/HTTPMiddlewareAware.php(62): SilverStripe\Control\Director::SilverStripe\Control\Middleware\{closure}
#30 /Security/PasswordExpirationMiddleware.php(84): SilverStripe\Security\PasswordExpirationMiddleware::process
#29 /Control/Middleware/HTTPMiddlewareAware.php(62): SilverStripe\Control\Director::SilverStripe\Control\Middleware\{closure}
#28 /Security/BasicAuthMiddleware.php(68): SilverStripe\Security\BasicAuthMiddleware::process
#27 /Control/Middleware/HTTPMiddlewareAware.php(62): SilverStripe\Control\Director::SilverStripe\Control\Middleware\{closure}
#26 /Security/AuthenticationMiddleware.php(61): SilverStripe\Security\AuthenticationMiddleware::process
#25 /Control/Middleware/HTTPMiddlewareAware.php(62): SilverStripe\Control\Director::SilverStripe\Control\Middleware\{closure}
#24 /Control/Middleware/CanonicalURLMiddleware.php(190): SilverStripe\Control\Middleware\CanonicalURLMiddleware::process
#23 /Control/Middleware/HTTPMiddlewareAware.php(62): SilverStripe\Control\Director::SilverStripe\Control\Middleware\{closure}
#22 /Control/Middleware/HTTPCacheControlMiddleware.php(42): SilverStripe\Control\Middleware\HTTPCacheControlMiddleware::process
#21 /Control/Middleware/HTTPMiddlewareAware.php(62): SilverStripe\Control\Director::SilverStripe\Control\Middleware\{closure}
#20 /Control/Middleware/ChangeDetectionMiddleware.php(28): SilverStripe\Control\Middleware\ChangeDetectionMiddleware::process
#19 /Control/Middleware/HTTPMiddlewareAware.php(62): SilverStripe\Control\Director::SilverStripe\Control\Middleware\{closure}
#18 /Control/Middleware/FlushMiddleware.php(27): SilverStripe\Control\Middleware\FlushMiddleware::process
#17 /Control/Middleware/HTTPMiddlewareAware.php(62): SilverStripe\Control\Director::SilverStripe\Control\Middleware\{closure}
#16 /Control/RequestProcessor.php(66): SilverStripe\Control\RequestProcessor::process
#15 /Control/Middleware/HTTPMiddlewareAware.php(62): SilverStripe\Control\Director::SilverStripe\Control\Middleware\{closure}
#14 /Control/Middleware/SessionMiddleware.php(20): SilverStripe\Control\Middleware\SessionMiddleware::process
#13 /Control/Middleware/HTTPMiddlewareAware.php(62): SilverStripe\Control\Director::SilverStripe\Control\Middleware\{closure}
#12 /Control/Middleware/AllowedHostsMiddleware.php(60): SilverStripe\Control\Middleware\AllowedHostsMiddleware::process
#11 /Control/Middleware/HTTPMiddlewareAware.php(62): SilverStripe\Control\Director::SilverStripe\Control\Middleware\{closure}
#10 /Control/Middleware/TrustedProxyMiddleware.php(176): SilverStripe\Control\Middleware\TrustedProxyMiddleware::process
#9 /Control/Middleware/HTTPMiddlewareAware.php(62): SilverStripe\Control\Director::SilverStripe\Control\Middleware\{closure}
#8 /Control/Middleware/HTTPMiddlewareAware.php(65): SilverStripe\Control\Director::callMiddleware
#7 /Control/Director.php(369): SilverStripe\Control\Director::handleRequest
#6 /Control/HTTPApplication.php(117): SilverStripe\Control\HTTPApplication::SilverStripe\Control\{closure}
#5 [internal](0): call_user_func
#4 /Control/HTTPApplication.php(136): SilverStripe\Control\HTTPApplication::SilverStripe\Control\{closure}
#3 /Control/Middleware/HTTPMiddlewareAware.php(65): SilverStripe\Control\HTTPApplication::callMiddleware
#2 /Control/HTTPApplication.php(137): SilverStripe\Control\HTTPApplication::execute
#1 /Control/HTTPApplication.php(116): SilverStripe\Control\HTTPApplication::handle
#0 /vendor/silverstripe/framework/cli-script.php(22): null

Affected server software versions
Kernel Version | Linux vps278100 4.15.0-128-generic #131-Ubuntu SMP Wed Dec 9 06:57:35 UTC 2020 x86_64
Name | Linux
Version | 4.15.0-128-generic(#131-Ubuntu SMP Wed Dec 9 06:57:35 UTC 2020)
Name | php
Version | 7.4.13
Database | mariadb | Ver 15.1 Distrib 10.1.47-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

Related code snippets
class Clear extends BuildTask {
    public function run($HTTPRequest)
    {
        $date = date('Y-m-d 00:00:00', strtotime('-3 days'));
        /** @var DataList|Message[] $msgs */
        $msgs = Message::get()->filter(['IsAddress' => true, 'Created:LessThan' => $date]);
    }
}

    private static $table_name = 'STMessage';

    private static $db = [
        'IsAddress'   => 'Boolean',
    ];

    private static $indexes = [
        'Created'    => true,
        'LastEdited' => true,
        'Encrypted'  => true,
    ];

Cheddam's comment on the previous issue

We've determined that due to the collation adjustment being introduced in a separate config file, it is currently being installed in projects during upgrades, making this an opt-out change as of Recipe 4.7.0. I've raised two PRs to address this:

A fix to make the collation change opt-in in Recipe 4.7.1 and later: [silverstripe/recipe-core#64](https://github.com/silverstripe/recipe-core/pull/64)
A clarification in the 4.7.0 upgrade guide with instructions on how to opt out for the time being: [#9821](https://github.com/silverstripe/silverstripe-framework/pull/9821)

Cheddam's comment on the previous issue

We've determined that due to the collation adjustment being introduced in a separate config file, it is currently being installed in projects during upgrades, making this an opt-out change as of Recipe 4.7.0. I've raised two PRs to address this:

A fix to make the collation change opt-in in Recipe 4.7.1 and later: [silverstripe/recipe-core#64](https://github.com/silverstripe/recipe-core/pull/64)
A clarification in the 4.7.0 upgrade guide with instructions on how to opt out for the time being: [#9821](https://github.com/silverstripe/silverstripe-framework/pull/9821)

Two separate problems were raised in the original issue:
Collation change is opt-out in 4.7.0
This will be resolved in 4.7.1, and projects using older MariaDB / MySQL versions will need to opt out manually in the meantime (and on new projects going forward.) The release notes document the most common issue that will be encountered by running the new collation against old DB versions - index size errors.
Queries break in specific circumstances
This is the challenging and as-yet-unsolved one. When running a CronTask operation, an issue was encountered where the DB would throw syntax errors on standard ORM operations. (See the stack trace in the top comment.) This syntax error suggests that the sql_mode setting is not being correctly sent to the DB, which Silverstripe relies on to enable double quotes to be used in place of backticks in queries (via the ANSI / ANSI_QUOTES mode.)
The only way we've managed to reproduce this failure is when the sql_mode configuration in the MySQLDatabase adapter is unset, which can occur when upgrading to 4.7.0 without a full flush, but should not be an issue after flushing. The original reporter has stated that they've flushed multiple times and that this appears not to be the issue.
A similar case has been documented. However, that project was running 4.4.6, and not using the utfmb4 collation in the first place. Strangely, their situation was resolved by changing their collation to latin1_swedish_ci.
At this point we've run out of leads, so we're looking for additional information from the community. If you've faced this issue, can you please provide the following information:

The full error and stack trace
silverstripe/recipe-core or silverstripe/framework version
Where you encountered the issue (CLI command or web request)
Code sample (related DataObject and the code that the error was thrown in)
The output of var_dump(Config::inst()->get(MySQLDatabase::class, 'sql_mode'); above the breaking line
Whether changing the collation settings fixes the issue, and whether changing back reintroduces it

Thanks!

Two separate problems were raised in the original issue:
Collation change is opt-out in 4.7.0
This will be resolved in 4.7.1, and projects using older MariaDB / MySQL versions will need to opt out manually in the meantime (and on new projects going forward.) The release notes document the most common issue that will be encountered by running the new collation against old DB versions - index size errors.
Queries break in specific circumstances
This is the challenging and as-yet-unsolved one. When running a CronTask operation, an issue was encountered where the DB would throw syntax errors on standard ORM operations. (See the stack trace in the top comment.) This syntax error suggests that the sql_mode setting is not being correctly sent to the DB, which Silverstripe relies on to enable double quotes to be used in place of backticks in queries (via the ANSI / ANSI_QUOTES mode.)
The only way we've managed to reproduce this failure is when the sql_mode configuration in the MySQLDatabase adapter is unset, which can occur when upgrading to 4.7.0 without a full flush, but should not be an issue after flushing. The original reporter has stated that they've flushed multiple times and that this appears not to be the issue.
A similar case has been documented. However, that project was running 4.4.6, and not using the utfmb4 collation in the first place. Strangely, their situation was resolved by changing their collation to latin1_swedish_ci.
At this point we've run out of leads, so we're looking for additional information from the community. If you've faced this issue, can you please provide the following information:

The full error and stack trace
silverstripe/recipe-core or silverstripe/framework version
Where you encountered the issue (CLI command or web request)
Code sample (related DataObject and the code that the error was thrown in)
The output of var_dump(Config::inst()->get(MySQLDatabase::class, 'sql_mode'); above the breaking line
Whether changing the collation settings fixes the issue, and whether changing back reintroduces it

Thanks!

On MariaDB 10.x, indexes and uniques break, because MB4 takes up more bits, so 255 varchar's can't be proper indexes anymore (this is partially a bug in MariaDB not using the long indexes properly, I think)

On MariaDB 10.x, indexes and uniques break, because MB4 takes up more bits, so 255 varchar's can't be proper indexes anymore (this is partially a bug in MariaDB not using the long indexes properly, I think)

No further reports of any issues after upgrading, closing


Unable to add cluster_log_types

On an existing EKS cluster that was created with this module, I'm am unable to add cluster_log_types to the cluster.
module "eks_cluster" {
  source                       = "cloudposse/eks-cluster/aws"
  enabled                      = data.aws_ssm_parameter.enabled_eks_cluster.value
  version                      = "0.39.0"
  name                         = "eks-${var.env}"
  region                       = var.region
  tags                         = merge(data.terraform_remote_state.tags.outputs.tags,local.eks_tags)
  vpc_id                       = data.terraform_remote_state.vpc.outputs.vpc_id
  subnet_ids                   = data.terraform_remote_state.vpc.outputs.app_subnets
  endpoint_private_access      = true
  endpoint_public_access       = false
  allowed_cidr_blocks          = local.cidr_access_blocks
  kubernetes_version           = data.aws_ssm_parameter.kubernetes_version.value
  oidc_provider_enabled        = true
  workers_role_arns            = [module.eks_node_group.eks_node_group_role_arn]
  map_additional_iam_roles     = local.map_additional_iam_roles
  enabled_cluster_log_types    = ["api","audit","authenticator","controllerManager","scheduler"]
}

Expected Behavior
A log group should be created and the EKS resource should be updated to collect control plane logs.
The Error
Error: error associating EKS Cluster (cluster-name) encryption config: InvalidParameterException: Encryption is already enabled on the cluster
{
  RespMetadata: {
    StatusCode: 400,
    RequestID: "0244cb16-107c-49fb-95b8-0a48783d5722"
  },
  ClusterName: <cluster-name>,
  Message_: "Encryption is already enabled on the cluster"
}

  on .terraform/modules/eks_cluster/main.tf line 45, in resource "aws_eks_cluster" "default":
  45: resource "aws_eks_cluster" "default" {

Additional Context
It is worth noting that once I remove the "enabled_cluster_log_types" from the module, everything works fine.

It also happens when I add another tag to the module. basically whenever I add something that updates the eks resource.
This is very strange because I don't remember this behaviour when I was working with EKS 1.18 (now working with 1.19)

So I managed to go back to version 0.37.0 of the module before the default value for cluster encryption was set to "true", and everything works fine.
My guess is that the dynamic block for some reason is not properly saved in the state, and is trying to be recreated everytime there is a change.
https://github.com/cloudposse/terraform-aws-eks-cluster/blob/0e88a75962b77dda6604d000504e6ad98e9a88b6/variables.tf#L138

just hit this problem running terraform apply updating an existing cluster from 1.19 to 1.20 with terraform-aws-eks-cluster v0.42.1
module.eks_cluster.aws_eks_cluster.default[0]: Still modifying... [id=clusterxx, 27m0s elapsed]
module.eks_cluster.aws_eks_cluster.default[0]: Still modifying... [id=clusterxx, 27m10s elapsed]
module.eks_cluster.aws_eks_cluster.default[0]: Still modifying... [id=clusterxx, 27m20s elapsed]
module.eks_cluster.aws_eks_cluster.default[0]: Still modifying... [id=clusterxx, 27m30s elapsed]
module.eks_cluster.aws_eks_cluster.default[0]: Still modifying... [id=clusterxx, 27m40s elapsed]

Error: error associating EKS Cluster (clusterxx) encryption config: InvalidParameterException: Encryption is already enabled on the cluster
{
  RespMetadata: {
    StatusCode: 400,
    RequestID: "3f8ec556-3c73-4daa-9768-24d9d58bd778"
  },
  ClusterName: "clusterxx",
  Message_: "Encryption is already enabled on the cluster"
}

  on .terraform/modules/eks_cluster/main.tf line 45, in resource "aws_eks_cluster" "default":
  45: resource "aws_eks_cluster" "default" {

Running apply a second time succeeded.

This is a bug in the Terraform AWS Provider: https://github.com/hashicorp/terraform-provider-aws/issues/19968
Fixed in v3.49.0


tutorial not working

followed tutorial step by step. when i ran npm start i got the output
Enabled debugging for add-in 05c2e1c9-3e1d-406e-9a91-e9ac64854143. Debug method: 0
Starting the dev server... (webpack-dev-server --mode development)
Unable to start the dev server. Error: The dev server is not running on port 3000.
Sideloading the Office Add-in...
Debugging started.

im running on windows, but i never got a prompt to install certificate

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

ID: 49ccc61e-06b1-fd30-63a0-625301ea0bc8
Version Independent ID: 1fdff452-de8f-5b97-9f53-389eb9576b25
Content: Build an Excel task pane add-in using React - Office Add-ins
Content Source: docs/quickstarts/excel-quickstart-react.md
Product: excel
Technology: add-ins
GitHub Login: @o365devx
Microsoft Alias: o365devx

fixed by removing spacing from the path to my project


Consider absorbing the scalasig library from twitter/rsc

Scalacp is currently based on Scalap, which has a number of known usability and correctness issues. https://github.com/twitter/rsc/pull/85 suggests an alternative by providing a library for read/write support for ScalaSignatures and both low-level and high-level representations for them. We could consider absorbing that library to improve Scalacp.

Here's the link to the API: https://github.com/twitter/rsc/tree/master/mjar/scalasig/src/main/scala/scala/meta/scalasig.

I don't think we should block the release of 4.0 for this. In fact, I'd prefer to leave this change to another release cycle, since it may break lots of stuff.

twitter/rsc is no longer being maintained, so I think it might no longer be relevant.


Buttons behaviour

Implement behaviour for buttons onHover and onClick

Is it alright to assign this to myself?

Hi @MarsIncarnate, I want to work on this.

Hi @MarsIncarnate. I'd like to work on this if possible

@MarsIncarnate what level is this issue ?

I'm already done with it all that's left is to create a pull request.

@MarsIncarnate is this issue fixed?

Yeah it is. I'm surprised it isn't closed, I tagged it in my PR. I'll close it

Closed by #312


color part of the background

Hi
is there a way to color part of the background, using the equivalent of area or patch?
e.g.
figure;scatter(rand(100,1),rand(100,1))
vert = [0 0;1 1;0 1]; % x and y vertex coordinates
patch('Faces',fac,'Vertices',vert,'FaceAlpha',.5,'FaceColor','g');
vert = [0 0;1 1;1 0]; % x and y vertex coordinates
patch('Faces',fac,'Vertices',vert,'FaceAlpha',.5,'FaceColor','r');

thanks!

Hi @danielemarinazzo
Sorry for the gigantic wait. Gramm was on hold but I now have the opportunity to work on it! You should be able to use the method geom_polygon()to do just that ! There is a example in examples.m in the section "Decorate plot backgrounds with geom_polygon()"


Any sample implementation with an Exchange?

Thanks for sharing. I wonder if you could share a sample code of an implementation with an exchange for e.g. with Binance Go API. I appreciate if you do.

Will look into this, for a particular currency pair?

Can you elaborate a bit more on this?

For instance with Binance
https://github.com/binance-exchange/go-binance


Update to reference masking step to Mummer 4.0

This will speed up the masking step. Need to validate the output of Mummer 4.0, since it is in beta.

Updated bwa-reference workflow with Mummer 4 and added threads parameter.


docs(plugins) Proxy-cache supports db-less

As an OSS plugin, proxy-cache has db-less support.

Added the plugin to db-less support lists going back to 1.2.x based on https://github.com/Kong/kong/blob/master/CHANGELOG.md
Removed sidecar injector plugin from 2.0.x and 1.5.x lists as it was deprecated in 1.5.x (https://github.com/Kong/docs.konghq.com/pull/1817)
Set dbless_compatibility to true to generate examples and accurate descriptions

Previews: https://deploy-preview-2049--kongdocs.netlify.app/hub/kong-inc/proxy-cache
https://deploy-preview-2049--kongdocs.netlify.app/2.0.x/db-less-and-declarative-config/

@GayleNeumann @tlblessing can one of you take a look?


Removing chunks on failed to write to replicas

https://github.com/seaweedfs/seaweedfs/issues/3578
What problem are we solving?
https://github.com/seaweedfs/seaweedfs/issues/3578
How are we solving the problem?
https://github.com/seaweedfs/seaweedfs/issues/3578
How is the PR tested?
Checks

[ ] I have added unit tests if possible.
[ ] I will add related wiki document changes and link to this PR after merging.

@chrislusf Hello, I also wanted to clarify what happens when a chunk is re-written locally to a volume?
Will there be a rewrite or no change?

Both are possible.

@chrislusf fixed


Install no longer possible?

BrowserGPT can no longer be installed as https://nexus.corp.indeed.com/repository/npm is no longer reachable.
npm ERR! code ENOTFOUND
npm ERR! syscall getaddrinfo
npm ERR! errno ENOTFOUND
npm ERR! network request to https://nexus.corp.indeed.com/repository/npm/tmp/-/tmp-0.2.1.tgz failed, reason: getaddrinfo ENOTFOUND nexus.corp.indeed.com
npm ERR! network This is a problem related to network connectivity.
npm ERR! network In most cases you are behind a proxy or have bad network settings.
npm ERR! network
npm ERR! network If you are behind a proxy, please make sure that the
npm ERR! network 'proxy' config is set properly.  See: 'npm help config'

This should be fixed. Please try the latest master

thank you! I can confirm that one can install and start it again.


QR code of the first and second dose

Describe the bug
I have the certificate for both the first and second vaccinations. They are 2 different QR codes. Both are positively recognized by the app. But once you get the one for the second dose, shouldn't the first dose certificate expire?

Expected behaviour
The certificate of the first dose should expire when that of the second vaccination is achieved

Steps to reproduce the issue
Scan the QR code of the first dose. Then scan the second dose certificate

This is an intresting one @marcoscale98
Honestly, I think whoever wrote this law may have not really thought about how it would be implemented in practice.
The issue here is that the Covid Certificates for vaccination don't contain a field that specifies the end of validity of that certificate, but the law says that the certificate for the first dosis has a validity that is specific for each person (the distance between the appointment for the first dosis and the second one varies from person to person).
So, since the app doesn't know when the " data prevista per la somministrazione della seconda dose" is it can't decide if the certificate should still be valid or not.
There would be the option of "remotely" revoking all certficates of the first dosis as soon as the day of the appointment for the second dosis comes, but the issue here it that if the Ministero della Salute revokes something like 40 milion certificates, the list of revoked certificates that will have to be synced on every verification app in Europe would weight around 1 GB, which is not feasable.
So, I envision two possible solutions to the problem:

The current law gets modified by giving a fixed duration of validity to all first dose certificates (depending on the type of vaccine maybe), so the app could simply compute "date of issuance" + "fixed duration of first dosis certificates (for ex. 30 days)" and see if that date has already passed or not.
The other option (which wouldn't work for certificates already issued, though) is to set the date of the second dose appointment as the Expiration Time of the CBOR Web Token (CWT) itself. This expiration date technically is something separate from the validity of the covid certificate itself, but it should still do the trick as the app should anyways check that this Expiration date is not surpassed.

In both cases though it's not up to the developers of VerificaC19 to make decisions in this regard.
If I have written something that's not correct, please leave a comment

Apparently, some countries (like Austria) allow people to enter the country with a Covid Certificate of the first dose up to 90 days after the first vaccination (even without having done the second dose). IT EN
This means my "second solution" cannot be done because ending the certificate's validity as soon as the date of their scheduled second dosis would unjustly keep people from entering Austria (for example) if they decicded not to take the second dosis on the scheduled date.
If my reasoning is correct this leaves the only option to update the Italian Law that establishes the rules of when a certificate is considered valid.

Actually, thinking about this a little more,  another reason that revoking the certificates or making the CWT expire when the data prevista per la somministrazione della seconda dose comes doesn't work is that it would only work for Covid Certificates emitted by Italy.
The Digital Covid Certificate is a EU-wide effort, meaning every member state recognizes the certificates emitted by all other memer states. Still, every country can choose its specific requirements/restrictions (like the duration of the validity of the first dosis, or if you consider first dosis valid at all, which specific vaccines to accept...)  for when a Covid Certificate is considered valid inside its territory; these rules obviously have to be equal for all Covid Certificate holders that are inside of the country's territory independently from which EU country has emitted the certificate.
So, aside from the techical problems of implementing what the "DECRETO-LEGGE 22 aprile 2021 , n. 52" asks, it would anyways only work under the assumption that every country of the EU already has a scheduled appointment date for the second dose at the time the certificate for the first dose is issued, which probably is not the case

Now I also doubt that even the green pass obtained with a negative covid test does not have an expiration date that can be verified with VerificaC19.
Has anyone already tried it?

@marcoscale98 No, it doesn't.
Here you can see what information is stored on the QR codes. (for covid tests pages 9 to 11)
https://ec.europa.eu/health/sites/default/files/ehealth/docs/covid-certificate_json_specification_en.pdf
And also, why would they need an expiration date? Every country can decide by itself how long after the time of the collection of the sample the certificate is considered valid.
Italy, for example considers a certificate of a test valid in the 48 hours after the test is executed (art. 9 comma 5 of DL 22 aprile). The app can compute "time of execution of the test" + 48h and see if that time has passed. No need for an expiration date.

@marcoscale98 @enricomiletto thank you for reporting this issue and for the interesting discussion, I'll close this thread cause it's not strictly related to the app.


rdiff() with functions containing for loops?

Hi, I am using extensively rdiff() which does a really good job for my applications. Unfortunately my functions contain for loops. I am therefore using expressions and manually creating the functions with @eval. It is a good solution. However, I am currently trying to spawn differentiation operations over different processes using distributed arrays. The use of the localpart() of such arrays within the body of the expression to be differentiated seems to be a problem.
You can refer to the following stackoverflow post.
http://stackoverflow.com/q/28959341/4600741?sem=2
(Julia: Use of Distributed Arrays in Expressions)
I was wondering if there is any plan to extend rdiff() to functions with for loops. This would automatically fix my problem and make my life much easier!
(or do you have any alternative suggestions on how to overcome my issue?)
Thanks a lot!

Hi again, does anyone believe rdiff() will be extended to work with functions with for loops? I am sorry for insisting on this point, but I got stuck and would really need it to move on. Thanks a lot!

I can't comment on @fredo-dedup's development plans, but applying reverse-mode AD to general loops in a reasonable way is quite a technical challenge.

Hi @ulzegasi
Having for loops work for functions too is clearly an enhancement that I have in mind.... but I am still short on a satisfactory solution !
The best solution that I could think of was doing a reverse translation of the AST (starting from ifnots, gotos,..) and rebuilding the initial for loop. But that is not trivial and most importantly it will be a very brittle process : as soon as Julia internals evolve I will probably break.
Another way could be to have rdiff work directly with gotos and ifnots but this kind of instructions make the execution path very hard to parse and rdiff needs to understand the execution path.
suggestions welcome !

Thank you for your comments! I see your point. I'm afraid I cannot make any useful suggestion as this goes a bit beyond my expertise. I'll be patient.

Hi @ulzegasi
I have pushed a version that can parse function with for loops in the devl branch. (run Pkg.checkout("ReverseDiffSource", "devl") to install it). I would like to know if it works for you before publishing it to master.
You can check out functions that work in test\functions.jl.
Thanks.

I've merged with master and tagged 0.1.4.
Included also are precompilation and an updated README


Why does Lane in my traffic editor have no "speed_limit" attribute

In this issue, it was mentioned that the speed limit was increased
https://github.com/open-rmf/rmf_traffic/issues/43

Is it because this version has not been released yet？

I'm a beginner. I hope you can give me some guidance


Member Photos

Currently we have photos of every member of congress going back to 1985 and all but 2-3 back to 1980. This exhausts the bioguide, as well as Wikipedia for anyone who has a wiki page that's the same as their name.
Jeff says he thinks we have further photos from a past incarnation of WVV, but those files have not as of yet been located.
This issue should track our progress locating further member photos. Perhaps this could be done by hiring some undergrads and having them work. We have a script to generate which members we're missing--we could just give them a CSV that has five columns per row: ICPSR, name, state, district, photo URL. I can automate the code side of ingesting and converting whatever photos they find.
I think it makes sense to try to fill the missing photos moving backwards, both because recent members are more "important" in some respects, and because I think more recent members are going to be easier to find.
Currently we have 8622/12232 photos. You can calculate the numerator by running ls -altr /var/www/voteview/static/img/bios/ | wc -l and subtracting 3. You can calculate the denominator by running db.voteview_members.distinct('icpsr').length in mongo.

[x] Done back to 1970
[x] Done back to 1960
[ ] Done back to 1950
[ ] Hit 10,000 ICPSR-photos

Currently missing going back to 1970:

Name
ICPSR
Party
Congress
State

SMITH, Joseph Francis
14876
Democrat
97
Pennsylvania

ROYER, William Howard
14676
Republican
96
California

HUTCHINSON, John Guiher
14680
Democrat
96
West Virginia

LEGGETT, Robert Louis
10599
Democrat
95
California

MEEDS, Edwin Lloyd
10756
Democrat
95
Washington

CORNWELL, David Lance
14412
Democrat
95
Indiana

TUCKER, James (Jim) Guy, Jr.
14457
Democrat
95
Arkansas

HÉBERT, Felix Edward
4275
Democrat
94
Louisiana

LANDRUM, Phillip Mitchell
5436
Democrat
94
Georgia

RANDALL, William Joseph
7717
Democrat
94
Missouri

TALCOTT, Burt Lacklen
10631
Republican
94
California

du PONT, Pierre Samuel, IV
13014
Republican
94
Delaware

MEZVINSKY, Edward Maurice
14036
Democrat
94
Iowa

MAILLIARD, William Somers
5929
Republican
93
California

WALDIE, Jerome Russell
10793
Democrat
93
California

SCHERLE, William Joseph
11047
Republican
93
Iowa

SHOUP, Richard Gardner (Dick)
13041
Republican
93
Montana

TOWELL, David Gilmer
14059
Republican
93
Nevada

YOUNG, Samuel Hollingsworth
14064
Republican
93
Illinois

MONAGAN, John Stephen
6586
Democrat
92
Connecticut

SPRINGER, William Lee
8814
Republican
92
Illinois

CARLSON, Cliffard Dale
13054
Republican
92
Illinois

RONAN, Daniel John
10765
Democrat
91
Illinois

COWGER, William Owen
11010
Republican
91
Kentucky

To generate this table, run /usr/scripts/getPhoto/checkMissing.py. You can modify a variable in that script to change the cutoff congress back further.
If any of you want to work on this, name your file xxxxxx.jpg or xxxxxx.png and put it in /usr/scripts/getPhoto/manual/. Then run /usr/scripts/getPhoto/manual/resize_and_copy to deploy.

I went and got a bunch more photos from the above list, so we are only missing 4 photos going back to 1970. Smith, Royer, Hutchinson, and Carlson were all special elected and then failed to be renominated, and thus are absent from the US Congressional pictorial directories for their respective congresses.
Maybe we can aim to be photo complete back to 1960 (72 missing photos) or 1950 (66 more) by launch?

I have photos (sorta) for all four of the 1970+ congressmen we were missing. Onto the next milestone.

Found two other sources of public domain member photos:
http://www.loc.gov/pictures/
(Names are sometimes iffy--so it takes a bit of searching)
and "Who's Who In State Politics", a series of books issued about Massachusetts state politicians, which includes many photos that are not a part of the bioguide.

We are missing 28 photos from the 115th -- I expect these to be resolved when the Congressional bioguide gets official photos for them.

"Find a Grave" has a shocking number of early newspaper photos and other sources of photos for early members. Almost all of them appear to be public domain or sourced from newspapers that are no longer published or solvent, and those that are unsourced appear to be official photos.

This issue was moved to voteview/member_photos#1


String format error in release v1.1

MSGOK: .DB "[RETURN] = Okay",0
String format error
Invalid list format
It looks like the parser doesn't grok the '=' in the string

Fixed in v1.2


no-unused-variable interferes with other rules

Bug Report

TSLint version: 5.8.0
TypeScript version: 2.6.1
Running TSLint via: CLI

TypeScript code being linted
import { EventEmitter } from '@angular/core';
import { Observable } from 'rxjs/Observable';
import { Subject } from 'rxjs/Subject';
import 'rxjs/add/observable/of';
import 'rxjs/add/operator/do';

export const f1 = () => returnsVoid(); // error
export const obs1 = Observable.of(undefined).do(() => returnsVoid()); // error

export class Component {
  subject = new Subject<void>();
  event = new EventEmitter<void>();

  obs2 = Observable.of(undefined).do(() => this.subject.next()); // error
  obs3 = Observable.of(undefined).do(() => this.event.next()); // no error, but should be

  obs4 = Observable.of(undefined).do(this.subject.next); // error
  obs5 = Observable.of(undefined).do(this.event.next); // no error, but should be
}

function returnsVoid() { }

with tslint.json configuration:
{
  "rules": {
    "no-unused-variable": [
      true,
      "check-parameters", {
        "ignore-pattern": "^_"
      }
    ],
    "no-unbound-method": true,
    "no-void-expression": true
  }
}

Actual behavior
When the no-unused-variable variable is enabled, the no-void-expression rule does not report an
error on line 15 and the no-unbound-method rule does not report an error on line 18. But if you
disable the no-unused-variable rule, the no-void-expression and no-unbound-method rules
correctly reports all of the noted errors.
Expected behavior
The no-unused-variable rule should not interfere with other rules.

Repro: https://github.com/kevinphelps/no-void-expression-bug
git clone  https://github.com/kevinphelps/no-void-expression-bug.git
cd no-void-expression-bug
yarn
yarn run lint

There actually seems to be more to this. In my larger project, no-void-expression misses errors when no-unused-variable is enabled regardless of the order. I will try to isolate that into the repro.

no-unused-variable appears to also interfere is with other rules like no-unbound-method.

(did not mean to close the issue)

Duplicate of #2649 and #2736
Fix is available in #2763 but unlikely to be merged soon (if at all)

Sorry about that...

Don't worry about that. The other issues were hard to find.
I just renamed one of them to make it easier to find.

I saw that.

I would love to just enable the proper TypeScript settings and just remove no-unused-any, but I can't do that until I upgrade my project to Angular 5 to ngc issues. So my temporary workaround is to run the no-unused-any rule by itself and then run the rest in a separate process.

You mean the Parameter '$event' is declared but never used. error when compiling AOT?
You just need to disable --noUnusedParameters while still using --noUnusedLocals.
To still find unused parameters you can use the no-unused rule from my package tslint-consistent-codestyle: https://github.com/ajafff/tslint-consistent-codestyle/blob/master/docs/no-unused.md

I'll give that a shot! Thanks!


work in progress: markup/goldmark: Add attributes support for blocks (tables etc.)

Fixes #7548

There are some stuff left here.
This first implementation has the attributes above the block (which also feels natural to me), but looking at what others have done/thinks about this, the common thing is to put it below, e.g.:
> foo
> bar
{.myclass}

vs
{.myclass}
> foo
> bar

https://kramdown.gettalong.org/syntax.html#attribute-list-definitions
Commonmark draft: https://mb21.github.io/stmd/spec.html#attributes

@yuin do you have any thoughts on this (also: re. my implementation in this PR)?
/cc @jmooring

IMHO, There are no standards for attributes. pandoc has the attributes above the block.
Your implementation is no problem. But It may be hard to follow this rule for some elements (i.e. table cells). So attributes for these elements are hard to implement as extensions...

@yuin thanks, I (and I suspect most people) do not care about table cells ... I think the test cases I've added would make most people happy.

So, there are more to this syntax than the below, but what I can not make up my mind about is whether to place the attribute lists below or above the Markdown blocks. The CommonMark people have discussed this for year. There is some context above, but I'm making this a simple "above" or "below":
> foo
> bar
{.myclass}

vs
{.myclass}
> foo
> bar

https://kramdown.gettalong.org/syntax.html#attribute-list-definitions
Commonmark draft: https://mb21.github.io/stmd/spec.html#attributes

Would it not make sense to follow the Commonmark and the Kramdown spec (i.e. after) to allow for everything to play well?
@bep Is this something that could be configurable?

Instead of above or below, think in terms of before or after. The existing implementation of heading attributes requires the attribute to be placed after the heading.

@bep Is this something that could be configurable?

Could, yes -- but ... that is a bad idea as it ties the content to the configuration making it very unportable.
The current implementation in this PR allows both before/after, but I also think that is a bad idea.
I think I agree with @jmooring  -- and after is the closest we come to a "standard" at the moment.


How to disable Made For You icon

I use old version and Made For You not fit the theme How to hide or disable it?

are you using an old version of SpotX or an old version of Spotify ?
Now during the installation it is possible to add incoming parameters.
For example, here is your key -made_for_you_off which removes this button,
It just needs to be added to the installation line and run directly from PowerShell:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; iex "& { $((iwr -useb 'https://raw.githubusercontent.com/amd64fox/SpotX/main/Install.ps1').Content) } -made_for_you_off"

Or you can remove this button manually with this instruction, use this text Show "Made For You" entry point in the left sidebar to search in the xpui.js file


Method Chaining in Tensorflow

I have posted a question about this in stackoverflow. https://stackoverflow.com/questions/60528238/why-no-method-chaining-in-tensorflow
Aka. named parameter idiom. I did a simple Nearest Neighbor algorithm in TF and I ended up writing the whole NN algorithm in one line. You can argue that I should take it apart, but I think this happens often anyways (in coding in general too):
tf.math.argmin(tf.math.reduce_sum(tf.math.abs(tf.math.subtract(Xtrain_set, Xtest_row)), axis=1), output_type=tf.int32)

# returns the minimum train set indices for each X predictable row based on L1 (in a for cycle) but this is not important

It could be much more readable and simple to write:
tf.subtract(Xtrain_set, Xtest_row).abs().reduce_sum(axis=1).argmin(output_type=tf.int32)
I think it really follows the "Tensor-flow" thinking too.
Thanks.

I have a similar idea for the Keras interface: instead of
model = vgg16.VGG16()
model.compile(loss="mse")
model.fit(...)

it would be nice to be able to do
vgg16.VGG16().compile(loss="mse").fit(...)

And I think all it takes in this examples is a simple return(self) here:
https://github.com/tensorflow/tensorflow/blob/b36436b087bd8e8701ef51718179037cccdfc26e/tensorflow/python/keras/engine/training.py#L462-L470
https://github.com/tensorflow/tensorflow/blob/b36436b087bd8e8701ef51718179037cccdfc26e/tensorflow/python/keras/engine/training.py#L555-L557

Hi,
Thank you for opening this issue. Since this issue has been open for a long time, the code/debug information for this issue may not be relevant with the current state of the code base.
The Tensorflow team is constantly improving the framework by fixing bugs and adding new features. We suggest you try the latest TensorFlow version with the latest compatible hardware configuration which could potentially resolve the issue. If you are still facing the issue, please create a new GitHub issue with your latest findings, with all the debugging information which could help us investigate.
Please follow the release notes to stay up to date with the latest developments which are happening in the Tensorflow space.


pr-upload: use PkgVersion.parse instead of Version.new

[ ] Have you followed the guidelines in our Contributing document?
[ ] Have you checked to ensure there aren't other open Pull Requests for the same change?
[ ] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.
[ ] Have you successfully run brew style with your changes locally?
[ ] Have you successfully run brew tests with your changes locally?

Error: Bottles are for spdlog 1.7.0_1 but formula is version 1.7.0_1!

Looks like I messed up in the last PR and forgot about PkgVersion:
> PkgVersion.parse "1.7.0_1"
=> #<PkgVersion:0x00007fd16411a188 @version=#<Version:0x00007fd16411a1b0 @version="1.7.0">, @revision=1>
> Version.new "1.7.0_1"
=> #<Version:0x00007fd1651fa840 @version="1.7.0_1">

Changing it should fix the problem once and for all...

Thanks @dawidd6 !


Disable travis ci on linux

The travis ci on linux seems to be unstable than on mac, so try to disable travis ci on linux image now.

LGTM. however I'd like to hold off to see #25 can help improve the ci.


Overloaded functions not resolved.

When generating documentation for my project I get the following errors for overloaded functions:
doxygenfunction: Unable to resolve multiple matches for function “tt::operator<<” with arguments (std::ostream&, FontWeight const&) in doxygen xml output for project “TTauri” from directory: C:/Users/Tjienta/CMakeBuilds/1f9f7e79-3587-4ae4-b76b-4cfa997cb5c7/build/x64-Debug/TTauri/src/xml. Potential matches:

- std::ostream &operator<<(std::ostream &lhs, AudioDevice_state const &rhs)
- std::ostream &operator<<(std::ostream &lhs, FontWeight const &rhs)
- std::ostream &operator<<(std::ostream &lhs, KeyboardModifiers const &rhs)
- std::ostream &operator<<(std::ostream &lhs, KeyboardVirtualKey const &rhs)
- std::ostream &operator<<(std::ostream &lhs, TextDecoration const &rhs)
- std::ostream &operator<<(std::ostream &lhs, ThemeMode rhs)
- std::ostream &operator<<(std::ostream &lhs, cell_address const &rhs)
- std::ostream &operator<<(std::ostream &lhs, command const &rhs)
- std::ostream &operator<<(std::ostream &lhs, const URL &rhs)
- std::ostream &operator<<(std::ostream &lhs, datum_type_t rhs)
- std::ostream &operator<<(std::ostream &lhs, glob_token_t const &rhs)
- std::ostream &operator<<(std::ostream &lhs, glob_token_type_t const &rhs)
- std::ostream &operator<<(std::ostream &lhs, source_code_ptr const &rhs)
- std::ostream &operator<<(std::ostream &lhs, tokenizer_name_t rhs)
- template<typename T, int M> std::ostream &operator<<(std::ostream &lhs, fixed<T, M> const &rhs)
- template<typename T, int N> std::ostream &operator<<(std::ostream &os, results<T, N> const &r)
- template<typename Tag, typename ...InfoTags> std::ostream &operator<<(std::ostream &lhs, trace_data<Tag, InfoTags...> const &rhs)

I've tried many ways of rewriting the doxygen statement until it works:

The whitespace between type and reference & is required.
The argument name after the reference is required.

Generated incorrect doxygenfunction statement:
.. doxygenfunction:: tt::operator<<(std::ostream&, FontWeight const&)

Functioning doxygenfunction statement (Both whitespace and the parameter names are required):
.. doxygenfunction:: tt::operator<<(std::ostream &lhs, FontWeight const &rhs)

These are the packages that are installed on my system
alabaster==0.7.12
Babel==2.8.0
beautifulsoup4==4.9.1
breathe==4.19.2
bs4==0.0.1
certifi==2020.6.20
chardet==3.0.4
colorama==0.4.3
docutils==0.16
exhale==0.2.3
idna==2.10
imagesize==1.2.0
Jinja2==2.11.2
lxml==4.5.2
MarkupSafe==1.1.1
packaging==20.4
Pygments==2.6.1
pyparsing==2.4.7
pytz==2020.1
requests==2.24.0
six==1.15.0
snowballstemmer==2.0.0
soupsieve==2.0.1
Sphinx==3.1.2
sphinx-rtd-theme==0.5.0
sphinxcontrib-applehelp==1.0.2
sphinxcontrib-devhelp==1.0.2
sphinxcontrib-htmlhelp==1.0.3
sphinxcontrib-jsmath==1.0.1
sphinxcontrib-qthelp==1.0.3
sphinxcontrib-serializinghtml==1.1.4
urllib3==1.25.10

conf.py.in
# Configuration file for the Sphinx documentation builder.
#
# This file only contains a selection of the most common options. For a full
# list see the documentation:
# https://www.sphinx-doc.org/en/master/usage/configuration.html

# -- Path setup --------------------------------------------------------------

# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
#
# import os
# import sys
# sys.path.insert(0, os.path.abspath('.'))

# -- Project information -----------------------------------------------------

project = 'TTauri'
copyright = '2020, Pokitec'
author = 'Tjienta Vara'

# The full version, including alpha/beta/rc tags
release = '1.0'

# -- General configuration ---------------------------------------------------

# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = [
    "sphinx_rtd_theme",
    "breathe",
    "exhale"
]

breathe_projects = {
    "TTauri": "@SPHINX_XML_INPUT@"
}

breathe_default_project = "TTauri"

import os.path

exhale_args = {
    "containmentFolder":     os.path.normpath("@CMAKE_CURRENT_SOURCE_DIR@/api"),
    "rootFileName":          "ttauri_api.rst",
    "rootFileTitle":         "TTuari API",
    "doxygenStripFromPath":  "..",
    # Suggested optional arguments
    "createTreeView":        True,
    # TIP: if using the sphinx-bootstrap-theme, you need
    # "treeViewIsBootstrap": True,
    "exhaleExecutesDoxygen": False,
    #"exhaleDoxygenStdin":    "INPUT = @SPHINX_XML_INPUT@"
}

primary_domain = "cpp"

highlight_language = "cpp"

# Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates']

# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
# This pattern also affects html_static_path and html_extra_path.
exclude_patterns = []

# -- Options for HTML output -------------------------------------------------

# The theme to use for HTML and HTML Help pages.  See the documentation for
# a list of builtin themes.
#
html_theme = 'sphinx_rtd_theme'

# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']

The actual function definition/declaration.
inline std::ostream& operator<<(std::ostream& lhs, FontWeight const& rhs) {
    return lhs << to_string(rhs);
}

Thanks for the report, this is definitely out of your control / I'm sorry it's so frustrating!
Can you please try walking backward and installing older versions of breathe and if you find a version that works let me know?  The main code responsible for this is here
https://github.com/svenevs/exhale/blob/58c6c771fe021d7487644a30c2575b3fcf1ae94b/exhale/graph.py#L245-L250
Overloads used to be happy, but it looks like breathe has updated to want the parameter names (e.g., lhs and rhs). If that's what's going on it should be fixable by special casing on breathe version number. It's always been rather sensitive, for example whitespace has to match exactly what breathe stored, not necessarily what's in the doxygen XML.
Long term I will need to step up and add refid lookup support to breathe, some template overloads are still not possible. But things are not good for me right now / those changes will be substantive.

Hmm, not sure if that's the real problem. If you walk back to 4.13 and it's still broken then it's something else (that's the last version I know was working).  I'm looking at tt::operator vs std::operator being mentioned by breathe. Your corrected signature implies we can still use tt:: aka hopefully it's the original diagnosis I suggested above about needing parameter names now, but that may not be the case...

Sadly.
When I rolled back breath to 4.13 it used a depricated API mathbase
So I rolled back sphinx to 2.4.4
But then I got a "AttributeError: 'str' object has no attribute 'get_display_string'" error
So I tried rolling back sphinx to 1.7.9 due to the recommendation in the exhale bug report for that
But rolling back to that gives a dependency conflict and getting the following error:
Exception occurred:
    File "c:\program files (x86)\python37-32\lib\site-packages\breathe\renderer\sphinxrenderer.py", line 89, in DomainDirectiveFactory
      'union': (cpp.CPPUnionObject, 'union'),
  AttributeError: module 'sphinx.domains.cpp' has no attribute 'CPPUnionObject'
  The full traceback has been saved in C:\Users\Tjienta\AppData\Local\Temp\sphinx-err-2kro_3fi.log, if you want to report the issue to the developers.
  Please also report this if it was a user error, so that a better error message can be provided next time.
  A bug report can be filed in the tracker at <https://github.com/sphinx-doc/sphinx/issues>. Thanks!
  ninja: build stopped: subcommand failed

Is there a known working combination of exhale, breath, sphinx versions?

Is there a known working combination of exhale, breath, sphinx versions?

Oh my, thank you for trying!
I will need to look closer into this hopefully soon, was able to get skeleton / hacky version of getting the parameter names in there in #91 but need to also figure out the working combinations ... fairly certain variable names were skipped for a reason but not entirely sure.


Update method returning nil for resource, not resource itself

Dear Sergio,
Upon the invited user accepting the invitation and creating a password, I am returned an error that notes "undefined method "errors" for True class".  In pry, I queried the Update method of your original InvitationsController (no modifications), and when I query "resource" or "self.resource" I see nil returned (pry screenshot attached).
I don't know why the invited resource itself is not being returned in the Update method.  The resource IS returned properly in the Create method (also original source), and in both invite_resource and accept_resource methods.
Interestingly, if I close the window and login with the invited user's params, the invitation is successful.  I can't get rid of the error itself.  Thank you for writing this gem, and thank you in advance for aiding me on this issue if possible.
Neil

Sergio, I found that the problem was in the accept_resource method.  I removed this method (as provided in your docs), and proceeded through the invitation without any errors.  So basically, I'm using an empty InvitationsController, which works just fine, but I did end up adding a few lines to the Update method to add the invited user to various other joins relevant to my app.
I want to thank you for creating a great gem and solving a very necessary problem, and I'm glad I was able to solve my problem without (hopefully) wasting any of your time.  Cheers!


Bump kube dependencies

Which issue this PR addresses:
N/A
What this PR does / why we need it:
Updates our kube dependencies to the latest 1.25 (OpenShift 4.12)
Test plan for issue:
Green CI == :shipit:
Is there any documentation that needs to be updated for this PR?
No

cc @petrkotas this might overlap with the POAM report dashboard & dependencies you're looking at.  I'm not 100% sure.

Not a clean bump. Will need further investigation. Closing for now.


feat: add csrf middleware

What type of PR is this?
feat

What this PR does / why we need it (en: English/zh: Chinese):

en: add csrf middleware
zh: 新增 csrf 中间件
Which issue(s) this PR fixes:

https://github.com/cloudwego/hertz/issues/300

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

LGTM


Width of the column for poster template

Is there a way to specify the width of the column for each box? I tried span, but unfortunately, it does not allow a box to span a real number, like 1.5

I'm not sure, some of the other baposter docs/sources may have this info


Cannot invoke 'connect' with an argument list of type '(String, (_) -> ())'

Whenever I try this code the error occurs
   var hubConnection: SignalR!
hubConnection = SwiftR.connect("myURL")      -> error occurs here
                {

                }

I tried your code from demo project.

I think you might need to show more code. But, should be:
hubConnection = SwiftR.connect("myURL") { connection in

}

// Or...

hubConnection = SwiftR.connect("myURL") { _ in

}


Destructuring a nullable object with fallback to an empty object leads to false negative

// @flow strict
type Foo = {foo: string}

declare var object: ?Foo

const {foo} = object ?? {}

;(foo: string)

Flow version: 0.34.0
Expected behavior
property `foo` is missing in null or undefined [1]. [incompatible-use]

Actual behavior
No errors!

Link to Try-Flow or Github repo:
https://flow.org/try/#0PTAEAEDMBsHsHdQGcAuAnAlgYxQKBQJ4AOApqAGKyygC8oA3pFQFzLoYB2A5gL664ATElmgBDNGQBu40LABGAK2EpWAfkqx+WWB1QMmsHrVmLloVaoZ9cAbgAUB1qkzcAlLiA

This is just unsealed object. It always behaves this way.
https://github.com/facebook/flow/issues?q=is%3Aopen+is%3Aissue+label%3A"unsealed+objects"
Here's how you can get sealed empty object
https://flow.org/try/#0PTAEAEDMBsHsHdQGcAuAnAlgYxQKBQJ4AOApqAGKyygC8oA3pFQFzLoYB2A5gL664ATElmgBDNGQBu40LABGAK2EpWAfkqx+WWB1QMmsHrVmLloVaoYA6GxwCu0aH1wBuABQHWqTNwCUuIA

@TrySound there's an error in your example:
6: const {foo} = object ?? {...null}
          ^ property `foo` is missing in object literal [1]. [prop-missing]
References:
6: const {foo} = object ?? {...null}                           ^ [1]

This seems to work correct though:
const {foo}: $Rest<Foo, {...}> = {...object}

https://flow.org/try/#0PTAEAEDMBsHsHdQGcAuAnAlgYxQKBQJ4AOApqAGKyygC8oA3pFQFzLoYB2A5gL664ATElmgBDNGQBu40LABGAK2EpWAfkqx+WWB1QMmsHqwAkAJRKoAPBoA0DAHSOeAPloPH8pTj64A3AAoDVlRMbgBKXCA

Now this errors since unsealed object support is removed.


Rolling back creating table with change() doesn't work

Steps to reproduce:

Create migration making a table
Run that migration
Roll back the migration
Run the migration again
Feel the pain

Results in a PDOEXCEPTION:
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'table_name' doesn't exist

Looks like this happens when adding more than one foreign key to a table you're creating. MySQL really seems to wig out

Is this still an issue?


No module named ssw_wrap

Hello! I'am trying to run Cogent, but I not sure where to find the python module "ssw_wrap". neither "ssw-0.3.1" nor "Complete-Striped-Smith-Waterman-Library-1.1" helps.

Hi,
Please follow the instructions here. You will have to install the SSW library first and include it in your library and python path as below:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:<your_dir>/Cogent/Complete-Striped-Smith-Waterman-Library/src
export PYTHONPATH=$PYTHONPATH:<your_dir>/Cogent/Complete-Striped-Smith-Waterman-Library/src


type = 'tel' is not working

I was watching all the issues refered to the input type phone or tel, and nothing seems to work for me. Also I tried to put a number type and limite the length but a cannot remove the arrows at the right side of the input so its useless. And in the documentation I cannot see anything about phone validation, just manual regexp. I also view this issue but its not working: #334
Just need a simple phone validation, or number validation... I have 2.0.7. version
PD: Really good work with Parsley! ^^

type=tel does not and is not supposed to do validation on the phone number. It does bring up the number keyboard on mobile devices though.
Depending on your requirements you could add the pattern attribute, see here for a few examples:
http://html5pattern.com/Phones

Also, if you do use type=number you can remove the arrows at the right side (Firefox and Chrome) with this CSS:
input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
input[type=number]{-moz-appearance:textfield}

Closing, as type="tel" is meant to accept any pattern


3rd param is optional

While the code does not make it obvious that 'eventPath' is optional (it creates cache entries that looks like this: "keyUndefined") the tests make it clear that the caller does not have to pass in this param.

Thanks!


Search for words, not complete string

When I'm searcing for "SQL Manag", I'd like Jarvis to find "SQL Server Managment Studio", but it comes up empty. I have to search for "SQL Server Mana" to find it.
Jarvis should find results where the words match words in the applications, not just the complete string.
Open to looking at this my self, any hints on where in the code I should start would be appreciated.
Also, I'm guessing that this behaviour should be turned off or on via some settings?

Thank you! 👍