[SPARK-18337] Complete mode memory sinks should be able to recover from checkpoints

What changes were proposed in this pull request?
It would be nice if memory sinks can also recover from checkpoints. For correctness reasons, the only time we should support it is in Complete OutputMode. We can support this in CompleteMode, because the output of the StateStore is already persisted in the checkpoint directory.
How was this patch tested?
Unit test

Test build #68305 has started for PR 15801 at commit c109733.

Test build #68305 has finished for PR 15801 at commit c109733.

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

Merged build finished. Test PASSed.

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

@tdas Added test for the data as well

Test build #68422 has started for PR 15801 at commit 0215ec7.

Test build #68422 has finished for PR 15801 at commit 0215ec7.

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

Merged build finished. Test PASSed.

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

@tdas  Addressed your comments. Test time increased to 2.5 seconds though, fyi.

Test build #68527 has started for PR 15801 at commit 52ea3f1.

Test build #68527 has finished for PR 15801 at commit 52ea3f1.

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

Merged build finished. Test PASSed.

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

LGTM. Merging this to master and 2.1

and 2.0 as well. seems like small enough fix.


Fixed a typo in README.md

Summary
Small typo fix.

Release Note

None

I think you should sign your commit to be able to pass DCO check 🙋🏻♂


Fix bug in Time Series dashboard

There's no bug. I had made a mistake in setting the path for the data


Navigation Pane Dropdown (Like in original file explorer)

Is your feature request related to a problem? Please describe.
Not really, just something I miss from original WE(Windows Explorer)
Describe the solution you'd like
In WE, there is a dropdown menu from 'This PC', 'OneDrive', etc. I would like that in Files.
Describe alternatives you've considered
I don't know any alternitaves
Additional context
Add any other context or screenshots about the feature request here. Ex: What device type/UI layout and app version?
here is a screenshot:

Making headers collapsible is part of #692

Yup but even #692 does not cover a full tree view in the sidebar (where you can expand e.g the C:\ drive to any folder depth).
Not quite sure if it would be ok to show a full tree view in the sidebar.. perhaps we could implement a tree view layout instead (#1928)

We don't have any plans for a full tree view in the sidebar, but we do have plans for a tree view layout. Make sure to check #1928.


Data-size: auto calculates wrong sizes on Edge

Hi,
When browsing the following page https://getpublii.com/themes/demo/mercury/isotope/ on Edge browser you can notice that all the pictures have similar size and look like a grid. On the FF or Chrome, pictures have the right size and the layout looks like masonry.
image markup:
<img data-sizes="auto"
     src="{{urlXs}}"
     srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="
     data-srcset="{{srcset.cards}}"
     width="{{width}}"
     height="{{height}}"
     alt="{{alt}}"
     class="lazyload blur-up">

The example picture on the Chrome has a right size: 362px but on the Edge: 314px
Tested on the new Edge version that already supports object-fit.
I will be very grateful for any help.

@RobertGavick
I can not really reproduce your error and I suspect, that your expectations are wrong.
The calculated sizes attribute depends on the layout width of your image and is calculated correctly in Chrome as on Edge. (It is only different because the window width was bigger in Chrome in your case.)
See the attached screenshot. There you see, that the layout width of your image is 433.5 pixel and the calculated width is correctly 434px pixel.

About object-fit. As soon as you don't use the value fill you must add a width and a height attribute other than auto. Which means in your case the object-fit: cover has no effect.

However as soon as you are using object-fit (with height and width CSS properties) the situation becomes a little bit more complicated, because the browser might show a clipped section of your image.
To get lazysizes to calculate this correctly. You have to do the following things:

Add the parent-fit plugin
Add either the aspect-ratio via data-aspectratio attribute.


Fix eMail address regex

These commits address a few shortcomings of the current eMail address regular expression used for form validation:

‘.’ may not begin or end a local-part (SMTP RFC)
limit host part total length to 255, label length to 63 (DNS RFC)
case-sensitive comparison (speed optimisation and reliability)

I signed it!
(although this diff does not pass threshold of originality, and as such is not covered by copyright protection)

@mirabilos CLA is required for all Google projects, unfortunately. I wouldn't require it personally.
Can you include links to the docs on which these changes are based?
And we also need tests for these changes in this file: https://github.com/angular/angular.js/blob/master/test/ng/directive/inputSpec.js#L2784

Martin Staffa dixit:

@mirabilos CLA is required for all Google projects, unfortunately. I
wouldn't require it personally.

Yeswell, I did sign it, and today I even went and made sure
the eMail address I used in the commits was registered, so
go on ;)

Can you include links to the docs on which these changes are based?

RFC 822/5321 (SMTP) and RFC 1035 (DNS) are linked from the
individual commit messages, shouldn’t that suffice?

And we also need tests for these changes in this file:
https://github.com/angular/angular.js/blob/master/test/ng/directive/inputSpec.js#L2784

When I read that I thought “oh nooooo…” at first, but that
looks reasonable. I’ll see I can throw some together that
cover eMail addresses in more depth.
Is adding them in a subsequent commit okay with you? I don’t
much like destroying the actual history by rebasing too much.
Thanks,
//mirabilos
tarent solutions GmbH
Rochusstraße 2-4, D-53123 Bonn • http://www.tarent.de/
Tel: +49 228 54881-393 • Fax: +49 228 54881-235
HRB 5168 (AG Bonn) • USt-ID (VAT): DE122264941
Geschäftsführer: Dr. Stefan Barth, Kai Ebenrett, Boris Esser, Alexander Steeg

@Narretz tests included, let’s wait for Travis and hope I didn’t add a typo somewhere by accident…

@Narretz haha “line is too long”, any idea how I can address this test?
Inhouse we always exclude checks such as this one from being run on the testsuite, only on the main code.
In this special case, the line is legitimately very long as it tests a very long string… which, I suppose, I could concatenate, but… any suggestions? It’s your project after all.

LGTM (assuming the tests are green). Now, the big question: Is it a BC ?

@gkalpak still waiting for the tests, I tried to get around the line length issue by concatenating, and had a pasto in them indeed (something I tested from the command-line but mispasted).
Now, the big question: what is a “BC”?

I just recherched the maximum length of a local-part, and it’s 64 (RFC 5321 §<IP_ADDRESS>.1) so I’ll add another change to limit (and check!) that, but I’ll wait for this set of tests to pass first.

BC means Breaking Change, i.e. if the change will break something that worked before in someone's application. Since this tightens it in terms of the spec, I think it's not BC.
BTW, we are going to squash the commits into one before merging (but preserve the commit message contents)

Lol, sorry for the acrnym. So, "BC" is a breaking change.
Regarding, RFC 5321 §<IP_ADDRESS>.1, it sounds more like a recommendation than a hard limit:
Every implementation MUST be able to receive objects of at least
these sizes.  Objects larger than these sizes SHOULD be avoided when
possible.  However, some Internet mail constructs such as encoded
X.400 addresses (RFC 2156 [35]) will often require larger objects.
It might be better to leave local-part unrestricted.

No need to be sorry about the acronyms – I actually do collect them.
I’d prefer to have the commits not squashed, as they contain detail relevant for each partial change, but… I guess it’s your project.
This is not a breaking change because ① it only invalidates some eMail addresses previously passing as valid which are not valid in SMTP, and ② your own documentation – https://docs.angularjs.org/api/ng/input/input[email] – suggests users with specific requirements to use their own checks anyway.
I’d not let things unrestricted because the regex used is a “reasonably sane default” for eMail addresses, which omits, for example, all obsolete forms, the quoted localpart form, and the literal addresses like<EMAIL_ADDRESS>and user@[IPv6:::1] from the set of valid addresses. In short, it’s a regex for accepting “what users are most likely to use as internet-reachable eMail address on a website signup form”. Site-local use, e.g. non-SMTP MTAs (Exchange, Lotus, X.400 or something) have specific rules, but I think they’re outside the scope of this. As the Perl people say: 「How to validate a user supplied email address is a FAQ (see perlfaq9): the only sure way to see if a supplied email address is genuine is to send an email to it and see if the user recieves it.」
In case you’re curious: there’s actually an eMail address validating exactly what the RFC says, but it’s so large it doesn’t even fit on my (laptop) screen. I can dig it out if needed.
I think the use case for this expression is to catch common typos and mistakes.

I’d prefer to have the commits not squashed, as they contain detail relevant for each partial change

We prefer to squash the commit when merging (so our history is cleaner on a higher level), but keep the unsquashed commits on the PR, which we link to from the squashed commit message. So, all the context is preserved and is easy to get to from the final commit.
--

I’d not let things unrestricted because the regex used is a “reasonably sane default” for eMail addresses, which omits, for example, all obsolete forms, the quoted localpart form, and the literal addresses like<EMAIL_ADDRESS>and user@[IPv6:::1] from the set of valid addresses.

Point taken :smiley:

