Update tests for addCssRule

Changed tests in addCssRule to use the display property instead of the font-size CSS property in order to workaround an apparent bug on Sauce Labs Android 4.4 browser that prevented the font-size from being changed.
Addresses issue #41

Merged via e19c837402cb33b882f7be97a2cc81b36dd8df81


How to have OR constraints for a job.

I want to run a periodic job lets say every 15 mins to fetch images.
What i want to do is:

Run the job on every 15 min and sync 5-10 images.
If device is idle/charging restart job again to make this process faster.

Stackoverflow is the better website to ask these questions.


Add rule of thirds guides to the Camera3D editor preview

Rule of thirds guides are often used to help with visual composition.
This also darkens the area outside the defined project aspect ratio to help with cutscene design.
Camera guides and darkening can be disabled in the Editor Settings by unchecking Editors > 3d > Show Camera Preview Guides.
This closes https://github.com/godotengine/godot-proposals/issues/2136.
Preview
Click to view at full size. Even though lines are drawn to be visible on all backgrounds, they're still quite subtle and are invisible in the preview.

Older revision of this PR
Viewport aspect ratio is less wide than the project aspect ratio (the Camera3D uses Keep Height)

Viewport aspect ratio is wider than the project aspect ratio (the Camera3D uses Keep Height)

I like the idea of having this available. But I don't think it should be the default behaviour. Correct me if I am wrong, but the purpose of "Preview" was to essentially preview what the scene would look like in game with all editor stuff turned off. Adding rule of thirds lines makes it impossible to tell exactly what the scene would look like without editor features.

I like the idea of having this available. But I don't think it should be the default behaviour. Correct me if I am wrong, but the purpose of "Preview" was to essentially preview what the scene would look like in game with all editor stuff turned off. Adding rule of thirds lines makes it impossible to tell exactly what the scene would look like without editor features.

Correct me if I am wrong, but the purpose of "Preview" was to essentially preview what the scene would look like in game with all editor stuff turned off. Adding rule of thirds lines makes it impossible to tell exactly what the scene would look like without editor features.

This means I have to add yet another button below the Preview button :slightly_frowning_face:

Correct me if I am wrong, but the purpose of "Preview" was to essentially preview what the scene would look like in game with all editor stuff turned off. Adding rule of thirds lines makes it impossible to tell exactly what the scene would look like without editor features.

This means I have to add yet another button below the Preview button :slightly_frowning_face:

While you are at it, have you considered adding a semi transparent grey color to the area outside the actual project aspect ration similar to what Blender does?

While you are at it, have you considered adding a semi transparent grey color to the area outside the actual project aspect ration similar to what Blender does?

While you are at it, have you considered adding a semi transparent grey color to the area outside the actual project aspect ration similar to what Blender does?

Sure, that can be done too.

While you are at it, have you considered adding a semi transparent grey color to the area outside the actual project aspect ration similar to what Blender does?

Sure, that can be done too.

I implemented @clayjohn and @Ansraer's suggestions :slightly_smiling_face:

I couldn't wrangle my head around adding yet another button, so I added an editor setting that applies immediately instead.

Can't it be a toggle in the "Perspective" (View) menu instead? Even if it only applies to preview mode, there's already other preview-related entries there IINM.

@Calinou Aside from being rebased, is there anything design-wise missing from this pull request?

The proposal only has negative reactions. We would need some user demand in order to merge this.

Let's close and revisit if there are any changes in the mood of the proposal.

Closing per the above comments.


Ganache does not check for insufficient funds when sending transactions

Expected Behavior
When sending a transaction the sender should be checked for sufficient funds as is done by other ethereum node codebases.

Current Behavior
When blocktime is zero, the sending of a transaction does indeed result in an error being returned of the form sender doesn't have enough funds to send tx. The upfront cost is: xxx and the sender's account only has: yyy. However, when blocktime is non-zero this error is not returned when sending the transaction, rather the transaction hash is returned. This makes calling code think that sending the transaction was successful, which is incorrect and in Web3 leads to an indefinite hang due to waiting for a transaction receipt that will never come.
The aforementioned error appears to originate from the underlying ethereumjs-vm as a result of an evm_mine, not as a result of validation on submission of the transaction to the "node". This explains the incorrect behaviour when blocktimes are non-zero, as the error is 'emitted' some time after the transaction is submitted/enqueued by ganache-core at the time when evm_mine is next called. This is shown in ganache's logs, but probably reflects a logging call rather than an actual valid callback invocation containing the error.

Possible Solution
When sending a transaction, ganache should check that the sender's balance is equal to or greater than the upfront costs of the transaction, as is done by other node codebases.

Steps to Reproduce (for bugs)

Start up ganache with a non-zero block time
Deploy a dummy contract from an account with zero balance

Context
This has affected our use of ganache-core in automated testing, where we want to run our tests with zero blocktime and non-zero blocktime. We do both because zero blocktime allows quick testing of our code, while the non-zero blocktime better reflects actual production conditions. The code being tested includes scripts for users which need provide accurate feedback about why a transaction did not work. This issue means we cannot give reliable feedback.

Your Environment

Version used: ganache-core 2.8.0
Environment name and version (e.g. PHP 5.4 on nginx 1.9.1): Node 10.17.0
Server type and version: Macbook Pro 2019
Operating System and version: Ubuntu 18.04
Link to your project: n/a

This sounds like correct behavior; whether funds are sufficient is not checked until the node attempts to try to mine the transaction.  So I'm not certain there's an issue here.  I'm going to close this for now, but feel free to comment further if I'm mistaken or there's some other way this can be improved and we can perhaps reopen this.


Skip call for deactivateLabel when autofill text exists

Details

When a blur event is fired, deactivateLabel method is invoked inside onBlur event handler.
deactivateLabel method determines if the position of input label should be really updated based on the current input value. If there is already text, it does not deactivate (i.e. move the input label down closer to the input field).
For deactivateLabel to properly determine its course of action, the value state value should be synced to the text inputted in the text field. This is usually fine, as the value state value is updated in the onChangeText callback as the user types, deletes or pastes texts into the field.
However, the onChangeText callback is not invoked when the text value is autofilled by Chrome (ex. for username and password). This results in the value state not synced with the text displayed in the text field.
When the value state value is empty but the text field is not for this reason, deactivateLabel thinks it should move the label down to indicate deactivation state, making the label overlap with the displayed input text.
The straight forward solution to this problem is to make sure the value is synced with the displayed text when the input is autofilled by Chrome. However, there is no solution for this at this moment.
This is not React Native specific problem. When autofilling a text, Chrome doesn't trigger a change event or even register the text value with the input element until user performs some kind of action WITHIN the page (ex. clicking on somewhere on the page). In other words, when you cause a blur event without any direct user interaction WITHIN the website, the value state is not updated. This is why this issue only happens when the user clicks outside the website (ex. url bar or outside Chrome window itself). Triggering an arbitrary event programmatically doesn't work either.
The workaround for this issue is to check for the existence of a sudo selector that Chrome internally use. When this selector is present, deactivateLabel should not be invoked. After the user edits the autofilled text, this selector is removed. However, because this is an internal selector, we don't know when this selector might change.
Fixed Issues

$ https://github.com/Expensify/App/issues/14801
Tests / Offline Tests / QA Steps

Check the issue has been fixed

Open Chrome on laptop
Follow this and this instructions to make sure Chrome can save and autofill your username
Logout from New Expensify if you're logged in
Go to sign in page and wait for the username to be autofilled by Chrome
Click anywhere outside the website (URL Bar, Share Button, or outside Chrome window)
Check the text input label Phone or email is not overlapped with the text that is autofilled by Chrome
Verify that no errors appear in the JS console

Check this PR didn't break the normal behavior

Delete the username that is autofilled by Chrome
Click outside the text field to remove the focus from the field
Check the label Phone or email moves a little bit downward to indicate inactive state.

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 / Chrome
[x] iOS / native
[x] iOS / 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 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

[ ] 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 correct English and approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

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

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

[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(themeColors.componentBG)

[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 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] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

https://user-images.githubusercontent.com/98560306/219135420-e62bc1af-5c08-42f7-99ed-212762205284.mov
https://user-images.githubusercontent.com/98560306/219136145-8a62b89a-ac7f-4b4a-b695-a7caddc84a94.mov

Mobile Web - Chrome

android chrome.webm

Mobile Web - Safari

https://user-images.githubusercontent.com/98560306/219135562-84ae4b76-93ab-46c9-a7b4-38a806dcce0e.mp4

Desktop

https://user-images.githubusercontent.com/98560306/219195483-1ca8a3c6-fe60-4ee2-9daa-e3dd7b8d3818.mov

iOS

https://user-images.githubusercontent.com/98560306/219135711-5526c8fb-0d41-4c30-b50d-611f072f262f.mp4

Android

android native.webm

Hey! I see that you made changes to our Form component. Make sure to update the docs in FORMS.md accordingly. Cheers!

@parasharrajat @stitesexpensify One of you needs to copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button]

@parasharrajat @stitesexpensify One of you needs to copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button]

@hayata-suenaga looks like this was merged without a test passing. Please add a note explaining why this was done and remove the Emergency label if this is not an emergency.

@yuwenmemon MelvinBot checked this as Emergency. Could you explain why it might have done so? Did I forget to check some steps?

: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.

MelvinBot checked this as Emergency. Could you explain why it might have done so? Did I forget to check some steps? Did I forget to wait for reviewer checklist?

Ah yes, this is because you merged this PR without a PR reviewer checklist 😅. Good lesson to learn is that you should be waiting until all checks are passing in Github before merging a PR. I think this one is fine to just leave-be, since we do have tests run by @parasharrajat and your changes meet the requirements of what we look for in the PR reviewer checklist.
But yes, for next time do please wait until all tests are passing before ever self-merging a PR. If in doubt, it's always better to have the PR reviewer merge your PR when they feel it's ready anyway.

🚀 Deployed to staging by https://github.com/hayata-suenaga in version: 1.2.75-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

@stitesExpensify Any thoughts? https://github.com/Expensify/App/pull/15159#discussion_r1110324130

