Delay can flood the status messages to the browser

When sending the Delay module 150 messages per second (configured for per-topic restrict messages to once per second), the browser CPU usage hit the max (80% on i7).
Delay could be 'fixed' (and probably should), but the 'final' solution should probably be to only send status at a specified interval, so that new, and contrib, modules can't abuse the link.
The efficiency of updating status on modules in the browser could also be examined...

Which mode are you in ? and which version of Node-RED are you running ?
I though this was fixed for rate limit mode back in 18615640e0de378c6d4993a66c6d8bb71f8aa70f

Ah- just seen your mail on the mailing list re a more general solution...

@dceejay - the admin panel reports 0.17.5 - it's a std install on RPi (not one of my specials :) ).  Looks like that commit is in 0.17.5.
I've done some more testing.  The flow below uses ~25% of my i7 (not sure what my other flow was doing to get to 80%!).  If you change the Delay node from 'For each message topic' to 'All messages', then CPU used by Chrome drops significantly (close to zero?).
(I only guessed at 'status update' as I hit pause in chrome to see what it was doing with all it's time, and then traced on to something I recognised).
[{"id":"ab5e9758.cd6398","type":"inject","z":"327e5cd9.d2d764","name":"","topic":"","payload":"","payloadType":"date","repeat":"0.040","crontab":"","once":false,"x":150,"y":200,"wires":[["83252fce.1e7a1"]]},{"id":"9b426965.c28a58","type":"delay","z":"327e5cd9.d2d764","name":"","pauseType":"timed","timeout":"5","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":true,"x":630,"y":160,"wires":[["610177f8.879458"]]},{"id":"58b8098.f8c15f8","type":"function","z":"327e5cd9.d2d764","name":"","func":"\nreturn msg;","outputs":1,"noerr":0,"x":460,"y":160,"wires":[["9b426965.c28a58"]]},{"id":"83252fce.1e7a1","type":"function","z":"327e5cd9.d2d764","name":"split","func":"var newmsg1 = {topic:'1', payload:msg.payload}; \nnode.send([newmsg1, null, null]);\nnode.send([newmsg1, null, null]);\nnode.send([newmsg1, null, null]);\nvar newmsg2 = {topic:'2', payload:msg.payload}; \nnode.send([null, newmsg2, null]);\nnode.send([null, newmsg2, null]);\nnode.send([null, newmsg2, null]);\nvar newmsg3 = {topic:'3', payload:msg.payload}; \nnode.send([null, null, newmsg3]);\nnode.send([null, null, newmsg3]);\nnode.send([null, null, newmsg3]);\n","outputs":"3","noerr":0,"x":300,"y":180,"wires":[["58b8098.f8c15f8"],["58b8098.f8c15f8"],["58b8098.f8c15f8"]]},{"id":"610177f8.879458","type":"debug","z":"327e5cd9.d2d764","name":"","active":true,"console":"false","complete":"false","x":620,"y":280,"wires":[]}]


Cost estimates too low for phase 1 sites

due to 10m span recommendation in phase1 submission spreadsheet.  should change to 14m span (seems to be what happens) perhaps in tables.R.  could just do in the spreadsheet instead actually since it is already submitted.....

changed most spans to 14 and made SS 100k


Update recipe for py312_patch

Preparation for py312 release.

Linter check found the following problems:
The following problems have been found:
ERROR: clone/recipe/meta.yaml:28: host_section_needs_exact_pinnings: Packages in host must have exact version pinnings, except python build tools.
ERROR: clone/recipe/meta.yaml:28: missing_wheel: For pypi packages, wheel should be present in the host section
ERROR: clone/recipe/meta.yaml:41: missing_pip_check: For pypi packages, pip check should be present in the test commands
ERROR: clone/recipe/meta.yaml:45: incorrect_license: The recipe's about/license key is not an SPDX compliant license or license exception, reference https://spdx.org/licenses/
ERROR: clone/recipe/meta.yaml:53: http_url: http://datastax.github.io/python-driver/api/index.html is not https
ERROR: clone/recipe/meta.yaml:53: http_url: http://github.com/datastax/python-driver is not https
Errors were found


Unexpected behavior on custom Block directive with 2 Default attributes

When I add this test to the BlockDirectiveAPISpec it fails:
    trait RequiredAndOptionalDefaultAttribute {
      val directive = Blocks.create("dir") {
        (attribute(Default) ~ attribute(Default).optional) { (a, b) ⇒
          p(s"$a, $b")
        }
      }
    }

  "The directive parser" should "parse a directive with one required default and one optional default string attribute" in {
    new RequiredAndOptionalDefaultAttribute with TemplateParser {
      val input = """aa
        |
        |@:dir foo.
        |
        |bb""".stripMargin
      Parsing (input) should produce (root(p("aa"), p("foo, None"), p("bb")))
    }
  }

The directive expands to foo, Some(foo) rather than foo, None.
If I add a second argument at the directive's call site the directive is not matched at all.
Is this the expected behavior?
Can I define a directive with two anonymous attributes/arguments?

I'm afraid this is expected. I've designed the unnamed attribute for simple cases and wanted to encourage the use of named arguments for multiple parameters for better legibility. The Default above serves as a key for the attribute, so the directive points to the same arg twice. It's documented here: http://planet42.github.io/Laika/extending-laika/directive.html#default-attributes although it probably could be even clearer about only one being allowed.

Ok, no problem.
I saw that for the ReST directives there is a whiteSpace parameter that allows me to have a single parameter capture the whole remaining line. Does that work for Block directives as well?

To give some more background: I am actually trying to build a somewhat generic snippet Block directive which is supposed to take 1 or more arguments. Actually, it'd be good if all arguments after the first one were named.
Am I correct in that it's currently not possible for Block directives to accept a variable number of arguments?

Parameter values with whitespace are allowed when the value is enclosed in double quotes (should work for named and default parameters).
Parameters can be optional, but the names must be known.
For bigger snippets you can also use "named bodies" instead of parameters.

Ok, thx!

There is also the fragment directive, but I'm not sure that is useful in your case: http://planet42.github.io/Laika/using-laika/templates.html#the-directive-1


Plumb context through graveler and pyramid

Allows cancellation, better logging (in future; mostly not done yet).

Codecov Report

Merging #1180 (d145f41) into master (b5b40d2) will increase coverage by 0.01%.
The diff coverage is 44.18%.

@@            Coverage Diff             @@
##           master    #1180      +/-   ##
==========================================
+ Coverage   46.72%   46.73%   +0.01%
==========================================
  Files         196      196
  Lines       15120    15123       +3
==========================================
+ Hits         7065     7068       +3
  Misses       7117     7117
  Partials      938      938

Impacted Files
Coverage Δ

graveler/committed/manager.go
0.00% <0.00%> (ø)

graveler/committed/meta_range_manager.go
0.00% <0.00%> (ø)

graveler/sstable/cache.go
29.54% <40.00%> (ø)

graveler/sstable/writer.go
61.53% <50.00%> (+0.75%)
:arrow_up:

pyramid/tier_fs.go
55.68% <57.14%> (ø)

graveler/sstable/range_manager.go
36.00% <60.00%> (ø)

graveler/committed/iterator.go
60.56% <100.00%> (+0.56%)
:arrow_up:

graveler/committed/meta_range_writer.go
57.95% <100.00%> (+0.48%)
:arrow_up:

graveler/graveler.go
40.05% <100.00%> (ø)

pyramid/wr_file.go
70.00% <100.00%> (ø)

... and 2 more

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 b5b40d2...d145f41. Read the comment docs.

Codecov Report

Merging #1180 (d145f41) into master (b5b40d2) will increase coverage by 0.01%.
The diff coverage is 44.18%.

@@            Coverage Diff             @@
##           master    #1180      +/-   ##
==========================================
+ Coverage   46.72%   46.73%   +0.01%
==========================================
  Files         196      196
  Lines       15120    15123       +3
==========================================
+ Hits         7065     7068       +3
  Misses       7117     7117
  Partials      938      938

Impacted Files
Coverage Δ

graveler/committed/manager.go
0.00% <0.00%> (ø)

graveler/committed/meta_range_manager.go
0.00% <0.00%> (ø)

graveler/sstable/cache.go
29.54% <40.00%> (ø)

graveler/sstable/writer.go
61.53% <50.00%> (+0.75%)
:arrow_up:

pyramid/tier_fs.go
55.68% <57.14%> (ø)

graveler/sstable/range_manager.go
36.00% <60.00%> (ø)

graveler/committed/iterator.go
60.56% <100.00%> (+0.56%)
:arrow_up:

graveler/committed/meta_range_writer.go
57.95% <100.00%> (+0.48%)
:arrow_up:

graveler/graveler.go
40.05% <100.00%> (ø)

pyramid/wr_file.go
70.00% <100.00%> (ø)

... and 2 more

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 b5b40d2...d145f41. Read the comment docs.

Thanks!

Thanks!


Border dont work in react native in release ipa sometime for iphones

Please provide all the information requested. Issues that do not follow this format are likely to stall.
Description
Sometime the react native style dont work in iOS Devices in my case border is not working  beacuse of it entire UI is not looking  good kindly help to fix this .
React Native version:
System:
OS: macOS 11.2.3
CPU: (4) x64 Intel(R) Core(TM) i5-7360U CPU @ 2.30GHz
Memory: 75.96 MB / 8.00 GB
Shell: 5.8 - /bin/zsh
Binaries:
Node: 10.16.0 - /usr/local/bin/node
Yarn: Not Found
npm: 6.9.0 - /usr/local/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
Managers:
CocoaPods: 1.9.3 - /usr/local/bin/pod
SDKs:
iOS SDK:
Platforms: iOS 14.2, DriverKit 20.0, macOS 11.0, tvOS 14.2, watchOS 7.1
Android SDK:
API Levels: 28, 29, 30
Build Tools: 28.0.3, 30.0.3
System Images: android-29 | Google Play Intel x86 Atom
Android NDK: Not Found
IDEs:
Android Studio: 4.1 AI-201.87<IP_ADDRESS>42882
Xcode: 12.2/12B45b - /usr/bin/xcodebuild
Languages:
Java: 1.8.0_271 - /usr/bin/javac
Python: 2.7.16 - /usr/bin/python
npmPackages:
@react-native-community/cli: Not Found
react: 16.11.0 => 16.11.0
react-native: ^0.63.2 => 0.63.3
react-native-macos: Not Found
npmGlobalPackages:
react-native: Not Found
Steps To Reproduce
Provide a detailed list of steps that reproduce the issue.
Expected :-

Result in iphone XR (Also sometime in any iphone device ): -

Style for container (Code):
tilesContainer: {
flex: 0.5,
borderRadius: 15,
margin: 6,
backgroundColor: colorCode.BACKGROUND_WHITE,
height: 175,
margin: (height > 593) ? 9 : 8,
shadowColor: colorCode.BLACK,
shadowOffset: {
width: 0,
height: 1,
},
shadowOpacity: 0.1,
shadowRadius: 2,
elevation: 2,
borderWidth: 1,
}
Expected Results
This border should always be there in both android and ios all phones

Closing as stale


Translate OOP

Hi!
I have a question.
Is there a reason why you don't use classes for the logic?
I want to translate this code to OOP to continue adding features.
Greetings

I have utilized functional components due to its beneficial of perfomance and straightforward syntax. However, this doesn't mean translating the code to OOP isn’t feasible or beneficial. If you feel this would make the contribution process more comfortable for you or could improve the connective logic of the project, feel free to do so.


Footer not sticking in IE 11

In Internet Explorer the footer is not sticking at the bottom:

Can you confirm this is IE11?

yup, see title :-)