OK.
Oh great, now we have a line length issue in the regex, out of all places. I’ll try to wrap this.
(On the topic of acronyms, if you have any that http://www.mirbsd.org/wtf.htm or https://f-droid.org/repository/browse/?fdid=de.naturalnet.mirwtfapp doesn’t know, send them to me privately.)

Don't wrap it. Use
/* jshint maxlen:250 */
// regex line
/* jshint maxlen:200 */

Thanks, that indeed worked. I think we’re ready for review then.


update Linux mappings

Description
update Linux mappings
Issues Resolved
update Linux mappings
Check List

[ ] New functionality includes testing.

[ ] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[ ] Commits are signed per the DCO using --signoff

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

Codecov Report

Merging #223 (a25bd3b) into main (d224c17) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head a25bd3b differs from pull request most recent head 42701a4. Consider uploading reports for the commit 42701a4 to get more accurate results

@@            Coverage Diff            @@
##               main     #223   +/-   ##
=========================================
  Coverage     38.97%   38.97%
  Complexity      892      892
=========================================
  Files           176      176
  Lines          6746     6746
  Branches        823      823
=========================================
  Hits           2629     2629
  Misses         3876     3876
  Partials        241      241

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


⚠ GreatPosterWall has degraded performance

In 885b6d0, GreatPosterWall ($GPW) experienced degraded performance:

HTTP code: 200
Response time: 6032 ms

Resolved: GreatPosterWall performance has improved in 123da0c after 9 minutes.


Added method select(spec)

Added new method select(spec) to Array.prototype
Added the unit test
Added the documentation

Closes #4

LGTM 👍


Invalid negate matching

glob("./**/*!(.dyn).css", function(err, res) { console.log(err, res) });

returns files with .dyn.css extension.

I think that negation has been fully deprecated.  Use the ignore option instead.

@thirdcreed Only the "negate the whole pattern by prefixing with a !" has been deprecated.  This kind of negation should still work.
@dangreen what does your file tree look like?  What gets returned?

As far as I can tell, this is behaving exactly like bash 4.3
[gh:node-glob/master]isaacs@urdva:~/dev/js/glob/a<EMAIL_ADDRESS>$ tree
.
├── b/
│   ├── c/
│   │   ├── bar.dyn.css
│   │   └── foo.css
│   ├── bar.dyn.css
│   └── foo.css
├── bar.dyn.css
└── foo.css

2 directories, 6 files

[gh:node-glob/master]isaacs@urdva:~/dev/js/glob/a<EMAIL_ADDRESS>$ for i in ./**/*!(.dyn).css ; do echo $i; done
./b/bar.dyn.css
./b/c/bar.dyn.css
./b/c/foo.css
./b/foo.css
./bar.dyn.css
./foo.css

[gh:node-glob/master]isaacs@urdva:~/dev/js/glob/a<EMAIL_ADDRESS>$ node -p 'require("../").sync("./**/*!(.dyn).css")'
[ './b/bar.dyn.css',
  './b/c/bar.dyn.css',
  './b/c/foo.css',
  './b/foo.css',
  './bar.dyn.css',
  './foo.css' ]

What's happening here is that if you have a file like foo.dyn.css, then the * matches fo, and then o.dyn is not equal to .dyn, and then the .css matches .css.

If you do use an ignore pattern like @thirdcreed suggests, then it works as you probably want:
$ node -p 'require("../").sync("./**/*.css",{ignore:"./**/*.dyn.css"})'
[ './b/c/foo.css', './b/foo.css', './foo.css' ]


Rebase surelog branch to new ESR mainline.

This PR is just for easier comparison and review between mainline branch and surelog_esr_kr one. After approve, commits should be squashed and it should be pushed directly upstream.

Superseded by #7


VPN test routes only allowed in DEBUG builds

Task/Issue URL: https://app.asana.com/0/488551667048375/1203098895207076/f
Description
VPN test routes only allowed in debug builds
Steps to test this PR
NA. Just code review

Current dependencies on/for this PR:

develop

PR #2353   👈

This comment was auto-generated by Graphite.

LGTM! Eventually we want to run performance tests (with the route change) on release builds, but for now this is a good safeguard.


DevDependencies

How to install devDependencies.
What is the difference between dependencies and devDependencies. Which are packages are used while deploying

this question should be asked on stackoverflow since it is a straight npm/yarn question. But for a kick start, here you go
for npm its npm install your-package-name --save-dev
for yarn its yarn add your-package-name --dev

Thank you for the reply.
I have used same command but the packages are not installed in devDependencies.

Hello, we reviewed this issue and determined that it doesn't fall into the bug report or feature request category. This issue tracker is not suitable for support requests, please repost your issue on StackOverflow using tag angular-cli.
If you are wondering why we don't resolve support issues via the issue tracker, please check out this explanation.


CVE CVE-2022-32149 is reported by trivy tool

Thank you for notifying us, we will be updating this soon.

Looks like dependabot config is removed.

dependabot security updates are enabled so it's puzzling why this CVE didn't trigger it.

Thanks again for the report, this has been patched

gr8 thanks @hhahn-tw


Add issues

As the maintainer of a Collaborate repo, keeping Issues up-to-date will help the student community understand what they can do to contribute. Issues should vary by the easy (update documentation) to the difficult (add a new feature). The more involved you are, the more opportunities there are to collaborate.
Recommendations:

[x]  Add issues of varying difficulty to the repo often. you can add the tag GSSoC'24, Girlscript, good first issue etc.
[x] Try to add some documentation issues as well it would be easy for beginner contributor to explore opensource through your repo.

Generate issues even if you plan on solving them, so the repository appears as active.
Contribute/commit often to the repo so it does not go stale.
Reference https://github.com/Recode-Hive/Stackoverflow-Analysis/issues

Issue Resolved


Move content and context into a separate table and share with children

Move content and context into table request_contexts.
Share the same request_context when a child request is created.

@bzwei can you fix the rubocop warnings

The only rubocop warning remained it the timestamp which I don't think is needed in this case because the request_context is never used standalone. It is always tied to a request.


Flaky test: Python 3: CPU Win

remote file operation failed: C:/jenkins_slave/workspace/ut-python-cpu at hudson.remoting.Channel@232e68f3:JNLP4-connect connection from ip-172-31-2-173.us-west-2.compute.internal/<IP_ADDRESS>:49714: java.nio.file.AccessDeniedException: C:\jenkins_slave\workspace\ut-python-cpu

http://jenkins.mxnet-ci.amazon-ml.com/blue/organizations/jenkins/incubator-mxnet/detail/PR-11261/3/pipeline/

@aaronmarkham thanks for submitting the issue. @sandeep-krishnamurthy could you please add label "CI" "Python" to this?

This appears to be a permissions issue remote file operation failed: C:/jenkins_slave/workspace/ut-python-cpu at hudson.remoting.Channel@232e68f3:JNLP4-connect connection from ip-172-31-2-173.us-west-2.compute.internal/<IP_ADDRESS>:49714: java.nio.file.AccessDeniedException: C:\jenkins_slave\workspace\ut-python-cpu

Seems like our slave died..

@marcoabreu is there a way to get the slave back up? Or is this solved?

I don't think there is much we can do - especially considering our Windows slaves are effectively a black box. Closing for now


How to subscribe on location?

React + redux and when I click on another route I want close my sidebar menu, but how to subscribe on location.pathname for try something like that?
useEffect(() => {
    dispatch(closeSidebar)
}, [location.pathname])

thank you very much for the quick answer


How do I use the Katex math renderer?

Hi
I'm trying to use the Katex math renderer in my HyperMD editor, but I must be missing something.
I've imported the powerpack:
import * as katex from 'hypermd/powerpack/fold-math-with-katex';

and I'm instantiating my editor as follows:
          var editor = hyp.fromTextArea(el, {
            mode: {
              name: "hypermd",
              theme: "hypermd-light"
            },
            foldGutter: false,
            lineNumbers: false,
            hmdFold: {
              image: false,
              link: false,
              math: true
            },
            hmdHideToken: true,
            hmdCursorDebounce: true,
            hmdClick: true,
            hmdHover: true,
            hmdModeLoader: false
          });

If I then type
$\Gamma^2 = \Alpha^2+\Beta^2$

in my editor, I get the uppercase Gamma, but neither of the uppercase Alpha nor Beta.
How do I force the editor to use Katex rather than the default math renderer?
Thanks
Tony

Hello. Just tested this code with Parcel and everything works well.
If you are using webpack, make sure that file-loader is configured properly so that KaTeX can load its font files (the files' suffix can be .woff, .woff2 or .ttf)

Thanks for the quick response.
I've added the webpack file-loader with a test for .woff, .woff2 and .ttf, but no luck.
The webpack build didn't error before I added the test for the font files, so I don't think it's trying to include any fonts.
Although I've got the import for the KaTeX powerpack, there is nowhere in my code where I actually reference it, so I'm guessing the build won't actually include it. Also, the webpack output doesn't show any fonts being included.

Maybe the imported powerpack is opt-out because of no reference. Try:
-import * as katex from 'hypermd/powerpack/fold-math-with-katex';
+import 'hypermd/powerpack/fold-math-with-katex';

Yes, that worked!
Thank you very much for your (v quick) help, and also for HyperMD.


Reactors Duplicate Yellorium

Reactors with greater than 9000 mB available fuel capacity that is not divisible by 9000 will duplicate yellorium when added as blocks in excess of said available capacity. Tested using Big Reactors 0.4.3A for Minecraft 1.7.10.
To reproduce this bug, create a reactor with exterior dimensions 4x4x3 using 4 yellorium fuel rods. Place 2 yellorium blocks into the inlet of an access port at the same time. The reactor will take 1 block and leave the other, but the internal fuel will read 16000. You can then eject the fuel and acquire 16 ingots instead of 9. This can be repeated as much as you like. A stack of 64 yellorium blocks produced 113 blocks worth of ingots in return.

Take a Screenshot based on model you sad... I think the explanation is better

Here is a link to screenshots detailing the duplication process.
http://kozynetwork.net/YelloriumBug

That is crazy o.O

I actually discovered this while testing to make sure reactors were not wasting yellorium by taking whole blocks to top-up. Realising the game-breaking implications when I found the exact opposite to be true, I reported it immediately. Hopefully this can be resolved without causing the issue I originally hoped not to find.

Hey @Sinazok, as erogenousbeef doesn't have time anymore to maintain BigReactors some guys and me "took over" the mod. Would be good if you could open this issue at our repo, too.
https://github.com/CyberdyneCC/BigReactors
Of course, this is a real problem and I will look into it.

This Guy will continue developing Big Reactors ?? @Tomson124

Yeah, CyberdyneCC is a group of people including myself, who will continue the work on BigReactors.

@Tomson124 One question... The group take the issue reports from what page ?? That or CyberdyneCC ?? Because i've report a issue months ago about a bug with mekanism cables

CyberdyneCC @CristinoValdigem


Boolean indexing with multi-dimensional key arrays

Originally from https://github.com/pydata/xarray/issues/974
For boolean indexing:

da[key] where key is a boolean labelled array (with any number of dimensions) is made equivalent to da.where(key.reindex_like(ds), drop=True). This matches the existing behavior if key is a 1D boolean array. For multi-dimensional arrays, even though the result is now multi-dimensional, this coupled with automatic skipping of NaNs means that da[key].mean() gives the same result as in NumPy.
da[key] = value where key is a boolean labelled array can be made equivalent to da = da.where(*align(key.reindex_like(da), value.reindex_like(da))) (that is, the three argument form of where).
da[key_0, ..., key_n] where all of key_i are boolean arrays gets handled in the usual way. It is an IndexingError to supply multiple labelled keys if any of them are not already aligned with as the corresponding index coordinates (and share the same dimension name). If they want alignment, we suggest users simply write da[key_0 & ... & key_n].

Since https://github.com/pydata/xarray/issues/3206 has been implemented now:
Maybe fancy boolean indexing (da[boolean_mask]) could return a sparse array as well.

Just wanted to confirm, that boolean indexing is indeed highly relevant. Unfortunately, current implementation with array.where() only allows for selecting values, but not for assigning values. To back up my words, here is a use case which I encounter very often:
I'm working with highly sparse data (imagine a satellite image of some islands surrounded by water), and for such data masking is essential. You only want to process the relevant data.
Here is how I would achieve this in numpy:
import numpy as np
import some_vectorized_function

image = np.array(                                          # image.shape == (1, 7, 7)
    [[[0.2, 0.0, 0.4, 0.1, 0.0, 0.0, 0.1],                 # but only 4 pixels contain relevant data
      [0.2, 0.1, 0.2, 0.1, 0.0, 0.2, 0.1],
      [0.1, 777, 444, 0.2, 0.2, 0.2, 0.2],
      [0.1, 0.3, 777, 0.0, 0.2, 0.2, 0.2],
      [0.0, 0.1, 0.1, 0.1, 0.3, 0.1, 0.3],
      [0.1, 0.0, 0.1, 0.2, 0.0, 444, 0.3],
      [0.3, 0.3, 0.0, 0.2, 0.0, 0.0, 0.3]]]
)

mask = image > 1                                           # mask.shape == (1, 7, 7)
                                                           # mask.sum() == 4

image[mask] = some_vectorized_function(image[mask])        # image[mask].shape == (4,)

The most important fact here is that image[mask] is just a list of 4 pixels, which means I'm processing only 4 pixels that I care about. All other data just stays as it is. And this boolean masking also plays very nice with broadcasting, which means that I can mask a 3D array with a 2D boolean mask.

I've added the "good first issue" label — at least the first two bullets of the proposal would be relatively simple to implement, given they're mostly syntactic sugar.

It's worth noting that there is at least one other way boolean indexing could work:

ds[key] could work like ds.stack({key.name: key.dims}).isel({key.name: np.flatnonzero(key.data)}), except without creating a MultiIndex. Arguably this might be more useful and also more consistent with NumPy itself. It's also more similar to the operation @Hoeze wants in https://github.com/pydata/xarray/issues/5179.

We can't support both with the same syntax, so we have to make a choice here :).
See also the discussion about what drop_duplicates/unique should do over in https://github.com/pydata/xarray/pull/5089.

I've been trying to conceptualize why I think the where equivalence (the original proposal) is better than the stack proposal (the latter). I think it's mostly:

It's simpler
I'm not sure how the setitem would work; da[key] = value?
If someone wants the stack result, it's less work to do original -> where result -> stack result relative to original -> stack result -> where result; which suggests they're more composable?

But I don't do much pointwise indexing — and so maybe we do want to prioritize that

I've been trying to conceptualize why I think the where equivalence (the original proposal) is better than the stack proposal (the latter).

Here are two reasons why I like the stack version:

It's more NumPy like -- boolean indexing in NumPy returns a flat array in the same way
It doesn't need dtype promotion to handle possibly missing values, so it will have more predictable semantics.

As a side note: one nice feature of using isel() for stacking is that it does not create a MultiIndex, which can be expensive. But there's no reason why we necessarily need to do that for stack(). I'll open a new issue to discuss adding an optional parameter.

I'm not sure how the setitem would work; da[key] = value?

To match the semantics of NumPy, value would need to have matching dims/coords to those of da[key]. In other words, it would also need to be stacked.

If someone wants the stack result, it's less work to do original -> where result -> stack result relative to original -> stack result -> where result; which suggests they're more composable?

I'm not quite sure this is true -- it's the difference between needing to call stack() vs unstack().

OK great. To confirm, this is what it would look like:
Context:
In [81]: da = xr.DataArray(np.arange(12).reshape(3,4), dims=list('ab'))

In [82]: da
Out[82]:
<xarray.DataArray (a: 3, b: 4)>
array([[ 0,  1,  2,  3],
       [ 4,  5,  6,  7],
       [ 8,  9, 10, 11]])
Dimensions without coordinates: a, b

In [84]: key = da % 3 == 0

In [83]: key
Out[83]:
<xarray.DataArray (a: 3, b: 4)>
array([[ True, False, False,  True],
       [False, False,  True, False],
       [False,  True, False, False]])
Dimensions without coordinates: a, b

Currently

In [85]: da[key]
---------------------------------------------------------------------------
IndexError                                Traceback (most recent call last)
<ipython-input-85-7fd83c907cb6> in <module>
----> 1 da[key]
...
~/.asdf/installs/python/3.8.8/lib/python3.8/site-packages/xarray/core/variable.py in _validate_indexers(self, key)
    697                         )
    698                     if k.ndim > 1:
--> 699                         raise IndexError(
    700                             "{}-dimensional boolean indexing is "
    701                             "not supported. ".format(k.ndim)

IndexError: 2-dimensional boolean indexing is not supported.

Current proposal ("stack"), but without the .values, and with a dimension of key's name (and probably no multiindex):
In [86]: da.values[key.values]
Out[86]: array([0, 3, 6, 9])

Previous suggestion ("where"), for the result of da[key]:
In [87]: da.where(key)
Out[87]:
<xarray.DataArray (a: 3, b: 4)>
array([[ 0., nan, nan,  3.],
       [nan, nan,  6., nan],
       [nan,  9., nan, nan]])
Dimensions without coordinates: a, b

(small follow up I'll put in another message, for clarity)

I'm not quite sure this is true -- it's the difference between needing to call stack() vs unstack().

This was a tiny point so it's fine to discard. I had meant that producing the where result via the stack result requires a stack and unstack. But producing the stack result via a where result requires only one stack — the where result is very cheap.

OK great. To confirm, this is what it would look like:

Yes, this looks right to me.

Current proposal ("stack"), of da[key] and with a dimension of key's name (and probably no multiindex):
In [86]: da.values[key.values]
Out[86]: array([0, 3, 6, 9])   # But the xarray version

The part about this new proposal that is most annoying is that the key needs a name, which we can use to name the new dimension. That's not too hard to do, but it is little annoying -- in practice you would have to write something like  da[key.rename('key_name')] much of the time to make this work.

I'm still working through this. Using this to jot down my notes, no need to respond.
One property that seems to be lacking is that if key changes from n-1 to n dimensions, the behavior changes (also outlined here):
In [171]: a
Out[171]:
array([[ 0,  1,  2,  3],
       [ 4,  5,  6,  7],
       [ 8,  9, 10, 11]])

In [172]: mask
Out[172]: array([ True, False,  True])

In [173]: a[mask]
Out[173]:
array([[ 0,  1,  2,  3],
       [ 8,  9, 10, 11]])

...as expected, but now let's make a 2D mask...
In [174]: full_mask = np.broadcast_to(mask[:, np.newaxis], (3,4))

In [175]: full_mask
Out[175]:
array([[ True,  True,  True,  True],
       [False, False, False, False],
       [ True,  True,  True,  True]])

In [176]: a[full_mask]
Out[176]: array([ 0,  1,  2,  3,  8,  9, 10, 11])    # flattened!

Current proposal ("stack"), of da[key] and with a dimension of key's name (and probably no multiindex):
In [86]: da.values[key.values]
Out[86]: array([0, 3, 6, 9])   # But the xarray version

The part about this new proposal that is most annoying is that the key needs a name, which we can use to name the new dimension. That's not too hard to do, but it is little annoying -- in practice you would have to write something like da[key.rename('key_name')] much of the time to make this work.

IMO, the perfect solution would be masking support.
I.e. da[key] would return the same array with an additional variable da.mask:
In [87]: da[key]
Out[87]:
<xarray.DataArray (a: 3, b: 4)>
array([[   0, <NA>, <NA>,    3],
       [<NA>, <NA>,    6, <NA>],
       [<NA>,    9, <NA>, <NA>]])
dtype: int
Dimensions without coordinates: a, b

Then we could have something like da.stack(new_dim=["a", "b"], dropna=True):
In [87]: da.stack(new_dim=["a", "b"], dropna=True)
Out[87]:
<xarray.DataArray (newdim: 4)>
array([0, 3, 6, 9])
coords{
   "a" (newdim): [0, 0, 1, 2],
   "b" (newdim): [0, 3, 2, 1],
}
Dimensions without coordinates: newdim

Here, dropna=True would allow avoiding to create the cross-product of a, b.

stack(new_dim=["a", "b"], dropna=True)

Potentially a different issue — this could be useful. While someone can call .dropna, that coerces to floats (or some type that supports missing) and can allocate more than is needed. Potentially this can be considered along with issues around sparse, e.g. https://github.com/pydata/xarray/issues/3245, https://github.com/pydata/xarray/issues/4143


Flash: Need to use proper lock height for settlement txs and add validation

https://github.com/bosagora/agora/blob/ca80a17ca6dd33981cc86f0f8de606cc7055edeb/source/agora/flash/OnionPacket.d#L214
Note how the settle time is checked here during construction time:
https://github.com/bosagora/agora/blob/ca80a17ca6dd33981cc86f0f8de606cc7055edeb/source/agora/flash/Node.d#L657
But it is not set properly here:
https://github.com/bosagora/agora/blob/ca80a17ca6dd33981cc86f0f8de606cc7055edeb/source/agora/flash/Node.d#L1140
And it's also not checked in this routine:
https://github.com/bosagora/agora/blob/ca80a17ca6dd33981cc86f0f8de606cc7055edeb/source/agora/flash/Channel.d#L1296
So there might be several functions to change. Maybe even createOnionPacket wouldn't take the lock_height parameter, but would instead automatically calculate this from each channel's settlement time.

Do we really need to put lock height in the onion packets? Nodes can propose different lock heights to their peers anyways, as long as they can agree on them, right?

Yes you're right about that.

@AndrejMitrovic , do you think this can be closed now?

I think so!


HHVM version?

Hello, any chance to see a HHVM compatible version? It's too bad not to use a high performance database such as Aerospike and not being able to use HHVM with it.

I'd like to see an HHVM version as well.
I attempted to compile this, but I don't know enough about cmake.
I did do a install on PHP and took the corresponding install files and placed them on an HHVM server.
I'm getting:
Uncaught exception: Could not open extension /usr/lib64/hhvm/extensions/aerospike.so:
/usr/lib64/hhvm/extensions/aerospike.so: undefined symbol: executor_globals
Which sucks, as I wanted to use this.

I'd like to see an HHVM version as well.
I attempted to compile this, but I don't know enough about cmake.
I did do a install on PHP and took the corresponding install files and placed them on an HHVM server.
I'm getting:
Uncaught exception: Could not open extension /usr/lib64/hhvm/extensions/aerospike.so:
/usr/lib64/hhvm/extensions/aerospike.so: undefined symbol: executor_globals
Which sucks, as I wanted to use this.

So i have spent today trying to get this to compile under hhvm.
I made a new cmake:
HHVM_COMPAT_EXTENSION(aerospike, aerospike.c aerospike_policy.c aerospike_transform.c aerospike_helper.c aerospike_record_operations.c aerospike_udf.c aerospike_scan.c aerospike_query.c aerospike_index_operations.c aerospike_info_operations.c aerospike_batch_operations.c)

HHVM_ADD_INCLUDES(aerospike "/root/aerospike-client-php/src/aerospike/../aerospike-client-c/include")
HHVM_ADD_INCLUDES(aerospike "/root/aerospike-client-php/src/aerospike/../aerospike-client-c/include/ck")
HHVM_ADD_INCLUDES(aerospike "/root/aerospike-client-php/src/aerospike/include")
HHVM_ADD_INCLUDES(aerospike "/root/aerospike-client-php/src/aerospike/main")
HHVM_ADD_INCLUDES(aerospike "/root/aerospike-client-php/src/aerospike")
HHVM_ADD_INCLUDES(aerospike "/usr/include/hphp -I/usr/include/hphp/runtime/ext_hhvm")
HHVM_ADD_INCLUDES(aerospike "/usr/include/hphp/runtime/ext_zend_compat/php-src/main")
HHVM_ADD_INCLUDES(aerospike "/usr/include/hphp/runtime/ext_zend_compat/php-src/TSRM")
HHVM_ADD_INCLUDES(aerospike "/usr/include/hphp/runtime/ext_zend_compat/php-src/Zend")

installed folly: https://github.com/facebook/folly/
Not to mention, I had to copy over directories such as aerospike-client-c, build, include, modules as hphpize does not make them.  I had to have a php build on standby to steal from.
It just doesn't compile.  Too many issues to mention.
Total waste of time.
Don't expect anyone outside of aerospike to do this.  Too many things dependent on Zend/PHP that just wont be there in HHVM.

I appreciate the effort. Allegedly HHVM is compatible with a subset of that API, but apparently promises and reality diverge.  We will get around to trying to fix the compatibility issues that will allow the Zend extension to work with HHVM.  Afterward or alternatively we will implement a native client.

Thanks for the update.  A native client doesnt really interest me right now.  Just getting it to work with HHVM should be a top priority.  You'll get more users then.
I've yet to move my codebase to hacklang, there is really no outstanding reason.  Unless hacklang starts to get some serious optimisations and this along generates say 20% more.  I may then be interested in that.

Product guy here. I will make a stronger statement than "we will get around to it" --- we are scheduling HHVM compatibility with a fairly high priority for the next few sprints. We find that agile PHP users start hitting the growth curve and need to swap in higher performance quickly - Aerospike's a great path for that. When they're doing that, they often want to swap in faster PHP implementations and various other toolchain bits - like HHVM.
If you're available for a quick chat, I'd love to hear what your perspective is. You can send me a private message through github, or look up my email on linkedin, and we can start a conversation.

Product guy: maybe you can also fix session handler with the php extension. :8ball:

@skynet code's open before you. Have at it.

Product guy seems to take more serious the $$$ you got in funding :))

@skynet Steady progress has been made for #11 --- including a release we hoped solved your problem but apparently didn't yet --- and we've been following up with you there. We're prioritizing that fix above the HHVM work, which makes @no1youknowz rather sad but session management is just more important.

Hey @bbulkow lol no worries.  Functionality for HHVM will be released when its ready no doubt.  There have been a few occasions where I could have used it for my project but all in due time I guess.  Waiting patiently for it. :+1:

Thanks! I was so excited jumping from Redis to Aerospike, and ended up wasting a lot of time on a trivial PHP session handler. Good luck.

Is there any concrete time-schedule you guys tentatively have?
I keep on running into specific issues that aerospike would solve.
Something better than just "get around to it" or  "next few sprints".  Is it possible for a "we'll try to hit this date?"
Many thanks! :+1:

Just to let you guys knows, 3.6.0 is around the corner.
They have added async to mysql and memcached.
http://hhvm.com/blog/8405/coming-soon-in-hhvm
Hopefully you guys add async to aerospike :+1:

Yeah, I follow the blog and the twitter of some of the developers. We intend to support a similar style for HHVM eventually, implemented in Hack. First we'll try to get the C extension to compile against HHVM as it is right now.

Meanwhile, let's fix #11

Hey, since we're turning GitHub into Twitter, we just discussed it today :laughing:

:+1:  I can ping you on Twitter, as well. :)

