Custom cornerstone tool not working as expected in production

Hi,
I created a custom tool similar to Probe that is working well in development mode. I have added a callback to open a custom dialog (similar to ArrowAnnotate behavior) when a measurement is added. The problem is that in production mode, with minimization enabled, my custom tool is no longer recognized in extensions/cornerstone/src/init.js in this method:
 /* Add tools with its custom props through extension configuration. */
  tools.forEach(tool => {
    const toolName = tool.name.replace('Tool', '');
    const externalToolsConfig = configuration.tools || {};
    const externalToolProps = externalToolsConfig[toolName] || {};
    const internalToolProps = internalToolsConfig[toolName] || {};
    const props = merge(
      internalToolProps,
      parseToolProps(externalToolProps, tool)
    );
    csTools.addTool(tool, props);
  });

In production mode it returns a class like this whereas in development mode, it returns this
The problem is that in production mode, tool.name returns "t" for all tools, so the internalToolsConfig is not set for my custom tool, which results in the custom dialog not opening when I click on the viewport to place a measurement.
Please let me know if you have any tips to address the situation. I have tried to exclude my customTool from the minimization in TerserJSPlugin but it didn't help.

The problem is that in production mode, with minimization enabled, my custom tool is no longer recognized in extensions/cornerstone/src/init.js in this method:

Where/how have you configured the OHIF Viewer to add your custom tool?

In production mode it returns a class like this whereas in development mode, it returns this

Does this hold true for any custom tool you provide? Or just this one in particular?
We usually add custom tools in new extensions that call cornerstoneTools.addTool directly. Another common path is via the appConfiguration file, but tools referenced and specified there would normally be included via a separate script-tag/bundle.

Hey Danny, thank you for getting back to me!
I have configured the OHIF Viewer to add my custom tool inside extensions/cornerstone/src/init.js by adding it in toolsGroupedByType under annotations property.
Yes actually the same behavior occurs with ArrowAnnotate where a custom modal dialog shows in development whereas the default browser prompt is show in production.

That is odd. I'm not sure why our deploy preview would use the custom UI, but your local build would not. ArrowAnnotate in particular shouldn't simply throw the default browser prompt; it would likely error instead. This makes me think that the "config" for that tool is not being set and the original behavior is running.
I'm not sure how to diagnose and provide guidance without the source in front of me. It sounds like you're in an odd situation.

This makes me think that the "config" for that tool is not being set and the original behavior is running.

Yes this is what is happening. the settings in internalToolsConfig are not applied in production mode, neither for arrowAnnotate, nor for my custom tool, thus reverting back to the "original behavior" set in ArrowAnnotateTool.js at the end of the file:
function getTextCallback(doneChangingTextCallback) {
  doneChangingTextCallback(prompt('Enter your annotation:'));
}

function changeTextCallback(data, eventData, doneChangingTextCallback) {
  doneChangingTextCallback(prompt('Change your annotation:'));
}

I believe this it because of minification that impacts toolName in the method I shared in my first post, which results in the configuration not being set and the default behavior happening instead.
Actually you can see the behavior I'm referring to if you go to a study on the ohif demo viewer, like this one https://viewer.ohif.org/viewer/999.999.1.19941016.083000 and try to use the arrowAnnotate tool. You will get the default prompt like this
Let me know if that makes sense. I can also share my code if that helps, and it will be very similar to the configuration not working for arrowAnnotateTool.

viewer.ohif.org is a few versions behind. https://viewer-dev.ohif.org is always a reflection of the code merged to master. It appears to be using a Modal instead of a Dialog for some reason, but regardless, it's a custom UI.