Partial Labels

Unless I’m missing something, it’s currently necessary to specify all labels at once.  It would be nice tho if I could do something like this:
M = Counter("a counter", "counter that counts", ["id", "type"])
...
c = M.labels({"id": id})  # id is determined at runtime/initialization
...
c.labels({"type": "internal").inc()  # type is unclear until it happens
...
c.labels({"type": "external").inc()

Does that make sense?

I think such an API would cause confusion as it's not clear whether a given labels use is complete.
I'd expect that you'd always know all the labels in play when incrementing, so this isn't going to buy you much. I'm also considering dropping the dict argument, in favour of kwargs.

Well, I do know, but if one of three labels is dynamic, it’s still pretty painful to always type them out every single time.  Copy and paste is error-prone and annoying.
And yes, kwargs would be great, because currently the “best” way I found to precompute labels is:
    def request_time_for(self, type):
        return self._request_time.labels(*(self._labels + (type,)))

(can’t use mutable dicts for I’d have to copy them first…)

Anyhow, if you wanna keep the official client as minimal as possible I can stop opening bugs and just build my own convenience layer called “lighter” or something. :D
I just found the current behavior highly discouraging for using labels, that’s all.

Just thinking there the kwargs would help you as you could do
c.labels(type="internal", **standard_labels).inc()

yeah, that’s what I meant by “would be great” :)

I want to build dynamic variables with this client lib. I have the following code
self.online_time_span = Gauge('online_time_span', 'How long someone has been online', ['value'])

self.online_time_span.labels('online_time').set(time_span)

In the above statement I need the labels to represent something like

'online_time_spent_<USERNAME_WHICH_UNIQUE_COMES_FROM_API>'
Examples:
'online_time_spent_John'
'online_time_spent_Maria'
'online_time_spent_Foo'

Is it possible ?


"v-if" some code could'nt effective

Closing this issue because the issue template was not respected. Please create a new one that includes a minimal reproduction so it is easier for others to debug the problem. Also please respect the Before submitting the issue, please make sure you do the following and tick the checkboxes so we know that you read the contribution guidelines and further documentation.


[Design] Create a Palette from an Image as a color schemes.

In the theme building tool, users can create a Palette from an Image then use it in charts as a color scheme.

It should be implemented with theme editor.


nmap probe brings the server down

The example app in the readme crashes with
events.js:160
      throw er; // Unhandled 'error' event
      ^

Error: read ECONNRESET
    at exports._errnoException (util.js:1026:11)
    at TCP.onread (net.js:564:26)

when touched with nmap localhost -p9000.
I assume nmap disconnects right after connect and the connection gets reset.

Does it send data at all or ? Did you try this with just a plain http or plain https server?

Don't know, my guess is that nmap just knocks on the port and when somebody answers hangs up.


check size for the universal image

Dev container name:

universal
Description:
This PR is the draft version of following functionality:
Github action checks the size of the universal container is exceeding the fixed threshold or not and displays the report with the result success if it is below the threshold and fail if it is beyond the threshold.
Changelog:
Updated test.sh

if Image is test-universal then execute check-size script.

Created test-universal

This new image folder added for testing purpose
Created .devcontainer with the basic image of universal from official mcr space
Created check-size.sh to check the size of this new test-universal image

Checklist:

[x]   Checked that the container has been created and tried to run the github action for the image test-universal
[x]   Successfully checked the size of test-universal image and displayed report failed as the size exceeded the threshold

@prathameshzarkar9 please read the following Contributor License Agreement(CLA). If you agree with the CLA, please reply with the following information.
@microsoft-github-policy-service agree [company="{your company}"]

Options:

(default - no company specified) I have sole ownership of intellectual property rights to my Submissions and I am not making Submissions in the course of work for my employer.

@microsoft-github-policy-service agree

(when company given) I am making Submissions in the course of work for my employer (or my employer has intellectual property rights in my Submissions by contract or applicable law). I have permission from my employer to make Submissions and enter into this Agreement on behalf of my employer. By signing below, the defined term “You” includes me and my employer.

@microsoft-github-policy-service agree company="Microsoft"

Contributor License Agreement

@microsoft-github-policy-service agree [company="Infosys"]


Experimental/power consumption for CZ-TACG1

Based on the official Panasonic official marketing material, the value from the AC is just an estimation
Based on testing there is slight variation if compared with proper power meter, but it is close enough

Looks good, thanks!


Question: does Permafrost item cause long duration or the frost is permanent?

A humble kind enquiry,
Does Permafrost item cause long duration or the frost is permanent?
Also, any plans to add risk of option compatibility or method to prevent item from appearing in runs?

Hi, the Permafrost freeze lasts for 1 second, but triggers on any damage proc. If you would like to disable the item, you can do so in the config file. Just make sure to enable the custom configs when doing so.


[HOTFIX] Do not touch MDT file when getting datamap schema

When getting datamap schema, there is no need to touch the mdt file (not required to update the modificiation time)

[ ] Any interfaces changed?

[ ] Any backward compatibility impacted?

[ ] Document update required?

[ ] Testing done
Please provide details on
- Whether new unit test cases have been added or why no new tests are required?
- How it is tested? Please attach test report.
- Is it a performance related change? Please attach the performance test report.
- Any additional information to help reviewers in testing this change.

[ ] For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.1/997/

Build Success with Spark 2.2.1, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.2/1006/

Build Success with Spark 2.3.2, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/1011/


storybook-vite-source-loader-plugin + CSF3

I found an issue that works fine in Storybook 6.4.0-rc.6 + Webpack but fails with storybook-builder-vite.
The underlying issue is at https://github.com/eirslett/storybook-builder-vite/blob/c2e9c3cc9c7879047e793a2c441a1cdd39f576e2/packages/storybook-builder-vite/source-loader-plugin.js#L10
The inject function from @storybook/source-loader does not export a sourceJson property.  I don't think it ever did.  But regardless, things still generally works.
However, if I upgrade the storybook dependencies (see #161) and create a Storybook 6.4 Component Story Format 3.0 (CSF3) test, storybook-builder-vite does not properly transform the story file and ends up causing Storybook to crash with a defaultExport is undefined message.
The following is a valid CSF3 story:
export default {
  title: 'Gizmo',
  render: ({ label, ...props }) => <button {...props}>{label}</button>
};

export const Default = {
  args: {
    label: 'Hello, World'
  }
};

The key thing to note is that there is no function export (StoryFn), just a CSF3 StoryObj export.  When transformed by storybook-vite-source-loader-plugin the resulting JS file is:
var __STORY__ = void 0;
var __LOCATIONS_MAP__ = {};
;
export const __namedExportsOrder = [];

I believe this has to do with the plugin bypassing the "standard" Storybook transformer and trying to do its own thing.
Oddly enough, if you add a standard function export (StoryFn), things actually work, including the CSF3 (StoryObj) export.
...
export const Weird = () =>
Don't know why this "fixes" it.
;

Thanks for bringing this up.  Is this a react project?  I wonder if this has something to do with the vite react plugin looking for an exported component.  I know that was an issue for a while with the older vite react-fast-refresh plugin.

Maybe we are missing
https://github.com/storybookjs/storybook/blob/c67c22afa75728eb00d782e88b4d43645d3a3253/lib/source-loader/src/build.js#L10-L12

@IanVS

Is this a react project?

Yes

I have this issue in my own project too, and just didn't notice it before.  I'll try to see if I can figure out a fix.

This fixed it for me in my environment:
https://github.com/scott-lc/storybook-builder-vite/commit/693464809952c5c7595ae942b5cc61b5da1ce1d7
But I am also running it against Storybook 6.4.0-rc.6 locally to work around this issue - #161

I have a local fix too which respects @storybook/source-loader's encapsulation a bit more https://github.com/joshwooding/storybook-builder-vite/blob/6e4a1c8ee8e778fcd3cf70ac08fb08b2570c9d43/packages/storybook-builder-vite/source-loader-plugin.js#L12

@joshwooding - That is a much better solution and works perfectly for me.
I was under the impression that the transform could not be async, which was why that other solution existed in the first place.

Great teamwork!  @joshwooding I'll review a PR if you would like to submit it.


LogReceiverWebServiceTarget should remove its use of LogEventInfoBuffer

Targets should not implement their own batching. Instead they should do one of the following:

Recommend wrapping using AsyncWrapper or BufferingWrapper and override Write(IList<AsyncLogEventInfo>)
Inherit from AsyncTaskTarget (for async / await)

Alternative move LogEventInfoBuffer into the WCF-nuget-package for it to die there.

Hi.
I'd like to take this.
Any hint points?

I think the easy solution is just to copy the LogEventInfoBuffer-code, and make it an internal-class in the NLog.Wcf-project (Along with removing obsolete-attribute). Then change these lines:
        #pragma warning disable CS0618 // Type or member is obsolete
        private readonly LogEventInfoBuffer buffer = new LogEventInfoBuffer(10000, false, 10000);
        #pragma warning restore CS0618 // Type or member is obsolete

Into just this (Removing suppression of compiler warnings):
        private readonly LogEventInfoBuffer buffer = new LogEventInfoBuffer(10000, false, 10000);`

Resolved with #4126


ignoreImports option does not seem to work with ~@angular/material/theming imports.

Describe the bug
ignoreImports option does not seem to work with ~@angular/material/theming imports.
To Reproduce
toolbar.component-theme.scss
@import "~@angular/material/theming";

@mixin htg-toolbar-theme($theme) {

  $primary: map-get($theme, primary);

  .htg-toolbar {
    background-color: mat-color($primary);
  }
}

components.scss
@import "../htg-navigation/components/toolbar/toolbar.component-theme";

@mixin component-themes($theme, $company-logo) {
  @include htg-toolbar-theme($theme);
}

index.scss
@import "components";

scss-bundle.config.json
{
  "bundlerOptions": {
    "entryFile": "./src/lib/scss/index.scss",
    "rootDir": "./src/lib/",
    "outFile": "dist/shared-components/bundled.scss",
    "ignoreImports"<EMAIL_ADDRESS>    "logLevel": "debug"
  }
}

Expected behavior
The ~@angular/material/theming imports should be ignored and the files should be bundled.
Package version: v3.0.2
Node version: v12.13.0
OS: Windows 10 - 1903

It appears that the ignoreImports option has been renamed to ignoredImports (notice the d)
I included the following property and value in my scss-bundle.config.json and the outFile did not contain any material scss code:
"ignoredImports"<EMAIL_ADDRESS>

@jefferywroblewski-accesso Might this be for a newer version? My version does not seem to know the ignoredImports option when used in the CLI, it specificly says so.
As for the issue at hand, i seem to have fixed it.
I was running scss-bundle from the projects/myproject directory, with the rootdir also set to this directory. This meant it could not find my node_modules 2 directories up. While messing around i got the hint 'found tilde import but no node_modules found.'
The solution for me was to move the scss-bundle.config.json to the root of my workspace and change some values:
{
  "bundlerOptions": {
    "entryFile": "projects/shared-components/src/_theme.scss",
    "outFile": "dist/shared-components/bundled.scss",
    "rootDir": "",
    "ignoreImports"<EMAIL_ADDRESS>    "logLevel": "debug"
  }
}

Everything is now working like it should now that scss-bundle can find my node_modules.
Maybe someone else can verify this issue, because the error message is very misleading if this is the case. I'll leave this issue open for any possible feedback for the time beeing.

Same problem occurs here.
having a projects/my-project/scss-bundle.config.json and running:
"build:theming:scss": "scss-bundle --project='./projects/my-project'", does not work.
Moving the scss-bundle.config.json to the root fixes it.
But I would love to have the config in de project root instead of the workspace root. (we have multiple projects)

@MalumAtire832 , My mistake.  The ignoredImports was only available in previous versions (I was using 2.5.1).  I installed the latest version (which is 3.0.2 at the time of this post) and discovered the configuration scheme was refactored between the two versions.  The old ignoredImports property was removed and replaced with the bundlerOptions.ignoreImports property.
I was able to get this working where it is only ignoring the @angular exports using the same approach that you used.  Thanks for the comment which reminded me to look for an updated version.  👍

Hey @the-ult and @MalumAtire832. If I understood correctly, you having issues with configuration file location and where exactly node_modules are.
I have published a new canary version. It has CLI flag --config and project property in bundlerOptions.
$ npm install<EMAIL_ADDRESS>-D

I think another issue is somewhat related #74.

Thanks @MartynasZilinskas will give it a try tomorrow

@MartynasZilinskas The combination of the --config and project options seems to work for me:
{
  "bundlerOptions": {
    "entryFile": "./projects/shared-components/src/_theme.scss",
    "rootDir": "./projects/shared-components/src",
    "project": "../../",
    "outFile": "./dist/shared-components/theme.scss",
    "ignoreImports"<EMAIL_ADDRESS>    "logLevel": "debug"
  }
}

Thank you for this!
I only noticed one thing:
The project option seems to expect a path relative from the specified rootDir; am i correct in this?
Because the entryFile seems to require a path relative from the directory where scss-bundle was called.
For example;

Setting project equal to ./ does not work; same import error.
Setting entryFile equal to _theme.scss does not work, file not found error.

Is this the expected behavior? Because it strikes me as a bit odd.

@MalumAtire832 I think I know where is the problem. Could you test with new canary version (scss-bundle@0.0.0-canary.ad13f8e)?

@jefferywroblewski-accesso  ignoreImports is not working for<EMAIL_ADDRESS>const scssBundle = [   {     entryFile: 'libs/theme/src/lib/safire-theme.scss',     outFile: 'libs/theme/dist/theme.scss'   },   {     entryFile: 'libs/theme/src/lib/utilities.scss',     outFile: 'libs/theme/dist/utilities.scss'   },   {     ignoreImports<EMAIL_ADDRESS>    entryFile: 'libs/components/button/src/scss/button.scss',     outFile: 'libs/components/button/src/dist/button-theming.scss'   } ];

Thanks @MartynasZilinskas! I'm using<EMAIL_ADDRESS>with --config flag and project property and it's working fine for me. This is my .config.json:
{
  "bundlerOptions": {
    "entryFile": "./src/components/src/components.theme.scss",
    "rootDir": "",
    "project": "../../",
    "outFile": "./dist/components/theming.scss",
    "ignoreImports": [
<EMAIL_ADDRESS>    ],
    "logLevel": "debug"
  }
}

This still seems to be an issue in 3.1.1 even when following the guidance above.
Calling from workspace root (where node_modules) is and setting project config to "./" or leaving blank does not solve the problem.


echo is not implemented

The docs for noecho claim that you can also use echo, but you can't because it's not implemented at the pancurses level.

echo() has been added to 0.9


'Killed' message during Training after epoch 0:

Could someone please help me to come out of this issue:
I am using miniconda, tried to execute the sentiment analysis, i could see killed message.
Here are the more details:
(base) renuk@renuk-ThinkPad-X1-Carbon-6th:~/ABSA-PyTorch$ python -c "import torch; print(torch.version)"
1.0.1.post2
(base) renuk@renuk-ThinkPad-X1-Carbon-6th:~/ABSA-PyTorch$ python
Python 3.6.2 |Anaconda, Inc.| (default, Oct  5 2017, 07:59:26)
[GCC 7.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.

[4]+  Stopped                 python
(base) renuk@renuk-ThinkPad-X1-Carbon-6th:~/ABSA-PyTorch$ python train.py --model_name bert_spc --dataset restaurant --logdir bert_spc_logs
n_trainable_params: 109484547, n_nontrainable_params: 0

training arguments:

model_name: bert_spc
dataset: restaurant
optimizer: <class 'torch.optim.adam.Adam'>
initializer: <function xavier_uniform_ at 0x7f65dd9719d8>
learning_rate: 2e-05
dropout: 0.1
l2reg: 0.01
num_epoch: 20
batch_size: 64
log_step: 5
logdir: bert_spc_logs
embed_dim: 300
hidden_dim: 300
bert_dim: 768
pretrained_bert_name: bert-base-uncased
max_seq_len: 80
polarities_dim: 3
hops: 3
device: cpu
model_class: <class 'models.bert_spc.BERT_SPC'>
dataset_file: {'train': './datasets/semeval14/Restaurants_Train.xml.seg', 'test': './datasets/semeval14/Restaurants_Test_Gold.xml.seg'}
inputs_cols: ['text_bert_indices', 'bert_segments_ids']

It seems that you are running memory intensive BERT model on cpu.
This "killed" message is weird, this error is probably caused by insufficient memory?


Added icons-font-customization

Added icons-font-customization - A collection of over 33,000 high-quality free svg icons and tools for generating customized icon font.

Useful repo but scope-creepy for this list. Thanks for the PR :)


Add TownCrier

Environment

Nautobot version: 1.5.14
nautobot-circuit-maintenance version: 1.0.0

Proposed Functionality
Add Town Crier

Use Case
Support for common practices of changelogs

done


Lambda support

Description
Adds lambda instrumentation support - AWS_LAMBDA_EXEC_WRAPPER is available for the 3 lambda node runtimes, so the same approach will work across all of them.

Need to investigate why lambda spans aren't getting recycled after the lambda tests run - will resolve tomorrow AM.

@prodion23 you have not run into the Centos 8 issue due to it's EOL?

@tim-mwangi hmm, I have not seen issue with centos:8 - is it being referenced in this repo somewhere?
(I think ctrl+f may not be finding it?)

@tim-mwangi hmm, I have not seen issue with centos:8 - is it being referenced in this repo somewhere? (I think ctrl+f may not be finding it?)

I think it's fine for HT nodejsagent since it's not building anything native.


Azure OpenAI: non-Azure OpenAI API key should be a strongly-typed credential object

PR #35045 added the capability to use Azure.AI.OpenAI's OpenAIClient to connect to the non-Azure OpenAI endpoint using an API key from https://platform.openai.com.
This is currently represented as a plain string, but needs to be updated to a strongly-typed credential object that derives from TokenCredential and mirrors the functionality of AzureKeyCredential.
Additionally, when adding this new type:

Appropriate client builder overloads (AddOpenAIClient()) should be added
The use of client builder should be documented, including a link to the overall dependency injection documentation: https://learn.microsoft.com/en-us/dotnet/azure/sdk/dependency-injection

@trrwilson, can this be closed now that we have the new ClientModel APIs for this?

Dropping this incase anyone else is trying to figure out how to register this with the ClientModel APIs
builder.Services.AddAzureClients(azBuilder =>
{
    azBuilder.AddClient<OpenAIClient, OpenAIClientOptions>(options =>
        new OpenAIClient(builder.Configuration.GetValue<string>("MY_OPEN_AI_KEY"), options));
});


difficulty installing samgeo

Environment Information

samgeo version:current
Python version: 3.10
Operating System: Windows 11

Description
Difficulty installing samgeo, although have done so before, using pip install and conda. Ran the addtl steps for setting the environment suggested w conda may have destabilized installation of anaconda. This is over the past few days after re-stalling anaconda and have no difficulty installing other packages, including for Earth Engine.
What I Did
1. Result from "conda install -c conda-forge segment-geospatial":

  Building wheels for collected packages: pycocotools
  Building wheel for pycocotools (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for pycocotools (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [16 lines of output]
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build\lib.win-amd64-cpython-310
      creating build\lib.win-amd64-cpython-310\pycocotools
      copying pycocotools\coco.py -> build\lib.win-amd64-cpython-310\pycocotools
      copying pycocotools\cocoeval.py -> build\lib.win-amd64-cpython-310\pycocotools
      copying pycocotools\mask.py -> build\lib.win-amd64-cpython-310\pycocotools
      copying pycocotools\__init__.py -> build\lib.win-amd64-cpython-310\pycocotools
      running build_ext
      cythoning pycocotools/_mask.pyx to pycocotools\_mask.c

2. Result from "conda install -c conda-forge segment-geospatial":
      Still running at "Solving environment:"

See attached screenshots for both results:

See the installation instructions. Use mamba rather than conda
https://samgeo.gishub.org/installation/


perf(pointcloud_preprocessor): move print out of hot loop

Description
fixes #5252
Tests performed
@beginningfan
Effects on system behavior
None
Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.

[x] I've confirmed the contribution guidelines.
[x] The PR follows the pull request guidelines.

In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.

[ ] The PR follows the pull request guidelines.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[ ] There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.

I tested the code and it works well


In the group and combo creation/edition dialogs, required fields should be easily identifiable.

Reported by a user:
When creating a new Combo, if you don't populate all of the required fields "Group, Keyword, Snippet", then the program won't allow you to hit the OK button to save it.  This is fine, except it would be good to show that those fields are required somehow (display in red or an asterisk, etc).

Fixed by e783d8c.


Geocoding data from excel, mapping a study site, and generating explanatory environmental data?

A phd student in entomology is running a short 1yr project to develop best management practices for a fly that is a pest in mushroom farms of southeastern PA. She has the postal addresses of farms that have agreed to participate in the study and needs to map those and then derive explanatory variables from readily available spatial data sources like vegetation cover, soil type and time since the last rain event.

Problem: How to create data and associated descriptions.


Add documentation on how to install nightly releases.

Changes
We mention that they exist and may contain bugs earlier on in the documentation,
but don't mention how to use them anywhere AFAICT.
Submitter Checklist
These are the criteria that every PR should meet, please check them off as you
review them:

[X] Includes docs (if user facing)
[X] Commit messages follow commit message best practices
[X] Release notes block has been filled in or deleted (only if no user facing changes)

See the contribution guide for more details.
Double check this list of stuff that's easy to miss:

If you are adding a new binary/image to the cmd dir, please update
the release Task to build and release this image.

Reviewer Notes
If API changes are included, additive changes must be approved by at least two OWNERS and backwards incompatible changes must be approved by more than 50% of the OWNERS, and they must first be added in a backwards compatible way.
Release Notes
NONE

/kind documentation


useRoute is undefined when following vue-test-utils guide to test with Composition API

Version
>= 4.1.0

Reproduction link
github.com
Steps to reproduce
yarn
yarn test

What is expected?
useRoute should be mocked and return the mocked value
What is actually happening?
useRoute is undefined

When following the guide on vue-test-utils how to test vue-router with Composition API (see https://test-utils.vuejs.org/guide/advanced/vue-router.html#using-a-mocked-router-with-composition-api), the test fails.
The reason for that is that useRoute is undefined. The last version where it's working like described is 4.0.16.

Yes, it seems related. We have this issue with version 4.1+ of vue-router. Using the latest version, the following mocks make the tests fail
vi.mock('vue-router', () => ({
  useRoute: () => ({
    query: { pageNumber: 1 },
  }),
}));

When changing the mocks like this, the tests will succeed again.
vi.mock('vue-router/dist/vue-router.mjs', () => ({
  useRoute: () => ({
    query: { pageNumber: 1 },
  }),
}));

So, the workaround is to mock the .mjs version until https://github.com/vitejs/vite/issues/8659 has been fixed

Yes, it seems related. We have this issue with version 4.1+ of vue-router. Using the latest version, the following mocks make the tests fail
vi.mock('vue-router', () => ({
  useRoute: () => ({
    query: { pageNumber: 1 },
  }),
}));

When changing the mocks like this, the tests will succeed again.
vi.mock('vue-router/dist/vue-router.mjs', () => ({
  useRoute: () => ({
    query: { pageNumber: 1 },
  }),
}));

So, the workaround is to mock the .mjs version until vitejs/vite#8659 has been fixed

I've been searching for this issue and workaround for the past few hours!
thanks for the tip!

Yes, it seems related. We have this issue with version 4.1+ of vue-router. Using the latest version, the following mocks make the tests fail
vi.mock('vue-router', () => ({
  useRoute: () => ({
    query: { pageNumber: 1 },
  }),
}));

When changing the mocks like this, the tests will succeed again.
vi.mock('vue-router/dist/vue-router.mjs', () => ({
  useRoute: () => ({
    query: { pageNumber: 1 },
  }),
}));

So, the workaround is to mock the .mjs version until vitejs/vite#8659 has been fixed

Been looking for this for hours, thanks!! If you have a minute could you please explain why this works?

I am experiencing the same problem, but not with mocked router. I experience it with real router. When i follow these instructions:
https://test-utils.vuejs.org/guide/advanced/vue-router.html#using-a-real-router-with-composition-api
for me
const route = useRoute();
const router = useRouter();

both always are undefined. i am trying to fix this the whole day. Without success. Now i found this ticket here, but it is related to mocked router, how a solution for real router could look like? Any idea? Cause i am quite desperate on this since hours.

Well i adpated your approach and adjusted my imports from
import { createRouter, createWebHistory } from 'vue-router';
to
import { createRouter, createWebHistory } from 'vue-router/dist/vue-router.mjs';
Then it is also working for the "real router" approach.

Well i adpated your approach and adjusted my imports from
import { createRouter, createWebHistory } from 'vue-router';
to
import { createRouter, createWebHistory } from 'vue-router/dist/vue-router.mjs';
Then it is also working for the "real router" approach.
Thank you so much for the workaround. This was driving me nuts.

Yes, it seems related. We have this issue with version 4.1+ of vue-router. Using the latest version, the following mocks make the tests fail
vi.mock('vue-router', () => ({
  useRoute: () => ({
    query: { pageNumber: 1 },
  }),
}));

When changing the mocks like this, the tests will succeed again.
vi.mock('vue-router/dist/vue-router.mjs', () => ({
  useRoute: () => ({
    query: { pageNumber: 1 },
  }),
}));

So, the workaround is to mock the .mjs version until vitejs/vite#8659 has been fixed

This solution actually doesn't work for me.
I get the following error when changing the import: "Could not find a declaration file for module 'vue-router/dist/vue-router.mjs"
anyone managed to solve this issue??

Yes, it seems related. We have this issue with version 4.1+ of vue-router. Using the latest version, the following mocks make the tests fail
vi.mock('vue-router', () => ({
  useRoute: () => ({
    query: { pageNumber: 1 },
  }),
}));

When changing the mocks like this, the tests will succeed again.
vi.mock('vue-router/dist/vue-router.mjs', () => ({
  useRoute: () => ({
    query: { pageNumber: 1 },
  }),
}));

So, the workaround is to mock the .mjs version until vitejs/vite#8659 has been fixed

This workaround works if you are using certain versions of vitest. For example, in the "reproduction link" the version ^0.18 of vitest is used. The example works, with the workaround described, until version ^0.23 of vitest. Since version 0.24 of vitest, the workaround doesn't work anymore and the result of useRoute() is undefined.

Will the vue version downgrade to 3.3.4 can use the specific source code what wrong do not know

This seems to be now resolved with the latest versions of vitest, vite, and test-utils


learner: Log which neurons were accepted from each block

Logs information about which neurons from each block were included for merging in the overall set. If none are found, make sure this gets noted in one of a few ways depending on whether there were neurons to begin with or if they were simply out of bounds for inclusion.

Looks good. Minor line length issues aren't as important as having this logging information. Merging...


[MB-8170] DRAFT implementation of Proposal 1 for refactoring the paymentRequestStatusUpdator service

Description
This PR  shows proposed changes to refactor the paymementRequestStatusUpdator service. It breaks it out into two new services:

UpdateReviewedPaymentRequestStatus which allows the caller to update a payment request to either a  REVIEWED or REVIEWED_AND_ALL_SERVICE_ITEMS_REJECTED status. This is used by both the support api and the ghc api
UpdateProcessedPaymentRequestStatus which allows the caller to update a payment request to either a SENT_TO_GEX, RECEIVED_BY_GEX, EDI_ERROR or PAID status. This is used by our job runner which is a part of the support api

The desire(need?) to refactor paymementRequestStatusUpdator service  was identified in a PR to address a bug where the GHC API was allowing payment request status updates to SENT_TO_GEX, EDI_ERROR, RECEIVED_BY_GEX and PAID. We only ever want payment request to be updated to those statuses via our job runner. This also adheres to a guideline of removing logic from handlers
Reviewer Notes

While working on this, I realized another option could be to keep one service and refactor it so that it takes a type argument. For instance the ghc api could call services.PaymentRequestStatusUpdator(&paymentRequest, eTag, "review") and the service can check the type and apply the logic checks for "review", "processed". This would make it easier if in the future we added new payment request statuses that we wanted to apply specific logic to (without making the logic have to live in the handler). I created a gist for this approach here

Setup
Add any steps or code to run in this section to help others prepare to run your code:
make server_run
make server_test

You can also trigger the job runner to check that the payment request status changes to SENT_TO_GEX
References

Jira story for this change
discovery doc

Messages

:book:
:link: MB-8170

  Generated by :no_entry_sign: dangerJS against e12eab4eca209b9bce1faada2d21accbb26f280d


Scale LOR integrated basis if using map type VALUE [lor-scale-integrated]

The LOR basis IntegratedGLL gives a spectrally equivalent L2 mass matrix when using map type INTEGRAL, but when using map type VALUE, it requires an additional scaling by the LOR subcell size.
This PR implements that scaling whenever map type is VALUE. See also #2752.

PR
Author
Editor
Reviewers
Assignment
Approval
Merge

#2753
@pazner
@mlstowell
@mlstowell + @dylan-copeland
01/06/22
⌛due 01/20/22
⌛due 01/27/22

This PR is now under review (see the table in the PR description). To help with the review process, please do not force push to the branch.

@pazner, can you recommend a way to test these changes? I noticed your PR #2752 has a new unit test although I have not looked at either PR closely yet. Is it possible that unit test would also test these changes? If not, is there some simple unit test we could add to this PR?

Yes, #2752 has unit test that should fail on master, and pass on that branch.
The situation with this PR is a bit more complicated — the code will "work" as it is in master, but the conditioning will not be good. The "easiest" way of testing this would be to apply this patch:

Click to expand
diff --git a/miniapps/solvers/lor_solvers.cpp b/miniapps/solvers/lor_solvers.cpp
index dac300971..ee4ab022b 100644
--- a/miniapps/solvers/lor_solvers.cpp
+++ b/miniapps/solvers/lor_solvers.cpp
@@ -113,7 +113,7 @@ int main(int argc, char *argv[])
    if (H1) { fec.reset(new H1_FECollection(order, dim, b1)); }
    else if (ND) { fec.reset(new ND_FECollection(order, dim, b1, b2)); }
    else if (RT) { fec.reset(new RT_FECollection(order-1, dim, b1, b2)); }
-   else { fec.reset(new L2_FECollection(order, dim, b1)); }
+   else { fec.reset(new L2_FECollection(order, dim, b2)); }

    FiniteElementSpace fes(&mesh, fec.get());
    cout << "Number of DOFs: " << fes.GetTrueVSize() << endl;
@@ -126,7 +126,6 @@ int main(int argc, char *argv[])
    if (H1 || L2)
    {
       a.AddDomainIntegrator(new MassIntegrator);
-      a.AddDomainIntegrator(new DiffusionIntegrator);
    }
    else
    {
@@ -137,8 +136,6 @@ int main(int argc, char *argv[])
    else if (RT) { a.AddDomainIntegrator(new DivDivIntegrator); }
    else if (L2)
    {
-      a.AddInteriorFaceIntegrator(new DGDiffusionIntegrator(-1.0, kappa));
-      a.AddBdrFaceIntegrator(new DGDiffusionIntegrator(-1.0, kappa));
    }
    // TODO: L2 diffusion not implemented with partial assembly
    if (!L2) { a.SetAssemblyLevel(AssemblyLevel::PARTIAL); }

and then run
./lor_solvers -fe l -o 10

and compare iterations between master and this branch (89 vs. 23).

I added some Doxygen documentation, let me know how it looks to you.


Task: Migrate Vision Post-Processors into Node

All vision capture and processing is integrated directly into the main Python code stack. This includes frame streaming, capture, and post processing, and vision contextualization.
This issue will track progress on moving the vision post-processing and contextualization into it's own node.
Functionality will include:

Dream3D process caller
CV2 processing

Long term goal of this is to enable continuous streaming of maze position and additional information.

Notes on setting up a Time Synchronous Node
Need to sync two input topics (color and depth) using the time stamp in the topic header. Using message_filters package.
http://wiki.ros.org/message_filters#Example_.28Python.29-1
May need to consider using message_filters.ApproximateTimeSynchronizer class in future to allow approximate times. Currently do not know how precise the published Realsense topics are.
Documentation http://wiki.ros.org/message_filters/ApproximateTime

Partial Example of Time Synced Subscribers
https://github.com/OSU-AIMS/maze-runner/blob/554215e163179f8d4b37b9b3a7996df318563e3f/node_vision_processing/node_vision.py#L57-L73

Migration complete as of edfedfdd8cf26e89ede4b625038a868e63495735
Issues remaining in the actual vision processing, but node architecture is complete.

Vision System Node Graph

Restructured vision processing node communication


Add intro text to Climate Maps page

Statewide Climate Overview Maps
See an Alaska-wide view of historical and projected climate-related environmental variables. To see community-based data, visit the home page and choose a location.

I went with a slight remix of this,
See an Alaska-wide view of historical and projected climate-related environmental variables.  To see all available data for a point, go to the home page and choose a community or latitude/longitude.


CLOUDP-251999: [skunkworks] add "atlas" CRD category and short names

This adds a kubect get atlas to be able to retrieve all atlas resources:
$ kubectl get atlas -A
NAMESPACE   NAME                                            AGE
ns-search   atlasdeployment.atlas.mongodb.com/search-test   9s

NAMESPACE   NAME                                        NAME
ns-search   atlasproject.atlas.mongodb.com/my-project   atlas-search-test

NAMESPACE   NAME                                                                       AGE
ns-search   atlassearchindexconfig.atlas.mongodb.com/test-search-index-config          8s
ns-search   atlassearchindexconfig.atlas.mongodb.com/test-search-index-config-simple   8s

Additionally, this introduces short names for our CRDs:
NAME                              SHORTNAMES
atlasbackuppolicies               abp
atlasbackupschedules              abs
atlasdatabaseusers                adu
atlasdatafederations              adf
atlasdeployments                  ad
atlasfederatedauths               afa
atlasprojects                     ap
atlassearchindexconfigs           asic
atlasstreamconnections            asc
atlasstreaminstances              asi
atlasteams                        at

This can be used as a shortcut to i.e. list all Atlas Deployments like so:
$ kubectl get ad -A
NAMESPACE   NAME          AGE
ns-search   search-test   52s

spoke with @dan-mckean: we want to write a small PD and scope for this. Once ratified, we can merge this. Putting on hold until then.

as clarified with @dan-mckean we're solving this as a regular Story without PD, scope, spec.

this needs a rebase and adding printcolumns

all done and ready for a final pass.

@roothorp this definitely needs good docs


Malware scanning support (no actual scanner) + Refactoring airlock stages

Fixes #1954 Fixes #1838
What is being addressed

Malware scanning can be toggled on/off
Added missing stages (Ready / Failed / Declined)
Fixed TRE API to accomodate new stages
Added Scan Result function to handle malware scanning results
fixes TF to support the scanning toggle

@tamirkamara  @anatbal  @LizaShak  we can have an online review

/test

/test


Document routing client can't access agent installation links

"Yes. To access the agent installation links, the user must be part of the Document routing client security role."
This statement in the FAQs appears to be inaccurate. If you only have the Document Routing Client security role assigned, you can see the Organisation administration view but with only really limited submenus, the Network printers submenu not being one of them. Hence you can't get to the download link.

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

ID: 2128b07d-7349-6642-f05f-c94fe800d104
Version Independent ID: 0568d0d1-8035-3423-f791-7bd82a5d070f
Content: Install the Document Routing Agent to enable network printing - Finance & Operations | Dynamics 365 | #MSDyn365FO
Content Source: articles/dev-itpro/analytics/install-document-routing-agent.md
Service: dynamics-ax-platform
GitHub Login: @TJVass
Microsoft Alias: tjvass

Also applicable to the Verify security roles point in the Troubleshooting tips section on the Run the Document Routing Agent as a Windows service page.

Checking the GitHub page, there is no progress in solving this bug. Any idea when this will be fixed? Having a service account assigned as "Information Technology manager" just to register printers and manage them is much more than really required (and far away from a good practice).
Thank you,
Gus

Thanks, Steve.
Correct, the Document routing client role is one of the security roles required to manage service access to network printer devices.

Hi TJVass, the point I was trying to make is that the Document Routing Client role does not have rights to view the Network Printers menu, and cannot be used to download the DRA agent. Hence the statement in the FAQ is incorrect. Typically (third-party) IT support staff will have access to the DRA service account credentials (with the Document Routing client role assigned) as they install the DRA on the servers they manage, with that they do not have access to the right pages on the D365FO portal to be able to download the installer.

Point taken.  Users need appropriate permissions to access the Network printers menu before getting access to the DRA installation links.


Why a Provider need a Ref to expose its State?

Describe the solution you'd like
As I understand, a Provider holds a State, a Ref attaches itself to a Provider to listen to State change.
But why do we need Ref to read the State of Provider?
Can Provider just expose its State so we don't need to pass the Ref around?

Providers do not hold state, they are completely immutable. The state is stored somewhere else (ProviderContainer).
Providers are merely a unique key that allows accessing the state.
That's why you can override providers or scope a value for a part of the widget tree


Parser Error in SHACL Modal

The produced RDF has issues with the conversion.
`Uncaught (in promise) Error: Invliad concise-term string, prefixes are not allowed to start with an underscore: '_'``
This happens not always

This is indeed the same thing

Fixed in<EMAIL_ADDRESS>

fixes


Strange result with tables get

I'm trying to get a list of tables:
  for table in client.tables.get(database_name='vast-db', schema_name='vast-db', page=1, page_size=1000):
        print('table::::', table, type(table))

However, this returns:
table:::: count <class 'str'>
table:::: next <class 'str'>
table:::: previous <class 'str'>
table:::: results <class 'str'>

If I inspect the API calls from my browser when accessing the VMS, I see:
{"count":1,"next":null,"previous":null,"results":[{"database_name":"vast-db","schema_name":"vast-db","name":"aaa","properties":null,"num_rows":0,"size":0}]}

Am I using the vastpy library right?

The workaround:
This worked for me:
        tables = client.tables.get(database_name='vast-db', schema_name='vast-db')['results']
        for table in tables:
            print(f"Table {table['name']} in schema {table['schema_name']} in database {table['database_name']}")


popup window closed manually

Hi guys,
I have a problem handling the manual close of a zoid popup window. The scenario:

i have a component open as popup
user clicks on window close button
onClose is triggered, i get the event, no problem here
i want now to be able to open again the same component but i cannot.

If i try to render again that component i get an error: Uncaught Error: Window closed
If i try to create a new component, using the same tag (i need the same page to be opened in the window) i get an error: Request listener already exists for XXXX on domain * for wildcard window

How should i treat this scenario in which a zoid popup is closed using the window close button ?

Found the problem. It was on my end, sorry for raising this. Will close it.

Hi @MortyPAA, I'm having the same issue. Could you share how you resolved this? Thanks.


image generation from a mk_task_folder implemented in a test function…

… to have a easy executable prototype.
function can be found in test_taskfolder_dset_extraction.py

Codecov Report

Merging #59 (6fbcb1e) into master (242f245) will decrease coverage by 0.61%.
The diff coverage is 26.08%.

@@            Coverage Diff             @@
##           master      #59      +/-   ##
==========================================
- Coverage   93.43%   92.83%   -0.61%
==========================================
  Files         101      101
  Lines        3045     3069      +24
==========================================
+ Hits         2845     2849       +4
- Misses        200      220      +20

Flag
Coverage Δ

unittests
92.83% <26.08%> (-0.61%)
:arrow_down:

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

Impacted Files
Coverage Δ

domainlab/compos/exp/exp_main.py
67.24% <22.72%> (-27.21%)
:arrow_down:

domainlab/arg_parser.py
100.00% <100.00%> (ø)

domainlab/algos/msels/c_msel.py
85.00% <0.00%> (-15.00%)
:arrow_down:

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

Good job!

could you two also add how to use this feature to the documentation?

For example, you can edit this file to explain to the user how to use this sanity check?
2. could you make the codacy pass? obviously you introduced some code not up to standard of code style
3. why your code drops the coverage? have you tested each line of your code?

@smilesun,
thank you for fixing the style issues.
I added a test to the code, fixed the remaining style issues and added an example to the documentation using the sanity check with an user specified sample number.
The code should be finished now :)

@Car-la-F great job!  I will review this together with @aliechoes since he proposed the corresponiding issue.

@Car-la-F , I runned the example you offered,
python main_out.py --te_d 0 1 2 --tr_d 3 7 --task=mini_vlcs --aname=diva --nname=conv_bn_pool_2 --nname_dom=conv_bn_pool_2 --gamma_y=7e5 --gamma_d=1e5 --san_check --san_num=8
and I got the following error:
/home/sunxd/anaconda3/lib/python3.9/site-packages/torchvision/io/image.py:13: UserWarning: Failed to load image Python extension: /home/sunxd/anaconda3/lib/python3.9/site-packages/torchvision/image.so: undefined symbol: _ZN5torch3jit17parseSchemaOrNameERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
  warn(f"Failed to load image Python extension: {e}")
/home/sunxd/DomainLab/domainlab/arg_parser.py:153: UserWarning: no algorithm conf specified, going to use default
  warnings.warn("no algorithm conf specified, going to use default")
Traceback (most recent call last):
  File "/home/sunxd/DomainLab/main_out.py", line 8, in <module>
    exp = Exp(args=args)
  File "/home/sunxd/DomainLab/domainlab/compos/exp/exp_main.py", line 28, in __init__
    self.dataset_sanity_check(args, args.san_num)
  File "/home/sunxd/DomainLab/domainlab/compos/exp/exp_main.py", line 69, in dataset_sanity_check
    self.task.init_business(args)
  File "/home/sunxd/DomainLab/domainlab/tasks/task_folder_mk.py", line 57, in init_business
    super().init_business(args)
  File "/home/sunxd/DomainLab/domainlab/tasks/b_task.py", line 54, in init_business
    list_domain_tr, list_domain_te = self.get_list_domains_tr_te(args.tr_d, args.te_d)
  File "/home/sunxd/DomainLab/domainlab/tasks/a_task.py", line 156, in get_list_domains_tr_te
    list_domain_tr = parse_domain_id(tr_id, list_domains)
  File "/home/sunxd/DomainLab/domainlab/tasks/a_task.py", line 28, in parse_domain_id
    list_domains_subset.append(list_domains[int(ele)])
IndexError: list index out of range

does the example you offered work on your machine?

@Car-la-F , I runned the example you offered, python main_out.py --te_d 0 1 2 --tr_d 3 7 --task=mini_vlcs --aname=diva --nname=conv_bn_pool_2 --nname_dom=conv_bn_pool_2 --gamma_y=7e5 --gamma_d=1e5 --san_check --san_num=8  and I got the following error:
/home/sunxd/anaconda3/lib/python3.9/site-packages/torchvision/io/image.py:13: UserWarning: Failed to load image Python extension: /home/sunxd/anaconda3/lib/python3.9/site-packages/torchvision/image.so: undefined symbol: _ZN5torch3jit17parseSchemaOrNameERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
  warn(f"Failed to load image Python extension: {e}")
/home/sunxd/DomainLab/domainlab/arg_parser.py:153: UserWarning: no algorithm conf specified, going to use default
  warnings.warn("no algorithm conf specified, going to use default")
Traceback (most recent call last):
  File "/home/sunxd/DomainLab/main_out.py", line 8, in <module>
    exp = Exp(args=args)
  File "/home/sunxd/DomainLab/domainlab/compos/exp/exp_main.py", line 28, in __init__
    self.dataset_sanity_check(args, args.san_num)
  File "/home/sunxd/DomainLab/domainlab/compos/exp/exp_main.py", line 69, in dataset_sanity_check
    self.task.init_business(args)
  File "/home/sunxd/DomainLab/domainlab/tasks/task_folder_mk.py", line 57, in init_business
    super().init_business(args)
  File "/home/sunxd/DomainLab/domainlab/tasks/b_task.py", line 54, in init_business
    list_domain_tr, list_domain_te = self.get_list_domains_tr_te(args.tr_d, args.te_d)
  File "/home/sunxd/DomainLab/domainlab/tasks/a_task.py", line 156, in get_list_domains_tr_te
    list_domain_tr = parse_domain_id(tr_id, list_domains)
  File "/home/sunxd/DomainLab/domainlab/tasks/a_task.py", line 28, in parse_domain_id
    list_domains_subset.append(list_domains[int(ele)])
IndexError: list index out of range

does the example you offered work on your machine?

There was a mistake in the setup of the example. I fixed it, it should work now.

Each of the .jpg files includes a maximum of 8 images. Some of them contain less, thats the case if the whole dataset has less then 8 images.
Maybe I should set down --san_num to 2 as we don't have this case then where one dataset has less than 2 images

Thanks for the reply.
https://github.com/marrlab/DomainLab/tree/master/data/vlcs_mini/caltech/auto

The dataset contains more than 8 images?
there are only 2 classes being sampled?

from my side it seems ok

@Car-la-F , actually even i change the number
python main_out.py --te_d=caltech --task=mini_vlcs --debug --bs=2 --aname=diva --nname=alexnet --npath_dom=examples/nets/resnet.py --gamma_y=7e5 --gamma_d=1e5  --san_check --san_num=3
i only got 2 images per domain, and in fact there are 5 classes in each domain.
Please also see my comments above.

Thanks for the reply.
https://github.com/marrlab/DomainLab/tree/master/data/vlcs_mini/caltech/auto
1. The dataset contains more than 8 images?

2. there are only 2 classes being sampled?

According to:

yes that's true. I was too sloppy in my reply. I meant that some class-domain combination do have less than 8 images. For example for domain = sun and class = sofa/chair there are only 4 images. In this case the output will only contain these 4 images in sun/chair.jpg. For domain = sun and class = vehicle/car the dataset contains 9 images, hence in sun/car.jpg it will only show 8 of these 9 images.

In the description of the mini_vlcs task it is defined to only use two classes, chair and car. This classes should be represented in the output. Other classes are not represented.


Clarification on Parcelable Entities.

I encountered a problem when having interfaces that extends Parcelable and wanted to make sure if my implementation is correct.
I have two interfaces that look roughly like this:
@Entity public interface A extends Parcelable {
...
@JunctionTable @ManyToMany List<B> getBs();
...
}

@Entity public interface B extends Parcelable {
...
@ManyToMany List<A> getAs();
...
}

Whenever I add an item to A's List<B> and put A as an extra to pass it back to an Activity, when I retrieved the Parceled A the items inside List<B> are lost.
Does requery works with Parcelable out-of-the-box or do I have to implement it myself?
Hope my explanation isn't too confusing!

Hi please see this answer https://github.com/requery/requery/issues/123#issuecomment-216443484 basically you should be using unique ids for passing entities between activities in your own process. The parceling functionality is mean't only for serializing a row of data outside of your application.

Thanks for the quick response!

Another question appeared.
So, I did what you suggested, instead of parceling my object I just passed it's ID and loaded it.
But now I need to pass just the ManyToMany List and I am getting the following error:

java.lang.ClassCastException: io.requery.util.ObservableList cannot be cast to java.util.ArrayList
Any suggestion for this case?

You should pass the id of the entity contain the relation, or if you really need an ArrayList copy the list contents into a new ArrayList


Built-in State Management Proposal

Assumptions

Vanilla state management is difficult in vella because S isn't intuitive.
Vella benefits from granular stream updates
Due to 2. single state objects compromise Vella's performance value proposition
Any state management approach we use must be optimized for 2.

Solutions

We should borrow from some of my research on queries+streams.
We can heavily simplify the API for the specific use case of state management within vella.
Query+Streams uses proxy property access so it should feel more "native", and it can be typescript compatible in a similar way to monolite

Examples
// v.boot will provide access to a state query stream
v.boot(document.body, ({ state }) => {

  // you can read the state by invoking it:
  console.log( state() )

  // you can write to the state by invoking it with a parameter
  state( newState )

  // you can transform the state by passing in a transform function
  state( prevState => f(prevState) )

  // you can access sub properties of the state with normal property access
  const firstUser = state.users[0]

  // `firstUser` has the exact same api as `state`
  console.log( firstUser() )
  firstUser( newUser )
  firstUser( prevUser => f(prevUser )

  // Both `state` and `firstUser` are S streams that vella natively understands
  // But `firstUser` only "emits" when its value changes

  // this will only re-render when firstUser.name changes value.
  return v('p', 'Hello', firstUser.name)

})

If state wasn't already provided as an attribute, every component will receive state as an attr.  The default reference will be the state the parent component received.
function MyComponent({ state }){
  // And state can be rebound to a subtree
  // as easily as aliasing it in the attrs
  return v(OtherComponent, { state: state.subsection })
}

state instances will have a few methods for relational queries.

map for mapping over lists
find for selecting an item in a list
delete for removing an item from a list

These methods are different from attain queries, where operations focus on the query not the underlying value.  But vella doesn't need to be so puritanical because it has a specific use case in mind - so it can optimize the api to feel more like working with native JS structures.
An example of .find
// bad - points to a specified index which is brittle
const user = state.users[0]

// good - a dynamic query which focuses
// on a specific identity relationship - which is resilient
const user = state.users.find( user => user.id == id() )

And .delete()
const user = state.users.find( user => user.id == id() )

// remove from list/object where user.id == id()
user.delete()

A simple counter example (excuse any typos):
v.boot( document.body, ({ state }) => {
  // initialize the state
  state({
    counters: []
  })

  // mount Counters without passing down state
  return v(Counters)
})

// Counters receives the root state as an attr
// automatically
function Counters({ state }){

  return v('.counters'
    , v('button'
      ,
      // create a counter on click
      { onclick: () => state.counters( xs => xs.concat( { id: uuid(), count: 0 }) )
      }
      , 'Add Counter'
    )
    // map over the counters (.map here produces a Stream<UUID[]> )
    , v.list( () => state.counters.map( x => x.id ),  id =>
      // create a query on the fly for each component
      v(Counter, { state: state.counters.find( x => x.id == id ) })
    )
  )
}

// state is focused on the counter query
function Counter({ state }){

  return v('counter'
    // because of transform functions
    // we don't have that awkward count( count() + 1 )
    // and therefore we can take advantage of most utility toolbelts
    , v('button', { onclick: () => state.count( x => x + 1 ), '+' }
    , v('button', { onclick: () => state.count( x => x - 1 ), '-' }

    // Only mutates the dom when
    // `state.users.find( x => x.id == id ).count` changes
    , v('p.count', 'Count', state.count )

    , v( Delete )
  )
}

// receives the counter as a state query
// even that no attr was specifically passed down
function Delete({ state }){
  // Remove the counter from the list
  return v('button', { onclick: () => state.delete(), 'Delete' }
}

@JAForbes this seems like a tremendously great approach; almost too good to be true! I'd love to have it in an alpha branch sooner than later. I'm curious what the accompanying persistence idioms would/should look like.

Yeah seems like there's a bit of support (even @barneycarroll has come around to it 😂).  I'll try and find the time to implement a prototype if there's no objections.


Module decomposition

Addresses the core repo decomposition described in #1195
Some structural changes to support this:

codegen sbt project has been renamed guardrail
xyzSample projects have been renamed sample-xyz

The following projects exist:
[info]     guardrail
[info]     guardrail-core
[info]     guardrail-java-async-http
[info]     guardrail-java-dropwizard
[info]     guardrail-java-spring-boot
[info]     guardrail-java-support
[info]     guardrail-scala-akka-http
[info]     guardrail-scala-dropwizard
[info]     guardrail-scala-endpoints
[info]     guardrail-scala-http4s
[info]     guardrail-scala-support

all of which are both depended on by the guardrail project.
I believe this can be released as-is, as a minor version bump, as the majority of the packages haven't changed (except for moving some members out of SwaggerUtil.
There are three files left in the main guardrail project:
  > modules/codegen/src/main/scala/dev/guardrail/generators/ScalaModule.scala
  > modules/codegen/src/main/scala/dev/guardrail/generators/JavaModule.scala
  > modules/codegen/src/main/scala/dev/guardrail/CLI.scala

ScalaModule and JavaModule both knit together all the various different modules and provide the infrastructure required to select what frameworks/modules you want to the build tooling
CLI is the main CLI runner

Moving the branch to the main repo so github workflows can be tested

Revisiting package structure, given this split:
devonS:guardrail ((14978e33...)) dstewart$ for project in  modules/{scala,java}-* modules/codegen/; do echo "$project"; git ls-files "$project/src/main/scala" | while read file; do echo $(grep '^package ' "$file" | sed 's/^package //') | sed 's/ /./'; done | sort | uniq -c | sort -rn; done
modules/scala-akka-http
      6 dev.guardrail.generators.Scala
modules/scala-dropwizard
      4 dev.guardrail.generators.Scala
modules/scala-endpoints
      4 dev.guardrail.generators.Scala
modules/scala-http4s
      4 dev.guardrail.generators.Scala
modules/scala-support
      3 dev.guardrail.generators.Scala
      1 dev.guardrail.languages
      1 dev.guardrail.generators.syntax
      1 dev.guardrail.generators.collections
      1 dev.guardrail.generators.Scala.model
      1 dev.guardrail.generators
modules/java-async-http
      2 dev.guardrail.generators.Java
modules/java-dropwizard
      3 dev.guardrail.generators.Java
modules/java-spring-mvc
      4 dev.guardrail.generators.Java
modules/java-support
      3 dev.guardrail.terms.collections
      2 dev.guardrail.generators.helpers
      2 dev.guardrail.generators.collections
      2 dev.guardrail.generators.Java
      1 dev.guardrail.languages
      1 dev.guardrail.generators.syntax
      1 dev.guardrail.generators
modules/codegen/
      2 dev.guardrail.generators
      1 dev.guardrail

Initial decomposition complete, mainly to unblock #1200.
Follow-up work will involve shuffling package hierarchy to better reflect which modules have which files, but one of the benefits of leaving this as it is right now is that the main guardrail_... artifact still depends on all subprojects, so the majority of references are unchanged.


Integrate AutoRound v0.4 [3x]

Type of Change
feature or bug fix or documentation or validation or others
API changed or not
Description

quant_block_list -> to_quant_block_names
MLLM API

opt-125m
hf (), gen_kwargs: (None), limit: None, num_fewshot: None, batch_size: 8

Tasks
Version
Filter
n-shot
Metric

Value

Stderr

lambada_openai
1
none
0
acc
↑
0.3707
±
0.0067

none
0
perplexity
↓
27.7836
±
1.0242

Accuracy: 0.37066
Batch size = 8
Expected Behavior & Potential Risk
the expected behavior that triggered by this PR
How has this PR been tested?
how to reproduce the test (including hardware information)
Dependency Change?
any library dependency introduced or removed

@Kaihui-intel Please avoid mixing code for 2.x and 3.x in a single PR.

@Kaihui-intel Please trigger some extension tests as well.

@Kaihui-intel Please trigger some extension tests as well.

Update the test data in the description. A separate PR will be raised for the MLLM examples (structure and extension tests).

@XuehaoSun baseline failed as trl-internal-testing/tiny-random-OPTForCausalLM 404 not found.
In this PR, we are using trl-internal-testing/tiny-OPTForCausalLM as a replacement.


[docs] Fix missing href for AppDrawerNavItems

The nav items didn't include the common affordances for links (e.g. open new tab, copy link adress etc).
Before: https://6124b8cbdf676e0008cc3e43--material-ui.netlify.app/components/box/
After: https://deploy-preview-27936--material-ui.netlify.app/components/box/
Bisecting lead to 49f21f82bec4a6bb5bec8248c044374bc58f3d5a which makes sense since the child element of next/link no longer had the a type and therefore needed an explicit passHref.
It's unclear why passHref was a supported prop. It wouldn't be useful since the child type is controlled by the implementation not its usage. But we may have destructured it in NextLinkComposed because its callsites didn't properly filter passHref. This is a responsibility of the callsite of NextLinkComposed. Good think is that passHref leaking to an a would trigger React warnings so we'll see if this is/was ever an issue.

Two thoughts:

@siriwatknp Do we really need const Anchor = styled('a')({ cursor: 'pointer' });? First, this cursor pointer is suspicious. Aren't the user agents already adding it for valid links? Second, the responsibility of the NextLinkComposed is to implement the navigation, not the styles, adding styled() for the sx prop seems to leak the intended abstraction, I think that it should only be in Link.
If the concerns in 1. are not valid, should we update the /examples too with this revisited implementation of the Next.js' Link component? e.g. for next-typecript. So far we have used the docs to dog food this component and shared it with the community as a code snippet.
It also makes me think about https://twitter.com/SquishyDough/status/1390326410972176391, getting this Link component right might be tricky for the community.


Vaultvisor: Vault Auto-Updater

Vaultvisor
Implements https://github.com/interlay/interbtc-clients/issues/310. Auto-updater software for the vault client. On crash or termination, it restarts the vault to remove the need for running as systemd.
On startup, the release version is read from the ClientRelease storage value inside the VaultRegistry pallet. This is done using jsonrpsee to avoid maintaining metadata for subxt. As long as the storage key of the Client Release remains the same, the auto-updater will work.
Testing is done manually at the moment (check vaultvisor/README.md) because integration tests require the chain metadata of the new feature to be added to the clients.
TODO in future PRs:

[ ] integration tests
[ ] actually download new versions
[ ] switch to a JSON format for the config file

Marked the PR as draft because it lacks tests, but happy to merge this WIP if you think it's fine.


Restricted parameters

Hi
I want to do inference in a Normal Inverse Gaussian distribution, where the β parameter is restricted by the α parameter (abs(β) < α).
I have made the following model that resembles the rand method for the distribution:
using Turing

@model function nig(x)
    μ ~ Normal(0, 1)
    α ~ Exponential(1)
    δ ~ Exponential(1)

    β_limit = 0.99 * α
    β ~ TruncatedNormal(0, 1, -β_limit, β_limit)
    β = clamp(β, -β_limit, β_limit)
    γ = sqrt(α^2 - β^2)

    N = length(x)
    z ~ filldist(InverseGaussian(δ/γ, δ^2), N)
    x ~ arraydist([Normal(μ + β * z[i], sqrt(z[i])) for i in 1:N])
end

I sample with the following code.
μ = 0; α = 0.5; β = 0.0; δ = 1;
X = Distributions.NormalInverseGaussian(μ, α, β, δ)
data = rand(X, 1_000);

model = nig(data)
chain = Turing.sample(model, NUTS(), 1_000)

My problem is that all the sampled values of β are identical. How should I enforce the restriction?
I also get lots of rejected samples, but decreasing the factor 0.99 alleviates this. Without clamp'ing β_limit, I get samples where  β > α regardless of the value of β_limit.
With a fixed value of β everything works (e.g. by deleting β altogether).
P.s.: Sorry for cross-posting. Hoping for more luck here :-)

Turing does not support distributions whose support is random, see eg https://github.com/TuringLang/Turing.jl/issues/1270 and https://github.com/TuringLang/Turing.jl/issues/1558.
A workaround is to define a custom distribution and bijector as described in https://github.com/TuringLang/Turing.jl/issues/1270 and https://github.com/TuringLang/Turing.jl/issues/1558.

Thank you for the swift reply and links! I'll have a look.

E.g., you could use:
using Turing

using LinearAlgebra
using Random

struct CustomDist <: ContinuousMultivariateDistribution end

function Base.rand(rng::Random.AbstractRNG, ::CustomDist)
    α = rand(rng, Exponential(1))
    β = rand(rng, truncated(Normal(), -α, α))
    return [α, β]
end

function Distributions.logpdf(::CustomDist, x::AbstractVector{<:Real})
    α, β = x
    return logpdf(Exponential(1), α) + logpdf(truncated(Normal(), -α, α), β)
end

function Bijectors.bijector(::CustomDist)
    # define bijector that transforms β based on the value of α
    mask = Bijectors.PartitionMask(2, [2], [1]) # 2 elements in vector, 2nd entry transformed based on 1st
    β_bijector = Bijectors.Coupling(mask) do α
        return Bijectors.TruncatedBijector(-α, α)
    end

    # bijector that transforms α and does not transform β
    α_bijector = stack(Bijectors.Log{0}(), Identity{0}())

    return α_bijector ∘ β_bijector
end

@model function nig(x)
    μ ~ Normal()
    αβ ~ CustomDist()
    δ ~ Exponential(1)
    α, β = αβ
    x ~ filldist(NormalInverseGaussian(μ, α, β, δ), length(x))
end

μ = 0
α = 0.5
β = 0.0
δ = 1

Random.seed!(1234)
data = rand(NormalInverseGaussian(μ, α, β, δ), 1_000)

chain = sample(nig(data), NUTS(), 1_000)

With this seed I get (Julia 1.6.2)
julia> chain
Chains MCMC chain (1000×16×1 Array{Float64, 3}):

Iterations        = 501:1:1500
Number of chains  = 1
Samples per chain = 1000
Wall duration     = 21.66 seconds
Compute duration  = 21.66 seconds
parameters        = μ, αβ[1], αβ[2], δ
internals         = lp, n_steps, is_accept, acceptance_rate, log_density, hamiltonian_energy, hamiltonian_energy_error, max_hamiltonian_energy_error, tree_depth, numerical_error, step_size, nom_step_size

Summary Statistics
  parameters      mean       std   naive_se      mcse        ess      rhat   ess_per_sec
      Symbol   Float64   Float64    Float64   Float64    Float64   Float64       Float64

           μ   -0.0552    0.0494     0.0016    0.0024   455.8494    1.0016       21.0408
       αβ[1]    0.5009    0.0674     0.0021    0.0032   537.8974    0.9990       24.8279
       αβ[2]    0.0481    0.0344     0.0011    0.0015   458.4887    1.0023       21.1626
           δ    0.9715    0.0758     0.0024    0.0037   497.3237    1.0006       22.9552

Quantiles
  parameters      2.5%     25.0%     50.0%     75.0%     97.5%
      Symbol   Float64   Float64   Float64   Float64   Float64

           μ   -0.1581   -0.0879   -0.0529   -0.0207    0.0352
       αβ[1]    0.3797    0.4529    0.4944    0.5439    0.6393
       αβ[2]   -0.0110    0.0233    0.0455    0.0695    0.1211
           δ    0.8392    0.9167    0.9649    1.0200    1.1368

Thanks a lot, it works like a charm :-)

I have one more question :-)
In some cases sampling directly from the NIG distribution gives numerical errors due to the Bessel function in its pdf:

AmosException with id 4: input argument magnitude too large, complete loss of accuracy by argument reduction.

That is the reason why I tried to sample in two steps:
N = length(x)
z ~ filldist(InverseGaussian(δ/γ, δ^2), N)
x ~ arraydist([Normal(μ + β * z[i], sqrt(z[i])) for i in 1:N])

While the suggested approach
x ~ filldist(NormalInverseGaussian(μ, α, β, δ), length(x))

runs in ~ 20 seconds, my current ETA for two-step approach above is 12 hours on the same machine.
In my current usecase the latent z is not of interest. Can I ignore the z in the inference? Perhaps sampling from another custom dist that generates z, but only returns x?

In some cases sampling directly from the NIG distribution gives numerical errors due to the Bessel function in its pdf:

It seems this error is thrown in the evaluation of besselk(1, r) if r = α * sqrt(δ^2 + (x - μ)^2) becomes too large (in https://github.com/JuliaStats/Distributions.jl/blob/ed52948fb47e7e0aecaf81e99ebb090c2738cf0e/src/univariate/continuous/normalinversegaussian.jl#L61 and https://github.com/JuliaStats/Distributions.jl/blob/ed52948fb47e7e0aecaf81e99ebb090c2738cf0e/src/univariate/continuous/normalinversegaussian.jl#L56). A more detailed description of the underlying FORTRAN algorithm for besselk can be found here: https://github.com/JuliaMath/openspecfun/blob/74f7e65abc76de7c4c72b1c77b31f3846565c498/amos/zbesk.f#L92-L110
You could include a check for the magnitude of r and "discard" samples if it is too large, e.g.:
@model function nig(x)
    μ ~ Normal()
    αβ ~ CustomDist()
    δ ~ Exponential(1)
    α, β = αβ

    # https://github.com/TuringLang/Turing.jl/issues/1708#issuecomment-922349522
    r = α * hypot(δ, maximum(x -> abs(x - μ), x))
    if r > 1e9
        Turing.@addlogprob! -Inf
        return
    end

    x ~ filldist(NormalInverseGaussian(μ, α, β, δ), length(x))
    return
end

The problem with the two-step approach is that you don't marginalize out z: to evaluate the log pdf of a specific x you have to marginalize over the log joint density of x and z or you have to include (and save) z already in your sampling procedure and compute the log pdf of x conditional on z. So if you want to avoid the Bessel function you have to include z in your model as a proper additional random variable, but of course this will slow down sampling and convergence. I am surprised though that it becomes so much slower, maybe there are some underlying problems here eg regarding type stability? Maybe the broadcasting alternative is faster here,
z ~ filldist(InverseGaussian(δ/γ, δ^2), N)
x .~ Normal.(μ .+ β .* z, sqrt.(z))

or directly using an MvNormal (arraydist should return one anyway but the computation of the mean and covariance matrix should be faster):
z ~ filldist(InverseGaussian(δ/γ, δ^2), N)
x ~ MvNormal(μ .+ β .* z, Diagonal(z))

BTW, of course Distributions uses this two step algorithm for sampling from NormalInverseGaussian: https://github.com/JuliaStats/Distributions.jl/blob/ed52948fb47e7e0aecaf81e99ebb090c2738cf0e/src/univariate/continuous/normalinversegaussian.jl#L75-L82.

Thanks for your suggestions -- they are very thorough!


Handling relative paths better

Currently, code inserted into the document assumes that figures directory exists in the cwd. This may not work when working with files in subdirectories.
This was first reported here.

@anandkumar89 just so I understand exactly the use case, can you provide a detailed set up of what the issue is with relative paths?
You have something like this:
├── chapters
│   ├── chapter1.tex
│   └── chapter2.tex
└── main.tex

You are now editting chapter1.tex while your cwd is chapters and you want the figures dir to be created in root directory or chapters?

I just pushed some improvements to how the plugin works to handle better cases like this.
I created a few examples to explain how it works here.
If you can, please update the plugin, have a read to the examples and let me know if this now handles your case.

Yes this a challenging case to handle because it's not clear where the root dir is. However, if you manually create a figures dir inside those project directories it should work.

@anandkumar89  thank you for this! This is now implemented: https://github.com/rpapallas/illustrate.nvim/commit/fabfd498ddc351d3129c9a8f10da24ce5c16badd
Please let me know if this now works as expected.

Hey; I looked at your patch here. It seems you want to use the root path. That is available as vim.b.vimtex.root, so you don't need to fnamemodify it yourself.

Thank you, @lervag. I will make use of the suggested variable. Great work with vimtex, by the way; I use it all the time 🙂.

Thanks for the kind words! :)


Work section requirements

A work section
  - A section displaying your work in grid.

    - If you need to use placeholder image use: https://placehold.co/

  - Use bootstrap cards for each project.

    - The description should give a brief overview of the work.

  - Each project will eventually link to your class project work!

done closing


Payment Observer Refactoring

Closes #589

PR Checklist
PR Structure

[ ] This PR has reasonably narrow scope (if not, break it down into smaller PRs).
[ ] This PR avoids mixing refactoring changes with feature changes (split into two PRs
otherwise).
[ ] This PR's title starts with name of package that is most changed in the PR, ex.
paymentservice.stellar, or all or doc if the changes are broad or impact many
packages.

Thoroughness

[ ] This PR adds tests for the most critical parts of the new functionality or fixes.

What

Define the new schema for stellar payment observer
StellarPaymentObserver is now configurable.
Remove Circle implementations

Why
N/A
Known limitations
N/A

Reference Server Preview is available here:https://anchor-ref-pr644.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr644.previews.kube001.services.stellar-ops.com/

Something went wrong with PR preview build please check

Something went wrong with PR preview build please check

Reference Server Preview is available here:https://anchor-ref-pr644.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr644.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr644.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr644.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr644.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr644.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr644.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr644.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr644.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr644.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr644.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr644.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr644.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr644.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr644.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr644.previews.kube001.services.stellar-ops.com/

Something went wrong with PR preview build please check

Reference Server Preview is available here:https://anchor-ref-pr644.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr644.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr644.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr644.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr644.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr644.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr644.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr644.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr644.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr644.previews.kube001.services.stellar-ops.com/


Cannot change time constraints

Hi.
It seems that changes to timeContraints property are not consumed by the TimeView after initial mount.
If this is intentional I will accept yet my scenario does require that the timeContraints may vary depending on which day is selected.

Hi @skindc. This is intentional though not wanted behavior. We're planning on fixing this and other props in version 3. If you feel like you can't wait you are welcome to publish a PR. Thanks.

Hey, what is the state of the v3 release, or of any update? What is a recommended workaround?


added deployment on triton example

Description
Added a simple example of optimizing with Torch TRT and deploying using Triton. Would recommend adding this to docs
Fixes # (issue)
Type of change
--examples
Checklist:

[ ] My code follows the style guidelines of this project (You can use the linters)
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas and hacks

Why not put together an rst file to add to the tutorial section? seems like the code sections are short enough where you can have everything inline.
This seems like a good reference https://pytorch.org/tutorials/intermediate/flask_rest_api_tutorial.html


Update-Help Failing to Update on Windows 11 PowerShell version 7.3.1

Prerequisites

[X] Write a descriptive title.
[X] Make sure you are able to repro it on the latest released version
[X] Search the existing issues.
[X] Refer to the FAQ.
[X] Refer to Differences between Windows PowerShell 5.1 and PowerShell.

Steps to reproduce
When I am running the Update Help command I am returned error: Update-Help: Failed to update Help for the module(s) 'ConfigDefenderPerformance, DefenderPerformance, Dism, Get-NetView, Kds, NetQos, PcsvDevice, Pester, PKI, Whea, WindowsUpdate' with UI culture(s) {en-US} : One or more errors occurred. (Response status code does not indicate success: 404 (The specified blob does not exist.).).
English-US help content is available and can be installed using: Update-Help -UICulture en-US.
When running the suggest command above it returns the same error
Expected behavior
Updated information for Get-Help modules

Actual behavior
Update-Help: Failed to update Help for the module(s) 'ConfigDefenderPerformance, DefenderPerformance, Dism, Get-NetView, Kds, NetQos, PcsvDevice, Pester, PKI, Whea, WindowsUpdate' with UI culture(s) {en-US} : One or more errors occurred. (Response status code does not indicate success: 404 (The specified blob does not exist.).).
English-US help content is available and can be installed using: Update-Help -UICulture en-US.

Error details
Exception             :
    Type    : System.Exception
    Message : Failed to update Help for the module(s) 'ConfigDefenderPerformance, DefenderPerformance, Dism, Get-NetView, Kds,
NetQos, PcsvDevice, Pester, PKI, Whea, WindowsUpdate' with UI culture(s) {en-US} : One or more errors occurred. (Response status
code does not indicate success: 404 (The specified blob does not exist.).).
              English-US help content is available and can be installed using: Update-Help -UICulture en-US.
    HResult : -2146233088
CategoryInfo          : InvalidOperation: (:) [Update-Help], Exception
FullyQualifiedErrorId : UnknownErrorId,Microsoft.PowerShell.Commands.UpdateHelpCommand
InvocationInfo        :
    MyCommand        : Update-Help
    ScriptLineNumber : 1
    OffsetInLine     : 1
    HistoryId        : 3
    Line             : update-help -force
    PositionMessage  : At line:1 char:1
                       + update-help -force
                       + ~~~~~~~~~~~~~~~~~~
    InvocationName   : update-help
    CommandOrigin    : Internal
ScriptStackTrace      : at <ScriptBlock>, <No file>: line 1
PipelineIterationInfo :

Environment data
Name                           Value
----                           -----
PSVersion                      7.3.1
PSEdition                      Core
GitCommitId                    7.3.1
OS                             Microsoft Windows 10.0.22621
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

Visuals

All the modules listed are part of Windows and not PowerShell itself so the issue that the help content isn't being found seems to be a dupe of https://github.com/PowerShell/PowerShell/issues/13591.  However, the part about en-us help being available is clearly wrong and we should update that part of the error message (probably just remove it) is a dupe of https://github.com/PowerShell/PowerShell/issues/13591


replacing values to represent TAS

Based on changes to Keycloak we need to modify the test

/retest

/retest