@skynet check out Issue #11 please. @no1youknowz we're evaluating the changes needed for HHVM, unfortunately at first pass they don't seem trivial. I'll add more information in a few days.

@rbotzer awesome.  thanks for starting to look at this.  Looking forward to more information. :+1:

So 3.6 will be release weds.  Can't wait for async for mysql.
Will aerospike have async capability?  Or will it require native hhvm version?

We are starting on a HNI based HHVM extension. The prototype will be pretty sparse, but if it works well we should be able to add the missing features on a bi-weekly release schedule.

HNI being a Hack Native Interface?
So what were the negatives in implementing an HHVM C++ based extension, effectively wrapping a wrapper around the existing C++ library?  Thus having all the features instantly.
For example:  https://github.com/no1youknowz/zmq-extension-for-hhvm/tree/master/zmq
Which is an HHVM extension which wraps around the actual C++ library.

Hey Paul,
I may be having a problem with terminology here - still early with the HHVM migration and I need to catch up to an exciting new world of terms. We are going to write it in C++ so that Hack and PHP can interface with it. I believe that's what HNI is, but I may be wrong. Either way, we are talking about a C++ wrapper to our C client. We do not intend to write an extension in Hack itself - it's too slow compared to the C++ extension option, for one.
The things to tackle first are connection, and very simple key-value operations. One pain point that made it impossible to use the PHP extension with HHVM is that the Zend Engine constructs for persistence are not supported, so there goes storing the C client in the process for multiple requests. There are other unsupported APIs but that was a big one.
I hope that clarifies things. Either way, the prototype will confirm whether this approach is the right one, and if it is we'll build on it.