Apologies, I've been OOO for a few of days. Glad this was resolved!

Thank you @parasharrajat 🙇

🚀 Deployed to production by https://github.com/melvin-bot[bot] in version: 1.2.75-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


[Translation] No translation on the information page for duckduckgo on mac

Describe the bug
There is no DE translation for this site.

How to Reproduce
On a phone with the German language go to "Einstellungen" and on to "Duck Duck Go Desktop App"
Expected behavior
No translation here: Everythingd in English.
Environment
- DDG App Version: 5.143.1 ml
- Device: Galaxy A13 5G
- OS: One UI

Thanks, I've shared this feedback with our macOS team. Probably a known thing since the macOS browser is only available in English at the moment. Closing as not a bug.


Run apex test command giving strange error

Note
Before you submit your issue, make sure that:

You're using the latest version of Salesforce CLI.
You've searched both open and closed issues for related posts.
You've used the doctor command to diagnose common issues.
You understand that GitHub Issues don't adhere to any agreement or SLA.

If you require immediate assistance, use official channels such as Salesforce Customer Support.

Summary

Steps To Reproduce

IMPORTANT
Provide a repository that's configured to reproduce the issue. If you are unable to provide a repo, please explain why not. The more info we have from the start, the faster we can resolve your issue.
We may close your issue if you don't include proper instructions.

Generate a project with sf project generate or fork dreamhouse-lwc.
Provide detailed step-by-step instructions on how to reproduce the issue.

Command run:
sf apex test run -c -r json -o  -w 180 -l RunSpecifiedTests -t "" -d test-result --json
Expected result

Run specified tests on org
Actual result

Error:
(node:867804) [DEP0040] DeprecationWarning: The punycode module is deprecated. Please use a userland alternative instead.
17:07:10  (Use node --trace-deprecation ... to show where the warning was created)
17:07:13  The environment variable HTTPS_PROXY is discouraged. Use https_proxy.
17:07:13  The environment variable HTTPS_PROXY is discouraged. Use https_proxy.
17:07:14  file:///apps/external/4/downloaded_tools/.nvm/versions/node/v21.7.3/lib/node_modules/@salesforce/cli/node_modules/@salesforce/plugin-apex/lib/commands/apex/run/test.js:102
17:07:14              throw messages.createError('apexLibErr', [err.message]);
17:07:14              ^
17:07:14
17:07:14  SfError [ApexLibErrError]: Unknown error in Apex Library: Test run handshake failed: 403::Handshake denied
17:07:14      at Messages.createError (/apps/external/4/downloaded_tools/.nvm/versions/node/v21.7.3/lib/node_modules/@salesforce/cli/node_modules/@salesforce/core/lib/messages.js:444:16)
17:07:14      at process. (file:///apps/external/4/downloaded_tools/.nvm/versions/node/v21.7.3/lib/node_modules/@salesforce/cli/node_modules/@salesforce/plugin-apex/lib/commands/apex/run/test.js:102:28)
17:07:14      at process.emit (node:events:519:28)
17:07:14      at process.processEmit [as emit] (/apps/external/4/downloaded_tools/.nvm/versions/node/v21.7.3/lib/node_modules/@salesforce/cli/node_modules/signal-exit/index.js:199:34)
17:07:14      at process._fatalException (node:internal/process/execution:178:25)
17:07:14      at processPromiseRejections (node:internal/process/promises:289:13)
17:07:14      at process.processTicksAndRejections (node:internal/process/task_queues:96:32) {
17:07:14    actions: undefined,
17:07:14    exitCode: 1,
17:07:14    context: undefined,
17:07:14    data: undefined,
17:07:14    cause: undefined
17:07:14  }
17:07:14
System Information
ksh

SFDX & Node Version :: {
"architecture": "linux-x64",
"cliVersion"<EMAIL_ADDRESS>"nodeVersion": "node-v21.7.3",
"osVersion": "Linux 4.18.0-513.24.1.el8_9.x86_64",
"rootPath": /apps/external/4/downloaded_tools/.nvm/versions/node/v21.7.3/lib/node_modules/@salesforce/cli,
"shell": "ksh",
"pluginVersions": [
 "@oclif/plugin-autocomplete 3.0.16 (core)",

 "@oclif/plugin-commands 3.3.1 (core)",

 "@oclif/plugin-help 6.0.21 (core)",

 "@oclif/plugin-not-found 3.1.6 (core)",

 "@oclif/plugin-plugins 5.0.14 (core)",

 "@oclif/plugin-search 1.0.23 (core)",

 "@oclif/plugin-update 4.2.7 (core)",

 "@oclif/plugin-version 2.0.17 (core)",

 "@oclif/plugin-warn-if-update-available 3.0.15 (core)",

 "@oclif/plugin-which 3.1.8 (core)",

 "@salesforce/cli 2.39.6 (core)",

 "apex 3.1.9 (core)",

 "auth 3.6.3 (core)",

 "data 3.3.2 (core)",

 "deploy-retrieve 3.6.6 (core)",

 "info 3.2.3 (core)",

 "limits 3.3.4 (core)",

 "marketplace 1.2.4 (core)",

 "org 4.1.3 (core)",

 "packaging 2.4.0 (core)",

 "schema 3.3.4 (core)",

 "settings 2.2.1 (core)",

 "sobject 1.3.6 (core)",

 "source 3.3.3 (core)",

 "telemetry 3.3.4 (core)",

 "templates 56.2.4 (core)",

 "trust 3.6.6 (core)",

 "user 3.5.2 (core)"

]
}
PASTE_VERSION_OUTPUT_HERE

Additional information

@Tanvidh Can you provide more details on how to reproduce this error? The command you provided (sf apex test run -c -r json -o -w 180 -l RunSpecifiedTests -t "" -d test-result --json) isn't valid for two reasons:

the -o flag expects a value
the -t flag must be valid names of ids of the test classes

Are you using a proxy?
17:07:13 The environment variable HTTPS_PROXY is discouraged. Use https_proxy.
17:07:13 The environment variable HTTPS_PROXY is discouraged. Use https_proxy.

If so, that's probably the reason why you're getting this 403:
17:07:14 SfError [ApexLibErrError]: Unknown error in Apex Library: Test run handshake failed: 403::Handshake denied


Multiple requestData sets don't translate into multiple tests

Since requestData per requestPath/operation/response is an array, i assumed multiple sets would create multiple tests, one for each set of request data. But only the first one is used.
i.e.
requestData: {
  '/albums/{albumId}': {
    get: {
      200: [
        { albumId: 1, description: 'get an album by id 1'},
        { albumId: 3, description: 'get an album by id 3'}
      ]
    }
  }
}

creates a test only for api.get('/albums/1'), not api.get('/albums/3').

Hmm, I will look into this. I am horribly busy, but will try to find time soon

curious if there has been any movement on this issue? as i too will need to do something like this with my tests

@jenkink With how closely tied the request data injection/resolution is with the template compilation I think this might be a more involved change to make. Idk when I'll have time to work on it, but I agree that this is a feature we should support


Discussion: Use of data providers in test classes

Using data providers is a convenient way to reduce code and increase coherence inside the test classes. Having the test case data separated from the test code itself follows best practices and is encouraged in professional use.
But in Exercism it raises a bunch of problems:

In the test runner, data provider based tests must be handled separately

Nested test suites issued for data provider tests only
Code reflection based line number calculation fails with input variables being on separate lines
Test values are only included in students test feedback when tests are designed accordingly
See https://github.com/exercism/php-test-runner/issues/116 for some issues

PHPUnit converts values to a different format (not like PHP code) to emit them in test names
For beginners, even when working with the CLI, the test data is not intuitively connected to the test code
It is much more inconvenient to connect UUIDs of practice exercises to test values in a data provider
In the test generator, data providers might add more complexity and so may not be used

So I would prefer to convert existing data provider based tests to flat test methods and not add new exercises with data providers.
Any opinions about that?

As there are limited tests, even thought they are more or less always looking the same. I'm OK with not using dataproviders, if that improves user experience in Online Editor.
I would always reach for data providers personally in a private project, with descriptive keys.
But I think user experience is key here. We will not need to tweak tests that often.


Web single file loading and embedded audio

Purpose of this PR

Add single-file-loading functionality to the web player
Add access to embedded audio data to web
Update documentation

Changes made in this PR

Added single-file-loading function to wasm_vol_geom.c (and convenience interface to pre.js)
Added embedded audio access functions to wasm_vol_geom.c (and convenience interfaces to pre.js)
Added get_audio_data() function to pre.js which makes is even easier to access audio data
Added info of new functions to web player readme

Testing Summary

Build Command
cd wasm
./build-mjs.sh && ./build-js.sh

Checklist

[x] Desktop player

https://user-images.githubusercontent.com/68862565/235972839-87ac69b1-54fd-4515-9ba6-1b8a0166889f.mov
Build type

[ ] Module built with build-mjs.sh
[ ] Code built with build-js.sh

Risk Introduced

[ ] Not much consideration was added to backward compatibility of vol format versions

Pre-Merge Checklist

[ ] No conflicts with destination branch
[ ] Reviewed your own PR and checked your changed code
[ ] Invited reviewers (ideally +2)
[ ] All questions/comments answered (where necessary)
[ ] Approvals received after latest changes (ideally 2+)

good! i think we just need some examples/ with basis/audio


Reducer in (S) -> S format

I am wondering if you are open to change reducers to (S) -> S format instead of S.() -> S.

(S) -> S is more readable and easier to understand than S.() -> S
An instance function represents a "belong to" relationship with the instance. A reducer is a function that maps S1 to S2, which i don't think it fits the definition well.
Recently I have a careless bug:

// my state here:
data class State(
  val extension: Extension
)
data class Extension(
  val val = 0
)

// my reducer here
{
  reduce(payload) // this line updates the extension
    .copy(extension.copy(val=1)) // this line uses the old copy of extension
}

It's very easy to make this kind of mistakes with implicit parameter.
However, with (S1) -> S2 format, where I have to explicitly specify which state's extension to use, it's much harder to make such mistakes.
@gpeal @BenSchwab @elihart

couldn't this exact same mistake happen with (S1) -> S2, because the state doesn't need to be named so it would have the implicit name of it and you could still accidentally write extension.copy(val=1) instead of it.copy(val=1)
could we lint for .copy inside an execute call instead?

extension.copy(val=1) would be error for (S1) -> S2

it's much harder to make mistakes by passing explicit parameter, even if it's it. It's pretty obvious that xxx.copy(it.extension.copy(val=1) refer to the extension of the original state.

@hellohuanlin I admit that the signature is confusing at first. However, we opted for this syntax because it's so common and it simplifies things a bit.
In addition, reducers should be pure and capturing this makes you more likely to write code that way.

@hellohuanlin Because the this is the state in the lambda rather than the captured scope.

@hellohuanlin
It's equally possible to write an impure function though.
The main reason we did this is to optimize for the 90% case of execute { copy(foo = it) } or setState { copy(foo = !foo) }

Thinking about it more, S.() -> S can be more likely to write impure function:
val value = 123
execute {
  copy(
    value = value + 1 // captured value, not state.value
  )
}

On the other hand, with (S) -> S where you have to explicitly specify the state:
val value = 123
execute { state ->
  state.copy(
    value = state.value + 1 // less likely to make mistakes here.
  )
}

I don't know, I feel like your example could be turned around the opposite way just as easily
withState { state ->
  MyRequest.build(state.listingId).execute {
    state.copy(
      value = state.value + 1 // wrong state is used here
    )
  }
}

I think mistakes can be made both ways, it's hard to say which is more error prone, but I think what we have now works well enough and there wouldn't be a big enough different to justify a change this big

@elihart I do see what you mean, but I think in this particular case, the developer explicitly use the state from outer closure. I feel this mistake is not as likely to make as other cases, and when it happens, it's more of the developer's responsibility. That being said, I do agree that in this case, S.() -> S wins.
Let's put aside which one is more error prune because it's quite a subjective thing. In principle, the concept of reducer feels more like a static member of the state class, instead of a member of the state instance. That's why I feel it's quite odd and not as readable.

@hellohuanlin I think we're probably going to wind up going in circles here because it's neither here nor there and valid arguments can be made for either. However, it would take a lot of work not just by Airbnb but every consumer of MvRx to change the API and I have a hard time seeing the justification for that.
@elihart

@gpeal agree that api change would take a lot of work. closing this issue now.


limitation when no dynamic memory allocation is used

Hello,
Could you help me regarding what limitations exist when statically allocated buffers are passed to the configuration structure instead of using dynamic memory allocation ?
Above the "file_buffer" it writes: "If enabled, only one file may be opened at a time." -> I could verify the problem here (when writing both files, the content of the second writing will be written into the first file too), however I would have expected that the second file open returns a negative error code.
Thanks,
Geza

Ah! good idea. I just didn't think of returning an error code in that condition.
Does this fix look good to you? (returns LFS_ERR_NOMEM / -ENOMEM)
https://github.com/geky/littlefs/compare/fix-multi-static-file

@husigeza without dynamic memory allocation , are you saying we  can still use LittleFS with static buffers ? I am trying to use littleFS for my STM where I dont have dynamic memory.

@kewld yes, it is possible, however there are limitations, such as you can only have 1 file opened at a time.

@kewld yes, it is possible, however there are limitations, such as you can only have 1 file opened at a time.

Not true.

I am trying to use littleFS for my STM where I dont have dynamic memory.

You have "dynamic memory" - just use it.

@kewld yes, it is possible, however there are limitations, such as you can only have 1 file opened at a time.

Not true.

This changed in v1.5: https://github.com/ARMmbed/littlefs/pull/58
It was true when this issue was created :) Which means I've probably left this issue open for too long. Feel free to reopen if there's still an issue.

