mrcal_optimize memory leaks when built with asan

I'm using the C api to access mrcal_optimize, using this code. I built libdogleg/mrcal in debug mode locally, using mrcal tag v2.3 and libdogleg HEAD. When I run with asan, I get the following output. I glanced through these and it looks like they're leaks within mrcal, not things I can control from user code? Am I missing code on my end to free objects?
mrcal.c(5414): Threw out some outliers. New count = 1/784 (0.1%). Going again

=================================================================
==164458==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 2736 byte(s) in 1 object(s) allocated from:
    #0 0x7f96676b4887 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
    #1 0x7f96680052d2 in _dogleg_optimize /home/matt/Documents/GitHub/libdogleg/dogleg.c:1169
    #2 0x7f96680055fa in dogleg_optimize2 /home/matt/Documents/GitHub/libdogleg/dogleg.c:1231
    #3 0x7f9665d157f0 in mrcal_optimize /home/matt/Documents/GitHub/mrcal/mrcal.c:5383
    #4 0x558353e0adc2 in mrcal_main(std::span<mrcal_point3_t,<PHONE_NUMBER>3709551615ul>, std::span<mrcal_pose_t,<PHONE_NUMBER>3709551615ul>, cv::Size_<int>, double, cv::Size_<int>) /home/matt/Documents/GitHub/mrcal-java/mrcal_wrapper.cpp:216
    #5 0x558353def06d in homography_test() /home/matt/Documents/GitHub/mrcal-java/mrcal_test.cpp:128
    #6 0x558353def8bd in main /home/matt/Documents/GitHub/mrcal-java/mrcal_test.cpp:161
    #7 0x7f9664c29d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58

Indirect leak of 366580 byte(s) in 25 object(s) allocated from:
    #0 0x7f96676b4887 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
    #1 0x7f9665c24fb5 in cholmod_malloc (/lib/x86_64-linux-gnu/libcholmod.so.3+0x7fb5)

Indirect leak of 8336 byte(s) in 1 object(s) allocated from:
    #0 0x7f96676b4887 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
    #1 0x7f9668004ce7 in allocOperatingPoint /home/matt/Documents/GitHub/libdogleg/dogleg.c:1041
    #2 0x7f9668005445 in _dogleg_optimize /home/matt/Documents/GitHub/libdogleg/dogleg.c:1198
    #3 0x7f96680055fa in dogleg_optimize2 /home/matt/Documents/GitHub/libdogleg/dogleg.c:1231
    #4 0x7f9665d157f0 in mrcal_optimize /home/matt/Documents/GitHub/mrcal/mrcal.c:5383
    #5 0x558353e0adc2 in mrcal_main(std::span<mrcal_point3_t,<PHONE_NUMBER>3709551615ul>, std::span<mrcal_pose_t,<PHONE_NUMBER>3709551615ul>, cv::Size_<int>, double, cv::Size_<int>) /home/matt/Documents/GitHub/mrcal-java/mrcal_wrapper.cpp:216
    #6 0x558353def06d in homography_test() /home/matt/Documents/GitHub/mrcal-java/mrcal_test.cpp:128
    #7 0x558353def8bd in main /home/matt/Documents/GitHub/mrcal-java/mrcal_test.cpp:161
    #8 0x7f9664c29d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58

Indirect leak of 8336 byte(s) in 1 object(s) allocated from:
    #0 0x7f96676b4887 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
    #1 0x7f9668004ce7 in allocOperatingPoint /home/matt/Documents/GitHub/libdogleg/dogleg.c:1041
    #2 0x7f9668005423 in _dogleg_optimize /home/matt/Documents/GitHub/libdogleg/dogleg.c:1197
    #3 0x7f96680055fa in dogleg_optimize2 /home/matt/Documents/GitHub/libdogleg/dogleg.c:1231
    #4 0x7f9665d157f0 in mrcal_optimize /home/matt/Documents/GitHub/mrcal/mrcal.c:5383
    #5 0x558353e0adc2 in mrcal_main(std::span<mrcal_point3_t,<PHONE_NUMBER>3709551615ul>, std::span<mrcal_pose_t,<PHONE_NUMBER>3709551615ul>, cv::Size_<int>, double, cv::Size_<int>) /home/matt/Documents/GitHub/mrcal-java/mrcal_wrapper.cpp:216
    #6 0x558353def06d in homography_test() /home/matt/Documents/GitHub/mrcal-java/mrcal_test.cpp:128
    #7 0x558353def8bd in main /home/matt/Documents/GitHub/mrcal-java/mrcal_test.cpp:161
    #8 0x7f9664c29d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58

Indirect leak of 104 byte(s) in 1 object(s) allocated from:
    #0 0x7f96676b4887 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
    #1 0x7f9668004c4f in allocOperatingPoint /home/matt/Documents/GitHub/libdogleg/dogleg.c:1028
    #2 0x7f9668005445 in _dogleg_optimize /home/matt/Documents/GitHub/libdogleg/dogleg.c:1198
    #3 0x7f96680055fa in dogleg_optimize2 /home/matt/Documents/GitHub/libdogleg/dogleg.c:1231
    #4 0x7f9665d157f0 in mrcal_optimize /home/matt/Documents/GitHub/mrcal/mrcal.c:5383
    #5 0x558353e0adc2 in mrcal_main(std::span<mrcal_point3_t,<PHONE_NUMBER>3709551615ul>, std::span<mrcal_pose_t,<PHONE_NUMBER>3709551615ul>, cv::Size_<int>, double, cv::Size_<int>) /home/matt/Documents/GitHub/mrcal-java/mrcal_wrapper.cpp:216
    #6 0x558353def06d in homography_test() /home/matt/Documents/GitHub/mrcal-java/mrcal_test.cpp:128
    #7 0x558353def8bd in main /home/matt/Documents/GitHub/mrcal-java/mrcal_test.cpp:161
    #8 0x7f9664c29d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58

Indirect leak of 104 byte(s) in 1 object(s) allocated from:
    #0 0x7f96676b4887 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
    #1 0x7f9668004c4f in allocOperatingPoint /home/matt/Documents/GitHub/libdogleg/dogleg.c:1028
    #2 0x7f9668005423 in _dogleg_optimize /home/matt/Documents/GitHub/libdogleg/dogleg.c:1197
    #3 0x7f96680055fa in dogleg_optimize2 /home/matt/Documents/GitHub/libdogleg/dogleg.c:1231
    #4 0x7f9665d157f0 in mrcal_optimize /home/matt/Documents/GitHub/mrcal/mrcal.c:5383
    #5 0x558353e0adc2 in mrcal_main(std::span<mrcal_point3_t,<PHONE_NUMBER>3709551615ul>, std::span<mrcal_pose_t,<PHONE_NUMBER>3709551615ul>, cv::Size_<int>, double, cv::Size_<int>) /home/matt/Documents/GitHub/mrcal-java/mrcal_wrapper.cpp:216
    #6 0x558353def06d in homography_test() /home/matt/Documents/GitHub/mrcal-java/mrcal_test.cpp:128
    #7 0x558353def8bd in main /home/matt/Documents/GitHub/mrcal-java/mrcal_test.cpp:161
    #8 0x7f9664c29d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58

SUMMARY: AddressSanitizer: 386196 byte(s) leaked in 30 allocation(s).

Update: after I applied this diff, the asan leak warnings are no longer present. Looks like the context was being reallocated after discarding outliers and the initial one was never freed?
index 447ed577..2e319b66 100644
--- a/mrcal.c
+++ b/mrcal.c
@@ -5380,6 +5380,9 @@ mrcal_optimize( // out
         double outliernessScale = -1.0;
         do
         {
+            // Make sure we don't reallocate the context by accident?
+            if(solver_context != NULL) dogleg_freeContext(&solver_context);
+
             norm2_error = dogleg_optimize2(packed_state,
                                            Nstate, ctx.Nmeasurements, ctx.N_j_nonzero,
                                            (dogleg_callback_t*)&optimizer_callback, &ctx,

I can also reproduce it with the mrcal/libdogleg from apt (not my locally compiled one) by just setting do_apply_outlier_rejection to false in my code, if that's helpful

Thank you very much for finding this. It's a clear bug; here's the relevant documentation for dogleg_optimize2(): https://github.com/dkogan/libdogleg/blob/3d45754325f9ef1c9c6e8851d09a1cfb749572c4/dogleg.h#L184
I pushed the update to git. I had no plans to do any point releases for 2.3 with bug fixes (such as this one). SHOULD I make point releases? Would it make your life easier if there was a mrcal 2.3.1 that fixes things like this?

Thanks for the quick reply! I don't think this is a blocker for me yet -- can tolerate a leak as long as I don't call calibrate too many times. Do you think that mrcal will have another full release at some point before January? If not, it could be nice to get this fix back ported by then.

Matt @.***> writes:

Do you think that mrcal will have another full release at some point
before January?

No way. 3.0 will have some big improvements, and they're nowhere near
done.

If not, it could be nice to get this fix back ported by then.

OK. I'll make a point release at some point in the next few weeks. Will
let you know.


PandA timestamps not reset prior to experiment

PandA timestamp has its first point still high from the previous run.
This should be reset to 0

This is tracked in https://github.com/PandABlocks/PandABlocks-FPGA/issues/179


Include updated loggregator diagram with syslog configuration

It would be nice to show that metron configures VMs to forward syslog to some destination.

How about this?

Nice !

Doc updated


Fix pagination with signed requests

When using signed requests, the endpoint name must not include the query string.  Currently the query string is not stripped when using Pagination.getNextUrl().
Additionally, the old sig param from the prior request is part of that query string & must be removed so that it is included in the HMAC.

Coverage decreased (-10.8%) to 59.048% when pulling fd393252b7b793941ff6c0034fe2576f0c8f5ac6 on worrel:worrel/remove-old-sig-on-paginate into 5cec759f7212b1472827371587b512c492dea722 on sachin-handiekar:master.


Swift 4 support

Hi, I'm migrating my project to Swift 4 and am getting an error from Carthage when I try to pull in Vinyl saying I'm using an incompatible version of Swift. Any plans to build the Vinyl framework with Swift 4?

This should be fairly straightforward (as a task for me 😅). When do you need this?

Excellent, ideally if we could get it within the next week that would be great. We can delay moving to Swift 4 if you need more time though. Thanks for the quick response :)


Not resilient to modification of globals

The library does not resist destructive changes of the globals. As I initially reported the issue at https://github.com/vitest-dev/vitest/issues/7024 I wanted to make you aware of the problem.
One fix, if you consider that it should be fixed, would be to capture the globals for Intl and Date when the code got imported.
Feel free to close, if the behavior is expected.

If the suggestion is relevant I can propose a fix.

This is absolutely true and we have done similar changes in the main Sinon project to prevent pollution to globals (like methods on the Array.prototype) affecting us. If you want to supply a fix, it should just be a handful of lines.

Meh

Arf strange! Sorry for the inconvenience, I'll have to rework it

Please feel free to revert in case it's blocking you. I'll try to do my best to have something soon

So weird. Works locally:
 npx mocha --timeout 200 test/ integration-test/  -R dot --check-leaks

Ah, works in Node 20. Fails in Node 22.12.0

Sorry, this is not on you. This is from #515

I did not notice this had failed on merge: https://github.com/sinonjs/fake-timers/commits/main/

Found the issue: #518


Add support for component level updation in MeshModels

Signed-off-by: Ashish Tiwari<EMAIL_ADDRESS>Notes for Reviewers
This PR fixes #
Signed commits

[ ] Yes, I signed my commits.

Codecov Report
Base: 16.63% // Head: 12.42% // Decreases project coverage by -4.20% :warning:

Coverage data is based on head (9c358b1) compared to base (960ddbb).
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #6788      +/-   ##
==========================================
- Coverage   16.63%   12.42%   -4.21%
==========================================
  Files         116      116
  Lines       11321    11321
==========================================
- Hits         1883     1407     -476
- Misses       8963     9600     +637
+ Partials      475      314     -161

Flag
Coverage Δ

gointegrationtests
?

integrationtests
?

unittests
12.42% <ø> (ø)

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

Impacted Files
Coverage Δ

mesheryctl/internal/cli/root/system/start.go
1.70% <0.00%> (-57.03%)
:arrow_down:

mesheryctl/internal/cli/root/system/status.go
1.12% <0.00%> (-53.94%)
:arrow_down:

mesheryctl/internal/cli/root/system/update.go
1.17% <0.00%> (-47.06%)
:arrow_down:

mesheryctl/internal/cli/root/system/restart.go
1.88% <0.00%> (-45.29%)
:arrow_down:

mesheryctl/internal/cli/root/system/stop.go
2.22% <0.00%> (-41.49%)
:arrow_down:

mesheryctl/internal/cli/root/root.go
24.24% <0.00%> (-40.91%)
:arrow_down:

mesheryctl/internal/cli/root/system/logs.go
3.26% <0.00%> (-36.96%)
:arrow_down:

mesheryctl/internal/cli/root/version.go
0.00% <0.00%> (-32.95%)
:arrow_down:

mesheryctl/internal/cli/root/system/check.go
1.03% <0.00%> (-23.03%)
:arrow_down:

mesheryctl/internal/cli/root/error.go
0.00% <0.00%> (-20.00%)
:arrow_down:

... and 2 more

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

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

Oh, geez. Not another @Revolyssup browser-breaker PR.


Catchmail only working via cli

When I send mails via command line (via "php -a" or "sendmail" command), mailcatcher does its job, but when I try to do the same via a php file in the browser, my mail() command is returning false.
┌─[kevin.vanransbeeck]
└─▪ php -a
Interactive shell

php ><EMAIL_ADDRESS>"Subject", "Body", "From: john@doe.com");

-> mailcatcher OK
┌─[kevin.vanransbeeck]
└─▪ sendmail<EMAIL_ADDRESS>< test.txt

-> mailcatcher OK
Browsing to a file called mail.php in browser:
<EMAIL_ADDRESS>'Subject from mail', 'Body from mail', 'From: john@doe.com'));

