chore: limit API for BlockComponent

the basic gist is to reduce the access for BlockComponent. the state of this component is managed BlockEntitySystem and I would like to avoid having this get modified by another system. its really difficult to track down a bug with this component if everyone can potentially write something to BlockComponent. Its possible to end up in a state where one system modified the location and another system reads out that location. The only way to change this would be to do this through a the WorldProvider. It might be possible to have the location change listen for the component change and update the world state to match the BlockComponent but that is something to consider in the future.

are we going to create a pile of PR and just correct this in one go @skaldarnar.

are we going to create a pile of PR and just correct this in one go @skaldarnar.

I think we should do that for making the block field unaccessible, yes. Could also push this refactoring directly to the modules, I trust IntelliJ with that 🤓


const dir = t.testDir()

I find myself doing this in a lot of my tests:
const t = require('tap')
const {resolve, basename} = require('path')
const me = resolve(__dirname, basename(__filename, '.js'))
const rimraf = require('rimraf')
const mkdirp = require('mkdirp')
rimraf.sync(me)
mkdirp.sync(me)
t.teardown(() => rimraf.sync(me))

It'd be nice if there was a way to just do:
const me = t.testdir()

Then when the test tears down, remove it, unless an environment variable (which could be set via a tap runtime flag) was set to tell it not to.

For bonus points, maybe it could also integrate with Tacks to set up the contents of that fixture directory:
const dir = t.testdir({
  'package.json': JSON.stringify({name: 'foo'}),
  lib: {
    'foo.js': 'console.log("foo")',
    'link.js': t.fixture('symlink', 'foo.js'),
    'hardlink.js': t.fixture('link', 'foo.js'),
  },
})

Landed in 14.7.0


Add force_identical_write arg

This functionality was added to R pins in v1.2.0:
https://github.com/rstudio/pins-r/pull/735
https://github.com/rstudio/pins-r/issues/589
The same motivation applies; there is little value in re-writing an identical dataset, so it should be opt-in behaviour ideally.

I believe this is the same as #241. Good to get clarity that this is important to folks!

Ahh! That wasn't there last night... Apologies for the dupe.


is it support div  width background image

is it support div  width background image

oh  i forget to see demo    this is support


fixes TypeError

https://github.com/keras-team/keras/issues/18736#issue-1979803521
shutil copy overwrites by default
But gfile copy does not
Removing overwrite=True from the function call fixes the error and given that the file is copied to a tmp path, it actually probably does make sense to just always overwrite the file.

Codecov Report
Attention: 2 lines in your changes are missing coverage. Please review.

Comparison is base (b6df549) 78.89% compared to head (a8fa88f) 56.25%.

Additional details and impacted files
@@             Coverage Diff             @@
##           master   #18737       +/-   ##
===========================================
- Coverage   78.89%   56.25%   -22.65%
===========================================
  Files         336      336
  Lines       33937    33937
  Branches     6651     6651
===========================================
- Hits        26776    19091     -7685
- Misses       5584    13398     +7814
+ Partials     1577     1448      -129

Flag
Coverage Δ

keras
56.25% <0.00%> (-22.54%)
:arrow_down:

keras-jax
?

keras-numpy
56.25% <0.00%> (-0.01%)
:arrow_down:

keras-tensorflow
?

keras-torch
?

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

Files
Coverage Δ

keras/saving/saving_api.py
57.33% <0.00%> (-2.67%)
:arrow_down:

keras/utils/file_utils.py
66.06% <0.00%> (ø)

... and 183 files with indirect coverage changes

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


Hi all,
I've been working with AlphaImpute2 more closely now and a question that has come up is how this software handles x chromosomes for males? I couldn't find anything in the bioRxiv paper or in the PDF user manual referring to this. Would the male x chromosome just be treated as diploid and homozygous at every SNP? Apologies if this has been answered elsewhere.

Hi @sgavril I think Andrew did not consider X chromosome

Great to know, thanks for the quick response @gregorgorjanc


Dockerfile: Fixing COPY

Fixing the issue:
When using COPY with more than one source file, the destination must be a directory and end with a /

Hi @waja
Thank you a lot for pointing this out 🥇 I only tried building the Docker image using the BuildKit backend. I was not aware that using the COPY directive this way might not work when using other builders.


[Exasol] extra separator in tables DDL

DBeaver 7.2.5
EXASolution 6.1.2

Extra delimiter after Partition statement.

Table DDL:
Extra delimiter fixed.
Some extra spaces fixed.
Column and schema names now wrapped in quotation marks only when needed.

verified


Activity is not logged when updating a collection (rather than an individual element)

To whom it may concern,
Maybe intended behavior, but just something I came across.
For example:
public function onSubmit(Request $request) {
$modelData = ['attr' => $request->my_attr];
//This works
MyModel::where("id", $request->model_id)->firstOrFail()->update($modelData);
//This does not
//MyModel::where("id", $request->model_id)->firstOrFail()->update($modelData);
}
Note: The update in the database does execute as intended.

The line under this works is exactly the same as this does not
But I suspect that you found out that when updating several models at once using a query does not log activity (wheres updating a single model does work).
We'll this is normal. Eloquent will only send out events (that the package picks up on) when updating a single model.

Apologies for the misleading information (thank you copy/paste!). I am glad you were able to diagnose what I was getting at though, where(...)->update(...) (without the firstOrFail()).
Thank you for the rapid response.
Best


Unify nsm namespaces for cloudtest

Signed-off-by: Artem Belov<EMAIL_ADDRESS>Description
Change NSM_NAMESPACE system env to nsm-system for all cloud tests
Motivation and Context
Go tests does not cleanup stacked pods because of different namespaces
https://circleci.com/gh/networkservicemesh/networkservicemesh/96707
How Has This Been Tested?

[x] Covered by existing integration testing
[ ] Added integration testing to cover
[ ] Tested locally
[ ] Have not tested

Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.

@edwarnicke Could you please merge it after SDK refactoring :-)


iOS - Chat - The cursor moves one space backward when inserting text after an emoji

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: v1.4.76-1
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail: https://expensify.testrail.io/index.php?/tests/view/4577924
Issue reported by: Applause - Internal Team
Action Performed:
Pre-requisite: the user must be logged in.

Go to any chat.
Tap on the compose box.
Enter any text and an emoji.
After you have entered the emoji, enter any character again.
Verify the cursor moves one space backward.

Expected Result:
The cursor should remain at the end of the compose box content.
Actual Result:
The cursor moves one space backward when inserting text after an emoji.
Workaround:
n/a
Platforms:

Which of our officially supported platforms is this issue occurring on?

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

Screenshots/Videos
Add any screenshot/video evidence
https://github.com/Expensify/App/assets/93399543/b44491bc-2ce6-45cb-91f4-07e68ab4d95c
View all open jobs on GitHub

We think that this bug might be related to #vip-vsb

@kadiealexander FYI I haven't added the External label as I wasn't 100% sure about this issue. Please take a look and add the label if you agree it's a bug and can be handled by external contributors.

Proposal
Please re-state the problem that we are trying to solve in this issue.
The cursor selection moves to the left by one character when adding a character after inserting an emoji.
What is the root cause of that problem?
When we add a text to the composer, it will save the new selection position to a ref if the commentValue is not equal to newComment
https://github.com/Expensify/App/blob/2514f2988eb26858d30fa501c0040b1f8fc2e239/src/pages/home/report/ReportActionCompose/ComposerWithSuggestions/ComposerWithSuggestions.tsx#L439-L444
commentValue is the text that we type while the newComment is the commentValue that has emoji code replaced to emoji character (for example :smile: to 😄).
If they are different, we want to manually correct the selection, however, on iOS, the selection prop is buggy so we use the ref sync solution that imperatively updates the selection that is introduced in https://github.com/Expensify/App/pull/30835.
It will update/sync the selection in onChangeText.
https://github.com/Expensify/App/blob/2514f2988eb26858d30fa501c0040b1f8fc2e239/src/pages/home/report/ReportActionCompose/ComposerWithSuggestions/ComposerWithSuggestions.tsx#L553-L563
However, there are a few things to notice here.
First, when we add an emoji from the emoji picker, commentValue is not equal to newComment even though there is no emoji code converted to an emoji character. The reason behind this is that we add a whitespace to the text
https://github.com/Expensify/App/blob/2514f2988eb26858d30fa501c0040b1f8fc2e239/src/pages/home/report/ReportActionCompose/ComposerWithSuggestions/ComposerWithSuggestions.tsx#L417
So, commentValue doesn't have the whitespace while the newComment has the whitespace. Previously, commentValue already contained the whitespace every time we added an emoji from the emoji picker, but this PR changes it so the whitespace is also added when we add the emoji from the device keyboard emoji picker.
This will then set the selection to the ref (syncSelectionWithOnChangeTextRef).
Next, if we add an emoji from the emoji picker, onChangeText won't be triggered. onChangeText will only be triggered if we input the text manually from keyboard.
So, when we add a character, it will run the selection sync logic which contains the old selection.
https://github.com/Expensify/App/blob/2514f2988eb26858d30fa501c0040b1f8fc2e239/src/pages/home/report/ReportActionCompose/ComposerWithSuggestions/ComposerWithSuggestions.tsx#L553-L563
What changes do you think we should make in order to solve the problem?

