Add CLOCK based approximate LRU

We have a number of places in the connector where we want to store a
cache of elements. Our expectation is that the set of live elements
will be time-correlated, and therefore, when we want to evict elements
from the cache the least-recently-used element is the one least likely
to be used again in the future. There for this commit adds an LRU
implementation suitable for use in such caches. Traditional LRUs suffer
from large amounts of contention in multi-threaded workloads, so we use
a CLOCK-based approximate LRU; more information can be found in the
README.

A stylistic nit: conventionally the receiver in Go is a single character, e.g. c for cache. self stands out as odd.

I pushed a commit with @iand's edits to the locking.

I pushed a new version of the eviction code that eliminates bounds checking.
@iand I pushed a version of your benchmarks. I ended up changing them slightly to ensure that evictions happened.

benchmark results on a standard droplet
goos: linux
goarch: amd64
pkg: github.com/timescale/timescale-prometheus/pkg/clockcache
BenchmarkIntCache-8              	 4132209	       314 ns/op	       0 B/op	       0 allocs/op
BenchmarkStringCache-8           	 3913479	       341 ns/op	       0 B/op	       0 allocs/op
BenchmarkEviction/500-8          	 1377842	       862 ns/op	       0 B/op	       0 allocs/op
BenchmarkEviction/5000-8         	  165669	      7369 ns/op	       0 B/op	       0 allocs/op
BenchmarkEviction/50000-8        	  191414	     70761 ns/op	       0 B/op	       0 allocs/op
BenchmarkMembership/500-8        	20423635	        58.7 ns/op	       0 B/op	       0 allocs/op
BenchmarkMembership/5000-8       	17888761	        65.8 ns/op	       0 B/op	       0 allocs/op
BenchmarkMembership/50000-8      	12135523	        96.6 ns/op	       0 B/op	       0 allocs/op
BenchmarkMembership/500000-8     	 6010875	       198 ns/op	       0 B/op	       0 allocs/op
BenchmarkNotFound/500-8          	24013395	        51.1 ns/op	       0 B/op	       0 allocs/op
BenchmarkNotFound/5000-8         	20420546	        58.7 ns/op	       0 B/op	       0 allocs/op
BenchmarkNotFound/50000-8        	17699750	        67.8 ns/op	       0 B/op	       0 allocs/op
BenchmarkNotFound/500000-8       	13643972	        83.6 ns/op	       0 B/op	       0 allocs/op
BenchmarkInsertUnderCapacity/500-8         	 7455434	       162 ns/o   7455434 inserts	         1.00 inserts/ops	       0 B/op	       0 allocs/op
BenchmarkInsertUnderCapacity/5000-8        	 7307496	       164 ns/o   7307496 inserts	         1.00 inserts/ops	       0 B/op	       0 allocs/op
BenchmarkInsertUnderCapacity/50000-8       	 6761834	       179 ns/o   6761834 inserts	         1.00 inserts/ops	       0 B/op	       0 allocs/op
BenchmarkInsertUnderCapacity/500000-8      	 4576710	       233 ns/o   4576710 inserts	         1.00 inserts/ops	       0 B/op	       0 allocs/op
BenchmarkInsertOverCapacity/500-8          	 5698213	       211 ns/o   5698213 inserts	         1.00 inserts/ops	       0 B/op	       0 allocs/op
BenchmarkInsertOverCapacity/5000-8         	 6743119	       177 ns/o   6743119 inserts	         1.00 inserts/ops	       0 B/op	       0 allocs/op
BenchmarkInsertOverCapacity/50000-8        	 7207106	       167 ns/o   7207106 inserts	         1.00 inserts/ops	       0 B/op	       0 allocs/op
BenchmarkInsertOverCapacity/500000-8       	 6356412	       175 ns/o   6356412 inserts	         1.00 inserts/ops	       0 B/op	       0 allocs/op
BenchmarkInsertConcurrent/500-8            	 4390713	       280 ns/o       0 B/op	       0 allocs/op
BenchmarkInsertConcurrent/5000-8           	 3873616	       296 ns/o       0 B/op	       0 allocs/op
BenchmarkInsertConcurrent/50000-8          	 4385242	       317 ns/o       0 B/op	       0 allocs/op
BenchmarkInsertConcurrent/500000-8         	 3538814	       373 ns/o       0 B/op	       0 allocs/op

The insert counts on the benchmark look incorrect. 1 per op means every insert was new or evicted an existing entry.
For comparison, this is what I saw when I originally wrote them in my branch:
BenchmarkInsertUnderCapacity/500-8         	12273985	        98.5 ns/op	         0.000030 inserts/op
BenchmarkInsertUnderCapacity/5000-8        	12334939	        97.7 ns/op	         0.000229 inserts/op
BenchmarkInsertUnderCapacity/50000-8       	11569123	       101 ns/op	         0.00194 inserts/op
BenchmarkInsertUnderCapacity/500000-8      	 8644075	       131 ns/op	         0.0201 inserts/op
BenchmarkInsertOverCapacity/500-8          	 9168835	       131 ns/op	         0.783 inserts/op
BenchmarkInsertOverCapacity/5000-8         	 9761977	       128 ns/op	         0.596 inserts/op
BenchmarkInsertOverCapacity/50000-8        	 9785414	       123 ns/op	         0.458 inserts/op
BenchmarkInsertOverCapacity/500000-8       	10211001	       135 ns/op	         0.350 inserts/op

The UnderCapacity benchmark shows that repeated iterations of the benchmark are almost always hitting a pre-existing key, which is what you expect if the cache is large enough to cover the test data.
The OverCapacity benchmark shows lots of evictions since the cache is only 25% of the size of the test data set.

Ah whoops. I changed the meaning of the bool returned by Insert a never updated the benchmarks 😅
(for those of you coming in from the future, at one point Insert returned true if the call to the function inserted the value into the cache and false if the value was already there and we're returning the old value. At the last minute I changed it to return true if the value is now in the cache and false if the Insert starved. My logic is that concurrent Inserts should be trying to insert the same value so it's not very useful to know which version inserted, you just always use the one returned, on the other hand, it can be very useful to know if the cache is overloaded)


[$500] iOS - Send message - "You appear to be offline.'' message is shown twice in IOS in New Chat Page

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Login on the IOS app with a new account
go to settings > preferences > and check force offline
click on the + floating action button
click send message
observe the ''You appear to be offline'' message in the New Chat Page

Expected Result:
'You appear to be offline.'' message is shown once in IOS in New Chat Page
Actual Result:
''You appear to be offline.'' message is shown twice in IOS in New Chat Page
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[x] iOS / native
[ ] iOS / Safari
[ ] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number:
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation

Expensify/Expensify Issue URL:
Issue reported by: @rayane-djouah
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1695728283307099
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01bfe5272e5528fa4d
Upwork Job ID:<PHONE_NUMBER>587596288
Last Price Increase: 2023-10-11

Proposal from @rayane-djouah
Please re-state the problem that we are trying to solve in this issue.
''You appear to be offline.'' message is shown twice in New Chat Page
What is the root cause of that problem?
the ScreenWrapper in NewChatPage component is showing a second offline message in addition to the existing one of the high level component.
What changes do you think we should make in order to solve the problem?
we should add shouldShowOfflineIndicator={false} for the ScreenWrapper in NewChatPage
https://github.com/Expensify/App/blob/cfad43ff96f2a104c51fd475e07f0980c4379fcd/src/pages/NewChatPage.js#L171-L177
Result:
https://github.com/Expensify/App/assets/77965000/adae6aa1-1cad-4546-a197-d07dd119d2d8
What alternative solutions did you explore? (Optional)

Hmm, no i can't reproduce this on staging in my account. I see the OP says. "new account" can we confirm its only new accounts?

please can you add a screen recording with the existing account? @rayane-djouah

Great, thanks for confirming the behaviour there. @rushatgabhane any ideas on if the proposal above will work? Thanks!

bump @rushatgabhane can you review the proposal?

Have confirmed can't reproduce on iphone and @kbecciv also confirmed in the thread, closing!

@zanyrenney @kbecciv
Can you please reconfirm reproducing this bug?
The reason for my request is that I am still able to reproduce this bug.
Please refer to the attached video that reproduces this issue for me.
https://github.com/Expensify/App/assets/3004659/2dfabc5e-7748-4b67-8201-5f5939d43cf2

@zanyrenney
I fail to understand why this issue is closed as I can still reproduce this in v 1.3.91-6
Here is a test video that reproduces the problem:
https://github.com/Expensify/App/assets/3004659/e7a6b4f9-71a4-4bce-a916-5dc826b480e4

Maybe we can reopen and fix this for $125 as it's super minor?

I can understand price being reduced initially itself. Or I can even understand price being reduced before receiving any proposals.
As I understand, sometimes the fix is simple and sometimes it takes much more time. So, overall, it get’s balanced. But, this does not mean that we can ignore the time spent to investigate.
To me, defining an issue super minor after receiving proposals does not sound fair.
Do we have any parallel to substantiate this?
Maybe, I am missing something here.

Do we have any parallel to substantiate the previous comment?

Example: https://github.com/Expensify/App/issues/29459#issuecomment-1776935863

Example: #29459 (comment), though it end up being complex

Yes. Agree that it is complex. But, I doubt if we can draw a parallel with that issue.
I have had experiences where the issue was closed by stating it as a non-issue even after I sent proposals. But, then, I can understand.
Anyway, to me, this issue happens in a typical flow of starting a new chat. And, I think, we cannot ignore it.
Looks like the confusion is in connection with reproducing this issue.


Delayed Sidekiq strategy errors by passing invalid Array type to redis client

I am trying to import using the Delayed sidekiq strategy. However I am getting a redis client error for passing an invalid array type. From readings on other repository issues this seems to be a common case with gems integrated with redis commands which pass nested arrays to sadd call.