-> returns FALSE, mailcatcher NOT OK
Mailcatcher is installed via gem (latest version).
sendmail_path is correctly set.
When I put the sendmail_path in comment and rely on postfix (I set up a relayhost), the mail is caught by mailcatcher
I'm on OS X El Capitan

I'm experiencing the same thing and am also on OS X 11.11. Prior to upgrading (just this last week) Mailcatcher worked perfectly well.

Related: #246

/usr/local/bin (where gems usually install their scripts) may no longer be in your PATH thanks to OS X. Try using the full patch to catchmail (you can find it using which catchmail on your shell) instead of /usr/bin/env catchmail in your php configuration. If this doesn't resolve your issue feel free to re-open the issue.

┌─[kevin.vanransbeeck]
└─▪ which catchmail
/Users/kevin.vanransbeeck/.rvm/rubies/ruby-2.2.1/bin/catchmail
Set this as my sendmail_path, no luck there. Also tried /usr/local/bin/catchmail but same result.

Rvm does strange things to gem scripts. Have you tried following the instructions for rvm in the readme?

I tried about every instruction there one by one :)

I've just installed mailcatcher and I'm getting this issue too.  I've set the following in PHP.ini
sendmail_path = /Users/douglasradburn/.rvm/rubies/ruby-2.4.0/bin/catchmail -f<EMAIL_ADDRESS>I can send email perfectly fine at CLI (returns TRUE), but it returns FALSE when run in a browser.  Any further suggestions here?

Googling brought me here. I had the same issue but editing my /etc/php/5.6/fpm/php.ini file to this got me working:
sendmail_path = /usr/local/bin/catchmail -f<EMAIL_ADDRESS>

I am also having this issue.  Any ideas? The above doesn't work for me, my path is: /usr/local/rvm/gems/ruby-2.3.1/bin/catchmail -f<EMAIL_ADDRESS>

I am also having this issue.  Any ideas? The above doesn't work for me, my path is: /usr/local/rvm/gems/ruby-2.3.1/bin/catchmail -f<EMAIL_ADDRESS>

Fixed this by using the wrapper, found via SO:
https://stackoverflow.com/questions/24741681/mailcatcher-php-mail-function-returns-false
sendmail_path = /usr/local/rvm/wrappers/default/catchmail

@equinoxmatt
Thanks for the answer. After googling and fixing so many hours this works for me.


snow.coverage_nrel not fully implemented according to reference

The implemented snow coverage and losses functionality refers to Ryberg and Freeman (2017) for implemented improvements to the model by Marion (2013). However Ryberg & Freeman describe a check where snow coverage is set to zero when snow cover on ground (external input data) is zero (otherwise arrays with low tilt angles are estimated to be snow covered for very lonog periods, and horizontal arrays eternally).
Since Ryberg & Freeman are referenced one could assume this functionality is implemented.
My suggestion is that either:

The docstring is adapted to clearly state that described functionality is not implemented.
This is implemented. It basically requires the input to the function to be ground snow depth rather than accumulated snow fall, along with some minor changes. (For compatibility issues the snowfall option could co-exist)

I would be able to fix this myself, but have no experience of Git/GitHub and how to contribute. If anyone can guide me I might take care of the issue - after confirmation by others?
Update Feb 19: I have given it a chance with GitHub and have forked and implemented suggestion 2. Waiting for feedback before proceeding.

Bumping this. From the documentation by Ryberg & Freeman et al. 2017, page 10 of the PDF, "Implementation in SAM" section, they detail the following - is this what you're referring to?

Second, when calculating the snow coverage at the beginning of each time step,
we included an additional check for zero snow depth at that time. We assume that if the snow
depth at that time is zero, then the coverage percentage on the PV array should also be zero. This
check accounts for zero-degree fixed-tilt PV arrays on which, in the original model, snow would
never slide off once it had accumulated. This second check was not required in Marion’s original
model since that model was designed for system tilts between 10° and 45°. However, as we will
discuss in the validation section, with this override the implemented PV snow coverage model is
also effective for flat systems

@belagoof I hope we didn't miss something. I haven't seen a pull request on this issue.
I favor #2.

Bumping this. From the documentation by Ryberg & Freeman et al. 2017, page 10 of the PDF, "Implementation in SAM" section, they detail the following - is this what you're referring to?

@garciaev Yes, that is correct

@belagoof I hope we didn't miss something. I haven't seen a pull request on this issue.
I favor # 2.

@cwhanse I was unsure about the process and waited for confirmation that this was relevant. Will send a pull request soon.

Thanks @belagoof, I think we dropped the ball on this one.

Hi @cwhanse @belagoof hmm I am curious to see this "erroneous permanent snow coverage effect" in action. Maybe I could find a rooftop site or two in our database that has low tilt and gets hit with snow and see how that compares to the predictions. If someone else already has done this validation let me know!
That being said though, to test this new code, I would need access to snow depth not just SnowfallCentimeters. I am guessing this check wouldn't work at if you don't have access to snow depth?

That being said though, to test this new code, I would need access to snow depth not just SnowfallCentimeters. I am guessing this check wouldn't work if you don't have access to snow depth?

Right. I hesitated to speak in favor, because of this point. In the U.S. the weather records include both snow depth and snow fall, so I thought it would be OK to extend the pvlib function to expect snow depth as input.

Yeah I am in the US as well - I think I should look up a snow depth data source then rather than just rely on IBM/The Weather Company's snowfall in cm for some validation, but I agree this additional check won't work without snow depth as input

@janinefreeman @mjprilliman I'm fixing this bug and came across another issue: should the snow fall data be left- or right-aligned? Left-aligned would mean that a timestamp's value is the snowfall that will happen in the next interval, right-aligned means happened in the last interval. From the description of the SAM implementation, I couldn't tell but could have missed it.

I think right-aligned would be the best choice, as that number is being used to determine what's happening with the current timestep, but I'm not sure the model formulation actually specifies.


Improve make_surf_map.py's image path handling

Script make_surf_map.py always uses the bag name to generate folder containing treated images.
Improve by providing ability to generate folder at given path.
This is important as it facilitates data organization when building maps. @rsoussan

@amoravargas confirmed that this was solved


test Eric Anholt Mesa branch on RPi4

https://gitlab.freedesktop.org/anholt/mesa/tree/v3d-opt-sub

