Cannot load .env with JSON value when run deno task build

Project Info

Fresh 1.4.2
Deno 1.36.2
Project template from fresh

Description

This issue happen when i have JSON value in .env and run deno task build.

but using deno task preview or deno task start it's work fine

Fixed by

Add import https://deno.land/std/dotenv/load.ts in dev.ts

Steps
# ./.env
DATA_SECRET={"message":"hello"}

// ./utils/app.ts
export const { message } = JSON.parse(Deno.env.get("DATA_SECRET")!);

// ./routes/index.tsx
import { message } from "../utils/app.ts";

export default function Home() {
  return (
       <>

{message}

    </>
  );
}

Error:
error: Uncaught (in promise) SyntaxError: "undefined" is not valid JSON
export const { message } = JSON.parse(Deno.env.get("DATA_SECRET")!);

.env files aren't automatically read. Therefore the environment variable DATA_SECRET is never set, which means Deno.env.get() returns undefined. And calling JSON.parse(undefined) throws an error as it should. Since you didn't say what you're intended goal of the issue is: Do you expect Fresh to read .env files automatically?

yes, like when run deno task start

I have faced with the same issue. Adding import "$std/dotenv/load.ts"; at the top of dev.ts fixes the issue. But I'd agree that it's good to have it automatically loaded.
preview already runs main.ts directly. start also imports the entrypoint which is the main.ts so in both of those tasks env is loaded but not in build.
src/dev/dev_command.ts:37
if (Deno.args.includes("build")) {
  await build(join(dir, "fresh.gen.ts"), options);
} else {
  await import(entrypoint);
}

The proper way to do this going forward is to add the import "$std/dotenv/load.ts"; into fresh.config.ts. That's loaded whenever fresh runs, regardless of whether it was invoked via build, dev.ts or main.ts.

FYI: We're moving away from dev.ts importing main.ts as it makes dev-specific modifications difficult. Adding it to dev.ts is the right way to go.


Xcode 6 + Cocoapods 0.36.0.beta.1: Too many arguments to function call, expected 0, have 2; Enable Strict Checking of objc_msgSend Calls should be set to NO

Copied from issue on Cocoapods.

Lots of pods use objc_msgSend. Compiling these pods with causes the following error message:
.../Pods/Typhoon/Source/Factory/Block/TyphoonAssemblyDefinitionBuilder.m:198:29: Too many arguments to function call, expected 0, have 2

Is there a sensible way to avoid this problem for all of your pods the maintainers each patch it? Perhaps there should be a directive in the Podfile that lets the user turn off the Strict Checking option in Xcode.

PR #305 should have addressed all these. Still having a problem?

Ah. No — I don't use master, so I haven't got the fix yet. Thanks.


Update sidebars-certifications.js

Harness Developer Pull Request
Thanks for helping us make the Developer Hub better. The PR will be looked at
by the maintainers.
What Type of PR is This?

[ ] Issue
[ ] Feature
[ ] Maintenance/Chore

If tied to an Issue, list the Issue(s) here:

Issue(s)

House Keeping
Some items to keep track of. Screen shots of changes are optional but would help the maintainers review quicker.

[ ] Tested Locally
[ ] Optional Screen Shoot.

@ravilach

Patched in another PR.


Godot crash unsorted double linked list corrupted / corrupted unsorted chunks when consecutive use of await

Godot version
v4.0.alpha5.official [d7d528c15]
System information
Ubuntu, Windows
Issue description
When transitioning between scenes in my project, the game crashes with this error message:
ERROR: Condition "!_p" is true.
   at: _unref (core/variant/dictionary.cpp:244)
ERROR: Condition "!_p" is true.
   at: _unref (core/variant/dictionary.cpp:244)
malloc(): unsorted double linked list corrupted

The game doesn't crash under Windows, but the error message still appears (only _unref though, not malloc).
I then set out to reduce the code as much possible for a minimal reproduction project during which I sometimes also got a "corrupted unsorted chunks" error message. The result is this code:
func test(a_string: String):
	print(a_string)
	await get_tree().process_frame
	await get_tree().create_timer(0.6).timeout

When this function is called consecutively things go wrong.
Under Ubuntu, this happens (after calling the function ~4 times):
 ERROR: Index p_index = 0 is out of bounds (size() = -104630704).
   at: get (./core/templates/cowdata.h:163)

================================================================
handle_crash: Program crashed with signal 4
Engine version: Godot Engine v4.0.alpha5.official (d7d528c15f0e858b52bb0f510ff47e65c2341de1)
Dumping the backtrace. Please include this when reporting the bug on https://github.com/godotengine/godot/issues
[1] /lib/x86_64-linux-gnu/libc.so.6(+0x42520) [0x7f2f4c97a520] (??:0)
[2] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0x3f2ddec] (??:0)
[3] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0x3f2df1f] (??:0)
[4] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0x3eb65b4] (??:0)
[5] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0x3eb66a4] (??:0)
[6] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0x16b6277] (??:0)
[7] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0x15a98b8] (??:0)
[8] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0x3ef3da8] (??:0)
[9] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0x3daa80a] (??:0)
[10] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0x16bcff2] (??:0)
[11] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0x15a98b8] (??:0)
[12] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0x27b1eba] (??:0)
[13] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0x27fc3ab] (??:0)
[14] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0x2835cf2] (??:0)
[15] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0x28281e2] (??:0)
[16] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0xd94e88] (??:0)
[17] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0x3da02e4] (??:0)
[18] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0x3da1ae5] (??:0)
[19] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0xd91f4b] (??:0)
[20] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0xd9521d] (??:0)
[21] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0xd21de0] (??:0)
[22] /lib/x86_64-linux-gnu/libc.so.6(+0x29fd0) [0x7f2f4c961fd0] (??:0)
[23] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x7d) [0x7f2f4c96207d] (??:0)
[24] /home/holly/Desktop/Godot_v4.0-alpha5_linux.64() [0xd3af1e] (??:0)
-- END OF BACKTRACE --
================================================================

When I export a build, something like this happens:
Unicode parsing error: Invalid unicode codepoint a5e3ccc0.

Unicode parsing error: Invalid unicode codepoint 8714a40.

Unicode parsing error: Invalid unicode codepoint 5f1c710.

Unicode parsing error: Invalid unicode codepoint 5f1c790.

Unicode parsing error: Invalid unicode codepoint 5f1c790.

Unicode parsing error: Invalid unicode codepoint 5f1c790.

double free or corruption (fasttop)

Under Windows, this happens (after calling the functions ~10 times):
ERROR: Method/function failed. Returning: ERR_BUG
   at: encode_variant (core/io/marshalls.cpp:1675)
ERROR: Condition "err" is true. Returning: err
   at: encode_variant (core/io/marshalls.cpp:1468)
ERROR: Condition "err" is true. Returning: err
   at: encode_variant (core/io/marshalls.cpp:1468)
ERROR: Condition "err != OK || size > out_buf.size() - 4" is true. Continuing.
   at: _write_out (core/debugger/remote_debugger_peer.cpp:108)

encode_variant

Then testplay sometimes crashes.
Other times I can end testplay gracefully (F8), but then (sometimes) the editor freezes and crashes.
I can only reconstruct the issue with alpha5.official and other official alpha builds.
I cannot reconstruct it with v4.0.alpha.calinou [391633760], so no debug symbols unfortunately.
Steps to reproduce

Start godot from command line to see internal error output
Open the minimal reproduction project
Start test play
Press any key a couple of times until the game crashes / errors are being printed

Minimal reproduction project
godot_4_corrupted_unsorted_chunks.zip

I got an identical behavior on alpha6, Ubuntu, while making a cutscene system that incrementally shows more and more of a character's dialogue by raising visible_characters by 1. After 4-7 characters, it sends those warnings and sometimes the label's whole text turns into weird unicode.

I can confirm this issue with v4.0.alpha8.official [cc3ed63af]

Under Windows, the code works just fine
Under Linux/X11 (Ubuntu 22.04) the engine crashes with the
malloc(): unsorted double linked list corrupted

In my case, it is crashing when using the HTTPClient API after a few times polling:
while http.get_status() == HTTPClient.STATUS_REQUESTING:
    http.poll()
    await get_tree().process_frame

If I replace await get_tree().process_frame with OS.delay_usec(1000) as a "workaround", the crash is gone.

This might be related to #57126
Not sure if there's a build that is close enough to the offical builds to verify?

This might be related to https://github.com/godotengine/godot/issues/57126

yes, very likely. I missed that one - so this issue pretty much looks like a duplicate.
cannot 100% confirmed yet but it's already a pretty safe assumption that this will be fixed with #61003.

Thanks, closing as duplicate of #57126 then.


V9b

Test rebased v9 branch onto latest master

Closing for now after CI sanity check.
Will reopen when it is closer to time to merge.


Filter logs from JSON output

This solves an issue I had where third party frameworks log to stdout when being loaded, causing the "Error while parsing JSON: error.
Making sure what we're parsing looks like a JSON array fixed the problem me.

Thanks for the PR! I think I will the problem you are talking about once I will finish doing refactoring of otest-shim. I don't like such workarounds in general but I think we can try it out but let's do the output fixing only if NSJSONSerialization fails.

Thanks ExtremeMan. This wasn't my favorite approach either - I'd rather have changed the way the two processes communicate, but the things I looked at were tough.
FWIW, I convinced myself that this is actually the right approach when communicating via stdout rather than a workaround or hack. Since we can't control the input in this case, its seems like finding the JSON string in the input could properly be considered "parsing" the output :-).
I updated the PR, and am very interested in seeing if there's a better way to fix this. I have a 100% repro to test out changes.

Sorry for not replying sooner. Looks good, let's try it. Just fix your comment and I will merge.

Hey. Can you please try master? I've changed a way xctool interacts with otest-shim. I think it should fix the problem you are fixing with your changes. Thanks!

Closing since I think I fixed the issue you were trying to address. Please reopen if you think your changes are still required.


Chart size doesn't auto-fit when using with ui-bootstrap

See: http://jsfiddle.net/156sycv1/
Chart size is 600x400 until you change the browser size.

Hey, @pablojim I tried your solution but it doesn't work when I have charts inside an ng-repeat

          <highchart config="item"></highchart>

To work around the ng-repeat issue, you can add something like

$timeout(function() {
$scope.$broadcast('highchartsng.reflow');
}, 10);

to your controller in a place after your charts would have been drawn.

Are there any updates on this issue? Experiencing the same problem, and I don't want to kill animations just so the chart can resize properly. Note in my case I am using zurb foundation, but its the exact same issue