are you saying we can still use LittleFS with static buffers ?

You can specify a buffer per file using lfs_file_opencfg:
// must be equal to cache size in lfs config
uint8_t file_buffer[config.cache_size];
// note we must zero initialize unused fields for backwards compatibility
// designated initializers do this for us
struct lfs_file_config file_config = {
    .buffer = file_buffer;
};
// open file
lfs_file_t file;
int err = lfs_file_opencfg(&lfs, &file, "path/to/file",
        LFS_O_WRONLY | LFS_O_CREAT, &file_config);
assert(!err);

You have "dynamic memory" - just use it.

Not using heap allocations is a legitimate use case - not everyone splashes around with an RTOS :yum:.
I'm happy to report I just got LittleFS to run via Rust bindings on an STM32L432 microcontroller - no heap allocations, no libc. I only had to patch in some <string.h> implementations.

Not using heap allocations is a legitimate use case - not everyone splashes around with an RTOS

Using or not using dynamic allocations have nothing to do with a RTOS.

I'm happy to report I just got LittleFS to run via Rust bindings on an STM32L432 microcontroller

Cool! Is this with the littlefs crate I've seen floating around?
https://docs.rs/littlefs/0.2.0/littlefs/

Which means I've probably left this issue open for too long. Feel free to reopen if there's still an issue.

I wrote that then forgot to actually close this! closing... (discussion can still continue)

Cool! Is this with the littlefs crate I've seen floating around?
https://docs.rs/littlefs/0.2.0/littlefs/

Yeah, I bumped it to v2 and had to patch it a little, looking forward to using file attributes which should come in handy. Implementing the Storage trait felt really really nice and elegant, I'm in a honeymoon/fanboy phase with your littlefs currently!


Frost walk broke my Minecraft, and I think I knows why

So, the frost walk enchantment was meant to be applied to shoes for humans, right? And the velocity humans had not faster than the horses of course, even when they drink speed potion.
But in your mod, the demand to turn water into ice is higher, because the horse speed is higher than humans, and resulting often to crash. To resolve this, how about adding more range (like the singularity around blackhole) for the ice to form, and speed penalty when walking on ice, so the demanding not so demanding anymore.
For now, to prevent my minecraft to crash, I have to walk my horses sideways, and it works, but it's silly.

Same here

Same issue here


php 8.0 compatibility

Builds are green: https://travis-ci.com/github/Kanti/phpstan-typo3/builds/225919740
@sascha-egerer What happened to your Travis integration?
Could you release that today? That would be pretty awesome of you

What happened to your Travis integration?
I don't know but i think it makes sense to migrate to github actions anyway.

Thank you for your contribution!


TypeError: Cannot read property 'map' of undefined

Since:
https://github.com/rollup/rollup-watch/commit/bed4201d2f41b8fdce6017b265c6f3c421ec320b
rollup-watch crashes when not defining opts.dest
const dests = options.dest ? [ path.resolve( options.dest ) ] : options.target.map( target => path.resolve( target.dest ) );

Should probably be mapping opts.target**s** (notice the "s"):
const dests = options.dest ? [ path.resolve( options.dest ) ] : options.targets.map( target => path.resolve( target.dest ) );

Unless the API changed from using .targets towards using .target ofc

Released 3.2.0 with the fix — thanks


Authentication works, but no serial number can be looked up

I was able to set up Laps for testing in my JAMF Pro 11 test environment. When switching that to my 10.50.0-t1693149930 productions environment. I can fetch the  time settings but no matter what serial number I use all I get is cannot find the serial number error

Hi there
Can you very the permissions you have one the account.
Should have these?

Read Computers, Update Local Admin Password Settings, View Local Admin Password Audit History, Send Local Admin Password Command, View Local Admin Password

Thre fix for me was the read computers permission. which I see is now a required permission for the app.


refactor(tests): move tests from cerebral to this project

@christianalfoni please create an pull requests for pending changes

it's outdated, I suppose?

closed in favor off #5


state (storage) reform

linked to rockcarver/frodo-lib#37
There is a well-intentioned false getter and setter paradigm used in the storage of the application but it just adds complexity
Not just opinion

consider the below file SessionStorage.js

The main problem I can see here is that getters and setters are supposed to promote immutability/encapsulation by controlling what's private and public. This concept is considerably easier to achieve in a language such as Java.
In JavaScript, although now it is possible to do something similar with Symbol we still exposed the property raw which allows direct modification of the object which suggests that the approach is flawed and at some point, raw was exposed to allow direct modification, the final reason for getters and setters is to give some expectation of properties that change and their names, defining them, but In my example bellow I use JS doc to tell the editor what properties are expected, I also generate docs from this, I finally define true immutability using defineProperty
const _sessionStorage = {}

export default {
    session: {
        setItem: (key, value) => _sessionStorage[key] = value,
        getItem: (key) => _sessionStorage[key],
        removeItem: (key) => delete _sessionStorage[key],
        raw: _sessionStorage,
        setUsername: (value) => _sessionStorage["username"] = value,
        getUsername: () => _sessionStorage["username"],
        setPassword: (value) => _sessionStorage["password"] = value,
        getPassword: () => _sessionStorage["password"],
        setTenant: (value) => _sessionStorage["tenant"] = value,
        getTenant: () => _sessionStorage["tenant"],
        setDeploymentType: (value) => _sessionStorage["deploymentType"] = value,
        getDeploymentType: () => _sessionStorage["deploymentType"],
        setRealm: (value) => _sessionStorage["realm"] = value,
        getRealm: () => _sessionStorage["realm"],
        setCookieName: (value) => _sessionStorage["cookieName"] = value,
        getCookieName: () => _sessionStorage["cookieName"],
        setCookieValue: (value) => _sessionStorage["cookieValue"] = value,
        getCookieValue: () => _sessionStorage["cookieValue"],
        setBearerToken: (value) => _sessionStorage["bearerToken"] = value,
        getBearerToken: () => _sessionStorage["bearerToken"],
        setLogApiKey: (value) => _sessionStorage["logApiKey"] = value,
        getLogApiKey: () => _sessionStorage["logApiKey"],
        setLogApiSecret: (value) => _sessionStorage["logApiSecret"] = value,
        getLogApiSecret: () => _sessionStorage["logApiSecret"],
        setAmVersion: (value) => _sessionStorage["amVersion"] = value,
        getAmVersion: () => _sessionStorage["amVersion"],
        setFrodoVersion: (value) => _sessionStorage["frodoVersion"] = value,
        getFrodoVersion: () => _sessionStorage["frodoVersion"],
        setAllowInsecureConnection: (value) => _sessionStorage["insecure"] = value,
        getAllowInsecureConnection: () => _sessionStorage["insecure"],
    }
}