Hey,
Thanks for the clarification.  The reason why I brought up Hack, is that the redis client that ships with HHVM is actually built in hack.
Good to know this is being written in C++.  I can't wait till its finally out :1.
Keep this issue updated.
Thanks

Hey,
So any progress?
Thanks

Hello :) any news on this?

An alpha test is in progress with some core functionality. If all goes well we will release it soon and continue incrementally toward the full API.

Alright, folks, release 0.2 of the HHVM client is out. We are on our way, and will end up implementing the same API as the PHP client (before considering possible HHVM-only async additions to it).

Thanks @rbotzer much appreciated!

HHVM release 0.3 is out now too. Any comments?

:+1:


fix(userspace/libsinsp): do not suppress zero ptids

What type of PR is this?
/kind bug
Any specific area of the project related to this PR?
/area libsinsp
Does this PR require a change in the driver versions?
What this PR does / why we need it:
The recent process-based event suppression refactor (cc @gnosek) added a new cache slot for better performance. However, given that the cache slots are likely initialized to zero, we can fall into the case in which we consider a zero TID to be suppressed. The issue with that is that if the zero TID is taken from a PTID of an event (execve, clone, etc...), then we also mark as suppressed the child process. We indeed set PTID to zero in our drivers when we can find no parent for a thread, which in this case would cause a whole hierarchy of processes to have their events ignored.
Which issue(s) this PR fixes:
Special notes for your reviewer:
Does this PR introduce a user-facing change?:
fix(userspace/libsinsp): do not suppress zero ptids

/milestone 0.14.1

LGTM label has been added.  Git tree hash: 096aa2e2bce7f7fca32d471278136b85e1a80f2e

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: incertum, jasondellaluce
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [incertum,jasondellaluce]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, incertum, jasondellaluce
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97,incertum,jasondellaluce]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

There must be some issues with the multi producer single consumer queue:

[ RUN      ] mpsc_priority_queue.multi_concurrent_producers
Error: The operation was canceled.

Restarted the test.


Duplicating a manifest doesn't work if manifest already exists

If I duplicate a manifest and the manifest already exists, munkiadmin prompts me to confirm I want to replace the manifest. However, choosing "replace" when prompted does not replace the manifest. Not a big deal though.

This was working, but with the latest version I don't see where to duplicate a manifest anymore.

Current release doesn't have this functionality at all but it will be back soon.

Fix will be in the next release.


cannot calibrate color Astra mini camera

hi if I try to calibrate my Astra mini camera from the color stream /camera/color/image_raw with the ros calibration pkg the saved calibration file is depth_serialnumber. yaml.. if I change the name to rgb_serialnumber. yaml it's not recognized... I launch the astra mini with the Astra. launch file...
what do I have to change?
thanks in advance

I've updated the readme. I hope that makes it clear.

Set camera info uri, Go to xxx.launch

<launch>
    <!--...-->
    <arg name="ir_info_uri" default="file:///you_ir_camera_calib_path/depth_camera.yaml"/>
    <arg name="color_info_uri" default="file:///you_depth_camera_calib_path/rgb_camera.yaml"/>
    <!--...-->
</launch>

calibration file should like

image_width: 640
image_height: 480
# The camera name is fixed. The color camera is rgb_camera, the depth/IR camera is depth_camera
camera_name: astra_rgb
camera_matrix:
  rows: 3
  cols: 3
  data: [517.301, 0, 326.785, 0, 519.291, 244.563, 0, 0, 1]
distortion_model: plumb_bob
distortion_coefficients:
  rows: 1
  cols: 5
  data: [-0.41527, 0.31874, -0.00197, 0.00071, 0]
rectification_matrix:
  rows: 3
  cols: 3
  data: [0.999973, 0.00612598, -0.00406652, -0.00610201, 0.999964, 0.00588094, 0.0041024, -0.00585596, 0.999974 ]
projection_matrix:
  rows: 3
  cols: 4
  data: [517.301, 0, 326.785, -25.3167, 0, 519.291, 244.563, 0.282065, 0, 0, 1, 0.0777703]

thank you, i had to use ir_camera and rgb_camera as camera_name instead ...


Nested grid management bug fix + hidding element bug fix

Sorry but I don't know how to transform code into documentation code. If you know a tool to do this say me

+1 Need this fix as my update broke my layout.
@maxiplay Good job on the fix thanks

Very disappointing support. I think I will just use another web component to handle grids!

Use my repository during wait

Well i did get your fixes but at the sametime no response from him

+1


Mica background doesn't apply consistently

Description
I tried using MFE on explorer, and it is very finnicky when it comes to actually applying the background. It works a lot better in 22H2 and the background is very nice (when it actually works), but most of the time, when I open explorer, the background simply doesn't apply. And at times when the background actually applies, it goes away again after closing the app.
I have set Extend Frame to Client Area on.
What is weirder is that the text doesn't become white in any of the windows either, when it works, it works perfectly. Just that it doesn't work most of the time.
Target Application
File Explorer
To Reproduce
I don't think there is any real way to reproduce this, it just randomly happens when I open and close the explorer. Sometimes, the background gets applied, other times, it is the same plain black background that appears in Windows 11.
All this happened on Windows 11 22H2 (Build 22621.755) and MicaForEveryone v<IP_ADDRESS>

Explorer is very finicky when it comes to Extend Frame Into Client Area. Fixing this problem will require process hooking. I have an idea for using Detours and DLL hooking to resolve this, but currently can't quite execute on it yet.

I kinda found this weird observation that it works a lot more frequently if we have a UWP app open in the background, but I can't really say if this behaviour happens all the time

Well finally managed to have a prototype: https://github.com/MicaForEveryone/ExplorerFrame.

Woah, this thing is absolutely sick! This is exactly what I wanted with the Windows 11 File Explorer in the first place (aside from tabs, which we have right now). Amazing job right there, and thank you for your help :)


[FLINK-5155] Deprecate ValueStateDescriptor constructors with default value