Oh I didn't know that. You're right then it's odd that in production on my machine the prompt looks like the default browser's one for both my custom tool and arrowAnnotateTool, but not on https://viewer-dev.ohif.org
Here's the code I have in Viewers/extensions/cornerstone/src/init.js https://github.com/spreemohealth/Viewers/blob/da2f8e8c385d68ad65f422bbc87c9c25fb815e48/extensions/cornerstone/src/init.js#L1-L545
And here is the code for my custom tool (I have gotten rid of the default getTextCallback here temporarily while I was testing, which means there's no prompt at all currently)
https://github.com/spreemohealth/Viewers/blob/da2f8e8c385d68ad65f422bbc87c9c25fb815e48/extensions/cornerstone/src/landmarkTool.js#L1-L217
Thank you so much for your help and please let me know if you see anything odd here for either the arrowAnnotateTool or my custom tool.

hi @sinanmb, hope you are doing well!
I'm trying to add a new cornerstoneTool but I'm not getting any luck.
If you have time, could you please help me to set up a new tool?
I just created this issue: https://github.com/OHIF/Viewers/issues/2025
I would love to get some feedback to know how to setup a new tool, so I can code a custom one.

I have the same problem

This is always the case in production mode

@dannyrb Help me analyze it, thank you

webpack config


ZombieJS viewport

Is it possible to set a viewport for the headless browser? Like:
const Browser = require('zombie');

Browser.viewportSize = {
            width: 300,
            height: 250
        };

No, Zombie does not render anything, so there's no viewport.


cmd/compile: slow to compile 17,000 line switch statement?

Go 1.21.0, darwin/arm64.
What did you do?
I noticed while building a https://gioui.org/ app for Android that two compile processes were consuming 100% CPU.
Looking at the arguments, they were both compiling<EMAIL_ADDRESS>That file has a switch statement that's like 17,000 lines long:
https://github.com/benoitkugler/textlayout/blob/v0.3.0/fonts/glyphsnames/glyphs.go
Something quadratic in the compiler?
What did you expect to see?
Less CPU usage.
What did you see instead?
100% CPU for long enough for me to file this bug on a modernish Mac with decent CPU.

I think previously #57959

I don't think this is the same as #57959. At least, pprof points to a different cause. That was the prove pass, this one is the memcombine pass.

It's just that the author is being punished for writing that.

cc @golang/compiler

@robpike, I figured there must be some history there, and sure enough: https://github.com/benoitkugler/textlayout/commit/24bac7a639940ba6a2a7e02fcc2f57102841fd9e

glyphsnames: Use switch cases for lookups instead of huge maps
This seems to increase binaries about 0.3MB but decrease memory usage by around 1MB.

So maybe there's room for an improvement in our map literals. (https://github.com/golang/go/issues/2559#issuecomment-410231210, etc)
But maybe the improvements in Go 1.21 (https://go.dev/doc/go1.21#linker) make that "decrease memory usage by around 1MB" comment outdated at this point.

@bradfitz As an aside, please note that recent versions of Gioui (starting at 0.0.1 for instance) do not depend on github.com/benoitkugler/textlayout anymore, and that the (very ugly) code for glyph names has been removed.

@gopherbot Please open a backport issue for 1.21.
This is a bug in the compiler that causes unreasonably slow compilation on some large functions.
I'm leaning towards backporting the CL for this issue, as it might be pretty painful, even if it isn't a correctness bug.
The CL itself is super safe.
Happy to hear other opinions though.


Paella 7: Switch between video resolutions no longer possible for progressive download video streaming

The default encoding profile in Opencast creates different video resolutions. With the Paella 7 player, however, it is no longer possible to switch between these different resolutions during progressive download video streaming. Only one of the video resolutions is loaded and played by the player. (See also https://github.com/polimediaupv/paella-core/issues/342#issuecomment-1863982955 why this feature was dropped in Paella 7).
Since it makes no sense to create multiple video resolutions without the ability to switch between them in the player, the default behaviour should be adjusted. One option would be to switch from progressive download to adaptive HLS streaming. This way, the video resolution in the Paella 7 would automatically adapt to the available network bandwidth, and the user would again be able to manually switch between the different resolutions.

@snoesberger PR #5685 brought the quality selector back in Paella 7. Can we close this ticket?


Better fix to nil on vimfunc

This can differentiate between string 'nil' and value nil.
Plus cleaner IMO

Yep looks better for sure


Unable to launch Ch 2 solution

Using Google Chrome I get following error
Failed to load file://Web/AngularWithTypescript/Chp1/main.ts: Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.
Please suggest.

Which app from CH2 gives you this error?  How do you run this app? Which versions of node.js and Angular CLI do you have installed?

This code https://github.com/Farata/angular2typescript/tree/master/chapter2/hello-world-ts gave error.
I did not use node.js, etc as this is first angular example. So I just wrote the html and ts file and launched them in Google Chrome. I hope I am doing right here.

This is fixed,
I started running http-server -o pointing it to the chapter2/hello-world-ts  source code directory locally and it worked. So perhaps, this does not work without Node.js.

This has nothing to do with node.js. You should run this example using any web server. For example, you can go into the hello-world-ts directory and just run http-server from there.


Feature request: line wrapping

Maybe this exists and I missed it in the docs, but would love to be able to wrap lines with Copenhagen! 😄

Thanks for the request! I think this might have to wait a little bit; while it's certainly possible, the rendering engine relies on each line being an identical height right now. Would take a considerable refactor right now.
I'll leave the suggestion here because I think it's important! Just not sure the ETA.

Maybe this exists and I missed it in the docs, but would love to be able to wrap lines with Copenhagen! smile

Same, I'll take a look at the code and try to implement since I need this to lol

Maybe this exists and I missed it in the docs, but would love to be able to wrap lines with Copenhagen! smile

Same, I'll take a look at the code and try to implement since I need this to lol


⚠ Samsung has degraded performance

In c11e7cb, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2578 ms

Resolved: Samsung performance has improved in c666131.


Bottom Shadow Remove

Hi, I want remove material design shadow under the bottom of "super-tabs-toolbar".
I'm trying to create a toolbar with a transparent background and no border to make it float above the slide.
After this I will also have to change the general width of the bar.
For the moment I can not remove that shadow below, I also tried to look in the component but I did not find reference to box-shadow

Look into :after pseudo-element  for super-tabs-container. I was able to remove it using this:
super-tabs-toolbar {
  &:after {
    background: transparent;
  }
}

That shadow, if we speak about same things, is not built using box-shadow, instead it is a base64 added as background-image to the toolbar.

Sorry I forgot to publish this request, I checked it works! Big thanks.

You can add no-border attribute and that will remove it. Similar to how <ion-header> works.
<super-tabs-toolbar no-border>
  ...
</super-tabs>


Query parameter serialization styles

Description
OpenAPI 3 supports various different options how query parameter objects should be serialized. See https://swagger.io/docs/specification/serialization/#query
Issue description
Unfortunately openapi-ts doesn't seem to support that yet.
For query parameters it seems to default to style: deepObject
The OpenAPI reference, in contrast, mentions style: form and explode: true as defaults for query parameters (see https://swagger.io/specification/#parameter-object).
That causes incompatible clients for server APIs using that functionality.
Example
Here's an excerpt from a simple API endpoint returning a redirect URI and allowing to pass arbitrary query parameters. This is done by defining a query parameter params with a key-value map type and serialization options style: form and explode: true. The explicitly defined serialization options actually wouldn't be necessary since they just set the values that are defaults anyways, according to the spec.
  /application/{applicationGUID}/redirect:
    get:
      operationId: getApplicationRedirectUri
      parameters:
        - name: applicationGUID
          in: path
          description: applicationGUID
          required: true
          style: simple
          explode: false
          schema:
            type: string
        - in: query
          name: params
          schema:
            type: object
            additionalProperties:
              type: string
          style: form
          explode: true
      responses:
        '200':
          description: OK

A request with the following sample parameter values
this.applicationService.getApplicationRedirectUri({
	applicationGuid: 'a5578d89-7f07-4b9a-b9e6-6e1eb6ea2bf8',
	params: {
		source: 'previousActivity',
		target: 'nextActivity',
	},
}),

.. will result in the following (wrong) request URI:
/application/a5578d89-7f07-4b9a-b9e6-6e1eb6ea2bf8/redirect?params[source]=previousActivity&params[target]=nextActivity
The correct request URI would be:
/application/a5578d89-7f07-4b9a-b9e6-6e1eb6ea2bf8/redirect?source=previousActivity&target=nextActivity
How other generators deal with this
For an example how other generators solve this, see: https://openapi-ts.pages.dev/openapi-fetch/api#queryserializer
In that project they just allow to configure this on a request / client level instead of per parameter. And they also use non-standard defaults.

@swurzinger Thanks for creating this issue. Looks like something we should provide support for. Will need to dig deeper into it!

Hey @swurzinger, thank you for the issue. Out of curiosity, which codegen tool are you using? If you're not using the one you linked, why not?

For context: I'm trying to migrate from a manually written API client to a generated one. Therefore I'm evaluating multiple tools, not only this one. I chose this one for my prototype implementation, though, and encountered this issue during migration/testing. Afterwards I verified how other tools behave and unfortunately none seems to support it really properly, as described in the spec. openapi-typescript at least allows to configure it on a request or client level, but ignores the definition in the OpenAPI YAML and requires additional configuration of the client instead (which is bad). However, most others are worse and don't support it at all, e.g. openapi-generator.

@swurzinger will take this into consideration as part of the clients release

@swurzinger will take this into consideration as part of the clients release

Thank You! Is there some more information available on what will be different for the new clients vs. legacy clients? Or is it "just" new clients based on newer http client libraries/apis (fetch, axios, ..)? The documentation page doesn't really help me understanding that.
I just see a potential problem for my use case:  a client for Angular is not planned (yet?), which might make it unsuitable for me in the first version. Not sure how hard it will be to create a new client based on Angular's HttpClient or adapt the existing one.

I've just been made aware of this tool and have seen that it's a fork of openapi-typescript-codegen. I have a PR open over there for more than a year now. It's basically ready to be merged but the repo owner is inactive. Maybe it helps with integrating this feature into this repo too.
https://github.com/ferdikoomen/openapi-typescript-codegen/pull/1426

Hey @Floppy012, welcome over on this side! 👋 Yes, this will be available in Hey API. It will be part of the new clients which is currently WIP.

@mrlubos thank you for the ping on the other side! Feels great to see that there is an alternative now with an active maintainer :) We will be moving to this tool soon, looking forward to have this feature!

Axios is now available too! Closing this issue, please open a new issue if you need a specific client that isn't supported right now.


Advertise clearly that we support names in every language in Zulip "full name" input forms

We should have a ? mouseover where we have "input your full name" input forms that explains you can write your name however you prefer it to be displayed, with full support for unicode etc.
I think the two that need this are:

[ ] Settings page
[ ] Registration form

@timabbott  Hi, I'd like to take up this issue. Can you point me to the files where I can find the relevant codes?

@amalad you should be able to find them with git grep, but registration is templates/zerver/register.html and the settings page is static/templates/settings/account-settings.handlebars

@timabbott It would be better if we could give a catchy line below the input form of full name to convey what we wish to say through the mouseover. Just thinking on UX basis. Something like "Try displaying name in multiple languages" or "Zulip supports multiple languages, try it out" or a line more catchy.

@timabbott I've made the changes for the settings page and it seems to be working fine. What message should be displayed?

Maybe: "Zulip has full unicode support, so feel free to spell your name however you'd like to appear"

Is something like this okay for the settings page?

That looks pretty good to me. Two small things:
Why does the arrow at the bottom of the message show to the right of the question mark?
And also I think you should change the message a little bit. If I were you I would replace the first period with a comma (Zulip has full unicode support, so ...) and I would also switch it and like (however you'd like it to appear.)

That was a typo. Thanks for pointing it out. I'll shift the position of the arrow as well. Thanks

How about putting the ? to the right of "Full name" rather than the text box?  I think that'd be clearer.

@timabbott  I incorporated that change. But I keep getting the following error when I run the test locally:

I'm not sure why I'm getting this error. Could you help me out?

@amalad It might be that there is a blank line with only whitespace characters. Try checking any new blank lines you might have created, trailing whitespace's are something like unintended indentation(tabs).

@amalad the problem is there's extra spaces at the end of that line of code, after the ;.

Removed the trailing whitespaces from the code

@amalad great!  BTW it's best to do this sort of discussion on technical details on the PR itself, not in the issue thread.


peripherals/i2s_adc_dac unclear instructions (no output on earphones) (IDFGH-4257)

Hello all,
I have a question (issue potentially ?) regarding peripherals/i2s_adc_dac. Upon successful compilation and flashing (output as expected on monitor) of the example, I cannot hear anything coming out of my earphones ( plugged as suggested in the example to GPIO25 26). I tried 3 pair of small earphones (need lower power than speakers ? or what is even considered a speaker, an active one ?) with no succes, all I can hear is white noise.
Now I understand a DAC is not supposed to drive directly because of its low power output. But the instructions specify only the microphone needs to be amplified, not the speakers. The other example from ESP-ADFget-started/play_mp3_dac also suggests a similar setup, but I can't get that working at all as I don't have any of the boards mentioned and it won't work with mine (TinyPico). I received conflicting reports about people being able to drive their earphones from the GPIOs 25 26. Also, I do not care about quality or background noise as long as I can output something.
Are the instructions clear and my understanding about DAC not being able to drivecorrect ? Or is there a need to specify that the speakers should be active ?
Thanks in advance

I would suggest using an external audio amplifier.
Simply search your favorite electronics parts shop for "audio amplifier" and pick anything cheap.
For example, I'm using one with PAM8403 and a potentiometer and it works ok.


Support use of predefined configmap, upgrade locust and python versions

Signed-off-by: Kristian Haugene<EMAIL_ADDRESS>
What this PR does / why we need it:
Adds support for referring to an existing configmap containing Locust scripts. This makes it possible to add your own scripts without forking the Chart - but simply setting a configmap name in values.yaml.
In addition to this it's upgrading Locust from v. 0.7.5 (June 2016) to v. 0.9.0 (September 2018) and the underlying python-alpine image from 2.7 to 3.7.
Which issue this PR fixes

fixes #2560

Special notes for your reviewer:
The new Docker image is built from the previous honestbee fork of the original GCP example. The honestbee image repo does not seem to be maintained anymore. We're using Locust actively in our organization and will keep up with version updates, issues, improvements and pull-requests to the new image.
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md

cc @so0k
@haugene Since you added yourself as a maintainer: You'd be expected to actively maintain the chart, review PRs, triage issues etc. It this what you are up for? @so0k: Are you ok with this?

Hi @unguiculus. Yes, that was what I was thinking. At least help out as far as I can. I can't promise "daily commitment" for years to come, but I did get approval within my organisation for spending time contributing to open-source projects before adding myself. So I'm prepared to follow up.
That being said I'll of course just rebase myself out of it if @so0k prefers.

I think I haven't had the time to maintain this so if you want to take over, @haugene - please feel free to do so

@so0k Great. I know how it is with these tasks. Not easy to find the time. Hopefully I can help out. Is this good to go then @unguiculus?

@unguiculus or @prydonius up for merging?

/lgtm


Fix Retain Cycle

The nested ObservableObject instances were not being deallocated correctly due to being retained when creating the subscription.

Would you be up for adding a test for the case this fixes?

Sure, I'll give it a shot


Error resolving symlink after upgrade to Gulp v5

Before you open this issue, please complete the following tasks:

[x] use the search bar at the top of the page to search this repository for similar issues or discussions that have already been opened.
[ ] if you are looking for help from the gulp team or community, open a discussion.
[ ] if you think there is a problem with the plugin you're using, open a discussion.
[x] if you think there is a bug in our code, open this issue.

What were you expecting to happen?
We have a few symlinked icons in our repo. The symlinked files should have been processed by the pipe, and written to the dest.
What actually happened?
After migrating from Gulp v4.0.2 to v5.0.0, Gulp claims that the files do not exist.
Please give us a sample of your gulpfile
The full file is available on GitHub. The main task relevant to this issue could be boiled down to this:
import { dest, src } from "gulp";
import svgmin from "gulp-svgmin";

export function icons() {
  return src("*.svg", { cwd: "./icons" }).
    pipe(
      svgmin({
        // @ts-ignore
        configFile: "icons/svgo.config.js",
      })
    ).
    pipe(dest("./html/images/icons/dist"));
}

Terminal output / screenshots

#22 2.076 [19:15:24] Starting 'icons'...
#22 2.102 [19:15:24] 'icons' errored after 26 ms
#22 2.103 [19:15:24] Error: ENOENT: no such file or directory, lstat 'material/baseline-account_box-24px.svg'
#22 2.104 [19:15:24] Finished 'default' after 49 ms

(GitHub Actions log)
Please provide the following information:

OS & version [e.g. MacOS Catalina 10.15.4]: GitHub Actions (ubuntu-latest)
node version (run node -v): v20.15.0
npm version (run npm -v): 10.7.0
gulp version (run gulp -v): CLI version: 3.0.0, Local version: 5.0.0

Additional information
Gulp v4 performs this task just fine. The icons are definitely available in the repo: https://github.com/openfoodfacts/openfoodfacts-server/tree/e33bea5931cab7f321db55349290137b3551ad09/icons

Here is a simple code that copies some files to the assets directory.
const gulp = require('gulp')

gulp.task('fonts:fontawesome', () => {
  return gulp.src([
      'node_modules/@fortawesome/fontawesome-free/webfonts/**/*.{eot,svg,ttf,woff,woff2}',
    ])
    .pipe(gulp.dest(`./fonts/fontawesome`));
});

gulp.task('default', gulp.series(['fonts:fontawesome']))

The copied files are not the same as the original ones.
(The above shows the original files, The below shows the files after being copied through Gulp)

From these results, it appears that some kind of transformation is taking place when using Gulp.
This was confirmed with Gulp v5.0.0 and Node v22.11.0.


Add primary_github_owner and primary_github_owner_type fields to the Projects mart

Describe the feature you'd like to request
API users would like to query a project and get the GitHub owner it is associated with
Describe the solution you'd like
Additional fields in the Projects mart.
If there is more than one GitHub owner, choose the org or if there is more than one org then the one with the most recent activity as the primary. Owner type can be  personal or organization. May also want to consider a field to indicate projects with multiple owners.
Describe alternatives you've considered
Users can grab this directly from BigQuery or by doing some filtering client side.

I'm not sure we want to do this, or at the very least we should understand the use case better.
If we expose this, and people start using it, it's going to be hard to tear out.
What semantic meaning does choosing "the one with the most recent activity as the primary" have? Why would I ever want that?

Update: I moved this to an int model, but we don't expose via the project mart.


[refactor](unused code) delete unused method from field.h

Proposed changes
Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


cli: add black formatter to travis

Format the codebase using the black linter, and incorporate the checker to the travis pipeline

Hi! I think with pytest-black this could be sorted out.  Just to be sure, one is to ensure the codebase at present follows black linter and then put black linter in Travis pipeline, correct?

hey @edeediong yes, that's correct. We want to format the code using the black formatter, commit those changes, and then integrate the formatter to the project (as a dev dependency) so that travis automatically runs the formatter and fails the tests if the code is not correctly formatted. This can be done first, before any tests have been executed, so that we fail fast.


Improve Accessibility of Audio Content with the audio Element

Describe your problem and - if possible - how to reproduce it
It asks you to close audio element, even though if you closed it. This only happens if you add an "id" to the audio tag. If you dont add the "id" tag it runs without any problem.
Not Running code:

Real Coding Ninjas

A sound clip of Zersiax's screen reader in action.

    <audio id="test" controls>
      <source src="https://s3.amazonaws.com/freecodecamp/screen-reader.mp3" type="audio/mpeg" />
    </audio>

Running Code:

Real Coding Ninjas

A sound clip of Zersiax's screen reader in action.

    <audio controls>
      <source src="https://s3.amazonaws.com/freecodecamp/screen-reader.mp3" type="audio/mpeg" />
    </audio>

Add a Link to the page with the problem
https://learn.freecodecamp.org/responsive-web-design/applied-accessibility/improve-accessibility-of-audio-content-with-the-audio-element/
Tell us about your browser and operating system

Browser Name: Google Chrome
Browser Version: 67.0.3396.87
Operating System: Windows 7

If possible, add a screenshot here
Code with "id" not running

Code without "id" running

Duplicate of #17577

@Nirajn2311 I know, but you should see I found the error, is not wrong to add an id, so that's a bug and should be fixed

Yeah I get it, but it is more organised and easier to solve issues if there was only one of each type and duplicates confuse people.
I think someone is already working on it.

Yeah I get it, but it is more organised and easier to solve issues if there was only one of each type and duplicates confuse people.
I think someone is already working on it.


local variable 'seq_no' referenced before assignment

In hdlcontroller.py line 260 seq_no is not defined. Must be defined before try-statement in line 229. Maybe seq_no=0

Indeed, there is a problem here. However, the sequence number to send back as an NACK must be the same as the one received in the frame which is processed. Defining it before the try-statement won't solve this issue.
After having re-read the code of python4yahdlc, I realised that I hadn't taken into account this case. The function get_data throws an FCSError exception without giving the sequence number to send back as an NACK. Consequently, I have to update python4yahdlc first.
Thank you for having noticed that !

I just added a test to bring this problem to light.
Actually, when a frame with an FCS error is received, two behaviours are possible :

Send an NACK, which implies to read the sequence number from the corrupted frame. To do so, as said above, I need to update python4yahdlc first to be able to fix this issue.
Send nothing and let the sender of the corrupted frame send it back after its timeout.

After having fixed this issue, I will add an option to choose between these two behaviours.


[GOBBLIN-1755] Support extended ACLs and sticky bit for file based distcp

Dear Gobblin maintainers,
Please accept this PR. I understand that it will not be reviewed until I have checked off all the steps below!
JIRA

[ ] My PR addresses the following Gobblin JIRA issues and references them in the PR title. For example, "[GOBBLIN-XXX] My Gobblin PR"

https://issues.apache.org/jira/browse/GOBBLIN-1755

Description

[ ] Here are some details about my PR, including screenshots (if applicable):
[ ] Added new preserve attributes for extended ACLs and sticky bit support
[ ] Updated FileAwareInputStreamDataWriter to set ACLs and sticky bit

Tests

[ ] My PR adds the following unit tests OR does not need testing for this extremely good reason:
[ ] build successfully

Commits

[ ] My commits all reference JIRA issues in their subject lines, and I have squashed multiple commits if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":

Subject is separated from body by a blank line
Subject is limited to 50 characters
Subject does not end with a period
Subject uses the imperative mood ("add", not "adding")
Body wraps at 72 characters
Body explains "what" and "why", not "how"

Codecov Report

Merging #3616 (a176b0e) into master (d29bd9f) will decrease coverage by 3.18%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #3616      +/-   ##
============================================
- Coverage     46.91%   43.72%   -3.19%
+ Complexity    10699     2060    -8639
============================================
  Files          2128      408    -1720
  Lines         83231    17618   -65613
  Branches       9275     2151    -7124
============================================
- Hits          39044     7704   -31340
+ Misses        40598     9056   -31542
+ Partials       3589      858    -2731

Impacted Files
Coverage Δ

...a/org/apache/gobblin/util/limiter/NoopLimiter.java
40.00% <0.00%> (-20.00%)
:arrow_down:

...a/org/apache/gobblin/cluster/GobblinHelixTask.java
60.21% <0.00%> (-4.31%)
:arrow_down:

...lin/util/filesystem/FileSystemInstrumentation.java
92.85% <0.00%> (ø)

...che/gobblin/data/management/copy/CopyableFile.java

...bblin/data/management/copy/OwnerAndPermission.java

...bblin/data/management/copy/PreserveAttributes.java

...nt/copy/writer/FileAwareInputStreamDataWriter.java

...ain/java/org/apache/gobblin/runtime/fork/Fork.java

...runtime/messaging/handler/SplitMessageHandler.java

...bblin/converter/StringFieldEncryptorConverter.java

... and 1713 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Move all of the observable query stuff out of the closure

TODO:

[ ] If this PR is a new feature, reference an issue where a consensus about the design was reached (not necessary for small changes)
[ ] Make sure all of the significant new logic is covered by tests
[ ] Rebase your changes on master so that they can be merged easily
[ ] Make sure all tests and linter rules pass
[ ] Update CHANGELOG.md with your change
[ ] Add your name and email to the AUTHORS file (optional)
[ ] If this was a change that affects the external API, update the docs and post a link to the PR in the discussion

@helfer I think I found a magic bullet here.


🤖 Dependabot Container Image Monitoring

Update dependabot to monitor Alpine versions.
FROM ruby:3.2.1-alpine3.16
...

Testing done in this repository.

issue raised with Dependabot https://github.com/dependabot/dependabot-core/issues/7320

Dependabot doesnt support this at this point in time,going to move this to review and add this to a know issue.


Build failing with golint import

When building locally, I get:
 $ make
rm -rf build dist
go get golang.org/x/tools/cmd/goimports
go get github.com/golang/lint/golint
can't load package: package github.com/golang/lint/golint: code in directory /home/sebastian/go/src/github.com/golang/lint/golint expects import "golang.org/x/lint/golint"
Makefile:25: recipe for target 'tools' failed
make: *** [tools] Error 1

Short googling leads to this issue. I'm a Go beginner and cannot make heads or tails of it. Is it a version conflict?

Hi @sbrandtb
Good pickup. It looks like the official path has changed.
I've updated the tools target in the Makefile with 56eb101.
Let me know if that is good for you.

@scottjbarr Thanks, works like a charm now :)
I only had to add ~/go/bin to $PATH, but I guess that's a general Go thing and doesn't need to be mentioned in your readme


feat(wallet): starting Address Index loading, picking, exporting

Description
Caravan is now aware of the starting address index.
When loading a wallet config caravan will jump ahead to the starting address index.
When creating a new wallet, a new Starting Address Index Picker is available.
Does this PR introduce a breaking change?

[ ] Yes
[x] No

Does this PR fixes open issues?

[x] Yes
[ ] No
#149

Screenshot of selector:

Additionally I think the index selector would be better displayed by changing the card heading of "Address Type" to "Address" and having it in that card (perhaps optionally hidden by a "show advanced" toggle).

I like this idea! Maybe "Address configuration"?

I don't want to mess with the other settings pickers. While I agree the starting address index and the address type could be co-located, I don't want this to get held up by UX debate.

I don't want to mess with the other settings pickers. While I agree the starting address index and the address type could be co-located, I don't want this to get held up by UX debate.

I'm honestly fine with that considering that we are already aware that we want to rework this.

Yessir! Looks good to me.


download headers

Prerequisites

[ ] Able to reproduce the behaviour outside of your code, the problem is isolated to Laravel Excel.
[ ] Checked that your issue isn't already filed.
[ ] Checked if no PR was submitted that fixes this problem.

Versions

PHP version:
Laravel version:
Package version:

Description

Steps to Reproduce

Expected behavior:

Actual behavior:

Additional Information
Any additional information, configuration or data that might be necessary to reproduce the issue.

3.1 version download not work at all, i downgrade to 2.1
Call to undefined method Symfony\Component\HttpFoundation\BinaryFileResponse::header()

In order to be able to help you, please fill in the issue template.
Also, note that version 2.1 is no longer supported.

2.1 works finez the problem its on last release.
El vie., 16 nov. 2018 2:53, Glenn Mulleners<EMAIL_ADDRESS>escribió:

In order to be able to help you, please fill in the issue template.
Also, note that version 2.1 is no longer supported.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Maatwebsite/Laravel-Excel/issues/1896#issuecomment-439310619,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAYpzQm1Iya4jXymNI3-FiyVHLOy1ZdVks5uvm7-gaJpZM4Yk2sp
.


Include Altra's Dr Migrate

@jyothisuri
Can you review the proposed changes?
When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

#sign-off

#sign-off
cc
@SnehaSudhirG


Accelerometer data error

Hi,
I have sucessfully initializize the BMI088, init is ok, accelerometer selftest is ok.
I'm using the spi interface and a STM32F7 MCU.
But when I'm trying to get data, values are not stable .
Acc x seems to be ok but some times I get a wrong value
Acc y is always wrong with MSB = 255
Acc z is quite good but with the conversion to G I get a value of 4g.
The bmi088 is positionned like on th Figure11 of the datasheet : x =0g y=0g z =-1g.
Thanks for your answer
Valentin
I get this value :
Acc x LSB :103.000000
Acc y LSB :65336.000000
Acc z LSB :5550.000000
Acc x LSB :41.000000
Acc y LSB :65309.000000
Acc z LSB :5520.000000
Acc x LSB :64.000000
Acc y LSB :65314.000000
Acc z LSB :5541.000000
Acc x LSB :27.000000
Acc y LSB :65289.000000
Acc z LSB :5538.000000
Acc x LSB :52.000000
Acc y LSB :65327.000000
Acc z LSB :5496.000000
Acc x LSB :71.000000
Acc y LSB :65321.000000
Acc z LSB :5583.000000
Acc x LSB :20.000000
Acc y LSB :65324.000000
Acc z LSB :5556.000000
Acc x LSB :47.000000
Acc y LSB :65299.000000
Acc z LSB :5477.000000
Acc x LSB :72.000000
Acc y LSB :65324.000000
Acc z LSB :5515.000000
Acc x LSB :55.000000
Acc y LSB :65329.000000
Acc z LSB :5535.000000
Acc x LSB :54.000000
Acc y LSB :65345.000000
Acc z LSB :5532.000000
Acc x LSB :59.000000
Acc y LSB :65313.000000
Acc z LSB :5546.000000
Acc x LSB :0.000000
Acc y LSB :65277.000000
Acc z LSB :5542.000000
Acc x LSB :18.000000
Acc y LSB :65317.000000
Acc z LSB :5501.000000
Acc x LSB :77.000000
Acc y LSB :65316.000000
Acc z LSB :5494.000000
Acc x LSB :45.000000
Acc y LSB :65303.000000
Acc z LSB :5526.000000
Acc x LSB :52.000000
Acc y LSB :65346.000000
Acc z LSB :5519.000000

@ValCx,
These values are actually correct. It is a signed 16-bit number. So 65336 is actually -200. Subtract 65536 for each of the values if the value is greater that 32767.


Improve the Tips page

Current Behaviour:  The CSS of the tips page is not that good.
https://skpandey885.github.io/HealhUb/pages/tips.html

Expected Behaviour:  Improve the CSS of the Tips page and add more tips in it.
(Note:  The CSS of the tips page needs to be very good)

I am interested in it, assign it to me.

@yeshwanth235 What is the status?


[Typed] Use stimulus values api to set default values

Q
A

Bug fix?
yes

New feature?
no

Tickets
None

License
MIT

It isn't possible to set some boolean options to "false", because they were always overridden by the default value, for example:
showCursor: this.showCursorValue || true
So in this commit the stimulus Values API is used for default values https://stimulus.hotwired.dev/reference/values#default-values

Thank you David! We likely need more of this in other components too - the "defaults" api for values was new in 3.0, and many of the components predate that and so haven't taken advantage of this yet :).


Migrate to MudBlazor

I found too many bugs in Fluentui-blazor and I don't have the time to report them. Also MudBlazor has a lot more components.

Blocked by https://github.com/MudBlazor/MudBlazor/discussions/8753.

Actually fluentui is fine.


Clean-up public API routes for the Assistant

The conversation creation is blocked on my PR: https://github.com/dust-tt/dust/pull/1324 which is blocked on @PopDaph's PR: https://github.com/dust-tt/dust/pull/1303 but as soon as the queue gets processed we can fully clean-up the public API routes

https://github.com/dust-tt/dust/pull/1324 is ready for review to unblock this one

PR in review:
https://github.com/dust-tt/dust/pull/1383


fixed html escape codes in code samples

Some code samples were broken due to unnecessary  html escape codes.
I replaced the escape codes with the proper characters.

@ThomasKramer,
Thanks for having already signed the Contribution License Agreement. Your agreement was validated by Microsoft. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot


chore: Responsive Card Section and Cards(WEB-13)

issue:

Once the window is resized, the sizes of the cards are no longer the exact sizes. This is a blocker. They need to be the same size while collapsing.

issue:

Once the window is resized, the sizes of the cards are no longer the exact sizes. This is a blocker. They need to be the same size while collapsing.

resolved, fixed the flex grow/shrink to not resize on window scale


ui_draw_line: remove std::clamp

Do we even need this check? Won't the nvgScissor make sure nothing outside of the video gets drawn?

I think it might be better to guarantee the validity of the data by ourself


add test code for rocketmq on docker

Codecov Report

Merging #250 into master will decrease coverage by 0.03%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master     #250      +/-   ##
============================================
- Coverage     37.55%   37.51%   -0.04%
+ Complexity      550      549       -1
============================================
  Files           241      241
  Lines          5680     5680
  Branches        575      575
============================================
- Hits           2133     2131       -2
- Misses         3292     3293       +1
- Partials        255      256       +1

Impacted Files
Coverage Δ
Complexity Δ

...alcor/portmanager/util/RestParameterValidator.java
51.02% <0.00%> (-4.09%)
12.00% <0.00%> (-1.00%)

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 80110a7...89d2913. Read the comment docs.

Closed as the PR is resubmitted to the alcor-int repo.
New link: https://github.com/futurewei-cloud/alcor-int/pull/39


develop default/example plan for self-upgrades

it's upgrades all the way down. 🐢

this doesn't really make much sense


(if applicable)What does this sentence mean?

s	the style/theme of the cell (if applicable)

(if applicable)
What does this sentence mean? I configure the background color of the cells are invalid.

@SheetJSDev

Some of the old background color parsing logic from 2013 is still in the source.
At the time, it was apparent that a correct cross-format implementation of full Excel styling would require significant development and investigative effort, beyond the scope of a team of unpaid volunteers.  LibreOffice is effectively 36 years old (StarOffice first release was 1985, OpenOffice was effectively the open-sourcing of StarOffice tech, and LibreOffice is a fork of OpenOffice) and still does not correctly handle certain styling.
The original purpose of the library was data preservation and extraction, and most of the open source energy is devoted to data.  For example, the SSF library exists to make CSV writing consistent with Excel.  We do hope to reach a point where we're happy with the state of data processing (v1.0.0) after which we can revisit styling.
In the interim, we offer more detailed styling and more advanced features as part of our Pro offering.  Many improvements in this project stem from issues that Pro users first encounter and report.


prevent certain sub-domains from created by the user?

is it posible to prevent certain sub-domains from created by the user?
Thanks

Hi @mzaragoza - can you clarify your question?
The gem doesn't currently include any specific logic for handling subdomains. You might be thinking of https://github.com/ErwinM/acts_as_tenant which has explicit support for subdomains.


routing congestion on ihp with rtlmp enabled

Describe the bug
When enabling rtlmp over the previous macro placer, the resultant design is not able to be routed.
Relates to proposed removal of previous macro placer: https://github.com/The-OpenROAD-Project/OpenROAD/pull/6047
Expected Behavior
Design is routable
Environment
OpenROAD v2.0-16787-gcd519bb5e
Features included (+) or not (-): +Charts +GPU +GUI +Python
This program is licensed under the BSD-3 license. See the LICENSE file for details.
Components of this program may be licensed under more restrictive licenses which must be honored.

To Reproduce
Placement:
sc_issue_ethmac_job0_ihp130_sg13g2_stdcell_place0_20241029-121603.tar.gz
tar xvf sc_issue_ethmac_job0_ihp130_sg13g2_stdcell_place0_20241029-121603.tar.gz
cd sc_issue_ethmac_job0_ihp130_sg13g2_stdcell_place0_20241029-121603
./run.sh

Routing:
sc_issue_ethmac_job0_ihp130_sg13g2_stdcell_route0_20241029-120252.tar.gz
tar xvf sc_issue_ethmac_job0_ihp130_sg13g2_stdcell_route0_20241029-120252.tar.gz
cd sc_issue_ethmac_job0_ihp130_sg13g2_stdcell_route0_20241029-120252
./run.sh

Relevant log output
No response
Screenshots
place_macro placement:

rtlmp placement:

congresion markers:

Additional Context
No response

@gadfort it would be helpful to have the macro placement step as well

First testcase:
sc_issue_ethmac_job0_ihp130_sg13g2_stdcell_floorplan0_20241029-131630.tar.gz
Second testcase:
sc_issue_tiny_rocket_job0_ihp130_sg13g2_stdcell_floorplan0_20241029-131607.tar.gz
@maliberty here you go


use STSEnabled flag to install OADP

Description
Install OADP only if the cluster is not STS enabled.
If STS enabled, create a ConfigMap describing the OADP configuration; to be used when manually installing OADP
Related Issue
https://issues.redhat.com/browse/ACM-11254
https://issues.redhat.com/browse/ACM-11374
Changes Made

Removed backup-restore-oadp Policy installing OADP and replaced it with 2 yaml, creating the OADP Subscription and OperatorGroup
Used the new flag clusterSTSEnabled and generate the OADP Subscription and OperatorGroup only if clusterSTSEnabled=false
Generate a ConfigMap if clusterSTSEnabled=true, based on the chart configuration for OADP. The user can get the OADP channel and other settings from this ConfigMap, when installing OADP manually
Update templates/rbac.go to include Subscription,OperatorGroup, ConfigMap

Screenshots (if applicable)
Add screenshots or GIFs that demonstrate the changes visually, if relevant.
Checklist

[ ] I have tested the changes locally and they are functioning as expected.
[ ] I have updated the documentation (if necessary) to reflect the changes.
[ ] I have added/updated relevant unit tests (if applicable).
[x] I have ensured that my code follows the project's coding standards.
[x] I have checked for any potential security issues and addressed them.
[x] I have added necessary comments to the code, especially in complex or unclear sections.
[x] I have rebased my branch on top of the latest main/master branch.

Additional Notes
Add any additional notes, context, or information that might be helpful for reviewers.
Reviewers
Tag the appropriate reviewers who should review this pull request. To add reviewers, please add the following line: /cc @reviewer1 @reviewer2
Definition of Done

[ ] Code is reviewed.
[ ] Code is tested.
[ ] Documentation is updated.
[ ] All checks and tests pass.
[ ] Approved by at least one reviewer.
[ ] Merged into the main/master branch.

/lgtm


Error: Expected string containing name

related to #455 #429
Version of EOSJS
eosjs20.0.0beta3
Describe the bug
I'm trying to make a contract action with Node.js and i get this error message.
The contract is the eosio.token contract.
The error says i'm missing the 'name' param but it is clearly there. People have had this issue before but all issues have been closed and gone radio silent.
Error: Expected string containing name
    at SerialBuffer.pushName (C:\Users\LACHLAN\Desktop\smartpressWeb\ContractGenerator\node_modules\eosjs\dist\eosjs-serialize.js:234:19)
    at Object.serialize (C:\Users\LACHLAN\Desktop\smartpressWeb\ContractGenerator\node_modules\eosjs\dist\eosjs-serialize.js:814:57)
    at Object.serializeStruct [as serialize] (C:\Users\LACHLAN\Desktop\smartpressWeb\ContractGenerator\node_modules\eosjs\dist\eosjs-serialize.js:564:28)
    at serializeActionData (C:\Users\LACHLAN\Desktop\smartpressWeb\ContractGenerator\node_modules\eosjs\dist\eosjs-serialize.js:1041:12)
    at Object.serializeAction (C:\Users\LACHLAN\Desktop\smartpressWeb\ContractGenerator\node_modules\eosjs\dist\eosjs-serialize.js:1051:15)
    at Api.<anonymous> (C:\Users\LACHLAN\Desktop\smartpressWeb\ContractGenerator\node_modules\eosjs\dist\eosjs-api.js:277:71)
    at step (C:\Users\LACHLAN\Desktop\smartpressWeb\ContractGenerator\node_modules\eosjs\dist\eosjs-api.js:44:23)
    at Object.next (C:\Users\LACHLAN\Desktop\smartpressWeb\ContractGenerator\node_modules\eosjs\dist\eosjs-api.js:25:53)
    at fulfilled (C:\Users\LACHLAN\Desktop\smartpressWeb\ContractGenerator\node_modules\eosjs\dist\eosjs-api.js:16:58)
    at <anonymous>
    at process._tickDomainCallback (internal/process/next_tick.js:228:7)

async function tx() {
    try {
      let resp = await api.transact({ actions: [{
          account: paramss.contract,
          name: 'transfer',
          authorization: [{
            actor: paramss.sender,
            permission: 'active',
          }],
          data: {
            from: paramss.sender,
            to: paramss.receiver,
            quantity: `${(paramss.amount).toFixed(4)} ${paramss.symbol}`,
            memo: paramss.memo,
          },
        }]
      }, {
        blocksBehind: 3,
        expireSeconds: 30,
      });
      resp = {...resp, paramss}
      console.log(resp);
        return resp
      } catch(err) {
        console.log(err)
        return err
    }
  }
  tx()

To Reproduce
Steps to reproduce the behavior:

try to run this action on the specified version of eosjs

Expected behavior
Transaction goes through
Desktop (please complete the following information):

OS: Windows10

Additional context
I'm using the eosio.token contract.

This report exhibits a common reason it goes silent: the actual value passed to api.transact isn't shown. e.g. maybe paramss.sender is null, or is a number, or is an object.

I tested it with a hard coded string value with the same result.

I had tried hard coding nearly everything.
Turns out the sender value became undefined in my object.
For anyone with this issue, try first hard coding the entire transaction and seeing if the error still occurs.


Question about Conditional Sampling

Hi authors,
Thank you for sharing the repo for an interesting work! While reading the paper, I was confused with evaluation setting for conditional sampling. In the 2nd paragraph of Sec 5.2, it says In the experiment, we randomly sample 50 forecasting windows for each sequence from the test set but what I assumed from the code (https://github.com/davecasp/add-thin/blob/81516667b5f508fed3eb58d8061fe6cadab286ec/add_thin/data.py#L15C1-L15C17) was that FORECAST_HORIZON denotes $\Delta T$ (forecasting window) in the paper.
Is that true? If so, I am not sure about what it meant by randomly sample 50 forecasting windows. Could you please elaborate how $\Delta T$ and $T_s$ are determined?
Also, it seems like there is no instruction for training and evaluation yet. Do you have a plan to release it sometime soon?
Thank you in advance!

That makes sense. Thank you for the clarification! Looking forward to playing with the code :)


Placeholder: Progress of annotation is not reflected in the overview page

Please report the bugs with the commit number and screenshots here.

Can we merge this issue with #6 ?
I assume it is related to the listener mechanism we implement for continuous communication between the server and the client.

I am not sure. I have noticed it two or three times, and some people have reported it, too.
However, I never managed to dig a bit deeper and save some debugging info because I was hurrying
Please let it open for the next two weeks, and if I don't observe it, let's close it.
If I will spot the behavior again, I will post here the debugging info and then we can discuss if it is the same case.

The issue should be solved at the moment. We identified the main issue with using multiple gunicorn workers which spanned multiple app instances.
Everything should be fine if only multi-threading is used.


what can i use in place of push method in new version

how can i replace this push method in new version
postModules.push({
template: 'customPostShares',
order: 40
});
when i use this it gives an error that 'you cannot call push method'

If you're already using the latest Telescope version (RefactorScope), then pushing to template modules are already different. You can see the documentation here: http://telescope.readme.io/v0.20/docs/template-hooks

To get and idea, please see the modules.js file in: Telescope/packages/telescope-posts/lib/modules.js

it was renamed to add
Telescope.modules.add("hero", {
  template: 'hello',
  order: 1
});

and also same for registeredField renamed to addField


[10.x] Use atomic locks for command mutex

Issue:
The commands that implement the Isolatable feature depend on the caching functionality. When the command is running and we execute php artisan cache:clear or call \Cache::flush();, this puts any pending isolated commands into an invalid state.
This PR replaces the direct usage of Cache, with atomic locks, whenever the Cache driver supports it.

@GrahamCampbell could you please review this, when you get the chance?


Fix retry behaviour

Proposed Changes

Due to recent changes on Winget install command, we need to add --force argument on the install command inside the retry part. Currently, it has no effect as install acts as upgrade if an application is already installed

Related Issues

Closes #337

winget install --force (Direct run the command and continue with non security related issues)
That's what the current version of winget does with --force
(DisplayName  : Microsoft.DesktopAppInstaller
Version      : 2023.118.406.0)

Yes, I know. This is why i was talking about security https://github.com/Romanitho/Winget-AutoUpdate/issues/337#issue-1697406626
So what is the best? trying to force an install? Removing the retry section?
I would like to try an Uninstall / Install process... but uninstallers are not working properly with winget (mainly not silently)... so it looks like a dead end...

Have you had success with the --force then keep it.
I haven't.
Uninstall/Install is a tricky thing that often results in an uninstalled application (must be separately managed per application via mods)

it depends on apps. for some, it helps.
Uninstall/Install should not be that hard, as we store the AppID in variable. So uninstall then reinstall latest should be easy... BUT... Winget uninstall command is not good enough for that, as uninstall is almost never silent... so it result in a pending process that system cannot handle... and stucks WAU

Upgrade feature is working better than it used to. The "install" retry is maybe not necessary anymore. In my case, it causes sometimes wrong things, as uninstalling apps and never reinstall...
If an upgrade fails, it should be fixed with mods, or Winget itself...


Polling interval service

This PR allows you to set the polling_interval using a service call.
This is useful if you want to enable more frequent polling in certain locations or certain times of the day, or if you want to limit polling (without disabling it completely) when SOC get low, or in a range of other cases.

Should the polling document be in the wiki vs the repo?

Maybe the wiki is a better place?
It does not seem like wiki is enabled for this repo, though...

Wiki was on but limited to collaborators. It's public now.

This one is ready.  Updated the URL now.

Are you sure this doesn't need a new teslajsonpy?

It should not need any changes to teslajsonpy.
I just copied the code for changing update_inteval  from here:
https://github.com/alandtse/tesla/blob/33663fb9942d7d6f0ef4a119446132527a090e10/custom_components/tesla_custom/__init__.py#L234


Fix Nomad event stream is ignoring errors

when an event stream could be established once.
Closes #204
events.IsHeartbeat() is false positive for error events. This way we ignored the unexpected EOF error that we receive when Nomad restarts.

I was not able to reproduce errors with updating an environment..
We will now get an Sentry event for each Event Stream problem. If it happens again we will hopefully have more information.

Alright, thanks for checking again. I am feeling lucky today and just deployed the new version, let's observe the differences 👍

Okay, I was able to reproduce it by first updating the execution environment (e.g. with the network-enabled flag) and then synchronizing the environment. I still have this issue (see environment ID 33 on CodeOcean)


Fix setup.py to include multiprocessing module

Version 0.3.0  do not include atomos.multiprocessing.atomic Python package, this pull request changes the way  setup.py search for packages to include it in sdist command.
Correct version installed:
$ pip freeze | grep atomos
atomos==0.3.0

Import error trying to import multiprocessing:
In [1]: import atomos.multiprocessing.atomic
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-1-7de8f9d056b1> in <module>()
----> 1 import atomos.multiprocessing.atomic

ImportError: No module named 'atomos.multiprocessing'

In [2]:

This looks good to me. I'll merge and do a release to PyPI.


When connecting with encrypt=true method, the Connection.abort(Executor) method does not work correctly

Driver version
Provide the JDBC driver version (e.g. 10.2.0).
12.4.1
SQL Server version
Microsoft SQL Server 2017 (RTM-CU31-GDR) (KB5021126) - 14.0.3460.9 (X64)   Jan 25 2023 08:42:43   Copyright (C) 2017 Microsoft Corporation  Developer Edition (64-bit) on Windows Server 2012 R2 Datacenter 6.3  (Build 9600: ) (Hypervisor)
Client Operating System
Windows 10
JAVA/JVM version
11.0.13+8
Problem description
if using Connections with encrypt=true it ist not possible to break  an running Call () to the Database with the jdbc Connection Method
This is the stack trace of the hanging connection, which cannot be aborted using the abort(executor) method from the other thread

In my test I using die command "waitfor DELAY '00:10:00' to simulate a bad long running SQL.
The Problem is that with enabled ssl encryption the method "final void close()" in the class TDSChannel is calling disableSSL():
        if (null != sslSocket)
            disableSSL();

and this Method is using the same java lock witch is using in the method ProxyInputStream.readInternal(...).
Expected behavior
The corresponding socket is closed and the hanging thread aborts with a SQLException
Actual behavior
The on DB call hanging Thread can not abort.

Thanks for the ticket.
This is an interesting issue. I am looking into the problem and will try a replicate the issue for further investigation.

hi @FischerRo2
Can you please share any repro code that would reproduce the issue? What is the connection string you are using?
Also, just to clarify, are you only seeing this issue when encrypt=true? i.e. does it work with encrypt=false?

hi @lilgreenbird
yes i only see the issue with encrypt=true or without the property, respectively.
With encrypt=false, correctly the db connection socket is closed and the running thread waiting for the database connection is interrupted with an exception.
Simple Java test case:
AbortTest.txt
package jdbc;

import static org.junit.jupiter.api.Assertions.*;

import org.junit.jupiter.api.Test;

import java.sql.Statement;
import java.sql.*;
import java.util.Properties;

/**
 * @author github.com/FischerRo2
 *
 * Simple Testcase To Check Connection.abort
 */
class AbortTest {

	@Test
	void test() throws SQLException, InterruptedException {

		String testdburl  = System.getProperty("testdburl");
		String testdbuser = System.getProperty("testdbuser");
		String testdbpw = System.getProperty("testdbpw");
		assertNotNull(testdburl,"no testdburl Systemproperty");
		assertNotNull(testdbuser,"no testdbuser Systemproperty"); // user
		assertNotNull(testdbpw,"no testdbpw Systemproperty"); // password

		Properties props = new Properties();
		props.put("user", testdbuser);
		props.put("password", testdbpw);
		class ExceptionValue {
			volatile SQLException value;
		}
		Connection threadConnection = DriverManager.getConnection(testdburl, props);

		ExceptionValue exceptionValue = new ExceptionValue();
		Thread thread = new Thread( () -> {
			try (Connection con = threadConnection;
					Statement statement= con.createStatement()  ) {
				statement.executeUpdate("waitfor DELAY '00:00:02'"); /// 2000 milliseconds Wait

			} catch (SQLException e) {
				exceptionValue.value = e;
			}
		});

		long time = System.currentTimeMillis();
		thread.start();
		Thread.sleep(200L); // 100 milliseconds Wait
		assertTrue(thread.isAlive(), "Database Connection not ok? Thread exception: " + exceptionValue.value);
		threadConnection.abort(command -> new Thread(command, "DB-Connection-Abort").start());
		Thread.sleep(500L);
		assertFalse(thread.isAlive(), "Thread should not Alive");
		assertNotNull(exceptionValue.value, "Thread has not throw an SQLException");
		thread.join();
		System.out.println(System.currentTimeMillis() - time);
	}

}


chore: use workflow to check windows binary signature

What type of PR is this?
/kind feature

What this PR does / why we need it:
use workflow to check windows binary signature.
Which issue(s) this PR fixes:

Fixes #
Requirements:

[x] uses conventional commit messages

[ ] includes documentation
[ ] adds unit tests
[ ] tested upgrade from previous version

Special notes for your reviewer:
Release note:
none

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 79.007%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
2243

Relevant Lines:
2839

💛  - Coveralls


usage stats and crash reports

What does this PR do?
High level:

adds usage stats to TGI
implementation in router + docs
send 2 events: one on start and one on stop (which might potentially be a crash)
omit sensitive data
device info from cuda or xpu, tpu deferred for now due to not having similarly a straightforward way of getting device info
only gather stats when TGI is run inside of docker
default in and opt-out with --disable-usage-stats flag, can also partially opt out with flag --disable-crash-reports which only allows sending of usage stats.

Before submitting

[ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
[ ] Did you read the contributor guideline,
Pull Request section?
[ ] Was this discussed/approved via a Github issue or the forum? Please add a link
to it if that's the case.
[ ] Did you make sure to update the documentation with your changes? Here are the
documentation guidelines, and
here are tips on formatting docstrings.
[ ] Did you write any new necessary tests?

Notes from offline discussion with @OlivierDehaene

we decided to defer the implementation of bubbling up the InferError::Generation
reason is that Olivier is writing an overhaul of the scheduler + backend which anyways allows the bubbling of errors

--> better to get this forward now and not to block on things
--> once the rewrite of the backend is in, we can add the InferError::Generation to the usage stats collection


GPII-3361 - Remove DNS description and leave default as it is in exekube

This change avoid the "fighting" between exekube and the common gcp-project Terraform module where each one sets a different description of the DNS zone.

lgtm


DCOS-11395: Fix scroll behavior in advanced package installation form

This PR fixes the problems that were present in Firefox and Safari. Previously, Safari wouldn't render anything in this form, and it wouldn't scroll in Firefox.
The combination of TabForm + SchemaForm + GeminiScrollbar in a modal is super fragile, so the fix is not obvious.
Before (Safari):

After (Safari):

Tested in chrome, firefox and safari, works nice! ✨  💯

Unrelated, but I also see the links indented on the left in Safari:

mesosphere-ci retest this please 🙏

@wavesoft please create an issue to track the link rendering issue

Rebased/forced to :fire: integration tests

Nice work @jfurrow!


"Add to queue" in right-click menu

Is your feature request related to a problem? Please describe.
Currently, there is no equivalent of the "add to queue" button on the first party apps.
Describe the solution you'd like
When you right-click on a song, it should provide a "play next" or "add to queue" option.
Describe alternatives you've considered
N/A
Additional context
Add any other context or screenshots about the feature request here.

@jacksongoode should we close this now?

Haha yeah, thanks for catching this!


Ctrl-c should clean-up temporary files

When hitting Ctrl-C when bisect-rustc is working, files may be left in a temporary location. They should be automatically cleaned up.

Where is that temporary location? I just did Ctrl-C, now I am wondering.^^

/tmp I think on most systems, IIRC we use temp_dir or a crate providing that functionality

I found things in ~/.rustup/tmp.


Remove null and undefined values from apm-server payload

APM Server will remove the null values from JSON spec as per https://github.com/elastic/apm-server/issues/1410 in 7.0. Agents need to adapt to it, see server issue for more details.

The Java agent already omits missing values instead of setting them to null.


Add switch-by-index support

Support 'kubectx -2' to switch to the 2nd context.

I personally don’t see any good reason for this since we have both shell completion and fzf interactive selection working.
It’s also a very uncommon CLI pattern. It also doesn’t work well in case of contexts added dynamically. So your favorite context 3 might now be at 4. Fzf integration already solves these problems.
Please open an issue first before writing the code.

@googlebot I signed it!
On Sat, Mar 7, 2020 at 8:14 PM googlebot<EMAIL_ADDRESS>wrote:

Thanks for your pull request. It looks like this may be your first
contribution to a Google open source project (if not, look below for help).
Before we can look at your pull request, you'll need to sign a Contributor
License Agreement (CLA).
📝 Please visit https://cla.developers.google.com/
https://cla.developers.google.com/ to sign.
Once you've signed (or fixed any issues), please reply here with @googlebot
I signed it! and we'll verify it.
What to do if you already signed the CLA Individual signers

It's possible we don't have your GitHub username or you're using a
different email address on your commit. Check your existing CLA data
https://cla.developers.google.com/clas and verify that your email is
set on your git commits
https://help.github.com/articles/setting-your-email-in-git/.

Corporate signers

Your company has a Point of Contact who decides which employees are
authorized to participate. Ask your POC to be added to the group of
authorized contributors. If you don't know who your Point of Contact is,
direct the Google project maintainer to go/cla#troubleshoot (Public
version https://opensource.google/docs/cla/#troubleshoot).
The email used to register you as an authorized contributor must be
the email used for the Git commit. Check your existing CLA data
https://cla.developers.google.com/clas and verify that your email is
set on your git commits
https://help.github.com/articles/setting-your-email-in-git/.
The email used to register you as an authorized contributor must
also be attached to your GitHub account
https://github.com/settings/emails.

ℹ Googlers: Go here
https://goto.google.com/prinfo/https%3A%2F%2Fgithub.com%2Fahmetb%2Fkubectx%2Fpull%2F198
for more info.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/ahmetb/kubectx/pull/198?email_source=notifications&email_token=AACXY4SAXBQZZBMJPBLDRXLRGLWQXA5CNFSM4LDUYICKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEOEJSBQ#issuecomment-596154630,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACXY4TBEIZGBKL35QVKY5LRGLWQXANCNFSM4LDUYICA
.


Idiomatic fixes

Many of these changes revolve around unwrap.
There are more changes that could be done to improve performance, readability or correctness, but most would need atleast some kind of consideration as to the correct implementation.
If fixes like this is welcome and merged, I would open issues that would discuss potential changes and their considerations

Hi, sure any changes are welcome. However, I dream about speed improvements. Some ideas

calc coherence & mess in threads
or calc mess for plugins in threads (or some async?)
or something other...

I'm thinking about it because it is still slower than chardet or chardetng (2-3 times).
Performance can be compared via cargo run --bin performance --feature performance --release
Anyway thanks for PR, I will go through it during next days.


Update spring-data-cosmosdb-starter group id and artifact id to track 2

Once azure-spring-data-cosmos is track 2 compliant and is depending on azure-cosmos V4 Java SDK, then spring-data-cosmsodb-starter's group id and artifact id needs to be updated to track 2 compliant.

This is done.


Names of DependencyProperty fields should be prefixed with property name

Fields that are used for dependency properties should be prefixed with the names of a property, as done in the .NET framework.


PHP local server connection failed on WSL2

Environment
Windows build number: Microsoft Windows [version 10.0.19041.508]
Your Distribution version: Ubuntu-20.04
Whether the issue is on WSL 2 and/or WSL 1: Linux version 4.19.128-microsoft-standard

Steps to reproduce
php -S localhost:8000

Expected behavior
I expect to have a fully functionnal PHP local server.
Actual behavior
The connexion between WSL2 and Firefox seems not to works.
Have a nice evening.

Cannot reproduce on recent insiders. Try php -S <IP_ADDRESS>:8000, see if that helps.

same (recent) problem as @kaalede
not possible to run localhost program
Microsoft Windows [version 10.0.19041.508]

I have reboot my PC and now it's work... probbly program conflict

I reinstall Ubuntu (just Ubuntu, not Ubuntu-20.04) and now it's work... Weird issue.


[META] Admin user should have a custom non-hardcoded password

High-level Idea
As one of the outcome of this spike, this feature-request is to replace admin password, which is currently hard coded in demo configuration, with a custom password. If none is provided, a random password should be generated and set for admin user. Here is the intended design:
sequenceDiagram
    participant User
    participant Cluster
    participant Script

    User->>Cluster: Start cluster setup with security plugin
    Cluster->>Script: Execute demo script
    alt User provided password
        Script->>Script: Search for user provided password
    else No password provided
        Script->>User: Script execution fails as no password provided
    end
    Script->>Cluster: Continue with demo script execution
    alt Demo script execution successful
        Script->>Cluster: Notify demo script execution complete
    end
    Cluster->>Cluster: Continue with security plugin configuration

Acceptance Criteria

[x] Update the demo configuration install script to accept a custom password for admin user
~- [ ] If no custom password is provided, the script should generate a new one, set it for admin and let the end user know~ (no longer considered)
[x] This change works with at-least one of the supported OpenSearch distributions

Exit Criteria

[x] #3632
[x] #3633
[x] #3636

Would like

[x] Implement a password validation logic to ensure that a weak password is not supplied as custom password.

[Triage] This is the last of the meta issues tracking progress removing the use of default credentials in the cluster. Marking as triaged given clear action items and exit criteria.

Closing this as all sub-tasks are now complete.


Provide option to fetch result

Title. Either by 'Download' button or 'Copy to clipboard' button.
Cheers!

Hi bartblaze. For this option to fetch results I can not do anything because it's glot.io related change/addition. Anyway I will try to ask at Petter. =)

Great, thanks!


Update hero.bookshop.yml

Can't merge due to conflicts.

Closed pull request as changes were already in main :)


Migration screen does not show if Noosphere disabled

Reported by @jsantell.

during the FRE on a fresh install (noosphere disabled) the first screen was the notes view with a loading widget spinning -- it wasn't until i went to settings, turned on noosphere, and went back, did the FRE (pretty new splashscreen!) start

Confirmed in main. Just wiped device/re-installed. This is a regression.

2023-05-08 15:42:45.765582-0400 Subconscious[72778:1841134] [NoosphereService] init NoosphereService
2023-05-08 15:42:45.765771-0400 Subconscious[72778:1841134] [NoosphereService] Global storage URL: *snip*
2023-05-08 15:42:45.765809-0400 Subconscious[72778:1841134] [NoosphereService] Sphere storage URL: *snip*
2023-05-08 15:42:45.765849-0400 Subconscious[72778:1841134] [NoosphereService] Gateway URL: http://<IP_ADDRESS>:4433
2023-05-08 15:42:45.765894-0400 Subconscious[72778:1841134] [NoosphereService] Sphere identity: none
2023-05-08 15:42:45.852322-0400 Subconscious[72778:1841134] [app] Documents: *snip*
2023-05-08 15:42:45.852401-0400 Subconscious[72778:1841134] [app] Sphere ID: Unknown
2023-05-08 15:42:45.852440-0400 Subconscious[72778:1841134] [app] Sphere ID: Unknown
2023-05-08 15:42:45.852487-0400 Subconscious[72778:1841134] [app] Noosphere enabled? false
2023-05-08 15:42:45.852700-0400 Subconscious[72778:1841134] [app] Readying database
2023-05-08 15:42:45.854506-0400 Subconscious[72778:1841134] [app] [action] appear
2023-05-08 15:42:45.855153-0400 Subconscious[72778:1841134] [notebook] [action] appear
2023-05-08 15:42:45.873170-0400 Subconscious[72778:1841134] Metal GPU Frame Capture Enabled
2023-05-08 15:42:45.873304-0400 Subconscious[72778:1841134] Metal API Validation Enabled
2023-05-08 15:42:45.958743-0400 Subconscious[72778:1841134] fopen failed for data file: errno = 2 (No such file or directory)
2023-05-08 15:42:45.958845-0400 Subconscious[72778:1841134] Errors found! Invalidating cache...
2023-05-08 15:42:45.976188-0400 Subconscious[72778:1841134] fopen failed for data file: errno = 2 (No such file or directory)
2023-05-08 15:42:45.976277-0400 Subconscious[72778:1841134] Errors found! Invalidating cache...
2023-05-08 15:42:46.022277-0400 Subconscious[72778:1841134] [app] [action] notifyNoosphereEnabled(false)
2023-05-08 15:42:46.022515-0400 Subconscious[72778:1841134] [app] [action] failRefreshSphereVersion("Default sphere not found")
2023-05-08 15:42:46.022576-0400 Subconscious[72778:1841134] [app] Failed to refresh sphere version: Default sphere not found
2023-05-08 15:42:46.022708-0400 Subconscious[72778:1841134] [app] [action] succeedMigrateDatabase(1683191580)
2023-05-08 15:42:46.023491-0400 Subconscious[72778:1841134] [notebook] [action] ready
2023-05-08 15:42:46.023563-0400 Subconscious[72778:1841134] [app] Database version:<PHONE_NUMBER>
2023-05-08 15:42:46.023795-0400 Subconscious[72778:1841134] [app] Database last-known sphere state: unknown
2023-05-08 15:42:46.023989-0400 Subconscious[72778:1841134] [app] Syncing with gateway: http://<IP_ADDRESS>:4433
2023-05-08 15:42:46.024133-0400 Subconscious[72778:1841134] [app] File sync started
2023-05-08 15:42:46.025434-0400 Subconscious[72778:1841134] [notebook] [action] search(failSuggestions("Default sphere not found"))
2023-05-08 15:42:46.025489-0400 Subconscious[72778:1841134] [Search] Default sphere not found
2023-05-08 15:42:46.025720-0400 Subconscious[72778:1841134] [notebook] [action] setEntryCount(0)
2023-05-08 15:42:46.028204-0400 Subconscious[72778:1841134] [notebook] [action] listRecentFailure("Default sphere not found")
2023-05-08 15:42:46.028288-0400 Subconscious[72778:1841134] [notebook] Failed to list recent entries: Default sphere not found
2023-05-08 15:42:46.028439-0400 Subconscious[72778:1841134] [app] [action] failSyncSphereWithGateway("Default sphere not found")
2023-05-08 15:42:46.028526-0400 Subconscious[72778:1841134] [app] Sphere failed to sync with gateway: Default sphere not found
2023-05-08 15:42:46.030524-0400 Subconscious[72778:1841134] [notebook] [action] ready
2023-05-08 15:42:46.030567-0400 Subconscious[72778:1841134] [app] [action] succeedSyncLocalFilesWithDatabase(...) 0 items
2023-05-08 15:42:46.030617-0400 Subconscious[72778:1841134] [app] File sync finished: []
2023-05-08 15:42:46.033831-0400 Subconscious[72778:1841134] [app] [action] scenePhaseChange(SwiftUI.ScenePhase.active)
2023-05-08 15:42:46.033970-0400 Subconscious[72778:1841134] [app] [action] failSyncSphereWithDatabase("Default sphere not found")
2023-05-08 15:42:46.034013-0400 Subconscious[72778:1841134] [app] Database failed to sync with sphere: Default sphere not found
2023-05-08 15:42:46.034615-0400 Subconscious[72778:1841134] [notebook] [action] search(failSuggestions("Default sphere not found"))
2023-05-08 15:42:46.034654-0400 Subconscious[72778:1841134] [Search] Default sphere not found
2023-05-08 15:42:46.034731-0400 Subconscious[72778:1841134] [notebook] [action] listRecentFailure("Default sphere not found")
2023-05-08 15:42:46.034767-0400 Subconscious[72778:1841134] [notebook] Failed to list recent entries: Default sphere not found
2023-05-08 15:42:46.034842-0400 Subconscious[72778:1841134] [notebook] [action] setEntryCount(0)
Update NavigationAuthority bound path tried to update multiple times per frame.

It's a regression from #561.
listRecentMemos now calls to Noosphere to get identity, in order to relativize sphere did. When user has no sphere, this results in method failing, resulting in loading state for content.
Fix by allowing relativizeIfNeeded to take a nil did, and convert failure to get did to nil.


Update bigfoot-popover.scss

Fixes #42

Hi Johan,
The base Sass stylesheets for Bigfoot have lots of instances of the transform, none of which are prefixed. This is because Bigfoot uses Autoprefixer as part of its build system (see https://github.com/lemonmade/bigfoot/blob/master/Gruntfile.coffee#L63), which automatically adds all required vendor prefixes in the rendered CSS.
For someone building a custom theme, I recommend either a) using the Sass files and adding Autoprefixer or something similar to your build system so that all prefixes are added automatically, or b) base your modifications on the CSS in the dist directory, which have all the prefixes added.


Missing word

In the following sentence, 'a' should be 'any':
By default Restore-AzDeletedWebApp will restore both your app configuration as well a content. If you want to only restore content, you use the -RestoreContentOnly flag with this commandlet.
Thanks!
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: dd2233ca-e4c5-a53b-f493-310ac953bdea
Version Independent ID: d869ec94-1c1b-9440-e2d6-5b6a4f1d068e
Content: Restore deleted apps - Azure App Service
Content Source: articles/app-service/app-service-undelete.md
Service: app-service
GitHub Login: @btardif
Microsoft Alias: byvinyal

Thanks for the feedback @dave-mccollough, I've made the corrections and should be live momentarily.


scons incorrectly parses targets when command line options are used for variant_dir

This issue was originally created at: 2014-09-24 20:02:33.
This issue was reported by: mfd.
mfd said at 2014-09-24 20:02:33

With the following structure:
scons_bug
|-- SConscript
|-- SConstruct
|-- t0
|   |-- SConscript
|   -- t0.cpp -- t1
|-- SConscript
`-- t1.cpp
where SConscript is:
AddOption(
'--out',
nargs=1,
dest='out',
action='store',
help='directory to build into',
default='out'
)
SConscript('SConscript', variant_dir=GetOption('out'), duplicate=0)
and SConscript is:
env = Environment()
Export('env')
SConscript('t0/SConscript')
SConscript('t1/SConscript')
Default(['t0', 't1'])
and t0/SConscript is:
Import('env')
t0_env = env.Clone()
t0_env.Program('t0', ['t0.cpp'])
and t1/SConscript is:
Import('env')
t1_env = env.Clone()
t1_env.Program('t1', ['t1.cpp'])
If I run "scons t0" (or "scons t1") I get the expected output (only the
specified target is build and the output is built in "out").
"scons t0" output:
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
scons: building associated VariantDir targets: out/t0
g++ -o out/t0/t0.o -c t0/t0.cpp
g++ -o out/t0/t0 out/t0/t0.o
scons: `t0' is up to date.
scons: done building targets.
However, if I run "scons --out foo t0" scons correctly picks up "foo" as the
specified output directory (e.g. accessible via GetOption and output is indeed
directed toward the "foo" directory).  The problem is that it also appears to
pick up "foo" as a target and hence builds the entire world before then
building the specified target (which has actually already been built because
the entire world was built so it just prints that it is up to date).  In the
real project "the world" is much much larger than t0 and t1 of course.
"scons --out foo t0" output:
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
scons: building associated VariantDir targets: foo
g++ -o foo/t0/t0.o -c t0/t0.cpp
g++ -o foo/t0/t0 foo/t0/t0.o
g++ -o foo/t1/t1.o -c t1/t1.cpp
g++ -o foo/t1/t1 foo/t1/t1.o
scons: building associated VariantDir targets: foo/t0
scons: `t0' is up to date.
scons: done building targets.
Notice that it builds "foo" as a target.  If you change it to "scons t0 --out
foo" the same thing happens except it builds "foo/t0" first and then builds
"foo".
Interestingly enough though if you run "scons --out=foo t0" (notice the = in
the command) the behavior is correct (only t0 is built and it is built into the
directory "foo").
For the command "scons --out=foo t0" optparse correctly returns {'out': 'foo'}
as the options and ['t0'] as the args (it also does it correctly for all the
other various ordering/permutations).  That seems to imply that scons looks for
the targets from the command line itself, outside of optparse (but I haven't
looked at the code).

mfd said at 2014-09-24 20:05:26

Created an attachment (id=950)
example project showing problem

dirkbaechle said at 2014-09-25 08:19:05

Things seem to go wrong in ll. 959 of "engine/SCons/Script/Main.py":
That should cover (most of) the options.  Next, set up the variables
that hold command-line arguments, so the SConscript files that we
read and execute have access to them.
targets = []
xmit_args = []
for a in parser.largs:
if a[:1] == '-':
continue
if '=' in a:
xmit_args.append(a)
else:
targets.append(a)
Unfortunately, the fix isn't a simple one-liner...if done properly. Boolean
arguments are a problem...so one would have to compare the option "type" (string
or bool) for each found argument, and then decide whether a following argument
is required that has to get skipped while compiling the list of targets.
I'm also not sure how to handle options that have a callback method defined...so
quite some work ahead there.

mfd attached scons_bug.tar.gz at 2014-09-24 20:05:26.

example project showing problem

This is also the reason options with nargs > 1 are not working.  scons is mangling the arguments in some way before we get here, so it's likely most of the fix is not here.  If you just call optparse to handle a option that takes one argument, it comes out the same however it's called. That is, for
parser.add_option("-f", "--file", dest="filename",
                  help="write output to FILE", metavar="FILE")

All of these was of calling it come back with the same stuff in the first value returned by parse_args:
$ python3 test.py -f
{'filename': 'foo'}
$ python3 test.py --file foo
{'filename': 'foo'}
$ python3 test.py --file=foo
{'filename': 'foo'}

But try to do the same in SCons, and we see:
$ scons --file=foo
[mats@boulder bug2805]$ python3 ../../src/script/scons.py -f SConstruct4 -Q -q --prefix=foo
> /home/mats/github/scons/src/engine/SCons/Script/Main.py(983)_main()
-> for a in parser.largs:
(Pdb) p parser.largs
['--prefix=foo']
(Pdb)

$ scons --file foo
> /home/mats/github/scons/src/engine/SCons/Script/Main.py(983)_main()
-> for a in parser.largs:
(Pdb) p parser.largs
['--prefix', 'foo']
(Pdb)

That is, in the = separator case, we get one string in largs, in the blank separator case we get two.  The logic noted above from Main.py doesn't seem to be right for either: in the one-word case we skip if it starts with a dash, so the contains-= never happens, and in the two-word case the following arg doesn't have an equal so it is added to targets instead of to args.

Okay, looks to me like the problem is actually here - SConsOptions.py, SConsOptionParser._process_long_opt:  this method overrides the one from base OptionParser by adding this:
        try:
            opt = self._match_long_opt(opt)
        except optparse.BadOptionError:
            if self.preserve_unknown_options:
                # SCons-specific:  if requested, add unknown options to
                # the "leftover arguments" list for later processing.
                self.largs.append(arg)
                if had_explicit_value:
                    # The unknown option will be re-processed later,
                    # so undo the insertion of the explicit value.
                    rargs.pop(0)
                return
            raise

The method signature:     def _process_long_opt(self, rargs, values)::
if called with rargs = ['--prefix=foo'] the whole thing is parked on self.largs and can correctly be processed later.  If called with rargs = ['--prefix, foo'] this is where they get separated - --prefix goes into self.largs (leftovers to reprocess later), while its corresponding argument foo stays on the mutable rargs, which the optparse base parser class is busy iterating over.  At this stage, scons doesn't yet know about the effects of an AddOption - that's why it tries to bin those unrecognized args for later, when it starts to learn about them after reading the sconscripts.
As written this cannot possibly work for long-opt option arguments that are space separated from the option.  Maybe the solution is to document the behavior? That is, for added long options, only the --opt=arg form works, and nargs > 1 is disallowed.


Can't run gulp to compile extensions

I'm getting this error on CLI:
 css-language-features > npx gulp watch-extension:css-language-features-client
[12:52:35] Working directory changed to ~/Code/work/vscode
Task requires a name that is a string
 css-language-features >

Seems related to https://github.com/Microsoft/vscode/commit/bb6a7907119e54031523d4f9898cd179f65fc225

@octref this works for me on Windows:

Do you perhaps have a global installation of gulp that is outdated ?

Sorry my bad, that's exactly what went wrong. I was on gulp 3 in ./node_modules and I only reinstalled dependency for extensions/css-language-features after git pull.


Material 3 Support

Material 3 is now the default style from Flutter 3.16.

may be it's supported now. (because it already applied Theme.of)


SyntaxError: export declarations may only appear at top level of a module

Hi!
I just include the Script with  an got the error:
"SyntaxError: export declarations may only appear at top level of a module".
Can you help me?
Greets

I also get similar errors when trying to include with just the

What is the src attribute on your <script> tag?

hello,
I had this issue until I realized I was using the js version from the src folder. I found the correct file in the lib folder and used the raw version from here: https://github.com/willmcpo/body-scroll-lock/blob/master/lib/bodyScrollLock.js
Hope this helps someone since I gave up then came back; this should some else save some time!
Thanks,
jrDev

thanks @jrDev1


JSON flattener should respect druid null handling config (druid.generic.useDefaultValueForNull) for arrays

Currently when ingesting json data with multivalue fields, druid parses the input source with logic that includes removing null values from the individual arrays. This happens as part of the json flattening here. An example, supposed we try to ingest:
{"list":[0.5, 0.2, null],"timestamp":"2023-01-11T22:57:44.270035398Z"}

We end up with a table that looks like (note the lack of null in the multivalue field):

The null removal occurs here when we are parsing the individual entries in the multivalue json fields. It's unclear from any documentation that I could find that this is intended behavior. It seems to me like if druid respects null values for single-value fields (with regards to druid.generic.useDefaultValueForNull), then it should also respect null entries in multivalue fields.

I've also noticed this recently when working in this area; its not just limited to JSON, but also at least Avro also has this behavior. I'm unsure about the other nested formats (ORC, Parquet, Protobuf), an initial look seems like they might be ok.
I was planning to try to fix this in the near future since I agree it doesn't really make sense for the values to be removed here, or am happy to review if you've already got a fix underway.

Nothing underway but happy to take a stab at it. Would love a review once I have it up thank you!

The same issue happens with Avro too. I have set up #13712 to tackle both


Display nf-core/configs Institutions documentation on website

It would be nice if we can have Institutions specific documentation on the nf-co.re website.
Would be much clearer for new users from Institutions to understand nf-core pipelines and configs if everything is in the same place.

Suggestion:

https://nf-co.re/configs

https://github.com/nf-core/configs/blob/master/README.md

https://nf-co.re/configs/PROFILE

https://github.com/nf-core/configs/blob/master/docs/PROFILE.md

https://nf-co.re/configs/PROFILE/PIPELINE

https://github.com/nf-core/configs/blob/master/docs/pipeline/PIPELINE/PROFILE.md

Note the inversion of PIPELINE / PROFILE in the website URL. This is so that it follows a more intuitive hierarchy for the user from the institution (I think the opposite is true when writing the docs, so it still makes sense for the github repo as it is).
Do we want to break up the main readme file at all? Have separate files for how to contribute and keep the main readme much more low-level for new users? Ping @drpatelh.
Need to think about how to build the navigation for this on the website. I guess we should link to it from Usage in the nav.
Phil

it would be also nice to give 'reviewing guidelines' like for modules. Makes it much easier to review to get basic stuff right if there is a short/terse version of the guidelines +1

that's a different issue I think, would be added to /docs/ this is more about displaying the configs we have on the website.

True, sorry. That's a copy-paste from the the now-closed configs docs PR, we have no guidelines yet and at the time I thought it made sense to add them to the README

@ewels @ewels It looks like "Usage" is no longer in the navigation bar - maybe should we nest this under "Tools"?

@mashehu Thanks - so is this ticket partially implemented then?

Thanks let me take a look @mashehu

I can see the new website was written in J$ - not my area of expertise 2bh. Will find another task which suits better.


Quick Run CodeLens for the Main Methods

Description:
It would be super easy and improves UX if we can add a plugin initiated CodeLens to detect main methods and provide a shortcut to execute main method. This is already available in other IDEs such as IntelliJ.

Reference: https://code.visualstudio.com/docs/java/java-debugging#_codelens

Reference: https://code.visualstudio.com/docs/java/java-debugging#_codelens

We need to add this to running tests as well

Moved to https://github.com/wso2/ballerina-plugin-vscode/issues/12


Augmentation of the definition of EquipmentCategory

Decision made at the 5G-xhaul call on 23rd of February 2022:
The existing EquipmentCategory enumeration of the ONF Core 1.4 shall be complemented by the following values for being able to formulate proper xPath statements in the alarm severity configuration:

BACKPLANE
POWER_UNIT
BATTERY
FAN
CENTRAL_PROCESSING_UNIT
STORAGE_DRIVE
SENSOR
MODEM
PORT_EXPANSION_BOARD
OUTDOOR_UNIT
NOT_YET_DEFINED

This augmentation of the identity list shall be implemented as part of an additional EquipmentAugment YANG module.

In the generated YANG , all the defined EQUIPMENT_CATEGORY identities are available. But they are not inheriting in EQUIPMENT_CATEGORY in the core-model.
As per the discussion in the 5G-xhaul call on 1st of June 2022:

The current YANG modelling for the EQUIPMENT_CATEGORY will not work as expected (that is , it is not extending the EQUIPMENT_CATEGORY in core-model).
We have to modify the identity EQUIPMENT_CATEGORY in the EquipmentAugment as below ,
From :
identity EQUIPMENT_CATEGORY {
description
"none";
}
To :
identity EQUIPMENT_CATEGORY {
base core-model:EQUIPMENT_CATEGORY;
description
"none";
}
Currently there is no guideline for the UML2YANG available for this translation.
So , we have to do it manually or in the post processing script.

Has been updated and published in EquipmentAugment_1.0.0-tsi.240104.1330+yang.1


Setting parameters of acquisition functions

I spent the weekend looking for Bayesian optimization packages, and this looks great.
I want to be able to tune the acquisition function over time, e.g., change sigma in the LCB implementation to adjust exploration/exploitation.
Right now, that doesn't seem possible, correct?

Hi @ghutchis , thank  you for your interest in GPflowOpt!
right now, this can be achieved in two ways:

It is possible to call optimize multiple times on BayesianOptimizer. It will simply continue where it ended. In between the calls you can change settings:

opt = BayesianOptimizer(acquisition)
opt.optimize(fx, n_iter=5)
acquisition.param = ...
opt.optimize(fx, n_iter=5)
...

create a subclass for your approach (in this case for instance LCB) and overwrite _setup. This method allows you to precompute quantities (such as fmin in EI) which are independent from the candidate points.

class MyAcquisition(LowerConfidenceBound):
    def _setup():
        super(MyAcquisition, self)._setup()
        self.sigma = ....

However, due to the way how GPflow works I noticed currently changing sigma in LCB does not result in a change of the graph (it not a dataholder) which means right now both options won''t work. For quantities in other acqusitions this was properly taken care of so this should be solved.

We changed the sigma parameter into a dataholder now, so you should be able to update its value, meaning the two options to vary it during a run should now be covered.

Thanks - I had tried the subclass and was surprised it didn't work. Looks good now!


Snippets can be used to execute functions: can you give some examples?

Hi
just noticed the changelog that says: Snippets can be used to execute functions
can give some examples for this?
i was just wondering how one can insert an elisp command that will be executed when i insert a yankpad item
for example i envision something like this:
#+NAME:
#+BEGIN_SRC R :session Rorg :results output graphics :file ~/ELISPINSERTDATE.png

#+END_SRC

where the ELISPINSERTDATE function i wrote will insert the current date. is that possible?
thx
Z

ok for the second Q found a solution
 #+BEGIN_SRC R :session Rorg :results output graphics :file /home/zeltak/org/attach/bgu/courses/BGU.DM.R/images/`(z-insert-date-time)`.png

works well!
still would love to see examples for the snippet execute unless this is just the option to use elisp as above :)

You can find an example in the README, also see point 2 under usage. I haven't used the functionality very much myself, so its hard to come up with examples.
I'm not quite sure what you're trying to do. A snippet can execute an org-mode src-block, or an elisp function. There will be no text inserted into the buffer if you do this. However there may be a case for adding functionality to insert the "result" of the src-block into the buffer from where the snippet was run.

I provide an example of this functionality here: https://kungsgeten.github.io/yankpad13.html