vs
2. JS doc and plain old JavaScript
/**
 * @typedef {Object} GlobalState
 * @property {boolean} allowInsecureConnection `true` enable HTTP.\
`{ allowInsecureConnection: false }` disable http and enable HTTPS.
 * @property {string} amVersion which version of ForgeRock Access Management (AM) is in use.
 * @property {string} bearerToken The bearer Token, a predominant type of access token used with OAuth 2.0.
 * @property {string} cookieName After auth you will have a cookie with a name and value, this is the name.
 * @property {string} cookieValue After auth you will have a cookie with a name and value, this is the value.
 * @property {"classic"|"cloud"|"forgeops"} deploymentType choose the context of the target environment
- `classic`  A classic Access Management-only deployment with custom layout and configuration.
- `cloud`    A ForgeRock Identity Cloud environment.
- `forgeops` A ForgeOps CDK or CDM deployment.
 * @property {string} frodoVersion The version of lib-frodo, this cannot be changed.
 * @property {string} host What is the url of the tenant?
 * @property {string} logApiKey You provide a generated logging API key from the tenent.
 * @property {string} logApiSecret You provide a generated logging API secret from the tenent.
 * @property {string} password The password of the admin user.
 * @property {string} realm which realm do the frodo commands affect?
 * @property {string} username The username of the admin user.
 */

/**
 * @type {GlobalState}
 */
const globalState = {
  allowInsecureConnection: false,
  amVersion: '',
  bearerToken: '',
  cookieName: '',
  cookieValue: '',
  deploymentType: '',
  host: '',
  logApiKey: '',
  logApiSecret: '',
  password: '',
  realm: '',
  username: '',
};

Object.defineProperty('frodoVersion', globalState, {
  value: packageJSON.version,
  writable: false,
  configurable: false,
});

export default globalState;

State has been reformed into an instantiable and fully typed construct. Marking as complete.


Research & Refactor OxyApi

Maybe remove OxyApi and move Managers to DI? :thinking:
Provide and IOxyApiProvider to manage managers resolving via Container
Advantages:

Resolve only things that you need
Simplifies adding new modules (managers), because of decentralization

Centralized API removed, managers are now part of the container


Updating beta versions might lead to build failures due to remainings of a previous version

After updating to Xcode 7 beta 5 I had following build issue:

Module file was created by an older version of the compiler; rebuild 'Security' and try again:  /Applications/Xcode-7.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/watchsimulator/i386/Security.swiftmodule

Security.swiftmodule was installed with a previous beta version but does not exist in the beta 5.
xcode-install uses ditto to install Xcode, which merges files from the source into existing directories at the destination path.
If a new (beta) version of Xcode doesn't contain files which were present in the previous version, the old files will still be there after installing the update.
Consider to automatically uninstall previous version at the destination path or to rename them before the install. If the install succeeded the old version can be deleted, but can still be used if the install failed.

Until #4 is implemented, I believe the correct behaviour would be to refuse installation if there's an existing installation at the target path. This will allow the user to proceed as they see fit.


Issue with replacing Brittany with Ormolu