I left usage of this in a lot of places to ensure that we don't break anything. The rest of places where the default-value constructer is used should be tackled once we remove that constructor.
R: @StephanEwen for review

I think this is good, +1
What would be good is to add a line in the comment of the constructor that says that the state returns null if there is no value present, yet, for the current key.

Should we maybe add such a comment in the Javadoc of ValueState or ValueStateDescriptor? That way we don't have to duplicate it for every constructor. Or we could add it in all places.

Fine by me. A warning at the top to not rely on default values is good.

Thanks for reviewing. I'll change and then merge.

Manually merged.

why？


Deep Traversal doesnt seem to work in orientdb v3.0.4

OrientDB Version: 3.0.4
Java Version: 1.8.0_171
OS:  windows 7 x64
Expected behavior
1->1.1
1->1.2
2->2.1
2->2.2
2->2.3
when traversing from 1.x or 2.x till depth < 2, i expect
1.1,1
1.2,1
2.1,2
2.2,2
2.3,2
Actual behavior
1.1,1
1.2
2.1,2
2.2,
2.3
Steps to reproduce
create a graph above and perform traverse from leaf nodes to depth < 2

Hi @surajhes
I've created graph with following command:
create class tc extends V create vertex tc set name = 1 create vertex tc set name = 1.1 create vertex tc set name = 1.2 create vertex tc set name = 2 create vertex tc set name = 2.1 create vertex tc set name = 2.2 create class te extends E create edge te from #241:0 to #242:0 create edge te from #241:0 to #243:0 create edge te from #244:0 to #245:0 create edge te from #244:0 to #246:0
Vertices #241:0, #242:0, #243:0, #244:0, #245:0, #246:0 represents vertices with name 1, 1.1, 1.2, 2, 2.1, 2.2, 2.3 respectively.
And when I execute traversal with max depth 2, result is like following:
`orientdb {db=demodb}> TRAVERSE out("te") FROM #241:0 MAXDEPTH 2
+----+------+------+---------------+----+--------+
|#   |@RID  |@CLASS|out_te         |name|in_te   |
+----+------+------+---------------+----+--------+
|0   |#241:0|tc    |[#249:0,#250:0]|1   |        |
|1   |#243:0|tc    |               |1.2 |[#250:0]|
|2   |#242:0|tc    |               |1.1 |[#249:0]|
+----+------+------+---------------+----+--------+
3 item(s) found. Traverse executed in 0.009 sec(s).`
Is that what you have on your mind?

Following.
Scott

I would had expected like
Note: i am editing the table here posted above.
+----+------+------+---------------+----+--------+
|#   |@RID  |@CLASS|out_te         |name|in_te   |
+----+------+------+---------------+----+--------+
|0   |#241:0|tc    |[#249:0,#250:0]|1   |        |
|1   |#243:0|tc    |               |1.2 |[#250:0]|
|0   |#241:0|tc    |[#249:0,#250:0]|1
|2   |#242:0|tc    |               |1.1 |[#249:0]|
+----+------+------+---------------+----+--------+
something like that.

@markodjurovic

create a graph above and perform traverse from leaf nodes to depth < 2

Can the query be made from the leaf node, as suggested? Not sure that makes a difference or is possible, but maybe that would get the expected result?
Scott

@smolinari
It is possible to traverse from leafs (just in reverse direction):
orientdb {db=demodb}> traverse in("te") from (select rids from (select @rid as rids, out("te") as outEdge from tc unwind outEdge) where outEdge is null) maxdepth 2

+----+------+------+--------+----+---------------+
|#   |@RID  |@CLASS|in_te   |name|out_te         |
+----+------+------+--------+----+---------------+
|0   |#246:0|tc    |[#252:0]|2.2 |               |
|1   |#244:0|tc    |        |2   |[#251:0,#252:0]|
|2   |#245:0|tc    |[#251:0]|2.1 |               |
|3   |#243:0|tc    |[#250:0]|1.2 |               |
|4   |#241:0|tc    |        |1   |[#249:0,#250:0]|
|5   |#242:0|tc    |[#249:0]|1.1 |               |
+----+------+------+--------+----+---------------+

6 item(s) found. Traverse executed in 0.099 sec(s).

where

select rids from (select @rid as rids, out("te") as outEdge from tc unwind outEdge) where outEdge is null

finds leaf nodes.
But with MATCH you can go further:

orientdb {db=demodb}> match {class: tc, as: rec}.inE("te"){while: ($depth < 2), as: kk}.outV(){as: vv} return $matches

+----+------+------+------+
|#   |rec   |kk    |vv    |
+----+------+------+------+
|0   |#242:0|#249:0|#241:0|
|1   |#243:0|#250:0|#241:0|
|2   |#245:0|#251:0|#244:0|
|3   |#246:0|#252:0|#244:0|
+----+------+------+------+

4 item(s) found. Query executed in 0.003 sec(s).

or

orientdb {db=demodb}> match {class: tc, as: rec}.inE("te"){while: ($depth < 2), as: kk}.outV(){as: vv} return $elements

+----+------+------+--------+----+------+------+---------------+
|#   |@RID  |@CLASS|in_te   |name|out   |in    |out_te         |
+----+------+------+--------+----+------+------+---------------+
|0   |#242:0|tc    |[#249:0]|1.1 |      |      |               |
|1   |#249:0|te    |        |    |#241:0|#242:0|               |
|2   |#241:0|tc    |        |1   |      |      |[#249:0,#250:0]|
|3   |#243:0|tc    |[#250:0]|1.2 |      |      |               |
|4   |#250:0|te    |        |    |#241:0|#243:0|               |
|5   |#241:0|tc    |        |1   |      |      |[#249:0,#250:0]|
|6   |#245:0|tc    |[#251:0]|2.1 |      |      |               |
|7   |#251:0|te    |        |    |#244:0|#245:0|               |
|8   |#244:0|tc    |        |2   |      |      |[#251:0,#252:0]|
|9   |#246:0|tc    |[#252:0]|2.2 |      |      |               |
|10  |#252:0|te    |        |    |#244:0|#246:0|               |
|11  |#244:0|tc    |        |2   |      |      |[#251:0,#252:0]|
+----+------+------+--------+----+------+------+---------------+

12 item(s) found. Query executed in 0.005 sec(s).

These queries requires more sophisticated logic to detect if some node is leaf, so final query may looks like:
match {class: tc, as: rec, where: (@rid in (select rids from (select @rid as rids, out("te") as outEdge from tc unwind outEdge) where outEdge is null))}.inE("te"){while: ($depth < 2), as: kk}.outV(){as: vv} return $matches
and if you don't need info about edges connecting nodes:
match {class: tc, as: rec, where: (@rid in (select rids from (select @rid as rids, out("te") as outEdge from tc unwind outEdge) where outEdge is null))}.inE("te"){while: ($depth < 2)}.outV(){as: vv} return $matches
More details on match can be found here
https://orientdb.com/docs/3.0.x/sql/SQL-Match.html


Developing the form creation feature

Developed:

New html file with the beginning of the development of the protocol creation feature;
General refactoring of some parts of the code;
js file with the necessary scripts for creating protocols

Still have to develop:

Improve the form creation system;
Integrate the creation of forms with the database;
Review and possible corrections in the structure of the database;
Develop the frontend further;

That's right, you can merge, it won't negatively affect the project at all


Sorting options clarity and improvement suggestion.

I am a bit confused about the sorting system.
I recently transferred my backup back into my sd-webui outputs folder due to finally having space again.
But no sorting method returns the correct expected order.
Created date i can understand is based on when the file was created and thus that would be the time that i copied the backup.
But the updated date sorting makes no sense. Mostly cause I did a search in the code files and it does not sort by the property I would expect an updated date option to sort by,
It just sorts by 'Date'?
Meanwhile all my files have the 'date modified' date correct but the sorting either priorities folder dates over files (kind of useless in this case). It could just group the images based on last modified date within respective txt2img-images, img2img-images etc. subdirectories recursively and ignore the folder dates.
EDIT: I just now noticed how when browsing it displays the correct date just below each image and no matter what sorting mode it still puts them way out of order. Is it really prioritizing the folder date even when not browsing folders directly??

Will add a temporary solution for anyone else copying in folders from a backup or old webui install.
In powershell run this command and make sure to adjust based on what folder you want to edit as well as the date.
(Get-Item -Path "C:\path-to\webui\outputs\txt2img-images\2023-05-29").LastWriteTime = "2023-05-29 00:00:01"

I was confused too...
I tried changing the fastapi's /files route defined by get_target_folder_files's code to return files list in a dir in different orders, but the web interface doesn't respect the order returned by the /files API at all. I don't know how a certain image ends up in a totally unexpected location on the page.
When running as an extention of SD Web UI, the order is perfect, but when I transferred the images to another machine with rsync, preserving mtime, ctime etc, and tried the experienment above, nothing gives the correct order.
The UI part of this project isn't actually open source, only bundled code is published.
@zanllp Could you explain exactly how the sorting works? An answer is much appreciated. :)

I am confused too...
I tried changing the fastapi's /files route defined by get_target_folder_files's code to return files list in a dir in different orders, but the web interface doesn't respect the order returned by the /files API at all. I don't know how a certain image ends up in a totally unexpected location on the page.
When running as an extention of SD Web UI, the order is perfect, but when I transferred the images to another machine with rsync, preserving mtime, ctime etc, and tried the experienment above, nothing gives the correct order.
The UI part of this project isn't actually open source, only bundled code is published.
@zanllp Could you explain exactly how the sorting works? An answer is much appreciated. :)

https://github.com/zanllp/sd-webui-infinite-image-browsing/blob/main/vue/src/page/fileTransfer/fileSort.ts
https://github.com/zanllp/sd-webui-infinite-image-browsing/blob/ffc834ada6c58a6f45a1bccbeb82b56ef8f9c43c/vue/src/page/fileTransfer/hook.tsx#L75-L93

Thank you for your quick reply! I just found the sorting option under Global Setings. It works as expected now.


[BUG]

Camera:  ZWO ASI178
OS: Bullseye
Allsky version: v2023.05.01
Pi4 8GB

Bug Description
Fresh install new rig. I went outside and disconnected the USB from the camera to the pi and connected it to a laptop so I could get focus. After achieving focus using the asi software I reconnected the pi to the camera and began getting an error in my log during image capture:
"May 15 23:32:09 allsky allsky[31406]:    cp: cannot create regular file '/var/www/html/allsky//image.jpg': No such file or directory"
After verifying the folder exists in the allsky .dir on the PI, I clicked the button on the bottom of the Allsky Settings page to reset to default values. Now I am unable to input my Long and Lat as well.
I restarted the Pi, and the UI but the issue prevails

Log / configuration files

config.txt
ftp_Settings.txt
config.jason.txt
Log1.txt
Log2.txt

