Incorrect handling of "Upload too big" response to pre_create hook

Describe the bug
When a pre_create hook is rejected due to being too large, tusd responds with a generic HTTP 500 causing my tus client to report to the user that the server is broken, rather than be able to discern that the problem really exists with the client's file being too large.
To Reproduce
Steps to reproduce the behavior:

Configure tusd to use hooks. My incantation looks like:

HOST="https://mysite.com/api/hooks";
$PATH/tusd/tusd_linux_amd64/tusd
-hooks-http $HOST
-disable-download
--upload-dir "$PATH/data/"

Configure $HOST to respond with either as follows if the size of the file being upload exceeds a specified limit. (EG: 100 MB)

HTTP_CODE: 413
RESPONSE_BODY: {"HTTPResponse":{"StatusCode":413,"Body":"{"message" => "The upload is too big"}","Header":{"Content-Type":"application/json"}},"RejectUpload":"true"}
HTTP_CODE: 507
RESPONSE BODY: {"HTTPResponse":{"StatusCode":507,"Body":"{"message" => "The upload is too big"}","Header":{"Content-Type":"application/json"}},"RejectUpload":"true"}

Look at the output of tusd:

2024/09/29 15:31:09.472325 level=INFO event=RequestIncoming method=POST path="" requestId=""
2024/09/29 15:31:09.474989 level=DEBUG event=HookInvocationStart type=pre-create id=""
2024/09/29 15:31:13.905467 level=ERROR event=HookInvocationError type=pre-create id="" error="unexpected response code from hook endpoint (507): {"HTTPResponse":{"StatusCode":507,"Body":"{\"message\" => \"The upload is too big\"}","Header":{"Content-Type":"application\/json"}},"RejectUpload":"true"}"
2024/09/29 15:31:13.905883 level=ERROR event=InternalServerError method=POST path="" requestId="" message="unexpected response code from hook endpoint (507): {"HTTPResponse":{"StatusCode":507,"Body":"{\"message\" => \"The upload is too big\"}","Header":{"Content-Type":"application\/json"}},"RejectUpload":"true"}"
2024/09/29 15:31:13.906239 level=INFO event=ResponseOutgoing method=POST path="" requestId="" status=500 body="ERR_INTERNAL_SERVER_ERROR: unexpected response code from hook endpoint (507): {"HTTPResponse":{"StatusCode":507,"Body":"{\"message\" => \"The upload is too big\"}","Header":{"Content-Type":"application\/json"}},"RejectUpload":"true"}\n"

See error returned to client. In my case it's:
processLoop Exception: Exception: ProtocolException: (500)
(which matches the last line of output from tusd)

Expected behavior
Tusd client should have access to HTTP codes with more information than just 500. If it's a size issue (as what I found in my case debugging a generic "Unexpected Error") then 413 or perhaps 507 would be appropriate.
Setup details
Please provide following details, if applicable to your situation:

Operating System:
Client: tus_client in Flutter on Android
tusd server: tusd version 2.4.0 CLI on AlmaLinux9
tusd_hooks server: AlmaLinux 8, PHP 8.3

Used tusd version: [can be obtained by running tusd -version] 2.4.0, Linux precompiled CLI binary, runing in usermode.

Used tusd data storage: [e.g. disk store, AWS S3, Google Cloud Storage] disk store, 31 GB free

Used tusd configuration: [what arguments are you using to invoke tusd?]
HOST="https://mysite.com/api/hooks";
$PATH/tusd/tusd_linux_amd64/tusd
-hooks-http $HOST
-disable-download
--upload-dir "$PATH/data/"

Used tus client library: [e.g. tus-js-client, tus-java-client, TUSKit, Uppy.js]
tus_client in Flutter on Android

A HTTP hook itself must always respond with a 2XX status code, even if the hook instructs tusd to respond with a non-2XX status code to the client. Any other status code is interpreted as a failure to execute the hook itself. Please read https://tus.github.io/tusd/advanced-topics/hooks/#responses for more detail on the responses for HTTP hooks.

Interesting, and that makes sense.

This issue can be closed.


Predicted Probabilities and Marginal Effects from structural models?

Hi all,
thanks for providing this great package and making the application of bias-adjusted LCA/LPA available as open source!
I was wondering if there is a possibility to calculate predicted probabilities or (average) marginal effects from the structural model. And if this is also possible based on the bootstrapped models so that there is information about the confidence in the estimates. The background is that I would like to obtain predicted probabilities for each structural variable for each class, as could easily be obtained with 'margins' or 'marginaleffects' in R or stata, for instance, following a multinomial logistic regression.
I appreciate any support!
Thanks
Bettina

Hello Bettina,
It depends on the distribution of your external variables. For models with binary or categorical distal outcomes, the structural parameters are already predicted probabilities (pis). These probabilities can be bootstrapped.
Here is a short tutorial showing how to bootstrap structural parameters, obtain multinomial regression coefficients (for models with covariates), and derive p-values from bootstrapped parameters: https://colab.research.google.com/drive/1oaofJ68eHjahSPNty75npBzws3JuAjPO?usp=sharing
Felix

Hi Felix,
thanks for your fast response! And amazing, I didn’t understand from the documentation that the pis are predicted probabilities. Bootstrapping etc. worked fine already.
Another quick question (I hope it’s ok to just continue this issue like this): do you know if a positive ll is something to worry about? From what I read in various forums it seems to be ok, but I’m still not quite sure.
Thanks again and best
Bettina

Hi Felix,
another question regarding the pis of categorial variables, say 'Cov' with four categories coded as binary indicators ('Cov1', 'Cov2', 'Cov3', 'Cov4') in the structural model: When I want to calculate 'classic logits' I leave out the reference category (e.g. Cov1) and calculate the pis for the remaining (Cov2-Cov4), as documented in your examples. As for predicted probabilities, I assume I would have to include binary variables for all categories of Cov (Cov1-Cov4), correct?
Many thanks
Bettina


Microsoft.Backup provider stuck in 'Registering' state

$ProviderNamespace = 'Microsoft.Backup'
do {
Register-AzureRmResourceProvider -ProviderNamespace $ProviderNamespace
$Status = Get-AzureRmResourceProvider -ProviderNamespace $ProviderNamespace
Start-Sleep -Seconds 15
} while ($Status.RegistrationState -ne 'Registered')
==>
ProviderNamespace : Microsoft.Backup
RegistrationState : Registering
ResourceTypes     : {BackupVault}
Locations         : {West US, East US, North Europe, West Europe...}
stuck like this for an hour..

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

ID: e50dfe50-c177-f976-753b-9fa689d20f92
Version Independent ID: 7f787259-8ce5-9ba6-8df7-58ab0b89dd5c
Content: Deploy and manage backups for Resource Manager-deployed VMs using PowerShell
Content Source: articles/backup/backup-azure-vms-automation.md
Service: backup
Product: unspecified
GitHub Login: @markgalioto
Microsoft Alias: markgal;trinadhk;pullabhk

@Sambsamb Thanks for the comment, Could you please post the question either on https://social.msdn.microsoft.com/forums/azure/en-US/home?forum=windowsazureonlinebackup or StackOverflow since this is not related to a document issue?
Thanks,
Adam