Expected behavior
I would expect it to kick off a redis job for sidekiq but it errors.
Actual behavior
The stacktrace throws an error from redis-client. See here someone else had come across this similar error for sidekiq-batch gem that had to be fixed to pass the correct format.
Stacktrace
TypeError: Unsupported command argument type: Array
from /Users/myuser/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/redis-client-0.22.2/lib/redis_client/command_builder.rb:39:in `block in generate'

This issue seemed to bubble up to this LUA script call here.
Steps to reproduce the problem
I setup with the standard delayed sidekiq settings
Chewy.settings = {
  strategy_config: {
    delayed_sidekiq: {
      latency: 3,
      margin: 2,
      ttl: 60 * 60 * 24
    }
  }
}

You can reproduce by:
ProductsIndex.import!([1], strategy: :delayed_sidekiq)

Or even more specific I was diagnosing the call further down the stack to validate the inputs were correct.
Chewy::Strategy::DelayedSidekiq::Scheduler.new(ProductsIndex, [1]).postpone

Version Information
Share here essential version information such as:

Chewy version: 8.0.0.pre.beta (commit = 6a2176f7d92c4818f1a1f572aed339b39aef087e)
Elasticsearch version: 8.5.1
Ruby version: 3.1.2
Rails version: <IP_ADDRESS>
Redis gem version: 4.2.0, 4.8.1, and 5.0.2 (latest)

I have done further debugging and found the problematic input:
On this line
The following input from the variable element is an array:
["chewy:delayed_sidekiq:ProductsIndex:1730932392", "chewy:delayed_sidekiq:ProductsIndex:timechunks"]

Okay it came down to this PR that caused this error for delayed_sidekiq. If I revert this specific change everything is functional again.
https://github.com/toptal/chewy/pull/937
cc @skcc321


Grab: Upon release, send a full transform update so that the app gets the new local transform

When the app is subscribing to transform updates on a grabbable actor, the app doesn't get the new local transform upon grab release.
How I noticed this: Integrating grab behavior into my chess game MRE, when the user lets go of the chess piece, its app transform is correct, but local transform is what is was at the beginning of the grab.

For reference, see how the animation component handles this. When an animation ends, it force-sends the final transform.


Azure Metrics Advisor Readme And Sample Issue

Section link

Reason:
Wrong property of source.
Suggestion:
Update code as following:
source: {
  dataSourceType: "SqlServer",
  query: sqlServerQuery,
  connectionString: sqlServerConnectionString,
  authenticationType: "Basic"
}

Section link1, link2

Reason:
suppress number should be less than or equal to 14.
Suggestion:
Set the value of minNumber as 5.
@jongio for notification.

is fixed in #16223


npm install sqlite3 fails

I have read the other issues regarding the topic but none of them fixed my problem.
As the subject mentioned, I am unable to install sqlite3 on OSX 10.10.3 with the following log:
npm install sqlite3

><EMAIL_ADDRESS>install /Users/sok/Documents/Blog/node_modules/sqlite3
> node-pre-gyp install --fallback-to-build

  ACTION deps_sqlite3_gyp_action_before_build_target_unpack_sqlite_dep Release/obj/gen/sqlite-autoconf-3080900/sqlite3.c
  TOUCH Release/obj.target/deps/action_before_build.stamp
  CC(target) Release/obj.target/sqlite3/gen/sqlite-autoconf-3080900/sqlite3.o
Release/obj/gen/sqlite-autoconf-3080900/sqlite3.c:8954:26: warning: unused variable 'sqlite3one' [-Wunused-const-variable]
SQLITE_PRIVATE const int sqlite3one = 1;
                         ^
1 warning generated.
  LIBTOOL-STATIC Release/sqlite3.a
  CXX(target) Release/obj.target/node_sqlite3/src/database.o
In file included from ../src/database.cc:5:
In file included from ../src/database.h:11:
../../nan/nan.h:261:25: error: redefinition of '_NanEnsureLocal'
NAN_INLINE v8::Local<T> _NanEnsureLocal(v8::Local<T> val) {
                        ^
../../nan/nan.h:256:25: note: previous definition is here
NAN_INLINE v8::Local<T> _NanEnsureLocal(v8::Handle<T> val) {
                        ^
../../nan/nan.h:661:13: error: no member named 'smalloc' in namespace 'node'
    , node::smalloc::FreeCallback callback
      ~~~~~~^
../../nan/nan.h:672:12: error: no matching function for call to 'New'
    return node::Buffer::New(v8::Isolate::GetCurrent(), data, size);
           ^~~~~~~~~~~~~~~~~
/Users/sok/.node-gyp/5.0.0/include/node/node_buffer.h:31:40: note: candidate function not viable: no known conversion from 'uint32_t' (aka 'unsigned int') to 'enum encoding' for
      3rd argument
NODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,
                                       ^
/Users/sok/.node-gyp/5.0.0/include/node/node_buffer.h:43:40: note: candidate function not viable: 2nd argument ('const char *') would lose const qualifier
NODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,
                                       ^
/Users/sok/.node-gyp/5.0.0/include/node/node_buffer.h:28:40: note: candidate function not viable: requires 2 arguments, but 3 were provided
NODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate, size_t length);
                                       ^
/Users/sok/.node-gyp/5.0.0/include/node/node_buffer.h:36:40: note: candidate function not viable: requires 5 arguments, but 3 were provided
NODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,
                                       ^
In file included from ../src/database.cc:5:
In file included from ../src/database.h:11:
../../nan/nan.h:676:12: error: no viable conversion from 'v8::MaybeLocal<v8::Object>' to 'v8::Local<v8::Object>'
    return node::Buffer::New(v8::Isolate::GetCurrent(), size);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/sok/.node-gyp/5.0.0/include/node/v8.h:210:7: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from 'v8::MaybeLocal<v8::Object>'
      to 'const v8::Local<v8::Object> &' for 1st argument
class Local {
      ^
/Users/sok/.node-gyp/5.0.0/include/node/v8.h:210:7: note: candidate constructor (the implicit move constructor) not viable: no known conversion from 'v8::MaybeLocal<v8::Object>'
      to 'v8::Local<v8::Object> &&' for 1st argument
class Local {
      ^
/Users/sok/.node-gyp/5.0.0/include/node/v8.h:214:13: note: candidate template ignored: could not match 'Local' against 'MaybeLocal'
  V8_INLINE Local(Local<S> that)
            ^
/Users/sok/.node-gyp/5.0.0/include/node/v8.h:326:13: note: candidate template ignored: could not match 'S *' against 'v8::MaybeLocal<v8::Object>'
  V8_INLINE Local(S* that)
            ^
In file included from ../src/database.cc:5:
In file included from ../src/database.h:11:
../../nan/nan.h:683:26: error: no member named 'Use' in namespace 'node::Buffer'
    return node::Buffer::Use(v8::Isolate::GetCurrent(), data, size);
           ~~~~~~~~~~~~~~^
../src/database.cc:145:9: warning: unused variable 'status' [-Wunused-variable]
    int status = uv_queue_work(uv_default_loop(),
        ^
../src/database.cc:230:9: warning: unused variable 'status' [-Wunused-variable]
    int status = uv_queue_work(uv_default_loop(),
        ^
../src/database.cc:509:9: warning: unused variable 'status' [-Wunused-variable]
    int status = uv_queue_work(uv_default_loop(),
        ^
../src/database.cc:610:9: warning: unused variable 'status' [-Wunused-variable]
    int status = uv_queue_work(uv_default_loop(),
        ^
In file included from ../src/database.cc:2:
In file included from /Users/sok/.node-gyp/5.0.0/include/node/node.h:42:
/Users/sok/.node-gyp/5.0.0/include/node/v8.h:221:5: error: assigning to 'v8::Primitive *volatile' from incompatible type 'v8::Value *'
    TYPE_CHECK(T, S);
    ^~~~~~~~~~~~~~~~
/Users/sok/.node-gyp/5.0.0/include/node/v8.h:180:37: note: expanded from macro 'TYPE_CHECK'
    *(static_cast<T* volatile*>(0)) = static_cast<S*>(0);      \
                                    ^ ~~~~~~~~~~~~~~~~~~
../../nan/nan.h:414:12: note: in instantiation of function template specialization 'v8::Local<v8::Primitive>::Local<v8::Value>' requested here
    return NanEscapeScope(NanNew(v8::Undefined(v8::Isolate::GetCurrent())));
           ^
../../nan/nan.h:398:30: note: expanded from macro 'NanEscapeScope'
# define NanEscapeScope(val) scope.Escape(_NanEnsureLocal(val))
                             ^
In file included from ../src/database.cc:2:
In file included from /Users/sok/.node-gyp/5.0.0/include/node/node.h:42:
/Users/sok/.node-gyp/5.0.0/include/node/v8.h:221:5: error: assigning to 'v8::Boolean *volatile' from incompatible type 'v8::Value *'
    TYPE_CHECK(T, S);
    ^~~~~~~~~~~~~~~~
/Users/sok/.node-gyp/5.0.0/include/node/v8.h:180:37: note: expanded from macro 'TYPE_CHECK'
    *(static_cast<T* volatile*>(0)) = static_cast<S*>(0);      \
                                    ^ ~~~~~~~~~~~~~~~~~~
../../nan/nan.h:424:12: note: in instantiation of function template specialization 'v8::Local<v8::Boolean>::Local<v8::Value>' requested here
    return NanEscapeScope(NanNew(v8::True(v8::Isolate::GetCurrent())));
           ^
../../nan/nan.h:398:30: note: expanded from macro 'NanEscapeScope'
# define NanEscapeScope(val) scope.Escape(_NanEnsureLocal(val))
                             ^
In file included from ../src/database.cc:2:
In file included from /Users/sok/.node-gyp/5.0.0/include/node/node.h:42:
/Users/sok/.node-gyp/5.0.0/include/node/v8.h:221:5: error: assigning to 'v8::Function *volatile' from incompatible type 'v8::Value *'
    TYPE_CHECK(T, S);
    ^~~~~~~~~~~~~~~~
/Users/sok/.node-gyp/5.0.0/include/node/v8.h:180:37: note: expanded from macro 'TYPE_CHECK'
    *(static_cast<T* volatile*>(0)) = static_cast<S*>(0);      \
                                    ^ ~~~~~~~~~~~~~~~~~~
../../nan/nan.h:1514:12: note: in instantiation of function template specialization 'v8::Local<v8::Function>::Local<v8::Value>' requested here
    return NanEscapeScope(NanNew(handle)->Get(kCallbackIndex)
           ^
../../nan/nan.h:398:30: note: expanded from macro 'NanEscapeScope'
# define NanEscapeScope(val) scope.Escape(_NanEnsureLocal(val))
                             ^
In file included from ../src/database.cc:2:
In file included from /Users/sok/.node-gyp/5.0.0/include/node/node.h:42:
/Users/sok/.node-gyp/5.0.0/include/node/v8.h:221:5: error: assigning to 'v8::Object *volatile' from incompatible type 'v8::Value *'
    TYPE_CHECK(T, S);
    ^~~~~~~~~~~~~~~~
/Users/sok/.node-gyp/5.0.0/include/node/v8.h:180:37: note: expanded from macro 'TYPE_CHECK'
    *(static_cast<T* volatile*>(0)) = static_cast<S*>(0);      \
                                    ^ ~~~~~~~~~~~~~~~~~~
../../nan/nan.h:1632:12: note: in instantiation of function template specialization 'v8::Local<v8::Object>::Local<v8::Value>' requested here
    return NanEscapeScope(handle->Get(NanNew(key)).As<v8::Object>());
           ^
../../nan/nan.h:398:30: note: expanded from macro 'NanEscapeScope'
# define NanEscapeScope(val) scope.Escape(_NanEnsureLocal(val))
                             ^
4 warnings and 9 errors generated.
make: *** [Release/obj.target/node_sqlite3/src/database.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:270:23)
gyp ERR! stack     at emitTwo (events.js:87:13)
gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Darwin 14.3.0
gyp ERR! command "/usr/local/Cellar/node/0.10.33_1/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--module=/Users/sok/Documents/Blog/node_modules/sqlite3/lib/binding/node-v47-darwin-x64/node_sqlite3.node" "--module_name=node_sqlite3" "--module_path=/Users/sok/Documents/Blog/node_modules/sqlite3/lib/binding/node-v47-darwin-x64"
gyp ERR! cwd /Users/sok/Documents/Blog/node_modules/sqlite3
gyp ERR! node -v v5.0.0
gyp ERR! node-gyp -v v3.0.3
gyp ERR! not ok
node-pre-gyp ERR! build error
node-pre-gyp ERR! stack Error: Failed to execute 'node-gyp build --fallback-to-build --module=/Users/sok/Documents/Blog/node_modules/sqlite3/lib/binding/node-v47-darwin-x64/node_sqlite3.node --module_name=node_sqlite3 --module_path=/Users/sok/Documents/Blog/node_modules/sqlite3/lib/binding/node-v47-darwin-x64' (1)
node-pre-gyp ERR! stack     at ChildProcess.<anonymous> (/Users/sok/Documents/Blog/node_modules/sqlite3/node_modules/node-pre-gyp/lib/util/compile.js:83:29)
node-pre-gyp ERR! stack     at emitTwo (events.js:87:13)
node-pre-gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
node-pre-gyp ERR! stack     at maybeClose (internal/child_process.js:818:16)
node-pre-gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)
node-pre-gyp ERR! System Darwin 14.3.0
node-pre-gyp ERR! command "/usr/local/Cellar/node/0.10.33_1/bin/node" "/Users/sok/Documents/Blog/node_modules/sqlite3/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"
node-pre-gyp ERR! cwd /Users/sok/Documents/Blog/node_modules/sqlite3
node-pre-gyp ERR! node -v v5.0.0
node-pre-gyp ERR! node-pre-gyp -v v0.6.7
node-pre-gyp ERR! not ok
Failed to execute 'node-gyp build --fallback-to-build --module=/Users/sok/Documents/Blog/node_modules/sqlite3/lib/binding/node-v47-darwin-x64/node_sqlite3.node --module_name=node_sqlite3 --module_path=/Users/sok/Documents/Blog/node_modules/sqlite3/lib/binding/node-v47-darwin-x64' (1)
npm ERR! Darwin 14.3.0
npm ERR! argv "/usr/local/Cellar/node/0.10.33_1/bin/node" "/usr/local/bin/npm" "install" "sqlite3"
npm ERR! node v5.0.0
npm ERR! npm  v3.3.6
npm ERR! code ELIFECYCLE

npm ERR<EMAIL_ADDRESS>install: `node-pre-gyp install --fallback-to-build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>install script 'node-pre-gyp install --fallback-to-build'.
npm ERR! This is most likely a problem with the sqlite3 package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-pre-gyp install --fallback-to-build
npm ERR! You can get their info via:
npm ERR!     npm owner ls sqlite3
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/sok/Documents/Blog/npm-debug.log