@HeavyJohnny, Kevin, did you install the new Allsky Website by running website/install.sh?  If so, you need to change the IMAGE_DIR in ftp-settings.sh to point to /home/pi/allsky/html/allsky, and change the videos, startrails, and keograms settings accordingly.  And spell them correctly.  That will fix the "cp" Error.
What happens when you enter the latitude and longitude and press the "Save changes" button?

Nothing would happen It would refuse to save and kick an error at the top of the scree stating long and lat could not me left blank. I formatted my pi and reinstalled.

Also, Changing the directory helped. Thank you. I used the folder that Chad gave on his youtube tutorial, which I know is out of date. Thanks for the help!

Chad will be updating his video now that the new release is out.  The Allsky Documentation via the WebUI has all the information you should need and is up-to-date.
Is everything working now?

Looking forward to seeing him back on youtube. I hope everything works out
for him.
On Tue, May 16, 2023 at 2:41 PM Eric Claeys @.***>
wrote:

Chad will be updating his video now that the new release is out. The
Allsky Documentation via the WebUI has all the information you should need
and is up-to-date.
Is everything working now?
—
Reply to this email directly, view it on GitHub
https://github.com/thomasjacquin/allsky/issues/2637#issuecomment-1549021221,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A7UA5TIQ2E3PVK6E2HAVYN3XGMHQNANCNFSM6AAAAAAYCLNTRQ
.
You are receiving this because you were mentioned.Message ID:
@.***>


Fix smime-type for AuthEnvelopedData

Currently no smime-type is printed in CMS S/MIME format for AuthEnvelopedData content type. This fixes it and adds a test to verify that smime-type is set to the correct value.
Checklist

[x] tests are added or updated

This pull request is ready to merge

Merged to master and 3.4 branches. Could you please submit a PR against 3.3 branch as this does not cherry-pick cleanly there?

Could you please submit a PR against 3.3 branch as this does not cherry-pick cleanly there?

@t8m Done in https://github.com/openssl/openssl/pull/25523


Handlebars mode doesn't highlight single-bracket syntax

Hi! Thanks for the project!
The REPL uses Handlebars syntax highlighting, which is workable, but I'm guessing was chosen before the switch to single brackets; double brackets gets highlighted, but single brackets does not.
It would be a nice improvement if we could somehow get the handlebars mode to accept single brackets as well, or otherwise make a Svelte-specific CodeMirror mode. I noticed this in the first place while reviewing a change to add Svelte highlighting to Glitch, where we also use CodeMirror and would probably be a consumer of a Svelte mode.

closing since the site has been rewritten. please file at https://github.com/sveltejs/svelte.dev/issues/new if the issue persists


Angular 4 {}

Hi,
Angular Version: "@angular/core": "^4.3.2",
I just passed to Angular 4 and I have many error with the file generated par NSwag like this one:
ERROR in [at-loader] ./ClientApp/app/services/app.services.ts:53:9
TS2322: Type 'Observable<{}>' is not assignable to type 'Observable'.
Type '{}' is not assignable to type 'UserDto'.
Property 'id' is missing in type '{}'.
I tried to look for type script client tab if there is Angular version 4, but there is only 1.8and 2.0. Maybe there is way to configure the app to specify a specific way to instanciate a variable?
authenticate(id: string | undefined): Observable<UserDto | null> {
       let url_ = this.baseUrl + "/api/v1/Authentication/Authenticate?";
       if (id === undefined)
           throw new Error("The parameter 'id' must be defined.");
       else
           url_ += "id=" + encodeURIComponent("" + id) + "&";
       url_ = url_.replace(/[?&]$/, "");

       let options_ = {
           method: "put",
           headers: new Headers({
               "Content-Type": "application/json",
               "Accept": "application/json"
           })
       };

      [L53] return Observable.fromPromise(this.transformOptions(options_)).flatMap(transformedOptions_ => {
           return this.http.request(url_, transformedOptions_);
       }).flatMap((response_) => {
           return this.transformResult(url_, response_, (r) => this.processAuthenticate(r));
       }).catch((response_: any) => {
           if (response_ instanceof Response) {
               try {
                   return this.transformResult(url_, response_, (r) => this.processAuthenticate(r));
               } catch (e) {
                   return <Observable<UserDto>><any>Observable.throw(e);
               }
           } else
               return <Observable<UserDto>><any>Observable.throw(response_);
       });
   }

Thanks
Ps: I use your app nearly every day, it works very well :)

This is strange. I also use nswag in an angular 4 app and it works without problems... Maybe a problem with transformOptions()?

I think it is a problem with transformResult() which must be defined with a generic response type so that the observable has the correct type.. will check this and either update the docs or fix the problem.

I can send you my nswag config, if you need.
Currently i have both (transformOptions and transformResult) checked.
I came back to the previous working version : "@angular/core": "^4.2.0", nswag is working super well.
let me now when it will be fixed :)
Thank you for your work!

I've upgraded the sample application to Angular 4.3.3 and this works for me without problems (or better: without your problems :-). Can you compare the projects?

this is my config file.
Do you need something else?
{
  "swaggerGenerator": {
    "webApiToSwagger": {
      "assemblyPaths": [
        "../MyProjectBackend.Api/bin/Debug/netcoreapp1.1/MyProjectBackend.Api.dll"
      ],
      "referencePaths": [
        "C:/Program Files/dotnet/shared/Microsoft.NETCore.App/1.1.1",
        "bin/Release/PublishOutput"
      ],
      "isAspNetCore": true,
      "controllerNames": [
        "MyProjectBackend.Api.Controllers.Authentication.AuthenticationController",
        "MyProjectBackend.Api.Controllers.Offers.OfferController",
        "MyProjectBackend.Api.Controllers.Places.PlaceController",
        "MyProjectBackend.Api.Controllers.Shops.ShopCategoryController",
        "MyProjectBackend.Api.Controllers.Shops.ShopChainController",
        "MyProjectBackend.Api.Controllers.Shops.ShopController",
        "MyProjectBackend.Api.Controllers.Shops.ShopLocationController",
        "MyProjectBackend.Api.Controllers.SocialAccounts.SocialAccountController",
        "MyProjectBackend.Api.Controllers.Users.UserController",
        "MyProjectBackend.Api.Controllers.Offers.ShopOfferController"
      ],
      "defaultUrlTemplate": "api/{controller}/{action}/{id}",
      "defaultPropertyNameHandling": "CamelCase",
      "defaultEnumHandling": "Integer",
      "flattenInheritanceHierarchy": false,
      "generateKnownTypes": true,
      "generateXmlObjects": false,
      "addMissingPathParameters": false,
      "infoTitle": "MyProject Web API Swagger specification",
      "infoVersion": "1.0.0",
      "output": null
    }
  },
  "codeGenerators": {
    "swaggerToTypeScriptClient": {
      "className": "{controller}Service",
      "moduleName": "",
      "namespace": "",
      "typeScriptVersion": 2.0,
      "template": "Angular",
      "promiseType": "Promise",
      "dateTimeType": "Date",
      "nullValue": "Undefined",
      "generateClientClasses": true,
      "generateClientInterfaces": false,
      "generateOptionalParameters": false,
      "wrapDtoExceptions": false,
      "clientBaseClass": "ServiceBase",
      "configurationClass": "",
      "useTransformOptionsMethod": true,
      "useTransformResultMethod": true,
      "generateDtoTypes": true,
      "operationGenerationMode": "MultipleClientsFromOperationId",
      "markOptionalProperties": true,
      "generateCloneMethod": false,
      "typeStyle": "Interface",
      "extendedClasses": [],
      "extensionCode": "ClientApp/app/services/app.services.extension.ts",
      "generateDefaultValues": true,
      "excludedTypeNames": [],
      "handleReferences": false,
      "generateConstructorInterface": true,
      "importRequiredTypes": true,
      "baseUrlTokenName": "API_BASE_URL",
      "output": "ClientApp/app/services/app.services.ts"
    }
  }
}

I think its a problem with your project setup. Can you create a sample project where this can be reproduced?

I am using Angular 4 as well and it seems to be fine. I created an endpoint on my web api endpoint to generate the nswag code. Need to disable it when it goes on production (or add authentication to it)
[SwaggerIgnore]
[Route("api/[controller]")]
public class SwaggerController : Controller
{
    [HttpGet]
    public string Swagger()
    {
        var controllers = from t in Assembly.GetEntryAssembly().GetTypes()
                where t.Name.Contains("Controller")
                select t;

        var settings = new WebApiToSwaggerGeneratorSettings
        {
            DefaultUrlTemplate = "api/{controller}/{action}/{id}",
            DefaultPropertyNameHandling = NJsonSchema.PropertyNameHandling.CamelCase
        };
        var generator = new WebApiToSwaggerGenerator(settings);
        var document = Task.Run(async () => await generator.GenerateForControllersAsync(controllers.ToArray()))
            .GetAwaiter().GetResult();
        var codeSettings = new SwaggerToTypeScriptClientGeneratorSettings()
        {
            ClassName = "{controller}Client",
            GenerateClientInterfaces = true,
            Template = TypeScriptTemplate.Angular,
            UseTransformOptionsMethod = true,
            UseTransformResultMethod = false,
            ClientBaseClass = "ClientBase"
        };
        var codeGenerator = new SwaggerToTypeScriptClientGenerator(document, codeSettings);
        var retVal = codeGenerator.GenerateFile();
        return retVal;
    }
}

@Farshidgolkarihagh thanks for your check.
Just FYI: You can also use the NSwag middlewares (app.UseSwaggerUI()) to generate the spec and serve a UI (and enable it only in dev mode)
https://github.com/RSuter/NSwag/blob/master/src/NSwag.Sample.NetCoreAngular/Startup.cs#L52

Thanks for pointing that out. it is certainly very useful for invoking the endpoints and generating the spec file.

Please provide a sample project to reproduce this

Closing as outdated.


Replace InMemoryReporterMetrics with No Op Reporter Metrics

This was causing a memory leak in a production service where the Zipkin service was unavailable as InMemoryReporterMetrics kept incrementing the messagesDropped.
Since InMemoryReporterMetrics should be used for troubleshooting I think a no-op one is a more sensible default.
This is a trivial chance and I first want some feedback, so I'm not sure if signing a contributor license agreement is required.

@worldtiki Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

I'm not one of the committers but I can say, I think this change will require it to be conditional on a property of some kind, where the current default stays the default. This seems like it's possibly a breaking change for 2.x but might be good to consider whenever 3.x comes along

Issue fixed upstream in https://github.com/openzipkin/zipkin-reporter-java/commit/ba476a00d5985d7f74e42c21ab510fff95fc92d6


Updated type of TranslatePipe to properly represent already handled types

This PR fixes https://github.com/ngx-translate/core/issues/794 and fixes https://github.com/ngx-translate/core/issues/1214.

@ocombe Maybe you can have a quick glance at this? It would really help us out to have this merged and released 👍