compute shaders? (https://gitlab.freedesktop.org/anholt/mesa/tree/v3d-cs)

upd: branches above not integrated to Mesa 19.2 :(

https://github.com/ayaromenok/SDKbuilds/issues/9


Grid and Dialog design

Can we change grid or dialogs design JQuery to Bootstrap. Sorry for bad English

That's not a simple one. You need to have a good knowledge of CSS.
This project might help a bit
https://github.com/jquery-ui-bootstrap/jquery-ui-bootstrap


Admin panel

Needs refinement. I am considering adding LiveView on the list as well for easier access.

@bglusman I wanted to add @nathanl an admin and realized that requires I manually modify the DB. I mentioned to @gemantzu that we should make it easier to add folks to help approve etc.
Where I asked if @nathanl was interested:
https://elixirforum.com/t/please-add-your-company-to-elixir-companies-com/33256/1

@gemantzu what do you think about sending the user an email to notify them of their admin status? Too much?

I like it!

Sorry forgot to respond here.... seems reasonable but also I know there’s work in live_dashboard to support admin stuff and custom panels... but I guess since ours is open to the world that wouldn’t be as good a fit, unless we added a second dashboard not open to the world for admins only.  Also not sure whether that can cover our needs yet but maybe worth exploring/I’d be happy to pair or look at with someone if anyone else is interested in trying that route.

@bglusman you know I :100: support you and all your LiveDashboard efforts. If we need to make an admin protected dashboard to feel out some features, let's do it!

Actually, I was getting ahead of myself there, so far they're just doing refactors in support of general admin pages, the feature itself isn't even started yet as best I can tell, I'll keep in mind whenever it is available though!

@doomspork do you think we should merge this then and come back later if possible?


Feature/config check socket file

Instead of check if u.Path is not empty only, check if file we want too use in unix socket connection exists.
Fail fast, before trying to ping.

I wonder why "Fail fast, before trying to ping"? This function parses the config - it is surprising that it also tried to connect / check if file exists etc.

Yes, It's hard to follow the thoughts I want to say.
I mean we call first ParseURL, NewClient and then Ping, and we fail before calling NewClient and Ping if file does not exist.
Sorry for the confusing message.

Closing since ParseURL should not be concerned whether socket exists or not. You still can ParseURL and check socket with os.Stat before calling NewClient - if you need it.

You still can ParseURL and check socket with os.Stat before calling NewClient - if you need it.

It makes sense. I guess you are right.


Supervisor names not showing up for certain officers in Case Details page

Dependency: updating officers data - to be done on #328
Bug: supervisor is not showing for some officers like “Alijah OConnor (Id = 16886)
Steps to Reproduce:

In the case details view look at the supervisor data and check where the code is pointing to. It should be the officer_number info (first name, last name and officer_number)

It seems like the code is actually pulling the windows_username or other fields when trying to find the supervisor data for an officer.

Learnings: We learned that in this case Alijah's supervisor is Nikia Adams, officer_number 14120. For some reason we are not displaying that info on the supervisor field

duplicate, combined w/ #329


Prediction of multiple outputs dependent on multiple features.

Hello, I have a question. Can this code be used to perform prediction with 8 features and 3 outputs, where each output depends on the 8 features

Hey @wsefw thanks for your interest! Unfortunately, for now the repository can only be used to predict one target (a column y) or to reconstruct the full entire input (8 features in your example).
However, tweaking the first scenario to predict 3 outputs instead of 1 shouldn't require too many changes. I can give you a hand if needed 🤓

Hello! I would like to know if it is possible to use the model for reconstruction but indicating that I am only interested in removing the noise from one of the time series, taking into account the information from the remaining series? Thank you!


CaseyCarter/cmcstl2

https://github.com/CaseyCarter/cmcstl2
https://github.com/microsoft/vcpkg/issues/7268

Currently the 3 major compilers provide a standard implementation of P0896R4, so the only advantage of that library I can think of is C++17 support. The same is for https://github.com/fffaraz/awesome-cpp/issues/784 (C++14). I suggest to close this issue.


Suggestion: Infer generic function type definition from explicit union types

TypeScript Version:  2.5.2
Code
// A generic function that returns the value of an object
function f<T>(v: { value: T }): T {
	return v.value
}

// A function that takes specific input types and returns their value
function g(v: { value: { a: number } } | { value: { b: number } }) {
	return f(v)
}

The function g above returns a type error. This is quite inconvenient sometimes when I'm writing a logical function that takes some specific types (such as g) and calling a utility function (such as f).
Furthermore, it would be nice if the types were inferred through as if g and f were equivalent.
const a = g({ value: { a: 1 } })
const b = g({ value: { b: 1 } })

Check it out here

We try to avoid making inferences to union types because it often leads to incorrect code.
If you explicitly say what the shape of a v is via a constraint, TypeScript will be more forgiving. Give this a try:
// A generic function that returns the value of an object
function f<T extends { value: {} }>(v: T): T["value"] {
	return v.value
}

// A function that takes specific input types and returns their value
function g(v: { value: { a: number } } | { value: { b: number } }) {
	return f(v)
}

Interesting. Well I'm assuming you know better than me so I guess thats how it is haha 👍

I wouldn't put it that way, but it's more a set of tradeoffs that we've observed. 😃
At some point we should add it to the FAQ.

Well if it gives you some perspective, I've run into this problem a few times now when working in a large codebase. This circumstance usually happens when the types { value: { a: number } } and { value: { b: number } } are large interfaces and only a subset of types in a larger union type. I'm working in my little corner of the world and create a function that works specifically for these two types. I run into this type issue and it requires me to refactor this function into a generic, but the interfaces are large including their overlap making it tedious and brittle to reiterate their structure again just for this one function. Does that make sense?


different arguments handling of .use method

I'm working on fix the compatibility issue that currently minibase-create-plugin v2 has.
The only main difference between our plugin systems is 1) that Base's default .use don't support passing plugin options as 2nd argument; 2) base-plugins passes plugin options as third argument. So okey, I can fix that, based on app.isBase and app.isRegistered('base-plugins'), but there's a little problem.
In short: I believe that this last case here should be working too
base.use(fn, options) // work
base.use(name, fn, options) // work
base.use(fn, undefined/or/falsey, options) // not work

which forces me to make ugly things and add more branches to the code
app.use(name, fn || opts, opts)

edit:
In any way, now you can use minibase-create-plugin >=v2 to create Base plugins too, with included registering using isRegistered :)

The only main difference between our plugin systems is 1) that Base's default .use don't support passing plugin options as 2nd argument; 2) base-plugins passes plugin options as third argument. So okey, I can fix that, based on app.isBase and app.isRegistered('base-plugins'), but there's a little problem.