I installed ormolu and tried using it in format-all.
# Snippet from emacs init file.

 (use-package
  format-all
  :ensure t
  :diminish format-all-mode -- this causes an error in the init file.
  :config
  (setq-default format-all-formatters
                '(("Haskell" (ormolu --mode inplace))))
  :init
  (progn
    (add-hook 'prog-mode-hook 'format-all-mode)  ;; enables format-all mode in the prog-mode buffer
    (add-hook 'format-all-mode-hook 'format-all-ensure-formatter))
  )

When I run it on a haskell file I get an error about Brittany.

Formatter not found: "You need the brittany command. You may be able to install it via: stack install brittany"

On the command line

ormolu HaskellFile.hs
works.

Any suggestions!
Thank you for this package. It is very helpful.

(ormolu --mode inplace) should be (ormolu "--mode" "inplace").
I'm not familiar with use-package myself, so I'm not sure about the rest.

Thank you  so much!
Just

(ormolu)
works great.

The additional  >"--mode inplace" was causing some problems.
Thank you for the help!


Parsing error when parsing reexport statement that exports a specifier that is not a valid identifier

Originally reported here but then I realized that the error was only thrown when this plugin was used
Repro
const { Parser } = require('acorn')
const { importAssertions } = require('acorn-import-assertions')

Parser
  .extend(importAssertions)
  .parse(`export * as '🙈' from 'external'`, { sourceType: 'module', ecmaVersion: 'latest' })

Actual
Uncaught [SyntaxError: Unexpected token (1:12)
] {
  pos: 12,
  loc: Position { line: 1, column: 12 },
  raisedAt: 15
}

Expected
It should parse this input correctly

There's an alternative with support.
https://github.com/bojavou/acorn-import-attributes


Contribution Docs

Is probably a good idea that we add some contribution docs that folks can follow. We add some checkboxes on the PR workflow, but wondering if we need to be a bit more explicit so by the time PR's are raised, the necessary things have been done.
Possible something like I've done here: https://github.com/pact-foundation/pact-broker-chart/blob/master/CONTRIBUTING.md

@tumido  Did we ever get some contributing docs? I thought we did but not sure if I'm confusing with other projects. Happy to add some if not.

Hey, you are right, we never got any. Sorry for that. I'll have some time to work on this in ~2 week, if you want to add any sooner, feel free to re-assign 🙂 👍

Remove stale


Compile error when calling length() on string FiniteTypes

Consider the following Code.
public type EqualityOp "==" | "!=" | "===" | "!==";

public type EqualityInsn record {|
    EqualityOp op;
|};

function foo(EqualityInsn e) {
    if ((e.op).length() == 2) {

    }
}

This gives the compile error
undefined function 'length' in type '==|!=|===|!=='

Fixed in https://github.com/ballerina-platform/ballerina-lang/pull/31863 (https://github.com/ballerina-platform/ballerina-lang/pull/31863/commits/0d3fd9b7576359556276ffd07c0d474829f366ba).

Tests added in https://github.com/ballerina-platform/ballerina-lang/pull/31927


Use with Dependency Submission API

Hi,
I haven't gotten this action to work together with the Dependency Submission API — could you advise on how to do this?
Your docs describe that this should work, as per:

https://docs.github.com/en/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review#dependency-review-enforcement

Note: The dependency review API and the dependency submission API work together. This means that the dependency review API will include dependencies submitted via the dependency submission API. This feature is currently in public beta and subject to change.

Here's an example of trying to get this to work together with scalacenter/sbt-dependency-submission:

https://github.com/scalacenter/sbt-dependency-submission/issues/135

Thanks for reporting this @MPV.
Taking a look at the sample repo, I see that the only existing snapshot is associated with the git revision 11ed13c5bba9814538dcbb244efc8af160291f37 (HEAD of master).
The submission part of the CI run tells me that a new was snapshot generated: https://api.github.com/repos/MPV/github-dependency-review-for-scala/dependency-graph/snapshots/9003924, but I'm not sure where the SHA in there (9d6c3624119eb3ab312b78cfa1149379447bc114) is coming from.
Do you think maybe the force-push, or a failure in the snapshot submission could be related to this? Do you get the same behavior on a "clean" (no forces) PR? And if so, does the SHA of the resulting snapshot match your commits?

Do you think maybe the force-push, or a failure in the snapshot submission could be related to this? Do you get the same behavior on a "clean" (no forces) PR? And if so, does the SHA of the resulting snapshot match your commits?

Sure, here is a PR with a fresh change, testing out your theory:

https://github.com/MPV/github-dependency-review-for-scala/pull/4

Looks to me it’s using the GITHUB_SHA:

https://github.com/search?q=repo%3Ascalacenter%2Fsbt-dependency-submission sha&type=code

Should it be using something like github.event.pull_request.head.sha instead (if called from a PR)?
As per:

https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#pull_request

Seems similar to:

https://github.com/actions/dependency-review-action/issues/545

@juxtin would appreciate your input here.

We're drafting one way of fixing this over at:

https://github.com/scalacenter/sbt-dependency-submission/pull/140

@MPV that looks pretty very similar to @juxtin did to fix the Compose ecosystem, it looks like that should fix the problem of not being able to find the head SHA.

Yeah, this is a very common issue for detectors that aren't using our toolkit. https://github.com/scalacenter/sbt-dependency-submission/pull/140 looks like it'll fix the problem 👍

Reading through the comments, it looks like that fix did it! Closing this issue.


Use separate passwords per backup path

Currently, the JSON backup plan specifies a single password for all backup batches.
Modify the JSON and code to use individual passwords per batch: e.g.
"backupPaths": [
        {
            "password": "password1",
            "sourcePath": "C:/Data/SampleData1",
            "targetRepository": "data-backup-1"
        },
        {
            "password": "password2",
            "sourcePath": "C:/Data/SampleData2",
            "targetRepository": "data-backup-2"
        }
    ]

Fixed with https://github.com/dog-bytes-code/ps-restic-batcher/commit/29eea47736968ad9e99f60870fbfb9256b09c5bb


Hide media content in posts and comments with low rating

Current threshold for "low rating" status is set to "less than -3".
Demo:

Height autocut in comment with low rating:

looks awesome. The only thing I would change: maybe it would make sense to extract -3 somewhere since it's used more than one time

this change would take more time and bloat the scope of this change, so I decided to postpone it.

Makes sense. But even if you just extract it as a constant available to both CommentComponent.tsx and PostComponent.tsx  it would help to avoid touching two files instead of one if this value is to be adjusted in the future

this change would take more time and bloat the scope of this change, so I decided to postpone it.

Makes sense. But even if you just extract it as a constant available to both CommentComponent.tsx and PostComponent.tsx it would help to avoid touching two files instead of one if this value is to be adjusted in the future

Extracted constants into the separate config.
Also, slightly increased the hidden media size and reduced the blur effect:


[docs] Add Badge Typescript demo for Maximum Value

[x] I have followed (at least) the PR section of the contributing guide.

Add BadgeMax typescript demo for https://github.com/mui-org/material-ui/issues/14897
By the way, this is my very first PR to this project :heart: so just let me know if there's something I missed, cheers :metal:

@rahmatrhd Much appreciated, thanks!


[Prime Palindrome In C]

Issue will be closed if:

You mention more than one algorithm. You can create a separate issue for each algorithm once the current one is completed.
You propose an algorithm that is already present or has been mentioned in a previous issue.
You create a new issue without completing your previous issue.

Note: These actions will be taken seriously. Failure to follow the guidelines may result in the immediate closure of your issue.

Name:
[PrimePalindrome]
About:
C program to find next prime palindrome: a user will enter a number, and we have to find the least number greater than it which is a palindrome as well as prime. For example, if the input is 7 then the output will be 11 as it's a prime as well as a palindrome, if the input is 21 then the output will be 101. In the program, we check if a number is a palindrome and then check if it's prime as it takes less time as primes occur more frequently than palindromes.

Labels:
new algorithm, gssoc-ext, hacktoberfest, level1

Assignees:

[x] Contributor in GSSoC-ext
[x] Want to work on it

Do not create multiple issues.


fix order of default merge

@keybase/react-hackers this actually fixes the nav issue. turns out navigateUp is overridden by the default merge. i mistakenly made the default mergePros which we have to pass do
(s,d,o) => ({...s, ...d, ...o})
vs the actual default
(s,d,o) => ({...o, ...s, ...d})
added a comment to nav since thats way too subtle

(nav issue is if you swipe left to go back from thread to inbox you can no longer scroll inbox)

the typing of that function is whats hard, better for flow to infer it locally


Provide default setting

nvim-treesitter use tree-sitter to parse file, too, which provide a default setting for many languages. Can this project provide default setting when user doesn't have ~/.config/syncat?

Released in 3.4.0:
When loading languages, if ~/.config/syncat/languages.toml does not exist, it will fall back to the default (syncat/config/languages.toml)
When loading stylesheets, if ~/.config/syncat/style/active/{lang}.syncat does not exist, it will fall back to the default (syncat/config/style/active{lang}.syncat). If that does not exist, then defaults to empty styles

https://github.com/foxfriends/syncat/blob/master/syncat/config/languages.toml only have ~50 languages. However, nvim-treesitter provides 134 languages. Is there any reason to not to provide extra languages such as cannot work?

There's no particular reason, feel free to make a PR adding more languages. The problem with just adding a language to the language.toml is that there will still be no highlighting until someone makes a stylesheet, which takes time and knowledge of the language, so I won't be adding many except for languages I use, otherwise they will be low quality highlights

The problem with just adding a language to the language.toml is that there will still be no highlighting until someone makes a stylesheet

I see. Is it possible to generate sytlesheet from https://github.com/nvim-treesitter/nvim-treesitter/tree/master/queries?

Hmm possibly, I'll take a look and see


Smart pairs are fooled by pairs that live inside strings

I have pear tree configured for smart pairs, and while having a pair inside a string, trying to press '(' and ')' inserts another closing pair:

Expected behavior - pear tree skips the enclosing pair, ignoring the opening pair inside the string.

Hello,
This is a potential enhancement that Pear Tree can handle. In the mean time, one workaround would be to disable pair matching within Strings using the not_in option in g:pear_tree_pairs (see :h pear-tree-rule-options). Example entry:
`'(': {'closer': ')', 'not_in': ['String']}`

This will result in Pear Tree ignoring that the one inside the string and skipping the closing parenthesis correctly.


MultiMC compatibility?

Is your feature request related to a problem?
Yes I'd like being able to switch account from MultiMC's accounts.json
Describe the solution you'd like.
Detect the .minecraft is actually a MultiMC instance and parse .....\accounts.json
Describe alternatives you've considered.
In-game account switcher but it hasn't worked for me
Agreements

[X] I have searched for and ensured there isn't already an open issue regarding this.
[X] I have ensured the feature I'm requesting isn't already in the latest supported mod version.

Other
No response

Will need to investigate the contents of this MultiMC's accounts.json to see what it contains.
I'm thinking of a new, fourth auth method that is only present if it detects the mod is running in a MultiMC context.

I would recommend also supporting PolyMC. You probably wouldn't have to do any extra work, but there is a small chance a file / directory might be named differently in PolyMC.

I use symbolic links between my MultiMC and PolyMC installs and can't recall having any issues, to give you an idea of how similar they are


Updating Sokol and Imgui

What would be the best path (if possible) to update Imgui and Sokol  and compile the resulting new imgui_app.cpp into new archive for linking?  Or is the amalgamation pretty well fixed to those branches of Sokol and Imgui?

Hi! it should be as easy as to pull the dependencies, and later run "make" on the main directory. I'm going to leave this issue open and update sokol and imgui to the latest version :)

That's what I was thinking, but when I pull in those and run make that goes fine, but I go to compile it as object file, I get errors using: g++ -c imgui_app.cpp -DSOKOL_GLCORE33, however, if I pull the repo using --recursively and run that command, it generates that obj file and I'm able to go on and get archive from it.
Since I typically just know enough to cause damage, I'm sure I was missing something.
Thanks for the help.

Attached is the output of errors that I got when running the above command to create an obj file.  If it helps.  Compiling on Linux Mint.
errors.txt


Entrypoint in Dockerfile will be automatically overridden by "/bin/sh -c"

Descriptions:
Entrypoint in Dockerfile will be automatically be overridden  by Java slave process, but CMD in Dockerfile will not be overridden.  I think this problem will block the users who want to adopt this plugin as no way to identify which executable should be run when a container is started from our images, and I tried to use Use custom docker command shell in Mesos Cloud section to work around it, but still fails, a defect has been tracking it for also year: https://github.com/jenkinsci/mesos-plugin/issues/157
Entrypoint: /bin/bash --login -- /entrypoint.sh
Java Slave process: /bin/sh -c 'java -DHUDSON_HOME=jenkins -server -Xmx640m -Xms16m -XX:+UseConcMarkSweepGC -Djava.net.preferIPv4Stack=true -jar ${MESOS_SANDBOX-.}/slave.jar -noReconnect -secret ... mesos-jenkins-do/slave-agent.jnlp
Expected (Shown by COMMAND via docker ps command):
"/bin/bash --login -- /entrypoint.sh /bin/sh -c 'java -DHUDSON_HOME=jenkins -server -Xmx640m -Xms16m -XX:+UseConcMarkSweepGC -Djava.net.preferIPv4Stack=true -jar ${MESOS_SANDBOX-.}/slave.jar -noReconnect -secret 4026fda6995da3083527505a05d92cadcb5e00eb0b477f0ff357097fadd59ae7 -jnlpUrl http://jenkins.xxx.net/computer/mesos-jenkins-09a5fb6724b44ed4bf10339c6aae4f1d-mesos-jenkins-do/slave-agent.jnlp'"
But in fact (Shown by COMMAND via docker ps command, the command "/bin/bash --login -- /entrypoint.sh" in Entrypoint override):
"/bin/sh -c 'java -DHUDSON_HOME=jenkins -server -Xmx640m -Xms16m -XX:+UseConcMarkSweepGC -Djava.net.preferIPv4Stack=true -jar ${MESOS_SANDBOX-.}/slave.jar -noReconnect -secret 4026fda6995da3083527505a05d92cadcb5e00eb0b477f0ff357097fadd59ae7 -jnlpUrl http://jenkins.xxx.net/computer/mesos-jenkins-09a5fb6724b44ed4bf10339c6aae4f1d-mesos-jenkins-do/slave-agent.jnlp'"

I found similar problem: https://github.com/mesosphere/marathon/issues/2373

have the same problem,  any update?

yes , I also have same problem :(

+1

+1

any progress?

+1


merge methods FlexboxHelper#calculateHorizontalFlexLines() and FlexboxHelper#calculateVerticalFlexLines()

calculateHorizontalFlexLines() and calculateVerticalFlexLines() have more than 100 lines.
They are mostly similar.
Tell me if you think it is a good idea to merge them.
I merged them into one method. I made helper methods.
There are a lot more similar methods like them you can merge
and basically refer to horizontal and vertical as one.
note: I didn't changed the logic behind the algorithm.

I signed it!

Do you mean OrientationHelper?

Sorry, yes I meant OrientationHelper.

As far as I know OrientationHelper uses RecyclerView.LayoutManager.
If there is a specific design I didn't consider I'd be happy to learn and implement it here.
What I did is I looked at FlexboxLayoutManager#getDecorationLengthMainAxis() and FlexboxLayoutManager#getDecorationLengthCrossAxis() and all the methods that use FlexboxLayoutManager#isMainAxisDirectionHorizontal() and I saw the consistency.
How would you recommend me to face OrientationHelper not working with ViewGroup?

Hi @Gavras,
Apologies for the belated reply.
After another consideration, it looks like it seems better not to use an OrientationHelper because it may be overkill.
So your current suggestion looks good overall.
But few suggestion, instead of adding isMainAxisHorizontal in the FlexboxHelper, could you add an method   to the FlexContainer interface and have two classes (FlexboxLayoutManager and FlexboxLayout) override the method? There should be already the same method in each of them.
Also I accidentally pushed the dev_recyclerview branch to incorporate the changes in master.
So could you apply your change on top of the current dev_recyclerview branch?
Thanks!

OK I moved the method to the interface.

Sorry I forgot the test files.
And I've also changed the documentation where you commented, sorry for that too, it was saying width and as we are talking about the main axis I had to change it. Now I hope it's clearer.

Sorry, I accidentally pushed the changes from another branch to here. I'll try to revert that and make another pull request after that.
The other branch was directing the issue with match_parent #196.
Also it deals with an issue that occurs while the first item in the line (not including the first line) has align item stretched and it becomes the size of the previous line instead of its own line.

Ok no worries, thanks for the clarification.

Ah also thanks for addressing the issue #196!!
Really appreciate it.

I really sometimes don't get git. I seem to not found a way to revert just that as it was apparently a local branch and I afraid to lose the changes.
Can you look at it anyway?
Combining the methods is not included in the last commit,
I addressed what you asked me.
The last commit is about match_parent,
I think the flexline member name mIndicesAlignSelfStretch is not suitable anymore as it holds indices with match parent in their cross axis, it should be named to something like mIndicesToStretch.
Sorry about the inconvenient, I know it's better to break various issues into pieces.
And thanks.

Hi @Gavras,
Apologies for the delay.

I really sometimes don't get git. I seem to not found a way to revert just that as it was apparently a local
branch and I afraid to lose the changes.
Can you look at it anyway?

Could you separate the two changes in different PRs?
Actually I'd like to merge each change separately so that it can be diffed easily and rolled back in case there is an issue.
If reverting the git commits is hard, you can send another PR for each change.
Thank you for your continuous effort! Really appreciate it.

I send PR for calculateFlexLines() method.
If I got it right after the other PR this will remain with just the relevant changes to match_parent.


[v3] remove chart animation

Animation of the charts gets weird after n entries.
This removes the animation

Thanks for the much needed fix.

It would be awesome to implement one of those animations https://github.com/chartjs/Chart.js/issues/4695 to push the data from right to left.


Add Db schema

This PR introduces the database schema as a visual diagram and a DBML file.
Changes

Added schema.png to src/resources/.data/.
Added schema.dbml to src/resources/.data/.
Updated README.md to include the database schema image.

I really like this idea!
Though I would much prefer that we programmatically generate it, rather than have to try to keep it consistent.
Is there a library that will convert json schema to dbml, which we can add as a build step to the package.json?

It makes sense to automate the process, but unfortunately, DBML is designed for SQL and doesn't have a JSON parser. I'm not sure if there is a visualizer available that can work with a JSON file

I'm just concerned that anything that's not programmatically generated will get out of date and will be a burden to keep up-to-date.
How about using something like this instead?
https://www.npmjs.com/package/@adobe/jsonschema2md


Update home.html

Replacing home video to give more visibility on how to report.

I will take a look at this in a few hours.

Just pushed a new version. Thanks for your effort.


fix(modal): Close modal on back button press

When the browsers back button is pressed, this returns the root's style
class back to normal.
Closes #AMLOS-650

:+1:

:+1:


Incorrect generation for private set properties

What is the problem?
Skie generates incorrect implementation for global property, and fails to build for iOS.
My 'linkPodDebugFrameworkIosSimulatorArm64' fails with:
build/skie/binaries/podDebugFramework/DEBUG/iosSimulatorArm64/swift/generated/Runtime/Runtime.LiveLiteralKt.swift:8:32: error: cannot assign to property: 'isLiveLiteralsEnabled' is a get-only property
Here is implementation from this file

public var isLiveLiteralsEnabled: Swift.Bool {
get {
return myApp.LiveLiteralKt.isLiveLiteralsEnabled
}
set(value) {
myApp.LiveLiteralKt.isLiveLiteralsEnabled = value
}
}

While LiveLiteral.kt (from Jetbrains Compose) looks like

@InternalComposeApi
@ComposeCompilerApi
var isLiveLiteralsEnabled: Boolean = false
private set

Kotlin version: 1.9.22
SKIE version: 0.6.1

Hi! I was able to reproduce this error, and it will likely be fixed in the next bug-fix release.
In the meantime, you can work around this problem by disabling the global wrapper for this property using the Gradle configuration:
skie {
    features {
        // Not sure if this is the right package name
        group("androidx.compose.runtime.internal.isLiveLiteralsEnabled") {
            FunctionInterop.FileScopeConversion.Enabled(true)
        }
    }
}

Oh, yeah, it should be "false". I was testing if it works and forgot to change it back :D I corrected the code in the previous comment.
No need to close this issue, I will close it after we have a proper fix.


Fix broken links

Thanks for doing this, you have now permission to write in the repository. Congratulations!


Interactivity API for Browser Mode

Clear and concise description of the problem
There are libraries that allow faking events in jsdom/happy-dom environments (e.g., @testing-library/user-event). They are required in Node.js runtime because there is no actual browser, only Web-compatible globals. In Browser Mode, we have access to an actual browser and providers have access to DevTools and Webdriver protocols that could be used to trigger actual events.
Suggested solution
The userEvent API is very well designed and works great with other @testing-library packages. Since we already decided to recommend testing-library in browser mode, I think we should provide our own userEvent implementation that uses DevTools or Webdriver protocol depending on the provider.
Alternative
No response
Additional context
For none provider, we can use the userEvent library directly.
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 request the same feature to avoid creating a duplicate.

If I am understanding this correctly, we cannot interact with our components in browser mode yet?

In the latest beta only the click is implemented. There will be a few more APIs from user event before the Vitest 2, but not all of them.
How you implement interaction in the meantime is up to you. You can still use Commands API to communicate with playwright/webdriverio, for example. Or you can use userEvent library directly relying on fake events for now.

v2.0.0-beta.11 should have this API implemented (#5882):

userEvent.click
userEvent.dblClick
userEvent.type (supports user-event syntax like {selectall})
userEvent.clear
userEvent.tab
userEvent.keyboard
userEvent.hover
userEvent.unhover
userEvent.selectOptions

Note all options are supported though.
Not implemented APIs (yet):

userEvent.tripleClick
userEvent.upload
userEvent.pointer
userEvent.copy
userEvent.cut
userEvent.paste

Also it has some non-userEvent APIs:

userEvent.fill to clear the input and type the value
userEvent.dragAndDrop for universal support for drag and drop (not supported in preview)

I wasn't sure if it was worth opening a new issue or adding to this one so apologies if this is in the wrong place. V9 of  Webdriver IO seems to break some of these API's.

userEvent.upload is implemented in https://github.com/vitest-dev/vitest/pull/6442 and will be available in Vitest 2.1-beta.7

Hi, I'm having hard time figuring out the way how userEvent.keyboard works on arrow keys. As per documentation state that I can use user-event keyboard syntax but apparently it's not working when I try something like these
userEvent.keyboard('{ArrowRight}') // OR
userEvent.keyboard('{ArrowLeft}')

To mimic the arrow left and right on the keyboard. If I understanding correctly that {...} is for keydown and {/...} is for keyup. Or if I want to use KeyboardEvent.code I could use [...] like this
userEvent.keyboard('[ArrowRight]') // OR
userEvent.keyboard('[ArrowLeft]')

but still no luck, instead I had to use :
document.dispatchEvent(new KeyboardEvent('keyup', { key: 'ArrowRight' })) // OR
document.dispatchEvent(new KeyboardEvent('keyup', { key: 'ArrowLeft' }))

to make it work. Is that expected behaviour or am I doing it wrong?
for context I'm using webdriverio provider.

@feryardiant Regarding special key support, probably it doesn't work like documentation says currently. For playwright provider, key mentioned in their doc https://playwright.dev/docs/api/class-keyboard should work. For webdriverio, I'm not sure but probably this https://webdriver.io/docs/api/browser/keys/.
In general, webdriverio also has some issues with click event (or any interaction) due to https://github.com/webdriverio/webdriverio/issues/13724.
If you have a concrete issue and reproduction, please feel free to open a separate issue instead of commenting it here. That would be easier for us to track and decide on what should work and not.

Hi @hi-ogawa,

For playwright provider, key mentioned in their doc https://playwright.dev/docs/api/class-keyboard should work.

Can confirm that every userEvent methods works really well with playwright provider, but not with webdriverio

If you have a concrete issue and reproduction, please feel free to open a separate issue instead of commenting it here.

Yes, you're right. Thanks for the reminder


superagent.get waiting for the page to fully load get response

superagent.get url, i want waiting for the page to fully load then get response,how to do.

Not sure what you mean by "wait for page to fully load".  I think you may want to use something like https://github.com/GoogleChrome/puppeteer for that.

superagent.get('https://test.com')
  .end(function (err, res) {
	// I want to get the content of the URL through superagent.get, but the page loads slowly and some DOM elements take seconds to display, res is not complete
	// Are there any settings that enable res to output res after the page corresponding to the URL is fully loaded?
    });
  });

No, you will need to use a tool like the one I linked for this.

ok,thx!


BUG: “sealos build” run out of memory

Which command or component
sealos build -f Dockerfile
The Description of the bug
I'm building cluster image with image list at images/shim/. Sealos ran out of memory while pulling a layer of 2.61G, and then killed by system.

When i use sealos pull to pull the image directly, it passed.

How to reproduce（pictures can be attached if necessary）

run sealos on a VM with 2C4G.
run sealos build with image layer larger than 2G.

Test Result

run out of memory while pulling layer larger than 2G

What you expected to happen
secucessfully build cluster image
Operating environment
RHEL-8.3.0

https://github.com/labring/sealos/blob/main/pkg/registry/save.go#L356

come,come,come

@luanshaotong @shy-Xu is the author of registry module,  great for solving this problem.

@luanshaotong @shy-Xu is the author of registry module, great for solving this problem.
Aha, fanux is my instructor, this module is under his guidance.

@luanshaotong @shy-Xu is the author of registry module, great for solving this problem.

Aha, fanux is my instructor, this module is under his guidance.

Nice. And i have a new problem waiting for your help  #1314  233333.

@shy-Xu   https://github.com/labring/sealos/issues/1314 Fix it together ？

@shy-Xu #1314 Fix it together ？

My pleasure

what's the progress about this?


WIP:add judgment

add judgment for error

Coverage increased (+0.02%) to 45.716% when pulling<PHONE_NUMBER>50e07da54b8dbfbc9f6713c0113b70 on caiyixiang:addJudgment into fb8e2d7373a940a865bb9235ae363e40138bc11e on kubernetes:master.

This change is

Coverage increased (+0.002%) to 45.351% when pulling 248f6ade753387cf26eba47a5cb522ad69e4e4b7 on caiyixiang:addJudgment into 1822537fc62990d85a6b23adee93212275369e6a on kubernetes:master.

Coverage decreased (-0.02%) to 45.333% when pulling 248f6ade753387cf26eba47a5cb522ad69e4e4b7 on caiyixiang:addJudgment into 1822537fc62990d85a6b23adee93212275369e6a on kubernetes:master.

/lgtm


Bootstrap and theme styling rule

One of the reasons I like this theme is Bootstrap. It allows to use existing Bootstrap components without creating another CSS framework.
But then you also need to add some CSS for the theme and inevitably break/change Bootstrap CSS. Which is not nice because it is not Bootstrap any more.
I think we could minimize the damage by agreeing to not change global CSS rules, e.g. this is not okay
h1,
h2,
h3,
h4,
h5 {
  margin: 1rem 0 1.5rem;
  clear: both;
}

And instead it should be:
.header {}
.main {
  h1,
  h2,
  h3,
  h4,
  h5 {
    margin: 1rem 0 1.5rem;
    clear: both;
  }
}
.sidebar {}
.footer {}

That requires repeating some rules for different sections, but then we can change CSS for different sections without affecting other sections (and keep Bootstrap unaffected). What do you think?

Sounds good. Are you willing to submit a PR?

Yes, I would like to try but the problem is that it is a big change and it would be nice if I can experiment with a more minimalistic approach to design while I am re-organizing the CSS. Conceptually, what do you think about this:

Basically it just resets the Bootstrap card to defaults and removes border with border-0...

It looks much cleaner. But I prefer to use the previous style that contains border and shadow, which makes it looks like material design.

Well, I am not a designer, but I've noticed that borders make sense when you have many different elements on the page and page looks like a mess. So you create some order by grouping elements in containers.
Shadows are used to elevate some elements so they stand out and some elements / parts of the page look more important than others. Having the same shadow on all elements does not have any purpose except just having a shadow :)
But I guess it is not a big deal and we can keep shadows...