We need to compare newComment with the commentValue with whitespace appended because the manual selection correction is only used when we add emoji through emoji code.
const commentWithSpaceInserted = isEmojiInserted ? ComposerUtils.insertWhiteSpaceAtIndex(commentValue, endIndex) : commentValue;
...
if (commentWithSpaceInserted !== newComment) {
...

Please re-state the problem that we are trying to solve in this issue.
iOS - Chat - The cursor moves one space backward when inserting text after an emoji
What is the root cause of that problem?
When inputting text into the composer, the system saves the new selection position to a reference (ref) if the commentValue doesn't match the newComment. This disparity occurs due to the presence of an extra whitespace added to newComment during emoji insertion, which is absent in commentValue.
What changes do you think we should make in order to solve the problem?
Instead of comparing commentValue and newComment, directly track the insertion point to determine cursor positioning.
Calculate the newCursorPosition dynamically based on the difference in length between the old and new comments.
https://github.com/Expensify/App/blob/2514f2988eb26858d30fa501c0040b1f8fc2e239/src/pages/home/report/ReportActionCompose/ComposerWithSuggestions/ComposerWithSuggestions.tsx#L439-L444
// Calculate the new cursor position based on the difference in text length
const currentLength = commentRef.current.length;
const newLength = newCommentConverted.length;
let newCursorPosition = cursorPosition ?? 0;

// Determine if an emoji was inserted and adjust cursor position accordingly
if (isEmojiInserted && newLength > currentLength) {
    newCursorPosition = endIndex + 1; // Move the cursor after the inserted emoji
} else if (currentLength > newLength) {
    newCursorPosition = Math.max(selection.end - (currentLength - newLength), 0); // Adjust cursor for deleted characters
} else {
    newCursorPosition = selection.end + (newLength - currentLength); // Adjust cursor for added characters
}

// Update the selection position and clear the ref if necessary
setSelection({ start: newCursorPosition, end: newCursorPosition });
if (isIOSNative) {
    syncSelectionWithOnChangeTextRef.current = { position: newCursorPosition, value: newComment };
}

This approach ensures accurate cursor positioning by directly tracking insertion points and dynamically adjusting cursor positions, thereby resolving the cursor issue caused by indirect comparisons and ensuring correct placement after inserting emojis or additional text.
video:-https://drive.google.com/file/d/19PDhzOkps6aXYRAWwyeWr3qyrc_xXzAP/view?usp=sharing

@bernhardoj 's proposal looks good to me. Nice write up to unwrap the root cause! I also agree with the idea of fixing it by narrowing the scope of the manual-selection-correction-specific code.
🎀👀🎀 C+ reviewed

@MonilBhavsar Friendly bump, wdyt https://github.com/Expensify/App/issues/42664#issuecomment-2137553685

Yes, looking at this...

@bernhardoj proposal's looks good and simple.
Is there any specific reason to clear syncSelectionWithOnChangeTextRef?

Is there any specific reason to clear syncSelectionWithOnChangeTextRef?

Do you mean the alternative solution? syncSelectionWithOnChangeTextRef is supposed to be consumed (in onChangeText ) every time we type something (updateComment). But as explained in my proposal, onChangeText will only be called when we type from the keyboard, not from adding an emoji from the emoji picker. So, I suggest an alternative solution to always clear it before creating a new syncSelectionWithOnChangeTextRef so each syncSelectionWithOnChangeTextRef corresponds to each updateComment.
Btw, after retesting my main solution, it causes a regression, the cursor is before the emoji when adding an emoji
https://github.com/Expensify/App/assets/50919443/110ec416-3e5c-4739-8b18-5eb769c352ed
so I use the alternative instead.
PR is ready.
cc: @eh2077

Checklist

[x] [@eh2077] The PR that introduced the bug has been identified. Link to the PR: https://github.com/Expensify/App/pull/30955
[x] [@eh2077] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment: https://github.com/Expensify/App/pull/30955/files#r1640633047
[x] [@eh2077] A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion: NA
[x] [@eh2077] Determine if we should create a regression test for this bug. No, as this is edge case.

Payouts due:

[ ] Contributor: $250 @bernhardoj - https://www.upwork.com/nx/wm/offer/102571528
[ ] Contributor+: $250 @eh2077 - https://www.upwork.com/nx/wm/offer/102571526


Short solution needed: "Get list from Redis" (php-redis)

Please help us write most modern and shortest code solution for this issue:
Get list from Redis (technology: php-redis)
Fast way
Just write the code solution in the comments.
Prefered way

Create pull request with a new code file inside inbox folder.
Don't forget to use comments to make solution explained.
Link to this issue in comments of pull request.

Get list from Redis


Ayaz tlb smt

Sorry, it took me very long to get back to this and update things. I have tested this timing simple cpu with multiple number of smt threads (and processes) using the similar script, which Hoa had in his patch. I think the O3 CPU had some other issue as well (related to register renaming), apart from tlb sharing, causing it to fail with smt enabled.

This chain on gerrit is a bit related: https://gem5-review.googlesource.com/c/public/gem5/+/34172/3

I don't think this is right... I think you need to use bits() or mask() or something. Right now, it looks like this will only grab the 12th bit. I think this is the same as vaddr & 4096

Yes, sorry. I meant to change it before pushing, but somehow missed it.

Yes, sorry. I meant to change it before pushing, but somehow missed it.

No worries. This is why we have code review :D

Ah! Gotcha!
I have no idea what this would mean for KVM in SE. Let's avoid that :D.
On Mon, Oct 5, 2020 at 11:13 AM Ayaz Akram<EMAIL_ADDRESS>wrote:

@ayaz91 commented on this pull request.
In src/arch/x86/process.cc
https://github.com/darchr/gem5/pull/206#discussion_r499782435:

@@ -580,6 +580,18 @@ X86_64Process::initState()
tc->setMiscReg(MISCREG_CR0, cr0);

         tc->setMiscReg(MISCREG_MXCSR, 0x1f80);

       // Setting CR3 to the pid so that concatinated page addr with

       // lower 12 bits of CR3 can be used in SE mode as well to

       // avoid conflicts between tlb entries with same virtual

       // addresses belonging to different processes

       tc->setMiscReg(MISCREG_CR3, pTable->pid());

       // Setting pcide bit in CR4

       CR4 cr4 = 0;

       cr4.pcide = 1;

       tc->setMiscReg(MISCREG_CR4, cr4);

It should not overwrite because line 379 is part of the block which
executes when KVM CPU is used (KVMinSE is true). I guess, we should set
both CR3 (with pid) and CR4.pcide for KVM CPU as well. Do you think that
will break anything for KVM CPU?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/darchr/gem5/pull/206#discussion_r499782435, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAA2YHBABTPTQNBYVR6JDS3SJIEDLANCNFSM4RLX5IGQ
.

--
Jason Lowe-Power (he/him/his)
Assistant Professor, Computer Science Department
University of California, Davis
3049 Kemper Hall
https://arch.cs.ucdavis.edu/

I think this is ready to go! I haven't gone back through all of the comments, but we're going to do more review anyway. Let's see what others have to say!


[chakracore] Add flag to use all available CPUs

Describe the pull request

What does your PR fix?
My PR adds -j option when building ChakraCore on Linux to use all CPUs. It speedups building of the port significantly.

Which triplets are supported/not supported? Have you updated the CI baseline?
nothing changed here

Does your PR follow the maintainer guide?
yes

If you have added/updated a port: Have you run ./vcpkg x-add-version --all and committed the result?
yes

If you are still working on the PR, open it as a Draft: https://github.blog/2019-02-14-introducing-draft-pull-requests/

Does the build script passing a particular number of jobs?
If yes, pass ${VCPKG_CONCURRENCY} to allow user to limit parallelism via env VCPKG_MAX_CONCURRENCY.
(Note that -j is really unlimited with GNU make, not just all CPUs.)
If possible, it might make sense to port this to vcpkg_execute_build_process to restart in non-parall mode when parallel linking steps run out of memory.

@dg0yt
Well. Thanks! I've passed -j=${VCPKG_MAX_CONCURRENCY} instead of -j

Thank you!


Switch to region specific runtimes

This pull request changes:

the defaults that we use for runtimes
The way we lookup runtime information

In particular, we now explicitly get the runtime meta.json instead of having the hack where we assume there is some root .tar.gz. This should have no user-visible impact; the sharded runtime has been default for quite a while.
We now have runtimes and associated buckets in all the major US regions, in public buckets. It's easy to add more, as well.
I am not tying this to the new runtime builder as technically they are independent. Old runtimes should work with this code as well.

Ok @shivaram got rid of that test


Create formal expresslangdoc

We seem to have consensus on having an expressdoc format defined. I checked the web and expresslangdoc is available.

We have registered the expressdoc.org domain.

And can start defining it now...

Where do we start?

@TRThurman https://github.com/metanorma/annotated-express/issues/94


Enabling recursive source search based on pattern

Enabling recursive source search based on pattern provided in the search path.

Code reviewed by Gregg.

Did you let the PR build finish successfully before you merged? It looks like this has a Code Analysis failure. If the PR build finished successfully then we have an issue there.

It looks like the build did not pass: http://dotnet-ci.cloudapp.net/job/microsoft_miengine_prtest/168/
Please make sure the PR build finishes successfully before merging PR's.


TBD: Setup an continuously performance checking

Goal

Run a performance analysing on a regular basis to see performance degrading  etc. happens

TODO

Produce automatic graphical informations about performance results

Different Maven Versions
Different JDK Versions
Memory consumptions
Using cache extension

Requirements for measurements

Select appropriate project(s) as foundations (some real life projects)
Create a number of synthetic generated project(s)
Define reference machine setup's

Reference

https://github.com/khmarbaise/maven-performance-testing

TBD more details...

Would this include some comparison with Gradle?

Would this include some comparison with Gradle?

No I would not do that...

Guess we should limit ourselves to ensuring we don't have regression so likely a few project kinds (single plain jar module - commons like, multimodule etc) and have a way to see the evolution with versions (ideally snapshot) to prevent any regression like we got recently.
Indeed it should be done with a single jdk for multiple maven version.
Having tests with multiple JDK for the same maven version can be worth it but since at some point they all converge I consider it as minor compared to identifying regressions in our codebase.
Hope it makes sense.


Support deleting all Splunk artifacts owned by the logged in user

Currently any Splunk artifacts deleted in the local repository doesn't also get removed from the Splunk server. This means that we will accumulate more and more orphans over time.
One solution to this, if a service account is used, is to update the Pickaxe tool to clear out any Splunk artifacts owned by the service account, before the tool uploads everything.

I think this could definitely help. The change is likely not small or trivial though


AttributeError: 'NoneType' object has no attribute 'initialize_simulation_context_async'

Hello, Thanks for your work!
After installing, I could run sim and control using qgc. but I have updated kernel and other things, I am facing an error.
Nvidia driver and ISAAC version is the same as written on the web.
I could running ISAACSIM, after clicking 'load vehicle' , I've got this error.
Thanks for your help!
[Error] [asyncio] Task exception was never retrieved
future: <Task finished name='Task-189' coro=<UIDelegate.on_load_vehicle..async_load_vehicle() done, defined at /home/den/Documents/PegasusSimulator/extensions/pegasus.simulator/pegasus/simulator/ui/ui_delegate.py:177> exception=AttributeError("'NoneType' object has no attribute 'initialize_simulation_context_async'")>
Traceback (most recent call last):
File "/home/den/Documents/PegasusSimulator/extensions/pegasus.simulator/pegasus/simulator/ui/ui_delegate.py", line 183, in async_load_vehicle
await self._pegasus_sim.world.initialize_simulation_context_async()
AttributeError: 'NoneType' object has no attribute 'initialize_simulation_context_async'

You have to load a scence by clicking "Load Scene" in the scene selector before trying to spawn the vehicle as else the world will be None.

Thank you @TannerGilbert for providing the support. This is the correct answer. I will be closing the issue.


[INLONG-2445][TubeMQ] Add Gauge and Counter implementation classes

Fixes #2445

Codecov Report

Merging #2446 (b7d887b) into master (4d236f7) will increase coverage by 0.17%.
The diff coverage is 88.57%.

@@             Coverage Diff              @@
##             master    #2446      +/-   ##
============================================
+ Coverage     12.53%   12.71%   +0.17%
- Complexity     1218     1255      +37
============================================
  Files           420      426       +6
  Lines         36255    36325      +70
  Branches       5674     5679       +5
============================================
+ Hits           4545     4618      +73
+ Misses        30901    30896       -5
- Partials        809      811       +2

Impacted Files
Coverage Δ

...long/tubemq/corebase/metric/impl/LongMaxGauge.java
71.42% <71.42%> (ø)

...long/tubemq/corebase/metric/impl/LongMinGauge.java
71.42% <71.42%> (ø)

...inlong/tubemq/corebase/metric/impl/BaseMetric.java
100.00% <100.00%> (ø)

...tubemq/corebase/metric/impl/LongOnlineCounter.java
100.00% <100.00%> (ø)

.../tubemq/corebase/metric/impl/LongStatsCounter.java
100.00% <100.00%> (ø)

.../inlong/tubemq/corebase/metric/impl/SinceTime.java
100.00% <100.00%> (ø)

.../producer/qltystats/DefaultBrokerRcvQltyStats.java
45.70% <0.00%> (+1.56%)
:arrow_up:

.../client/producer/qltystats/BrokerStatsItemSet.java
72.09% <0.00%> (+4.65%)
:arrow_up:

...ache/inlong/tubemq/corebase/utils/ThreadUtils.java
15.62% <0.00%> (+15.62%)
:arrow_up:

Continue to review full report at Codecov.

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


Latest update of SteamVR triggered error number 105

Hi,
When I try to run openvr.VRSystem() with the latest version of SteamVR. I got the following error message:
OpenVRError: The installed SteamVR runtime could not provide API version IVRSystem_021 requested by pyopenvr. You may need to update SteamVR or use an older version of pyopenvr. VRInitError_Init_InterfaceNotFound (error number 105).
Could you please help take a look at it?
I am running Windows with SteamVR (version 1.11.4) and pyopenvr 1.10.3001.
Thank you!

Can you please post your code/MREX, had the same problem and did this

pip install --upgrade openvr
Made sure ```
import openvr
print(openvr.version)

3.  Made sure ```vr.init(openvr.VRApplication_Scene)``` was being called at the **VERY BEGINNING** of the code, right after `import openvr` was ran
4.  Tried again
and it worked. Hoped that helped!


Async syntax highlighting in Worker thread will be failed

Could you fix this bug probably the same of #1059 ?
I fixed with this commit: https://github.com/falsandtru/securemark/commit/165b74d90a88169900237a0bf95f5cd9ae05e6e1

repro in old version:

run $ npm i && gulp view
Open http://<IP_ADDRESS>:4000/securemark/
Syntax highlight is succeeded.
Remove a trailing backquote as follows.

```haskell main.hs
main = putStrLn $ show $ primes !! 5

primes = filterPrime [2..] where
  filterPrime (p:xs) = p : filterPrime [x | x <- xs, x `mod` p /= 0]
``

Fix a trailing backquote.

```haskell main.hs
main = putStrLn $ show $ primes !! 5

primes = filterPrime [2..] where
  filterPrime (p:xs) = p : filterPrime [x | x <- xs, x `mod` p /= 0]
```

That reprocessing will be failed with the following error.

prism.js:265 Uncaught TypeError: Cannot read property 'rest' of undefined
    at Object.tokenize (prism.js:265)
    at Object.highlight (prism.js:256)
    at prism.js:476

note:
Syntax highlight command is called here: https://github.com/falsandtru/securemark/blob/v0.26.1/src/renderer/render/code.ts#L3

I just merged #1188, fixing #1059. Let use know if you're still encoutering issues.


Delete Calico IPPools when Submariner uninstalled

All Calico IPPools created by Submariner should be deleted when Submariner is uninstalled.
This PR updates Calico IPPools handler Uninstall function to delete all IPPools regardless of isGateway field status.
Fixes: https://github.com/submariner-io/submariner/issues/2764

This needs to be backported, doesn’t it?

@skitt @sridhargaddam
We need also this PR to address this issue


React Hot Reload - Styled Component/Emotion

Describe the bug
Hot reload won't update the css created by styled, just after a full reload.
Reproduction
Just try to change any css's prop inside a styled:
https://github.com/eduzz/template-react/tree/vite
System Info
System:
    OS: macOS 11.6
    CPU: (4) x64 Intel(R) Core(TM) i5-5350U CPU @ 1.80GHz
    Memory: 490.79 MB / 8.00 GB
    Shell: 5.8 - /bin/zsh
  Binaries:
    Node: 17.0.1 - /usr/local/bin/node
    Yarn: 1.22.17 - /usr/local/bin/yarn
    npm: 8.1.0 - /usr/local/bin/npm
    Watchman: 2<IP_ADDRESS> - /usr/local/bin/watchman
  Browsers:
    Edge: 94.0.992.50
    Safari: 15.0
  npmPackages:
    @vitejs/plugin-react: 1.0.6 => 1.0.6
    vite: 2.6.11 => 2.6.11

Used Package Manager
yarn
Logs
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to https://github.com/vuejs/vue-next instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

The real problem is not with styled,  is with any HOC.
const Component = ({ className }) => {
 return
hi!

}

const myHOC = (Component, className) => {
 return  (props) => <Component {...props} className={className} />
}

export default myHoc(Component, 'test-class-1') // <~ try to change, no effect.

The Fast Refresh (from react/refresh) only re-run the variable Component (the first capitalized),
if I change the capitalized letters, it worked!
const component = ({ className }) => {
 return
hi!

}

const MyHOC = (Component, className) => {
 return  (props) => <Component {...props} className={className} />
}

export default MyHoc(Component, 'test-class-1') // <~ try to change, no effect.

I don't know if there is any fix for that. 😥

Maybe related to facebook/react#20417 and facebook/react#21074

The Fast Refresh (from react/refresh) only re-run the variable Component (the first capitalized),

That's expected. React component names must always start with a capital letter. This convention is assumed by some other tooling as well so you need to follow it.

@patak-js please reopen we still discussing it haha
@gaearon it was the workaround that I found to try to understand the behaviour.
The problem is with this very common syntax:
const Component =({ className }) => {
 return
hi!

}

export default styled(Component)`
    background-color: red;
`

When you try to change the background-color it does not refresh current value. But when you change the content inside the component (like adding a text), the text is added but the background still the same as before. The fast refresh only refreshes the Component not the styled (or any HOC values)

Does this work with Webpack and not with Vite @danieloprado? Could you create a minimal reproduction that showcases the issue in Vite? Maybe using StackBlitz https://vite.new/react?

Here: https://stackblitz.com/edit/vitejs-vite-k3bzhu?file=src/Test.jsx

I've just update the code with more examples.

Here an example with rect-sctipts: https://stackblitz.com/edit/react-ptscnt?file=src%2FTest.jsx

// Button.tsx
export default function Button(): React.ReactElement | null {
  return (
     <button>Text</button>
  );
}
export const ButtonGroups = styled.button`
color: blue;
`;

当Button和ButtonGroups在一个文件里面的时候, 热更新会失效,  如果把ButtonGroups 和 Button 拆分到两个文件中，热更新是正常的

I am using a helper function to create and wrap styled function components and it worked using create-react-app but using vite I have to reload for every change.

import {FC} from "react";
import styled from "styled-components";

/**
 * Creates a function component and wraps it in styled-component to enable styling
 * and generates a new displayName for returned component if provided component has one.
 * Usage:
 * ```
 * const MyComponent = createStyledFC<{}>((props) => {
 *     return <div {...props}></div>;
 * })`
 *   background: blue;
 *
 *   .my-styled {
 *       color: red;
 *   }
 * `;
 * ```
 * @param component
 * @param displayName Optional display name for component
 */
export function createStyledFC<T = {}>(component: FC<T & {className?: string}>, displayName?: string) {

    const comp = styled(component as FC<T & {className?: string}>)

    const _displayName = displayName || component.displayName;

    if (_displayName) {
        component.displayName = _displayName;
        (comp as any).displayName = `Styled${_displayName}`;
    }

    return comp;
}


Sound of the video continues to play when the browser is minimized or when you switch to another tab

Describe the bug
The sound of the video continues to play when the browser is minimized or when you switch to another tab
To Reproduce
Open video on YouTube or another site,  minimize or switch to another tab
Expected behavior
I expect it will be possible to mute an open video when the browser is minimized or I switched to another tab
Smartphone (please complete the following information):

Device: Xiaomi MI 9 Lite
Android Version : A11
Kiwi Browser Version Kiwi-2154773683-arm64-github.apk

I would call it a feature to listen e.g. music while doing other stuff.

I would call it a feature to listen e.g. music while doing other stuff.

I agree, but I think that it would be much better if for those who this option interferes with or does not currently need the ability to turn it off


Missing AEON items marked "Unavailable"

See stale PR for comments - https://github.com/pulibrary/bibdata/pull/2005 - especially https://github.com/pulibrary/bibdata/pull/2005#issuecomment-1272069737:

before deploying and merging we should discuss what the implications of this change is for the items that are in the "On Order" and "In Process" status since the status of these will also flip to unavailable and SC staff should be prepared for this change.

Closes #1989

Missing Aeon item: https://catalog-staging.princeton.edu/catalog/9947609273506421
In Process (Cataloging): https://catalog-staging.princeton.edu/catalog/99123459463506421

Catalogers will suppress missing items / holdings in Alma.


Login window hangs on white screen, never logs in

Thanks for building this, this seems really nice! Unfortunately though I can't get it to work, when I try to log in, after authorizing, it just sits like this:

It also seems to be doing some weird actions like attempting to delete certain files, creating new folders, etc. when I try to log in. No idea why

Just released 1.0.1. which includes few small fixes. Can you please update both obsidian and the plugin to the latest version and try to log in again.
If the issue still persists, try to log in in with open devtools (open them with cmd + option + t) and see if any errors are logged to the console.

I got it to log in but it did still do a couple weird things on login (it opened the command palette, the file select palette, and created an empty folder in my vault called are.na.)
However, it's not able to add blocks to a canvas -- it says "error saving block". In the devtools I get this error:
Error saving block TypeError: Cannot read properties of undefined (reading 'block')
    at ArenaPlugin.saveBlock (plugin:arena:1212:44)
    at InsertBlockModal.eval [as onSubmit] (plugin:arena:1326:37)
    at form.onsubmit (plugin:arena:1413:14)```


Fix engine size not being changed on DPI changes

Previously we would only call SetWindowSize and TriggerRedrawAll if the
viewport size in characters changed. This commit removes the limitation.
Since the if-condition limiting full redraws is now gone, this commit
moves the responsibility of limiting the calls up the call chain.
With _refreshSizeUnderLock now being a heavier function call
than before, some surrounding code was thus refactored.
PR Checklist

[x] Closes #11317
[x] I work here
[x] Tests added/passed

Validation Steps Performed

To be exhaustively tested (it works in my limited, preliminary testing) ❔

@DHowett A minimal change for 1.12: https://github.com/microsoft/terminal/compare/release-1.12...dev/lhecker/11317-dpi-change-fix-1.12
(I'll test this later today and update this comment accordingly.)


Chem: cannot overwrite if data contains calculated fingerprint

Platform: any
Steps to reproduce: load attached file, run similarity search
Actual results: fails
Expected results: hidden fingerprints column is overwritten
tested.sdf.txt

This issue has been mirrored in Jira: https://reddata.atlassian.net/browse/GROK-14841

This issue has been mirrored in Jira: https://reddata.atlassian.net/browse/GROK-16096


Support for dynaphopy

The current dynaphopy calculation is based on a quite old version of aiida-phonopy, before quite large refactoring works were performed. Currently the calculations that depend on this will not work due to these changes. If one pins the repository to the working version of aiida-phonopy one is quite behind in the aiida-core development, i.e not compatible with aiida-core 2.x.
What is probably best is to focus on the current refactoring, make aiida-lammps work in a more flexible manner, and being compatible with aiida-core 2.x and then focus on re-adding the dynaphopy capabilities.

The support was temporarily dropped via 92ecec380e7760afd1e5964245814c30de2d44c2


remove sourcemaps from dist

I was getting this error when building our Ember app after installing the new npm package:
> OFFLINE_DEV=true ember serve

Livereload server on http://localhost:49153
'instrument' is imported from external module 'ember-data/-debug' but never used
/Users/jpedicini/Repositories/tricorder/node_modules/combine-source-map/index.js:100
 * @function
     ^

RangeError: Maximum call stack size exceeded
    at RegExp.exec (native)
    at RegExp.[Symbol.match] (native)
    at String.match (native)
    at Object.exports.fromSource (/Users/jpedicini/Repositories/tricorder/node_modules/combine-source-map/node_modules/convert-source-map/index.js:122:19)
    at resolveMap (/Users/jpedicini/Repositories/tricorder/node_modules/combine-source-map/index.js:50:21)
    at Combiner.addFile (/Users/jpedicini/Repositories/tricorder/node_modules/combine-source-map/index.js:110:21)
    at DestroyableTransform.write [as _transform] (/Users/jpedicini/Repositories/tricorder/node_modules/browser-pack/index.js:63:23)
    at DestroyableTransform.Transform._read (/Users/jpedicini/Repositories/tricorder/node_modules/readable-stream/lib/_stream_transform.js:182:10)
    at DestroyableTransform.Transform._write (/Users/jpedicini/Repositories/tricorder/node_modules/readable-stream/lib/_stream_transform.js:170:83)
    at doWrite (/Users/jpedicini/Repositories/tricorder/node_modules/readable-stream/lib/_stream_writable.js:406:64)
    at writeOrBuffer (/Users/jpedicini/Repositories/tricorder/node_modules/readable-stream/lib/_stream_writable.js:395:5)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>offline: `OFFLINE_DEV=true ember serve`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>offline script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!      /Users/jpedicini/.npm/_logs/2018-03-28T18_47_48_982Z-debug.log

When I would turn off sourcemapping during the ember build the problem went away so it was something to do with bundling the sourcemaps. Then when I rebuilt rtf.js without sourcemaps and turned sourcemapping back on in our app again it worked fine.
I think best practice is to let client create sourcemap themselves instead of packaging with the sourcemaps.
Here's a PR that turns off sourcemaps and removes them from dist, should be ready to publish (this worked on my end)
Thanks again for all the quick work on this I really appreciate it!

Pull Request Test Coverage Report for Build 95

0 of 0 (NaN%) changed or added relevant lines in 0 files are covered.
950 unchanged lines in 32 files lost coverage.
Overall coverage decreased (-0.1%) to 65.42%

Files with Coverage Reduction
New Missed Lines
%

src/rtfjs/DocumentFacade.ts
1
92.31%

src/rtfjs/renderer/RenderChp.ts
1
93.75%

src/wmfjs/Renderer.ts
1
94.44%

src/wmfjs/Primitives.ts
3
91.23%

src/emfjs/Renderer.ts
3
85.71%

src/rtfjs/parser/destinations/StylesheetDestination.ts
3
80.72%

src/wmfjs/Helper.ts
4
82.76%

src/rtfjs/parser/destinations/RtfDestination.ts
4
86.9%

src/rtfjs/Document.ts
4
68.97%

src/wmfjs/Blob.ts
8
81.73%

Totals

Change from base Build 94:
-0.1%

Covered Lines:
3154

Relevant Lines:
4499

💛  - Coveralls

Looking at some other projects like @angular etc. they all publish sourcemaps and with the same naming and reference style (//# sourceMappingURL=RTFJS.bundle.js.map). This seems logical since you would otherwise have to build every single dependency from source in order to get your sourcemaps. On the other hand it seems like at least webpack simply ignores source maps for everything in node_modules.
I definitely want to keep sourcemaps in the repo for people using it as a script and for development.
Googling your error message it seems to be one of two issues:

Spaces or special characters in the path (because the package name is rtf.js): https://github.com/ionic-team/ionic-cli/issues/1020
The bundle is to large so the regex looking for the sourcemap hits the stack size limit: https://github.com/nodejs/node/issues/759 (and similar issues)

Could you please try to verify which of these is your issue? Without knowing your exact build process this is hard for me to debug. If you are using the ember cli it might also make sense to raise an issue there.

I'll raise an issue with ember-cli as well, but yeah i'm fairly certain its the latter of the two options you presented.

So I switched over to using yarn and I don't get that error anymore...¯_(ツ)_/¯

:D fascinating. I'll close this PR for now, if you find anything we can do to fix it with npm please create a new PR.


:host selector not working for styling a component

I am using :host to style a component "fw-framework-body" which is inside of app.component
i.e:
app.component.html
<fw-framework-body></fw-framework-body>
framework-body.component.css
:host{
display: flex;
flex-direction: column;
position: absolute;
top:0;
bottom: 0;
left:0;
right: 0;
background-color: red;
}
It is not working. How do I style the framework-body component

This does not seem to be related to Angular Material. I'd suggest posting this question Stack Overflow.

Please keep GitHub issues for bug reports / feature requests related to the Angular Material and CDK libraries. Better avenues for troubleshooting / questions are stack overflow, gitter, mailing list, etc.


docs: add samples for the route directive demo

Two large sample YAMLs that are better packaged as samples for the release documentation.
Source: https://github.com/istio/istio/pull/12505
/assign @geeknoid
@duderino This is purely a documentation change.
Signed-off-by: Kuat Yessenov<EMAIL_ADDRESS>

Doc PR https://github.com/istio/istio/pull/12524

/lgtm
/approve
@duderino Let's merge this for the sake of the docs.

@rshriram @wenchenglu or anyone else with admin rights.

Yeah that's fine


Define the Neovim LSP highlight groups (:h lsp-highlight)

Oh my my! GitHub is stepping up its game!


Fill gotask description for compiled tasks

Running gotask -c and execute the binary, for example for the examples tasks:
NAME:
   examples - A new cli application

USAGE:
   examples [global options] command [command options] [arguments...]

VERSION:
   0.0.0

COMMANDS:
   gh-user      Get URL for a given GitHub user login
   say-hello    Say hello to current user
   help, h      Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --version    print the version
   --help, -h   show help

The description is not filled.

Hello,
is the any possibility to manage by VERSION number (now I see only 0.0.0) and change Name description from "A new cli application" to some other words?
--
Regards


log process time for events

@ibuildthecloud now crap is logged in defer struct no matter whether the error is nil or not.


(maint) Test fix: reference host not agent

In this loop, though we're only acting on our hosts classified as
agent, we're assigning each agent host the name host, not agent.
So the test needs to be updated to reflect that assignment.

jenkins please test this

CLA signed by all contributors.


[LIVY-735][RSC] Fix rpc channel closed when multi clients connect to one driver

What changes were proposed in this pull request?
Currently, the driver tries to support communicating with multi-clients, by registering each client at https://github.com/apache/incubator-livy/blob/master/rsc/src/main/java/org/apache/livy/rsc/driver/RSCDriver.java#L220.
But actually, if multi-clients connect to one driver, the rpc channel will close, the reason are as follows.

In every communication, client sends two packages to driver: header{type, id}, and payload at https://github.com/apache/incubator-livy/blob/master/rsc/src/main/java/org/apache/livy/rsc/rpc/RpcDispatcher.java#L144.

If client1 sends header1, payload1, and client2 sends header2, payload2 at the same time.
The driver receives the package in the order: header1, header2, payload1, payload2.

When driver receives header1, driver assigns lastHeader at https://github.com/apache/incubator-livy/blob/master/rsc/src/main/java/org/apache/livy/rsc/rpc/RpcDispatcher.java#L73.

Then driver receives header2, driver process it as a payload at https://github.com/apache/incubator-livy/blob/master/rsc/src/main/java/org/apache/livy/rsc/rpc/RpcDispatcher.java#L78 which cause exception and rpc channel closed.

In the muti-active HA mode, the design doc is at: https://docs.google.com/document/d/1bD3qYZpw14_NuCcSGUOfqQ0pqvSbCQsOLFuZp26Ohjc/edit?usp=sharing, the session is allocated among servers by consistent hashing. If a new livy joins, some session will be migrated from old livy to new livy. If the session client in new livy connect to driver before stoping session client in old livy, then two session clients will both connect to driver, and rpc channel close.  In this case, it's hard to ensure only one client connect to one driver at any time. So it's better to support multi-clients connect to one driver, which has no side effects.
How to fix:

Move the code of processing client message from RpcDispatcher to each Rpc.
Each Rpc registers itself to channelRpc in RpcDispatcher.
RpcDispatcher dispatches each message to Rpc according to  ctx.channel().

How was this patch tested?
Existed UT and IT

@jerryshao @vanzin @harishreedharan @yiheng Clould you help to review ?

Codecov Report

Merging #268 into master will increase coverage by 0.12%.
The diff coverage is 62.5%.

@@             Coverage Diff              @@
##             master     #268      +/-   ##
============================================
+ Coverage     68.18%   68.31%   +0.12%
- Complexity      945      953       +8
============================================
  Files           102      102
  Lines          5899     5920      +21
  Branches        896      897       +1
============================================
+ Hits           4022     4044      +22
+ Misses         1303     1301       -2
- Partials        574      575       +1

Impacted Files
Coverage Δ
Complexity Δ

...ain/java/org/apache/livy/rsc/driver/RSCDriver.java
81.66% <100%> (+1.75%)
46 <0> (+1)
:arrow_up:

rsc/src/main/java/org/apache/livy/rsc/rpc/Rpc.java
72.01% <59.4%> (-7.28%)
30 <19> (+18)

...in/java/org/apache/livy/rsc/rpc/RpcDispatcher.java
84.21% <90%> (+25.02%)
8 <6> (-11)
:arrow_down:

...in/java/org/apache/livy/rsc/driver/JobWrapper.java
82.85% <0%> (-5.72%)
8% <0%> (-1%)

...cala/org/apache/livy/scalaapi/ScalaJobHandle.scala
52.94% <0%> (-2.95%)
7% <0%> (ø)

...main/scala/org/apache/livy/server/LivyServer.scala
33.33% <0%> (+0.45%)
11% <0%> (ø)
:arrow_down:

...ain/scala/org/apache/livy/utils/SparkYarnApp.scala
75% <0%> (+1.25%)
40% <0%> (ø)
:arrow_down:

Continue to review full report at Codecov.

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

@runzhiwang working well thanks. Your patch solve our issue between spark-magic and livy.
During our stress test we found another one I think link to this bug.
Kerberos handshake are in 2 phase : client send a first request, server respond 401 asking for the kerberos ticket then client send his kerberos ticket, server respond 200 or 201.
Then issue is :

client 1 send a  request, server respond 401.
During the response, client 2 send also a  request, server respond 401.
Client 1 send his kerberos ticket, it get denied by the server waiting for the client 2 kerberos ticket not the client 1
Client 2 send his kerberos ticket, server respond 200

The log from request log
ip - - [23/Dec/2019:15:06:49 +0000] "GET https://url:8999/sessions/628/statements/8 HTTP/1.1" 401 356
ip - - [23/Dec/2019:15:06:49 +0000] "GET https://url:8999/sessions/628/statements/8 HTTP/1.1" 200 177
ip - - [23/Dec/2019:15:06:51 +0000] "POST https://url:8999/sessions/630/statements HTTP/1.1" 401 354
ip - - [23/Dec/2019:15:06:51 +0000] "POST https://url:8999/sessions/629/statements HTTP/1.1" 401 354
ip - - [23/Dec/2019:15:06:51 +0000] "POST https://url:8999/sessions/629/statements HTTP/1.1" 201 102
ip - - [23/Dec/2019:15:06:52 +0000] "GET https://url:8999/sessions/629/statements/4 HTTP/1.1" 401 356
ip - - [23/Dec/2019:15:06:52 +0000] "GET https://url:8999/sessions/629/statements/4 HTTP/1.1" 200 177
ip - - [23/Dec/2019:15:06:54 +0000] "POST https://url:8999/sessions/628/statements HTTP/1.1" 401 354
ip - - [23/Dec/2019:15:06:54 +0000] "POST https://url:8999/sessions/628/statements HTTP/1.1" 201 101
ip - - [23/Dec/2019:15:06:55 +0000] "GET https://url:8999/sessions/628/statements/9 HTTP/1.1" 401 356
ip - - [23/Dec/2019:15:06:55 +0000] "GET https://url:8999/sessions/628/statements/9 HTTP/1.1" 200 177
ip - - [23/Dec/2019:15:06:56 +0000] "POST https://url:8999/sessions/630/statements HTTP/1.1" 401 354
ip - - [23/Dec/2019:15:06:56 +0000] "POST https://url:8999/sessions/630/statements HTTP/1.1" 201 99

Do you think, it's link ?

@tprelle Do your client1 and client2 connect to the same driver ?

@runzhiwang same livy but not the same session so not the same driver.
ok thanks

@tprelle Hi, Could you explain why this patch solve your issue between spark-magic and livy?

@runzhiwang We are using spark-magic inside jupyterhub, using just one livy
Without your patch,  if two users on the same host use two differents notebook in parallel it's working well. But when the same user  on the same host use more than one notebook (so same user but one unique session by notebook) in parallel. One notebook is working well other get 'Error 500 RPC channel will close'.
With your patch same user can use notebook in parallel.
Maybe your patch fix more than you think ?

@tprelle Okay, I see. Thank you very much.

@jerryshao Has fixed the the indention issue.

LGTM, merging to master branch.


MySQL UTF-8 recommendation and enforcing encoding might need to change

Currently states configuring-utf8-character-set-for-mysql.md
__To create a MySQL database which uses the utf8 character set:__

1. Create a new database:

    ```SQL
    create database <database_name> character set UTF8 collate utf8_bin
    ```

2. Open `<[TeamCity Data Directory](teamcity-data-directory.md)>/config/database.properties`, and add the `characterEncoding` property:

    ```Plain Text
    connectionProperties.characterEncoding=UTF-8
    ```

but it seems
2. Open `<[TeamCity Data Directory](teamcity-data-directory.md)>/config/database.properties`, and add the `characterEncoding` property:

    ```Plain Text
    connectionProperties.characterEncoding=UTF-8
    ```

is not necessary because the driver automatically detects the coalition. even the comment in the database.properties states
# Specifies whether the driver should use Unicode character encodings
# when handling strings. Should only be used when the driver cannot determine
# the character set mapping, or you are trying to 'force' the
# driver to use unicode

There is also an additional way of changing the coalition withoutn needing to create a new database like the following

__To change the character set of an existing MySQL database to utf8:__

1.
2. From the `<[TeamCity Home](teamcity-home-directory.md)>/bin` directory, export the database using the `maintainDB tool`:

    ```Plain Text
    maintainDB backup -D -F database_backup
    ```

    More details on this backup are [here](creating-backup-via-maintaindb-command-line-tool.md#Performing+TeamCity+Data+Backup+with+maintainDB+Utility).
3. Change the database coalition with

    ```Plain Text
    ALTER DATABASE teamcitydb CHARACTER SET UTF8 COLLATE utf8_bin;
    ```

4. Change the table coalition with:

    ```Plain Text
    USE INFORMATION_SCHEMA;
    SELECT
    CONCAT("ALTER TABLE `", TABLE_SCHEMA,"`.`", TABLE_NAME, "` CONVERT TO CHARACTER SET UTF8 COLLATE utf8_bin;")
    AS MySQLCMD FROM TABLES
    WHERE TABLE_SCHEMA = "teamcitydb";
    ```
5. Execute the above commands.
6. Start the TeamCity server.

Would you want me to add a PR to incorporate this?
Another question I have is why are you recommending to set UTF8 and not
CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

which seems to be the recommended coalition when using MYSQL
https://dev.mysql.com/doc/refman/8.0/en/charset-unicode-utf8mb4.html

Hi,
Thanks for the feedback.

is not necessary because the driver automatically detects the coalition. even the comment in the database.properties states

We are not sure that all versions of the MySQL driver detect the charset automatically, so it's better to recommend specifying it explicitly, it will work in all the cases.

There is also an additional way of changing the coalition withoutn needing to create a new database like the following

Does it work with all versions of MySQL?

Another question I have is why are you recommending to set UTF8 and not utf8mb4

Again, does all the MySQL versions support utf8mb4 ?

I'm not a MySQL expert. Feel free to close this if you have more insights. I was just trying to make you aware of things I experienced and observed during the upgrade

Thanks, we are not experts as well, we tried to describe a minimal configuration that should work in most of the cases


Widget api updated

Adapted from #12
In this PR, I add 'str' to the previous demo (two sets of widget apis: dummy, fs), but there's a minor problem to fix in the new plugin str, when the react component invokes a widget API, the return value is empty.
Widget Definition: Migrating from JS Script to React Class Component
1. Access to Widget-specific Data
Widget apis are tauri commands exposed to widgets. Conceptually, to invoke a widget api, the api's implementation must have access to the widget id. For example, to read a file from the widget storage, the get_text apineed to know the widget's id. As a result, the function signature ofget_text` should be something like
#[command]
pub async fn get_text(widget_id: String) -> String {
    "Hello from Tauri!".to_string()
}

We would have a base Widget class like this
class Widget:
  // "#" means private variable
  #widget_id: string = "";

  constructor(widget_id: string) {
    this.#widget_id = widget_id;
  }

  // invocation of `get_text` api is wrapped in a method so that it has access to `widget_id`
  async get_text(path: string) {
    const result = await invoke("get_text", { widget_id: this.#widget_id});
    ...
  }

  // to be overridden by subclass widgets
  render() {
    throw new Error("Not implemented")
  }

A widget developer may extend this base widget class to define their own widget.
2. Access to React Component Lifecycle
Widget API
Widget apis are tauri commands exposed to widgets. For better code organization, widget apis of similar functionality are grouped into a tauri plugin. A tauri plugin allows us to group tauri commands under a common namespace plugin:<plugin-name>|<command-name>. It's also the only way we can register tauri commands at different locations. Without tauri plugin, we must register all commands in a single invoke_handler when calling tauri::Builder, which is nearly impossible to maintain.
plugin:
   // The naming of `widget_api.xxx` is merely for readability. `widget_api` is not an actual namespace.
   name: "widget_api.dummy"
   commands:
      shout_text(widget_id: String, text: String) -> String
      get_text(widget_id: String) -> String

plugin:
    name: "widget_api.str"
    commands:
      // Get text and display it
      get_text(app_handle: AppHandle, widget_id: String, path: String) -> Result<String, String>

As an example, to invoke get_text in Javascript, we can do this
invoke("plugin:widdget_api.fs|get_text", {widget_id: "ok-poem-display"})

How to Test this PR
Please first checkout the PR branch locally. For testing widgets, this repo contains some simple widgets defined as React class components.

Closing this one since it is no longer relevant.
Closing does not change the link so it will still be valid when the TA reviews our submission.


Update ssff-parser.worker.js

Hi @MJochim, I've had this work around / fix for awhile on my local copy of EMUWebApp and we've recently spoken with other people who use EMU who've run into the same problem so I thought I would share my code:
The SSFF worker previously only wrote changes back to file if the column type was SHORT. Currently this only applies to changes made to FORMANTS tracks but there is clearly a demand to write changes to other track types. Appropriate handling of the SSFF data types that EMU can read is a necessary first step in this direction.

I cherry-picked this as 6dea4be5c0a9f8308b7e53178dd779fce9c06469 and added some more in 10656827bd633544da558a6c4cccbe0ace565338.


import backup file

This could be a silly question, I have a wallet backup file, how can I import that into the pybitshares wallet? I searched the code, but didn't find anything related to "restore" or something, could you help shed some light on this?

pybitshares doesn't currently support the format used by the web wallet. Sorry

Thanks for the clarification. Is there any way to workaround this? e.g. extract the key from the wallet and then import the key to pybitshares?
Is this web wallet's format a standard format? If it's simple enough, I can help add that support.
sorry for lots of questions. new to this area.

You can manually obtain your private keys from the "permissions" tab of your account and clicking the public ckey. Then you can import your private key with
uptick addkey

The web wallet's format is somewhat standard as the UI uses it heavily. No other implementation can import that format so far. It is also (unfortunately) only little documented

I finally figured this out :) Thanks anyway.


Reduce the number of generated SQL statements for Updates/Inserts

I'm not sure if there is a good reason for how it currently works, but it looks like you could reduce the number of SQL statements generated for update.
Problem
The following code:
  const updatedPost = await prisma.post.update({
    where: {
      id: 1,
    },
    data: {
      published: true,
    },
  });

Generates this SQL:
prisma:query BEGIN
prisma:query SELECT `dev`.`Post`.`id` FROM `dev`.`Post` WHERE `dev`.`Post`.`id` = ?
prisma:query UPDATE `dev`.`Post` SET `published` = ? WHERE `dev`.`Post`.`id` IN (?)
prisma:query SELECT `dev`.`Post`.`id`, `dev`.`Post`.`title`, `dev`.`Post`.`content`, `dev`.`Post`.`published`, `dev`.`Post`.`authorId` FROM `dev`.`Post` WHERE `dev`.`Post`.`id` = ? LIMIT ? OFFSET ?
prisma:query COMMIT

Solution
In PostgreSQL, I would normally write this as:
update `dev`.`Post` set published = ? where id = ? returning *

Additional context
You could use returning on inserts too.

This is a recurring demand from the community, but as the devs many times the first goal of the beta is to get it correctly then optimize. There are many open issues for optimization. This one seems a duplicate of https://github.com/prisma/prisma/issues/2157.

Closing as duplicate of #2157
Keep opening issues though so that we can confirm in the future that these are properly addressed.

Hi @benawad
Do you also have performance problems that you feel with that too? Because I have opened an issue here: https://github.com/prisma/prisma/issues/4884
Any maybe that's also because it does so many unnecessary SQL Queries? I thought I ask here too. Maybe my issue and yours are connected.
 Because I have opened an issue here: https://github.com/prisma/prisma/issues/4884
Any maybe that's also because it does so many unnecessary SQL Queries? I thought I ask here too. Maybe my issue and yours are connected.
Thx for all you are doing

@SelfDevTV I have replied to your issue. It is unrelated to this issue.

@SelfDevTV I have replied to your issue. It is unrelated to this issue.


Usage docs are inadequate for experienced developer

Thank you for your project. I am trying to add a MariaDB container to my test that will be pre-populated with data (can be done with volume mount handled by entrypoint script). I have followed the instructions in the Readme.md but I am unable to take it further. I have the following questions:

How do I instantiate a MariaDB container in my test (or how is it accessible)?
How do I provide additional configuration to the container besides the application.properties described in the Readme.md?

I do not ask you to provide a course in testing, but guidance on how to use your project would be appreciated. A small sample project would be very illustrative. Alternatively, a link to relevant docs of testcontainers would be useful.

that will be pre-populated with data (can be done with volume mount handled by entrypoint script).

You want to import some mysql dump on startup? Spring can do it https://stackoverflow.com/a/24509981, but I would recommend liquibase or similar tool.

How do I instantiate a MariaDB container in my test (or how is it accessible)?

MariaDB container instantiated by spring boot (spring cloud if more precise). Check this out:

https://github.com/testcontainers/testcontainers-spring-boot/blob/develop/embedded-mariadb/src/main/resources/META-INF/spring.factories
https://docs.spring.io/spring-boot/docs/2.1.12.RELEASE/reference/html/using-boot-auto-configuration.html

How do I provide additional configuration to the container besides the application.properties described in the Readme.md?

This is what is available as configuration options:
https://github.com/testcontainers/testcontainers-spring-boot/blob/develop/embedded-mariadb/src/main/java/com/playtika/test/mariadb/MariaDBProperties.java
But I do believe that importing schema/data into testcontainer is outside of scope of this project.

A small sample project would be very illustrative. Alternatively, a link to relevant docs of testcontainers would be useful.

https://dzone.com/articles/advanced-functional-testing-in-spring-boot-by-usin
https://github.com/tdanylchuk/functional-tests-best-practices

The purpose of this project is having MariaDB container (and others) bootstrapped under the hood.
You may access container by just Autowiring it into your tests using Spring framework capabilities.

@Autowire
private GenericContainer mariadb;

If you want to control manually creation of MariaDB container you may use vanilla testcontainer
https://github.com/testcontainers/testcontainers-java/tree/master/modules/mariadb

In case if you want to use current project with spring boot integration and you are missing some properties that could be autoconfigured - feel free to submit PR.


Update plug_crypto

The old version of plug_crypto is throwing errors because it uses functions from Erlang's crypto module that no longer exist. Newer versions of plug_crypto have updated their crypto usage.

Honestly, I'm not sure it even makes sense for libraries to track a mix.lock file anyhow. The actual version of a dependency that a library uses is dependent on the application that it's included into.


Code generation for multiple assignment

Cherry-picked from my broken multiret branch.

[ ] Make arity checks in assignment and return strict

Codecov Report

Merging #178 into master will increase coverage by 0.03%.
The diff coverage is 93.93%.

Impacted Files
Coverage Δ

titan-compiler/checker.lua
94.25% <100%> (ø)
:arrow_up:

titan-compiler/coder.lua
96.27% <93.84%> (-0.07%)
:arrow_down:

Continue to review full report at Codecov.

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


makes code backwards compatible with python2

small fixes allow code to run with python2 (as well as python3)

@ranahanocka I've tested these codes with Python 2.7.14. Thanks.


Inconsistent 502 Bad Gateway responses only when VERBOSE mode is on

When and only when VERBOSE mode is on, a request can get a 502 Bad Gateway response or a 200 OK a few seconds after or before the first request.
Steps to reproduce

Activate VERBOSE mode on parse-server via the verbose config option
Make the same query many times

Expected Results
Response 200 OK
Actual Outcome
Response 502 Bad Gateway
Environment Setup

Server

parse-dashboard version: 1.0.19
parse-server version: 2.2.24
Operating System: Ubuntu Server
Hardware: 1 Core CPU / 512MB RAM
Localhost or remote server?: Digital Ocean

Database

MongoDB version: 3.2.10
Storage engine: MongoRocks
Hardware: the same
Localhost or remote server?: Digital Ocean

Important: I use Nginx as a reverse proxy

Parse Dashboard: https://dashboard.mydomain.com --> http://localhost:4040/
Parse Server: https://api.mydomain.com --> http://localhost:1337/

Logs/Trace
Here are some obfuscated examples from the iOS SDK:
POST /classes/ClassName1
{"where":{"field1":{"$in":[{"__type":"Pointer","className":"ClassName2","objectId":""},{"__type":"Pointer","className":"ClassName2","objectId":""}]},"user":{"__type":"Pointer","className":"_User","objectId":""}},"_method":"GET"}
POST /classes/ClassName2
{"include":"field1","order":"field2","_method":"GET","where":{"field3":false}}
POST /classes/ClassName3
{"include":"field1,field2,field3","order":"field4","_method":"GET","where":{"field3":{"$all":[{"__type":"Pointer","className":"_User","objectId":""}]},"field5":{"$ne":true}}}
It doesn't seem to be related to the kind of request but the only common characteristic is the WHERE clause.
Any help would be appreciated 😃

This issue wasn't caused by Parser Server but by the PM2 process manager.
I followed the Digital Ocean migration guide (https://www.digitalocean.com/community/tutorials/how-to-migrate-a-parse-app-to-parse-server-on-ubuntu-14-04) where PM2 was watching for any change in the CWD directory to restart the process.
During restart, Parse Server was unreachable and the responses were 502 Bad Gateway.
To avoid that, we can totally disable this behaviour (watch: false) or just ignore the logs and hidden PM2 directories via ignore_watch.

Life saver!
I was seeing PM2 restarting the threads at an unreasonably high rate, but I didn't put the two together. But it makes complete sense that a POST request being restarted would severe the connection to NGINX and cause it to return a 502.


Add SetDeviceTags method

This commit introduces the SetDeviceTags methods which allows for setting the tags of a specified
device. See the API documentation for full details.
Signed-off-by: David Bond<EMAIL_ADDRESS>

This is required to implement https://github.com/davidsbond/terraform-provider-tailscale/issues/67


Error in Nested File Routing: Component Suspension Issue and Resolution with Suspense

Describe the bug
In the context of nested file routing, if only the components "component," "pendingComponent," and "errorComponent" are specified, the application may encounter a break with the following error: "A component suspended while responding to synchronous input. This will cause the UI to be replaced with a loading indicator. To fix, updates that suspend should be wrapped with startTransition."
This issue can also occur with a page and index route. However, it appears to be resolved when the "rootRoute" is enclosed in Suspense or when the "wrapInSuspense" option is set to true. Was this behavior intentionally designed or is it a side effect?
Your Example Website or App
https://stackblitz.com/edit/github-zao5vf-2n13mx?file=src%2Froutes%2F__root.tsx
Steps to Reproduce the Bug or Issue

Set up a project with nested file routing.
Define only the components "component," "pendingComponent," and "errorComponent" without including a root route.
Observe the application break with the error: "A component suspended while responding to synchronous input. This will cause the UI to be replaced with a loading indicator. To fix, updates that suspend should be wrapped with startTransition."
Note that the issue persists when using a page and index route as well.

Expected behavior
Expectation: The App should not break.
Screenshots or Videos

Platform

OS: [e.g. macOS, Windows, Linux]
Browser: [e.g. Chrome, Safari, Firefox]
Version: [e.g. 91.1]

Additional context
No response

By default, each nested route is not wrapped in suspense because you should have control over suspense boundaries and fallbacks. If you plan on suspending in one of your routes

Provide at least one of the parent routes with a pendingComponent, which is used to enable suspense around the route and also is used as the suspense fallback.
Use wrapInSuspense: true, which will wrap the route in suspense

@tannerlinsley Nested routes themselves might not be wrapped in Suspense, however the Outlet in the root route still wraps child matches in one. What is the intention behind that?https://github.com/TanStack/router/blob/77116e45bfe3a42b600814607cda9845f0a51ae2/packages/react-router/src/Match.tsx#L289-L293


encoding/asn1, crypto/x509: failed to parse Chorus Intermediate CA certificate

A Chorus intermediate CA certificate contains X.509 certificate policy extension with OID <IP_ADDRESS>006527840.6<IP_ADDRESS>. The fourth oid<PHONE_NUMBER>0) in that extension is greater than math.MaxInt32, which causes a certificate unmarshaling error. Specifically the error occurs in the asn1.Unmarshal function while trying to unmarshal the certificate policy extension.
Chorus is an Internet provider in New Zealand. I am not affiliated with Chorus, and I don't know how that OID was assigned. I cannot force Chorus to issue a new CA cert with sub-OIDs that have a value lower than math.MaxInt32; to the best of my understanding there is nothing in the ASN.1 spec that states sub-oids must be lower than 2^31 - 1. I've been able to successfully load the Chorus certificate using openssl, macOS key chain, and browsers.
I understand it may be challenging to change type ObjectIdentifier []int, but it's also not a good long term option to close this issue.
I saw related issues #30757, #19933, #36881. It looks like in practice there are certificates that have OID values higher than 2^31 - 1. So the reality is golang is unable to process some legitimate certificates.
What version of Go are you using (go version)?
go version go1.14.2 linux/amd64
Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/serosset/.cache/go-build"
GOENV="/home/serosset/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/serosset/goroot"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build216516397=/tmp/go-build -gno-record-gcc-switches"

What did you do?
Parse Chorus CA certificate:
https://play.golang.org/p/StRBpHZhgDM
Issue narrowed to parsing issue of ASN.1 object identifier:

Encode the ASN.1 Object Identifier <IP_ADDRESS>006527840.6<IP_ADDRESS> in DER format using the golang asn1.Marshal function.
Manually verify the DER encoded data is correct. I used 2 different Linux tools to compare the ASN.1 DER encoding with what is produced by asn1.Marshal.
Take the ASN.1 DER encoded byte array and call asn1.Unmarshal.

https://play.golang.org/p/f3mP_NRAiFI
What did you expect to see?
Unmarshal in step (3) should succeed and the same original object identifier should have been retrieved.
Until a long term fix is determined, maybe the golang asn1 (and x509) package documentation should explicitly mention the implementation is not fully compliant with ITU-T Rec X.690, i.e. object identifiers cannot have values higher than 2^31-1. Also, the error message when parsing a certificate is very low-level and does not provide context: asn1: structure error: base 128 integer too large.
What did you see instead?
Step (3) is failing. asn1.Unmarshal fails with error asn1: structure error: base 128 integer too large

Thank you for this report @sebastien-rosset!
Kindly pinging the crypto squad @katiehockman @FiloSottile

Looks like the original choice made by @agl was to match behavior on all platforms, so the maximum size was limited to 31 bits so that parsing behavior would match on 32 bit and 64 bit builds. In theory this could be supported by simply seeing if casting the parsed int64 -> int caused an overflow and only use the int if it didn't, which was the originally proposed solution to the problem, but this would cause mismatching behavior.
Confusingly this does create a marshal/unmarshal mismatch. asn1.Marshal will happily encode a integer larger than 31 bits, but cannot parse it. It seems like either parsing should be dependent on platform integer size, or marshal/unmarshal should match by limiting encoding to 31 bits on all platforms.

Looks like the original choice made by @agl was to match behavior on all platforms, so the maximum size was limited to 31 bits so that parsing behavior would match on 32 bit and 64 bit builds. In theory this could be supported by simply seeing if casting the parsed int64 -> int caused an overflow and only use the int if it didn't, which was the originally proposed solution to the problem, but this would cause mismatching behavior.

The golang ASN.1 implementation correctly implements the ASN.1 INTEGER type, which can have an arbitrary number of bits: An ASN.1 INTEGER can be written to an int, int32, int64, or *big.Int (from the math/big package).
An object identifier is specified in ITU-T recommendation X.208, which has been superseded bu  X.680-683. An object identifier value is semantically an ordered list of object identifier component values:
ObjIdComponent ::=
  NameForm |
  NumberForm |
  NameAndNumberForm

NumberForm ::= number | DefinedValue

Where number can have an arbitrary number of digits. It is not limited to 32 bits and it is not limited to 64 bits either. So it seems that to properly implement unmarshaling of object identifiers, the implementation should do something similar to INTEGER unmarshaling, where the value can be represented either as int32,

Confusingly this does create a marshal/unmarshal mismatch. asn1.Marshal will happily encode a integer larger than 31 bits, but cannot parse it. It seems like either parsing should be dependent on platform integer size, or marshal/unmarshal should match by limiting encoding to 31 bits on all platforms.

Sure, the problem though is that asn1.ObjectIdentifier was defined as a []int, presumably because in the real world it's quite rare that components are ever >int32, and extremely rare that components are >int64. That isn't to say that this doesn't happen, but for whatever reason that was the decision made.
As such this cannot be changed to something that supports arbitrary integer sizes without changing the definition, which would break a lot of software that assumes the definition is []int.

Yes, I understand the challenges of the implementation. However I don't think just because asn1.ObjectIdentifier was defined as a []int, that should mean golang will never be able to parse real-world CA certificates such as the New Zealand example I have provided.

I don't think a solution would involve changing the type of ObjectIdentifier. As you and I pointed out, that would break a lot of code. But it seems this could be done in a way similar to what has been done for integers: the asn1.UnmarshalWithParam() function can take int, int32, int64 and big.Int for the val argument. Similarly, two new types ObjectIdentifierInt64 and ObjectIdentifierBigInt could be defined and the  function asn1.UnmarshalWithParam() could have a couple more cases under the switch statement. The asn1.Marshal() function would also have to accept these two new types as input. Optionally there could be a wrapper type. That would cover pure ASN.1 operations.
Under the crypto package, I see 80 use of asn1.ObjectIdentifier.

Hi, @sebastien-rosset. I represent the company that is having this issues. Thank you for posting this issues and looking for a resolution.
Can I ask you to please remove the references to our company name and function as we are not comfortable having us directly referenced in this bug report?
Thanks


encoding/xml: No way of creating self terminating nodes with MarshalXML

What steps will reproduce the problem?
If possible, include a link to a program on play.golang.org.
1. http://play.golang.org/p/o20RjaRdtQ
2.
3.

What is the expected output?

It would be preferable to get
<RPCElementTarget><running/></RPCElementTarget>

What do you see instead?

There is no way to do self terminating elements.  The best we can do is to do a start
and end element with no chardata.  This does not work for my application.  The closest
output is:
<RPCElementTarget><running></running></RPCElementTarget>

Which compiler are you using (5g, 6g, 8g, gccgo)?
6g

Which operating system are you using?
OS X 10.9

Which version are you using?  (run 'go version')
go version go1.2 darwin/amd64

Please provide any additional information below.

Duplicate of #21399 (this issue is older, but someone has a change against the new issue, so I'm closing this one). Thanks!


Fix adaptive sampler update bug

Coverage decreased (-0.03%) to 78.844% when pulling 6830aa354747c22fb3f0c536b4f67aeabc69ebe6 on fix_bug into d5c7fab42e599d852d959f64379dd3cffc5248be on master.


⚠ ClamAV has degraded performance

In 5b36443, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 72 ms

Resolved: ClamAV performance has improved in 25c6d62 after 35 minutes.


Translation domain should be configurable

Description
The Translatable message domain is messages by default and cannot be configured.
An option should allow customizing this value.
Example
No response

Cannot be done at the moment


Remove unnecessary processing in ErrorResponse#test(ErrorResponse...

Pull Request Etiquette

[x] I have checked the PRs for upcoming features/bug fixes.
[x] I have read the contributing guidelines.

Changes

[x] Internal code
[ ] Library interface (affecting end-user code)
[ ] Documentation
[ ] Other: _____

Closes Issue: NaN
Description

Currently, ErrorResponse#test(ErrorResponse... produces an EnumSet of the responses, which it then passes to ErroResponse#test(Collection
That method however, creates another EnumSet, which is unnecessary processing.
To fix that, this PR will create its own predicate without calling the other method.

I seem to have messed something up, GitHub shows a lot of other commits somehow.

Yes, change the target to master

Yes, change the target to master

Oh thanks, it worked, I thought we had to compare with development.

However, my change does create a small amount of code duplication, to combat this, I was considering making a private method which returns a Predicate<Throwable> with the parameters of Collection<ErrorResponse>


Design implementation issues

TO BE FIXED:

Atom properties: fix header and footer shadows in Atom properties (should be '0 2px 4px 0 #dee1e4' and  '0 -2px 4px 0 #dee1e4') respectively; fix margins: should be 8px for all labels except for the last ones in accordion details (16px);
About: fix button styles;
Periodic table: fix tab border;
Zoom: fix border and outline styles on hover and active;
R-group: row gaps after every 10th element should be 12px (in other cases - 8px);
R-Group Logic Condition: fix checkbox label position; fix Condition options style (use MUI select);
Save structure: fix height of inputs (both should be 24px), add hover styles for text input, fix issue with borders of image container (container should occupy 100% width), fix text area paddings (should be 12px); remove text selection in text area;
Templates: 'add to canvas' min width should be 110px, change clickable area for templates (should be preview + text); reset template selection on tab change in template dialog;

Already fixed:

S-group issues
Open structure issues
border color of top toolbar dropdowns
PNG preview
Miew: bottom margin in footer is already 12px (other Miew questions discussed with Alena, decided not to change behavior)
Save structure: hover on text preview causes additional border

Out of scope:

different fonts in forms (atom properties, calculated values): to be fixed in separate task
implementation of text tool (separate task)
work of paste button

Verified as fixed on Release 2.5.0.


zsl.createShielding throws error

zsl_geth1.6  build
After result = zsl.createShielding(rho, pk, value)
Error: EOF
    at web3.js:3104:20
    at web3.js:6191:15
    at web3.js:5004:36
    at <anonymous>:1:10

from 1.log
geth: ./libsnark/src/algebra/fields/fp.tcc:485: libsnark::Fp_model<n, modulus>& libsnark::Fp_model<n, modulus>::operator-=(const libsnark::Fp_model<n, modulus>&) [with long int n = 4l; const libsnark::bigint<n>& modulus = ((const libsnark::bigint<4l>&)(& libsnark::alt_bn

128_modulus_q))]: Assertion `borrow == 0' failed.
SIGABRT: abort
PC=0x7f9b25d06428 m=7
signal arrived during cgo execution

rebuilt with zsl_geth1.5
Error: Invalid JSON RPC response: {"error":{"EOF":"EOF","code":-32603},"id":19,"version":"2.0"}
    at web3.js:3122:20
    at web3.js:6026:15
    at web3.js:4998:36
    at <anonymous>:1:10

same error in log

Do you have the zsl-q-params parameter files installed in the current directory?

yes they are in the 7nodes dir

So, I the .vk and .pk that were in the 7node folders were truncated. I downloaded from zsl-q-params inside of the vm and verified that the checksums did not match. once I rm'ed the old files I was able to get test_zslprecompile.js to pass all tests
marking resolved......


IPFS api

Initial integration with IPFS.
Sets connection to IPFS node running on our server.

Good job.. will merge this into develop.
Check https://github.com/UniversalDot/front-end/issues/38 for next steps:


Can not update client ID in Github Auth

Rancher Versions: 2.0/master
Server: master
Steps to Reproduce:

configure access control for github (intentionally put in bad client id)
click save and then authenticate with github
github shows 404 as the client id doesn't exist
update the client id to the correct one and click save

Results:
github still shows 404
it is still using the wrong client id in the OAuth URL
Expected:
It should redirect to the correct github auth URL with the updated client id.
That means user can never change the client id once they set it up at the first time.

Is it reproducible in 1.6?

@yasker it looks good in 1.6

Auth largely doesn't work right now in 2.0. It is using rancher-auth-service v0.4.2 in master. someone else is working on it


Login Page Created

Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Fixes:  #75

Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Checklist:

[x] I have made this from my own
[ ] I have taken help from some online resourses
[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings

ATTACH SCREEN-SHOTS / DEPLOYMENT LINK

@Abidsyed25 I have made the Login Page. Kindly approve.


fix(Consents) Changed the view and serializers to only show the active consents

Fixes https://github.com/carpentries/amy/issues/1974

@pbanaszkiewicz a little confused with the isort error. Precommit did run isort. Is there a discrepancy between what is required there an what is required in github? I may try rebasing in case something has changed.
(env) ➜  amy git:(1974/export-user-data-shows-all-consents-without-archived-information) ✗ git commit -m "Changed the view and serializers to only show the active consents"
black....................................................................Passed
flake8...................................................................Passed
isort....................................................................Passed
[1974/export-user-data-shows-all-consents-without-archived-information dd3adbab] Changed the view and serializers to only show the active consents
 2 files changed, 41 insertions(+), 18 deletions(-)