So, to clarify, you created an entire plugin ecosystem and started creating new modules that either have no difference at all, or very little difference, because of a couple of very minor features? (both of which were already planned to be updated to do what you're describing. there are issues detailing these somewhere).

I'm working on fix the compatibility issue that currently minibase-create-plugin v2 has.

lol I think the easiest way to ensure compatibility is to just use base. It's strange that you are creating these modules that are so similar to base and base plugins, instead of collaborating on base and offering reasoning and dialog to support the changes you want to make. It looks like you're just implementing base as I described in the roadmap, which is frustrating - especially when I have to have a discussion about "compatibility" with your competing library. This takes time away from productivity on creating docs or other things we need to get accomplished.

It's not about Base to be compatible with "my" shits.
Basically there's no differences and other issues. Everything is same, everything is just Base plugin. The main thing is that I need very simpler and smaller core which Base will never accept (removing cache-base for example? in my side absolutely everything is plugin on top of thin core which is just even emitter) and I'm totally okey with that, it's totally understandable - there are uses cases and reasons, okey.
As I already said in commit comment earlier today, I'm investing to Base ecosystem - there are no two ecosystems. As you see everywhere is mentioned Base and everything follow the same patterns and principles and signatures.
I started MiniBase for few not so minimal reasons and with future merge with Base in mind. As once I said somewhere in the issues: "we can use MiniBase as core for Base plus few plugins that need to be in the Base core", and it was totally possible until v2 that I'm finishing. I'm not saying such thing won't be still possible after v2, but the biggest difference in v2 is that it not uses prototypes and this - two core things that Base and Assemble needs and relies on. But this not means that all of the already existing dush and minibase plugins not/won't work in Base - they work, maybe want to rename them? It won't be a problem, but don't see why when each of them has baseplugin keyword and somewhere in their readmes Base is mentioned and linked.
Dush plugins was just started and named with dush-* to show the users what one plugin would look like, later just realized that I can base MiniBase on that extensible event emitter.

@tunnckoCore I think it would be great if you would contribute to our projects by debugging issues and submitting pull requests with fixes and feature enhancements that we've discussed, instead of spending more time re-creating a lot of the modules. I know we've had some disagreements on what should be implemented, but I think that's usually due to the amount of time that @jonschlinkert and I have spent discussing things and trying out different solutions before committing the actual code.
Recently, I feel like you've been opening issues and making comments on our projects that you are actually trying to fix in the projects that you've re-created. This gives the impression that you want us to put in the work to solve something so you can use it, instead of working with us to figure out a solution.
You're also bringing up things that you're doing because of specific JavaScript features and wanting to support older node versions. These are things that some people might call bike shedding, but @jonschlinkert and I discuss all the time (because we're nerds) and have used those discussions to create libraries and make architectural decisions that abstract away these issues and make it easier to work with in other libraries.


Option for Staged Builder

It would be great to have an option to generate a "staged builder" (which basically defines interfaces for the order in which methods should be called by the client).
The idea is discussed in the following blog post:
http://blog.crisp.se/2013/10/09/perlundholm/another-builder-pattern-for-java
The immutables-project also has an option for this (but can not be used in all projects):
https://immutables.github.io/immutable.html#staged-builder

Hi chris-koester!
Staged builder is added to version 0.0.6.
Please update and try if it works as expected.


User-defined material parameters support.

Fixes missing user-definer shader params after cloning - a new material method allows to add tracking for the custom parameter. Also, user can define a cloning strategy for this parameters.
I confirm I have signed the Contributor License Agreement.

Closing due to age. Please repopen if you want to revive this PR.


[TC-S-2.4] Test step label has to be updated as per Test Plan

Description:

[ ] TC-S-2.4

Test step 7b - In User prompt,  Test step label has to be updated as per Test plan. It should be DUT transitions to AC1 over 20s Instead of DUT transitions to AC2 over 20.
Steps to reproduce:
Test step 7b
Test Plan References:

https://github.com/CHIP-Specifications/chip-test-plans/blob/master/src/cluster/scenes.adoc#424-tc-s-24-recall-scene-with-transition-time-functionality-with-dut_server

YAML References:

https://github.com/project-chip/connectedhomeip/blob/master/src/app/tests/suites/certification/Test_TC_S_2_4.yaml

PR
https://github.com/project-chip/connectedhomeip/pull/32625

Issue Fixed in PR https://github.com/project-chip/connectedhomeip/pull/32625. Hence closing it.


chore(project): change tvos target to Swift 4.2/deployment target to …

…12.0, add tvos target to podspec file

Btw should we change other pod spec properties, like source, homepage etc?

Btw should we change other pod spec properties, like source, homepage etc?

I wouldn't say so, @metatheoretic what do you think?

I agree. No.


Support subqueries in from and join

:heart: :heart: :heart:

this is huge

This is great! What changes from adapters are required to support this?
I believe we won't be able to do it in MongoDB

@michalmuskala at the adapter level, you will now receive some Ecto.SubQuery structs in from or as the join source, you can just raise in such cases.

We raise on any joins anyway, so it should be fine. Thanks!

Is it possible in ORDER BY and WHERE?

@ionas documentations says that it's impossible, and that seems to be true.


feat: Added Document.from_gcs_multi() method to get multiple wrapped documents from a GCS directory.

Fixes #214 🦕

Note: from_gcs() takes in a GCS directory, but it only works for a single sharded document from a single input document source.
In a GA release, it would be a better practice to have from_gcs() take in any GCS directory and output a list of Wrapped Documents. But this would be a backwards-incompatible change now.

Not sure if it's possible/advisable to have two possible return types for from_gcs() and just have it return a list when there are multiple Wrapped Documents?

Closing out this PR. I don't think it makes sense to add this method because only the end user will know how exactly the GCS directories are set up. For example, if the documents in each directory are shards of the same document or should be treated as separate documents.
Unless the documents are being imported from the Batch Process output, in that case, the user can use from_batch_process_operation() or from_batch_process_metadata().


test: add e2e test "dynamically_provisioned_read_only_volume"

What type of PR is this?
/kind test
What this PR does / why we need it:
add e2e test "dynamically_provisioned_read_only_volume"
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Release note:
add e2e test "dynamically_provisioned_read_only_volume"

• [SLOW TEST:33.902 seconds]
Dynamic Provisioning
/root/go/src/github.com/csi-driver/blobfuse-csi-driver/test/e2e/dynamic_provisioning.go:32
  should create a volume on demand and mount it as readOnly in a pod
  /root/go/src/github.com/csi-driver/blobfuse-csi-driver/test/e2e/dynamic_provisioning.go:78
------------------------------
• [SLOW TEST:29.573 seconds]
Dynamic Provisioning
/root/go/src/github.com/csi-driver/blobfuse-csi-driver/test/e2e/dynamic_provisioning.go:32
  should create a volume on demand
  /root/go/src/github.com/csi-driver/blobfuse-csi-driver/test/e2e/dynamic_provisioning.go:55
------------------------------

Ran 2 of 2 Specs in 63.476 seconds
SUCCESS! -- 2 Passed | 0 Failed | 0 Pending | 0 Skipped
PASS

Ginkgo ran 1 suite in 1m11.005960311s
Test Suite Passed


Enhance channel handling endpoint

[ ] support push sats to the peer during opening
[ ] support setting a fee rate in addition to target confirmation

[ ] improve documentation, especially explain the difference between CLN and LND fee rates. See send coins for example.

[ ] use a Request body instead of query parameters
[ ] support opening private channels
[ ] list-channels should return the current channel status. E.d opening, closing, etc

CLN:
https://lightning.readthedocs.io/lightning-fundchannel.7.html
LND:
https://api.lightning.community/#openchannel

See #199


release fails on cordova/capacitor apps

Hi,
We started using your code-push-server and code-push-cli with capacitor plugin https://github.com/mapiacompany/capacitor-codepush and we found some problems. I believe that these problems are not present when used with the react-native release/plugins.
Most serious one is that second release will fail all the time if the output folder is not named CodePush. So "partial" release functionality is broken.
Steps to reproduce:

prepare code push: code-push app add test-android android cordova
create new folder and file with some content: echo "version 1" > ./test_folder/test_file
create release: code-push release test-android ./test_folder "*"
change file: echo "version 2" > ./test_folder/test_file
release it again: code-push release test-android ./test_folder "*"

there is error on the server, and server instance will stop! (we are not using pm2, just simple node process)
Error: ENOENT: no such file or directory, stat 'C:\....\code-push-demo\workDir\codepush_Ye3hArNTWWsMkBtBAsGeLMEV04BID9dM\e592ede40edcc1a367b8c19d67de83811848f9345b682c39a2efff199a2f8a37\dataCenter\CodePush\test_file'
Emitted 'error' event on ZipFile instance at:
    at C:\...\code-push-demo\node_modules\yazl\index.js:31:26

I tried to investigate and found two problems:
First, this error should not kill whole node process. This is caused by improper error handling on zip file creation: on  https://github.com/shm-open/code-push-server/blob/master/src/core/services/package-manager.ts#L233 it is not sufficient to add error handler to zipFile.outputStream.on('error'...).
If we check how ZipFile is throwing exeption https://github.com/thejoshwolfe/yazl/blob/master/index.js
we can see it used like: if (err) return self.emit("error", err); and util.inherits(ZipFile, EventEmitter);. So to catch these exeptions we need to add error handler on the zipFile instance: zipFile.on('error', (error)=>{ reject(error);}).
After this, the error will not kill whole server. Also after restart of the server everything looks ok-ish, because even if partial release failed to be created, the full release is used as fallback. So if someone is using for example pm2 this error could be unnoticed.
Second problem is error itself. The problem is that on https://github.com/shm-open/code-push-server/blob/master/src/core/utils/security.ts#L186-L189, when you are creating manifest file, the root folder is renamed to CodePush. So in my example of test_folder/test_file, the created manifest would contain something like this:
{
  'CodePush/test_file': 'b03d44cd60d71de68a4aca7808c6f768802f6d6c414430ff8ccea10c1aa57b4c'
}

Then on the https://github.com/shm-open/code-push-server/blob/master/src/core/services/package-manager.ts#L287 in the generateOneDiffPackage function there is comparison of old and new manifest files. The result in my example run is ['CodePush/test_file']. Then this path is used to create zip file containing only changed files. On line https://github.com/shm-open/code-push-server/blob/master/src/core/services/package-manager.ts#L241 there is zipFile.addFile(path.join(baseDirectoryPath, file), slash(file)); but this file does not exist. In my example path is C:\....\code-push-demo\workDir\codepush_Ye3hArNTWWsMkBtBAsGeLMEV04BID9dM\e592ede40edcc1a367b8c19d67de83811848f9345b682c39a2efff199a2f8a37\dataCenter\CodePush\test_file. But without renaming it would be: C:\....\code-push-demo\workDir\codepush_Ye3hArNTWWsMkBtBAsGeLMEV04BID9dM\e592ede40edcc1a367b8c19d67de83811848f9345b682c39a2efff199a2f8a37\dataCenter\test_folder\test_file which exists.
I think if works for you only because during code-push release-react you are writing files to the folder named CodePush. From cli console: node node_modules\react-native\local-cli\cli.js bundle --assets-dest C:\***\Temp\CodePush\CodePush --bundle-output C:\***\Temp\CodePush\CodePush\index.android.bundle .....
But also react native apps do not need the renaming, in that case the renaming is: CodePush->CodePush (if code-push release-react is used or bundle/asset outpus is in CodePush folder). I think the correct fix should be to remove lines https://github.com/shm-open/code-push-server/blob/master/src/core/utils/security.ts#L186-L189.
In real word scenario the cordova builds have builded files in www folder and ionic capacitor .../public folder. In both cases the rename of the folder to CodePush in the manifest paths will result in error on second release.
I found this issue mentioned few times:
https://github.com/shm-open/code-push-server/issues/75#issuecomment-964598455 They "fixed" issue by replacing rename.
the same thing here: https://github.com/lisong/code-push-server/issues/319
The rename code originate from this PR: https://github-com.translate.goog/lisong/code-push-server/pull/236?_x_tr_sl=auto&_x_tr_tl=en&_x_tr_hl=en&_x_tr_pto=wapp
Where they created react native build, but not in CodePush folder. I think the proper solution was either to change output folder, or fix hardcoded CodePush folder in the ios plugin. But still I do not understand how it was possible that they did not get the same error that we have now.
Just to double check if the partial update feature was not destroyed after I removed rename code. I tried it and it works without problems on our capacitor app: (note only one src_app_pages_profile_profile_module_ts file was changed)
VM3:192 result Filesystem.readdir (#100067870)
VM3:203 Objectfiles: (2) ['src_app_pages_profile_profile_module_ts.js', 'src_app_pages_profile_profile_module_ts.js.map'][[Prototype]]: Object
VM3:218 native Filesystem.stat (#100067871)
VM3:225 ObjectcallbackId: "100067871"methodName: "stat"options: {directory: 'DATA', path: 'codepush/download/unzipped/public/src_app_pages_profile_profile_module_ts.js'}pluginId: "Filesystem"[[Prototype]]: Object
VM3:192 result Filesystem.stat (#100067871)
....
VM3:192 result Filesystem.readFile (#100067875)
src_app_pages_profile_profile_module_ts.js:1088 [CodePush] Applying diff update

Thanks!
(I can create pull request if you accept, but I don't know how to test react-native/ios part)

As a data point: I am successfully using this package for cordova and have done multiple releases. My only thought is that I would usually alternative between ios / android release, perhaps the change clears something else which makes this work?
My release commands looks something like:
code-push release -d staging --description "abc" app-android build/bundle/www "*"
I also don't appear to be putting a relative link on my folder (build/bundle/www vs ./build/bundle/www).

@minomikula
Thank you for the investigation!
The proposed fix for the first problem (zipfile) sounds looks good to me, I'd happy to accept a PR for it.
Regarding the second problem (diff package) issue, I have read through the discussion thread(https://github.com/lisong/code-push-server/pull/236), the rename of folder seems necessary to me to get it to work if someone prefer to not using the automated workflow(code-push release-react) but build + upload (react-native bundle +code-push release), where it makes sure the uploaded files matches the expected CodePush/* path at client side and eventually getting the same hash between the server and client.
If the fix for cordova case mentioned in (https://github.com/shm-open/code-push-server/issues/75#issuecomment-964598455, https://github.com/lisong/code-push-server/issues/319#issuecomment-882990480) works, I would like to suggest a safer temporay solution: check current app type and then choose to rename to CodePush or www, it should keep the react-native workflow untouched while fixes cordova issue (maybe ionic capacitor need a seperated app type as its folder structure is different from cordova?). what do you think?

@minomikula apologies, it does look like it is failing to handle partial releases correctly. We are using pm2 so it just restarts after writing the main package so it 'works'.

@minomikula
Thanks for the detailed clarification!
You are right, that "manual" workflow is broken due to the same issue we are discussing here. Please go ahead with PR. I see no reason to reject it.


There are 3 vulnerable dependencies according to nsp

Hi, this package has three vulnerable dependencies according to nsp. Namely, mime, request and hawk which come from the packages<EMAIL_ADDRESS>

Thanks for reporting, @THPubs. How can I check this myself to see which versions are the problematic ones? I ran nsp check in my local @google-cloud/storage directory, and it found no vulnerabilities.

Hi @stephenplusplus You're correct. I also didn't find the issues when I run it on your source code. Anyway here's a screenshot of my nsp result in my app:

Great thanks for the quick update!


can't find cass Solo

From<EMAIL_ADDRESS>on November 25, 2012 11:59:21
11-21 21:30:38.783: E/dalvikvm(959): Could not find class 'com.jayway.android.robotium.solo.Solo', referenced from method cz.romario.opensudoku.test.mytest.setUp
Original issue: http://code.google.com/p/robotium/issues/detail?id=359

From<EMAIL_ADDRESS>on November 26, 2012 04:50:28
Please follow the tutorials on: https://code.google.com/p/robotium/wiki/RobotiumTutorials
Status: Invalid
Owner<EMAIL_ADDRESS>


Litebans Version ?

Would it be possible to get a LiteBans verison of this?
Litebans: https://www.spigotmc.org/resources/litebans.3715/

I'm afraid not, no. I won't be adding support for other plugins, especially paid ones; they can fund their own development.


use another starting point other than main.go

Is your feature request related to a problem? Please describe.
I have a multi-application CLI  for a distributed system. Example usage of this kind of app would be something like:
myapp api
myapp scheduler

The problem is swag init and the library in general has to be pointing at main.go, which for me is a wrapper/entry point to several applications.
Describe the solution you'd like
A way to configure where to look for documentation?
Describe alternatives you've considered
I could go with a different cli structure..

And I will add all of swag document at our README to get more clarity.


Refreshing, please be patient, it may take upto None seconds...

This message is funny. Needs to be fixed:
Successfully installed bypy-1.5.12 certifi-2018.1.18
/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:122: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/security.html#insecureplatformwarning.
  InsecurePlatformWarning
gulliver@laputa:~$ bypy ls
Refreshing, please be patient, it may take upto None seconds...
Authorizing/refreshing with the OpenShift server ...
OpenShift server failed, authorizing/refreshing with the Heroku server ...
Token successfully refreshed

Thanks for feeding back.
Fixed in 5143b7789f1cc2ebfc1c1812294206193c31b84c


Order of Fields while Calculating MD5

In DBManager.php, DBDiff uses SHOW COLUMNS FROM $table to get columns.
Considering the following databases,
DB1:
CREATE TABLE IF NOT EXISTS `aa` (
  `id` int(11) NOT NULL,
  `name` varchar(255) NOT NULL,
  `pass` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

INSERT INTO `aa` (`id`, `name`, `pass`) VALUES (1, 'aa', 'zz');

DB2:
CREATE TABLE IF NOT EXISTS `aa` (
  `id` int(11) NOT NULL,
  `pass` varchar(255) DEFAULT NULL,
  `name` varchar(255) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

INSERT INTO `aa` (`id`, `name`, `pass`) VALUES (1, 'aa', 'zz');

The columns of DB1 is (id, name, pass), and the columns of DB2 is (id, pass, name).
Therefore the MD5 values are MD5('1aazz') for DB1 and MD5('1zzaa').
After calculating diff data column by column, DBDiff will find that the two records are equal.
But DBDiff will still generate SQL
SQL_UP = u"""
UPDATE `aa` SET  WHERE `id` = '1';
"""
SQL_DOWN = u"""
UPDATE `aa` SET  WHERE `id` = '1';
"""

which is not a valid syntax.
I think you can sort the columns before concatenating the columns.
In getChangeDiff in LocalTableData.php, add
        asort($columns1);
        asort($columns2);
        $columnsA   = implode(',', $wrapCast($columns1, 'a'));
        $columnsB   = implode(',', $wrapCast($columns2, 'b'));

Update:
And when we insert data, order of fields should explicitly specified.

Any update on this, I have the same issue?


[Service Bus Extension] Restore project reference

Summary
The focus of these changes is to restore the project reference and the in-flight work to support the isolated hosting model.
References and Related

[Functions] Restore Service Bus binding code after February release (#34482)

API change check
API changes are not detected in this pull request.


Update chart coroot to 0.10.23

This PR contains the following updates:

Package
Update
Change

coroot
patch
0.10.22 -> 0.10.23

Release Notes

coroot/helm-charts (coroot)
v0.10.23
Compare Source
A monitoring and troubleshooting tool for microservice architectures.

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

Edited/Blocked Notification
Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.
You can manually request rebase by checking the rebase/retry box above.
⚠ Warning: custom changes will be lost.


Add specs for EventConverter

Also created Should* extension methods for doing tedious validation
┆Issue is synchronized with this Asana task

So - based on our internal conversation - my understanding is that we should not use runtime generated random values. So those should be changed back, not to zeroes, but some other value.

Which also means my last suggestion is wrong 👎


Delete expired files every hour.

Thanks for working on this @sudoer-zero - a few things before I merge this in:

The production build is failing due to pip violations. Could you fix these please:

Step 11/26 : RUN flake8 . --exclude=migrations
 ---> Running in 0fceaa475ad7
./shifter/settings.py:168:2: W292 no newline at end of file
./shifter_files/models.py:3:1: F401 'django.db.models.functions.Now' imported but unused

I've added in some unit tests now. Could you please add one or two for this. Should basically be the opposite of the upload_file test if you want to use that as a base.
I have never used this library before, but it looks like we will still need to run the following command inside the entrypoint file:

python manage.py crontab add

Review This.
Tell me if any changes are required!


Remove cloud enablement generator

Update blueprint file to remove cloud enablement generator for now in development (for testing purposes)

Codecov Report

Merging #7 into development will not change coverage.
The diff coverage is n/a.

@@             Coverage Diff              @@
##           development       #7   +/-   ##
============================================
  Coverage        96.22%   96.22%
============================================
  Files                2        2
  Lines               53       53
  Branches             5        5
============================================
  Hits                51       51
  Misses               2        2

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 46369a7...7222b3d. Read the comment docs.


Clean SimplePolicy

closes https://github.com/neo-project/neo/issues/963
@erikzhang, @shargon, @igormcoelho, I just left the void ILogPlugin.Log(string source, LogLevel level, string message)
I think that we should also rename this class from SimplePolicy -> Loggers, something like that.
Many people were used to have SimplePolicy as default and a requirement. In this sense, it will be good to change the name for avoiding confusion.

I think that we should use our own branch

@shargon, I prefer to use neo branch, I think it is easy for contributions.
Nowadays, there are not many branches in the project. We just need to remember to clean it.
But if that becomes a requirement I do not mind in using my own repo. But nowadays I prefer using here, looks simpler to me and I do not need to give permissions for other devs to edit.

For me is worst, i use gitkraken and i have no rights with neo branch, in neo-sharp we worked with our own branch and i think that was a good practice

We can just remove the plugin and move logger to neo core.

We can just remove the SimplePolicy plugin and move the logger to ApplicationLogs.


Configure DHCP client identifier via NM

This change removes the /etc/dhclient/dhclient.conf file that
has been unused since the deprecation of dhclient in Fedora from
the 99okd overlay, and replaces it with a NetworkManager config
snippet for configuring NM's DHCP client to use
ipv4.dhcp-client-id=mac.
See also:

https://fedoraproject.org/wiki/Changes/dhclient_deprecation
https://bugzilla.redhat.com/show_bug.cgi?id=1204226

/cc @vrutkovs

/override ci/prow/e2e-aws-upgrade
Disruption tests

/cherry-pick release-4.10


Fix type definitions for expect.d.ts

In the file src/models/Spec.d.ts there is an import:
import { Expect } from '../exports/expect';

However src/exports/expect.d.ts doesn't have a named export called
Expect because it's not imported. This should fix that.
Also: I noticed that the default export function in the JS code takes an extra parameter called spec, so I added those as well with a rather broad any type though.
--
I would like to have this fixed because it fails the linting rules at the moment:
  this.lastRequest.response().should.have.status(201);

Where this.lastRequest is a Spec. So this.lastRequest.response() gives an Expect, but it doesn't really know what type it is because of the wrong type definitions. Therefore the linter fails with the fact that should is called on an any type.
       Linting "flow-tests"...

       .../apps/flow-tests/steps/carrier-steps.ts
         80:5  error  Unsafe member access .should on an `any` value  @typescript-eslint/no-unsafe-member-access
         80:5  error  Unsafe call of an `any` typed value             @typescript-eslint/no-unsafe-call

Nice response time :-) 🏎
TIA for the release.


fix(pegboard): add dc id to pb client

Changes

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#1163  👈
#1162
#1161
#1160
#1159
#1158
#1157
#1156
#1155
#1154
#1153
#1152
#1151
#1150
#1148
#1147
#1146
#1145
#1144
#1143
#1142 : 1 other dependent PR (#1149 )
#1141
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @MasterPtato and the rest of your teammates on  Graphite


add bro

http://bropages.org

Thanks for the suggestion but I’m not using bro and I don’t want to get in the habit of doing so.


[WIP] In seeds.rb, support the creation of multiple org's with standard data sets.

Resolves #1322
Description
The attached source code creates comparable data sets for each of the 2 sample organizations.
In order for this to work I needed to remove the uniqueness constraint on name and email in the Partner model, and disable the tests that test that. Is there a way to reinstate that constraint, but scoped only to the organization?
Type of change

New feature (non-breaking change which adds functionality)

How Has This Been Tested?
The unit tests have been run successfully (after making the modifications to the tests described above).
To See the Changes in the App
...you can log in as any of the users in the sf_org, which at the time of this writing are:
  { email<EMAIL_ADDRESS>organization_admin: true,  organization: @sf_org },
  { email<EMAIL_ADDRESS>    organization_admin: false, organization: @sf_org },

As it turns out, the specific need that triggered the wish for the additional organization turned out to be an illusion. However, I think these changes are still helpful. The code is better structured, and contains a test improvement too.
I understand the value of keeping the seeding speedy, so I've changed the file to create only the sf and pdx organizations, as it was before. However, the refactorings make it very simple to add an organization to be seeded if and when that would be helpful. (I could simplify this even further if we were ok with reusing email addresses across organizations; are we? It might be a good thing to test anyway.)
The code now defaults to creating only the preexisting organizations, pdx and sf. This was done by the following change:
- ORGS_TO_SEED = [pdx_org, dc_org]
+ ORGS_TO_SEED = [pdx_org]

...and removing the dc_org specific code that creates the organization and adds users to it.
Since ORGS_TO_SEED does not contain all the organizations, but only those for which we are populating a "standard" set of data (which excludes sf_org), that constant has been renamed to STANDARD_ORGS_TO_SEED.
If you're ok with it, for consistency, I'd like to add a change to make the remaining non-method sections methods (the creation of base items, organizations, and users) methods.

Having the organizations have identical data could be helpful in a minority of cases, where one wanted to compare the results of different strategies, actions, etc., on the same data. That said, I see your point. However, different data would make it impossible to implement multiple organizations as simply as it is done here. I don't have the time these days to address this anyway, so I suggest we either merge this in preparation for that improvement (I could create a separate issue for that), or if you prefer, abandon it.


Automated cherry pick of #1517: .circleci: save go cache

Cherry pick of #1517 on release/2.10.0.
#1517: .circleci: save go cache

Codecov Report

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

@@               Coverage Diff                @@
##             release/2.10.0   #1519   +/-   ##
================================================
  Coverage                  ?   7.77%
================================================
  Files                     ?     407
  Lines                     ?   61944
  Branches                  ?       0
================================================
  Hits                      ?    4816
  Misses                    ?   56722
  Partials                  ?     406

Flag
Coverage Δ

#aFlag
7.77% <ø> (?)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update ca8f6f4...744c27a. Read the comment docs.

/lgtm
/approve


impl Hash for IndexSet, IndexMap

I think it would be useful for IndexSet, like Vec, to implement Hash. Technically there's no reason IndexMap couldn't either, though I'm not sure how useful it would be practically.
It should be a pretty simple addition, are there downsides?

A hash and equality combination that is consistent needs to be present. I doubt we can or want to do that, because we also want eq rules to be the same as for hashmap(?)

Yep it's one or the other. I hadn't thought about wanting equality to disregard order. I'd have expected otherwise but perhaps it's simpler this way.
Thanks for the clarification.

The open PR rust-lang/rust#48366 is proposing Hash for the standard HashMap and HashSet, using a commutative operation to combine item hashes.  Currently that's just wrapping_add, but it sounds like they want to explore stronger options.

I've been thinking about reintroducing ordermap as a newtype wrapper that does consider the order for PartialEq and Eq, also adding Hash, PartialOrd, and Ord, and now I've published that:
https://crates.io/crates/ordermap/0.5.0


r156

Fixes #4419, by pulling the updated three.js

FYI, if you pull after this is merged, you'll need to run npm ci to update your dependencies, since package-lock.json has been updated.


Fix the editable mode of task-card for superuser

Issue:
Editable mode of task-card for superuser -

Task title can not be edited, on clicking title it redirects super user to task details page.
There is no icon button to come out of editable mode.
On selecting user as a assignee, user's profile picture doesn't reflect correctly corresponding to the assigned user.
There is no spinner/checkmark to indicate the user that data is saving/saved.

Description:

Changes are made to fix all the above issues. For superuser in editable mode, text area for title is shown. User can still navigate to the task details page on click of title by coming out of editable mode.
Separate(X) icon is shown, on click of which user can come out of editable mode.
In Assigned to field, on selecting user from the suggestion list, profile picture also gets reflected correctly.
In all the editable field spinner is shown when data is being saved, and, once successfully saved checkmark is shown. In case of error, toast is shown.

Dev Tested:

[x] Yes

Images/video of the change:
Before Change -
https://github.com/Real-Dev-Squad/website-status/assets/30263070/189ae06b-d27a-433f-b22e-6ba6049d6168
After Change -
https://github.com/Real-Dev-Squad/website-status/assets/30263070/6f7b49bf-c15b-4fcc-9069-32f27192a3c2
When there is error while saving data -
https://github.com/Real-Dev-Squad/website-status/assets/30263070/acb4e06b-8aaf-403b-9c37-ec2a489d585d
Test Coverage Before

Test Coverage After

in Edit mode Text font looks different, can you align that

It's fixed now.

There is toast for success or error why you don't use that as previously we are using that

Why not toast for success also? why we are creating different logic for updates as we have a loader, and success toast already

Why not toast for success also? why we are creating different logic for updates as we have a loader, and success toast already

@vinit717 - It was the requirement told to me by Ankush, as per that we need to show spinner besides editable field when it's being getting saved, and once saved we need to show the checkmark(for few seconds) to indicate that data is being saved.
For error, I am showing toast. If you have any good suggestion to show or make it differently, we can discuss that. Let me know if we need to discuss this.

is this behind feature flag

No, It is not behind feature flag. Will be visible to all users who have the role assigned as superuser.

is this behind feature flag

No, It is not behind feature flag. Will be visible to all users in editmode.

please put this under feature flag

Can you add the test coverage stats?

Can you add the test coverage stats?

@sahsisunny - I have added few test cases and updated the coverage please check. Thank you.

Closing this PR as because of rebase and reverting changes again it's facing some conflicting issues while someone approves the PR.
Opened the new PR - https://github.com/Real-Dev-Squad/website-status/pull/839


Algokit web - please provide installation instructions

When i go to https://developer.algorand.org/algokit/ there are no installation instructions other than subscribe to email (instructions did not come) or watch the video (quite difficult to copy everything from the video).
Can you make single command that install all dependencies and algokit please? Can you update the web please?
Thank you

brew install algorandfoundation/tap/algokit on mac
choco install algokit on windows with chocolatey (this is a bit behind because it's moderated there)
We're working on the docs and will soon be included in the dev portal, thanks for raising it

Also i suggest in the section "All set up?" there should be next step.. the link to https://developer.algorand.org/docs/get-started/algokit/

also @scholtz  all of the detailed main docs are currently on https://github.com/algorandfoundation/algokit-cli, in the meantime you can refer to the docs on readme and docs folder on the repo itself, the website and hosted docs are going to be included on the main portal once everything is consolidated as @Loedn mentioned.
For algokit utils, client generators, templates and etc detailed docs are also already available on respective repos (its just that they aren't consumable directly from portal just yet)

soon

So many "soons"

installation instructions are provided here https://developer.algorand.org/docs/get-started/algokit/ thanks for raising it @scholtz


Ionic v2 - Loading component throw error when trying to present after dismiss

Short description of the problem:
If you try to reuse a Loading component after calling dismiss() on it, it will throw a quite unclear error message.
At first, looking at the docs, I would imagine that the Loading component is reusable and that we only need to call .create() to config the desired look and behavior but It turns out that if the loader is dismissed, you can't use it again. I am not sure if that is a bug or the expected behavior. If it is, I believe something like .dispose() instead of dismiss() would be more clear.
See plunkers below for cases with and without the issue.
What behavior are you expecting?
No error.
Steps to reproduce:

Create a Loader
Call .nav.present(loader) to show it.
Programatically dismiss the loader
Try calling .nav.present(loader) again.

  loading: Loading = Loading.create({
      content: "Please wait..."
    });

  loadData() {
    this.nav.present(this.loading);
    setTimeout(() => {
        this.loading.dismiss();
    }, 1500);
  }

Other information: (e.g. stacktraces, related issues, suggestions how to fix, stackoverflow links, forum links, etc)
Attempt to use a dehydrated detector: HostLoadingCmp_0
ORIGINAL STACKTRACE:
Error: Attempt to use a dehydrated detector: HostLoadingCmp_0
    at DehydratedException.BaseException [as constructor] (https://code.angularjs.org/2.0.0-beta.15/angular2.dev.js:7587:21)
    at new DehydratedException (https://code.angularjs.org/2.0.0-beta.15/angular2.dev.js:4944:14)
    at AbstractChangeDetector.throwDehydratedError (https://code.angularjs.org/2.0.0-beta.15/angular2.dev.js:9807:13)
    at AbstractChangeDetector.detectChangesInRecords (https://code.angularjs.org/2.0.0-beta.15/angular2.dev.js:9686:14)
    at AbstractChangeDetector.runDetectChanges (https://code.angularjs.org/2.0.0-beta.15/angular2.dev.js:9672:12)
    at AbstractChangeDetector.detectChanges (https://code.angularjs.org/2.0.0-beta.15/angular2.dev.js:9661:12)
    at ChangeDetectorRef_.detectChanges (https://code.angularjs.org/2.0.0-beta.15/angular2.dev.js:5280:16)
    at Loading.willEnter (https://npmcdn.com/ionic-angular@2.0.0-beta.6/bundles/ionic.system.js:26406:38)
    at Portal._postRender (https://npmcdn.com/ionic-angular@2.0.0-beta.6/bundles/ionic.system.js:24306:46)
    at Portal._render (https://npmcdn.com/ionic-angular@2.0.0-beta.6/bundles/ionic.system.js:24238:34)
ERROR CONTEXT:

Which Ionic Version? 1.x or 2.x
2.x
.beta.6
Plunker that shows an example of your issue
-With the issue:
http://plnkr.co/edit/LY1wi7fh5AxeRNoDzOan?p=preview
-No issue when always re-creating the loader:
http://plnkr.co/edit/PgRxBtAnglTVaxfelq8i?p=preview
Run ionic info from terminal/cmd prompt: (paste output below)
Cordova CLI: 5.4.1
Gulp version:  CLI version 3.9.0
Gulp local:   Local version 3.9.1
Ionic Framework Version: 2.0.0-beta.6
Ionic CLI Version: 2.0.0-beta.25
Ionic App Lib Version: 2.0.0-beta.15
ios-deploy version: 1.8.4
ios-sim version: 5.0.6
OS: Mac OS X El Capitan
Node Version: v4.0.0
Xcode version: Xcode 7.3 Build version 7D175

IMHO this is the expected behavior for this kind of temporary components like Loading, Alert, etc... However I agree with your comments that this should be explained in the documentation and probably handled somehow in the code (e.g. after the component is dismissed it probably should display a clear error message when trying to reuse/dismiss it again). In your case I would suggest you instead of storing the preconfigured component, to use a method to create it preconfigured as needed instead:
loadData() {
  let loading: Loading = createLoader();
  this.nav.present(loading);
  setTimeout(() => {
    loading.dismiss();
  }, 1500);
}

createLoader() {
  return Loading.create({
    content: "Please wait..."
  });
}

@iignatov I agree with you. After I figured out what was going on, I thought it was the expected behavior, but the error message made it quite troublesome to figure it out.
For my case, I ended up doing what you suggested.

Hello @lricoy and @iignatov ! I have opened an issue over on the ionic-site repo to get better documentation on this behavior: https://github.com/driftyco/ionic-site/issues/597 . Feel free to chime in over there if you have anything to add! I am going to close this issue for now and make the above linked issue the "tracking" issue for this.

How to write unit test case for this "Loading" component? If any examples are available, Please share it.,

It would have been convenient for this to be reusable. In addition, the same issue presents itself when pushing from one ionic page to another, when both pages are using loading controller like so:
LoginPage.ts: Creating/Presenting a Loader while user is authenticated, and then dismissed before pushing homePage
HomePage.ts: Another Loader is created for an api fetch, but fails to dismiss on success of fetch
I solved this by only using the loader on the HomePage.ts Class and the loader worked.

It would have been convenient for this to be reusable. In addition, the same issue presents itself when pushing from one ionic page to another, when both pages are using loading controller like so:
LoginPage.ts: Creating/Presenting a Loader while user is authenticated, and then dismissed before pushing homePage
HomePage.ts: Another Loader is created for an api fetch, but fails to dismiss on success of fetch
I solved this by only using the loader on the HomePage.ts Class and the loader worked.

Is there any way to manually dismiss Loading (without using setTtimeout)?
When I just call the dismiss() method after return of a promise, it throws an error saying this.loading.dismiss( ) is not a function!


Implement an RDS kvbackend

What problem does the new feature solve?
Currently, all metadata is stored in etcd. If we implement an RDS key-value backend, we can allow users to deploy a GreptimeDB cluster without relying on etcd.
What does the feature do?
Implement an kvbackend using RDS(e.g., MySQL, Postgres) .
Implementation challenges
It's a good idea to start by implementing an RDS-based KvBackend:
https://github.com/GreptimeTeam/greptimedb/blob/2ae2a6674e8a780cb93723de9b749b65ea28562e/src/common/meta/src/kv_backend.rs#L40-L155

@WenyXu  Needs more detailed info for developers. For example, the key component or code segment etc.

This issue is very interesting may i work on this one?

This issue is very interesting may i work on this one?
Of course, would you like simply describe your idea or plan?

may i use this client https://crates.io/crates/aws-sdk-rds
I think it's better not rely on a particular RDS client.

This issue is very interesting may i work on this one?

Of course, would you like simply describe your idea or plan?

may i use this client https://crates.io/crates/aws-sdk-rds

I think it's better not rely on a particular RDS client.

This issue is very interesting may i work on this one?

Of course, would you like simply describe your idea or plan?
My idea is very naive, lets use postgres impl as an example:
I want to take connection parameters from the MetasrvOptions and implement the kvBackEnd interface by translating the calls into postgres CRUD sql queries backed by a postgres table.

My idea is very naive, lets use postgres impl as an example: I want to take connection parameters from the MetasrvOptions and implement the kvBackEnd interface by translating the calls into postgres CRUD sql queries backed by a postgres table.

Cool. BTW, this feature could be an epic; you may need to create multiple PRs to implement it and a tracking issue to track it. 👀

I realized we have to implement DistLock trait as well, I wonder how often are lock and unlock getting called i have two options for implement locking on RDS which one do you prefer?
normalized
key string, value bytes, lock owner string, lock expire timestamp
denormalized
kv table
key string, value bytes
lock table
key string, lock owner string, lock expire timestamp

Currently, DistLock is not being used in practice. I think we can hold off on implementing it for now. What do you think? @WenyXu

Currently, DistLock is not being used in practice. I think we can hold off on implementing it for now. What do you think? @WenyXu

Yes, maybe we can implement an RDS kvbackend first.

Currently, DistLock is not being used in practice. I think we can hold off on implementing it for now. What do you think? @WenyXu

Yes, maybe we can implement an RDS kvbackend first.

Thank you for confirming. I wrote some early skeleton code. If this is the approach you wanted to see I can continue if not let me know i can adjust.
https://github.com/GreptimeTeam/greptimedb/pull/4421

Thank you for confirming. I wrote some early skeleton code. If this is the approach you wanted to see I can continue if not let me know i can adjust.

LGTM, let's keep going on 🚀

Hey @WenyXu  i have a postgres impl ready. Do you know what would be a good place to add integration tests? Also I wonder do we have benchmarks for the metasrv? I would like to modify that to include postgres as well.
https://github.com/GreptimeTeam/greptimedb/pull/4421

Hey @WenyXu i have a postgres impl ready. Do you know what would be a good place to add integration tests?

We can set up a Postgres in GitHub Actions. BTW, For kv backend's integration tests, we have some test suites to ensure that all implementation has the same behaviors. https://github.com/GreptimeTeam/greptimedb/blob/b298b35b3bd7d06379030bdb773dcb3f9a26d7f6/src/common/meta/src/kv_backend/etcd.rs#L568-L575

Also I wonder do we have benchmarks for the metasrv? I would like to modify that to include postgres as well. #4421

We don't have the benchmarks for the metasrv for now.

Hey the postgres kvBackEnd is very close to complete https://github.com/GreptimeTeam/greptimedb/pull/4421 i just have two small questions:

the \0 in the kv encodings in test for an example we concat '\0' in here when prefix is not null this will cause the rust postgres driver to error out see. Is is ok for me to process key value  with removing the 0 bytes in vec? or this is uncommon and i can refactor this test?

for range delete if key is b"\0" and range_end is also b"\0" does that means delete everything from the table?

Is is ok for me to process key value with removing the 0 bytes in vec?

Yes, I agree with you, For now, we can carefully remove the tailing \0. However, in the future, we'd be better off refactoring the RangeRequest to something like
struct RangeRequest {
    key: Option<Vec<u8>>,
    range_end: Option<Vec<u8>>,
    ...
}

or
enum RangeRequest{
    KeyRange(...)
    SIngleKey(...)
}

cc @fengjiachun

for range delete if key is b"\0" and range_end is also b"\0" does that means delete everything from the table?

Yes, we are following the etcd's behaviors https://etcd.io/docs/v3.3/learning/api/#key-value-pair

Is is ok for me to process key value with removing the 0 bytes in vec?

Yes, I agree with you, For now, we can carefully remove the tailing \0. However, in the future, we'd be better off refactoring the RangeRequest to something like
struct RangeRequest {
    key: Option<Vec<u8>>,
    range_end: Option<Vec<u8>>,
    ...
}

or
enum RangeRequest{
    KeyRange(...)
    SIngleKey(...)
}

cc @fengjiachun

for range delete if key is b"\0" and range_end is also b"\0" does that means delete everything from the table?

Yes, we are following the etcd's behaviors https://etcd.io/docs/v3.3/learning/api/#key-value-pair

Thank you, I fixed the second case on range delete. I do agree with refactoring RangeRequest. However I think the real problem i am facing is this test condition when the test is called with a actual prefix like here this will produce b"range/20" when i inject that into sql query it will look like where k >= 'range/20' in string format but on byte array of the sql will contain a 0 which will throw off the postgres driver.
Refactoring is great but probably wont help this case, i implement trimming of nulls at the end to bypass this case. All tests passed locally pr is ready for feedback :)


Cannot connect to the Poloniex wamp server at wss://api.poloniex.com

Q
Cannot connect to the Poloniex wamp server at wss://api.poloniex.com
https://stackoverflow.com/questions/39330283/how-to-use-jawampa-java-wamp-implementation-to-subcribe-to-an-event
https://github.com/Matthias247/jawampa/issues/83
https://github.com/Matthias247/jawampa/issues/101
https://github.com/longngo192/magi
A
Use the wss://api2.poloniex.com, it is pure websocket.
subscribe  `trollbox` send `'{"command" : "subscribe", "channel" : 1001}'`.
subscribe `ticker` send  `'{"command" : "subscribe", "channel" : 1002}'`

subscribe `ordre book` send  `'{"command" : "subscribe", "channel" : "BTC_XMR"}'`, `BTC_XMR` mean trade pair.

ref:
https://github.com/dutu/poloniex-api-node/blob/master/lib/poloniex.js
https://stackoverflow.com/questions/42436264/reading-messages-on-poloniex-trollbox-with-python-autbahn-or-other-socket-module

"Finally, there is a deprecated API described in https://poloniex.com/support/api/v1/ using the WAMP protocol and autobahn. This method has been deprecated."
From: https://poloniex.com/support/api/ (section General / Introduction)


[main] Upgrade to latest dependencies

Cron -knative-prow-robot
/cc knative-sandbox/client-writers
/assign $knative-sandbox/client-writers
Produced by: knative-sandbox/knobots/actions/update-deps
Details:
bumping knative.dev/client 33e2c9f...dccf3e3:
  > dccf3e3 upgrade to latest dependencies (# 1296)
  > e829ed2 upgrade to latest dependencies (# 1292)
  > 73f8219 Drop --strict flag on ko (# 1295)
  > eab8a57 upgrade to latest dependencies (# 1291)
  > 1c2381e upgrade to latest dependencies (# 1286)
  > 47a04cb Update knative/community files (# 1290)
  > 405691d Fix domain list output (# 1288)
  > cdc1d4e Add number of instances to describe command (# 1289)
  > 563f1d9 Fix service/revision list output with '-o' param (# 1276)
  > 64c6851 Update knative/community files (# 1279)
  > 33deb82 chore(ci): Update E2E latest release versions for Serving & Eventing (# 1285)
  > 910d136 Upgrade Eventing API from v1beta1 to v1 (# 1284)
bumping knative.dev/hack b6ab329...93ad912:
  > 93ad912 Print java and mvn version (# 65)
  > 86f9adc Fix default codegen pkg dir (# 67)
  > 88c69cd Add debug info for release.sh to investigate https://knative.slack.com/archives/CA1DTGZ2N/p1619160369065000 (# 66)
  > b5f6e25 Update OWNERS_ALIASES to match autogen in community (# 62)
bumping knative.dev/pkg 952fdd9...878c850:
  > 878c850 upgrade to latest dependencies (# 2108)
  > 5a308fa upgrade to latest dependencies (# 2105)
  > cfc1eed Better support for error wrapping with ReconcilerEvents (# 2106)
  > 2a0fc65 Make VolatileTime compatible with controller-gen (# 2104)
  > 78b8140 Use semantic equality for status update retries (# 2103)
  > 0c5259d Allow errors.As to work with reconciler.Events (# 2100)
  > 1afd049 Update knative/community files (# 2097)
  > 942c621 add prometheus condition (# 2088)
  > 554d133 Bump assorted dependencies (# 2096)
  > 2e62ba6 Add possibility to implement a deletion handler in a reconciler. (# 2089)
  > b80a192 Improve state reporting in kube checks (# 2082)
  > b51994e Fix a few comments in reconciler-gen (# 2090)
  > 3a2ae6d resolve cluster domain using env CLUSTER_DOMAIN as a fallback (# 2092)
  > 4302f33 Update knative/community files (# 2091)
  > 728bc4a Update OWNERS_ALIASES to match autogen in community (# 2078)
  > 01dccc5 Add benchmarking for the http tracing handler (# 2080)
  > 9050838 Bump assorted dependencies (# 2086)
  > b8e331a Add skonto to metrics reviewers (# 2061)
  > 4a09d5e Simplify loading of local kubeconfig in sharedmain (# 2079)
  > 5ac4a75 add optional fs() to edit fake ctx for testing purpose (# 2057)

/ok-to-test

/lgtm

/approve


Propigate class constraints for Query handlers from Application

General case of #256
It would be better to enforce these constraints when the Module or Query handler is built, rather than just when makeApp is called.
Based on my very light reading, it looks like at a minimum:

A StoreLeaf query of type Map requires QueryData on the Key type.
A general Leaf query requires HasCodec on the type being returned. (perhaps this could be enforced through a constraint in the QueryResult type?)

Yes this makes sense, I can look into this. I’m out of the office/ open source works for the next week, but will accept any pr that fixes it done before then

Yes this makes sense, I can look into this. I’m out of the office/ open source works for the next week, but will accept any pr that fixes it done before then

I was thinking about this, I think we can make a smart constructor for constructing a module and not expose the constructor directly. I will try to make a PR

I was thinking about this, I think we can make a smart constructor for constructing a module and not expose the constructor directly. I will try to make a PR


Another New Linter: SublimeLinter-contrib-semistandard

https://github.com/Flet/SublimeLinter-contrib-semistandard
Thanks again!

Please make first release and submit a PR to SL package control. Thanks!


discoveryserver: endpoints are inconsistent: /apps/{name}, but /app/{name}/{instanceId}

Describe the bug
I spent time trying to figure out why my requests were 404 because I didn't assume that root paths would be different depending on whether you are getting an app or an instance of it.
Sample
Either of below is fine:
/apps
/app/zipkin
/app/zipkin/f2f5dea6-a14c-4660-9b0d-539e2ab23950
/apps
/apps/zipkin
/apps/zipkin/f2f5dea6-a14c-4660-9b0d-539e2ab23950
However, the rest controller paths are not consistent, so you have to do something very unintuitive. To the untrained eye, I might have to tell you the last is missing the 's'
/apps
/apps/zipkin
/app/zipkin/f2f5dea6-a14c-4660-9b0d-539e2ab23950

Agree

I was going to suggest the same thing, basically add another endpoint to the controller that calls the same function. Thanks folks!


Always copy test data out from jar file

a quick fix for issue of referring to jar uri.
Exception in thread "main" java.lang.IllegalStateException: PinotFS for scheme: jar has not been initialized

at shaded.com.google.common.base.Preconditions.checkState(Preconditions.java:518)

at org.apache.pinot.spi.filesystem.PinotFSFactory.create(PinotFSFactory.java:78)

at

org.apache.pinot.plugin.ingestion.batch.standalone.SegmentGenerationJobRunner.run(SegmentGenerationJobRunner.java:115)

at org.apache.pinot.spi.ingestion.batch.IngestionJobLauncher.kickoffIngestionJob(IngestionJobLauncher.java:96)

at org.apache.pinot.spi.ingestion.batch.IngestionJobLauncher.runIngestionJob(IngestionJobLauncher.java:77)

at org.apache.pinot.tools.admin.command.QuickstartRunner.launchDataIngestionJob(QuickstartRunner.java:183)

at org.apache.pinot.tools.Quickstart.execute(Quickstart.java:154)

at org.apache.pinot.tools.Quickstart.main(Quickstart.java:209)

Verified that quick-start-batch.sh is working fine on my mac laptop.

Verified this works on Mac. The error reported earlier is not seen anymore.
Thanks @fx19880617  for fixing this.


Update fs2-core, fs2-io, ... to 2.5.2

Updates

co.fs2:fs2-core
co.fs2:fs2-io
co.fs2:fs2-reactive-streams

from 2.5.0 to 2.5.2.
GitHub Release Notes - Changelog - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "co.fs2" } ]

labels: library-update, semver-patch

Superseded by #88.


Add a license to the repository

I recently came across your project qiskit-algorithms and I noticed that the repository github.com/holderekt/qiskit-algorithms currently does not have a license specified.
Why Adding a License is Important?
As GitHub documents

Public repositories on GitHub are often used to share open source software. For your repository to truly be open source, you'll need to license it so that others are free to use, change, and distribute the software.

Would be possible to add a valid license to this repository? Probably something really OpenSource such as the Apache 2.0 license would fit really well.
Thanks!

Done

Thanks


Investigate bad bitstream selection by bazel

Description
The title might not be accurate. The problem can usually be reproduced as follows:

checkout master
bazel clean --expunge
run a test (like ROM e2e or manufacturing)
switch to a branch with a relatively big diff with the current one (and difference bitstream?)
run a test
The test will typically fail in non-obvious ways like the ROM not starting. This can materialize as an SFDP header error.
This makes development quite frustrating because it is easy to loose time not realizing the problem and then doing a whole clean/expunge takes a while.

I suspect the problem comes from the bitstream cache because running bazel clean --expunge fixes the problem.

[ ] Investigate root cause
[ ] Find a way to at least tell the user that there is a mismatch and he/she needs to clean/expunge
[ ] Fix the problem

Ping @timothytrippel @engdoreis @jwnrt @johngt

Optionally, you can install a git hook to try to automatically update:
https://opentitan.org/guides/getting_started/setup_fpga.html#using-the-bitstreams-repository

Thanks for the links. Could you explain why it is impossible in bazel, and also what exactly happens that leads to those "broken" bitstream images? Is there no way to at least detect the problem and tell the user to resync?

Hey @pamaury, there's a bit more context here: https://github.com/lowRISC/opentitan/blob/e0ef3881b93f963106d40b8dcc446033a489f937/rules/bitstreams.bzl#L91-L95

Related : https://github.com/lowRISC/opentitan/pull/16863

I've witnessed and experienced myself various situations that could be avoided with git hooks, saving time and resources. And sometimes we already even have such hooks, as was the case here for the bitstream selection [1]. Since git hooks can't be installed by merely cloning the repository, can we instead decide on a minimum set of hooks that everybody should have and then have bazel check that those are installed as part of the build process? By having such a baseline of hooks we'd avoid a lot of these situations (e.g. missing Signed-off by lines that are only detected in CI). Having bazel check the hook installation would quickly ensure that everybody is brought along to that baseline, as it would be very difficult not to trip such check as part of normal development.
[1] https://opentitan.org/guides/getting_started/setup_fpga.html#using-the-bitstreams-repository


Add Documentation for DQL

In the Syntax Options popup in Discover, there is a link to OpenSearch Dashboards Query Language. The current link goes to documentation for the Query DSL (through the docs-beta forward). Query DSL is unrelated to DQL.
As far as I can tell, there is no documentation on DQL and there is no active work being done on this at the moment. We should provide this documentation to users when we can.
Related bug

Closed with #232


Added MBEDTLS_BIGNUM_ALT & related macros for custom bignum functions.

Added the support for MBEDTLS_BIGNUM_ALT and other macros.
This would enables users to use a custom implementation for the lignum API's

Hi @AdityaHPatwardhan and thanks for your contribution! Unfortunately this is not something we can accept at the moment, as we have plans for work that will likely require significant refactorings of the bignum module.
Introducing the module-level replacement BIGNUM_ALT would constrain us a lot, as together with our API compatibility promise it would force us to keep the list of public functions unchanged, even preventing us from adding new functions and using them from other modules. This is a commitment that we really can't make at the moment with this module.
The function-level BIGNUM_xxx_ALT replacements come with fewer constraints, but still restrict changes we may want to make in the future touching these functions.
More generally speaking, the current dynamic is to move away from the _ALT mechanism in favour of PSA Crypto drivers.
So, overall I'm closing this PR but I hope it's clear it's not a comment on the quality of your contribution, which is perfectly sensible on its own, but just comes at the wrong time in the wrong place. Of course, if you have improvements to these functions that could be of general use and that you can share, feel free to open other PRs for that!


"Loading..." label flickers at page load. Does this need a style?

Yes, this needs a style.
The loading component appears because react-i18n is dynamically loading translation files. It's using suspense fallbacks so we can theoretically put this further down the component tree so that anything that doens't require translation (E.g. widget frame) can be displayed with a spinner inside or something similar.
I expect that there is also an option to load the translations for a default language - we should look into this too

Maybe replace all text with placeholders lines when loading?

It would end up looking like this:


🐛 Bug Report: Deletion of collection and recreating it fails and gives a duplication error

👟 Reproduction steps
Collection TEST with same ID exists.
Deleting and creating collection gives error in the logs. The collection is succesfully deleted. But the creation fails.
    private var appwriteClient: Client = Client()
        .setEndpoint(APPWRITE_ENDPOINT)
        .setProject(APPWRITE_PROJECT)
        .setKey(APPWRITE_KEY)
        .setSelfSigned(false)
    val appwriteDatabase = Database(appwriteClient)

            appwriteDatabase.deleteCollection( "TEST")

        val collection: Collection = appwriteDatabase.createCollection(
            collectionId = "TEST",
            name =  "TEST",
            read = ["team:xxx"],
            write = ["team:xxx"],
            permission = "collection"

👍 Expected behavior
Deletion and creation should work. And once the deletion is executed, it should be possible to create a database with same name and id.
👎 Actual Behavior
Shows the following error in Appwrite where it complains about a dupliocate key.
[Error] Type: PDOException
[Error] Message: Duplicate key name '_index2'
[Error] File: @swoole-src/library/core/Database/PDOStatementProxy.php
[Error] Line: 64

🎲 Appwrite version
Version 0.12.1
💻 Operating system
Windows
🧱 Your Environment
Appwrite v0.12.1 - sdk-for-kotlin v0.2.5
Java v11
Kotlin v1.6.10
👀 Have you spent some time to check if this issue has been raised before?
I checked and didn't find similar issue
🏢 Have you read the Code of Conduct?
I have read the Code of Conduct

@Caryntjen The collections when you call delete, there are still some background work going on to remove attributes, indexes and everything related to the collection. so trying to create another immediately might fail, can you wait few seconds before creating again and see if it works?

@lohanidamodar ok thank you for the explanation before v0.12.0 this was not an issue.

@Caryntjen is it fixed in 0.13.0 or does it still persist?

it does still persist.

@Caryntjen This should be fixed in the latest version 1.0.3, please reopen if the issue persists 🙏


docker: downgrade openssl to 1.1.1w

Problem
We have seen numerous segfault and memory corruption issue for clients using libpq and openssl 3.2.2. I don't know if this is a bug in openssl or libpq. Downgrading to 1.1.1w fixes the issues for the storage controller and pgbench.
Summary of Changes:
Use openssl 1.1.1w instead of 3.2.2

See https://github.com/neondatabase/neon/pull/8167


:link: Documentation request - Please add HF model url on codellama model page :pray:

:grey_question: About
codellama has just been released with it 70B version

:point_right: ... but on its [ollama library page](https://ollama.ai/library/codellama) the is no HF url:

:pray: Documentation request

If relatable, add the https://huggingface.co/codellama to the "More information" section:

:bookmark_tabs: Links

https://huggingface.co/codellama/CodeLlama-70b-Instruct-hf
https://huggingface.co/codellama

Related tweet

-- 🦙 Which ollama LLM model has the best score for "coding" activities
SELECT fts_main_model_details.match_bm25(id, 'coding') AS score,
    id, full_desc, url_hf
  FROM model_details
  WHERE score IS NOT NULL
  ORDER BY score desc;

Tweet

ollama.ai/library/codellama:70b-instruct

https://ollama.com/library/codellama thanks @adriens

:clap:


If an incorrect API key is provided then the HttpTransport throws an exception with the response error. This results in a 500 error. Is there a way to avoid the 500 error and just output the response error to the end user?

@pb30 ah yes, thank you. This does work however I get the full error, I just want the message from OpenAI, any suggestions?
OpenAI\Exceptions\ErrorException: The model: gpt-4does not exist in H:\[..]\openai-php\client\src\Transporters\HttpTransporter.php:130 Stack trace: #0 H:\[..]\openai-php\client\src\Transporters\HttpTransporter.php(55): OpenAI\Transporters\HttpTransporter->throwIfJsonError(Array, '{\n "error": ...') #1 H:\[..]\openai-php\client\src\Resources\Chat.php(32): OpenAI\Transporters\HttpTransporter->requestObject(Object(OpenAI\ValueObjects\Transporter\Payload))

try {
....
} catch (\OpenAI\Exceptions\ErrorException $e) {
    $type = $e->getErrorType(); // "invalid_request_error"
    $errorCode = $e->getErrorCode(); // "invalid_api_key"
    ...
}

You gent @pb30. Thank you!


Not able to reset select value

I am not able to reset select value to empty string:
<vuestic-simple-select
 label="Select Name"
 v-model="form.name"
name="name"
ref="nameSelect"
 v-bind:options="nameList">
</vuestic-simple-select>

data () {
  form: {
   name: ''
  }
},
method: {
  onClear() {
     form.name = ''
  }
}

@kahwooi oops, will need to have a look into it, may be a bug
Thanks for spotting!

@kahwooi, the key is methods (see the final s).
And you need the this keyword to refer to the instance:
data () {
  form: {
   name: ''
  }
},
methods: {
  onClear () {
     this.form.name = ''
  }
}

@whoan Sorry, it is a typo.


Add hex-to-zil and fix API calls

Bring up to date with changes made

A future improvement in a follow-up PR could be to get routing from bech32 address URLs working.
i.e. http://localhost:5173/address/zil17r83kqppz84ne69m3l3680mq0jl3t90f0uq0zv should take me to the same place as http://localhost:5173/address/0xf0Cf1b002111Eb3Ce8Bb8fe3A3bf607cBf1595E9


Improve README

Add clear directions for cloning, forking, and installing. Mention specific instructions for each OS (e.g., for Windows, recommend folks to use Git Bash).

This might help.


feat(chromium): roll chromium to r624492

The previous Chromium revision broke a bunch of big sites with TLS errors.
Fixes #3893
Might be related to #3880

Thank you.

I am still getting errors on https sites, this is my code :
(async () => {
  const puppeteer = require('puppeteer');
  //  const url = 'http://cheapinsurancebyzip.info/lead/form-jid-203221202947.php';  **// working**
   const url = 'https://cheapinsurancebyzip.info/lead/form-jid-203221202947.php';    **// not working**

  const browser = await puppeteer.launch({
    executablePath: 'chrome-win/chrome.exe',
    args: [
      '--proxy-server=http://geo.iproyal.com:12344',
    ],
  });

  const page = await browser.newPage();
  await page.authenticate({
    username: 'myusername',
    password: 'mypass',
  });

  await page.goto(url);
  // browser.close();
})();

Versions
"puppeteer": "^19.7.2",
"puppeteer-core": "^19.7.2",