Current GDScript function detection for coloring is quite poor

It seems to only color names that have a ( just afterwards without any spaces. So my_func() is highlighted, but my_func () is not. It is the same with function declarations and signals (which IMO could have a different color, even if the default were equal to the function color).
Maybe the color guy @Paulb23 want to look at this.

Ah Github messed up again, fixed by #5487


[Monitor] az monitor: Add new subgroup account to support managing monitor workspace

Related command

az monitor account
Description

Azure CLI development for Azure Monitor Workspace
close https://github.com/Azure/azure-cli/issues/25697
az monitor account delete error: cannot import name 'Request' from partially initialized module 'requests.models https://github.com/Azure/azure-cli/issues/26272
aaz model: https://github.com/Azure/aaz/pull/190
Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change
[Component Name 2] az command b: Add some customer-facing feature

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

Monitor


Update instructions links not working as expected

Plugins instructions contain link to update instructions. However, those links are leading to 404 for all plugins.

Thanks for noticing this @Irma12 . I believe I have found the problem.

Awesome, that was very quick @dtuite  😄


Always show context menu on right click

Closes #2235
Demo
https://user-images.githubusercontent.com/37993418/189105077-3db6d7ee-fbdd-4ff6-8230-cf5f4546d4f2.mov
https://user-images.githubusercontent.com/37993418/189105875-0c91bbaf-a9c1-4051-bc5a-db2f0d889985.mov
(this was painful)

Maybe adding a few tests would help.

Maybe adding a few tests would help.

:sad_face: ... ya got me [insert meme]
I'll write some today.


kubefedctl join failing when joining eks clusters (endpoint validation)

What happened: Tried joining cluster to itself and failed with dns related endpoint validation error
What you expected to happen: Expected cluster to join successfully
How to reproduce it (as minimally and precisely as possible):
$ kubefedctl join k7.xxx.xxx.xx --host-cluster-context k7.xxx.xxx.xx --v=2
I0910 11:35:06.333046   52852 join.go:147] Defaulting cluster context to joining cluster name k7.xxx.xxx.xx
I0910 11:35:06.333201   52852 join.go:159] Args and flags: name k7.xxx.xxx.xx, host: k7.xxx.xxx.xx, host-system-namespace: kube-federation-system, kubeconfig: , cluster-context: k7.xxx.xxx.xx, secret-name: , dry-run: false
I0910 11:35:10.507365   52852 join.go:238] Performing preflight checks.
I0910 11:35:10.553706   52852 join.go:301] Service account k7.xxx.xxx.xx-k7.xxx.xxx.xx already exists in joining cluster k7.xxx.xxx.xx
I0910 11:35:10.553744   52852 join.go:244] Creating kube-federation-system namespace in joining cluster
I0910 11:35:10.603165   52852 join.go:377] Already existing kube-federation-system namespace
I0910 11:35:10.603204   52852 join.go:252] Created kube-federation-system namespace in joining cluster
I0910 11:35:10.603223   52852 join.go:398] Creating service account in joining cluster: k7.xxx.xxx.xx
I0910 11:35:10.657832   52852 join.go:408] Created service account: k7.xxx.xxx.xx-k7.xxx.xxx.xx in joining cluster: k7.xxx.xxx.xx
I0910 11:35:10.657865   52852 join.go:436] Creating cluster role and binding for service account: k7.xxx.xxx.xx-k7.xxx.xxx.xx in joining cluster: k7.xxx.xxx.xx
I0910 11:35:10.848432   52852 join.go:445] Created cluster role and binding for service account: k7.xxx.xxx.xx-k7.xxx.xxx.xx in joining cluster: k7.xxx.xxx.xx
I0910 11:35:10.848480   52852 join.go:804] Creating cluster credentials secret in host cluster
I0910 11:35:10.944478   52852 join.go:830] Using secret named: k7.xxx.xxx.xx-k7.xxx.xxx.xx-token-bnhfz
I0910 11:35:11.009732   52852 join.go:873] Created secret in host cluster named: k7.xxx.xxx.xx-h4lrr
I0910 11:35:11.109737   52852 join.go:349] Could not create federated cluster k7.xxx.xxx.xx due to admission webhook "kubefedclusters.core.kubefed.io" denied the request: spec.apiEndpoint: Invalid value: "689DFHSKWEL7DE22.sk1.us-east-1.eks.amazonaws.com": must be a valid IP address, (e.g. <IP_ADDRESS>); or a DNS-1123 subdomain must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character (e.g. 'example.com', regex used for validation is '[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*')
I0910 11:35:11.109786   52852 join.go:276] Failed to create federated cluster resource: admission webhook "kubefedclusters.core.kubefed.io" denied the request: spec.apiEndpoint: Invalid value: "689DFHSKWEL7DE22.sk1.us-east-1.eks.amazonaws.com": must be a valid IP address, (e.g. <IP_ADDRESS>); or a DNS-1123 subdomain must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character (e.g. 'example.com', regex used for validation is '[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*')
F0910 11:35:11.109968   52852 join.go:126] Error: admission webhook "kubefedclusters.core.kubefed.io" denied the request: spec.apiEndpoint: Invalid value: "689DFHSKWEL7DE22.sk1.us-east-1.eks.amazonaws.com": must be a valid IP address, (e.g. <IP_ADDRESS>); or a DNS-1123 subdomain must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character (e.g. 'example.com', regex used for validation is '[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*')