Here is the output of npm-debug.log https://gist.github.com/Konafets/3be3af442b3c3f76ec48

You're using a very new of node v5.0.0 which was not supported by sqlite3 3.0.8. You need to use the latest version 3.1.1 of sqlite3, or if you must use<EMAIL_ADDRESS>then I believe you will need node v0.10.x or v0.12.x.
Let me know if this helps.

Actuallly I tried to install Ghost, which will fail due to this error. I changed the dependency to<EMAIL_ADDRESS>which at least installed all deps but npm start told me that Ghost is not ready for node v5.0.0.
I ended with downgrading node to 0.12 but leaving sqlite at version 3.1.1. Now I was able to start Ghost.

Ah, well glad you managed to figure it out, did you find this: http://support.ghost.org/supported-node-versions ?
Next version of ghost will tell you about incompatible node versions before you try to install  npm modules 😊

Thanks for pointing me to that page. Gave me a bit of understanding of different versions of Node.


Usage of "clicks" instead of "selects" in the example

"When the user clicks OK, the transaction is committed. (in content for developers)"

In the above example, the verb clicks should be selects, as per advice given in https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/c/click.

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

ID: e98fcd08-8edf-0a1d-2a62-6d827bc327b9
Version Independent ID: d1ca993e-79e8-5373-44f4-c7390a736bfe
Content: Verbs - Microsoft Style Guide
Content Source: styleguide/grammar/verbs.md
Product: non-product-specific
GitHub Login: @pallep
Microsoft Alias: pallep

I agree with @chanakavp ! Also, search the whole guide for "click" and replace with "select"; there are probably many instances of this. Thank you!


Create graphical model

Create a graphical model
This should reflect the results of the workshop for model 2.

@sau140288 you can use any program you like for this. Ideally one that is easy to edit and exports to png jpeg etc with high resolution

Look at @BuiThiKhanhHoa's  example https://docs.google.com/presentation/d/1eJqPETEiZVSYHA2SylsSnJHLRYPvWLxkW6Pjd0PeEsc/edit#slide=id.g2390aa3341a_0_0

Done by @sau140288
Please add with a short overview text to the README


reducer cannot be used in composed contracts

reducer.reduce cannot be used within a contract that has been called by a caller contract
Error: Can not analyze methods inside Circuit.runAndCheck, because this creates a circuit nested in another circuit
MRE
class ReducerContract extends SmartContract {
  reducer = Experimental.Reducer({ actionType: Field });

  @method reduceEvents(): Field {

    let { state: s, actionsHash: a } = this.reducer.reduce(
      [[Field.zero]],
      Field,
      (state: Field, _action: Field) => {
        return _action;
      },
      // initial state
      { state: Field.zero, actionsHash: Field.zero }
    );
    return Field.zero;
  }
}

class Caller extends SmartContract {
  @state(Field) sum = State<Field>();
  events = { sum: Field };

  @method callAddAndEmit() {
    let c = new ReducerContract(adderAddress);
    let sum = c.reduceEvents();
  }
}

// ...

tx = await Mina.transaction(feePayer, () => {
  zkapp.callAddAndEmit();
});

https://github.com/o1-labs/snarkyjs/blob/main/src/lib/zkapp.ts#L685
Temporary fix to unblock integration tests

[x] pass in dummy values instead of invoking the function that causes the issue https://github.com/o1-labs/snarkyjs/blob/feature%2Fvoting-contract/src/lib/zkapp.ts#L769

TODO

[ ] remove dummy values

This only appears when compile was not invoked. Solution: Make sure analyzeMethod is being invoked anyway

Yeah that's a partial solution at least!


update help message for getblockheader and getblock (#963)

The help texts for the RPC messages didn't match the actual information returned by getblockheader and get block.
"witnessmerkleroot" and "finalizercommitsmerkleroot" are added and "nonce" is removed
Fixes #963
Signed-off-by: Chenxi Li<EMAIL_ADDRESS>

Hi @spiritlcx! Thank you for your contribution!
It is customary for the ones doing the merge to just copy the description from the pull request into the commit message for the merge commit. As such the help-text which is in the description textbox by default should not be in there (this is also why the first line renders as a heading, as there are these --- below it which should not be there).
As such it would be great if you could brush up the description a little bit :-)

Hi @spiritlcx! Thank you for your contribution!
It is customary for the ones doing the merge to just copy the description from the pull request into the commit message for the merge commit. As such the help-text which is in the description textbox by default should not be in there (this is also why the first line renders as a heading, as there are these --- below it which should not be there).
As such it would be great if you could brush up the description a little bit :-)

Hi @scravy ! Thanks for the comments, I have corrected it.

ACK https://github.com/dtr-org/unit-e/pull/1028/commits/d0602168db31980a946509972b757bce6b5166e4

@spiritlcx congrats for your first pull request on unit-e 😃

@spiritlcx congrats for your first pull request on unit-e 😃

Thanks very much! I will try to understand the architecture and the code deeply and make more pull requests. First it's good to start with fixing bugs.


Goes to link automatically without waiting for the confirmation.

jquery-confirm version:
v3.x.x
I'm submitting a ...  (check one with "x")
[x] bug report
[ ] feature request
[ ] support request
Current behavior:

Upon link click, the pop up appears but the link is triggered at the same time. It's not waiting for the confirm button to be triggered.
Expected behavior:

The redirection should not take place unless the confirmation button is clicked.
Steps to reproduce:
Related code:
insert any relevant code here

Other information:
https://www.loom.com/share/68542ff3b61849d0bdeb0f2d9846ae08

This is an async function, so you have to return false after the $.confirm function


FirstOrderMinimizer#infiniteIterations for custom stopping criteria

Hi David,
we have a PQN use case where the initial solution can be quite bad but the gradient is not very steep.
The FirstOrderMinimizer terminates without even doing a single iteration due to the given convergence checks.
I would like to be able to let the optimization run for at least n iterations before even checking the convergence criteria.
So this PR exposes an infiniteIterations method that can be used for custom stopping criteria.
Best
Martin

There is one unrelated test failure which is due to some problem with DenseVector transposing.

Hey Martin,
Thanks!
I'm getting a lot of complaints about convergence criteria these days. Could I impose on you to maybe experiment with tweaking them to something that works for you?
@eidonfiloi, @debasish83 same for you. Happy to take a PR at this point.

Hi David,
I'm not at all an expert in this field, but once I find something that works for me, I'll try to generalize it :)
Right now just forcing the optimizer to do at least n steps works reasonably well.


Had uncaught SyntaxError:

I was getting this error in my knockout, breeze application with durandal.
uncaught SyntaxError: Failed to execute 'querySelector' on 'Element': 'td:nth-child(NaN)' is not a valid selector
Adding '$.bootstrapSortable(true);' to the Durandal function, 'compositionComplete' of my view model fixed the issue.  compositionComplete is called when Durandal has completed composition of the entire page.
Just thought this might help someone one day.
Thanks for making this easy to install bootstrap sorting add-in,
Alex

thanks for sharing the experience, I labeled the "issue" as compatibility and I will close it


Contribution guidelines

To facilitate external and partner software contributions we should have a set of contribution guidelines. See https://help.github.com/en/articles/setting-guidelines-for-repository-contributors and exampoles such as https://github.com/atom/atom/blob/master/CONTRIBUTING.md

Ticket closed as contribution guidelines being developed as part of Rewrite project - see #1054


Update instance page

resolve FLPATH-1966

https://github.com/user-attachments/assets/a5b4853e-9a2b-40db-8072-b5dd893d7682

We didn't implement the inputs card instead of variables yet, So title of variables card should remain "Variables"

Please also include a screenshot of what it looks like if the assessedBy field appears
This field will show for a workflow that ran from assesment workflow
To see it, run the assessment workflow and then from the instance click on one of the suggested workflows in the results and run it

top row cards should have scrollbars, see in the image below if the description and results are long they are cut

@LiorSoffer
It looks good!
Just one more small fix above


RenderDoc crashes when selecting DrawIndexedInstanced that has no index buffer bound on D3D12

Description
I discovered this by mistake, but RenderDoc crashes when you select a DrawIndexedInstanced drawcall when no index buffer has been bound yet on D3D12. It's invalid behavior but I wouldn't expect a crash.
Repro steps
These two lines should be enough to make it crash:
m_commandList->Reset(m_commandAllocator, nullptr)
m_commandList->DrawIndexedInstanced(3, 1, 0, 0, 0);
I've attached a zip with a modified D3D12HelloTriangle sample. It doesn't render anything but when you make a capture of the D3D12HelloTriangle project and select the drawcall RenderDoc crashes.
D3D12HelloWorld.zip
Environment