i fix this problem basely as i set
chart: {
events: {
load: function(chart) {
$timeout(function() {
chart.target.reflow();
);
}
}
};
but i think it's not the true answer cuz there are two phenomenon of the chart
1.when i click tab to get diff charts,sometime it's width  is the width of parent's element witdh but sometime  not
2.we can see the reflow action of the  chart by our eyes ,this is uncomfortable for  user~~
so i still wait for the robuts solution

I did used latest solution provided by spademan.
Please do suggest if there is any other robust solution.

still an issue for me as well. Is there a reason this isn't getting resolved?

Same issue here. reflow doesn't help. Related to bootstrap I guess.

this solution helped me when the wrapper is under ng-hide or display:none case
func: function (chart) {
$scope.$evalAsync(function () {
let viewEle = $(chart.container).parents('.ng-hide').first();
viewEle.css({"visibility": 'hidden', "display": 'block'}).removeClass('ng-hide');
chart.reflow();
viewEle.addClass('ng-hide').css({"visibility": '', "display": ''});
});
}
hope it helps someone who might banging head to solve this width issue.

this solution helped me when the wrapper is under ng-hide or display:none
  func: function (chart) {
     $scope.$evalAsync(function () {
       let viewEle = $(chart.container).parents('.ng-hide').first();
            viewEle.css({"visibility": 'hidden', "display": 'block'}).removeClass('ng-hide');
            chart.reflow();
            viewEle.addClass('ng-hide').css({"visibility": '', "display": ''});
       });
  }

+1

along the same vein as @sirishbitra, I found the simplest approach was to just make my own .visibility-hide class to show/hide, which helped highcharts from struggling with the fluid layout.

None of the solutions above works for me,
%> bower install highcharts
bower highcharts#*              cached https://github.com/highcharts/highcharts-dist.git#5.0.7
bower highcharts#*            validate 5.0.7 against https://github.com/highcharts/highcharts-dist.git#*
[PWD: ~/web]
%> bower install highcharts-ng
bower highcharts-ng#*           cached https://github.com/pablojim/highcharts-ng.git#1.0.1
bower highcharts-ng#*         validate 1.0.1 against https://github.com/pablojim/highcharts-ng.git#*

http://codepen.io/DeividasK/pen/NpKZjN?editors=1010

@CaledoniaProject please see #550

@pablojim the css solution worked for me, thank you!


Consider different stable map representations

There are several good options:
IntMap
Stick with an IntMap-backed representation, but use an unpacked non-empty list representation optimized for the no-collision case.
HashMap
Switch to a HashMap-backed representation. This should be considerably simpler, and will probably perform well.
Type fingerprints
At present, stable maps are very unsafe when used with GADTs or certain higher-rank types, because there's an assumption that stable name equality implies equality of the types of the stable names' underlying objects. This could be fixed (using either the IntMap or HashMap representation) by keying the map on both the stable name of the key and the fingerprint of its type's TypeRep. That burns a couple words per key, but it really seems like the Right Thing.
A super-legit version
newtype Map f = Map {unMap :: IntMap (NEL f)}
data SNTriple f = forall a. SNTriple !(TypeRep a) !(StableName a) (f a)
data NEL f
  = NELOne {-# UNPACK #-} !(SNTriple f)
  | NELCons {-# UNPACK #-} !(SNTriple f) (NEL f)

A lookup would search the bucket for something matching both the TypeRep and
the StableName of the target, and there wouldn't need to be any unsafe coercions
anywhere.
A more reasonable version
We really don't want or need to store a TypeRep in the map. We can quite easily write an API for type-indexed fingerprints that offers precisely what we need in the TypeRep interface but more compactly.
newtype Fingerprint a = Fingerprint GHC.Fingerprint.Fingerprint
  deriving (Eq, Ord, Show, Hashable)
type role Fingerprint nominal

fingerprint :: forall a. Typeable a => Fingerprint a
fingerprint = Fingerprint (typeRepFingerprint (typeRep @a))

eqFingerprint :: Fingerprint a -> Fingerprint b -> Maybe (a :~~: b)
eqFingerprint (Fingerprint a) (Fingerprint b)
  | a == b = unsafeCoerce (Just HRefl)
  | otherwise = Nothing

Replacing TypeRep a with Fingerprint a should make the map more compact.
For HashMap, we can't be quite so principled about types unless we want to reimplement HashMap, but that's okay.
data TaggedSN = TaggedSN {-# UNPACK #-} !GHC.Fingerprint.Fingerprint !DynStableName
  deriving (Eq, Ord)
instance Hashable TaggedSN where
  -- This should certainly use the stable name hash; it probably shouldn't use the
  -- type fingerprint hash, but if someone's doing a lot of really crazy stuff with nested
  -- types I guess that's an option.
  hashWithSalt s (TaggedSN fp sn) = ....
newtype Map f = Map {unMap :: HashMap TaggedSN (f Any)}

Try #7 on for size.


How to add pub sub to the server in swift

I want to push updates to client from server, how do I do that using swift

Hey @sukidhar, look for help on Swift forums. This repo is only for Graphiti related issues. Thank you!


When editing medicine quantity for an aid package, an error message that does not make sense shows

[ ] Error message that does not make sense shows: "Already done Pledges amount exceeds the Aid Package Item Quantitiy Update"

This aid package does not have any pledges towards it yet. I'm not sure why this is showing.
To reproduce:

Go to prod, aid package TEST3 | Blood Bank Supplies
Edit the medicine quantity of the first medicine from 1000 to 500.
Receive message in the screenshot attached here.

As of Sept 19, still showing:

Messege Triggered from
https://github.com/LSFLK/MedicinesforLK-AdminAPI/blob/bad7c4b024cd73e27e9c0333d5c9f21dd6d00239/service.bal#L132
Happens due to following method is not evaluating correct at
https://github.com/LSFLK/MedicinesforLK-AdminAPI/blob/bad7c4b024cd73e27e9c0333d5c9f21dd6d00239/db_processor.bal#L435
One suspect scenario is already pledged amount will be zero but when calculating aid package total amount with the update if gives some negative value. may have to check with the real values.

Replicated this :

create aid package with NO pledges
edit quantity/-ies
Get error message (see below)


Allow server to discard large packets

Allow server to discard large packets. Integrated tested locally.

Sometimes client can send large packet to server, and destroy the server. For instance, a client can send a very large MetricsMessage (due to it contains huge amount of exception stack trace), and the MetricsManager will throw OutOfMemoryError and crash when trying to deserialize the byte[].
This pull request allows server to discard large packets.

It is a bug reported by Twitter internally.

@maosongfu - what issue does that resolve?

@kramasamy
Added in the description.

@maosongfu - instead of rejecting the large packet, can we gracefully consume it? In the PR, you are reading the packet size and ignoring it. But it might not work in a TCP connection since you have to consume the entire packet before discarding it, correct?

@kramasamy In fact, here by saying "reject" I mean "discard". It works in TCP connnection (in fact we tested in TCP connection). It still consumes the entire packet in byte array but not to parse (deserialize) them. On the other hand, the client later would also limit the size of message to send.
Besides that, do you have any recommandation how to gracefully consume it? In production, the MetricsManager server can throw exceptoin (OOM Error) when trying to parse it. Or should we try to discard the data byte by byte when reading it from socket?

@maosongfu - if you look at the problem more deeper, it is initiated because user chose to define a metrics that is pretty large. When you collect the metrics and it is beyond a certain size, we should reject right there. This will force the user rethink the metrics and how it needs to be structured into smaller chunks. Thoughts?

@kramasamy
That is a good point; in fact discussed with Bill about this yesterday.
The key is: server could not rely on/expect on client side's behaviors too much; that's not safe. Similarly in practice, the security check is always required on server side, no matter whether client side has the security check or not. For heron, we could not prevent people writing a client sending large packets (well, in fact we can prevent this by careful code reviews and asking people to take their own risks if to use clients not reviewed by us....).
So the plan is 2-step:

Allow server to dicard packets
Allow client to discard packets in future pull requests

Thoughts?

@maosongfu - it is ok to safeguard the server in general -  when some large packets are thrown in. Do all servers need protection like this from various Heron components perspective? If we introduce this, then you need to look at the batch size and number of tuples send from stmgr to Heron instance and vice versa and the config becomes complex.
If this is a purely a metrics manager issue, my suggestion would be to restrict the size of the metriics at the point of receiving it - probably in the api call itself?

I think you need to handle the OOM exception from unpackMessage() instead of checking the bytes, it needs to be handled anyway regardless to size, in theory OOM could happen even for allocating 1 byte.
Also, why 131072? The max IPv4 packet size is 65536 (needs GRO).

@kramasamy

Do all servers need protection like this from various Heron components perspective? Do all servers need protection like this from various Heron components perspective? If we introduce this, then you need to look at the batch size and number of tuples send from stmgr to Heron instance and vice versa and the config becomes complex.

In this pull request's implementation, yes all java servers will have this protection. But by default, the value is Integer.MAX_VALUE; people can use the default value by not passing this config.

If this is a purely a metrics manager issue, my suggestion would be to restrict the size of the metriics at the point of receiving it - probably in the api call itself?

This issue sourced from Metrics Manager, since for data tuple, we have already done size limitation, for instance, # of tuples in a batch, max size in bytes for a batch, and so on. So if we do the control on client's side solely, then we need to update all clients; or all metrics mgr clients, (java, python, ...).
Thoughts?

I think you need to handle the OOM exception from unpackMessage()

On the one hand, OOM is an error (not a checked exception) should be bubbled up rather than be caught and handled. On the other hand, this pull request is only trying to resolve the crashes caused by large packets. In the case you mentioned " it needs to be handled anyway regardless to size, in theory OOM could happen even for allocating 1 byte.", the appropriate solution I believe should be to increase the memory for JVM.

Also, why 131072? The max IPv4 packet size is 65536 (needs GRO).
Just consider 128k is a decent value. Sorry, for packet I mean, the IncomingPacket object defined by us, rather than the IPv4 packet. I could modify the name if needed.

@maosongfu - if all the java servers have this protection, we might be restricting everybody just for one component's behavior, is that correct?

For simplicity, let us restrict the size of the metrics received - then we can tackle the problem of server protection differently or in different PR, thoughts?

sounds good.

@maosongfu - do we need this PR or we can close it?

Let's close it.


Add TXO pointers to inputs

Implement https://github.com/FuelLabs/fuel-specs/pull/249
Downstream: https://github.com/FuelLabs/fuel-vm/issues/59

completed by: https://github.com/FuelLabs/fuel-tx/pull/170


How to clear data from object after receiving data from serial device, so that i can receive the next data?

String data;
static StringBuilder str = new StringBuilder();
/*
 *  Data received from serial port will be received here. Just populate onReceivedData with your code
 *  In this particular example. byte stream is converted to String and send to UI thread to
 *  be treated there.
 */
private UsbSerialInterface.UsbReadCallback mCallback = new UsbSerialInterface.UsbReadCallback() {

    @Override
    public void onReceivedData(final byte[] arg0) {

                try {
                    for (byte b : arg0) {
                        String st = String.format("%02X", b); //Convert Byte to hex
                        str.append(st);
                        data = str.toString();
                    }

                    if (mHandler != null){
                        mHandler.obtainMessage(MESSAGE_FROM_SERIAL_PORT, data).sendToTarget();
                    }

                } catch (Exception e) {
                    e.printStackTrace();
                }
    }
};

You can use the function str.delete(0, str.length()) to clear the data after the for loop.

You can use the function str.delete(0, str.length()) to clear the data after the for loop.

Thanks for the reply. It was a silly question. It was solved on the same day I asked. But forgot to close the issue.

Thanks for the reply. It was a silly question. It was solved on the same day I asked. But forgot to close the issue.


The bot sometimes doesnt disconnect from vc even though it hasn't been queried for a while

a listener for alone in vc should be added aswell as an inactivity timeout

fixed as of alpha 2


[full-ci] Bump reva

Bump reva

MOVE between shares failed: https://drone.owncloud.com/owncloud/ocis/28560/16/5
Tests expect 201 but server sends 502 which I guess should be correct. Need to amend the test scenario?


Define Open

Maybe we can reduce the specs of the government to be open standard and transparent. Is open source enforcing a un-realizable constraint?

I think, open-source being realizable would depend on how far we go with it. And since things will evolve with reality - I think we can start with simpler things that definitely can be realized, and address the questionable ones as the grounds on these are going to keeps shifting as more implementations make it into the real world.


Material Kit's .navbar overrides Bootstrap's .navbar-static-top border-radius

.navbar-static-top don't works normally with Material Kit. Material Kit's .navbar overrides Bootstrap's .navbar-static-top and border-radius not removed and navbar looks ugly.

@miniahmet thank you for pointing out. Please add this class at the end of material-kit.css
.navbar-static-top{
border-radius:0px !important;
margin-bottom: 0px;
}
Then everything will look fine.
Best,
Alex


[aws_cloudwatch] datapoint is never nil, so we can remove if statement

if exportedDatapoint != nil is always true, because earlier if exportedDatapoint == nil ensures that exportedDatapoint gets some value that is not nil.
name_prefix is defined in outer loop simply because it is same in all c.Statistics
(c.AddCloudwatchTimestamp != nil && *c.AddCloudwatchTimestamp) should be valid check for includeTimestamp.

Would need rebase.


Ruby support

wait not yet

now

This is extremely valuable and I am so happy to receive your contribution to this project. Ruby support is definitely a must-have.


ryser_tensor does not pass runtests

https://github.com/benoitseron/Permanents.jl/blob/8a776dfcb63710a582169e484411ea9465a03134/test/runtests.jl#L87
Any idea where the error could come from in the algorithm? I would like to use this as a basis to add grey code

It worked on my machine, what error do you have?

Test threw exception
Expression: ryser_tensor(W) ≈ multi_dim_ryser(U, S)
UndefVarError: U not defined
Stacktrace:
[1] ryser_tensor(W::Array{ComplexF64, 3})
@ Permanents ~/Desktop/Permanents.jl-main/src/Permanents.jl:49

Which is
n = size(U)[1]
Perhaps you meant
'n=size(W)[1]'?
I did not try to understand the Algorithm yet

The test is this:
`n = 7
U = rand_haar(n)
S = rand_gram_matrix(n)
W = Array{eltype(S)}(undef, (n,n,n))

for ss in 1:n
    for rr in 1:n
        for j in 1:n
            W[ss,rr,j] = U[ss, j] * conj(U[rr, j]) * S[rr, ss]
        end
    end
end

@test ryser_tensor(W) ≈  multi_dim_ryser(U, S)`

That's not my point.
Here
https://github.com/benoitseron/Permanents.jl/blob/8a776dfcb63710a582169e484411ea9465a03134/src/Permanents.jl#L88
I don't know why its U but ok it works well with W instead


Add known issue for workload restore and workload sets

Remove the old 8.0.2xx known issue since it's out of support (though I believe that same known issue applies to 8.0.4xx and 17.10).

@baronfel @dsplaisted any notes before we merge this?

@marcpopMSFT Looks good!


Show OGN balance

[X] Test your work and double-check to confirm that you didn't break anything
[X] Wrap any new text/strings for translation
[X] Map any new environment variables with a default value in the Webpack config
[X] Update any relevant READMEs and docs

Description:
Show OGN balance in dropdown and profile.
Profile for account 1 (local blockchain):

Dropdown for account 1 (local blockchain):

Profile for account 2 (local blockchain):

Dropdown for account 2 (local blockchain):

Just corrected a screenshot above


Avoid using .textContent

Text.data is faster:
https://esbench.com/bench/590c9cfe99634800a0347ffc

Indeed, .textContent is an order of magnitude slower. Apart from the code conflicts, is there anything blocking this PR? This is a pretty straight-forward and safe change, as you are checking n.nodeType === 3 (Text node, which is CharacterData and therefore has the data property).


HookWebpackError while running with NextJS starter using npm

Describe the bug
Running a NextJS app with the nativebase starter using npm gives the following error: Internal Server Error on the Browser and HookWebpackError: Cannot read property 'replace' of undefined on the Terminal. The app runs fine using yarn.
To Reproduce
Steps to reproduce the behaviour:

create a Project with nativebase and NextJS using the command:   npx create-next-app -example https://github.com/GeekyAnts/nativebase-templates/tree/master/nextjs-with-native-base
Give your project a name when prompted
After installation run the command npm run dev
The Browser shows Internal Server Error while the CLI shows HookWebpackError: Cannot read property 'replace' of undefined

Expected behaviour
The App should run properly on the browser showing the homepage.
Screenshots

Platform

NativeBase version 3.2.2
Device: MacBook Pro (16-inch, i7, 2019)
OS: MacOS Big Sur 11.4
Browser: Chrome
Browser version: 96.0.4664.110
node : 14.17.5
npm: 6.14.14

Additional information

The project runs successfully using yarn
If yarn is installed on the system, yarn takes over the installation even when npx command is used for installation and therefore it works fine
After installation using yarn, npm commands run perfectly
Deleting the yarn.lock and node-modules and reinstalling the packages gives the error described above
The issue seems to be coming from @expo/next-adapter package

@NishchithRao Same here, but I don't think this is affected by NativeBase. Maybe this issue should moved to https://github.com/expo/expo-cli/tree/master/packages/next-adapter?

Same here

Hi @NishchithRao, Thanks for reporting the issue we will look into it 😄 .

Hey @Viraj-10 any news on that?

Hi @fedarenchyk, We are working on npm template, meanwhile you can use yarn for next.

Hi @Viraj-10 at this time we use yarn for next and we have problem after we connect native-base to our next project, any ideas?

Hi @NishchithRao, @fedarenchyk , @gern132 for now check if following works for you.

keep node version 16.13
update NativeBase to latest v3.3.3.
also follow all the steps mentioned in the docs.
after doing all the steps run yarn  once again.
then run yarn dev
We are fixing all the possible scenario ASAP for next it's high priority.

@Viraj-10 we solved this problem, by adding {webpack5: true} to our next.config, but we got another :(

@Viraj-10 any ideas on ^that^ ?

@Viraj-10 I'm trying to setup nextjs+nativebase in monorepo, my next.config.js is
`const withImages = require("next-images");
const withFonts = require("next-fonts");
const withTM = require("next-transpile-modules")([
"react-native-web",
"native-base",
]);
const { withExpo } = require("@expo/next-adapter");
module.exports = withTM(
withExpo(
withImages(
withFonts({
typescript: {
ignoreBuildErrors: true,
},
experimental: {
externalDir: true,
},
    images: {
      disableStaticImages: true,
    },
    webpack: (config, options) => {
      config.module.rules.push({
        test: /\.mobile.(ts|tsx)$/,
        loader: "ignore-loader",
      });

      if (options.isServer) {
        config.externals = [
          "react",
          "react-native-web",
          ...config.externals,
        ];
      }
      config.resolve.alias["react"] = path.resolve(
        __dirname,
        ".",
        "node_modules",
        "react"
      );
      config.resolve.alias["react-dom"] = path.resolve(
        __dirname,
        ".",
        "node_modules",
        "react-dom"
      );
      config.resolve.alias["react-native-web"] = path.resolve(
        __dirname,
        ".",
        "node_modules",
        "react-native-web"
      );

      return config;
    },
  })
)

)
);`
and I'm getting an error like

Any thoughts on what is wrong?

I have exactly the same issue, my setup is (almost) identical to @Viraj-10

I am getting this error while running nextjs project in production mode


Update DjangoJSONEncoder to be aware of timedelta

Current implementation is not datetime.timedelta aware.  This patch causes timedeltas to be returned as total_seconds()

It's not obvious to me if this is desired behavior or not. Is there any prior art of other serializers doing something similar? You'll need to at least open a Trac ticket that explains it and also add a test.

Indeed it's very unclear to me that this is a reasonable behavior to enabled by default.
An ISO 8601-formatted date has a recognizable format and can be parsed back with reasonable accuracy. A plain integer representing a timedelta doesn't have this property.

datetime.timedelta.total_seconds() returns a decimal floating point, and can absolutely recreate an existing timedelta object with accuracy.
I'm not against some other sort of representation though if there is a better / more standard way, but what is there currently does not handle this case at all.  Some sort of handling of timedeltas should be added.
My argument would be for the 'total_seconds().'  Any serializer use-case that is considering a timedelta can always use a numerical value, and, for most usecases, a numerical value will be simpler to use than a string.
I could certainly add a test case, based on the output of this discussion.  Thanks for your comments.

If you have {"foobar": 21321.34} in a JSON blob you're trying to deserialize, how can you tell whether it was originally a decimal or a timedelta?

To be clear, by "accuracy" I didn't mean "precision" but rather "ability to identify the type of data that was serialized".

That's true, but can also be argued for any other sort of data that isn't in an ISO spec and which is represented by a number.  A timedelta is essentially (conceptually) a number, which is wrapped in a class to make it more useful.
The same can be said of a datetime.date, of course (time since the epoch), but a datetime.date is intended to be absolute (requiring knowledge of the epoch based on the ISO standard) whereas a timedelta is inherently relative (requiring no outside knowledge of standards).

Would it be better to use duration_string() from django.utils.duration? This would be more consistent with datetime, date and time objects, which are serialized using a string format.
Alternatively we could use the ISO duration format (eg timedelta(days=123, seconds=3.3) would be "P123DT00H00M03.3S")

Closing in favor of the other PR as that one at least has tests, etc.


PEP8 styling for time series prep module

This PR is my initial stab at PEP8 styling of the time series module. The changes are introduced in tsStep.py (new name ts_setup.py) and ariaTSsetup.py (wrt changes in module naming etc.)

The new script looks good, but it's hard to follow the changes. What are all the merge branches thing? Can they be squashed?
Main concern is that naming changes need to be propagated to the docs repo.

The new script looks good, but it's hard to follow the changes. What are all the merge branches thing? Can they be squashed?
Main concern is that naming changes need to be propagated to the docs repo.

There are no changes to the code except moving things around but I can try to implement the name change as the last fix after every one is ok with the changes. I agree, the cascading effects on the docs side would require attention as well.
Other than that, working on the Merge branch commits, which shouldn't have been there to begin with, but rebase seem to misbehave. May delete this PR and issue a new one if can't resolve on this one.


non-deterministic crashing on iphone XS running iOS 16.1.1

I've had some weird experiences running the app on my personal iPhone. For a while looking at any canyon details page caused it to crash consistently, then the bug went away. I'll dig through the crash logs and see what I can find.

Won't fix.


feature request: allow specifying the start channel number

would be cool if we could name the starting channel number for each stream set...

Resolved with 0e24cfb32d56d4a64b85c5a51db9d00c7b9ced71


how not return the source field？

Please use the following questions as a guideline to help me answer
your issue/question without further inquiry. Thank you.
Which version of Elastic are you using?

[x] elastic.v7 (for Elasticsearch 7.x)
[ ] elastic.v6 (for Elasticsearch 6.x)
[ ] elastic.v5 (for Elasticsearch 5.x)
[ ] elastic.v3 (for Elasticsearch 2.x)
[ ] elastic.v2 (for Elasticsearch 1.x)

Please describe the expected behavior
don't return source field
Please describe the actual behavior
err:es search project err:elastic: Error 400 (Bad Request): Expected [START_OBJECT] but found [VALUE_BOOLEAN] [type=parsing_exception]
Any steps to reproduce the behavior?
In this way, I can get the result
	searchService.Source(false)
	searchService.Query(boolQuery)

But in this way,I get an error（err:es search project err:elastic: Error 400 (Bad Request): Expected [START_OBJECT] but found [VALUE_BOOLEAN] [type=parsing_exception]）
         //searchService.Source(false)
	searchService.Query(boolQuery)

how not return the source field？

I think you might want to use FetchSource(false) and its Include and Exclude functions. See https://github.com/olivere/elastic/blob/release-branch.v7/fetch_source_context_test.go for some tests.


inconsistent min zoom level

Describe the bug
min zoom level is inconsistent in different resolution.
To Reproduce
found that the openlayer will have behavior that it got different min zoom level in different resolution
when in 100% zoom of browser, the min zoom of openlayer is look like this.

when in 75% zoom, the min zoom level looks like this and can not zoom in any further.

Expected behavior
When in different resolution, the min zoom level should be consistent

This is not a bug, it is how OpenLayers handles the device pixel ratio. When you zoom out the browser view (e.g. to 75 %), the device pixel ratio increases. So tiles from a higher resolution will be loaded.
Unrelated with that, the minimum viewable zoom is determined by the world extent, to make sure that no more than the width of one world is visible. If you want to zoom out more, configure the view with multiWorld: true, and you'll see that a 75% browser view will accommodate more worlds than when viewing at 100%.


Support for composite index, node key constraints, existence constraints

Support for autoindexing update config, composite indexes, node key constraints and existence constraints.
Description

Refactor AutoIndexManager to make handling of different indexes and constraints easier.
Improve testing infrastructure by providing BaseAutoIndexManagerTest
Support for composite indexes
@CompositeIndex({"name", "age"})
node key constraints
`@CompositeIndex(properties = {"name", "age"}, unique = true)
existence constraints
@Required String description
Related Issue
See #398

Motivation and Context
Provide support for indexes and constraints available in Neo4j

How Has This Been Tested?
See *AutoIndexTest test classes.

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] My code follows the code style of this project.
[x] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.
[ ] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

Not ready for merge - node key tests should not run against Neo4j 3.1.

Also need to consider if it should be possible to make a node key an id of an entity - see #390.
But it is a larger piece of work


Failed to unRoot

The app still could detect the device has been Rooted. May I know how could I check why it is not working?
ENV
Galaxy S4
Rom: Android 5.0.2 CyanogenMod (12-20150731-UNOFFICIAL-i9500)
Xposed: 3.0 alpha4
Galaxy S6
ROM: Android 6.0.1
Xposed: 3.0 alpha4

Which app are you having issues with? Can you provide the APK? Also, have you confirmed the app is using RootBeer?

I am afraid I cant provide it due to contract agreement. But by de-compling the apk, I could see RootBeer library is used.
Is there a way for me to figure out why it did not work properly?

Understood. Can you confirm that RootBeer is the only library performing the root checking? I've often seen multiple methods used in combination.
If you're confident it's only RootBeer, can you try to find a version? Also, can you check if there are any errors in a logcat?

It looks like they have implemented other root checking techniques.
Btw, UnRootBeer could successfully bypass RootBeer Sample App.


Prices undefined fetching crawler_cache_${crawler} table

I am trying using to use the Ulixee client to fetch the data from the cache of my crawler, but it returns this error:
I tried adding basePrice: 0  and that didn't help. I also tried testing it in docker vs local on my machine and it did not change anything either.
TypeError: Cannot read properties of undefined (reading 'prices')
    at QueryRunner.getCallPricing (/app/ulixee/datastore/core/lib/QueryRunner.ts:255:7)
    at QueryRunner.finalize (/app/ulixee/datastore/core/lib/QueryRunner.ts:201:28)
    at DatastoreApiHandler.handler (/app/ulixee/datastore/core/endpoints/Datastore.stream.ts:65:26)
    at async DatastoreApiHandler.handler (/app/ulixee/node_modules/specification/utils/ValidatingApiHandler.ts:34:12)
    at async ConnectionToClient.handleRequest (/app/ulixee/node_modules/net/lib/ConnectionToClient.ts:71:14)
------REMOTE CORE---------------------------------
  at Function.reviver (/home/liamt/Websites/grailed-data-ulixee/client/node_modules/commons/lib/TypeSerializer.ts:251:26)
    at JSON.parse (<anonymous>)
    at Function.parse (/home/liamt/Websites/grailed-data-ulixee/client/node_modules/commons/lib/TypeSerializer.ts:31:17)
    at WsTransportToCore.onMessage (/home/liamt/Websites/grailed-data-ulixee/client/node_modules/net/lib/WsTransportToCore.ts:105:36)
    at WebSocket.emit (node:events:517:28)
    at WebSocket.emit (node:domain:489:12)
    at Receiver.receiverOnMessage (/home/liamt/Websites/grailed-data-ulixee/client/node_modules/ws/lib/websocket.js:1220:20)
    at Receiver.emit (node:events:517:28)
    at Receiver.emit (node:domain:489:12)
    at Receiver.dataMessage (/home/liamt/Websites/grailed-data-ulixee/client/node_modules/ws/lib/receiver.js:596:14)
------CONNECTION----------------------------------
  at new Resolvable (/home/liamt/Websites/grailed-data-ulixee/client/node_modules/commons/lib/Resolvable.ts:19:18)
    at createPromise (/home/liamt/Websites/grailed-data-ulixee/client/node_modules/commons/lib/utils.ts:147:10)
    at PendingMessages.create (/home/liamt/Websites/grailed-data-ulixee/client/node_modules/net/lib/PendingMessages.ts:47:44)
    at ConnectionToCore.sendRequest (/home/liamt/Websites/grailed-data-ulixee/client/node_modules/net/lib/ConnectionToCore.ts:158:50)
    at async DatastoreApiClient.runApi (/home/liamt/Websites/grailed-data-ulixee/client/datastore/main/lib/DatastoreApiClient.ts:474:12)
    at async /home/liamt/Websites/grailed-data-ulixee/client/datastore/main/lib/DatastoreApiClient.ts:193:24

client.ts:
import Client from '@ulixee/client';

async function main() {
  const client = new Client('ulx://localhost:1818/grailed-trends@1.1.1');
  const results = await client.fetch('crawler_cache_getAllBrands').then(records => {
    console.log(records)
  })
  await client.disconnect()
}

main().catch(console.error)

datastore.ts:
import { Table } from '@ulixee/datastore';
import { HeroExtractorPlugin, Crawler, Extractor, Datastore } from '@ulixee/datastore-plugins-hero';
import { string, number, date } from '@ulixee/schema';

const datastore = new Datastore({
  id: 'grailed-trends',
  version: '1.1.1',
  name: 'Grailed Trends',
  description: `A Datastore to read from the grailed post quantity by brand.`,
  crawlers: {
    getAllBrands: new Crawler({
      description: 'Test',
      basePrice: 0,
      async run({Hero}) {
        const hero = new Hero({
        // Removed proxy info
        });
        console.log("Starting crawler...")
        await hero.goto("https://grailed.com/designers");
        console.log("Navigated to grailed")
        const designer_list = hero.document.querySelector(".designer-list")
        await hero.waitForElement(designer_list, {
        	waitForVisible: true
        })
        const designers = await hero.document.querySelectorAll(".designer-group").$addToDetachedElements('designer-group')
        console.log("Finished detaching elements")
        return hero
      }
    }, HeroExtractorPlugin)
  },
  extractors: {
   extractLatest: new Extractor(
   {
    description: 'blah',
    async run({HeroReplay, Output}) {
      console.log('Starting extractor: extractLatest')
      const heroReplay = await HeroReplay.fromCrawler(datastore.crawlers.getAllBrands, {
        input: {maxTimeInCache: 0}
      })
      console.log('HeroReplay loaded...')
      const designer_groups = await heroReplay.detachedElements.getAll('designer-group')
      for (const i in designer_groups) {
        const designer = designer_groups[i].childNodes
  		designer.forEach(async(a) => {
    		const a_children = a.childNodes.values()
    		const brand = await a_children.next().value.innerText
    		const listings = parseInt(await a_children.next().value.textContent.replace(/[{()}]/g, ''))
    		// console.log(`${brand}: ${listings}`)
    		Output.emit({
    		    brand: brand,
    		    count: listings,
    		    date: new Date()
    		})
  		})
      }
    },
    schema: {
      output: {
        brand: string(),
        count: number({integer: true}),
        date: date(),
      }
    }
  }, HeroExtractorPlugin)
 }
});
export default datastore;

Also on the local host page for the api it says:

Would love any help! Really like the library and product!

Also trying to debug, and logging 'this.tables' results in [{}]

crawler cache is a private class by default - can only be accessed internally.
The way I found of accessing it is through an extractor with:
await datastore.crawlers.${MYCRAWLER}.cache.fetchInternal())


Meta: Unbreak the NixOS development shell

Currently still fails to find OpenGL libraries (and depends on an uprev to NixOS/nixpkgs#328685), and therefore a draft:
-- Could NOT find OpenGL (missing: OPENGL_opengl_LIBRARY OPENGL_glx_LIBRARY OPENGL_INCLUDE_DIR)
-- Could NOT find OpenGL (missing: OPENGL_opengl_LIBRARY OPENGL_INCLUDE_DIR OpenGL)
-- Could NOT find WrapOpenGL (missing: WrapOpenGL_FOUND)
CMake Warning at Toolchain/Tarballs/vcpkg/scripts/buildsystems/vcpkg.cmake:859 (_find_package):
  Found package configuration file:

    /usr/lib64/cmake/Qt6Gui/Qt6GuiConfig.cmake

  but it set Qt6Gui_FOUND to FALSE so package "Qt6Gui" is considered to be
  NOT FOUND.  Reason given by package:

  Qt6Gui could not be found because dependency WrapOpenGL could not be found.

  Configuring with --debug-find-pkg=WrapOpenGL might reveal details why the
  package was not found.

  Configuring with -DQT_DEBUG_FIND_PACKAGE=ON will print the values of some
  of the path variables that find_package uses to try and find the package.

Call Stack (most recent call first):
  /nix/store/ll2b6cslly4v30im7qk34f9y21ziiz1i-cmake-3.29.6/share/cmake-3.29/Modules/CMakeFindDependencyMacro.cmake:76 (find_package)
  /usr/lib/cmake/Qt6/QtPublicDependencyHelpers.cmake:111 (find_dependency)
  /usr/lib64/cmake/Qt6Widgets/Qt6WidgetsDependencies.cmake:42 (_qt_internal_find_qt_dependencies)
  /usr/lib64/cmake/Qt6Widgets/Qt6WidgetsConfig.cmake:43 (include)
  Toolchain/Tarballs/vcpkg/scripts/buildsystems/vcpkg.cmake:859 (_find_package)
  /usr/lib64/cmake/Qt6/Qt6Config.cmake:169 (find_package)
  Toolchain/Tarballs/vcpkg/scripts/buildsystems/vcpkg.cmake:859 (_find_package)
  CMakeLists.txt:83 (find_package)

CMake Warning at Toolchain/Tarballs/vcpkg/scripts/buildsystems/vcpkg.cmake:859 (_find_package):
  Found package configuration file:

    /usr/lib64/cmake/Qt6Widgets/Qt6WidgetsConfig.cmake

  but it set Qt6Widgets_FOUND to FALSE so package "Qt6Widgets" is considered
  to be NOT FOUND.  Reason given by package:

  Qt6Widgets could not be found because dependency Qt6Gui could not be found.

  Configuring with --debug-find-pkg=Qt6Gui might reveal details why the
  package was not found.

  Configuring with -DQT_DEBUG_FIND_PACKAGE=ON will print the values of some
  of the path variables that find_package uses to try and find the package.

Call Stack (most recent call first):
  /usr/lib64/cmake/Qt6/Qt6Config.cmake:169 (find_package)
  Toolchain/Tarballs/vcpkg/scripts/buildsystems/vcpkg.cmake:859 (_find_package)
  CMakeLists.txt:83 (find_package)

CMake Error at Toolchain/Tarballs/vcpkg/scripts/buildsystems/vcpkg.cmake:859 (_find_package):
  Found package configuration file:

    /usr/lib64/cmake/Qt6/Qt6Config.cmake

  but it set Qt6_FOUND to FALSE so package "Qt6" is considered to be NOT
  FOUND.  Reason given by package:

  Failed to find required Qt component "Widgets".

  Expected Config file at
  "/usr/lib64/cmake/Qt6Widgets/Qt6WidgetsConfig.cmake" exists

  Configuring with --debug-find-pkg=Qt6Widgets might reveal details why the
  package was not found.

  Configuring with -DQT_DEBUG_FIND_PACKAGE=ON will print the values of some
  of the path variables that find_package uses to try and find the package.

Call Stack (most recent call first):
  CMakeLists.txt:83 (find_package)

Given #2450, should we drop this patch?

My PR is most likely superseded, yes, but I had some issues with FHS creation that I would want to check for before merging the other one.

Not superseded, this still attempts to fix vcpkg because that's what ladybird.sh uses.


Fixed the uncrustify unit test so it works on Ubuntu Bionic.

The version of uncrustify on Xenial is 0.59 and on Bionic is 0.66.
Between release of those versions the option align_number_left was
changed to align_number_right. When uncrustify is run as part of the
unit test in Bionic the tool fails to parse the configuration file
correctly, thus causing the unit test to fail on Bionic.
I copied the original configuration file, removed that line, and placed
it in a path relative to the unit test. I setup the unit test to use
this new path as part of the user_paths resource. This causes the
uncrustify tool to use this new configuration file when running the tool
as part of the unit test.

Codecov Report

Merging #160 into master will increase coverage by 0.09%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #160      +/-   ##
==========================================
+ Coverage   94.35%   94.44%   +0.09%
==========================================
  Files          44       44
  Lines        2177     2180       +3
==========================================
+ Hits         2054     2059       +5
+ Misses        123      121       -2

Impacted Files
Coverage Δ

...tatick_tool/plugins/tool/uncrustify_tool_plugin.py
98.46% <100%> (ø)
:arrow_up:

statick_tool/plugins/tool/bandit_tool_plugin.py
98.41% <0%> (+3.41%)
:arrow_up:

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 8f72842...795a31b. Read the comment docs.


[Feature Request] Task<T> UpdateAsync() method

Example:
...
public void UpdateBlog()
{
    var repository = _unitOfWork.Repository<Blog>();

    var blog = await repository.UpdateAsync(model); ///Not work

    _unitOfWork.SaveChangesAsync();
}
...

Look like IAsyncRepository<T> in EntityFrameworkCore.Repository.Interfaces doesn't have method below:
 Task<T> UpdateAsync(
      T entity,
      params Expression<Func<T, object>>[] properties
      CancellationToken cancellationToken = default (CancellationToken));

Hi!
There isn't this method because EF Core doesn't support it.
Please see this issue for more info.

Thank @ffernandolima,
Does this mean we have to remove the old record and add a new one when we want using async?

@nausixkiz you can simply use the sync method. It'd be fine.


Add an LL(1) parsing algorithm to process the CFG

[x] #5
[x] #8
[x] #6

"Implemented", pending tests.


Fork Image Updated.

Congrats @codernirdesh 🎉, your PR got merged. To be eligible for the swags from ClueLess. Follow this steps.

Star this repository. ⭐

SignIn / SignUp in [ClueLess Website](https://www.clueless.tech/) .

Go to profile section from the top right hand corner.

Comment your profile URL under this comment tagging the person who merged your PR.

That’s it. Follow the leaderboard !
And don’t forget to share your achievement with your friends.

Hi @Debajyoti14 , this is my clueless profile url : https://www.clueless.tech/profile/41616814


:sparkles: CombinedStatus PropagationMeta Augmentation

Summary
Added propagation-meta to combined-status API along with all required BindingPolicy/Binding API changes, and implemented its support.
Example resources:
Specifications
BindingPolicy:
apiVersion: control.kubestellar.io/v1alpha1
kind: BindingPolicy
metadata:
  name: nginx-bindingpolicy
spec:
  clusterSelectors:
  - matchLabels: {"location-group":"edge"}
  downsync:
  - statusCollection:
      stalenessThresholdSecs: 100 # default is 120
      statusCollectors:
        - deployments-aggregator
        - deployments-stale
    objectSelectors:
    - matchLabels: {"app.kubernetes.io/name":"nginx"}

StatusCollectors:
apiVersion: control.kubestellar.io/v1alpha1
kind: StatusCollector
metadata:
  name: deployments-aggregator
spec:
  limit: 10
  filter: obj.kind == "Deployment"
  combinedFields:
    - name: deployed-replicas-sum
      type: SUM
      subject: returned.status.availableReplicas
--

apiVersion: control.kubestellar.io/v1alpha1
kind: StatusCollector
metadata:
  name: deployments-stale
spec:
  limit: 10
  filter: obj.kind == "Deployment" && propagation.stale == true
  combinedFields:
    - name: count
      type: COUNT

Generated Objects
Binding:
- apiVersion: control.kubestellar.io/v1alpha1
  kind: Binding
  metadata:
    creationTimestamp: "2024-08-15T15:43:17Z"
    finalizers:
    - transport.kubestellar.io/object-cleanup
    generation: 13
    name: nginx-bindingpolicy
    ownerReferences:
    - apiVersion: control.kubestellar.io/v1alpha1
      blockOwnerDeletion: false
      controller: true
      kind: BindingPolicy
      name: nginx-bindingpolicy
      uid: 5a9ffb8c-244f-459c-a7f4-9359d8be4f33
    resourceVersion: "2709"
    uid: 14eb026b-45cb-4437-a73e-071599e807c7
  spec:
    destinations:
    - clusterId: cluster1
    - clusterId: cluster2
    workload:
      clusterScope:
      - group: ""
        name: nginx
        resource: namespaces
        resourceVersion: "309"
        stalenessThresholdSecs: 100
        statusCollectors:
        - deployments-aggregator
        - deployments-stale
        version: v1
      namespaceScope:
      - group: apps
        name: nginx
        namespace: nginx
        resource: deployments
        resourceVersion: "342"
        stalenessThresholdSecs: 100
        statusCollectors:
        - deployments-aggregator
        - deployments-stale
        version: v1

CombinedStatus
- apiVersion: control.kubestellar.io/v1alpha1
  kind: CombinedStatus
  metadata:
    creationTimestamp: "2024-08-15T15:43:22Z"
    generation: 21
    labels:
      status.kubestellar.io/api-group: apps
      status.kubestellar.io/binding-policy: nginx-bindingpolicy
      status.kubestellar.io/name: nginx
      status.kubestellar.io/namespace: nginx
      status.kubestellar.io/resource: deployments
    name: f4b1abaf-6149-4bdb-b162-5ad0cebdada3.5a9ffb8c-244f-459c-a7f4-9359d8be4f33
    namespace: nginx
    resourceVersion: "2712"
    uid: 878e457b-e7b9-47f5-968c-1b18b0a4b6e9
  results:
  - columnNames:
    - deployed-replicas-sum
    name: deployments-aggregator
    rows:
    - columns:
      - float: "2"
        type: Number
  - columnNames:
    - count
    name: deployments-stale
    rows:
    - columns:
      - float: "2"
        type: Number

When the BindingPolicy is changed with a high staleness-threshold, the resulting CombinedStatus would be:
- apiVersion: control.kubestellar.io/v1alpha1
  kind: CombinedStatus
  metadata:
    creationTimestamp: "2024-08-15T15:43:22Z"
    generation: 24
    labels:
      status.kubestellar.io/api-group: apps
      status.kubestellar.io/binding-policy: nginx-bindingpolicy
      status.kubestellar.io/name: nginx
      status.kubestellar.io/namespace: nginx
      status.kubestellar.io/resource: deployments
    name: f4b1abaf-6149-4bdb-b162-5ad0cebdada3.5a9ffb8c-244f-459c-a7f4-9359d8be4f33
    namespace: nginx
    resourceVersion: "3085"
    uid: 878e457b-e7b9-47f5-968c-1b18b0a4b6e9
  results:
  - columnNames:
    - deployed-replicas-sum
    name: deployments-aggregator
    rows:
    - columns:
      - float: "2"
        type: Number
  - columnNames:
    - count
    name: deployments-stale

Related issue(s)

#2141

/cc @MikeSpreitzer
/cc @ezrasilvera
/cc @nirrozenbaum
/cc @waltforme

The documentation belongs in https://docs.kubestellar.io/unreleased-development/direct/combined-status/ . There is substantial content currently in the opening comment of this PR, which I would prefer to comment on using the usual GitHub features for commenting on file revisions.

The example shown in the opening comment suffers from both problems reported in #2400 .

The latest force-push rebases on upstream main. Comments marked or replied to today were also addressed.

When a PR gets to this many commits, particularly when many of them going in different directions from earlier commits in the same PR, I think that it is beneficial to squash the commits before merging.

The example in the opening comment of this PR no longer represents what this PR proposes to do.
The user guide should have an example.

The last force push is due to squashing and rebasing after addressing comments.


Bug/Compatibility Issue w/Mekanism Jetpack

After experiencing a bug in the 1.10.2 Mech and Magic pack on the ATLauncher whereby I was receiving fall damage while using the mekanism jetpack even when feathering down to a soft landing I started to search for the cause. Mekanism doesn't exhibit this bug when run solo, so it seemed to be a mod conflict isue. After doing a 50/50 of mods (cutting half out, rinse repeat until I could narrow it down to 2 or more mods), I found that this bug is exhibited only with the co-existence of two mods: Cyclic and Mekanism.
Steps for reproduction of bug:

Install latest version of both mods
equip a Mekanism jetpack AND any boots (no fall damage taken unless wearing boots - bug negated if boots are damage negation boot, such as the slime boots from TiCo).
attempt to land safely with above configuration -- fall damage taken at normal rate of damage per block of height if you are above the height limit for falling without damage. This will occur regardless of how safely you land (feathering the landing).

Replicated using the following mods(vers.):
Mekanism 1.10.2-<IP_ADDRESS>5 (core mod plus generators and tools mods)
OR
Mekanism-1.10.2-<IP_ADDRESS>8 (core mod plus generators and tools mods)
&
Cyclic-1.10.2-1.9.12
OR
Cyclic-1.10.2-1.9.14
I will cross-post this with the mekanism team so they can look into it as well.

Thanks.  I do have a few things that affect fall damage: but they set it to zero in certain situations, and shouldn't increase it.  Theres a slowfall potion effect thats given by the potion item and an item called the Wing Charm.  But they just set player.fallDamage to zero in certain situations.
Definitely something to look into.

Still an issue - currently using:
forge-1.10.2-<IP_ADDRESS>2-universal
MODS:
Cyclic-1.10.2-1.10.7
AND
Mekanism-1.10.2-<IP_ADDRESS>8 (core mod plus generators and tools mods)
To replicate:
Steps for reproduction of bug:

Install latest version of both mods (and perhaps the above forge version)
Equip a Mekanism jetpack AND any boots (no fall damage taken unless wearing boots - bug negated if boots are damage negation boot, such as the slime boots from TiCo). I just replicated with diamond boots, so maybe start there?
Attempt to land safely with above configuration -- fall damage taken at normal rate of damage per block of height if you are above the height limit for falling without damage. This will occur regardless of how safely you land (feathering the landing). I'd recommend trying to land on the same block you take-off from.

Note: If you are transitioning heights from a lower to higher point, fall damage is not taken as long as you don't get above the y-level of the landing area.

I just created a new world, Equipped a jetpack full of hydrogen from creative inventory, flew up, and i took fall damage. Then i flew up and down and up again, like you said, feathering, so hover bouncing up and down about 3 blocks from the ground. and i died, i think this is what you are talking about. boots had no effect at all
Please dont think i am ignoring this issue, i know its been a while, its just a very strange one.Screenshot of mods i have installed.  next test is without cyclic and only mekanism to see difference

Yeah i see it happening now. it still doesnt make sense but i can see it

I made an unlisted video with what i see happening, so this link should work once its done processing on youtubes side
https://youtu.be/LHTH-dt5W3c

Just saw the part about "wearing boots" . so weird but yeah it happens https://youtu.be/98-pN-Vyvks

After some trial and error i was able to change how the Launch enchantment handles key binding events in a way that still works and also stops this bug.  release 1.10.25 coming soon

Totally still playing, and thanks for the awesome follow-through on this issue. I'll update and report back!


Display game results when a game ended

The game results should also be saved to the database.

Need to fix: display winner username


Decrease size of four buttons on album/show for style on small devices

Changes Unknown when pulling e35542232b418ee4ed9c1775f658fc2198ed870e on styling into ** on development**.


"Reset page" doesnt reset _auth cookie

Because cookie has domain .sorface.com

The issue maybe is closed?


Feature/style changes

Changes required for Dockstore to pass the new TRSV validator.  Mainly style changes with the addition of:

all ga4gh endpoints changed from v1 to v1.1
charset now gets appended if it's missing

Coverage decreased (-0.003%) to 71.098% when pulling d73372e3626afc38dab24ba0ef02465b4f428e76 on feature/styleChanges into 6d32c7e370a553c5e08c54628c89b8952ad2bf6d on develop.

Coverage increased (+0.04%) to 71.14% when pulling 3abd109eb26b21535a189fb23dbe74424892c3d3 on feature/styleChanges into 6d32c7e370a553c5e08c54628c89b8952ad2bf6d on develop.

Coverage increased (+0.2%) to 71.263% when pulling f0c85439c0d965eb28bc477e3e21bce3fd33a9c3 on feature/styleChanges into 6d32c7e370a553c5e08c54628c89b8952ad2bf6d on develop.

Coverage decreased (-0.01%) to 71.091% when pulling 0fab82f455c0c823959d0e09a13ae238f0f4c771 on feature/styleChanges into 6d32c7e370a553c5e08c54628c89b8952ad2bf6d on develop.

Coverage increased (+0.2%) to 71.091% when pulling 1e7bd95f1e45f8ba50b7be1a937b5d1bc02a4a77 on feature/styleChanges into 52285b9c9bad93bf94d950417a5a74d7343a8caa on develop.


Add possibility of translation via http://angular-translate.github.io/

You call toasts from within controllers, but this has a major downside: you have to hardcode the text for the toasts. If you provide a template that uses http://angular-translate.github.io/ a toast call would look like this:
toastr.info('SAVED_KEY');

in template:
{{ MSG | translate }}

and the angular translate module would determine the message for SAVED_KEY which is "Saved!".

Could be related https://github.com/Foxandxss/angular-toastr/issues/3

i18n is always good, but I don't really want to make toasts insecure.

@ArtworkAD would it be possible for you to inject the translation service or the resolved translations instead?
so instead of:
toastr.info('SAVED_KEY');
you have something like:
$translate('SAVED_KEY')
.then(function(translation)
{
    toastr.info(translation);
});

Hello, I am stuck any advices?
In my en.json I got
"Index_Language_English": "English",
I can call it from html with {{ 'Index_Language_English' | translate }}
In js I have
toastr.warning("English");
I want to add translations so as the English word to be translated.
can you provide any advice?

I am closing this because it is a concrete use case I cannot merge on the library. If you want to use the filters for i18n, you can override the template (Use the version without tpls and create your own template, check the readme).

Will go with a custom template, however would be great to re-visit this and add it as part of the functionality.
Essential for multi language apps and hard coding the messages is not great even for single language apps. This could be a simple and extendable way to manage messages in one place.
How about adding the ability to add a 'translate' config and let toastr know to use the translate filter? Those who have security concerns can leave it off and those who need it can enable at their own risk.
:+1:

It is still better to create another template for it. If I start adding opinions to the template, it will be a monster.
On the other hand, that library for i18n is not the only one and even applying filters is not the only option for that concrete library.

No worries. Took about 5 mins to set up the template and its working like a charm!


Real offline use

Take advantage of the application cache to let anyone who's visited a Chartbuilder instance to load it up without an internet connection

v2ed


Versioning: Retrieve correct versions from versions.yml

Description
The templating changes introduced a regressions where the incorrect
versions were being used for node and typha.
This PR ensures that the versions are fetched from versions.yml

I've grepped all *.yaml files in the generated site for master (after changing the designed tag name to something else) and there are none left after this change.

htmlproofer is only failing with openshift errors


Sparrow dom/dropped connections

Handle the case when a wallet drops a transaction and re-issues one with higher gas price.
Correlating issue: https://github.com/OriginProtocol/origin-dollar/issues/259

Thanks for the CR @shahthepro merging this in. In case we want to show the additional info for the dropped transactions happy to do it in later commits.


Override Ceph version

We used to support N+1 server version with external Ceph, and this policy is still adopted.
For this reason we need a way to do early testing in CI.
This patch adds the ability to override the CentOS Ceph repository and
install the target cephadm release passed as input.
Jira: https://issues.redhat.com/browse/OSPRH-10666

early testing looks promising: https://logserver.rdoproject.org/74/2574/26cb85495cc7cb381c195455a94245e3dfa53355/github-check/podified-multinode-hci-deployment-crc/6aef5e6/controller/ci-framework-data/logs/ceph/ceph_version.log

recheck

@fultonj from internal testing looks good and we can land this patch if you're ok with it.

recheck

recheck


Request: more transparent configuration

From what I can see in the readme:

there is no listed location for the configuration file that mehserve is presumably writing to
there is no command that lists registered ports
there is no command to remove or modify registered ports, only add new ones

So, there's no way, short of digging through the code, to say, change the port of a registered service.
Now, by digging through the code, I can now see that service "foo" is registered as port 8081 simply by creating a file ~/.mehserve/foo with contents 8081.
I'd suggest:

documenting this directory structure in the README
a mehserve ls command that lists the registered services (by scanning that directory) with their ports

Closed in #28; a PR to add list and remove commands would be welcome.


LGSVL Simulator change (part 3)

Add cyber_bridge.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Guodong Rong seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

Prefer moving to modules/contrib as we try to make CyberRT as compact and minimum as possible.

Is modules/contrib the place holding 3rd party contributed codes?

I have moved the code to "modules/contrib/cyber_bridge" and fixed the lint failures.

I see this build error:

I see this build error:
[ERROR] Failed to pull docker image : apolloauto/apollo:map_volume-sunnyvale_loop-latest
What does it mean?

This could happen time to time due to docker hub pulling issue. It's OK as the CI will retry later.


Bump azure sdk dependencies

Bump azservicebus to 1.2.1
Bump azidentity to 1.2.2

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
402

Relevant Lines:
538

💛  - Coveralls


FormBuilder

Started from form.errors_for helper: https://github.com/baoagency/polaris_view_components/commit/ea1a860af0ab93e44634aeee249341a5cbf1e561


Conform to Markdown syntax

I noticed that CHANGELOG.md didn't have the correct markdown syntax, so I switched from rdoc (I think) to markdown.
I followed rubocop's nice syntax: https://github.com/rubocop-hq/rubocop/blob/master/CHANGELOG.md
You can see the diff here (it's really just the version headings):
https://github.com/Shopify/shopify_api/pull/687/files?short_path=4ac32a7#diff-4ac32a78649ca5bdd8e0ba38b7006a1e
And here you can see the full preview:
https://github.com/Shopify/shopify_api/blob/8bf000ef44f8783d4dc2b4c89ce3835de1fe35f6/CHANGELOG.md

Done.

sorry one more thing @vfonic can you sign the CLA?

I've never seen CLA in use, apart from wasting everyone's time. Either way, I just signed it. Please re-run the CLA check. Thanks!


Layers and Chromium

With normal layer I can't move tabs in Chromium. I need to change it to below or above, but I don't like to have a window in another layer. Is there another way to solve it?

Thanks for reporting this.  I'm not quite sure why it's not possible to move tabs between windows when the layer is set to normal, but I'm looking into it.

I can reproduce this issue, but it doesn't seem to be related to the layer necessarily.  Sometimes it works and sometimes it doesn't, no matter what layer.  Also, it seems like it will sometimes partially work, in that the tabs can be moved, but only after several attempts.
I'm not completely sure this is an issue related to JWM.  It doesn't seem like JWM should be doing anything that would cause this sort of behavior (though it's hard to say for sure since I'm not sure how Chromium handles moving tabs).  There have been similar issues with Chromium in the past:

https://bugs.chromium.org/p/chromium/issues/detail?id=224606
https://bugs.chromium.org/p/chromium/issues/detail?id=124209
https://bugs.chromium.org/p/chromium/issues/detail?id=168481
https://bugs.chromium.org/p/chromium/issues/detail?id=132706

How can I change the default layer to below?

You can set the default layer with a group option that applies to all windows:
<Group>
   <Option>layer:below</Option>
</Group>

There is also a layer attribute for trays that you can set:
<Tray layer="below" ...>
...
</Tray>

I've found a pattern with this problem. Tab dragging works correctly when chromium is the only un-minimized window in its layer. For instance, I have a terminal open behind chromium, and tab moving won't work. And then I minimize the terminal, and it starts working. Note that the terminal was not actually mapped on the screen, as the chromium window was completely covering it. Hope this helps.

Even more specific - If there is another window behind the tab area of chromium, it doesn't work. I put a small Sakura terminal behind only the right half of the tab bar, and found that tab moving works exactly when the terminal is not behind that part of the tab bar.


(build) Allow building with Visual Studio 2022

Description Of Changes
Update to allow building with Visual Studio 2022 alone.
Motivation and Context
We no longer need to hard code the required Visual Studio version as the chocolatey cake recipe has been updated.
Testing
On a system with only Visual Studio 2022 installed ran the build script. Confirmed Chocolatey GUI built as expected.
Operating Systems Testing
This is not a code change, but the OS used to build was Windows 10 22H2.
Change Types Made

[ ] Bug fix (non-breaking change).
[ ] Feature / Enhancement (non-breaking change).
[ ] Breaking change (fix or feature that could cause existing functionality to change).
[ ] Documentation changes.
[ ] PowerShell code changes.
[x] Build change

Change Checklist

[ ] Requires a change to the documentation.
[ ] Documentation has been updated.
[ ] Tests to cover my changes, have been added.
[ ] All new and existing tests passed?
[ ] PowerShell code changes: PowerShell v2 compatibility checked?

Related Issue
N/A

@corbob thank you for getting this updated!


Fix bug comparing structure types with equivalent() -- false positive

It was incorrectly saying that two different structs matched! The
problem was a subtle issue of the ordering of clauses in a complex
comparison -- we need to test the structure case first, because the
other clause makes the assumption that the types are simple and not
structures and will have a false positive in that case. An important way
this could manifest is that if you had two overloaded functions whose
arguments were structs, say foo(structA) and foo(structB), it was not
able to correctly distinguish between them for type checking.

LGTM

LGTM2 -- sounds like its worth to add a unit test though.

Yeah, good idea, I'll add a unit test.

Test case added. Verified that it fails before this patch is applied, passes with the patch.


[objc] Use msbuild instead of xbuild.

This prevents fleeting visions of red text in the terminal.

Build and tests passed.


define rules and cleanup dependency tree to enable sustainable releases in the future

To expedite development we've postponed looking at the dependency tree with "sustainability" in mind.
In particular we have not defined goals (potentially conflicting) for the different parts of the code.
Something like:

Code that gets deployed at the core layer (like host functions, and native contracts) have the most extreme restrictions, and have to go through the CAP process, in particular:

we have to guarantee backward compat at the "bit level" (cannot change behavior/meta for historical transactions)
highest bar for security and performance review (this has implication on dependencies that have to be reviewed every time they get revved)
"never panic" (especially relevant to "native contract" type of code that depend on larger parts of the SDK)
release cadence is probably at most "quarterly" (with possibility of emergency security release, which adds a layer of "branching")

SDK updates that may impact contracts

certain changes may be reflected in a "SEP" when defining "APIs" or semantics expected to be maintained across (potentially different versions) contracts
dependency monitoring on a case-by-case basis
shipping cadence ~monthly

Code that gets deployed as part of the SDK to support the "developer experience"

Test, fuzzing, performance related for example, or to support the IDE
No impact on contracts themselves
No particular restriction on shipping (can be nightly)

Those goals need to be reconciled with how the various components are organized, depend on each other (some dependency injection/inversion may be needed) and released.

Looking at a recent CVE in Go's bignum package, we may also want to ban certain APIs (that tend to create certain classes or security issues) for code that ends up at the core layer. For example, anything related to marshalling from/to strings as code in that space tends to do "way too much stuff" and it's probably not practical to code review all that code anyways. We'll need a linter of sorts to help ensure that those crates are "pure" in that respect.

Code that gets deployed as part of the SDK to support the "developer experience"

The test experience in the SDK is largely supported by the soroban-env-host crate, because the meaningful logic supporting testing is the Host, so while there is some functionality to support testing in the SDK, it is very minimal, so minimal I don't think it is worth the overhead of engineering a separation for.

The above mostly discusses the distinctions between the core layer and the SDK, however there are layers above the SDK that are much easier to separate from the core concerns. Most functionality in the SDK can be broken up into three parts:

A thin layer on-top of unsafe operations. This is very delicate, and an intimate knowledge of the host is required. We should be very careful how we modify this.
Generation of contract specs and type conversions. We have to be careful with compatibility with this code.
A thin layer of test utilities built on top of the soroban_env_host::Host. This is tighty coupled. The SDK is a consumer of the Host API in a very similar way that Core is a consumer of it. It is extremely important that the SDKs use of the Host is as consistent as possible as Core's because a contracts ability to reliably test using it is dependent on this.

Overall there seems to me to be an inherent tight coupling of the concerns in the SDK and the env crates, and significant coordination between the two, even though there exists solid interfaces between the two.
However, if we step away from the SDK, there are plenty of other projects that very easily distance from the guarantees of these components. For example, soroban-rpc, soroban-cli, dapp development, and all of the client libs are very far removed from the guarantees we need to provide in core or the SDK. It's much easier to iterate independently on those layers.
Here's a diagram illustrating existing dependencies and the types of concerns I see showing up in different areas:

The test experience in the SDK is largely supported by the soroban-env-host crate, because the meaningful logic supporting testing is the Host, so while there is some functionality to support testing in the SDK, it is very minimal, so minimal I don't think it is worth the overhead of engineering a separation for.

currently yes (and I hope we can keep it that way), what I envision is that there should be things build on top: that's why I mentioned fuzzers, but I also imagine things like special hooks to facilitate verification.
In any case, what I think we need to do here is actually codify expectations for the different layers that @leighmcculloch identified so that we can properly trim & enforce the type of dependencies we allow in each crate (automation may follow, we first need to define the rules).
I think this has some implications on code review & code pinning strategies and potentially on testing strategies too (core level changes are extremely heavy to implement and test and we don't want this outside of core).

trim & enforce the type of dependencies we allow in each crate

The real challenge with being selective will not be the direct dependencies we've picked, of which there are a few but reasonable number, but the deep tree of transitive dependencies.
For example, these are the direct dependencies we have today:

stellar-xdr has base64, serde, serde_with, hex, arbitrary, clap, serde_json, thiserror. About half of these are excluded from builds that stellar-core runs as they are only used for the stellar-xdr CLI.
soroban-env-common has wasmi, serde, static_assertions, ethnum, arbitrary, num-traits, num-derive.
soroban-env-guest has static_assertions.
soroban-env-macros has syn, quote, proc-macro2, itertools, serde, serde_json.
soroban-native-sdk-macros has syn, quote, proc-macro2, itertools.
soroban-env-host has wasmi, static_assertions, sha2, ed25519-dalek, curve25519-dalek, rand, rand_chacha, hex, num-traits, num-integer, num-derive, log, backtrace, k256, getrandom, sha3, tracy-client, env_logger, itertools, log, tabwriter, thousands, textplots, wasmprinter, expect-test, more-asserts, linregress.
soroban-sdk has arbitrary ,ed25519-dalek, rand, ctor, hex, proptest, proptest-arbitrary-interop.

In total that's 40 unique dependencies.
Contrast that with 172 total dependencies in the rs-soroban-env repo.
We might be able to trim some of these. For example, the hex, num-traits, num-integer, num-derive, and itertools libraries could probably be replaced with a small amount of our own logic if necessary. Not confident at all on the remainder though.

That's an exaggeration:

11 of the 27 deps you listed for env-host are dev-deps, they're just for testing.
static_assertions is hardly a dep, it's a compile-time-only logical check.
several of the deps are just subcrates of a single logical dep: the 3 num crates, the 2 rand crates, the 2 rustcrypto-hashes crates, the 2 dalek crates.
getrandom is just a version-pin of a transitive dep, not a direct dep
backtrace is already in the stdlib and we're just using an piece of it still feature-gated off on stable
log is both released by the rust-lang org (arguably part of the stdlib) and also something we're not even using outside of tests, we can move it to a dev-dep also, it's just the log facade and I hooked it up in case we were going to log to stellar-core from soroban. Seems it was premature.
hex should just be a dev-dep too, it's only used in a test.

IOW  I would say that the host has 6 significant logical dependencies: wasmi, sha2+sha3, *-dalek, num-*, k256, rand_*.

Also dalek-curve25519 was actually only in there before for calibration -- because we used to define the costs of a signature verification with reference to the number of curve25519 operations it might do in the worst case -- and @jayz22 removed it when changing the calibration code. I actually ought to double check with @jayz22 on whether that's a conservative enough calibration (I'll file another bug) but in any case there should really only be at most one direct non-dev (non-calibration) dalek crate there.

(https://github.com/stellar/rs-soroban-env/pull/1031 trims deps a bit, https://github.com/stellar/rs-soroban-env/issues/1030 is about re-checking calibration)

Going back to the root of this bug though, I am not sure there's much actionable remaining here. We've done the following:

Trimmed dependencies quite a lot (exaggerated list above notwithstanding, host and common depend on very little)
Reasonably carefully considered each of those deps we have taken; I don't think we're in a position to change our minds about any and I think we've done at least a moderate amount of sniffing around inside their code for weirdness. I'm not going to say I've audited them, but hell, I haven't audited sqlite or ASIO or SOCI either. Maybe I should have, but at some level I think we have to trust that they do what they say they do on the tin (and appear to do in our testing of them).
Have a clear understanding of the bit-identical behaviour necessary to ever take an update (this is spelled out in the actual host version-bumping system and docs)
Made a ton of ceremony to catch accidental changes / updates. Possibly too much! The baked-in second check of dependencies pointed-to by core ensures we're not going to ship a dep-change unless someone reviews:

The Cargo.toml and Cargo.lock change in env-host
The Cargo.lock change in core
The secondary cargo-lock tree change on core, which someone has to manually run a special regeneration command to even accomplish.

I don't know what else to do to the dependency tree to make env releases sustainable. The bug asks to "define rules" -- where? About what? If we have to take a new dep in the future surely we'll take it, but not without care and consideration and certainly not accidentally (any more than we carelessly add deps to core normally; we think through whether we can avoid it and only add them when they're necessary and obviously better than writing it ourselves would be). Should I just write that general guideline down somewhere?

Closing, I think this is as done as it's going to get.


Translation words Spanish

Which convention should we use for the word "camper" when translating to the Spanish?

@Oxyrus thanks for posting this issue!
I think this question should go to https://gitter.im/AlexTrapp/FreeCodeCampEspañol. Closing.

Please review the Guidelines for Contributing, thank you!.


customtkinter.CTkSwitch initialization missing fg_color argument

https://github.com/google/project-gameface/blob/8faf5cfbf7127b9f9995c49cec1064e338624c58/src/gui/frames/frame_cam_preview.py#L68
Returns this error when I follow the Python app setup instructions.
'fg_color'
  File "C:\Users\gunnj\project-gameface\src\gui\frames\frame_cam_preview.py", line 68, in __init__
    self.toggle_switch = customtkinter.CTkSwitch(
  File "C:\Users\gunnj\project-gameface\src\gui\main_gui.py", line 62, in __init__
    self.frame_preview = frames.FrameCamPreview(self.tk_root,
  File "C:\Users\gunnj\project-gameface\run_app.py", line 35, in __init__
    super().__init__(tk_root)
  File "C:\Users\gunnj\project-gameface\run_app.py", line 66, in <module>
    main_app = MainApp(tk_root)
KeyError: 'fg_color'

Application fails to load as long as the error is maintained. Adding a fg_color argument and specifying an arbitrary color eliminates the error and allows the Application to run. (I am, however, still experiencing the issue described in #5 concerning cursor movement.)

Lowering customtkinter from version 5.1.3 to version 5.1.2 fixes the problem.👍

Lowering customtkinter from version 5.1.3 to version 5.1.2 fixes the problem.👍

How (for a noob) do I "lower customtkinter from version 5.1.3 to version 5.1.2"?  Thank you!

Instead of downloading the program through the release section, you'd need to follow the Python application setup instructions.


Per_container scoped volume

Steps to reproduce:
1 . Create a service using the following yaml file.
sion: '2'
volumes:
  daishan-re:
    driver_opts:
      size: '10'
    driver: rancher-ebs
    per_container: true
services:
  coo:
    image: ubuntu
    stdin_open: true
    volumes:
    - daishan-re:/mydata
    labels:
      io.rancher.sidekicks: test-data
  test-data:
    image: ubuntu:14.04.2
    stdin_open: true
    volumes:
    - daishan-re:/mydata
    tty: true
    command:
    - cat

Upgrade service, by specifying an invalid option to it.(Example: logger_driver: 123). This will cause service failed to upgrade.
The existing volume will be deleted. A new volume( with the new DeploymentUUID name) will be created. User will lose data from the previous volume.

This is reproducible very consistently with container_scoped volume. Seems like the container_scoped volume is specifically bind to a deploymentUUID. Once the deployementUUID is changed during the upgrade, the volume will be deleted, which is not desired.

@cjellick Assign this to us as i think this might require a big change in cattle.

Not sure if this is related: https://github.com/rancher/rancher/issues/7271

Duplicate of #7271

This is not a duplicate.

When re-factoring is added into master, we should re-test this.

Re-test when volume support is implemented.

Just a quick note - per_container is nowhere documented on the official rancher docs (http://rancher.com/docs/rancher/v1.6/en/cattle/volumes/). It might be good to document this as it is quite an important feature!

I agree with @m4ce - it would be appreciated

Not relevant with the refactored 2.0 work.
With the release of Rancher 2.0, development on v1.6 is only limited to critical bug fixes and security patches.

Hi,
I experienced the same issue in Rancher 1.6.28 and can confirm that the per_container volumes are recreated with different name on failure (as @StrongMonkey explained).
I would also consider this behavior extremely critical as it affects essential functions of a stack by not being able to scale services with a separate volume per container, respectively having the possibility of losing data eventually.
I assume the bug might be in the following code snippet, as the UUID is used within the name to find existing volumes and that UUID changes on deployment, therefore the volume is recreated on the host.
if (template.getPerContainer()) {
    String name = stack.getName() + "_" + volumeNamePostfix + "_" + this.unit.getServiceIndex() + "_"
            + uuid + "_";
    // append 5 random chars
    List<? extends Volume> volumes = context.objectManager
            .find(Volume.class, VOLUME.ACCOUNT_ID, service.getAccountId(),
                    VOLUME.REMOVED, null, VOLUME.VOLUME_TEMPLATE_ID, template.getId(), VOLUME.STACK_ID,
                    stack.getId(), VOLUME.DEPLOYMENT_UNIT_ID, unit.getId());
    for (Volume vol : volumes) {
        if (vol.getName().startsWith(name)) {
            volume = vol;
            break;
        }
    }

File in Cattle Repository

Best regards, Benjamin


New version: MonteCarloMeasurements v0.9.10

Registering package: MonteCarloMeasurements
Repository: https://github.com/baggepinnen/MonteCarloMeasurements.jl
Created by: @baggepinnen
Version: v0.9.10
Commit: e9dd9c474f9eab9c485bc82f2c7b0a5103e54401
Reviewed by: @baggepinnen
Reference: https://github.com/baggepinnen/MonteCarloMeasurements.jl/issues/77#issuecomment-726658647

[noblock]
I'm not sure what has happened to this travis build, can it be re-triggered?


Ignore encoding errors in remote-run processes

In this PR
Replace errors when invalid bytes which aren't utf-8 compatible show up in the output of a remote run invocation. This will prevent any
'utf-8' codec can't decode byte ...
errors.
Invalid bytes will be output as � (U+FFFD, the official REPLACEMENT CHARACTER)

@swift-ci test


Recheck and enable system tests for standard address space

all standard system tests with fixed issues were enabled (total: 3)
-> close


find topmost applied layer and prune allready applied results

in 1.2.0 i noticed one regression:

if after restart same applied layer considered by tortoise undecided
and mesh fails to apply layers for any reason, such as missing block locallyy

node will loop with

2023-10-02T15:28:14.002+0200	WARN	fd68b.sync	mesh failed to process layer from sync	{"node_id": "fd68b9397572556c2f329f3e5af2faf23aef85dbbbb7e38447fae2f4ef38899f", "module": "sync", "sessionId": "29422935-68d6-47d1-87a8-02293aa181f3", "layer_id": 23104, "errmsg": "requested layer 8063 is before evicted 13102", "name": "sync"}

this change is a hotfix for that problem. after tallying votes we will scan all layers before that and find topmost layer that was applied before and considered valid by tortoise.

bors merge

bors merge


Warping operation formula in MVSplat paper

Hi, could you describe the warping function that you use in the paper in more detail? I noticed that the code you provided and the corresponding formula in the paper "Unifying Flow, Stereo and Depth Estimation" do not match. Thank you very much!

Hi, @trungphien, sorry for the late reply. They should be mathematically equivalent. The main difference is that the implementation is in Cartesian coordinates, while the formula is in Homogeneous coordinates.
In particular, with reference to UniMatch Eq. (9),

where $H$ denotes the homogeneous coordinates, which represent rotation and translation as unified transformations.
While in the implementation, you can see that we perform the rotation (pose[:, :3, :3]) and then the translation (pose[:, :3, -1:]), since it is in Cartesian coordinates, as shown in
https://github.com/donydchen/mvsplat/blob/ef976a166da31e8392f2e5bee49bf66785e381e8/src/model/encoder/costvolume/depth_predictor_multiview.py#L39-L44
Note that the pose here is a relative pose to the first view, i.e., $E_2E_1^{-1}$, rather than the original extrinsic, i.e., $E_2$, see https://github.com/donydchen/mvsplat/blob/ef976a166da31e8392f2e5bee49bf66785e381e8/src/model/encoder/costvolume/depth_predictor_multiview.py#L97-L98
Let me know if it is unclear. Cheers.


signed_request is coming null from salesforce(summer 15)

I cloned the git repository "https://github.com/forcedotcom/SalesforceCanvasFrameworkSDK”  and hosted on heroku for Canvas demo.
For some reason index.jsp is getting the signed request as null from salesforce. (“ This App must be invoked via a signed request!" ). Can you please share any ideas to fix the issue?

This error means that you are not invoking the app from a canvas app using
a signed request.  In your canvas setup inside salesforce make sure that
the access method is set to "Sigbed Request" and not "OAuth Webflow"
On Wednesday, June 24, 2015, Anil<EMAIL_ADDRESS>wrote:

I cloned the git repository "
https://github.com/forcedotcom/SalesforceCanvasFrameworkSDK” and hosted
on heroku for Canvas demo.
For some reason index.jsp is getting the signed request as null from
salesforce. (“ This App must be invoked via a signed request!" ). Can you
please share any ideas to fix the issue?
—
Reply to this email directly or view it on GitHub
https://github.com/forcedotcom/SalesforceCanvasFrameworkSDK/issues/5.

--
Jay Hurst
Director, Product Management
salesforce.com
<EMAIL_ADDRESS>415-536-6270
Sent from my mobile device. Please excuse any spelling errors

I have setup the app access method  as "Signed Request (POST)" only

.

You would need to log a support case in order for us to investigate.
On Wednesday, June 24, 2015, Anil<EMAIL_ADDRESS>wrote:

I have setup the app access method as "Signed Request (POST)" only
[image: screen shot 2015-06-23 at 11 08 46 pm]
https://cloud.githubusercontent.com/assets/9277678/8323736/37660000-19fd-11e5-86ee-896418485078.png
.
—
Reply to this email directly or view it on GitHub
https://github.com/forcedotcom/SalesforceCanvasFrameworkSDK/issues/5#issuecomment-114741655
.

--
Jay Hurst
Director, Product Management
salesforce.com
<EMAIL_ADDRESS>415-536-6270
Sent from my mobile device. Please excuse any spelling errors

The other thing to check is that the app (under setup > manage apps >
connected apps) is set to be "Admin Approved Users are pre-authorized" and
not set to "All users may self-authorize".  In the latter, the user has to
do an OAuth flow initially in order to approve the app...which is not built
into the example you are using
Jay Hurst
Director, Product Management
salesforce.com
<EMAIL_ADDRESS>415-536-6270
On Wed, Jun 24, 2015 at 12:01 AM, Jay Hurst<EMAIL_ADDRESS>wrote:

You would need to log a support case in order for us to investigate.
On Wednesday, June 24, 2015, Anil<EMAIL_ADDRESS>wrote:

I have setup the app access method as "Signed Request (POST)" only
[image: screen shot 2015-06-23 at 11 08 46 pm]
https://cloud.githubusercontent.com/assets/9277678/8323736/37660000-19fd-11e5-86ee-896418485078.png
.
—
Reply to this email directly or view it on GitHub
https://github.com/forcedotcom/SalesforceCanvasFrameworkSDK/issues/5#issuecomment-114741655
.

--
Jay Hurst
Director, Product Management
salesforce.com
<EMAIL_ADDRESS>415-536-6270
Sent from my mobile device. Please excuse any spelling errors