Anything else we need to know?:
Environment:

Kubernetes version (use kubectl version) : 1.13
KubeFed version: 0.1.0-rc6
Scope of installation (namespaced or cluster): cluster
Others

/kind bug

cc: @font


Plumb new Roslyn tokenizer feature through tooling

The new feature to use the Roslyn tokenizer (see https://github.com/dotnet/razor/pull/11086) currently has no effect in the IDE. We need to plumb the value from <Features> through tooling.

Already merged to main.


negative control type [MIXS:0001321]

New term details
Term name - negative control type
Term ID - MIXS:0001321
Structured comment name - neg_cont_type
Definition - Type of negative control.
Expected value - enumeration or text
Value syntax - [collection device control|collection tube control|DNA extraction blank control|PCR amplification control|swab control|syringe control] or {text}
Example -
Package(s) - negative control

Additional context
Add any other context about the new term here.

Related to #200 too.
This field seems to focus on the stage of a workflow or a bit of apparatus, while the positive one [clarified in today's CIG call, the definition is not clear] is expecting the name of the positive control used (if from a company) or some sort of textual description.
It would be wise to align the value types expected by these fields, and to clarify the definitions in both. Right now this risks some difficulties downstream.
Enumeration here may not be the best way, as the values are unbounded. Like the positive control field, I'd simply have this as textual, but leave some examples as indicated.
I'd go more for:
Term name - negative control type
Term ID - MIXS:0001321
Structured comment name - neg_cont_type
Definition - The substance or equipment used as a negative control in an investigation.
Expected value - text
Value syntax - {text}
Example - [distilled water|phosphate buffer|empty collection device|empty collection tube|DNA-free PCR mix|sterile swab |sterile syringe]
Package(s) - negative control

I agree with @only1chunts proposal, but we need confirmation from @josieburgin.

I have added the term with details below to the v6 CORE and set to "C" conditional mandatory for all checklists, with an occurence of "1".
Structured comment name - neg_cont_type
Term name - negative control type
Definition - Type of negative control
Expected value - enumeration or text
Value syntax - [collection device control|collection tube control|DNA extraction blank control|PCR amplification control|swab control|syringe control] or {text}
Term ID - MIXS:0001321

IF there are any changes requried to the above details please REOPEN this ticket (and tag me).
Term added to v6 spreadsheet and added to the change log


Match extension icon colors to base colors

Currently icons from extensions are displayed as a background svg file, and as a result their colors do not match with the icon's included in vscode. It would be nice to allow a way for the icons to match. There are two possible implementations that I can think of:

Inlining the contents of the svg, so that a CSS variable can be used.
Using the css filter property. This would require the user to specify the start and end colors so that vscode can calculate a suitable filter to use. This doesn't require extensions to change their code. However, it would have to be done per-extension.

The colors of the file icons are chosen by the current file icon theme. We currently don't know what a matching color would be.
We could pick the default text color, but also that might not match the file icon theme.
I think it's up to the languages to pick a light and dark icon that is unobtrusive and goes well with most themes. Also, the idea hope that that file icon themes that will continue to adopt more and more languages. We want user to continue to file issues against file con themes if an icon doesn't look good.
File icon themes that don't want default icons to show, can turn them off in their file icon theme definition file using showLanguageModeIcons.

I am refering to the editor action icons (eg. from gitlens), not file icons.

Icons can also be defined in icon fonts and then the icon will get the color of the label.
That's what Gitlens does:
Usage of an icon:
https://github.com/gitkraken/vscode-gitlens/blob/972cff4ac668a6af794995436e70d55454c5f855/package.json#L6644
Definition of the icon.
https://github.com/gitkraken/vscode-gitlens/blob/972cff4ac668a6af794995436e70d55454c5f855/package.json#L6725
That solves the problem. no?


authenticated calls using arbitrary cpi [poc and draft]

Still just poc - please check comments with NOTE: for discussion questions and findings.

Codecov Report
Attention: Patch coverage is 10.29412% with 61 lines in your changes missing coverage. Please review.

Project coverage is 8.97%. Comparing base (98bd5c3) to head (187472a).
Report is 1 commits behind head on main.

Files with missing lines
Patch %
Lines

programs/protocol-contracts-solana/src/lib.rs
1.96%
50 Missing :warning:

programs/callable-test/src/lib.rs
33.33%
6 Missing :warning:

programs/callable-test-2/src/lib.rs
37.50%
5 Missing :warning:

Additional details and impacted files
@@           Coverage Diff            @@
##            main     #38      +/-   ##
========================================
+ Coverage   8.60%   8.97%   +0.36%
========================================
  Files          1       3       +2
  Lines        244     312      +68
========================================
+ Hits          21      28       +7
- Misses       223     284      +61

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


feat(waiting): add error handling for errors while waiting

While using a custom cert pinnner calling completion(.failed(error)) will update the state with state waiting passing the cert error.
In this case we also should call the error handler.

What do you think about this?

Makes sense, I like it. Going to cut another version (to fix some bugs) before merging this since it is a breaking changing with the enum case change. Thanks for the PR!

@daltoniam Are there any updates on this?


protein-containing complex binding: pre-compose X complex binding terms or use extensions?

if we are precomponsing these (I think I saw some recently), I would like:
nuclear MIS12/MIND complex (GO:0000818) complex binding
standard definition
PMID:29180432

Presented at Cambridge GOC mtg on 11/4/19:
Agreed to no longer use pre-composed "x complex binding" terms but with/from field (and AE where required).

Rule implementations - ticket in progress
Obsoletion tickets: to be created (will be linked to rule ticket)
Annotation review ticket: to be created

Closing as new ticket will capture remaining tasks.


URL unable to parse/Bypass robots.txt

I have an https url that isn't able to parse. Using other methods, I've needed to bypass robots.txt, but it does not seem exist any setting for this in WKZombie?

Hi @hugolundin No, currently there's no such setting. What are you trying to accomplish? Maybe changing the user agent or adjusting the http headers might help?

I am trying to parse a website for some urls. It has worked fine using selenium with PhantomJS, and also with Mechanize in Python, but when I try doing it with WKZombie, the website loads until it logs "Unable to parse". The reason I thought about robots.txt was because Mechanize complained about it before I activated their setting to bypass it.
Do you have any suggestions in what way there are common to change user agent and/or the http headers? Thank you very much for your reply!


[mongodb] Support MongoDB incremental snapshot.

Is your feature request related to a problem? Please describe.
Introduce MongoDBSource implements FLIP-27 Source to support MongoDB parallel snapshot.

Closed #1662.


📝 Add "go-lanyard" to "Community Projects" section

No description provided.

Thank you! Could you move this project to the bottom of the projects list? It's on a first-come, first-serve basis.

Sorry man my bad :)


Better invariant

Este is using clone of Facebook invariant, but it should be disabled for production out of the box.
https://github.com/zertosh/invariant/issues/15

Closing for inactivity. Also, invariants add very small addition to complete build.


removed some old_div from pmagplotlib re issue#600

Thanks for doing this Anthony! I looked through the changes and spotted one place where old parentheses were left undeleted when removing old_div functions. Otherwise all looks ok to me. @Swanson-Hysell could you give this a look through before merging? There aren't so many old_divs in pmagplotlib. It will be good to have one more pair of eyes on the changes just in case.

Thanks for popping in and getting rid of these old_div()s @apivarunas! I pulled off a couple more stray parentheses and will got ahead and merge the pull request.


kotlin-native: update darwin hashes; fix build

the last version auto update https://github.com/NixOS/nixpkgs/pull/264833 only updated the linux x64 hash and neglected the 2 macos ones. the auto update will likely break again soon as the next version was released 5 days ago
this updates the other two hashes using the published  sha256 digests and converts them to an sri.
# aarch64 darwin
nix-hash --to-sri --type sha256 630e883bca63d02f571dfcd5b21728be4a050545c9dca8b1846a326c14452f65
# x64 darwin
nix-hash --to-sri --type sha256 9a70e2f1d3020f31ac74f743d5dc3860c07101fa3916fc0325553f7b0ef4cfd5

testing: build passed on x64 darwin
ZHF: #265948
https://hydra.nixos.org/build/240783888
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[x] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Priorities
Add a :+1: reaction to pull requests you find important.

Hi, thanks for the fix, I apologize for the issues caused since I should have looked into the diff before merging.
I haven't been using kotlin lately, would you be interested in adding yourself as a maintainer of this package? (You would be notified on automatic updates)

Hi, thanks for the fix, I apologize for the issues caused since I should have looked into the diff before merging.
I haven't been using kotlin lately, would you be interested in adding yourself as a maintainer of this package? (You would be notified on automatic updates)

no worries. i don't use kotlin either. i've just been fixing broken packages for the upcoming release. #265948

Thanks for the help with ZHF, merging as is then. :3


Use different service accounts for each deployment

This does not affect our current demo but makes it possible to later
demo service account based ACL using Istio auth.

Jenkins job istio/presubmit passed

Jenkins job istio/presubmit passed

Jenkins job istio/presubmit passed

Jenkins job istio/presubmit passed

whats the resolution on this?

Jenkins job istio/presubmit passed

closing until folks start looking at it again.


feedparser: keep 5.2.1 available for python-2.7

Motivation for this change
Fix python-2.7 packages that depend on feedparser (calibre-py2 being the case that interests me), as recorded in #106448
Things done

[X] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

please call the file 5.nix as only the major version is relevant here.

Result of nixpkgs-review pr 106457 run on x86_64-darwin 1

1 package built:

rawdog

Please disable tests for rawdog and add an pythonImportsCheck.
rawdog.log
136:Ran 0 tests in 0.000s


Allow the creation of k8s cluster on VBox VM with playbook

ansible-playbook -i inventory/simple_host playbook/k8s.yml

LGTM. Can you then merge it ? @geoand

I propose we so just that :)