RenderDoc build: v1.1 (built from c7d5aa86)
Operating System: Windows 10 Version 1803
API: D3D12

Just to clarify - is this something that the D3D12 debug layers warn as invalid? In that case it's possible it works by coincidence on some GPUs but will crash on others the same as it crashes in RenderDoc.
RenderDoc is not intended to work with invalid API use, so if it's illegal then this would be up to the application to ensure and use API validation to check for. If it's a kind of valid-but-degenerate case then I can ensure it's handled properly.

OK yeh I just wanted to clarify what it was. Unfortunately the D3D12 docs are as usual terrible, so I don't know whether the indices always return 0 or not, but if the debug layer doesn't mention it then it's probably legal in some manner. Returning 0 was the behaviour in D3D11 but in some ways D3D12 is not so forgiving of unbound/out of bounds behaviour.
To be honest I should probably flag this as an error renderdoc side since I can't imagine it's ever intentional.


Expand forge test --match interface

From issue: #227
This PR deprecates forge test --match and expands the match interface to
--match-test
--no-match-test
--match-contract
--no-match-contract
to allow for more granular test matching.
Internally, test runners have Regex replaced with trait/impl TestFilter to allow for custom matching logic in client code.
Conflicts have been added between --match and the new options to prevent mix/match of these. However, --match is effectively aliased to --match-test so there are no breaking changes.
Affected tests have been updated.
Any / all input welcome.

Thanks @gakonst, appreciate it

I'm in the process of migrating a larger dapptools project to foundry. We have separate repos for rpc based tests and local tests grouped by directory. --match from dapptools allows for specifying paths / sub directories to tests which works well in our case.
The only way to do this with forge atm would be to have an external script which generates a custom regex string and supply that to --match-contract.
To streamline this I would either extend --match-contract to account for the path to the contract file or add a new --match-dir / --match-file flag.

@lattejed see above, nice idea

I'll take a look at it


implement RealTimeService

somehow i am only getting the PB_CONNECT event, i need to luck further into this..

I think that its ok: when you connects to realtime (Get) the result might be a PB_CONNECT event, with the ClientId of that connection.
Then with this ClientId you can subscribe to realtime events with Post
I don't know exactly how the client will behave with events from the server. I'll try and see if I can find something

Hi, take a look at my realtime branch: Is a hardcoded draft, but receives realtime events.

In the Subscribe function, it connects to SSE, without waiting until finished the task (Important, it opens the connection and listen 'forever')
When is connected, sends to the server a POST message with all subscriptions in a list

Then the magic happens
The code is a proof of concept, and maybe the sse object is not needed or doesn't fit in the project structure
sse.ConnectAsync(callback); // No await! Maybe can be executed in a new thread

while(!sse.IsConnected)
   await Task.Delay(500); // Wait until is connected to realtime

Dictionary<string, object> body = new();
// Set the ClientId for realtime:
//   it should be taken from clientId in Data of the event PB_CONNECT
body.Add("clientId", sse.Id);
body.Add("subscriptions", new List<string> { "tags" }); // Set All active subscriptions

var url = $"api/realtime";
await client.SendAsync(url, HttpMethod.Post, body: body);

The sse object Connects to RealTime and reads from the connection for new events, it receives all realtime events

from my experience, code like this:
sse.ConnectAsync(callback); // No await! Maybe can be executed in a new thread
where you dont await a task, results in some tricky errors.
A seperate thread would also be my first solution, but how would this work in blazor-wasm, which is single-threaded (AFAIK, multi-thread support was planned in .NET 7 but was delayed until .NET 8)?
how about Task.Run(() => { ... }) and inside that await everything? would also remove the loop.

Yes, you are right: not awaiting or keeping the task anywhere without cancellation options is a bad idea and the separate thread is interesting but has limitations
I will try to test the Task.Run approach, as a proof of concept

I looked at the dart-sdk code. It uses another approach:

There is an httpclient that listen one event
At every event, it tries to reconnect, using a retry control with attempts and timers

The Task.Run approach has the same problems: Creates a task for the execution of a function. I dont see how remove the loop: in sse there is a dedicated connection, and when some event is received, then is processed.
I made some changes in the SseClient class (in my branch):

The listener task is mantained as a var
Accepts and manages Cancellation Token
The destructor cancels the running task

The initialization is like
var sse = new SseClient(client)
await sse.ConnectAsync(callback);

And in SseClient:
private CancellationTokenSource? tokenSource = null; // To cancel the tasks
private Task? eventListenerTask = null; // The task that listen server events

public bool IsConnected { get; private set; } = false;

public async Task ConnectAsync(Action<SseMessage> callback)
{
   Disconnect();
   tokenSource = new CancellationTokenSource();
   try
   {
      // The task that creates the HttpClient and listen server events (updates IsConnected)
      eventListenerTask = ConnectEventStreamAsync(callback, tokenSource.Token);
      while (!IsConnected)
         await Task.Delay(500);
   }
   catch { throw; }
}

public void Disconnect()
{
   tokenSource?.Cancel();
   tokenSource?.Dispose();
   tokenSource = null;

   eventListenerTask?.Dispose();
   eventListenerTask = null;
}
~SseClient()
{
   Disconnect();
}

Hi, look at this proposed implementation of RealTimeService class:
RealTimeService.cs at my RealTime branch
There is a list of subscriptions, if is empty then the service disconnects from the server. When an event is received, the service finds which listener from subscriptors should to be called

Hey,
i played with your branch a bit and it looks promising, thank you.
one thing i would change is the callback from Action<SseMessage> to Func<SseMessage, Task> so that we can have asynchronous callbacks (for example, in blazor to call InvokeAsync)

Ok, i dont have changes from this morning. I will create a PR
;)


UI Improvements

Settings Page

[x] Left panel styling (stroke and shadow) (Update it as per the styling on other pages)

[x] Add more margin b/w left panel and content

[x] Manage button width to be in 1:1 ratio

[x] Change icon colour of selected section colour to primary colour and font weight semi-bold

[x] Move “Teams, User and Admins” to new category

[x] Reduce delete button switch size

[x] Maintain top margin

[ ] #6791

[x]  Reduce table column height

[x] update edit icon

[x]  need to fix the read more button here

[x] Left column Position and width should be consistent, currently it's different on explore page, settings page and glossary page (Should be consistent as on home page)

[x] Update filter styling on Webhook as on home page

[x] Search bar needs fixing on Webhook

[ ] The search box is getting shrink

[ ] Order should be Explore, Glossary, Tags and Settings

[ ]  Bot creation form tyling should be consistent with "Add Service" Styling

[ ] Add "webhook" and "slack" form styling needs to be fixed, it has a white background

[ ]  User cards are not aligned properly when you add new user to a team

[ ]  Add new user form styling isn't consistent to other forms.

[ ] Need to have consistent switch button styling (different icon is being used on settings pages, please use the one in forms like on add user form)

[ ] nothing is happening on the click of "Add Policy"

[ ]  Need to work on the UI and UX of the forms, it isn't consistent.

[ ] Assignee should be clickable here

[ ] Spacing not right on user page

[ ] Add down and up key support for suggestion dropdown

[ ] progress bar missing on ingestion deployment

https://user-images.githubusercontent.com/39544459/185592476-193f1a0e-1e91-4b5e-9602-4c7aea7e0b5d.mov

#6210

Glossary page left panel issue.
https://github.com/open-metadata/OpenMetadata/issues/6834#issuecomment-1223577243

Pending issues are tracked, individual.
#6854
#6791

[ ]  Manage button styling on team detail page is not consistent

[ ] Replace Delete Icon with Remove icon

[ ] Owner's link on teams page not working, either not re-directing or giving a 404 error

[ ] Add a breadcrumb link to the main user listing page on create user form

[ ] Can we keep the styiling in image 1 same as it is in image 2
Image 1

Image 2

[ ] "Database Service" click is redirecting to the old Service page

[ ] mlflow logo is stretched over here

[ ] Service type (Breadcrumb) click on add service form is redirecting to the old Service page

[ ] Can we list these chips in 1 line below the filter option instead of filtering it inside on "Webhook" and "Slack" page

@devyani-kaushik lets open a new ticket for this


User auth merge

Merged user auth, added arg parser to run_server.py (to specify port).
@dkong1796, @alphaz99, @ootks, @Timeroot, @ChingYunH, @RobertEng, could
you take a look so we can merge?
One question I had was why did you move creation
of the engine variable in Donut/init.py  inside of the before_request function, Rahul?
(It should be more efficient to only make the engine once instead of for each request).

@dqu123  are you referring to this?
https://github.com/RuddockHouse/RuddockWebsite/pull/87
I did that because we kept on getting "MySQL server has gone away" exceptions if the server was running but no one had made a request for a few hours (default is 8 hours). Theoretically sqlalchemy's pool refresh should have taken care of the issue, but we tried it and were still getting errors so I just did this as a quick hack to fix it (I'm definitely not suggesting that this is the best solution).

That makes sense - I wasn't fully sure why it was written like that either but until we figure out a better solution we can keep this as a temporary fix.

Fixed the port argument.

Thanks for the nit-picking @dkong1796. We definitely need to keep up the code reviews so we can have a high standard of code quality.