New PS scripts for other APIs

DESCRIPTION
New PS scripts for all API's. Full create examples, List-Get in single script, update ru for db-level and container level. Created Common folder, copied scripts which are shared.
After merge I will be removing a number of scripts in SQL folder and submitting a follow up PR to reduce the total number of scripts. All create examples will provision account and database.
Also adding @SnehaGunda for additional review.
CHECKLIST

[ ] This pull request was tested on:

[ ] PowerShell 5.1 on Windows
[X ] PowerShell 6.x on Windows
[ ] PowerShell 6.x on Linux

[X ] Resources not created by the scripts in the pull request are explicitly mentioned in a comment at the head of the file, and have user-supplied variables or function arguments which correspond to the required resource identifiers.
[X ] All user-supplied values are set in variables at the head of the file, after any comments.
[ ] All passwords are user-supplied values, or generated by a secure random string generator.
[X ] All Azure identifiers required to be universally unique are guaranteed to be so.
[X ] All scripts only use commands available in the latest release of the Azure PowerShell Az module. (Command reference)

[ ] I have an exception! (optional - state for which service)
[ ] I'm requesting an exception! (optional - you must include your MS alias for further discussion before PR review)

[ ] All scripts contain only ASCII characters (no 'smart quotes' or other wide characters)

@SnehaGunda  I have made all the recommended changes. Please review/merge. thanks.

@markjbrown looks good to me.
@sptramer can you please merge
#sign-off


CopyrightBug solved_index.html

I Have solved the copyright bug using javascript, now it will display current year. Thankyou
Title and Issue number

Title :  BUG in copyright
Issue No. : #337
Code Stack : Html, Javascript
Close #337 >

Video/Screenshots (mandatory)
Attached

Checklist:

[X] I have mentioned the issue number in my Pull Request.
[X] I have commented my code, particularly in hard-to-understand areas
[X] I have gone through the  contributing.md file before contributing

Additional context (Mandatory )
I love to contribute in this project. Thankyou
Are you contributing under any Open-source programme?
Yes, Under Gssoc24.

closing this and making a new PR just to pass 1 neutral check


user server side compete cert chain

try to fix issue #6

typo: "user server side compete cert chain" => "use server side compete cert chain"

预计与  1.1.3 版本发布


Update all Firefox/Thunderbird packages

Firefox Latest: https://www.mozilla.org/en-US/security/advisories/mfsa2024-55/
Firefox ESR 128: https://www.mozilla.org/en-US/security/advisories/mfsa2024-56/
Firefox ESR 115: https://www.mozilla.org/en-US/security/advisories/mfsa2024-57/
Thunderbird ESR 128: https://www.mozilla.org/en-US/security/advisories/mfsa2024-58/
Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

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

CC @SuperSandro2000
As Mozilla has not released a patch for Thunderbird 115, it will be removed in this PR. The package Betterbird you maintain currently relies on it, so I have updated it to not pull in 115 anymore and marked it as broken for now. They seem to be working on updating to Thunderbird 128 currently, so it can probably be unbroken again.

Dropped in 351205.

Rebased!

Tested firefox and firefox-esr on x86-64-linux and aarch64-linux.

Built and ran thunderbird on x86-64-linux


Create a new devops agent that is public so external people can see the results of the tests

What is affected by this bug?
Right now, external developers can't see why the tests are failing when they do a PR.
In which platform does it happen?
For example:

Azure Data Science Virtual Machine.

Expected behavior (i.e. solution)
we have to create a new agent, start the pipeline there and make the agent public
Other Comments

Hey Folks, I'm ramping on DevOps. So far, I created a test DevOps pipeline to kick the tires and created a dummy pipeline off Recommenders.  I exported some of the existing tests, started setup and met with Jordan Edwards to discuss some of his plans .  I am doing a little more investigation to understand how to best integrate with AzureML.   Yea, and some more ramping on AzureML too....

Update: I'm working with Aimhin and others on DevOps on a generalizable DevOps solution that we can clone and use for subsequent projects. I've also met with the Forecasting team about plans for DevOps.  The great news is that the DevOps team is developing new pipeline tasks that are advantageous for AML.  This includes tasks like use Python 3.6, Identify notebooks to test, copy scripts to artifacts, Azureml-infra-CI, AML Model Deploy, AML Model Register and more. All great additions and tasks we want to consume.  But, it's a couple of more weeks, until those are ready.  Here's what I'm working on while that's going on:

I'm working with the DevOps team on providing inputs on their task development, I'll also be a good tester for their rough, initial releases
Subscription - I'm sorting out how to handle the subscription as when we make devops public we want to make good choices re: subscription iimplication
As this will be public, I'm also investigating issues around how we should think about that.

this is fixed


Request: Paste URL to game when scrape fails

Hey,
First let me say that this is a fantastic project. By far the easiest frontend I've tried to set up and it looks wonderful.
Would it be possible to add an option to paste in a URL for a specific game from either games database when it is not found?

Thanks :) From an usability standpoint that would not make much sense as ES is targeted for use on HTPCs connected to TVs. It should all be controllable using a gamepad or controller. If a game is not found, you can always open the meta data editor from the context menu in the games list and rescrape the game with different queries.

I second this one. I have typed in searches on Raspberry Pi that are identical to what TheGamesDB lists and the scraper still fails to find it. Partial search does not work either.
I would love to see either a url or at least and ID entry so that I could enter that in, for example 6505, and the scraper goes to http://thegamesdb.net/game/6505 and grabs the game information from there.


Installation Issue: Dependency Conflict with hlsvdpro and Compatibility with hlsvdpropy

Hi,
I am encountering a dependency conflict when trying to install the pyamares package. Specifically, pyamares depends on hlsvdpro>=2.0.0, but it appears that hlsvdpro is either unavailable or cannot be found. However, I was able to successfully install hlsvdpropy, which might be a viable option as it is the actively maintained package from the same author.
Steps to Reproduce:

Create a new Conda environment with Python 3.8:conda create -n env_pyamares python=3.8
conda activate env_pyamares

Run the installation command:pip install pyamares

Error Log:
Collecting pyamares
  Using cached pyAMARES-0.3.19-py3-none-any.whl.metadata (6.2 kB)
  ...
ERROR: Cannot install pyamares==0.3.0, pyamares==0.3.16, pyamares==0.3.19 and pyamares==0.3.8 because these package versions have conflicting dependencies.

The conflict is caused by:
    pyamares 0.3.19 depends on hlsvdpro>=2.0.0
    pyamares 0.3.16 depends on hlsvdpro>=2.0.0
    pyamares 0.3.8 depends on hlsvdpro>=2.0.0
    pyamares 0.3.0 depends on hlsvdpro>=2.0.0

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip to attempt to solve the dependency conflict

ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/topics/dependency-resolution/#dealing-with-dependency-conflicts

Tried to install hlsvdpro manually:
pip install hlsvdpro

Result:
ERROR: Could not find a version that satisfies the requirement hlsvdpro (from versions: none)
ERROR: No matching distribution found for hlsvdpro

Successfully installed hlsvdpropy instead:
pip install hlsvdpropy

Result:
Successfully installed hlsvdpropy-2.0.2

Environment Details:

OS: macOS (Apple Silicon)
Python Version: 3.8
Pip Version: 24.3.1
Installed Packages: hlsvdpropy==2.0.2

Expected Behavior:
pyamares should install successfully after satisfying all dependencies.
Actual Behavior:
The installation fails due to a dependency conflict involving hlsvdpro.
Additional Context:

Is hlsvdpropy a replacement for hlsvdpro, or should they coexist?
If hlsvdpro is required, could you clarify its availability and installation instructions?

Thank you for your help!

P.S. Fantastic paper and thanks a lot for this great Python implementation! :)

Thank you for the detailed bug report and your kind words about the paper! :smile:
Sorry for my delay, it took me a while to identify the issue - it is probably related to the ARM64 architecture. The hlsvdpro package currently doesn't have builds available for ARM64 macOS, causing the dependency conflict you're experiencing.
To clarify: hlsvdpro is an optional dependency that provides better performance, but the pure Python hlsvdpropy (which is already included in the package) provides all the necessary functionality. I've fixed the setup.py to handle this platform-specific case and pushed the changes to the dev branch.
Could you please help test this fix by running:
python -m pip install git+https://github.com/HawkMRS/pyAMARES.git@dev#egg=pyAMARES

Since I don't have access to an ARM64 macOS system myself, your feedback would be particularly valuable. Please let me know if this resolves the installation issues on your system.
Thanks for bringing this to my attention - it'll help improve the experience for other Apple Silicon users! :raised_hands:


buying popular coins like bitcoin, ethereum and others

have been following the whole guild on flutter but still cant figure out how to create a buy offer for already existing tokens like bitcoin, ethereum,xrp and others, please i need a guide on these

Hey @yawebs you can only trade assets on the stellar network. Normally you do so by using anchors. They offer different assets like bitcoin or fiat currencies on the stellar network in form of stellar assets. Please have a look to this video that explains the concept of anchors:
https://www.youtube.com/watch?v=9iN9XT1rHHA
You can find different anchors listed here:
https://steexp.com/anchors
Please also read the official stellar documentation to find out more about the concept of anchors and assets on the stellar network. With this SDK you can create buy offers as described here:
https://github.com/Soneso/stellar_flutter_sdk/blob/master/documentation/sdk_examples/manage_buy_offer.md


Add strain exercise

@axtens @glennj The nested lists test cases fail. I've checked the anonymous word being used there but it looks okay to me. What am I missing?

Currently commuting. I suggest refractoring the anon until you've got it working then,  in you must, merge it back in as an anon.

Well it is stack hygiene, but I don't think it's the r-stack that's causing it, otherwise the other tests would fail too.

Just needs a rebase now?