PR merged


Try to workaround SDK synchronous counters not reported consistently.

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Codecov Report

Merging #124 (c22b02b) into main (e7dc6a7) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##               main     #124   +/-   ##
=========================================
  Coverage     73.91%   73.91%
  Complexity       15       15
=========================================
  Files             3        3
  Lines            46       46
  Branches          5        5
=========================================
  Hits             34       34
  Misses            8        8
  Partials          4        4

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 e7dc6a7...c22b02b. Read the comment docs.


Test URN subresource IDs

Currently any resources with multiple identifiers (e.g. iam role inline policies) have their identifiers concatenated on to the end of the URN. This needs formalising and testing to ensure it doesn't happen anywhere we don't want it to (e.g. where a single identifier is sufficient to uniquely identify the resource).

Handled in #64

Handled in #64

Proof that no resources with unique IDs will have multiple identifiers unless we set it up in custom resources:
 ~/.pyenv/versions/3.8.6/lib/python3.8/site-packages/boto3/data  find . -name "*.json" -exec cat {} \; | jq '.resources | to_entries[]  | select(.value.identifiers|length > 1) | .key ' | jq -s 'unique'
[
  "AccessKey",
  "AccessKeyPair",
  "Archive",
  "GroupPolicy",
  "Job",
  "Message",
  "Metric",
  "MfaDevice",
  "MultipartUpload",
  "MultipartUploadPart",
  "Notification",
  "Object",
  "ObjectAcl",
  "ObjectSummary",
  "ObjectVersion",
  "PolicyVersion",
  "RolePolicy",
  "Route",
  "SigningCertificate",
  "StackResource",
  "StackResourceSummary",
  "Tag",
  "UserPolicy",
  "Vault"
]

Proof that no resources with unique IDs will have multiple identifiers unless we set it up in custom resources:
 ~/.pyenv/versions/3.8.6/lib/python3.8/site-packages/boto3/data  find . -name "*.json" -exec cat {} \; | jq '.resources | to_entries[]  | select(.value.identifiers|length > 1) | .key ' | jq -s 'unique'
[
  "AccessKey",
  "AccessKeyPair",
  "Archive",
  "GroupPolicy",
  "Job",
  "Message",
  "Metric",
  "MfaDevice",
  "MultipartUpload",
  "MultipartUploadPart",
  "Notification",
  "Object",
  "ObjectAcl",
  "ObjectSummary",
  "ObjectVersion",
  "PolicyVersion",
  "RolePolicy",
  "Route",
  "SigningCertificate",
  "StackResource",
  "StackResourceSummary",
  "Tag",
  "UserPolicy",
  "Vault"
]


How to play a live stream video using the video element/shaka player

Hi,
I am trying to live stream a video as well as draw on top of it. When I start drawing, I want the video to pause. I achieve that by calling video.pause() where video is the video element in the html file. After drawing, when I let go of the mouse, I want the playback to resume from the last position. How do I achieve this in a live streaming video using shaka player? video.play() did not work.
Thanks,
Upanita

video.play() should work.  There's not another API.  What happens when you call this?  What is the return value of video.play()?  Are there any console logs from the player?