No problem :p
Everything else looks fine (minus the parts that aren't implemented haha)

Actual misc question: do we want to keep on using Donut as the name of the main package, or use donut? The Python PEP8 standard prefers all lowercase:
https://www.python.org/dev/peps/pep-0008/#package-and-module-names

donut lowercase sounds good to me

We should go ahead and merge if it looks good, so master has the corrected module name.
Also does anyone know what the {} and + mean
in the command find . -type f -name "*.py" -exec sed -i 's/Donut/donut/g' {} +?

Ideally all the python3 stuff should have taken place in a different branch/pull request (it's not related to the topic of this pull request). Are we definitely switching to python3 then? I was mostly suggesting it as something to be explored so we could identify issues before committing to switching.

Moved Python 3 stuff to #13 and reverted the stuff on this branch.

:+1:

Yeah wait I think I accidentally did the wrong thing when I reverted, because revert lets you revert a specific commit, but I intended to revert back up to that commit.

Oh, haha. git reset --hard <commit hash> does what you want, but then you'd have to git push --force to update the upstream repo. You would also lose all the commits in between. I'm not familiar enough with git to suggest something more elegant (you could revert each commit manually, and then revert the reverts to restore them...)

Yeah I accidentally did git revert <hash> which just reverted the hash. But this is the best way to learn git right... lol

Is there a good way to reset it on the Github side? Or do I have to delete the branch and repush it?

Does git push origin user_auth --force not work?

Okay, we're good now. I'll keep the --force bit in mind next time.

:D

Hmm, it would be nice if we could version control the config.py since it might be slightly different depending on the mysql connector.

I think we can go ahead and merge this. This pull is a bit scattered since it includes a lot of fundamental changes, but I just did it in one branch since there were no other active ones at the time (I plan on making an upload script branch and another branch to document my progress on the schema). I'll also open up another pull request for user_auth that will focus more specifically on implementing user authentication.
I'm definitely seeing distinct roles that can be done in parallel now, so I hope to set that in motion and assign tasks during our first meeting. For example, working on the front-end for the directory search,  writing the backend user_auth logic, writing the registrar upload script, and writing SQL DDL. I'll try to get the basic SQL needed for the backend logic and script done.


Cypress check_links.js times out for Apple Store and Instagram

Where to find the issue
cypress/integration/hybrid/check_links.js
Describe the issue
When running the Cypress test cypress/integration/hybrid/check_links.js to check for correct working of hyperlinks, the test sometimes fails accessing some external links.
The timeout do not always occur. The following links are affected

https://apps.apple.com/de/app/116117-app/id1465237675
https://apps.apple.com/de/app/corona-warn-app/id1512595757
https://www.instagram.com/rki_fuer_euch/

Steps to reproduce
Execute
npx cypress run -s cypress/integration/hybrid/check_links.js -c baseUrl=https://coronawarn.app --headed --browser chrome
in root directory of cwa-website clone.
Example error:
Method: GET
URL: https://apps.apple.com/de/app/corona-warn-app/id1512595757

No response was received within the timeout.

Suggested change
Add the following links to the list on
https://github.com/corona-warn-app/cwa-website/blob/3c204036c9368378daca86478cb283b5b29cd828/cypress/integration/hybrid/check_links.js#L37

https://apps.apple.com/de/app/116117-app/id1465237675
https://apps.apple.com/de/app/corona-warn-app/id1512595757
https://www.instagram.com/rki_fuer_euch/

which avoids the listed links being tested.

Internal Tracking ID: EXPOSUREAPP-13420

Other links to apple, such as https://support.apple.com/en-gb/HT201252 also seem to be affected by occasional time-out issues.

Hi @MikeMcC399, I'm working on this now. I was thinking that maybe is better to avoid all links that include 'apple.com' in the URL and also social media URLs (Twitter and Instagram profiles). What do you think about it?
The reason to avoid social media URLs is that they exist in almost all pages and is easier to get blocked cause of the flood.

Hi @brifemu
I have only seen problems with apple and instagram so I think it is sufficient just to exclude the links which showed errors in the past. I didn't see any problem with Twitter so far.
It is only possible to build up experience over time about which links cause a problem in this area because they only fail sometimes, not always. Also, only some of the apple links fail, so that could depend on the timing of each request. This is not really an exact science, more of a trial-and-error process!

@MikeMcC399 Perfect! I'm going to create the PR then.

This issue is resolved by PR #2973.


aws elb bugfix

这个 PR 实现什么功能/修复什么问题:
1.elb certificate usable fix
2.aws tcp&udp backendgroup create bugfix
3.aws backendgroup create bugfix
4.aws create listener bugfix
5.aws delete loadbalancer bugfix
6.aws backendgroup cache query fix
7.aws delete loadbalancer listener fix
8.aws create backendgroup fix
9.aws delete backend fix
10.loadbalancer listener rule add is_default column
11.huawei elb backendgroup sync fix
12.aws https listener sync fix
是否需要 backport 到之前的 release 分支:

release/2.11
release/2.12

/area region
/cc @swordqiu @yousong @ioito

Codecov Report

Merging #3524 into master will decrease coverage by <.01%.
The diff coverage is 0%.

@@            Coverage Diff            @@
##           master   #3524      +/-   ##
=========================================
- Coverage    6.97%   6.97%   -0.01%
=========================================
  Files         498     498
  Lines       83211   83246      +35
=========================================
+ Hits         5808    5810       +2
- Misses      76908   76942      +34
+ Partials      495     494       -1

Flag
Coverage Δ

#aFlag
6.97% <0%> (-0.01%)
:arrow_down:

Impacted Files
Coverage Δ

pkg/mcclient/options/loadbalancercertificates.go
0% <ø> (ø)
:arrow_up:

pkg/compute/models/loadbalancerlistenerrules.go
1.94% <0%> (-0.03%)
:arrow_down:

pkg/compute/models/loadbalancercertificates.go
4.43% <0%> (ø)
:arrow_up:

pkg/multicloud/aws/loadbalancer.go
0% <0%> (ø)
:arrow_up:

pkg/multicloud/aws/loadbalancerlistenerrule.go
0% <0%> (ø)
:arrow_up:

pkg/multicloud/aws/loadbalancerlistener.go
0% <0%> (ø)
:arrow_up:

pkg/compute/models/cloudsyncelb.go
0% <0%> (ø)
:arrow_up:

pkg/compute/models/loadbalancerlisteners.go
1.49% <0%> (-0.07%)
:arrow_down:

pkg/compute/models/loadbalancerawscachedlbbg.go
3.51% <0%> (-0.02%)
:arrow_down:

pkg/appsrv/response.go
69.23% <0%> (+3.07%)
: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 8b4d1d8...50953cb. Read the comment docs.

/lgtm

/approve


elasticsearch index mapping acording to schema

Description
elasticsearch index mapping acording to schema
Reviewer
@gserranojc
Test
All passed
Coverage
34,99%.
Scalastyle
All test passed.

Jenkins job pending... wait for confirmation message before merging.

Jenkins job went KO. Its up to someone to merge.

Jenkins job pending... wait for confirmation message before merging.

Jenkins job went KO. Its up to someone to merge.


This is adding a way to use idiff for comparing the resulting encode.

This is adding a way to use idiff for comparing the resulting encode, rather than relying on vmaf.
There are some image comparisons that vmaf is problematic for, in particular if we are trying to test colorspace changes, and are expecting a 1-1 result. So we want to be able to use idiff with a specified tollerance, rather than PSNR. This also adds the option of other comparison operators too. The goal here is to be able to use the test harness to confirm that the results match what we expect.

Just as an FYI, we're thinking about adding some additional perceptual image comparison methods to OIIO that are good for test suites (for renderers, etc.) that compare images but want to tolerate a bit of difference as long as it's not "too much". We aren't sure which ones to add quite yet, but if there are any particular ones that would be helpful to you for this, let us know and we'll try to make sure those are among the ones we add.

Thanks Larry, I saw the “-p” option, so I assume you are talking about using other algorithms on top of that?
We definitely would be interested, particularly  if they can return a metric as well as a yes/no (which the current one seems to be?).
Sam.

On Jun 9, 2023, at 5:42 PM, Larry Gritz @.***> wrote:
Just as an FYI, we're thinking about adding some additional perceptual image comparison methods to OIIO that are good for test suites (for renderers, etc.) that compare images but want to tolerate a bit of difference as long as it's not "too much". We aren't sure which ones to add quite yet, but if there are any particular ones that would be helpful to you for this, let us know and we'll try to make sure those are among the ones we add.
—
Reply to this email directly, view it on GitHub https://github.com/AcademySoftwareFoundation/EncodingGuidelines/pull/14#issuecomment-1584861898, or unsubscribe https://github.com/notifications/unsubscribe-auth/AA2TR2AJLLV5KOM3CSEFA5LXKNG7DANCNFSM6AAAAAAZAQP2XE.
You are receiving this because you authored the thread.

The -p option uses Hector Yee's perceptual diff from like 20+ years ago. It's so-so. A lot of improved perceptual image comparisons have been published since then, but I hadn't gotten around to implementing them. I think we could do a lot better.
With reinforcement learning research depending so much on "how close is the image I'm generating to the target", a lot of progress has been made in this area in recent years.

Testing lossy compression algorithms, also, has been a driving factor in improving perceptual diff metrics over the years.


Errors compiling 14.20.0 on Apple silicon with latest xcode-tools.

Operating system and version:
MacOs 14.3.1
nvm debug output:

nvm --version: v0.39.7
$TERM_PROGRAM: Apple_Terminal
$SHELL: /bin/zsh
$SHLVL: 1
whoami: 'XXXX'
${HOME}: /Users/XXXX
${NVM_DIR}: '${HOME}/.nvm'
${PATH}: ${NVM_DIR}/versions/node/v16.0.0/bin:/opt/homebrew/opt/python@3.10/libexec/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/usr/local/sbin
$PREFIX: ''
${NPM_CONFIG_PREFIX}: ''
$NVM_NODEJS_ORG_MIRROR: ''
$NVM_IOJS_ORG_MIRROR: ''
shell version: 'zsh 5.9 (x86_64-apple-darwin23.0)'
uname -a: 'Darwin 23.3.0 Darwin Kernel Version 23.3.0: Wed Dec 20 21:31:00 PST 2023; root:xnu-10002.81.5~7/RELEASE_ARM64_T6020 arm64'
checksum binary: 'sha256sum'
OS version: macOS 14.3.1 23D60
awk: /usr/bin/awk, awk version 20200816
curl: /usr/bin/curl, curl 8.4.0 (x86_64-apple-darwin23.0) libcurl/8.4.0 (SecureTransport) LibreSSL/3.3.6 zlib/1.2.12 nghttp2/1.58.0
wget: /opt/homebrew/bin/wget, GNU Wget 1.21.4 built on darwin22.4.0.
sed: /usr/bin/sed
cut: /usr/bin/cut
basename: /usr/bin/basename
rm: /bin/rm
mkdir: /bin/mkdir
xargs: /usr/bin/xargs
git: /usr/bin/git, git version 2.39.3 (Apple Git-145)
grep: /usr/bin/grep, grep (BSD grep, GNU compatible) 2.6.0-FreeBSD
nvm current: v16.0.0
which node: ${NVM_DIR}/versions/node/v16.0.0/bin/node
which iojs: iojs not found
which npm: ${NVM_DIR}/versions/node/v16.0.0/bin/npm
npm config get prefix: ${NVM_DIR}/versions/node/v16.0.0
npm root -g: ${NVM_DIR}/versions/node/v16.0.0/lib/node_modules

nvm ls output:

->      v16.0.0
default -> 16.0.0 (-> v16.0.0)
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v16.0.0) (default)
stable -> 16.0 (-> v16.0.0) (default)
lts/* -> lts/iron (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.12 (-> N/A)
lts/fermium -> v14.21.3 (-> N/A)
lts/gallium -> v16.20.2 (-> N/A)
lts/hydrogen -> v18.19.1 (-> N/A)
lts/iron -> v20.11.1 (-> N/A)

How did you install nvm?
brew install, and following the instructions on the brew page.
What steps did you perform?
nvm install 14.20.0
What happened?
Compilation errors with xcode-tools 15.3 (released 6th Mar)
Working once downgrading to xcode-tools 15
Many errors such as:
../deps/v8/src/base/bit-field.h:43:29: error: integer value 3 is outside the valid range of values [0, 1] for this enumeration type [-Wenum-constexpr-conversion]
What did you expect to happen?
Successful compilation with either version of xcode-tools.
Is there anything in any of your profile files that modifies the PATH?
Yes

If you are having installation issues, or getting "N/A", what does curl -I --compressed -v https://nodejs.org/dist/ print out?

Note that nvm is unsupported when installed with homebrew; please install it using the only supported mechanism, the install script.
Re node 14 on an M* mac, see https://github.com/nvm-sh/nvm#:~:text=Apple Silicon in the readme.


Firebase integration to GET, CREATE and DELETE collections

This issue focus on integration of firebase on fast-auth-signer with followings tasks:

Ability to GET, CREATE and DELETE device collections from/to firestore.
User should only have access to their own collections and won't be able to do any actions from step 1 on other's collections
Upon create, we should collect device, os info

Currently it is in review


Responsive Website Template for a Restaurant. #201

I am a contributor from GSSoC - 22. I have created a Responsive Restaurant Website Template with amazing effects . So kindly Review and merge my PR.
Fixes # 201
Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] My changes generate no new warnings

ATTACH SCREEN-SHOTS / DEPLOYMENT LINK

Looks good! But your logo and the magnifying glass are overlapping ...just make it correct only... the rest is ok!

Looks good! But your logo and the magnifying glass are overlapping ...just make it correct only... the rest is ok!

Ol.. I'll do it soon.. Thnx for the suggestion 👍

@VidhiBhatt01 could u please send me the screen shot of the issue

@CoderSahil128 In the first 6 screenshots you attached, the magnifying glass on navbar is not sized properly also the search box is bigger in size. Just align them properly with CSS

@VidhiBhatt01 I've Updated the file .Now kindly plz review it and merge it.


Simplify GLTF loader code

I dig it. Thanks! We recently merged a "clippy pr" where we reformatted a bunch of code. Can you resolve the conflicts here?

Done. Wanted to squash the commits but was unsure how to do it cause of my lack of experience with git.

I'll just squash when I merge!


FileNotFoundError when downloading.

I fixed my issue #934 21 days ago, and then today have come back, trying to download a track but am getting this new error.
C:\Users\Silverarmor\Desktop\test>spotdl https://open.spotify.com/track/5cPO2j2p9Myq77YQVwWyrN?si=_JtkazjsQ3uWmWKughvS5A
Fetching Song...
  0%|                                                                                |ETA: ?, ~min/songTraceback (most recent call last):
  File "c:\users\Silverarmor\appdata\local\programs\python\python38-32\lib\site-packages\spotdl\download\downloader.py", line 114, in download_song
    downloadedFilePath = trackAudioStream.download(
AttributeError: 'NoneType' object has no attribute 'download'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "c:\users\Silverarmor\appdata\local\programs\python\python38-32\lib\runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "c:\users\Silverarmor\appdata\local\programs\python\python38-32\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "C:\Users\Silverarmor\AppData\Local\Programs\Python\Python38-32\Scripts\spotdl.exe\__main__.py", line 7, in <module>
  File "c:\users\Silverarmor\appdata\local\programs\python\python38-32\lib\site-packages\spotdl\__main__.py", line 100, in console_entry_point
    downloader.download_single_song(song)
  File "c:\users\Silverarmor\appdata\local\programs\python\python38-32\lib\site-packages\spotdl\download\downloader.py", line 274, in download_single_song
    download_song(songObj, self.displayManager, self.downloadTracker)
  File "c:\users\Silverarmor\appdata\local\programs\python\python38-32\lib\site-packages\spotdl\download\downloader.py", line 124, in download_song
    remove(join(tempFolder, convertedFileName) + '.mp4')
FileNotFoundError: [WinError 2] The system cannot find the file specified: '.\\Temp\\5 Seconds of Summer - She Looks So Perfect.mp4'
  0%|                                                                                |ETA: ?, ~min/song

C:\Users\Silverarmor\Desktop\test>

Try updating pytube from their upstream manually.

Just tried it.  I'm getting the same error on linux (Ubuntu 18.04, python 3.7)
python -m spotdl  https://open.spotify.com/album/40epQ5uLIK1k7mGL0ESpUn\?highlight\=spotify:track:5rIjJkNIY3sRtjPJVOctRE

Fetching Song...
  0%|                                                                                |ETA: ?, ~min/songTraceback (most recent call last):
  File "/home/ian/anaconda3/envs/spotify/lib/python3.7/site-packages/spotdl/download/downloader.py", line 114, in download_song
    downloadedFilePath = trackAudioStream.download(
AttributeError: 'NoneType' object has no attribute 'download'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/ian/anaconda3/envs/spotify/lib/python3.7/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/ian/anaconda3/envs/spotify/lib/python3.7/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/home/ian/anaconda3/envs/spotify/lib/python3.7/site-packages/spotdl/__main__.py", line 136, in <module>
    console_entry_point()
  File "/home/ian/anaconda3/envs/spotify/lib/python3.7/site-packages/spotdl/__main__.py", line 100, in console_entry_point
    downloader.download_single_song(song)
  File "/home/ian/anaconda3/envs/spotify/lib/python3.7/site-packages/spotdl/download/downloader.py", line 274, in download_single_song
    download_song(songObj, self.displayManager, self.downloadTracker)
  File "/home/ian/anaconda3/envs/spotify/lib/python3.7/site-packages/spotdl/download/downloader.py", line 124, in download_song
    remove(join(tempFolder, convertedFileName) + '.mp4')
FileNotFoundError: [Errno 2] No such file or directory: "./Temp/Judee Sill - There's a Rugged Road - Remastered.mp4"

Try updating pytube from their upstream manually.

I have already done pip install --upgrade pytube

I was a different error so I updated the pytube. It downloaded 1 song successfully then started giving this error.
Now its popping everytime I run spotdl.

I fixed my error by force updating pytube and then spotdl
@xq8ed If you are still having an error after trying these steps which solved the original issue, you can open another issue.


Crash when starting game

crash-2021-07-12_00.59.24-client.txt

Thank you for reporting this issue. It appeared due to an outdated version of some libraries for Conjuring. This has been fixed in an upcoming release, so please update it when it comes out.

Thank you!  Excited to use these mods in my pack!


Add REST Assured's JsonPath support for LinkDiscoverer in Spring

From<EMAIL_ADDRESS>on December 05, 2013 11:51:50
See https://github.com/spring-projects/spring-hateoas#linkdiscoverer-api
Original issue: http://code.google.com/p/rest-assured/issues/detail?id=286

From<EMAIL_ADDRESS>on January 27, 2014 04:37:20
Summary: Add REST Assured's JsonPath support for LinkDiscoverer in Spring  <span class="oldvalue"> (was: Add HAL support) </span>

From<EMAIL_ADDRESS>on January 27, 2014 04:37:28
Issue 287 has been merged into this issue.


cmon via cli not working..

Hi, could you give some clarification how to install the "cmon" command for the cli? I installed the python package via pip but I don't know hot to run cmoncrawl via the command line..

Sorry for late response. If you would still like to use the library what exactly was your problem ?

Closing due to inactivity


Add rule type headers to legend

Add a header above each category of rules to distinguish them. This follows the description above the legend.

Related to the discussion in #1256

This does look nicer, but isn't strictly right as patent use can be a permission or limitation. Ideally the patent limitation would be rendered with the other limitations.

Indeed, I missed that. Attempt of a fix in #1261 which makes the whole logic simpler at the same time.


Dashboard: Detail View Performance Enhancements + Routing Fixes

Summary
This PR improves the performance of loading the detail view. It can have over 9 different preview cards. Previously we were loading them synchronously via useRef or useMemo. Now we want the page to load, and then set them using useState that way we are not blocked. We also sequentially load the related after the template itself has loaded.
Also fixes the initial scale-jumping where the cards shrunk into correct position. Now cards render at the correct size with no jump.

Relevant Technical Choices

Creates a route resolver for when jumping to one detail view to the next
Fixes the Dashboard Font Provider to effectively cancel the request if the Provider has been unmounted (this fixes an intermittent bug)
Uses setState pattern to sequentially load expensive card data rather than useMemo which blocks on initial render.

User-facing changes

This is mostly performance improvements and bug fixes.
The detail page should load faster and not crash intermittently.
The preview cards now have borders around all of them and a shadow around the active. This helps light-colored templates not blend in.

Testing Instructions

Visit the Template Gallery section on the Dashboard and View any Template. See that the page loads faster and there is no more scale-jumping.

Fixes #1863

@mariano-formidable Yeah I think I need to clear the cards first then reload them. I think React is doing a diff re-render when the data comes in. I definitely want the title to instantly show up.

@mariano-formidable That should hopefully fix that one glitch you caugh!


Download Windows and Mac JREs automatically during packaging

Fixes #4333.
Changes proposed in this pull request:

integrate inside Maven configuration the steps to download JREs to be embedded in Windows and Mac releases
remove the settings.xml file at the root of the repository which was used to trigger Windows with JRE builds (now done automatically alongside the other artifacts)
remove one step in the documentation of how to cut out a release (only 17 left, yay!)

Merging, in the hope that snapshots with embedded JRE will now be published too. Will revert if failures occur.


Missing documentation in API client

Problem
Document DockerCli struct and NewDockerCli function in api/client/cli.go.
Solution
Write godoc-style comments which describe idea of DockerCli(each Cmd... method represents cli command) and NewDockerCli parameters. Examples of such comments can be found in golang standard library golang.org/pkg/.

#dibs

@xamyzhao when you do a PR, can you please add fixes or closes keyword to it? Thanks!

@rrarunan I removed my dibs on this issue -- I don't have time to work on it at the moment. Sorry about the delay! I thought Gordon would take care of it.

Removed the status/claimed label.

#dibs


We do need to build binaries in build job

because it doesn't use make targets for running
integration test, it invokes directly.

YOLOing it, it's a partial revert from previous PR.


Add sdk for Content Safety

Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

/cc: @heaths for review/service buddy.

@mengaims could you please update the codeowners file. We always recommend putting 2 owners in the list - https://github.com/Azure/azure-sdk-for-net/blob/main/.github/CODEOWNERS

@pallavit Updated, please check the latest code in PR. Btw, do I need any other changes like changing the name of PR?

@heaths I've already updated following content in this PR:

Tests and test recordings
Samples
Changelog
Ci.yml

Could you help have one round of review of them and trigger the CI pipeline run?
And here are the items WIP:

Readme
Operations generation issue in Azure.AI.ContentSafety.netstandard2.0.cs (We could have an online discussion if you could attend the sync I sent)

Please let me know if I have other things missing.

Could you help have one round of review of them and trigger the CI pipeline run?

@m-nash should the onboarding tool be creating the pipelines automatically? @mengaims there's no pipeline for me to approve, but one was not created which seems the onboarding wizard should've taken care of. Or was there a step skipped in documentation? Looking through our wiki docs, it seems this should've been created automatically. I'll ping a few people offline for clarification.

/azp run prepare-pipelines

/azp run net - contentsafety - ci

Now that the CI is hooked in it will start to report all the errors.
One thing I see is we are missing the tsp-location.yaml file which was used to do the dotnet build /t:GenerateCode.  The CI will complain about this.

Now that the CI is hooked in it will start to report all the errors.
One thing I see is we are missing the tsp-location.yaml file which was used to do the dotnet build /t:GenerateCode. The CI will complain about this.

@m-nash , thanks for the reminding! I have a question here, the CI will only check the existence of this file or will try run dotnet build /t:GenerateCode according to it? Since I've met some errors when using remote branch in this file, after mitigate with referencing to local file, it works.

@mengaims you need to run dotnet build /t:GenerateCode locally. See https://aka.ms/azsdk/dpcodegen/net. You also need to check in all the files including the client tsp.

@mengaims you need to run dotnet build /t:GenerateCode locally. See https://aka.ms/azsdk/dpcodegen/net. You also need to check in all the files including the client tsp.

Yes I've ran it locally.

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.AI.ContentSafety


SNS Sync not working on Ubuntu

Hi,
I have encountered a strange error when trying to get yas3fs to work in a non-AWS environment.
2015-04-07 22:04:45,743 DEBUG downloading certificate
----------------------------------------
Exception happened during processing of request from ('<IP_ADDRESS>', 21857)
Traceback (most recent call last):
  File "/usr/lib/python2.7/SocketServer.py", line 295, in _handle_request_noblock
    self.process_request(request, client_address)
  File "/usr/lib/python2.7/SocketServer.py", line 321, in process_request
    self.finish_request(request, client_address)
  File "/usr/lib/python2.7/SocketServer.py", line 334, in finish_request
    self.RequestHandlerClass(request, client_address, self)
  File "/usr/lib/python2.7/SocketServer.py", line 649, in __init__
    self.handle()
  File "/usr/lib/python2.7/BaseHTTPServer.py", line 340, in handle
    self.handle_one_request()
  File "/usr/lib/python2.7/BaseHTTPServer.py", line 328, in handle_one_request
    method()
  File "/usr/local/lib/python2.7/dist-packages/yas3fs/__init__.py", line 614, in do_POST
    cert = M2Crypto.X509.load_cert_string(self.certificate)
NameError: global name 'M2Crypto' is not defined
----------------------------------------
^C2015-04-07 22:07:02,420 DEBUG destroy '/'
2015-04-07 22:07:02,421 INFO File system unmount...
2015-04-07 22:07:02,421 DEBUG flush_all_cache
2015-04-07 22:07:02,422 INFO waiting for SNS publish thread to shutdown...
2015-04-07 22:07:02,536 INFO waiting for check cache thread to shutdown...
2015-04-07 22:07:05,608 INFO File system unmounted.

But the package is already installed:
root:/mnt# pip install m2crypto
Requirement already satisfied (use --upgrade to upgrade): m2crypto in /usr/local/lib/python2.7/dist-packages
Cleaning up...

Am I missing something?

Further troubleshooting leads to the necessity to do
cd /usr/include/openssl/ && ln -s ../x86_64-linux-gnu/openssl/opensslconf.h .

and then install M2Crypto again...
wget http://chandlerproject.org/pub/Projects/MeTooCrypto/M2Crypto-0.21.1-py2.7-macosx-10.8-intel.egg && sudo easy_install M2Crypto-*.egg

however, that leads us to
2015-04-07 22:18:12,186 ERROR Uncaught Exception: <type 'exceptions.ImportError'> /root/.python-eggs/M2Crypto-0.21.1-py2.7-linux-x86_64.egg-tmp/M2Crypto/__m2crypto.so: undefined symbol: SSLv2_method <traceback object at 0x7f8a4bd636c8>
None

which looks like this bug https://github.com/saltstack/salt/issues/391

And going with the default ubuntu python-m2crypto package brings us back to
NameError: global name 'M2Crypto' is not defined

I have tried manually patching M2Crypto to remove SSLv2, no avail.
https://github.com/martinpaljak/M2Crypto/commit/84977c532c2444c5487db57146d81bb68dd5431d here as well,

I always preferred the SQS pull model (from the client environment) to SNS push for this kind of use case. Is there any blocker to not use SQS in this case? I implemented SNS push (via HTTP) when SQS didn't have long polling, but since it was released I never used SNS with yas3fs. What do you think?

Most of my nodes are non-AWS. Correct me if I'm wrong, but I thought I cannot use SQS for those endpoints.

Whether or not you configure yas3fs to use the SNS topic for broadcasting events, has nothing to do with where your instances lives. You can start yas3fs on ec2 nodes, azure nodes, your laptop, or your own vm's in your own data-center... etc. The SNS communication is just for yas3fs nodes to broadcast fs events to other yas3fs nodes (regardless of where they physically reside).

Thanks, will try it.

I understand that, but am new to AWS and not quite sure of how the difference between SNS and SQS mechanisms would impact yas3fs config.
So, regardless of whether we are using SNS or SQS we will have to supply "--port", but in the case of an AWS endpoint we can use "--use-ec2-hostname" instead of "--hostname" (which is also needed for non-AWS)?

Ok, so I think I got it working with --queue and --topic but without --hostname and --port. I assume those two are not necessary?

Yes, great work! Those parameters are for SNS HTTP notifications only, not required if using SQS.
dp

On 10 Apr 2015, at 05:31, Jay J<EMAIL_ADDRESS>wrote:
Ok, so I think I got it working with --queue and --topic but without --hostname and --port. I assume those two are not necessary?
—
Reply to this email directly or view it on GitHub.

Thank you!


Use retry logic when kapp deploy encounters client connection lost

Describe the problem/challenge you have
kapp deploy fails without retry on http2: client connection lost
Example from our CI environment which uses kapp deploy:
	    | 3:45:49PM: ---- waiting on 6 changes [61/67 done] ----
3:46:49PM: Deploy failed
	    | E0607 15:46:48.669366      32 request.go:1058] Unexpected error when reading response body: http2: client connection lost
	    | kapp: Error: waiting on reconcile packageinstall/bitnami-services (packaging.carvel.dev/v1alpha1) namespace: tap-install:
	    |   Errored:
	    |     Getting resource packageinstall/bitnami-services (packaging.carvel.dev/v1alpha1) namespace: tap-install:
	    |       API server says: unexpected error when reading response body. Please retry. Original error: http2: client connection lost (reason: )
	    | Deploying: Error (see .status.usefulErrorMessage for details)

Describe the solution you'd like
Use retry logic when this sort of network error is encountered.
Anything else you would like to add:
N/A

Vote on this request
This is an invitation to the community to vote on issues, to help us prioritize our backlog. Use the "smiley face" up to the right of this comment to vote.
👍 "I would like to see this addressed as soon as possible"
👎 "There are other more important things to focus on right now"
We are also happy to receive and review Pull Requests if you want to help working on this issue.

We do have a set of errors we retry for, this would qualify as an addition if we are sure that we won't risk retrying in cases which we cannot recover from while matching to this error string


The maximum number of instances for drawing is restricted

Is your feature request related to a problem? Please describe.
"RenderableManager::Builder.instances() function"。the maximum number of instances allowed is 32767。Why is there this limitation, and what should I do if I need to render a larger number of point clouds?
Describe the solution you'd like
How to render point cloud data with more than 32767 instances?
Describe alternatives you've considered
OS and backend

Are you trying to render more than 32k points? If so it's not instancing you should be using, but a renderable with all the vertices you need.

Are you trying to render more than 32k points? If so it's not instancing you should be using, but a renderable with all the vertices you need.
@romainguy thanks to reply！
I am try to render point cloud data for Gaussian splatting, and the point count for these models exceeds 32676. When using OpenGL directly, the glDrawArraysInstanced function allows for drawing a larger number of instances. In this algorithm for rendering point clouds, the position of each instance is calculated in the shader code, requiring drawing in the manner of glDrawArraysInstanced. Is there a way to lift the limitation?

if that's what you want to do, you will have to use multiple Renderables. The limit to 32767 cannot be changed currently.

@pixelflinger Thank you very much! I konw


Need more informative errors from eden when there are test failures

Description
As part of running the github actions for EVE which kicks of some tests using Eden, if there are any failures the output does not indicate much useful. See for example https://github.com/lf-edge/eve/pull/1611/checks?check_run_id=1360269311
Re-running the tests makes it pass, but it would be good to have the test output indicate that was wrong where, whether that is in the form of logs indicating how far the test got, and/or by providing more information about the state of things when the failure happened.
Steps to Reproduce
Watch the EVE PRs fail from time to time; this seems to happen on more every third to every fifth PR which is running the Eden tests.
Actual Results
Expected Results
Additional Information

Totally agree. We are aware and consider this a priority. Will at least report eden pod ps and eden status once tests fail

Super +1 to @eriknordmark comments and here's an additional from myself -- it would be really nice if Eden test run can output results in a format compatible with JUnit, etc. -- we're using the same format for our unit test in EVE and this allows us to use this GitHub Action plugin to report these results as annotations https://github.com/lf-edge/eve/blob/master/.github/workflows/eve.yml#L19
It would be really helpful if Eden can do the same @mydatascience

I believe I can close it for now. Please reopen if it's still an issue


Optimise monitor icons/add [monitor-]play/dot/check icons

Edit: pushed monitor-x

@karsa-mistmere Is the x slightly too big? Relative to other *-x icons https://lucide.dev/icons?search=x

Yeah, I'm afraid our Xs aren't very consistent in size:

But you're right, better make this one the same as in file, folder etc.

Yeah, I'm afraid our Xs aren't very consistent in size

I noticed. Same as the question marks, I think fixing all of those are for separate PRs…


WIP: adds limo dataset example code

Reference issue
Closes #6075
What does this implement/fix?
Add example code to load single subject data from the LIMO dataset, creating an MNE epochs structure and computing the evoked response for experimental conditions.

+1 to add a proper data fetcher

+1 to add a proper data fetcher

Good @agramfort @larsoner . This is what I wanted to here. @JoseAlanis let's do a limo data fetcher just like for the other packages.
We should then do a data loader like:  mne.datasets.eegbci.load_data

@JoseAlanis any progress?

Hey guys, yes, I added some pieces of code I've been working on.
I added the functions mne.datasets.limo.data_path() and mne.datasets.limo.load_data() as suggested. Looking forward to hear your comments and suggestions.
The functions handle the downloading and fetching of the LIMO epochs more in the style of the other datasest that are already integrated in MNE. One difficulty I came upon however is that the LIMO files are stored in one big .zip folder (~8 GB) online. So the first downloading and extracting of the files takes time and cover a big chunk of space on disk. Also, there are some nested .zips and .tars in the download file. Right now I just loop through the levels and unpack them, but it would be nice to hear if there is a better way of doing this.
The example code in examples/datasets/ is not quite ready jet. I'll add some more analyses soon.

Cool, thanks @JoseAlanis ! I left a few comments to begin with.

The functions handle the downloading and fetching of the LIMO epochs more in the style of the other datasest that are already integrated in MNE. One difficulty I came upon however is that the LIMO files are stored in one big .zip folder (~8 GB) online. So the first downloading and extracting of the files takes time and cover a big chunk of space on disk. Also, there are some nested .zips and .tars in the download file. Right now I just loop through the levels and unpack them, but it would be nice to hear if there is a better way of doing this.

This is the big question.
Downloading 20 GB is scary.

@jona-sassenhagen let me know when you're done. Then I'll start having a look.

@JoseAlanis can you resolve the issues I raised?
Afterwards can you ping @dengemann and ask him to give it a pass? Thanks

Alright, I integrated your suggestions, @jona-sassenhagen. What do you think, @dengemann?

LGTM shows an error, as do the make pep tests:
https://travis-ci.org/mne-tools/mne-python/jobs/532166182#L3433-L3457

ok, I changed the code a little bit, hope the changes take care of the issues.

example files should be called plot_
you need to update the CI files to this dataset is downloaded
do a git grep kiloword and see where new datasets should be list / documented

@JoseAlanis check Travis:
https://travis-ci.org/mne-tools/mne-python/jobs/533895775#L2659
You need to restrict the pandas import in _requires_pandas or something like that. See if you can find how yourself, otherwise ask again.

Also check here: https://travis-ci.org/mne-tools/mne-python/jobs/533895776#L2810

Alright, thanks, @jona-sassenhagen. Hope I got it right

rendered example
https://13245-1301584-gh.circle-artifacts.com/0/dev/auto_examples/datasets/plot_limo_data.html

the face effect looks really aweful, especially compared to the average. Any clue what’s going on here?

On 21 May 2019, at 09:58, Alexandre Gramfort<EMAIL_ADDRESS>wrote:
rendered example
https://13245-1301584-gh.circle-artifacts.com/0/dev/auto_examples/datasets/plot_limo_data.html

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

Do we need an interaction term here?

Thanks for the comments @jona-sassenhagen. Like we discusses earlier with @dengemann, I added a more extensive explanation of the LIMO-paradigm and the effects that can be expected from linear regression. Hope the example is clearer now. Specially the reason as to why some effects look nice and others just don't show any systematic differences.
I'm leaving the interaction term out for now and just going with the main effect of phase-coherence and face condition, as these are the effects that are discussed more closely in the original LIMO paper.
Hope the example renders well with the changes made.
What do you think?

Is the CI error related to the PR?

Where are we here? Ping ping

I took care of the errors. Something else I can do to get the PR going?

Ok great! Looks good to me. I think we can live with some coverage issues for now. If no one objects, I'll merge later.
FYI @GRousselet @CPernet MNE about to feature LIMO :-) Feedback is welcome.

Does this fetch the full limo dataset?
Does the example show something from a paper?

Does this fetch the full limo dataset?

no, just the EEG of one subject

Does the example show something from a paper?

Yes it shows results compatible with the LIMO paper, however not the group analysis

Yes! Absolutely.

On 31 May 2019, at 11:22, José C. García Alanis<EMAIL_ADDRESS>wrote:
@JoseAlanis commented on this pull request.
In mne/datasets/limo/limo.py:

           files = [op.join(limo_dir, file) for file in z1.namelist()]

           stdout.write('Decompressing %g files from\n'

                        '"%s" ...' % (len(files), destination))

           z1.extractall(op.join(limo_dir, subject_id))

           stdout.write(' [done]\n')

           z1.close()

           os.remove(destination)

update path if desired

_do_path_update(path, update_path, key, name)

return limo_dir

+@verbose
+def load_data(subject, path=None, interpolate=False, force_update=False,
Ok. I removed the option in the loader and added a comment in plot_limo_data regarding interpolation of missing channels.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

Ok time to merge 🚀 - thank you @JoseAlanis + reviewers!

This broke CircleCI:
https://circleci.com/gh/mne-tools/mne-python/13452
Is there a user prompt for the dataset? If so you need to do what we do for the brainstorm data. Also need to modify mne.datasets.utils._download_all_example_data, which Circle uses on full builds.
Can someone look ASAP?

This was not squashed

Denis :D


cargo-llvm-cov doesn't report results with test using fork

So I'm integrating an llvm coverage-instrumentation based backend to tarpaulin and had a few false negatives compared to my ptrace implementation on one of my projects used to test coverage. So checked it in cargo-llvm-cov and it picked up 0 lines. My implementation using -Cinstrument-coverage picked up the files and all the same lines as ptrace implementation except for two libc::exit calls. I'll try using just the RUSTFLAGS myself and profdata and cov binaries directly after work. But as this is my first time trying cargo-llvm-cov to avoid that faff I wondered if I was doing anything wrong.
https://github.com/xd009642/tarpaulin/tree/develop/tests/data/fork-test
The output:
cargo llvm-cov
   Compiling libc v0.2.104
   Compiling fork-test v0.1.0 (/home/daniel/personal/tarpaulin/tests/data/fork-test)
    Finished test [unoptimized + debuginfo] target(s) in 1.54s
     Running unittests src/lib.rs (target/llvm-cov-target/debug/deps/fork_test-cee38c9777d8078f)

running 3 tests
test test1 ... ok
test test2 ... ok
test test3 ... ok

test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

Filename                      Regions    Missed Regions     Cover   Functions  Missed Functions  Executed       Lines      Missed Lines     Cover    Branches   Missed Branches     Cover
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
TOTAL                               0                 0         -           0                 0         -           0                 0         -           0                 0         -

Also tarpaulin output for comparison:
cargo tarpaulin --engine llvm -r tests/data/fork-test/`
Jul 01 12:13:46.283  INFO cargo_tarpaulin::config: Creating config
Jul 01 12:13:46.303  INFO cargo_tarpaulin: Running Tarpaulin
Jul 01 12:13:46.303  INFO cargo_tarpaulin: Building project
Jul 01 12:13:46.303  INFO cargo_tarpaulin::cargo: Cleaning project
   Compiling libc v0.2.104
   Compiling fork-test v0.1.0 (/home/daniel/personal/tarpaulin/tests/data/fork-test)
    Finished test [unoptimized + debuginfo] target(s) in 1.67s
  Executable unittests src/lib.rs (tests/data/fork-test/target/debug/deps/fork_test-d95f40770f51fc1c)
Jul 01 12:13:48.110  INFO cargo_tarpaulin::process_handling: running /home/daniel/personal/tarpaulin/tests/data/fork-test/target/debug/deps/fork_test-d95f40770f51fc1c
Jul 01 12:13:48.110  INFO cargo_tarpaulin::process_handling: Setting LLVM_PROFILE_FILE

running 3 tests
test test1 ... ok
test test2 ... ok
test test3 ... ok

test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

Jul 01 12:13:49.616  INFO cargo_tarpaulin::statemachine::instrumented: For binary: target/debug/deps/fork_test-d95f40770f51fc1c
Jul 01 12:13:49.616  INFO cargo_tarpaulin::statemachine::instrumented: Generated: fork_test-d95f40770f51fc1c_14148.profraw
Jul 01 12:13:49.623  INFO cargo_tarpaulin::report: Coverage Results:
|| Uncovered Lines:
|| src/lib.rs: 24, 37
|| Tested/Total Lines:
|| src/lib.rs: 14/16 -6.25%
||
87.50% coverage, 14/16 lines covered, -6.25% change in coverage

And for completeness what the fork test looks like (only dep is libc="0.2.103"
#[test]
pub fn test1()  {
    fn child<F: FnOnce()>(f: F) {
        match unsafe { libc::fork() } {
           0 => {
               f();
               unsafe {
                   libc::_exit(0);
               }
           },
           -1 => unreachable!(),
           pid => unsafe {
               libc::waitpid(pid, core::ptr::null_mut(), 0);
           },
        }
    }

    child(|| ());
}

#[test]
pub fn test2()  {
    match unsafe { libc::fork() } {
       0 => unsafe { libc::_exit(0); }, // line 24
       -1 => unreachable!(),
       pid => unsafe {
           libc::waitpid(pid, core::ptr::null_mut(), 0);
       },
    }
}

#[test]
pub fn test3()  {
    match unsafe { libc::fork() } {
       0 => {
           unsafe {
               libc::_exit(0); // line 37
           }
       },
       -1 => unreachable!(),
       pid => unsafe {
           libc::waitpid(pid, core::ptr::null_mut(), 0);
       },
    }
}

Thanks for the report! This seems similar to https://github.com/rust-lang/rust/issues/77553, but I couldn't reproduce this on ubuntu 20.04. Could you provide information on the environment in which this occurred?
Below is the environment in which I ran the test:
$ uname -a
Linux parallels-Parallels-Virtual-Platform 5.13.0-44-generic #49~20.04.1-Ubuntu SMP Wed May 18 18:44:28 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

$ rustc -vV
rustc 1.61.0 (fe5b13d68 2022-05-18)
binary: rustc
commit-hash: fe5b13d681f25ee6474be29d748c65adcd91f69e
commit-date: 2022-05-18
host: x86_64-unknown-linux-gnu
release: 1.61.0
LLVM version: 14.0.0

$ cargo llvm-cov --version
cargo-llvm-cov 0.4.8

$ cargo tree
repro v0.1.0 (/home/parallels/projects/tmp/repro)
└── libc v0.2.126

$ cargo llvm-cov
   Compiling repro v0.1.0 (/home/parallels/projects/tmp/repro)
    Finished test [unoptimized + debuginfo] target(s) in 0.31s
     Running unittests src/lib.rs (target/llvm-cov-target/debug/deps/repro-7281c5c75dd71403)

running 3 tests
test test1 ... ok
test test2 ... ok
test test3 ... ok

test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

Filename                                          Regions    Missed Regions     Cover   Functions  Missed Functions  Executed       Lines      Missed Lines     Cover    Branches   Missed Branches     Cover
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
/home/parallels/projects/tmp/repro/src/lib.rs          19                 7    63.16%           9                 1    88.89%          52                 9    82.69%           0                 0         -
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
TOTAL                                                  19                 7    63.16%           9                 1    88.89%          52                 9    82.69%           0                 0         -

Another possibility is that the regex used here is a bit rough; if passing --remap-path-prefix or --disable-default-ignore-filename-regex solves the problem, I think that is the cause.

uname -a
Linux daniel-XPS-15-9550 5.4.0-120-generic #136~18.04.1-Ubuntu SMP Fri Jun 10 18:00:44 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

rustc -vV
rustc 1.61.0 (fe5b13d68 2022-05-18)
binary: rustc
commit-hash: fe5b13d681f25ee6474be29d748c65adcd91f69e
commit-date: 2022-05-18
host: x86_64-unknown-linux-gnu
release: 1.61.0
LLVM version: 14.0.0

cargo-llvm-cov 0.4.8

And I just tried with --disable-default-ignore-filename-regex and got coverage results, so that must be it!  FYI on tarpaulin, I use walk-dir and cargo-metadata to remove target dir, CARGO_HOME, vendored sources and keep it to just the source code. Foudn that was more robust than my initial regex attempts (people setting their CARGO_HOME to inside project directory and things in build scripts add a lot of interesting edge cases)


Branch Link Doesn't Work via SMS on Pixel 3 Messages App or TextNow

In our app, the backend creates the Branch link and sends it out via SMS, but when the Android app receives it through the native Message App or a 3rd-Party SMS app like TextNow the link either doesn't open (as is the case with Messages) or with TextNow it opens up in the custom WebView. This was tested with both a Pixel 1, Pixel 2, and Pixel 3.
However, in both these cases, if the link is copied and pasted into a Google Mail message and sent then clicked it opens up as expected.

@projectAZB what version of Android and the branch SDK are you using?

@projectAZB are you still experiencing this issue?

Due to the age and inactivity of this issue, I am closing this now. If you are encountering this problem still, please reach out to our support team (support.branch.io) or open a new github issue and we would be happy to help you out!


Use clyngor

Looks like a beta library?

I'm making the transition now and it's really nice. They take care of the parsing the output and running the command.

I see, so the idea is that we no longer need to use sub-process to call clingo? (Since there would already be a built-in wrapper)

Done in bafb338c5deeed677b934cf840bda6b9a9f2a088