I've rebased. I think there might be a bug somewhere in 8th.
( 5 ' n:= a:indexof nip number? nip )

That works, but:
( 5 ' n:= a:indexof nip null? not nip )

doesn't.

Well if you can demonstrate it, take it to the Problems board and report it. Ron's very quick on support.

ok> help a:exists?

a:exists?
SED: a n -- a T

Returns true if there is a value defined for the index n in the array. This is necessary because requesting an arbitrary index
from an array will always succeed, returning null if the index does not exist as well as if the value stored is actually null. If
the index is negative, it is taken as that many from the end.

ok> help a:exists?

@axtens That's a different thing though, that is checking for an index, not a value.

I've rebased. I think there might be a bug somewhere in 8th.
( 5 ' n:= a:indexof nip number? nip )

That works, but:
( 5 ' n:= a:indexof nip null? not nip )

doesn't.

Let me get this straight: the first nip is to remove the array from the stack; the second nip is to remove either the index or the null; leaving just the boolean result of the presence of 5 in the array.
But I see what you mean. Using null? not gives
PANIC: expected stack depth to be 2
Stack is:
 0 a: 00007f653edb2500 2   [1,2,3]
 1 a: 00007f653edb2840 1   []
 2 a: 00007f653edb2700 1   [ [5,5,5], [5,1,2], [1,5,2], [1,2,5]]
 3 s: 00007f653f03cbf0 1  keeps lists

Where is that empty array coming from?
Oh, got it. the word null? is defined both in the 8th global namespace and the exercism/test namespace
Use G:null? not


Fix error in ROC definition

It was stated that ROC curve shows the contrast between true positive rate vs true negative rate but it should be TPR vs FPR.

Thank you for your contribution!


Asset migrations?

I successfully migrated fields, sections, categories, etc. Thanks for that, it's awesome!
I could however not find any possibility to migrate assets. Is it possible?

First of all I am not sure what you mean. If you mean to migrate physically the assets then, no. If you mean to migrate thing inside assets field then yes.
It is possible, it is a bit hidden in the doc but here it is:

In the case of assets you will need to ensure the matching asset (based on asset source/folder/filename) exists on the destination site.

The actual assets migration isn't present because it is simple enough to migrate on your own. Simple upload the images from your folder to the destination craft again and there you have it.

I'm not sure if I understand that correctly. When I go to "Create Migration" in the CraftCMS Admin menu, I see "Fields", "Sections", "Categories", "Sites", "Asset Volumes", "Image Transforms". So when I create a migration for Asset Volumes, I suppose the assets themselves won't be migrated, correct?
Further, when I go to my entries, mark them all with the checkbox at the top, and click the little cogwheel, I get the option "Create Migration". But I don't get this option when i go to "Assets" on the left.
I understand that I have to copy the actual files manually from one site to the other. I'm only talking about the metadata.
I migrated all my Entries from one site to another, and all the Asset fields were empty. Are Asset field values supposed to be migrated together with my Entries?

I'm not sure if I understand that correctly. When I go to "Create Migration" in the CraftCMS Admin menu, I see "Fields", "Sections", "Categories", "Sites", "Asset Volumes", "Image Transforms". So when I create a migration for Asset Volumes, I suppose the assets themselves won't be migrated, correct?

Yes, this will only migrate the buckets/volumes.

Further, when I go to my entries, mark them all with the checkbox at the top, and click the little cogwheel, I get the option "Create Migration". But I don't get this option when i go to "Assets" on the left.

Yes, as I said you can't migrate the actual assets. By downloading them (somehow) and then uploading them to the SAME buckets and folders.

I understand that I have to copy the actual files manually from one site to the other. I'm only talking about the metadata.

No, this is probably because the only assets meta data you have available is the Title. I also find this as a bit of a drawback. @dgrigg can probably shed more light on this.

I migrated all my Entries from one site to another, and all the Asset fields were empty. Are Asset field values supposed to be migrated together with my Entries?

This is what I wrote in the first post. You have to upload the assets first. Here is a simple flow:

Export asset buckets
Export content (entries)
Download images
Import asset buckets
Upload images to right buckets and folders
Import content

It has to be this way because the way it exports the assets field, example:
"photo":[
  {
    "elementType":"craft\\\\elements\\\\Asset",
    "filename":"github-image.jpg",
    "folder":"AWS S3",
    "source":"awsS3"
  }
]

As you can see there is no "special" reference here. The way it "connects" images is by matching the filename + folder + source, also it will do a check if this exists. If you haven't uploaded your image it result in an empty field.

Hope I helped

@thomaskonrad @ilicmarko  currently Migration Manager does not support exporting assets or their related meta data. I don't foresee a version where the actual binary images would be exported since the whole goal of most systems is too keep large BLOBs out of repositories. You raise an interesting point about the meta data though. That's something I will look into.
When creating entry/category/global content migrations that contain asset fields a reference to the file(s) in the asset field is included in the migration. When the migration runs on the destination side it looks for the matching asset (based on asset volume and filename) in the destination server's asset volumes and if it's found creates the reference to the asset. If no match is found the field will be left blank.

I see, so the whole story in short: Migrate asset volumes, then copy the asset files to the exact same destination folder (e.g., via FTP), and then migrate the entries. If the asset files are there, the entry reference will be kept.
Thanks guys!


Server unit test setup

Added dependencies  for mocha, chai, and supertest.
Added some sample tests.
Use in the terminal 'npm run mocha' to test using mocha.

Looks good


Verify + curate Candle :)

It's already in this list by way of https://github.com/ethereum-lists/tokens
See: https://metadata.p.rainbow.me/token-list/rainbow-token-list.json
We don't accept updates to curate. Verified tokens can be provided upstream, see the codebase for more details.


Hb datahub

Checklist

[ ] The PR conforms to DataHub's Contributing Guideline (particularly Commit Message Format)
[ ] Links to related issues (if applicable)
[ ] Tests for the changes have been added/updated (if applicable)
[ ] Docs related to the changes have been added/updated (if applicable)

@sudotty thanks for the contribution! Could you add some integration tests using the same patterns as the hive / MySQL tests under (metadata-ingestion/tests/integration)


Don't rely on originalQuantile

Issue #82 : originalQuantile appears in Hawkular responses by mistake. Don't rely on that, it will be removed.

Thanks Thomas


Rebuild all non-Google fonts to follow v3 format

Problem
When 3.0.x was released, there were breaking changes that changed how we imported fonts, from fontsource-<package>/<subset>-<weight>-<style>.css to fontsource-<package>/<weight>-<style>.css since it was no longer necessary to specify subsets with the new unicode-range feature.
Unfortunately, the non-Google fonts that were manually added did not follow through with the update and still follows the old subset import method, primarily because they do not have any unicode-range data for us to use.
This has led to confusion from the lack of consistency to cause situations such as #91.
Solution
To resolve this, all these fonts should be repackaged with the default subset used when there isn't any subset specified in the import, irrespective of whether it has unicode-range data or not. That will need changes made to the generic packager and rebuild scripts.

Included in the Fontsource v4 release.


"Different arrow" for e.g. rmint method

Suggestion: Horizontal line rather than bent arrow (indicating this is a 'method' rather than a 'function')

Now a double lined, non directional link connects the object and method node centers. A connected method node loses its autonomous movement and follows its owner.

Methods now have a straight double-line to their owner object.


Add Ukrainian translation

I translated this amazing app in my native language. Did spell-check and reviewed grammar. All is ok. I will make translations for README too, but not soon.

Thanks, merged via #911 (with README and additional fixes for missing translations and plural rules).


fix(platform)!: fixes for correct work totalCreditsOnPlatformQuery on nodejs

Issue being fixed or feature implemented

Currently the getTotalCredits method cannot be called in js-dapi-client, moreover, even if it is prescribed, the implementation of the method call inside the module is not complete
What was done?
The method has been added to PlatformPromiseClient and PlatformMethodsFacade. A number of changes were also made to the function names
How Has This Been Tested?
Manual testing was performed on a local node built from source code
Breaking Changes
No breaking changes
Checklist:

[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have added or updated relevant unit/integration/functional/e2e tests
[x] I have added "!" to the title and described breaking changes in the corresponding section if my code contains any
[x] I have made corresponding changes to the documentation if needed

For repository code-owners and collaborators only

[ ] I have assigned this pull request to a milestone

Nice PR, let's set to target v1.1 once we merge in totalCreditsOnPlatformQuery.


[docs] update sphobjinv CLI invocations to match v2.0 syntax

Changed the sphobjinv CLI invocations to match the current v2.0 syntax.

Thanks for updating both places @bskinn, very helpful!  Sorry for noise on this, my CI is a little outdated / I thought I could squeak in a quick fix but will have to investigate more thoroughly so just reverted it back to original patch :slightly_smiling_face:

It is really astonishing how quickly CI &c. can go stale in subtle ways. Good luck tracking down the glitch!
I'm going to have to look at this linkcheck tox environment you have set up. That's one notable hole in my docs checking atm.

Haha yeah... It's been a couple months though.
Yes the linkcheck builder is super helpful. The flags I have there are worth keeping, IIRC if you don't keep nitpicky flag (-n) then I think it only checks external links. But with it, it checks internal and external.  The only snag I ran into is linking to anchors on like a GitHub README can't be validated, you have to ignore them (see conf.py). They're not real anchor points, they're synthetic (some kind of JavaScript magic).
Feel free to ping me if you're adding it to your build and get stuck :slightly_smiling_face:


Inner Vertical TabLayout

What do you think about a inner toolbar tab? This look like the title of Toolbar, but it's a TabLayout, it changes when ViewPager scroll.

Look like this, but every tab match the TabLayout height and scrolls like a HorizontalTabLayout.

HI, @ppamorim
I am sorry if my interpretation is mistaken.
Are you need a vertical tab layout?
For now, there are no plans to support the vertical.
I'll consider it.

It's very useful to implement with Toolbar + ViewPager, you don't have seen no one apps that's implements this feature?

Yes, it is never seen vertical tab.
Please tell me the app that would be helpful in the image :)

I need to finish this at my fork, to implement at my application to show the case of use.


Remove async lifecycle hook for ROS Details route.

Jira: https://issues.redhat.com/browse/RHCLOUD-26437

Codecov Report
Patch coverage has no change and project coverage change: -0.07 :warning:

Comparison is base (334a7e0) 17.91% compared to head (20fd6cc) 17.84%.

:exclamation: Current head 20fd6cc differs from pull request most recent head d2aea1d. Consider uploading reports for the commit d2aea1d to get more accurate results

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #236      +/-   ##
==========================================
- Coverage   17.91%   17.84%   -0.07%
==========================================
  Files          39       39
  Lines         815      818       +3
  Branches      147      148       +1
==========================================
  Hits          146      146
- Misses        619      621       +2
- Partials       50       51       +1

Impacted Files
Coverage Δ

src/Routes/RosSystemDetail/RosSystemDetail.js
0.00% <0.00%> (ø)

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


texstudio: fix QT5

Motivation for this change
texstudio refused to start due to following error:
qt.qpa.plugin: Could not find the Qt platform plugin "xcb" in ""

Fix applied as described in NixOS wiki.
Things done

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

[x] NixOS
[ ] macOS
[ ] other Linux distributions

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

Notify maintainers
cc @Chaddai

Like this?

Like this?

Yes. Thanks!

Could this be pulled into release-19.09?

Backported with b926503738cc5b19f3ee66f8a5745c41318a82ff and parent.


modules/temperature: add converter node type

It converts temperatures between Kelvin, Celsius, Fahrenheit and
Rankine.
Signed-off-by: Bruno Dilly<EMAIL_ADDRESS>

@glima I understand your idea regarding naming schema. As we've discussed in IRC channel with @edersondisouza , the point on having schema as model/node was to support better cases when a model has multiple readers (one of them has x/temperature and x/humidity). Also it makes even more sense for me when we think about thirdparty modules, when people wouldn't be able to add nodes to temperature/ module.

merged