It appears the documentation is inaccurate after all. See this link ([https://social.msdn.microsoft.com/Forums/azure/en-US/008eed72-2030-48f7-9e6f-92097b119c3b/microsoftbackup-provider-stuck-in-registering-state?forum=windowsazureonlinebackup]) which suggests that "Microsoft.Backup" provider is no longer supported.


Fix link to docs.

sorry, I'd not noticed this.  As you'll've noticed I've done some reorganizing, could you update the patch please?


Posh-SSH version 3.1 is a normal release?

Dear
I was using posh-ssh just fine until a few weeks ago.
However, a build error suddenly occurred today and I checked and found that the error occurred in the posh-ssh package. As a result, it occurred while receiving the latest version, 3.1.
##[error]Cannot bind parameter 'Path' to the target. Exception setting "Path": "Cannot find path 'C:\Program Files\WindowsPowerShell\Modules\Posh-SSH\3.1\Assembly\Renci.SshNet.dll' because it does not exist."
The error appears to be caused by the presence of the Renci.SshNetDev.dll file rather than the Renci.SshNet.dll file in the 3.1 package.
I have a question here.

I haven't heard of a separate release on Github, but version 3.1 is posted in the Powershell Gallery.
I would like to know if that version is a normal release.

Its a normal release, will check what the error could be. I recommend for production to never pull the latest but tie it to a known tested versionSent from my iPhoneOn Oct 23, 2023, at 4:07 AM, ErsiaJin @.***> wrote:
Dear
I was using posh-ssh just fine until a few weeks ago.
However, a build error suddenly occurred today and I checked and found that the error occurred in the posh-ssh package. As a result, it occurred while receiving the latest version, 3.1.
##[error]Cannot bind parameter 'Path' to the target. Exception setting "Path": "Cannot find path 'C:\Program Files\WindowsPowerShell\Modules\Posh-SSH\3.1\Assembly\Renci.SshNet.dll' because it does not exist."
The error appears to have occurred because the Renci.SshNetDev.dll file exists in the 3.1 package.
I have a question here.
I haven't heard of a separate release on Github, but version 3.1 is posted in the Powershell Gallery.
I would like to know if that version is a normal release.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID: @.***>

What command is producing the path error? To try and replicate? I renamed the DLL and compiled against the renamed version due to problems on specific roles in Windows where MS ships a very old version of the library and causes conflicts. I have not updated the changelog or published a new release here due to time constraints.

Found the error, will fix and push a new version in a couple of minutes

Pushed 3.1.1 and unlisted 3.1. Please test


WIP - Update repo setup flow

Description
In going through the setup, I ran into an issue with running the prereqs check before setting local envvars via direnv allow. Specifically, files in the scripts/ dir weren't being recognized by the the prereqs script, and this was because the scripts/ path needed to be added to PATH (i.e. the line PATH_add ./scripts in .envrc).
This switches the order of having direnv allow come before prereqs so others can avoid running into this issue.
Also,  this adds an (automated) update of the table of contents, which looks like it was missing some elements.
Note: circleCI is failing due to access issues for my account - I'm still in the process of setting this up with infra, so this will be a WIP until that's done.
Code Review Verification Steps

[ ] Code follows the guidelines for Logging
[ ] The requirements listed in
Querying the Database Safely
have been satisfied.
Any new migrations/schema changes:

[ ] Follow our guidelines for zero-downtime deploys (see Zero-Downtime Deploys)
[ ] Have been communicated to #dp3-engineering
[ ] Secure migrations have been tested following the instructions in our docs

[ ] There are no aXe warnings for UI.
[ ] This works in Supported Browsers and their phone views (Chrome, Firefox, IE, Edge).
[ ] Tested in the Experimental environment (for changes to containers, app startup, or connection to data stores)
[ ] User facing changes have been reviewed by design.
[ ] Request review from a member of a different team.
[ ] Have the Jira acceptance criteria been met for this change?

References

Jira story for this change
this article explains more about the approach used.

Screenshots
If this PR makes visible UI changes, an image of the finished UI can help reviewers and casual
observers understand the context of the changes. A before image is optional and
can be included at the submitter's discretion.
Consider using an animated image to show an entire workflow instead of using multiple images. You may want to use GIPHY CAPTURE for this! 📸
Please frame screenshots to show enough useful context but also highlight the affected regions.

Warnings

:warning:

Please include the Jira ID at the start of the title with the format MB-123 or [MB-123]

  Generated by :no_entry_sign: dangerJS against 8e2cca03e8373169184b5124c359d5950b2a1d04


Does not work: The style on this component requires your app theme to be Theme.MaterialComponents

Describe the bug
Adding the CardForm gives
The style on this component requires your app theme to be Theme.MaterialComponents

Smartphone (please complete the following information):

Device: Android 11 emulator
OS: Windows 10

what did you do to fix this?
i still the error making the android crash (works fine in emulator for me but users have crashes on the cardForm)
using expo managed here

what did you do to fix this? i still the error making the android crash (works fine in emulator for me but users have crashes on the cardForm)

Don't know about managed, but for bare RN just replace with<style name="AppTheme" parent="Theme.MaterialComponents.DayNight.NoActionBar"> inside res/values/styles.xml
Maybe this will work for you (not tried though): https://chafikgharbi.com/expo-android-manifest/

@wcastand did you manage to make it work with the managed flow? Expo Prebuild always creates a new AppTheme...
I'm not so much of an android developer myself, but how can we tweak the android manifest to set our theme @talaikis?

added this into app.config.js:
{
  plugins: ['./android-material.plugins.js'],
  [...],
}

// android-material.plugins.js
const { withAndroidStyles } = require('@expo/config-plugins');

module.exports = function androidStyles(config) {
	return withAndroidStyles(config, async config => {
		config.modResults.resources.style = config.modResults.resources.style.map(s => {
			if (s['$'] && s['$'].name === 'AppTheme') {
				return {
					...s,
					['$']: {
						name: 'AppTheme',
						parent: 'Theme.MaterialComponents.DayNight.NoActionBar',
					},
				};
			}
			return s;
		});

		return config;
	});
};


Black video view on both device and laptop

Describe the bug
One or both of the video vies are black when making the call. It works occasionally, but it should be reliable.
To Reproduce
Steps to reproduce the behavior:

Deploy app
Start call from laptop
Join from phone
One or both screens are black. If not from start it happens when switching camera.

Expected behavior
Expected both video views to work smooth.
Screenshots
Here is what I see on laptop:

Here is what I see on iPhone:

Desktop (please complete the following information):

OS laptop: Pop OS (linux)
Version: "20.10"
Browser: Chrome

Smartphone (please complete the following information):

IOS software version: 14.4.2
Safari

Logs
I see some

Failed to load resource: net::ERR_BLOCKED_BY_CLIENT

on client in browser logs.

Thanks for sharing this issue. Will be looking into this!

While I am following up with the calling team I wanted to share this page. It looks like we have specified compatibility specifically for Ubuntu (Linux)
https://docs.microsoft.com/en-us/azure/communication-services/concepts/voice-video-calling/calling-sdk-features#calling-client-library-browser-support

@mastoj thank you for reporting, as @alkwa-msft mentioned , Pop OS is not on our support list, I'd still like to look at this issue
can you please
Capture call.id - To instrument your code to capture call.id ( https://docs.microsoft.com/en-us/azure/communication-services/concepts/troubleshooting-info?tabs=csharp%2Cjavascript%2Cdotnet#access-your-call-id )
Capture full verbose log - Instrument your code to capture full log https://docs.microsoft.com/en-us/azure/communication-services/concepts/troubleshooting-info?tabs=csharp%2Cjavascript%2Cdotnet#enable-and-access-call-logs

repro scenario ( when you see black video frame )
hangup the call normally on both sides, don't close applications on either of side so our internal metrics will be sent out

Reply here with 'call.id' you've captured and send logs to<EMAIL_ADDRESS>and mention this GH issue #
Follow up question - does this happen if you use same iPhone/Safari on one side but on the other e.g. MacOs/Safari or Windows/Edge or Chrome instead of Pop/Chrome ?

I’ll get on it as soon as I have time. Pop is basically based on Ubuntu, so the underlying bits should be the same as Ubuntu.

Closing this issue. It sounds like we are in a slightly unsupported area. If there are additional issues please feel free to open a ticket here or https://github.com/Azure/Communication/issues


Update JQuery and JQuery-UI versions

Closes #5543
What's Changed

Updated jquery to version 3.7.1 and jquery-ui to 1.13.2.
Screenshots

TODO

[x] Explanation of Change(s)
[x] Added change log fragment(s) (for more information see the documentation)
[ ] Attached Screenshots, Payload Example
[ ] Unit, Integration Tests
[ ] Documentation Updates (when adding/changing features)
[ ] Example App Updates (when adding/changing features)
[ ] Outline Remaining Work, Constraints from Design

Aw crud - this should have gone into develop not next. I'll open a new PR.


Redaction App - "No Flag" Filter Option

As an IAO user
I want to be able to filter the pages in the redaction app to those with no flags
so that I can more easily complete pages that still need actioning

Assumptions & Scope
This is from feedback we received during our super user usability testing sessions. This is a critical piece of feedback that should be addressed to help make our users time more manageable, especially on larger FOI packages.
What is IN scope?
Adding an additional page flag filter
What is NOT in scope?
No changes to existing page flags/functionality
Acceptance Criteria
Scenario 1: Filter to No Flag

GIVEN an IAO user is on the redaction application's left-hand nav panel
WHEN they click on the 'No Flag' filter
THEN the pages displayed in the panel will only show pages that do NOT have a redaction flag.

Scenario 2: De-Activate No Flag Filter

GIVEN an IAO user has the no flag filter active
WHEN they click on the 'No Flag' filter
THEN the filter will clear
AND all pages will display again

Scenario 3: "No Flag" Flag - not included in completion or redline/response package

GIVEN a records package has multiple pages with flags
WHEN there are pages unflagged
THEN they will not contribute to % complete
AND redline or response package PDF cannot be created

Dependencies? What is the impact of this dependency? (If so, link dependency in the ticket, make it visible in a team´s backlog)
Validation Rules? (If yes, list here)
Design
@xxx - please link the Design here
Definition of Ready

[ ] Is there a well articulated User Story?
[ ] Is there Acceptance Criteria that covers all scenarios (happy/sad paths)?
[ ] If there is a user interface, is there a design?
[ ] Does the user story need user research/validation?
[ ] Does this User Story needs stakeholder approval?
[ ] Design / Solution accepted by Product Owner
[ ] Is this user story small enough to be completed in a Sprint? Should it be split?
[ ] Are the dependencies known/ understood? (technical, business, regulatory/policy)
[ ] Has the story been estimated?

Definition of Done

[ ] Passes developer unit tests
[ ] Passes peer code review
[ ] If there's a user interface, passes UX assurance
[ ] Passes QA of Acceptance Criteria with verification in Dev and Test
[ ] Confirm Test cases built and succeeding
[ ] No regression test failures
[ ] Test coverage acceptable by Product Owner
[ ] Ticket ready to be merged to master or story branch
[ ] Developer to list Config changes/ Update documents and designs
[ ] Can be demoed in Sprint Review
[ ] Tagged as part of a Release
[ ] Feature flagged if required
[ ] Change Management activities done?

No flag filter per feedback from super user session, may need a quick icon design update.
cc @JHarrietha-AOT @KyEggleston @lmullane

Assumption is that on the back-end technically this will be a new flag even if there is no visible flag (i.e. icon) on the front-end.
If that is technically true, will need to ensure any pages that have this non-flag flag are never included in the redline or response package.

added scenario 3, even if unnecessary, to ensure nothing funny happens based on your comment Loren

@sumathi-thirumani-aot tagging you for icon choice for the filter - https://fontawesome.com/icons/exclamation?f=classic&s=solid
Let me know if you have any other questions

Thanks for your good work, @sumathi-thirumani-aot
All AC passed.


Move motsu to its own repo

What is the feature you would like to see?
It's easier for external contributions and keeping things more organized if we move motsu to a new stylus-test-helpers repository and publish the crate from there.
We might eventually do the same for e2e if there's enough demand.
Contribution Guidelines

[X] I agree to follow this project's Contribution Guidelines

i have been praying for this


ComposeRuntimeError when using assertThrows() in Composable tests

Describe the bug
I've created rememberMyState() util function. This is a composable function that uses the coroutine scope and a composition local variable. It initializes a state, remembers it and returns the created state.
Looks like something well-established in Compose world. If my function can't initialize, it throws. And I wanted to test this scenario with Compose test lib (compose.desktop.uiTestJUnit4).
The test code looks like the following:
    @Test
    fun testFails() {
        rule.setContent {
            val exception = assertThrows<IllegalStateException> {
                val state = rememberMyState()
            }
            val expectedMsg = "Couldn't initialize something ...."
            exception.message shouldStartWith expectedMsg
        }
    }

Running of this test leads to the following exception:

androidx.compose.runtime.ComposeRuntimeError: Compose Runtime internal error. Unexpected or incorrect use of the Compose internal runtime API (Start/end imbalance). Please report to Google or use https://goo.gle/compose-feedback

Full stack trace
androidx.compose.runtime.ComposeRuntimeError: Compose Runtime internal error. Unexpected or incorrect use of the Compose internal runtime API (Start/end imbalance). Please report to Google or use https://goo.gle/compose-feedback
	at androidx.compose.runtime.ComposerKt.composeRuntimeError(Composer.kt:4558)
	at androidx.compose.runtime.ComposerImpl.finalizeCompose(Composer.kt:4744)
	at androidx.compose.runtime.ComposerImpl.endRoot(Composer.kt:1457)
	at androidx.compose.runtime.ComposerImpl.doCompose(Composer.kt:3356)
	at androidx.compose.runtime.ComposerImpl.composeContent$runtime(Composer.kt:3274)
	at androidx.compose.runtime.CompositionImpl.composeContent(Composition.kt:588)
	at androidx.compose.runtime.Recomposer.composeInitial$runtime(Recomposer.kt:1013)
	at androidx.compose.runtime.CompositionImpl.setContent(Composition.kt:520)
	at androidx.compose.ui.platform.Wrapper_skikoKt.setContent(Wrapper.skiko.kt:46)
	at androidx.compose.ui.scene.MultiLayerComposeSceneImpl.createComposition(MultiLayerComposeScene.skiko.kt:201)
	at androidx.compose.ui.scene.BaseComposeScene.setContent(BaseComposeScene.skiko.kt:137)
	at androidx.compose.ui.test.SkikoComposeUiTest$setContent$1.invoke(ComposeUiTest.skikoMain.kt:287)
	at androidx.compose.ui.test.SkikoComposeUiTest$setContent$1.invoke(ComposeUiTest.skikoMain.kt:286)
	at androidx.compose.ui.test.junit4.DesktopSynchronization_desktopKt.runOnUiThread$lambda$0(DesktopSynchronization.desktop.kt:32)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:303)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

Versions

Kotlin version*: 1.9.20
Compose Multiplatform version*: 1.6.0-dev1334
OS version(s)* (required for Desktop and iOS issues): macOS
OS architecture (x86 or arm64): x86
JDK (for desktop issues): openjdk 17.0.9 LTS

Expected behavior
The test can use assertThrows assertions.
As far as I understand, It is illegal to return and throw in Compose functions that emit UI (name starts with an uppercase letter). But it seems OK for util composable functions (name starts with a lowercase letter).

Long story short: Try catch is not supported around composable function invocations.
assertThrows here just hides the real intent from the compiler, so I'd expect here that it should not compile at all.

It is illegal to return and throw in Compose functions that emit UI (name starts with an uppercase letter). But it seems OK for util composable functions (name starts with a lowercase letter).

It doesn't really matter if it's "util" or "ui", since the root of it is the ability to be called independently during recomposition. BTW return a value from compose function is a valid scenario.

To be honest, I'm a bit unclear with this.

In general, return and throw are both valid within a composable?
try-catch is invalid. Thus, we can't test throw scenario because composables are tested within another composable (rule.setContent { ... })?

If (1) is true, then this is unusual that a valid scenario can't be tested. Is this a well-known restriction in Compose testing?

No, in general throwing exceptions is invalid inside composable function.
Yes. But it's not about testing, it's about compose runtime - you cannot catch what you are throwing because composable functions might be called independently during recomposition. Also, please note that this  try/catch restriction is about wrapping composable functions, but you still can use it around regular function calls inside composable function.

@MatkovIvan got it. Thank you!

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


Works section

Linters setup & install

My personal portfolio

Added & styled works section
Added readme file
Added index.html
Added style.css


Would love ability to zoom in/out

Most apps I use allow zooming in/out with pressing cmd +/-.
I would love to do the same in this app.

Unfortunately this doesn't seem to be possible right now with Tauri: https://github.com/tauri-apps/tauri/issues/3310


Add a streamlit interface to Wizard for anomaly detection

Rough proposal

[x] In the Wizard, there is a page for anomaly detection
[ ] The page should present you with a list of all changed grapher indicators

It should read from local disk what indicators are upgrades of other indicators
You may optionally ask about any arbitrary ETL path for a grapher indicator

[x] You click "Detect all anomalies"
[x] It begins fetches data from the S3 API and finds things whilst you wait

It should be interactive speed, i.e. take less than one minute
If an indicator is an upgrade, it also detects within the context of the previous indicator
(optional) It would be dreamy if they appear one by one whilst you wait

[x] The anomaly detector tries to return only the few "most important" anomalies
[x] It stores them in some YAML file or SQLite DB; they're still there if you come back later
[x] It provides a one-click link for any anomaly that takes you to the indicator (either in a chart, or in the admin)
[x] There is a button to regenerate them all
[ ] There is a button to delete them all
[x] They are ephemeral: when you merge your branch, and your staging server dies, they disappear

But you can still manually add something important to "What you should know about this indicator" for its data page

Some things that we may add in the future:

Hiding anomalies

Each anomaly would have a button "hide anomaly" so that this anomaly is no longer shown
This should be done in sync with the filter-panel. A possible solution here is to add a new section to the filter pane which works as a st.popover. (idea below)

AI summary

Optimise how we handle the summaries to avoid unnecessary GPT calls.

Checksum detection

We should be able to infer if the anomalies in cache are out of sync (maybe using dataset checksums?)

@pabloarosado @Marigold I'll close this for now, since we released a first version of this already.
We can track improvements in https://github.com/owid/etl/issues/3436


feat: 🎸 add a simple yet effective baseline STID

Paper:

Spatial-Temporal Identity: A Simple yet Effective Baseline for Multivariate Time Series Forecasting

Link:

https://arxiv.org/abs/2208.05233

Official Code:

https://github.com/zezhishao/STID
https://github.com/zezhishao/BasicTS

Thanks for your suggestion, and we will consider this.


Tag key/value matching in filter and advfilter

Case sensitivity: In general, case sensitivity of something should follow the case sensitivity of the real world entity it represents e.g., as person names are not case-sensitive in the real world, they shouldn't be case-sensitive in the app either. The same applies for search keywords. Incorrect case sensitivity can be considered a FeatureFlaw

Since tags represent some miscellaneous information that might need to be compared between different contacts, it could be argued that they should not be case sensitive – for instance, the tag 'friend' and 'Friend' would be the same. Hence, filter and advfilter could ignore cases for filtering by tags.

Same issue


new method: Token.getExpirationDate()

closes #https://github.com/SAP/cloud-security-xsuaa-integration/issues/68

@mwdb
can you please perform a review?


End time for new instance TimePickerDialog

Maybe you would make and "end time" in newInstance TimePickerDialog?

+1
It was recently done for the Date picker, it should be easy to implement it for the Time picker.

See #37

Any update about this?

Maybe it's easier to simply create a method "setEndTime" like the one that already exists for :
public void setStartTime(int hourOfDay, int minute)


"Course Grade" Field Empty in Student View, Despite GB Settings Options

When the "Display final course grade to students" checkbox is selected in Settings and corresponding grade display options are chosen, nothing is displaying in the student's view.
For the short term, the letter grade + points should display in this field when the "display" checkbox is selected.
Longer term, we can get the display options in as they are outlined in issue #1367 (mockup in comment dated October 15).

The problem here is that there is a call to isCourseGradeVisible which is not supported for students and will always return false. It makes use of roles and permissions, however we can now flesh this out for students has we have the settings available.

Confirmed.

Hi @steveswinsburg ,
While the letter grade + percentage is showing up for students now when the "display final course grade to students" checkbox is selected, it still isn't reflecting the options available - it will not, for example, only show percentage or letter grade, and is not reflecting points. We may want to re-open #1367 if we want to hook that last bit up later.


Parse Error On Install

Describe the bug
Installing this via Godot's AssetLib tab, it immediately gives this error:
modules/gdscript/gdscript.cpp:2788 - Failed to load script "res://addons/turnity/turn_manager.gd" with error "Parse error". (User)
To Reproduce
Steps to reproduce the behavior:

Go to the AssetLib tab in Godot
Search for Turnity and click to open the Download window
Download the asset into the project's root folder
See error in Output window

Expected behavior
Ability to add Turnity nodes
Screenshots

Desktop (please complete the following information):

OS: MacOS Sonoma 14.2.1
Godot 4.2.1 stable

Additional context
I've tried deleting the .godot folder and reloading the app. I've also tried creating a new empty project.

Closing issue. I was unaware I needed to go into the Project Settings and manually enable the plugin.

Definitely wishing you the best of luck, and thank you very much for publishing this! I'm still very new myself to game dev and am trying to learn as much as I can about Godot.


Fix speculative devirtualization to correctly use casted value

We used to emit this:
  checked_cast_br [exact] %0 : $Foo to $Bar, bb1, bb2

bb1(%1 : $Bar):
  %2 = unchecked_ref_cast %0 : $Foo to %1 : $Bar
  apply ...(..., %2)
  br ...

bb2:
  ...

This is not ownership SIL-safe, because we're re-using the original
operand, which will have already been consumed at that point.
The more immediate problem here is that this is actually not safe
when combined with other optimizations. Suppose that after the
speculative devirtualization, our function is inlined into another
function where the operand was an upcast. Now we have this code:
  %0 = upcast ...
  checked_cast_br [exact] %0 : $Foo to $Bar, bb1, bb2

bb1(%1 : $Bar):
  %2 = unchecked_ref_cast %0 : $Foo to %1 : $Bar
  apply ...(..., %2)
  br ...

bb2:
  ...

The SILCombiner will simplify the unchecked_ref_cast of the upcast
into an unchecked_ref_cast of the upcast's original operand. At
this point, we have an unchecked_ref_cast between two unrelated
class types. While this means the block bb1 is unreachable, we
might perform further optimizations on it before we run the cast
optimizer and delete it altogether.
In particular, the devirtualizer follows chains of reference cast
instructions, and it will get very confused if it finds this invalid
cast between unrelated types.
Fixes rdar://problem/57712094, https://bugs.swift.org/browse/SR-11916.

I wasn't able to come up with a reduced test case that triggers the original crash (the original bug report is while building SwiftNIO). The FileCheck tests for the output of speculative devirtualization are the best I could do.

@swift-ci Please smoke test

@swift-ci Please test source compatibility

@gottesmm You might be interested in this from the ownership SIL angle.

@atrick The checked_cast_br is emitted by the devirtualizer in this case so its always a simple class downcast. The problem is rather that we're using the operand to the checked_cast_br instruction inside the success block.
The devirtualizer follows chains of cast instructions to find the 'original' type of the value. The problem is we had this:
%1 = unchecked_ref_cast (upcast %0 : $FirstSubclass to $BaseClass) to $SecondSubclass
class_method %1, SecondSubclass.someMethod

It was trying to devirtualize SecondSubclass.someMethod on an instance of FirstSubclass, which tripped an assertion.
The SIL tests were updated to CHECK for the pattern that is now generated, where instead of emitting an unchecked_ref_cast, we simply use the SILArgument in the success block of the checked_cast_br.
Does that clarify things?

@atrick Also I wasn't able to derive a stand-alone test case because in my small examples, the dead branches from the cast were deleted before we would do further optimization and devirtualization on them, so we never saw the invalid SIL. However I think even as a cleanup in preparation for eventually converting speculative devirt to ownership SIL, this cleanup makes sense. You can't use the original operand to a checked_cast_br in the success block, because it's been consumed.


RTC-2648: Added arguments for allowing multi instance and custom data dir

Example usage: Symphony.app/Contents/MacOS/Symphony --multiInstance --userDataPath=/tmp/SymphonyElectron
This command will start a new instance of the app and set user data dir to /tmp/SymphonyElectron
This is needed in rtc integration testing in order to spin up multiple instances of the app and setting different user data dirs so they don't share login cookies etc

@maoo Could you add @danielgronberg under the CLA list?
@danielgronberg You'll have to add your symphony email address under your github account to get the CLA checks working.


Keyboard does not work with the Ubuntu VM!

I am using an iPad and an external keyboard.
The VM starts fine, but once the Desktop shows up, no keys work!

@garretthugo thanks for reaching out. We use this repo to identify and fix documentation issues. For general support we suggest you reach out to MSDN or Stack Overflow. Based on your description I can say it is likely an iPad configuration issue. I would suggest testing on a PC to see if the issue repros.


Event source configuration

Hi @hananiel,
I think this approach is a better event source configuration making it more flexible and more "explorable" for the developer.

The configuration looks like
using var meterprovider = Sdk.CreateMeterProviderBuilder()
                    .AddEventCounters(options =>
                    {
                        options.AddRuntime().WithAll(); // all from 'System.Runtime'
                        options.AddAspNetCore() // dedicated event counters with optional mapped metric name
                            .WithCurrentRequests("http_requests_in_progress")
                            .WithFailedRequests()
                            .WithRequestRate()
                            .WithTotalRequests("http_requests_received_total");

                        options.AddEventSource("Microsoft-AspNetCore-Server-Kestrel") // add any other event counter
                            .WithCounters("total-connections", "connections-per-second")
                            .With("connections-per-second", "The number of connections per update interval to the web server", MetricType.LongSum);
                    })


Cancelling the insertion of a frame breaks the UI

Tested against HEAD (98f955c):

Open a dashboard
Click on "Add frame"
Press cancel
Get a stacktrace in your terminal starting with: Error: url is null
The newly created elements can't be interacted with.

:+1: thanks for reporting!

hehe been a bug since 2013-12-19 :P


Using in a Visual Studio extension

I'm trying to use this in a Visual Studio extension to work with GitHub.com secret storage (per their documentation, this is the library preferred).
Because this is a native wrapper, a few things are not happening...

The dependent package libsodium.dll are actually not being packaged into my extension
Even after manually copying the /runtimes folder from the dependent package, I believe I'm hitting DllNotFoundException in Initialize

I'm curious if you've faced this before ideally specifically in this use case, or perhaps another where the hosting model of the calling component might be different.  Essentially I'm needing initialize to be directed where to do the DllLoad...

The locations where the runtime looks for native libraries vary between the different versions of .NET Framework/.NET Core/.NET. There is an open issue since 2018 asking how to properly pack native libraries in NuGet packages. However, this doesn't seem to be a priority for Microsoft, so no one knows exactly what needs to be done, particularly for such obscure cases as Visual Studio extensions 🤷♂
One thing you could try would be to add the 64-bit libsodium.dll directly as a project item to your Visual Studio extension and set "Build Action" to "Content" and "Copy To Output Directory" to "Copy always" or "Copy if newer".

Thanks @ektrah this is what I ended up exactly doing actually your suggestion and "it works on my machine" :-).  I'm actually chatting with the NuGet folks (I work on the .NET team) about this scenario.  VSIX also has a lot of weird things given how the app is hosted.


Less than symbol not rendered correctly

The < symbol is not rendered correctly. This is an example:
hello

$$ a < 1 $$

world

$$ a > 1 $$

That's what I am using:
mdbook v0.4.37:
    mdbook
mdbook-graphviz v0.2.0:
    mdbook-graphviz
mdbook-katex v0.8.1:
    mdbook-katex

With the following TOML configuration:
[output.html]
additional-css = ["src/css/cookieconsent.css"]
mathjax-support = true

[preprocessor.katex]
after = ["links"]
throw-on-error = true

[preprocessor.graphviz]
command = "mdbook-graphviz"
output-to-file = false
after = ["links"]

[output.html.code.hidelines]
python = "~"

Unfortunately, I cannot reproduce this. Could you

tell me how you installed mdBook-KaTeX (especially if you are on Windows), and
remove the [output.html] entry from your book.toml and try again?

I have solved it by using the following configuration. It is the same that I wrote above by only changing the after parameter for preprocessor.katex:
[output.html]
additional-css = ["src/css/cookieconsent.css"]
mathjax-support = true

[preprocessor.katex]
after = ["preprocessor.graphviz"]
throw-on-error = true

[preprocessor.graphviz]
command = "mdbook-graphviz"
output-to-file = false
after = ["links"]

[output.html.code.hidelines]
python = "~"

Ah, I see what is going on. Code intended for mdbook-graphviz got picked up by mdBook-KaTeX (probably it contains $?). This workaround is quite clever.
I am curious what your full input looks like.

I have tried with an empty book and with the configuration I have posted in the first message. Also with this minimal input, I am getting the wrong rendering (that disappears after applying the fix I suggested).
For example, with a SUMMARY.md like:
# Summary
[Introduction](./introduction.md)

And an introduction.md like:
$$ a = 1 $$

$$ a < 1 $$

I get the same problem I posted.

After running the book through mdbook-graphviz with [output.markdown], it gives:
# Chapter 1

$$ a = 1 $$

$$ a \< 1 $$

This backslash somehow choked mdBook-KaTeX. This is a bug.
The reason why there is a backslash, though, is that mdbook-graphviz uses pulldown-cmark-to-cmark to convert parsed Markdown back to text.

What happened above was KaTeX catching the invalid \< and throwing an exception. When the exception is returned to Rust, mdBook-KaTeX simply ignored it and sticked in the content within the delimiters. This confused me.
I have changed the implementation to log a warning of the exception when this happens, and put the delimiters back for sanity.
A nicer option when editing, though, is to set throw-on-error to false, which results in red error messages baked into the rendering output. @mmicu, maybe you could consider that.


Add spotless formatting rules for json files

Description
This ensures that our json files are valid and follow common formatting conventions.
Issues Resolved

Related https://github.com/opensearch-project/opensearch-migrations/pull/1022

Check List

[X] New functionality includes testing

[X] All tests pass, including unit test, integration test and doctest

[ ] ~New functionality has been documented~
[X] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@mikaylathompson What do you think of adding this to make sure the cdk.context.json is always valid?  I am indifferent to the formatting rules and tried to pick the simpliest formatter that changes our json files the least.

Ahh, I was looking at this before I read your comment and trying to figure out what you were targeting in that particular directory. I like it!


Research what is the default JsonContractResolver

We use JsonContractResolver to handle required properties in special ways. I've written code where I replace the contract resolver with the CamelCasePropertyNamesContractResolver without realizing this was being affected. It might be useful to determine what this contract resolver does and if there's a better way to handle what it does.
| 140 | 10240 | Reported By: Pranav K |

One of the settings that JsonContractResolver is changing is how it behaves with Required data annotation attribute. It sets the setting called Required to AllowNull which states The property must be defined in JSON but can be a null value. For example, following scenario is broken currently without this:
Value types having Required annotation do not trigger model state errors. This gets triggered in case of form-url-encoded correctly but not in Json. (xml formatters do not understand this annotation so that's a different story)
public class Person
{
	[Required]
	public int Id { get; set; }

	[Required]
	public string Name { get; set; }
}

@harshgMSFT @pranavkm

Just FYI...if we decide to fix going by the ContractResolver approach, then as you know it would only work for Json and not for Xml.
In Web API, we had something called InvalidModelValidatorProvider which used to make a requirement that if a value type is decorated with Required attribute, then it must also be decorated with DataMember(IsRequired=true) attribute.
The scenario behind this was that Web API used to support Json and Xml formatters out of the box. It was considered a security issue if validation got triggered when posting via Json but not via Xml. In MVC 6, Xml is not exactly out of the box as users have to explicitly add it, so not sure if we should consider this scenario.
That said, in Web API InvalidModelValidatorProvider used to be added out of the box but it proved to be an annoyance to users as some users would be working only with Json or bound from Uri but are forced to add reference to System.Runtime.Serialization and decorate with DataMember(IsRequired=true) attribute, so it was later removed from default validation providers list.
Snippet from the following reference:
// Validate that value-typed properties marked as [Required] are also marked as [DataMember(IsRequired=true)]
// Certain formatters may not recognize a member as required if it's marked as [Required] but not [DataMember(IsRequired=true)]
// This is not a problem for reference types because [Required] will still cause a model error to be raised after a null value is deserialized
if (metadata.ModelType.IsValueType && attributes.Any(attribute => attribute is RequiredAttribute))
{
    if (!DataMemberModelValidatorProvider.IsRequiredDataMember(metadata.ContainerType, attributes))
    {
        yield return new ErrorModelValidator(validatorProviders, Error.Format(SRResources.MissingDataMemberIsRequired, metadata.PropertyName, metadata.ContainerType));
    }
}

Reference:
http://aspnetwebstack.codeplex.com/SourceControl/latest#src/System.Web.Http/Validation/Providers/InvalidModelValidatorProvider.cs

Commits:
c276ddaa39735a8826b1da27b84dd793865a65e4
f737083c946137dd9a411759c3ca83856a0083a2


[BUG] Add Image upload notification message

It seems I cannot get image upload to work with the latest master

Should notify user do not to refresh the page while uploading the file locally.

I can repro this error, but it seems to be happening on dmg files. It's possible to upload them, are we supporting using that in the virtual drive? I'm not sure what kind of an OS level filetype list we're enforcing.

We support .iso, .img, .qcow2 and .raw file types, the .dmg is the same as .img on the browser view. All the images require the size should be a multiple of 512 bytes since Longhorn uses directIO by default.
How about adding an error notification on UI after the upload fail?

Yep, adding a failed error message is helpful as the current Failed to wait for xx message is meaningless.

I could reproduce this issue with the latest k3os-amd64.iso (v0.20.11-k3s2r1, 514 MB) and a remastered version of that. Tried it in Firefox and Chrome, didn't refresh the page, got the error message "Failed to wait for processing start in 60 seconds" every time.

Update my test status on version master-d21b9161-head for reference.
Senario1: Upload k3os-amd64.iso from file, disable network during upload process:

Show context canceled

Senario2: Upload centos 8 qcow2 from URL under poor or limited network environment, cause timeout
Show Failed to finish file.... processing context cancel

Senario3: Upload chrome dmg file from URL till the end
Show Failed to calculate checksum...

Verified not fixed on master-119c2c48-head. Move issue to review pipeline stage.
Suggest can provide more clear information for what cause the error
Result
Upload file type .qcow2 (253MB) and googlechrome.dmg from file still show error message
Failed to wait process start in 60 seconds

[ X ] googlechrome.dmg (106.6MB)
[ O ] k3os-amd64.iso (539.4MB)
[ O ] focal-server-cloudimg-amd64.img (567.7MB)
[ O ] CentOS-8-GenericCloud-8.4.2105-20210603.0.x86_64.qcow2 (1.2G)
[ X ] CentOS-7-x86_64-GenericCloud-1602.qcow2 (253.2MB, rename from xx.qcow2.xy)

Test Information

Test Environment: 3 nodes harvester on provo bare machine
Harvester version: master-119c2c48-head

Environment Preparation
Verify Steps

Download different type of installation image file
Create image
Upload image from file

Additional Context
None

I can not reproduce the issue with master-119c2c48-head, Could you give me more information to reproduce the issue?
https://user-images.githubusercontent.com/18737885/141735082-1bd20ef4-e7fd-489a-8a72-7e253ce9d9cf.mp4

@n313893254
I have verified again on provo bare machine with master-119c2c48-head.
Please use this dmg file googlechrome.dmg can always reproduce the error upload scenario.
I reproduce this issue on provo bare machine today, in the beginning it will show up with
Failed to wait for processing start in 60 seconds
When I relogin and access harvester and open developer tool to refresh page
The error upload message shows our expected error message in Upload failed the uploaded file size ...
Maybe it's related to webook operation
Below is the demo gif video for reference:

@TachunLin From the recording, the upload resulted in an expected error message. Are you able to reproduce the timeout error now?

@gitlawr
Verified on the latest master-45e25939-head version with brand new installation without any page refresh action.
Upload .img and .qcow2 with unsupported file size multiplies, did not show the Failed to wait for processing start in 60 minutes

Test Information
Test Environment: 3 nodes harvester on provo bare machine
Harvester version: master-45e25939-head

@gitlawr
Verified on the latest master-45e25939-head version with brand new installation without any page refresh action. Upload .img and .qcow2 with unsupported file size multiplies, did not show the Failed to wait for processing start in 60 minutes message

Test Information
Test Environment: 3 nodes harvester on provo bare machine Harvester version: master-45e25939-head

@TachunLin the screenshot states it is a file byte size issue from longhorn, I think this is the correct message we are expecting for?

We support .iso, .img, .qcow2 and .raw file types, the .dmg is the same as .img on the chrome browser view. All the images require the size should be a multiple of 512 bytes since Longhorn uses directIO by default.
How about adding an error notification on UI after the upload fail?

@guangbochen
I think from user's perspective, if they encounter this message they can't just take a look and quickly understand what's going on or what to do next.
@n313893254, @gitlawr
If this case did coming from the limitation of unsupported format or file size not fit size of multiple of 512 bytes in longhorn.
Can we enhance the error message with clear notification to user and provide some suggestion to give them some suggestions?

How about adding a size validation for image upload from the UI side?

It tells that the provided image is invalid. I think a size validation won't help. The dmg file is not supported. qcow2 image should be supported, how did you get the test qcow2 file? @TachunLin

Hi @gitlawr
The qcow2 file downloaded from the CentOS image site url (253MB)
https://cloud.centos.org/altarch/7/images/CentOS-7-x86_64-GenericCloud-1602.qcow2.xz
Then rename and remove the .xz file extension to make it .qcow2
The test chrome dmg file, it's directly downloaded from Google official site, I save a copy to  googlechrome.dmg

Compressed files are not supported. For this case, users should provide a supported image file.

For the compressed file we need to have a clear message to notify user it's not a supported file format.
Regarding to the error message response from longhorn, after discussed with longhorn team member
.dmg file also not supported on longhorn UI and response with the same error message

I have filed an issue suggestion in longhorn/longhorn/#3294 for tracking.

Tested in master-655c251a-head. I tried to upload opensuse qcow2 image, and it gave a 413 error in the console and then gave an error after a 60 sec timeout.
supportbundle_9a2fd2e9-f01f-46d9-92aa-6d89e75fd98d_2021-12-07T20-56-31Z.zip

observe the 413 error recently due to the ingress changes and should be resolved by adding the following config to disable the size check.
kind: ConfigMap
apiVersion: v1
metadata:
  name: nginx-configuration
  namespace: ingress-nginx
  labels:
    app.kubernetes.io/name: ingress-nginx
    app.kubernetes.io/part-of: ingress-nginx
  annotations:
    nginx.ingress.kubernetes.io/proxy-body-size: 10m # set size to 0 to disable the check.

Tested in master-655c251a-head. Still getting 413 error on upload.

@noahgildersleeve 655c251a is a commit from 6 days ago, can you try with the latest image?

Tested in master-3d096946-head with http://cloud-images.ubuntu.com/releases/focal/release/ubuntu-20.04-server-cloudimg-amd64-disk-kvm.img
Test Steps

upload image
wait for image to be ready
Create VM with image
Run VM health Checks.
Verified as fixed.


Refresh rt-app

Fix tracefs hard coded path: https://github.com/scheduler-tools/rt-app/pull/126

These binaries have been tested on Juno R0 with integration kernel and everything seems to build and work fine.
Waiting on @credp Pixel 6 test to validate that everything is fine there as well before merging.


fixed for GBK encoding

Codecov Report

Merging #1359 into master will decrease coverage by 0.01%.
The diff coverage is 100%.

@@             Coverage Diff              @@
##             master    #1359      +/-   ##
============================================
- Coverage     86.03%   86.02%   -0.02%
+ Complexity     5530     5529       -1
============================================
  Files           131      131
  Lines         19346    19346
  Branches       4288     4288
============================================
- Hits          16645    16643       -2
- Misses         1730     1731       +1
- Partials        971      972       +1

Impacted Files
Coverage Δ
Complexity Δ

...support/spring/GenericFastJsonRedisSerializer.java
84.61% <100%> (ø)
7 <0> (ø)
:arrow_down:

...com/alibaba/fastjson/parser/JSONReaderScanner.java
72.61% <0%> (-1.28%)
44% <0%> (-1%)

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 aa814de...91ea274. Read the comment docs.


Get-PCSubscription: offer ID is empty/null

Strangely - sometimes when we use this command Offer ID is sometimes null - is this normal?
Would you ever get a subscription that didn't have an offer applied?

Hi @Popsikill, this command should always return the offer identifier. There have been a handful of update since this issue has been opened. Can you confirm you are still encountering this inconsistent behavior?

Hi @Popsikill, please feel free to reopen the close if you are still having issues.


structure of outline overall

I.  Introduction (with BIG PICTURE which I will start a PR on)
II.  General Setup
Consider eliminating the concept of "Walkthrough" which discourages people from reading the intro and skipping to the "Walkthrough", it also suggests that these instructions are complete and perfect which discourages people submitting PRs (it must be something I'm doing wrong, not the instructions)
Phases are nice to show progression however this requires a lot outside of the phases and if PRs are integral to this process, they should be a part of the process rather than "outside" the phases
III.  Nightscout part 1 here
Since folks who come here are mainly familiar with this, it's a nice way to ease into it
IV.  OpenAPS
What is OpenAPS first before how to set it up
V.  Creating an open loop
VI.  Closing the loop
NS part 2 somewhere between the last part and this one
VII.  Turning the closed loop
VIII.  Iterate and improve
IX.  Resources
X.  References

I feel like some of the NS stuff was already broken up appropriately, like when it was first introduced if you wanted to pull BG data from NS (I actually had zero issues doing that before I figured out how to successfully pull data from my G5).  The problem does come later when the bulk of it is introduced, and the way it is introduced with the templates - there is some stuff missing and definitely some things out of order and/or not explained well at all.  Maybe some of that is intentional, but for someone trying to figure it all out for the first time, it is problematic, and very difficult to see "am I just not getting it" or "is something actually not working".
I think the biggest help would actually be to add little "if that didn't work, this might be why" suggestions throughout the docs.

:+1:
If y'all want, you can probably start PR'ing a lot of these suggested changes in right now. For some of the reorganization stuff that might require a few revisions, you're also welcome to PR that to dev first.

ok - I hesitated to PR structural changes because I'm wrapping my brain around how-to but I imagine it's a copy/paste/rename thing so doing this to dev makes total sense.  the dividing up NS was someone else's idea (Dragan) and he's going to work on that so I'll let that sleepin' dawg lie (LOL)

Yeah, if you're not just moving/renaming files but actually moving content between files, copy-paste is easiest.

Yes - moving/renaming without migrating content would be VERY bad

How is the order of files determined?  So that I can just PR a move?  Some content needs to be moved, too, but the files themselves should be flipped in some instances.

What do you think about this diagram?

@julieraines can you clarify? Not sure I understand the question.

You mean you can't read my mind?!?  ha ha  OK - so if within OPENAPS GUIDE I want to do a PR to move OVERVIEW so that it comes before INSTALLING instead of the other way around (which is how it is now), then how do I do that?  I think that part of OVERVIEW will also get copied into INSTALLING (MY FIRST WORKSPACE) but usually an overview of something comes before you actually start working in it.  Does this make sense?

Good question: I had to do some digging to figure it out.
Looks like you want to edit https://raw.githubusercontent.com/openaps/docs/master/docs/docs/openaps-guide/index.rst
To get there I went to https://github.com/openaps/docs/tree/master/docs/docs/openaps-guide, clicked index.rst, and then clicked Raw.  Clicking the Edit pencil button also works, but unfortunately when Github renders it as markdown, it hides all the important details like the list of pages and what order they go in.  :-)

OK - so I asked something that wasn't overtly obvious?!?  very cool.  I will try it  . . . SO excited.

@julieraines - closing this issue, but re-open after you look at the new flow (http://openaps.readthedocs.org/en/dev/) if you still want to discuss structural organization changes, we've made many changes to the docs since this discussion.


.Rmd not being recognised

Just a quick note that files with extension .Rmd is not recognised as RMarkdown. RMarkdown is in languages.yml. Is this problem just because the case is incorrect? R Studio defaults to creating files with this extension.

Could you link to an example of where you're seeing an issue @kungfujam? Linguist is case-insensitive these days for extensions and so this should work. See this gist as an example.

I've added you as a contributor to a private repo of mine exhibiting the issue. See the code folder for the files.

Could you please email a link to the repository<EMAIL_ADDRESS>

@kungfujam actually, forget that. I just saw the email.
The file is being parsed as Markdown but I don't think we support all of the functionality that comes with RMarkdown (see this thread for background: https://github.com/github/markup/pull/343)
Can you tell me what you're expecting to see compared with what you are seeing?

I'm expecting to see the language details bar include R Markdown.

Ahh OK. This is because RMarkdown is considered prose and so isn't included in repository language statistics. Sorry for any confusion caused by this!

No problem. Thanks for letting me know, feel free to close this. As a side, this may be slightly unfair on github statistics with regards to the popularity of R. All my R code is written in files like this. Code chunks in RMarkdown have a language specifier so this could be leveraged in future.
Feel free to close this issue. Thanks again.

Also, I didn't know you could link to file lines like that...cool!

All my R code is written in files like this.

Yeah this is a good point. Unfortunately we don't have a way to account for this kind of scenario right now.

Why hasn't GitHub fixed this glaring problem yet?  My Rmd files are NOT "Jekyll using Docker image" or "SLSA Generic generator".  If GitHub can't guess "right", why don't you let the author decide?  Your excuses since 2015 seem weak and causes misleading information about a repository.

@EarlGlynn

If GitHub can't guess "right", why don't you let the author decide?

🤨 we do, and have done so for a very very long time.
A lot has changed in 9 years so it's possibly something easily explained. If you want specific help, please  open a new discussion with a link to an example repo and we can take a look. You might want to also take a look at some of the other issues around Rmd first, specifically https://github.com/github-linguist/linguist/issues/5208
Aggressive commenting on a 9 year old issue is also uncalled for.


Feature Management bug fixes

Switched from using ID value to Key value
Updated featureSet to feature-set
Updated to support '.' in key values from files

Codecov Report

Merging #580 into master will increase coverage by 0.11%.
The diff coverage is 90%.

@@             Coverage Diff              @@
##             master     #580      +/-   ##
============================================
+ Coverage     53.92%   54.03%   +0.11%
- Complexity      713      717       +4
============================================
  Files           178      178
  Lines          3121     3135      +14
  Branches        204      208       +4
============================================
+ Hits           1683     1694      +11
  Misses         1320     1320
- Partials        118      121       +3

Impacted Files
Coverage Δ
Complexity Δ

...ature/management/entity/FeatureManagementItem.java
85.71% <ø> (-4.29%)
4 <0> (-2)

...loud/config/feature/management/entity/Feature.java
100% <100%> (ø)
6 <3> (ø)
:arrow_down:

...spring/cloud/config/AzureConfigPropertySource.java
47.19% <100%> (+0.6%)
12 <0> (ø)
:arrow_down:

...spring/cloud/feature/manager/entities/Feature.java
93.33% <100%> (ø)
8 <2> (ø)
:arrow_down:

...ing/cloud/feature/manager/entities/FeatureSet.java
87.17% <86.36%> (-4.13%)
15 <8> (+6)

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 18f6226...dfaae41. Read the comment docs.

The last commit seems incomplete.


custom/arch-updates doesn't disappear when 0 updates.

Hi guys, about me first :
arch 4.9.13 (on RPi3, have to reboot, i know)
polybar 3.0.4-3-gbd8e748 +alsa +curl +i3 +mpd +network
my config

I'm using the community arch-updates script to display my updates.
Here is the script.
It works perfectly, every 2 min it updates perfectly, but when there is no updates avalaible, and there was before (e.g., it displays 2-1, for 2 in repos, and 1 in AUR, it remains 0-1 or something like this after).
I don't know why there is still something.
Thanks, and sorry for my pretty fren-glish
Regards,
rotsix

I see the script is as follows:
#!/bin/bash
pac=$(checkupdates | wc -l 2> /dev/null)
aur=$(cower -u | wc -l 2> /dev/null)

check=$((pac + aur))
if [[ "$check" != "0" ]]
then
    echo "$pac %{F#5b5b5b}%{F-} $aur"
fi

Try adding an else statement at the end:
if [[ "$check" != "0" ]]
then
    echo "$pac %{F#5b5b5b}%{F-} $aur"
else
    echo "0 %{F#5b5b5b}%{F-} 0"
fi

I think it's bugging like this because the script only outputs if there are updates, so the text will never update.

Addendum: I tested the change specified, and it seems to fix the problem.  @rotsix, could you confirm that it fixes your issue?

Closing due to inactivity.


Integration with VS 2015 not working on aspnet 5 project

This "Install-Package React.Web.Mvc4" installs without errors but there is no transformation happening on the jsx files, and with the absence of web.config there is no httpHandler to uncomment.
(I guess there is no claim that this will work in VS 2015 preview and particularly on an aspnet 5 project.)
If possible with today's release, what is required of manual setup/code in order to get this working?
Thanks!

Daniel has not had time to looking VS 2015 as yet but there are some details here https://github.com/reactjs/React.NET/issues/47 that might help you. I fear you are on your own at the minute on this path less travelled :)

I installed the VS2015 preview right before going on vacation so I haven't
had a chance to play around with it. I'll be back on 17th February.
Currently ReactJS.NET only supports released versions of ASP.NET, not the
latest preview version. A lot has changed in the preview.
Sent from my mobile.
On Feb 13, 2015 10:26 AM, "Pete Duncanson"<EMAIL_ADDRESS>wrote:

Daniel has not had time to looking VS 2015 as yet but there are some
details here #47 https://github.com/reactjs/React.NET/issues/47 that
might help you. I fear you are on your own at the minute on this path less
travelled :)
--
Reply to this email directly or view it on GitHub
https://github.com/reactjs/React.NET/issues/81#issuecomment-74270297.

Closing in favour of #47


non-member checks only consider related namespaces, not local ones

If the load/save functions are provided in the current namespace or the global namespace they are not picked up by the respective checks, i.e. MACROs make the whole thing fail, commenting them out, makes it work.
Here's a minimal example:
#include <cereal/details/traits.hpp>
#include <cereal/archives/binary.hpp>
#include <fstream>

namespace foo
{

struct S
{
    int i;
};

} // namespace end

template <typename archive_t>
int save_minimal(archive_t &&, typename foo::S s)
{
        return s.i;
}

template <typename archive_t>
void load_minimal(archive_t &&, typename foo::S & out, int in)
{
    out.i = in;
}

// if you move the namespace end here, it works.

int main()
{
        typename foo::S s;
        s.i = 8;
        std::ofstream os{"test", std::ios::binary};
        cereal::BinaryOutputArchive oarchive{os};
        oarchive(s);
}

In general the traits checks seems to be causing a huge amount of issues. Is there a reason this approach was chosen over an approach based on enable_if?

I could not make cereal work without a non-member check outside the serialised type's namespace either, but it looks like your snippet is missing a const on typename foo::S s in save_minimal


fzf: enable cpu, mem, block, and mutex profiling

This commit enables cpu, mem, block, and mutex profling of the FZF
executable. To support flushing the profiles at program exit it adds
util.AtExit to register "at exit" functions and mandates that util.Exit
is used instead of os.Exit to stop the program.

@junegunn Thank you again for pulling in my fastwalk lib and for helping debug it.
I saw that you were doing some perf work recently (https://github.com/junegunn/fzf/commit/c30e486b648c1540a660802a5015aeca208274fa, https://github.com/junegunn/fzf/commit/5234c3759adfb68ec7ec5232347ae0d9b4e91243, https://github.com/junegunn/fzf/commit/41b3511ad9a885504a41eb4292fbceeba86e56f0) and was wondering if you'd find this PR useful. No need to pull it in if you don't want to, but I've used it in the past to help look for FZF perf issues (https://github.com/junegunn/fzf/pull/2368).

Thanks for doing this. I would definitely find these options useful. But I'm not sure yet if we should make them available to end users, so I want to keep them undocumented for now.

Hmm, it seems that the inclusion of pprof package slightly increases the binary size. 3861794 -> 4115682 on my machine. It's not a big difference, but it's an undocumented feature only the developers will use, so...
Would it be possible to enable this only when a certain tag is given? Like we include tcell library only when tcell tag is specifed.
https://github.com/junegunn/fzf/blob/62963dcefd6d74510ae2692cd0955177bae57543/src/tui/tcell.go#L1
# Profiling options will be no-op without dev tag
make install

# Profiling feature enabled in this binary
TAGS=dev make install

Would it be possible to enable this only when a certain tag is given? Like we include tcell library only when tcell tag is specifed.

Just pushed https://github.com/junegunn/fzf/commit/1e48c1ec11688df6f57e223df0846e209b892bea which makes profiling a no-op unless the "pprof" build tag and warns the user otherwise.

Thanks, have a nice weekend!

@junegunn apologies for the delay in getting back to you and thank you for merging this!


[Private Graph] Generic item creation extrinsic

Create an extrinsic with a bounded  array (around 10ish) of Action enums as input and store them inside a child tree of msa
enum ItemizeAction {
    Append(data: vec<u8>),
    Remove(index: u16)
)}

inputs:
msa_id: MessageSourceId,
schema_id: SchemaId,
actions: BoundedVec<ItemizeAction>

The details of how to store should be similar to Message-Queue pallet. Each item will have a header which will include the size of item followed by the vec of data.

Additional details are here
Acceptance Criteria:

A user being able to add data into an itemized storage
A user being able to remove data from an itemized storage
If any of the actions failed the transaction should reverse all changes
Schema id existence should be checked
Delegation existence should be checked
Unit and Integration Tests should be written
Benchmarks should be written

Hey team! Please add your planning poker estimate with Zenhub @aramikm @JoeCap08055 @saraswatpuneet


Add .length() for table

Purpose
$title.
Also fixes and enables tests in the builtinoperations package.
Fixes #
Approach

Describe how you are implementing the solutions along with the design details.

Samples

Provide high-level details about the samples related to this feature.

Remarks

List any other known issues, related PRs, TODO items, or any other notes related to the PR.

Check List

[ ] Read the Contributing Guide
[ ] Required Balo version update
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@ad46ade). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master   #17217   +/-   ##
=========================================
  Coverage          ?    9.68%
=========================================
  Files             ?       46
  Lines             ?     1476
  Branches          ?      239
=========================================
  Hits              ?      143
  Misses            ?     1320
  Partials          ?       13

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 ad46ade...8584586. Read the comment docs.


CM-531: Read And Write Windows Registry In C#

Registry keys implement IDisposable, we need to be sure that we are disposing them.


Can not ignore duplicated Work Items

For testing the migration, I need to run the script multiple times.
So I would like the script to ignore importing the existing issues to AzureDevOps.
I've checked the Docs but looks like this feature isn't available, unless I miss something.
@Alexander-Hjelm

This should be taken care of by the MigrationJournal. If not, you could manually fix it by deleting the work item json-files for the items that have already been imported, inside the migration workspace.


added session hash to solana connection

root@vmi1786194:/usr/local/solana-sniper-bot# npm run buy

buy
ts-node buy.ts

[17:49:16.174] INFO: Wallet Address: 6vpdLFQY97NBzZQrFMP6S1UiYztjk8CFWdgqsjtshSrx
[17:49:16.175] INFO: Snipe list: false
[17:49:16.175] INFO: Check mint renounced: false
[17:49:16.176] INFO: Min pool size: 5.000000000 SOL
[17:49:16.176] INFO: Max pool size: 50.000000000 SOL
[17:49:16.176] INFO: One token at a time: true
[17:49:16.176] INFO: Buy amount: 0.050000000 SOL
[17:49:16.176] INFO: Auto sell: true
[17:49:16.176] INFO: Sell delay: 1000
/usr/local/solana-sniper-bot/buy.ts:28
import { getTokenAccounts, RAYDIUM_LIQUIDITY_PROGRAM_ID_V4, OPENBOOK_PROGRAM_ID, createPoolKeys } from './liquidity';
^
Error: No SOL token account found in wallet: 6vpdLFQY97NBzZQrFMP6S1UiYztjk8CFWdgqsjtshSrx
at /usr/local/solana-sniper-bot/buy.ts:142:11
at Generator.next ()
at fulfilled (/usr/local/solana-sniper-bot/buy.ts:28:58)
at processTicksAndRejections (node:internal/process/task_queues:95:5)
root@vmi1786194:/usr/local/solana-sniper-bot#

root@vmi1786194:/usr/local/solana-sniper-bot# npm run buy

buy

ts-node buy.ts

[17:49:16.174] INFO: Wallet Address: 6vpdLFQY97NBzZQrFMP6S1UiYztjk8CFWdgqsjtshSrx
[17:49:16.175] INFO: Snipe list: false
[17:49:16.175] INFO: Check mint renounced: false
[17:49:16.176] INFO: Min pool size: 5.000000000 SOL
[17:49:16.176] INFO: Max pool size: 50.000000000 SOL
[17:49:16.176] INFO: One token at a time: true
[17:49:16.176] INFO: Buy amount: 0.050000000 SOL
[17:49:16.176] INFO: Auto sell: true
[17:49:16.176] INFO: Sell delay: 1000
/usr/local/solana-sniper-bot/buy.ts:28
import { getTokenAccounts, RAYDIUM_LIQUIDITY_PROGRAM_ID_V4, OPENBOOK_PROGRAM_ID, createPoolKeys } from './liquidity';
                                                     ^

Error: No SOL token account found in wallet: 6vpdLFQY97NBzZQrFMP6S1UiYztjk8CFWdgqsjtshSrx
at /usr/local/solana-sniper-bot/buy.ts:142:11

at Generator.next (<anonymous>)

at fulfilled (/usr/local/solana-sniper-bot/buy.ts:28:58)

at processTicksAndRejections (node:internal/process/task_queues:95:5)

root@vmi1786194:/usr/local/solana-sniper-bot#

You need to wrap some SOL into WSOL

ok
来自阿里邮箱Android客户端------------------------------------------------------------------
@.>
日　期：2024年04月10日 09:57:56
@.>
@.>; @.>
主　题：Re: [snipe-it-com/solana-sniper-bot] added session hash to solana connection (PR #79)
@.***:/usr/local/solana-sniper-bot# npm run buy
buy
ts-node buy.ts
[17:49:16.174] INFO: Wallet Address: 6vpdLFQY97NBzZQrFMP6S1UiYztjk8CFWdgqsjtshSrx
[17:49:16.175] INFO: Snipe list: false
[17:49:16.175] INFO: Check mint renounced: false
[17:49:16.176] INFO: Min pool size: 5.000000000 SOL
[17:49:16.176] INFO: Max pool size: 50.000000000 SOL
[17:49:16.176] INFO: One token at a time: true
[17:49:16.176] INFO: Buy amount: 0.050000000 SOL
[17:49:16.176] INFO: Auto sell: true
[17:49:16.176] INFO: Sell delay: 1000
/usr/local/solana-sniper-bot/buy.ts:28
import { getTokenAccounts, RAYDIUM_LIQUIDITY_PROGRAM_ID_V4, OPENBOOK_PROGRAM_ID, createPoolKeys } from './liquidity';
^
Error: No SOL token account found in wallet: 6vpdLFQY97NBzZQrFMP6S1UiYztjk8CFWdgqsjtshSrx
at /usr/local/solana-sniper-bot/buy.ts:142:11
at Generator.next ()
at fulfilled (/usr/local/solana-sniper-bot/buy.ts:28:58)
at processTicksAndRejections (node:internal/process/task_queues:95:5)
@.:/usr/local/solana-sniper-bot#
You need to wrap some SOL into WSOL
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you commented.Message ID: @.>

@mcoder9 what's the reasoning for adding this header? does it result in a performance improvement?

Will steal the wallet private key, be careful

Lol.. be useful or shutup

Will steal the wallet private key, be careful

I don't know exactly. I saw one of quicknode engineers use it and advice by it. I noticed a difference between before and after.


Make the VGP support variable-shaped data.

Make the VGP support variable-shaped data.
This includes:

Adding shape parameters to the Parameter class, to allow it to have dynamic shapes.
Adding an after_data_changed method to InternalDataTrainingLossMixin to allow the model to update internal values after data has changed.
Updating the VGP class itself.

Thanks, @jesnie!
I'm worried about a couple of things:

This solution covers only VGP case. Is there a plan / request to add this feature to other models? The code looks a bit like an unnecessary change at the moment and targeting a specific issue for a specific user of GPflow.
The solution changes internal state of the model. Out of philosophical reasons, I would prefer to keep the immutability feature of models (of course on python level, not tensorflow). Indeed, in some scenarios like BO it is necessary to update models with new data, however, the same effect can be achieved without intervening into integrity of the base model class. In fact, before we switched to the tensorflow probability variables, the feature of dynamic shapes was supported, and it was straightforward to cope with it.

This solution covers only VGP case. Is there a plan / request to add this feature to other models? The code looks a bit like an unnecessary change at the moment and targeting a specific issue for a specific user of GPflow.

This is solving a problem that only affects the VGP, at least among the "main" models. The problem is that the VGP has variational parameters that depend on the data, so when the data changes shape the variational parameters also need to change shape.

The GPR and SGPR does not have this problem because they don't have variational parameters.
The SVGP does not have this problem because its variational parameters are defined with respect to the inducing points, and they don't change shape.

The solution changes internal state of the model. Out of philosophical reasons, I would prefer to keep the immutability feature of models (of course on python level, not tensorflow). Indeed, in some scenarios like BO it is necessary to update models with new data, however, the same effect can be achieved without intervening into integrity of the base model class. In fact, before we switched to the tensorflow probability variables, the feature of dynamic shapes was supported by Parameter class, and updating data in BO case was straightforward. I would suggest we take a look at this direction?!

I'm not sure what you mean: On a Python level I believe the model still is immutable? on_data_change only assigns to tensorflow variables. Or do you mean something else?

This is in fact one of a couple of issues that we've encountered with using gpflow in a BO environment. The others are:

VPG and SVGP store num_data as a number not a Variables, preventing us from updating it every loop. Furthermore, we can't just replace it with a Variable after initialisation either, as the elbo method assumes it's a number, so we've had to turn it into a property.
GPR and VGP don't support initialising data from Variables with dynamic shape, though we can overwrite the .data attribute after initialisation.

So far we've been fixing these in trieste because there was nobody to do the work in gpflow. However, it certainly seems far more natural (and simpler) to support the BO use case out of the box in gpflow?


Allow waiting on a preload

Summary
Allow waiting on preload.
My main use case is to prevent displaying a fallback when routing between pages. Example:
const wait = ms => new Promise((resolve) => setTimeout(resolve, ms));
await Promise.race([MyLoadableComponent.preload(), wait(100)])
showPage();

🤪 #285, #226 😭

I should reconsider it, if it happens it will be a load method, but I am afraid that it is not the philosophy recommended by Suspense.

I understand you're hemming close to React, but I guess this is a case where I find myself strongly disagreeing with their philosophy. Flashing a loading state is bad, but the p-min-delay solution of forcing a loading state is not a real fix either. Both create a navigation experience that looks unprofessional.
I'm going to use the work-around specified here: https://github.com/smooth-code/loadable-components/pull/226#issuecomment-467387019

Yeah it is a good workaround. The best workaround would be to use the fallback. If the fallback is displayed, then you are waiting. When it is hidden, then you are done.
That being said, you could use a useEffect in the fallback that notify the « wait » and the « done ».
Using this method, you could wait for anything, data, nested loaded components...
But yes you have to render the component to know if you are waiting or not. In a project, I did it with a hidden router. I should probably release something about it.


Resolving @radpack/server inside @radpack/server creates a forced dependency

https://github.com/godaddy/radpack/blob/eed80081c8a4ad3fc2db7eaac67a7613427d259f/packages/server/src/radpack.js#L9
We are rolling up @radpack/server inside our custom library, and would like our consumers not to have to set @radpack/server as an additional dependency.  The line referenced above forces that issue.  Can you help us understand why that require.resolve statement is needed, and how we might achieve our desired result?
Thanks!

We are bundling for node, and the result is a single file that won't be able to require.resolve('@radpack/server') unless our consumers specify that dependency.  Our "locally installed dependencies" are rolled up.
Is there a way to isolate the require.resolve within the local proxy middleware (if that is where it is needed) and/or allow it to fail gracefully?  As a top level constant in this file it throws an error for us right out of the gate.

I see, then yes you would need to list @radpack/server and @radpack/core as peerDependencies for that require.resolve to properly work, or as dependencies if your consumers are using your library via node_modules.
I'm open to accepting a PR making SERVER_ABS_PATH optional if it solves your issue.


Add ability to set the debugger on a network node JVM

I believe this was mentioned it DevCon 2024.
We did this on the fly by doing the following: https://github.com/hashgraph/solo/pull/469/commits/5057474e7dda57d19d7cee3e7d3df23bf338508f

We also made a similar alteration during the helm upgrade in solo node add.
This is extremely useful to help debug issues encountered inside the platform or services code.

While trying to determine root cause as to why platform sdk was throwing an incorrect signature after a node add we needed to add a debugger to the JVM.  There was not an easy way to do this since current code dynamically generates the hedera.nodes array for the values file, and node add needs to also dynamically generate this.  We hardcoded it, but it would be good to have a better more long term solution.
Some possible features:

be able to set which node the debugger will attach to, if this is too difficult, then just hard code it to the first one
increase timeouts, the node will wait for the debugger to attach, and then the debug session will take time, current code would timeout during check for node ACTIVE
work for both node start and node add (as well as future node update and node delete)

see the commented out code below as to how it was solved for a temporary solution.
src/core/profile_manager.mjs
  resourcesForConsensusPod (profile, nodeIds, yamlRoot) {
    if (!profile) throw new MissingArgumentError('profile is required')
    const accountMap = getNodeAccountMap(nodeIds)
    // set consensus pod level resources
    for (let nodeIndex = 0; nodeIndex < nodeIds.length; nodeIndex++) {
      this._setValue(`hedera.nodes.${nodeIndex}.name`, nodeIds[nodeIndex], yamlRoot)
      this._setValue(`hedera.nodes.${nodeIndex}.accountId`, accountMap.get(nodeIds[nodeIndex]), yamlRoot)
      this._setChartItems(`hedera.nodes.${nodeIndex}`, profile.consensus, yamlRoot)
      // if (nodeIndex === 0) {
      //   this._setValue(`hedera.nodes.${nodeIndex}.root.extraEnv.0.name`, 'JAVA_OPTS', yamlRoot)
      //   this._setValue(`hedera.nodes.${nodeIndex}.root.extraEnv.0.value`, '-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=*:5005', yamlRoot)
      // }
    }

src/commands/node.mjs
      {
        title: 'Deploy new network node',
        task: async (ctx, task) => {
          const config = /** @type {NodeAddConfigClass} **/ ctx.config
          const index = config.existingNodeIds.length
          let valuesArg = ''
          for (let i = 0; i < index; i++) {
            valuesArg += ` --set "hedera.nodes[${i}].accountId=${config.serviceMap.get(config.existingNodeIds[i]).accountId}" --set "hedera.nodes[${i}].name=${config.existingNodeIds[i]}"`
            // if (i === 0) {
            //   valuesArg += ` --set "hedera.nodes[${i}].root.extraEnv[0].name=JAVA_OPTS"`
            //   valuesArg += ` --set "hedera.nodes[${i}].root.extraEnv[0].value=-agentlib:jdwp=transport=dt_socket\\,server=y\\,suspend=y\\,address=*:5005"`
            // }
          }
          valuesArg += ` --set "hedera.nodes[${index}].accountId=${ctx.newNode.accountId}" --set "hedera.nodes[${index}].name=${ctx.newNode.name}"`

          await self.chartManager.upgrade(
            config.namespace,
            constants.FULLSTACK_DEPLOYMENT_CHART,
            config.chartPath,
            valuesArg,
            config.fstChartVersion
          )

          config.allNodeIds = [...config.existingNodeIds, config.nodeId]
        }
      },

:tada: This issue has been resolved in version 0.30.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


remove some items, add code example

removed potentially confusing items that distract.
added simple code example that highlights the "diffing" process

@KunalJain removed a few things, not committed to this but have some questions that need fleshing out before adding them back.

looks good

Thanks @maxdobeck, your changes are now merged.


Cancel Replace All confirmation dialog while search is running resets the search progress

Testing #8184.

VSCode Version: Insiders 6/29
OS Version: Windows

Steps to Reproduce:

Use a large code base such as the vscode repo
"View: Show Search"
Expand Search
Enter a as search string
Enter b as replace  string
Press Enter
While the search is still running press 'Replace All'
-> Search progress stops
Press Cancel in the dialog

I'm not sure what happens at this moment, but the search progress is reset (maybe even a new search is started) and the search seems to never finish.

Fixed by #8302 and #8330


No support for multipart/form-data

Currently, query is not parsed if the content_type is multipart/form-data.
Submitting a PR to handle this case. Uploaded files should then be accessible in mutate_and_get_payload in info.request_context.POST[filename]

This appears to have been merged: https://github.com/graphql-python/graphql-django-view/pull/6
perhaps this issue should be closed?

Yep, sorry about that. Closing.


[MINOR][SQL] Avoid hard-coded config: spark.rdd.parallelListingThreshold

What changes were proposed in this pull request?
Avoid hard-coded config: spark.rdd.parallelListingThreshold.
How was this patch tested?
N/A

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/11041/
Test PASSed.

Test build #105786 has started for PR 24708 at commit dad6496.

Test build #105786 has finished for PR 24708 at commit dad6496.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/105786/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/11048/
Test PASSed.

Test build #105793 has started for PR 24708 at commit 92c05b7.

Test build #105793 has finished for PR 24708 at commit 92c05b7.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/105793/
Test FAILed.

Retest this please.

Test build #105794 has started for PR 24708 at commit 92c05b7.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/11049/
Test PASSed.

Test build #105796 has started for PR 24708 at commit 92c05b7.

Test build #105794 has finished for PR 24708 at commit 92c05b7.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/105794/
Test PASSed.

Test build #105796 has finished for PR 24708 at commit 92c05b7.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/105796/
Test PASSed.


Add a flag for connection timeout

Being able to specify connection timeout gives the user the ability to skip sources which take a longer amount of time to return results. For example, Wayback Archive

Added in e437d6ac624b412c05e5e1bf5e61c85a8360ca0a


Add configuration option for width of side panel

Provide a way to configure the width of the side panel.  If one or more of the web map titles are longer or if the map descriptions are long it is useful to expand the side panel so that the titles are more readable and/or more of the description appears without scrolling.  Also if there are images in the description they can easily be chopped off due to the width of the side panel.

@oevans  another good suggestion. I'll look into this for a future release.

Added an enhancement for this issue and will look at it for the next release.

related, I am working with the left panel to add a description-- i cannot get my formatted code (hyperlinks, mailto, logo, etc) work within the   "description": "",
does Esri have a reference/example anywhere on how to add formatted code to web app templates?

You can format it using html. One option would be to configure the template description using the configuration panel in online then  use the appid for the configured app in your locally hosted template.
Here's an example of a formatted bit of text for the content pane:
"description": "This is a sample app that compares multiple maps. You can configure this app to have formatted text, Hyperlinkslistsofitems and more.",

thanks, I have tried that, but when i have a formatted hyperlink, such as "description": "This is a sample app that compares multiple maps. You can configure this app to have formatted text or Hyperlinks and more.", it does not work.
if i leave out the hyper link part i can get the text to format bold or italic, but cannot get anything with quotes to work. the example you have is good and varied but just copying it without the source code formatting  does not explain how it can work. perhaps there is another way to add hyperlinks an mailto: ? thx

Sorry looks like its confusing because the html tags rendered in my comment so you can't see how it should look. Let's see if this works
'    "description": "This is a sample app that compares multiple maps. You can configure this app to have formatted text, Hyperlinkslistsofitems and more.",'

it worked this time, thanks! Its the little things like this that drive me crazy. a good place to stop for the day, thanks again


How do you config others vfs schemes likes webdav, https to be used in transformations?

Hello,
I am interested in configuring other vfs schemes to be able to connect to different data sources such as webdav, http (s), (s) ftp, etc.
Using the visual connection manager vfs only allows us to connect to the local disk, Hadoop cluster, S3 and HDFS, but for many cases of ETL's these sources are insufficient.
If you could provide an example and give us some reference on how to configure another schema vfs like webdav I would be very grateful to you.
Regards.

Hi @fgomezotero ,
Thank you for using webSpoon.
As of v9.0, PDI supports only a limited file system types like S3, HDFS, Google Drive.
https://help.pentaho.com/Documentation/9.0/Products/Connecting_to_Virtual_File_Systems
As webSpoon just provides a web GUI, additional vfs or anything beyond what PDI offers is out of scope of webSpoon.
If you want PDI to support additional vfs, please create an issue at Pentaho Jira.
Thank you for your understanding.

To add a bit more context:
Inside steps you can still use other VFS connection types.
for example if you want to read a csv directly from ftp you can use a text file input and in the filepath you can use<EMAIL_ADDRESS>You just can't browse there using the vfs browser.
There is still the option to create some global parameters that contain a source. you could add MY_FTP_SERVER to the Kettle.properties and bind this paramter to  "ftp://myusername:mypassword@somehost"
and in the text file input step you can then do ${MY_FTP_SERVER}/path/to/file.csv

@hansva thanks for clarification. I was confused between vfs as a data source and vfs browser.
I was actually able to use SFTP in webSpoon as described at https://github.com/HiromuHota/pentaho-kettle/wiki/Admin%3A-Security#restrict-access-to-the-local-files-and-use-files-in-a-file-server-instead

In addition, it is recommended to use files in a file server such as SFTP for data inputs/outputs. You can use VFS to access those files. There are many supported file systems: SFTP, HTTPS, WebDAV; and some of them have a user authentication mechanism.

@fgomezotero, as @hansva describes, you should be able to use those vfs (like SFTP) by manually typing the url like below:

or you can use a global parameter as @hansva describes.
I'd recommend to try it on Spoon first then switch to webSpoon.


Any planning to include video benchmark?

Such as video comprehension, generation, ...

Such as video comprehension, generation, ...
Not yet


Fix UI Changes on Revisions and replicas option in container app and fix Container Image port

Changes proposed in this pull request:

The Container App page in the Azure portal now has the option Revisions and replicas. In the instructions there is the old name.
Exercise 07, Task 03 , Step 03: the instructions tell to set port 80 for the Ingress. The container images was created exposed the port 5000. If you set port 80 you receive the following error when you try to navigate to the Container App URL:

If you set as port 500, you receive the "Hello World" message:

Thanks Massimo. I will review and update.


non deleted scripts' test part

"scripts": {
"test": "echo "Error: no test specified" && exit 1",
"start": "node ."
},

https://github.com/emirgoren/turkish-id-verification/commit/8d1ea0d18d565e55ac40e2ec5c9f38d93e8fa702


share the data b/w sandbox and current env

How to test: https://github.com/TomasTomecek/sandcastle/tree/mo0r#developing-sandcastle (reading rest of the readme is also a good idea)
=== 15 passed, 1 skipped in 39.04 seconds ===

anyone wants to review?

In Makefile instead of pytest tests should be pytest-3 tests.

Also in Makefile should be changed:
test-in-container: test-build

to
test-in-container: test-image-build

In Makefile instead of pytest tests should be pytest-3 tests.

Well, that's your work 35be15d9d63fb86c1fa8eb6e59368842db97a7ea

Also in Makefile should be changed:
test-in-container: test-build

to
test-in-container: test-image-build

Yes, we could do that, but then before doing a test run, 2 images would be built all the time, which would slow things down (I'm not a fun of that).
Anyone else have an opinion here? I don't mind doing that, but it's just that I would never use such make target myself (which slows me down).
In the meantime I added a note to dev docs that the image needs to be built
before running tests. Also the test_in_pod test actually does make test-image-build.

 I think that solved this error for me then. Relevant code:
https://github.com/user-cont/conu/blob/08caae7bb6bdd265b55bb106c3da6a7946a5a352/conu/backend/k8s/client.py#L30
Let me know if you need help to utilize it here at least for the tests.

guys, you don't understand what's the problem :D
the issue is that the service account associated with the pod does not have permission to create new pods, which means that you need to give edit perms to the sa. I did that when I started working on this and forgot about it. I'll add the commands which need to be ran in order to fix this once I'm in the office.

pushed

Tests are passing. LGTM

Guys, thanks for the reviews!
I'll merge, Rado feel free to put more comments here and I'll address them in a next PR.
I have more changes locally, will open a new one.

Just one thing, I ran the tests and got:
            if with_pv_at:
                api.delete_namespaced_persistent_volume_claim(
>                   claim_name, NAMESPACE, V1DeleteOptions()
                )
E               TypeError: delete_namespaced_persistent_volume_claim() takes 3 positional arguments but 4 were given

tests/conftest.py:146: TypeError

This can be easily fixed by replacing V1DeleteOptions() for body=V1DeleteOptions() on line 146 in conftest.py.

@rpitonak nice catch!