Implement get_executable_path() for macOS

Implement the function to get the executable path on macOS, so that enabling -Dportable=true works on all platforms to find scrcpy-server and icon.png in the same directory as the executable.
@Genxster1998 I stole this from your branch. Thank you :wink:
Please review/test on macOS.

@rom1v I tested the build from exec_path branch, it works as expected with both wrapper and directly executing scrcpy_bin (with default adb installation) in macOS 14.5 x86_64.

One more thing, the scrcpy script does not work if called from a symlink.
For example:
$ ln -s scrcpy-linux-x86_64-v3.0/scrcpy aaa
$ ./aaa
./aaa: line 7: ./scrcpy_bin: No such file or directory

On Linux, readlink -f solves the problem:
diff --git app/data/scrcpy_static_wrapper.sh app/data/scrcpy_static_wrapper.sh
index b31b4f1f4..9e765ca87 100755
--- app/data/scrcpy_static_wrapper.sh
+++ app/data/scrcpy_static_wrapper.sh
@@ -1,4 +1,4 @@
 #!/bin/bash
-cd "$(dirname ${BASH_SOURCE[0]})"
+cd "$(dirname $(readlink -f ${BASH_SOURCE[0]}))"
 export ADB="${ADB:-./adb}"
 ./scrcpy_bin "$@"

also in the case where it's a relative symlink pointing to a relative symlink (which does not work without -f).
However, on macOS, I think readlink behaves differently (-f is not available). There is realpath, but it is not installed by default.

https://stackoverflow.com/questions/7665/how-to-resolve-symbolic-links-in-a-shell-script
Yeah ,a wrapper posix shell script won't be stable as binary itself, it would have problem resolving links,args,params etc.

I added commits so that scrcpy uses the local adb in portable builds, and I removed the wrapper script completely.
Please test/review :wink:

Edit: readlink without -f option works in macOS.

Without -f, it does not if there are two levels of relative symlinks (on Linux at least).
For example:
ln -s scrcpy-linux-x86_64-v3.0/scrcpy aaa
mkdir bbb
cd bbb
ln -s ../aaa
./aaa

Trying to build 39c39213 on macOS 10.15.7 fails with
[63/130] Compiling C object app/scrcpy.p/src_sys_unix_file.c.o
FAILED: app/scrcpy.p/src_sys_unix_file.c.o
cc -Iapp/scrcpy.p -Iapp -I../app -I../app/src -I/usr/local/include -I/usr/local/include/SDL2\
 -I/usr/local/Cellar/libusb/1.0.27/include/libusb-1.0 -fdiagnostics-color=always\
 -Wall -Winvalid-pch -Wextra -std=c11 -O0 -g -Wmissing-prototypes -D_THREAD_SAFE -MD -MQ\
 app/scrcpy.p/src_sys_unix_file.c.o -MF app/scrcpy.p/src_sys_unix_file.c.o.d\
 -o app/scrcpy.p/src_sys_unix_file.c.o -c ../app/src/sys/unix/file.c
../app/src/sys/unix/file.c:66:9: error: call to undeclared function '_NSGetExecutablePath';\
 ISO C99 and later do not support implicit function declarations\
 [-Wimplicit-function-declaration]
   66 |     if (_NSGetExecutablePath(buf, &bufsize) != 0) {
      |         ^
1 error generated.

@metayan Does this help:
diff --git app/src/sys/unix/file.c app/src/sys/unix/file.c
index 60c806bb2..6123c788c 100644
--- app/src/sys/unix/file.c
+++ app/src/sys/unix/file.c
@@ -6,6 +6,9 @@
 #include <string.h>
 #include <sys/stat.h>
 #include <unistd.h>
+#ifdef __APPLE__
+# include <mach-o/dyld.h> // for _NSGetExecutablePath()
+#endif

 #include "util/log.h"

Edit: readlink without -f option works in macOS.

Without -f, it does not if there are two levels of relative symlinks (on Linux at least).
For example:
ln -s scrcpy-linux-x86_64-v3.0/scrcpy aaa
mkdir bbb
cd bbb
ln -s ../aaa ccc
./ccc

Yeah , I tried that, It won't resolve all symbolic links. I linked the stackflow query discussing the same.

@rom1v
The include solved it. Builds and works fine.
By the way, the release scripts are also excellent, taking care of the dependencies.
Very useful.
Noticed this, though, unrelated to this PR, but appears when building on macOS:
ld: warning: could not create compact unwind for _kbd_window_init:
 stack subq instruction is too different from dwarf stack size

Merged into dev.
I will probably publish a release 3.0.1 soon with the current dev branch, which fixes several issues from 3.0.

I added commits so that scrcpy uses the local adb in portable builds, and I removed the wrapper script completely.
You mean it checks for system wide  adb env var or not before using local adb?

By default, it uses the adb the local directory.
This can be changzd by setting the ADB envvar.
For example:
ADB=adb scrcpy

It will use adb (like in non-portable builds), which will be found in the PATH.

@metayan I would strongly suggest you to move to later macOS releases preferably latest 2 releases.Catalina ceased to get security updates in oct 2022 susceptible to easy root exploits like dirtycow patched in dec 2022.


Handlebar inertia value is not physically possible

Handlebar inertia (moment of inertia of the handlebars and steering column above the torque sensor about the steer axis) is found to be a value larger than the entire steering column without weight plates:
/* moment of inertia of steering assembly about the steer axis, kg-m^2 */
constexpr float STEER_ASSEMBLY_INERTIA_WITH_WEIGHT = 0.1942f; /* with 1 kg weight plate on each side of cross bar*/
constexpr float STEER_ASSEMBLY_INERTIA_WITHOUT_WEIGHT = 0.0828f; /* without weight plates */
constexpr float STEER_ASSEMBLY_INERTIA = STEER_ASSEMBLY_INERTIA_WITH_WEIGHT; /* default configuration */

/* moment of inertia of the handlebars and steering column above the torque sensor, about the steer axis
 * determined from scripts/calculate_handlebar_inertia.py */
constexpr float HANDLEBAR_INERTIA = 0.118; /* kg-m^2 */

This is not physically possible as we remove mass but inertia increases. We need to determine why is this is the case.

Experimental measurement using springs and oscillation period determined that this value is
0.0413 kg-m^2

PR here: https://github.com/oliverlee/phobos/compare/fix-handlebar-inertia?expand=1

Whipple model with benchmark parameters, forward velocity is fixed at 7.0 m/s
Behavior at system start, handlebar inertia = 0.0413 kg-m^2

Behavior at system start, handlebar inertia = 0.118 kg-m^2

Simulating the bicycle model, here's the output with zero torque input:

and with recorded input:

Note that the plots in the previous comment (running on the microcontroller) contain a Kalman filter. The rider steer torque should be zero as no one was applying torque when this data was recorded.

It looks like the measured handlebar inertia results in a subjectively worse simulation. This could be because we have modeling errors somewhere in the system and/or due to neglect of friction. In this case, the moment of inertia estimated by the script calculate_handlebar_inertia.py would account for these errors in the sense that it returns a value that best fits our model.
We should make an explicit note in saconfig.hwhy we use the script estimated inertia instead of the inertia measured from the spring experimental setup even though the number may not be physically possible.

This is related to issue https://github.com/oliverlee/phobos/issues/109 and essentially, there is the concept of the virtual inertia and physical inertia which are not necessarily equal.


fix for #11996 which corrects property name typo in main pom.xml

this PR fixes a typo on the main pom.xml which corrects ${surefire.versino} to ${surefire.version}.  Fixes #11996.

Codecov Report

Merging #11997 (97b1ed0) into master (f30fdee) will decrease coverage by 14.88%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##             master   #11997       +/-   ##
=============================================
- Coverage     61.63%   46.76%   -14.88%
- Complexity      207      943      +736
=============================================
  Files          2385     1787      -598
  Lines        129239    93659    -35580
  Branches      20007    15149     -4858
=============================================
- Hits          79661    43801    -35860
- Misses        43771    46737     +2966
+ Partials       5807     3121     -2686

Flag
Coverage Δ

custom-integration1
?

integration
?

integration1
?

integration2
?

java-11
?

java-21
46.76% <ø> (-14.73%)
:arrow_down:

skip-bytebuffers-false
46.76% <ø> (-14.85%)
:arrow_down:

skip-bytebuffers-true
?

temurin
46.76% <ø> (-14.88%)
:arrow_down:

unittests
46.76% <ø> (-14.87%)
:arrow_down:

unittests1
46.76% <ø> (-0.21%)
:arrow_down:

unittests2
?

Flags with carried forward coverage won't be shown. Click here to find out more.
see 976 files with indirect coverage changes
:mega: Codecov offers a browser extension for seamless coverage viewing on GitHub. Try it in Chrome or Firefox today!


Feature Request: FSI: Send Line, prefix with "it"

I was practicing a demo and thought of a simple feature that I think could be discussed.
Basically, as I'm giving a demo of F#, I want to show the intermediate states of the data, a line at a time.  It would be useful, if the code looks like this:
Seq.initInfinite (fun n -> n * 2)
|> Seq.map (fun n -> n * n)
|> Seq.filter(fun n -> n % 3 = 0)
|> Seq.take 5
|> Seq.map Some
|> Seq.chunkBySize 5

That this feature would, send current line, if it starts with pipe, prefix with "it" and move to the next line, so I can see all the steps one by one with out having to select two lines, then three, then four, ect.
Example results:
Seq.initInfinite (fun n -> n * 2)
- ;;
val it : seq<int> = seq [0; 2; 4; 6; ...]
> it |> Seq.map (fun n -> n * n)
- ;;
val it : seq<int> = seq [0; 4; 16; 36; ...]
> it |> Seq.filter(fun n -> n % 3 = 0)
- ;;
val it : seq<int> = seq [0; 36; 144; 324; ...]
> it |> Seq.take 5
- ;;
val it : seq<int> = seq [0; 36; 144; 324; ...]
> it |> Seq.map Some
- ;;
val it : seq<int option> = seq [Some 0; Some 36; Some 144; Some 324; ...]
> it |> Seq.chunkBySize 5
- ;;
val it : seq<int option []> =
  seq [[|Some 0; Some 36; Some 144; Some 324; Some 576|]]

In addition to demos, this could be useful for debugging as well, both at runtime ("Why am I getting the wrong result here?") and at compile time ("Why is the type of this expression not what I expected it to be?). I've sometimes broken out my pipelines into a series of let statements so that I could see their types in code lenses, but this feature would have also served my needs when I was getting a type error in a long pipeline.
But this just gave me an idea for another feature request: code lens on pipeline steps. I'll open a new issue to track that request.

My general problem with both suggestions is that it is not easy to implement correctly. It's fairly easy to do both features for such simple pipeline chains as your showing, but what if one of the functions in chain has it's own pipeline chain internally? What if we'll have multiple levels? I don't see easy way to make it robust enough, there is lot of edge cases that should be handled.
Maybe it could be done using FCS and manually going through AST. Something that may be worth investing... but not by me. I'd definitely accept PRs for any of those 2 features but it's not something of high priority for me personally.


[PopoverAnimationDefault] replace 'middle' with 'center' ?

Just going through some code about Popover. Found this line in PopoverAnimationDefault.js
I think it meant to replace 'middle' with 'center', not 'vertical'

We don't plan any breaking changes with the master branch, it's in a low maintenance mode now. Please move you interest in the next branch.


Convert post_date to UTC time.

Hello @majelbstoat, @mikkot, @kylehg,
Please review the following commits I made in branch 'chad-fix-publishedAt-bug'.
5695914efca677ed11bd6e29d76de41bd29936c2 (2016-03-12 21:16:31 -0800)
Convert post_date to UTC time.
Fixes https://github.com/Medium/medium-wordpress-plugin/issues/60
R=@majelbstoat
R=@mikkot
R=@kylehg

LG

LG!


Transactional integrity.

If I have a database operation in the message handler and in that handler I dispatch new messages, is there garanty those messages will be dispatch after the database transaction will be completed?
In the NServiceBus they first save all messages in the database and only after try to send messages to a message system (for example RabbitMQ).  Those give guaranty message will be dispatch only if massing handler succeeds successfully (No error occur).
Do this implementation do the same thing?

Good evening. No, in the default implementation there is no save before sending.
Instead, there are many attempts to write to the queue.

If there are many attempts to write to the queue, does it do message de duplications?
If the attempt confirmation was lost on the way back, trying to write it again will cause the message to be repeated.
Do I need to handle it myself?

The message will not be duplicated. Either it will be written to the queue or an error will be returned.
In theory, it is possible that we will not be able to process the response frame (i mean amqp frame), but this is extremely unlikely. In this case, the error handling mechanism will automatically try to execute the handler again and the message will be duplicated. But for this, all the planets must line up

The network might be interrupted when the queue sends back that it successfully saved the message but the ServiceBus didn't get the response due to a network problem.
Or what if in the handler I am willing to dispatch events A and B. The process successfully dispatches event  A but after that (power-lost, process has been killed by OS) message B has not been dispatched.

This is undoubtedly a possible solution.
Many enterprise frameworks do this, but everything comes at a price.
I am currently working with Axon, who is doing the same and I cannot say that this is justified. In 99.9...9% of cases this leads only to a significant degradation of speed and nothing else.
Here you need to decide for yourself what is more important. ServiceBus still adheres to the strategy of an acceptable victim.
In the first versions, there was support for Unit of Work, with commit and confirmation, but as a result it was removed as unnecessary. The current implementation will not allow this.


Implementation of Select2Widget with formsets.

Hello, I'm trying to implement a django formset of Select2Widgets with a dropdown search bar. I've worked with django-select2 in the past with success when using a regular django form, but it seems to not work the same way when the formset factory is applied. Is this a bug? Am I missing something? I couldn't find anything in the docs (maybe I'm just blind after so many hours...)
Working snippet of the website:
#forms.py
class PedidoFungibleForm(ModelForm):
    class Meta:
        model = PedidoFungible
        fields = ['producto', 'unidades']
        widgets = {
            'producto': Select2Widget(
                {'data-language': 'es',
                 'data-placeholder': _('Busque fungibles'),
                 'data-width': '100%',
                 }
            )
        }

Not working snippet:
forms.py
class FormularioSolicitud(ModelForm):
    class Meta:
        model = Cesta
        fields = ['producto', 'unidades']
        widgets = {
            'producto': Select2Widget(
                {'data-language': 'es',
                 'data-placeholder': _('Busque productos'),
                 'data-width': '100%',
                 }
            )
        }
views.py
@login_required
def AñadirSolicitud(request):
    """ Hemos de crear las instancias de "Cesta" una a una con su respectivo
    enlace a la solicitud que se está creando. """
    SolicitudFormset = formset_factory(FormularioSolicitud, extra=5)
    if request.method == "POST":
       blabla
    else:
        formset = SolicitudFormset()
        return render(request, "nueva_solicitud.html", {'formset': formset})

This is the result of the first example I implemented long ago.

I see there is this PR (#599), but it's still unreviewed and I'm not even sure what's its purpose.

Well, I thought my issue was the same as in #560: not naming the form "form" in the context. But I renamed it and it didn't work either.

Hi @jpm92 is that formset inside Django admin? If not, are you otherwise dynamically adding rows? Best Joe

Hi @jpm92 is that formset inside Django admin? If not, are you otherwise dynamically adding rows? Best Joe

Hi Joe, I actually don't know how or why, I still have to review my commit, but I was working with something else and it just started working. I think it had to do with the position of the {% extra css %} block where the formset.css was loaded. Anyway, sorry for the inconvenience.
I will edit and close this issue when I find what I changed in case it could be useful to someone else.
Thanks!

This repo has moved, please point your PR to https://github.com/codingjoe/django-select2 Thanks!

Hi, I am want to address and issue/question/doubt but i the new repo I don't see the issue tab.

@gusarg81 haha, good catch. Seems GH disables those by default for forks 👍 🥇


Error unknown module: res://.godot/GodotJS/Scenes/enemies/basic_enemy.js

OS: MacOS 14.6.1
Godot Branch: 4.3
GodotJS commit: daad15100ee740209f1fb5bc529d4bce95a58874

I get the following error whenever I switch back to the editor or when I run my scenes:
 Uncaught Error: unknown module: res://.godot/GodotJS/Scenes/enemies/basic_enemy.js
  Error: unknown module: res://.godot/GodotJS/Scenes/enemies/basic_enemy.js (User)
  modules/GodotJS/weaver/jsb_gdjs_script.cpp:435 - [jsb][Error] the javascript file is missing: res://.godot/GodotJS/Scenes/enemies/basic_enemy.js (source: res://Scenes/enemies/basic_enemy.ts), please ensure that all typescript source files have already been compiled using the typescript compiler ('tsc'). (User)

the issue seems to be that tsc compiles the .ts files on the root of .godot/GodotJS, but the editor expects for files on .godot/GodotJS/<relative_path_of_ts_file>/

This issue should be caused by missing config of rootDir in tsconfig.json. Try uncomment the line:
// "rootDir": "./",
to  "rootDir": "./",.
I'll update the default tsconfig.json in next commit if this works.

Yes, that fixed it :D
I have been experiencing other issues tho, will create new Issues!


Hapi tester UI doesn't show input box for URI parameters

I tried to look if this has been reported, but didn't manage find any issues. Parameters with type URI don't have any input box in the Hapi tester app and this causes some confusion for people just looking for resources in the storage.

This is reported as fixed in 4.1.0


Forrit improve list and add photos and info

The forrit list needs to be updated and photos and links added

added more photos and programs to the list


Change the default port to 8150 to avoid port conflicts in the CAPI setup

Towards https://github.com/giantswarm/roadmap/issues/725

What do I still need to (besides a release) do to deploy it with the new openstack WCs?

You need to bump the version in the cluster-apps-operator helm chart and release a new version.
https://github.com/giantswarm/cluster-apps-operator/blob/0efb60a84f29e04802a8c4b4ecbf22a50cec83a1/helm/cluster-apps-operator/values.yaml#L7


Added a fixed seed in test_atomics.py for issue #6370

As per issue #6370, I added a fixed seed to the random modules of Python and Numpy in test_atomics.py.

I added the seeding in every test that uses the RNG.

This is the final version of this PR. Apologies for the previous commits that failed the checks, I am new to open-source.

@John-Ted Another recently-merged PR added the seeding in the setUp method - could you please resolve the conflicts on this branch? This should leave the switch from random.shuffle to np.random.shuffle in this PR.

Buildfarm ID: numba_smoketest_cuda_135.


Error when starting the training

I made a sound project and after gathering examples I get following error:
index.bundle.js:2 Uncaught (in promise) Error: numFrames (43) exceeds the minimum numFrames (14) among the examples of the Dataset.
at Object.S [as assert] (index.bundle.js:2)
at t.getData (index.bundle.js:104)
at e.collectTransferDataAsTfDataset (index.bundle.js:104)
at e. (index.bundle.js:104)
at index.bundle.js:104
at Object.next (index.bundle.js:104)
at index.bundle.js:104
at new Promise ()
at s (index.bundle.js:104)
at e.trainOnDataset (index.bundle.js:104)
Do I have to  consider something when recording audio?

We're fixing this bug, stay tuned and thanks for reporting!

This should be fixed in latest release. Thanks for reporting!


Outdated code example for embed_ising

The documentation for dwave.embedding.embed_ising contains a code example that doesn't work anymore. The code references dimod.embed_ising instead of dwave.embedding.embed_ising.
Found here: https://docs.ocean.dwavesys.com/projects/system/en/latest/reference/generated/dwave.embedding.embed_ising.html#dwave.embedding.embed_ising
Possibly outdated for other embedding documentation too.

See #177


test_client() does not close a file opened by send_file()

As #2468 has mentioned, send_file opens a file that mean to be closed by some further processing of the WSGI server. However, test_client does not really run the WSGI server, causing the opened file not closed until all test ends, and thus triggers a ResourceWarning and causes cleaning code after a test request to fail.
Expected Behavior
A file opened by send_file() should be closed after response is sent.
from flask import Flask
from flask import send_file
import unittest
import os

app = Flask(__name__, root_path='.')

@app.route('/<path:filepath>')
def handle_request(filepath):
    return send_file(filepath)

class Test(unittest.TestCase):
    def test(self):
        temp_file = os.path.join(os.path.dirname(__file__), 'test.txt')
        for i in ('123abc', '&@!#^*', '你好嗎'):
            with self.subTest(i=i):
                test_text = 'test' + str(i)
                with open(temp_file, 'w', encoding='UTF-8') as f:
                    f.write(test_text)
                try:
                    with app.test_client() as c:
                        r = c.get(temp_file)
                        self.assertEqual(r.data.decode('UTF-8'), test_text)
                finally:
                    os.remove(temp_file)

if __name__ == '__main__':
    unittest.main()

Actual Behavior
The opened file is not closed properly after the response is sent, causing following code in the test fail to delete the file (which is temporarily generated for testing purpose).
......\test.py:22: ResourceWarning: unclosed file <_io.BufferedReader name='......\\test.txt'>
  r = c.get(temp_file)
ResourceWarning: Enable tracemalloc to get the object allocation traceback
......\case.py:704: ResourceWarning: unclosed file <_io.BufferedReader name='......\\test.txt'>
  outcome.errors.clear()
ResourceWarning: Enable tracemalloc to get the object allocation traceback

======================================================================
ERROR: test (__main__.Test) (i=1)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "......\test.py", line 25, in test
    os.remove(temp_file)
PermissionError: [WinError 32] 程序無法存取檔案，因為檔案正由另一個程序使用。: '......\\test.txt'

======================================================================
ERROR: test (__main__.Test) (i=2)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "......\test.py", line 25, in test
    os.remove(temp_file)
PermissionError: [WinError 32] 程序無法存取檔案，因為檔案正由另一個程序使用。: '......\\test.txt'

======================================================================
ERROR: test (__main__.Test) (i=3)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "......\test.py", line 25, in test
    os.remove(temp_file)
PermissionError: [WinError 32] 程序無法存取檔案，因為檔案正由另一個程序使用。: '......\\test.txt'

----------------------------------------------------------------------
Ran 1 test in 0.010s

FAILED (errors=3)

Environment

Python version: 3.8.1
Flask version: 1.1.2
Werkzeug version: 1.0.1

Duplicate of https://github.com/pallets/werkzeug/issues/1785


Improve coverage filtering

(Best to review commit-by-commit; the first commit is smaller than it looks!)

Looking at the generated coverage report, I'm not sure why the per-file counts aren't present, despite the percentages being present and the folder totals being present. Maybe they're only indexed for merged PRs? Other than that, the new report looks okay...

Right, all done. I'll investigate the new issues tomorrow.

overall lgtm.  only risk I see altered is the gaps in the file indices caused by the removals. -- but hopefully that doesn't cause an issue.  Alternatively, you could leave the files there but with 0 total statements so they wouldnt affect the totals.

Good call on trying without removing the files. Will give that a go.

Interestingly, the "half way through" report from current CI has numbers:
https://codecov.io/gh/GoogleCloudPlatform/google-cloud-dotnet/tree/6b9cf235dcef13226ffeb1a917cab4d88d1c97d4/apis

Ah, got it - it's coverage changes that are null, which is unsurprising. Merging.


v6.0.2

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 74.80%. Comparing base (1114d82) to head (f7a3917).

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #94      +/-   ##
==========================================
- Coverage   75.12%   74.80%   -0.32%
==========================================
  Files         132      132
  Lines       34398    34365      -33
==========================================
- Hits        25840    25708     -132
- Misses       8558     8657      +99

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


BanUnknownThis prevents the use of "this" in static ES6 methods

Shaka Player is using BanUnknownThis in our conformance rules.  We are slowly transitioning to ES6, and today I noticed that BanUnknownThis prevents me from using this in static ES6 methods, even though this should refer to the class itself rather than some instance.
I'm still using the 20180204 release of Closure compiler, in case that's relevant.  Here's a simplified repro:
# unknownthis.textproto
requirement {
  type: CUSTOM
  java_class: 'com.google.javascript.jscomp.ConformanceRules$BanUnknownThis'
  error_message: 'Failed to infer type of "this"!'
}

// es6_static_this.js
goog.provide('ns.Foo');

ns.Foo = class {
  /** @return {number} */
  static bar() { return this.baz() + 1; }

  /** @return {number} */
  static baz() { return 1; }
};

java -jar compiler.jar \
  --jscomp_error=* \
  --conformance_configs unknownthis.textproto \
  es6_static_this.js \
  > /dev/null

This produces the output:
es6_static_this.js:6: ERROR - Violation: Failed to infer type of "this"!
  static bar() { return this.baz() + 1; }
                        ^^^^

I have found that without --jscomp_error=*, I don't get this violation at all, but I'm not sure how to interpret that.
Is this a duplicate of #2397, or is this something slightly different?
Is there a workaround you can suggest, other than whitelisting files for the BanUnknownThis rule?
Thanks!

debugger repro
https://closure-compiler-debugger.appspot.com/#input0%3Dgoog.provide('ns.Foo')%253B%250A%250Ans.Foo%2520%253D%2520class%2520%257B%250A%2520%2520%252F**%2520%2540return%2520%257Bnumber%257D%2520*%252F%250A%2520%2520static%2520bar()%2520%257B%2520return%2520this.baz()%2520%252B%25201%253B%2520%257D%250A%250A%2520%2520%252F**%2520%2540return%2520%257Bnumber%257D%2520*%252F%250A%2520%2520static%2520baz()%2520%257B%2520return%25201%253B%2520%257D%250A%257D%253B%26input1%26conformanceConfig%3Drequirement%2520%257B%250A%2520%2520type%253A%2520CUSTOM%250A%2520%2520java_class%253A%2520'com.google.javascript.jscomp.ConformanceRules%2524BanUnknownThis'%250A%2520%2520error_message%253A%2520'Failed%2520to%2520infer%2520type%2520of%2520%2522this%2522!'%250A%257D%26externs%26refasterjs-template%26includeDefaultExterns%3Dtrue%26CHECK_SYMBOLS%3Dtrue%26MISSING_PROPERTIES%3Dtrue%26TRANSPILE%3Dtrue%26CHECK_TYPES%3Dtrue%26CLOSURE_PASS%3Dtrue%26PRESERVE_TYPE_ANNOTATIONS%3Dtrue%26PRETTY_PRINT%3Dtrue

It looks like at https://github.com/google/closure-compiler/blob/b13f1a38f104683eccb617de6eb9fa53a6657e9a/src/com/google/javascript/jscomp/Es6RewriteClass.java#L475 we are explicitly adding @this {?} to the JSDoc but I don't remember why we did that, instead of the class name.
As a workaround, does it work to write ns.Foo.baz() instead?

I believe it would work to use the class name explicitly instead of this.

See #2397

I've checked, it was fixed by https://github.com/google/closure-compiler/commit/5b1e5316e5228d6d9f205e28440d67d9ec007f4b, see https://github.com/google/closure-compiler/issues/3340


zebar: Add version 1.8.1

This adds an auto-updating recipe for zebar
Closes #14041

[x] I have read the Contributing Guide.

Would also close https://github.com/glzr-io/zebar/issues/37

Please follow the standard order of fields in the json file, as per Contributing Guide.

done and rebased on main

/verify

That action should probably check the field order if it's something you are so strict about. We would have saved one back and forth...

That action should probably check the field order if it's something you are so strict about. We would have saved one back and forth...

ScoopInstaller/Scoop#5292
ScoopInstaller/GithubActions#47

/verify


craigslist blocks digitalocean IPs

See this HN discussion: https://news.ycombinator.com/item?id=6285746

nope, my digital ocean vps works just fine.

I know this is an old issue but I can confirm that CL will auto-block after a while, ran for about 3 days before getting 403'd. Gonna have to figure out some sort of rotating VPN solution perhaps.
$ curl https://www.craigslist.org/about/sites
This IP has been automatically blocked.
If you have questions, please email<EMAIL_ADDRESS>

I know this is an old issue but I can confirm that CL will auto-block after a while, ran for about 3 days before getting 403'd. Gonna have to figure out some sort of rotating VPN solution perhaps.
$ curl https://www.craigslist.org/about/sites
This IP has been automatically blocked.
If you have questions, please email<EMAIL_ADDRESS>

You know what's funny, I tried wget from DO vps and it works, but if I curl (from PHP) it gets blocked, even if I use all browser's headers 1:1. Can't figure out why this is happening (wget url returns 200 status)


[Event Request] Codeunit 12 - Gen. Jnl.-Post Line

Dear ALAppExtensions team,
Through this issue we would like to request the inclusion of the sender in Codeunit 12 Gen. Jnl.-Post Line Eventpublisher OnBeforePostUnapply.
[IntegrationEvent(true, false)]    <<<<<<<
local procedure OnBeforePostUnapply(GenJnlLine: Record "Gen. Journal Line"; var VATEntry: Record "VAT Entry";
    VATEntryType: Enum "General Posting Type"; BilltoPaytoNo: Code[20];
                      TransactionNo: Integer;
                      UnapplyVATEntries: Boolean;
    var TempVATEntry: Record "VAT Entry" temporary; var IsHandled: Boolean; var NextVATEntryNo: Integer)
begin
end;

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 47832.


Add filters to the TV page

By league at least, possibly also more detailed ones like board, rating, team, etc.

Implemented (league + board + team).


enable web_vfs

We'll need a new init routine for C/C++ programs.. The initializing program has to pass in pointers to its sqlite3_open_v2 and sqlite3_load_extension. C version can take pzErrMsg and hide the function pointer BS behind a macro. C++ version can be a header-only function.

We'll need a new init routine for C/C++ programs.. The initializing program has to pass in pointers to its sqlite3_open_v2 and sqlite3_load_extension. C version can take pzErrMsg and hide the function pointer BS behind a macro. C++ version can be a header-only function.


Replace Redux short_description with something meaningful

[x] I followed the contributing guidelines: https://github.com/github/explore/blob/master/CONTRIBUTING.md

I am:

[x] Suggesting edits to an existing Topic page
[ ] Curating a new Topic page

EDITING AN EXISTING TOPIC PAGE*
I'm suggesting these edits to an existing topic:

[ ] Image (and my file is *.png, square, dimensions 288x288)
[x] Content (and my changes are in index.md)

Please explain why these changes are necessary:

Thanks @pelotom! Good call 👍


Added optional flag to turn off display in POVRaytracer render

When rendering POVRaytracer objects in a loop, one might want to turn graphic display off. I added an optional display=true flag to the render method that achieves this, while not affecting the default behavior. When display=false, an optional flag of -D is added to the povray system call, which turns off the graphic display.
I am not sure how to add an automated test for this, but here is a MWE that generates test.pov and test.png without opening up the graphic display:
import meshtools
import plot
import povray
var m = LineMesh(fn (t) [t,0,0], -1..1:0.2)
var g = plotmesh(m)
var pov = POVRaytracer(g)
pov.render("test.pov", display=false)
Removing the display flag or setting it to true should result in the default behavior. Tested on Ubuntu 20.04 and on WSL-Ubuntu on Windows.

Thanks for the feedback! I have now added documentation to docs/povray.md.
I also updated the render function so that the .png file too is not opened if display=false.
I noticed that the render function opens the .png file calling the open command, but that doesn't work on Linux (I believe xdg-open should work in most cases for Linux). The function would need to check what OS it's running on and change that command accordingly, but I don't know how to do that.
I also noticed that the .md file needs to end in an empty line for the documentation to be displayed properly in the CLI. If there is not empty line, then the last line is not displayed unless we hit Enter again.

I am guessing the blank line makes things easier and is advised to add it to every documentation?

Indeed replacing open with something more cross platform is a good idea (a feature for 0.6 I think!) In the meantime, symlink xdg-open to open.


Question:The bot is not working in chess.com. why is it not working?

I have a question about your extension:

The bot is not working in chess.com. why is it not working?


Upgrade Antrea versions used for upgrade test

Old: 0.3.0, 0.4.0, 0.4.1
New: 0.4.1, 0.5.0, 0.5.1

/skip-all


Invalid shortcuts formating in the menu

VSCode Version:  1.10.0-insider (2017-02-17T13:40:32.566Z)
OS Version: Ubuntu 16.10

On the above screenshot the shortcuts in the red rectangle aren't formatted as the others.

@mquandalle there is nothing we can do about it at the moment, electron only allows some keybindings to show up as native keybindings.


Remove "Transaction Rejected" variant from API

Requires removing legacy client.

I think this is done now @joschisan


bug(node): openai still seems to be required as dependency

LanceDB version
v0.10.0-beta.1
What happened?
Trying to compile LanceDB gives this error:
node_modules/@lancedb/lancedb/dist/embedding/openai.d.ts:1:44 - error TS2307: Cannot find module 'openai/resources/index' or its corresponding type declarations.

1 import type { EmbeddingCreateParams } from "openai/resources/index";

Are there known steps to reproduce?
Just try to build an application without installing openai.
If we add this to dev dependencies:
    "openai": "^4.29.2"

We eliminate that error. Maybe it's required to match the right version? We should make this import more robust somehow.
This was originally an issue in https://github.com/lancedb/lancedb/issues/1496

I think I can use this approach to solve this: https://github.com/Dawar/typescript-library-tutorial


CMC may get invalidated on engine restart

Not completely sure the test case yet, needs to be looked into more


No documentation on Users/Groups

How in an Azure Function in node do we access user/connect info and add to a group to control how many messages we actually broadcast out?
Is there a server side hub npm package (much like @microsoft/signalr is for clients) that give us a better sense of whats available?

I found this bindings documentation for the function itself, but is there a server sdk to assist with creating the groups, etc.
Or are we left with doing REST calls to the signalR service directly?
https://github.com/MicrosoftDocs/azure-docs/blob/master/articles/azure-functions/functions-bindings-signalr-service-output.md#javascript-2

Hi,
i had the same issue and resolved it like this:
const connection: HubConnection = new HubConnectionBuilder()
    .withUrl(process.env.REACT_APP_SIGNALR_CONNECTION + "?userId=[USERID]")
    .configureLogging(LogLevel.Information)
    .build();

[FunctionName("negotiate")]
public static SignalRConnectionInfo GetSignalRInfo(
  [HttpTrigger(AuthorizationLevel.Anonymous, "post")] HttpRequest req,
  [SignalRConnectionInfo(HubName = "chat", UserId = "{query.user}" )] SignalRConnectionInfo connectionInfo)
{
  return connectionInfo;
}

I didnt find a way to attach it to the header.
This the source code from the @microsoft/signalr npm package it seems like there is no way to attach a custom header.
private async getNegotiationResponse(url: string): Promise<INegotiateResponse> {
        let headers;
        if (this.accessTokenFactory) {
            const token = await this.accessTokenFactory();
            if (token) {
                headers = {
                    ["Authorization"]: `Bearer ${token}`,
                };
            }
        }

        const negotiateUrl = this.resolveNegotiateUrl(url);
        this.logger.log(LogLevel.Debug, `Sending negotiation request: ${negotiateUrl}.`);
        try {
            const response = await this.httpClient.post(negotiateUrl, {
                content: "",
                headers,
            });

I hope this helps you a bit.

In @microsoft/signalr 5.0, a headers options will be added to IHttpConnectionOptions.ts: https://github.com/dotnet/aspnetcore/pull/19227/files#diff-a87b7629bc42b00f40dc7f591400b0ae2aa4460ccfc32547f61a69114ac95c8bR12-R13

In addition to the above (thank you for the great question)
When using SignalR Service in serverless and a function app running in Javascript, how do you add users to a group?
Do i need to create a specific function? What should this look like? Specific documentation if possible please :) I've been grappling for days...
Thanks

@DarrenWainwright We should definitely update this sample to use groups, but in the meantime have you seen https://github.com/Azure/azure-signalr/blob/dev/docs/management-sdk-guide.md?


error when install from pip

Collecting android-resource-remover
Using cached android-resource-remover-0.1.4.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "", line 20, in
File "C:\Users\CHENGW~1\AppData\Local\Temp\pip-build-tuk9atu3\android-resource-remover\setup.py", line 15, in
long_description='\n\n'.join((read('README.md'), read('CHANGELOG'))),
File "C:\Users\CHENGW~1\AppData\Local\Temp\pip-build-tuk9atu3\android-resource-remover\setup.py", line 9, in read
return open(os.path.join(os.path.dirname(file), f)).read().strip()
UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 2747: illegal multibyte sequence

what is the file encoding when pip clones a git repo C:\Users\CHENGW~1\AppData\Local\Temp\pip-build-tuk9atu3\android-resource-remover. it should be utf8


Hello My Blog - Jia-py Blog

https://jia-py.github.io/2021/01/21/Start/
weird ideas and study notes

欢迎大家给我留言！
Welcome to leave a message！


Parallel distinct aggregate

Currently, distinct aggregate is only executed with single thread because it's unsafe to perform thread-local aggregation without first taking distinct values. Imagine the following example of calculating COUNT(DISTINCT a.age) with 2 threads. Both threads t1 and t2 get input 20. 20 is a distinct value in their own thread so both threads have COUNT = 1. However, when we combine the state between t1 and t2, we lose track of input vectors and thus lead to the wrong aggregate value.
Solution
A possible solution is to first calculate thread-local distinct values in parallel which is the same as the current implementation of DISTINCT. Then during task finalize, we first obtain global distinct values by merging all thread-local distinct hash tables. Then we loop through the global distinct hash table and update aggregate states for each row.

Moved as an internal issue.


Getting ESOCKETTIMEOUT when streaming through file.createReadStream()

Hi,
We transform a large binary file (>150MB up to GBs) and publish the data to pubsub.
OS: Google App Engine (Assuming its windows)
Node.js version: LTS
npm version: LTS
google-cloud-node version: HEAD

Steps to reproduce

require google-cloud
let file = bucket.file([largebinaryfile]);
let readStream = file.createReadStream();
file.pipe(transformStream).pipe(writeStream)

readStream: Reads large file from bucket directly from bucket
transformStream: Does some operation
writeStream: publishes transformed data to cloud pubsub
Problem,
readStream receives ESOCKETTIMEDOUT error more often, how to handle this is this value configurable through code?
Thanks

Can you double check the version of google-cloud-node that you're using? Only the latest release will retry on errors such as a socket timeout.

Hi Stephen,
Thanks for the response.
I'm using version "@google-cloud/storage": "0.7.0"
I will try with version 1.1.1 and let you know if there is any issue.
Thanks

@MuthuD how did it go?

Hey there, thought I would chime in here before opening a new issue in the nodejs-storage repo. I got the exact same issue on version 2.0.1.
Here is the code producing the error:
const readline = require('readline');

const storage = new Storage({projectId: config.projectId});
const bucket = storage.bucket(config.bucketName);
const remoteFile = bucket.file('events.txt');

const lineReader = readline.createInterface(remoteFile.createReadStream());

lineReader.on('line', /* do stuff */);

The code runs on GCE:

OS: Linux 4.9.0-8-amd64 SMP Debian 4.9.110-3+deb9u3 (2018-08-19) x86_64 GNU/Linux
node: v8.11.4

It reliably times out after 60 seconds of streaming.
Let me know if you need any further information.

Thanks!  Opening this on the nodejs-storage repo is absolutely the way to go though 👍

👍 Okay, added a comment to a similar issue: https://github.com/googleapis/nodejs-storage/issues/27#issuecomment-420534576


non-intuitive Time-Domain Simulation functions behavior

Hi, I notice that the simulation functions: step_response, impulse_response, for discrete time systems is not very intuitive, and is also inconsistent with matlab's behavior (I sort of have the habit of checking matlab documentation for a python-control function if there are suprises).
Consider this snippet
import control as co
import numpy as np
A1 = co.tf([1], [1, 6, 5])
A1 = co.c2d(A1, 0.5)
T, y = co.step_response(A1, np.arange(0, 5, 0.2))

we would expect T to be the time instances that correspond to values in y (matlab behavior), but it turns out not the case. I got T.shape = (25,) while y.shape=(1, 10).  The same behavior can be observed for other time-domain functions for discrete-time systems (continuous-time systems are alright).

It is just giving you back the time array but since the sampling time of the system doesn't match the time increment it is resampling the bounds.

That's right.
However, this behavior is not intuitive to users. I would prefer it to be the actual time-array that is used to compute the impulse response. This information can be used, say, for plotting. Also, with the current behavior, the returned time-array T does not convey any information.

I agree that this behavior is non-intuitive and probably incorrect.  Marking as a bug to be fixed in the next release.

I did a bit of looking into this.  Some observations and issues:

The 'bug' in this code is something that is apparently inherited from the scipy.signal.dlsim(), which is what step_response() eventually calls (through a call to forced_response()).  In particular, it appears that if you pass dlsim() a time vector that doesn't match the sampling time, it doesn't generate an error and, furthermore, it returns whatever you passed it (same behavior as what was noticed here).

There is a further inconsistency in the way that T=None is handled in the control simulation functions for discrete time systems: the time vector that is generated will have dt=1 independent of what the actually sampling time for the system is.

There may also be some issues with the way that the default response time is determined when you pass T=None for discrete time systems.  For step_response() and initial_response() this is supposed to be based on the dynamics matrix A.  This uses the _default_response_times() function from scipy.signal.ltisys, but I believe that function assumes continuous time (need to check).

I think that the correct behavior for discrete time systems is the following (which would match MATLAB):

The values of the output argument T should always match the times at which the corresponding outputs Y are obtained.  This is consistent with the idea that you plot the outputs of a simulation function by using commands of the form

t, y = step_response(sys)
plot(t, y)

If you pass an explicit set of sampling times for a discrete time system, the time increment should match the sampling time (with dt=True being interpreted as a sampling time of 1).  In this case, the output argument T will match the input argument T.

If you omit the sampling time, the value of T will be determined based on either the input signal (for forced_response() or the time constants coming from the system dynamics.  In either case, the difference between time points should be equal to the sampling time of the system (or 1 if dt=True).

For forced_response(), the length of the input vector U should match the length of the time vector T.

The good news is that a relatively modest set of changes are required to fix all of these things up.  Comments welcome on whether I am missing anything, but I'll start putting together test cases for the properties above and then updating the code.

Fixed in PR #286

Will look into this and see if I can generate a unit test that exhibits the error, so that we can nail this one down.

This behavior has been fixed in PR #295.

PR #295 is merged.  Closing this (again).


contrib\cmake: configure step errors

Config & commands used: https://gist.github.com/derofim/b4f150da1269b81af8d12744df730708
cmake .. -A x64 -DCMAKE_BUILD_TYPE=Release  -DSWIG_EXECUTABLE="D:/Tensorflow/swigwin-3.0.10/swig.exe" -DPYTHON_EXECUTABLE="C:/Program Files/Anaconda3/python.exe" -DPYTHON_LIBRARIES="C:/Program Files/Anaconda3/libs/python35.lib" -Dtensorflow_ENABLE_GPU=ON -DCUDNN_HOME="D:\Tensorflow\cudnn\cuda" -Dtensorflow_BUILD_CC_EXAMPLE=ON
Errors:
CMake Error: CMake can not determine linker language for target: tf_losses
CMake Error: CMake can not determine linker language for target: tf_models_word2vec_ops
CMake Error: CMake can not determine linker language for target: tf_models_word2vec_kernels
Full log:
D:\Tensorflow\tensorflow-master\tensorflow\contrib\cmake\build>cmake .. -A x64 -DCMAKE_BUILD_TYPE=Release  -DSWIG_EXECUTABLE="D:/Tensorflow/swigwin-3.0.10/swig.exe" -DPYTHON_EXECUTABLE="C:/Program Files/Anaconda3/python.exe" -DPYTHON_LIBRARIES="C:/Program Files/Anaconda3/libs/python35.lib" -Dtensorflow_ENABLE_GPU=ON -DCUDNN_HOME="D:\Tensorflow\cudnn\cuda" -Dtensorflow_BUILD_CC_EXAMPLE=ON -- Building for: Visual Studio 14 2015 -- The C compiler identification is MSVC 19.0.24215.1 -- The CXX compiler identification is MSVC 19.0.24215.1 -- Check for working C compiler: D:/Soft/MicrosoftVisualStudio14/VC/bin/x86_amd64/cl.exe -- Check for working C compiler: D:/Soft/MicrosoftVisualStudio14/VC/bin/x86_amd64/cl.exe -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working CXX compiler: D:/Soft/MicrosoftVisualStudio14/VC/bin/x86_amd64/cl.exe -- Check for working CXX compiler: D:/Soft/MicrosoftVisualStudio14/VC/bin/x86_amd64/cl.exe -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Found CUDA: C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v8.0 (found suitable version "8.0", minimum required is "8.0") You have called ADD_LIBRARY for library tf_models_word2vec_ops without any source files. This typically indicates a problem with your CMakeLists.txt file You have called ADD_LIBRARY for library tf_models_word2vec_kernels without any source files. This typically indicates a problem with your CMakeLists.txt file You have called ADD_LIBRARY for library tf_losses without any source files. This typically indicates a problem with your CMakeLists.txt file -- Found PythonInterp: C:/Program Files/Anaconda3/python.exe (found version "3.5.2") -- Found PythonLibs: C:/Program Files/Anaconda3/libs/python35.lib (found version "3.5.2") -- Found SWIG: D:/Tensorflow/swigwin-3.0.10/swig.exe (found version "3.0.10") -- Configuring done CMake Error: CMake can not determine linker language for target: tf_losses CMake Error: CMake can not determine linker language for target: tf_models_word2vec_ops CMake Error: CMake can not determine linker language for target: tf_models_word2vec_kernels -- Generating done -- Build files have been written to: D:/Tensorflow/tensorflow-master/tensorflow/contrib/cmake/build
P.S.
For now im ignoring build errors and tf_label_image_example works fine! (But cannot link in side project https://github.com/tensorflow/tensorflow/issues/6382)
Workaround im using:
For now tf_label_image_example works fine in generated .sln!

To stop rebuilding whole tensorflow each time i used workaround
"Configuration Manager". Un-check the "Build" for all except tf_label_image_example as in http://stackoverflow.com/a/1433680

Also in contrib\cmake\build i created folders tensorflow/examples/label_image/data/ and placed in it:
grace_hopper.jpg
imagenet_comp_graph_label_strings.txt
tensorflow_inception_graph.pb

Data may be found at https://storage.googleapis.com/download.tensorflow.org/models/inception_dec_2015.zip in tutorial https://www.tensorflow.org/how_tos/tool_developers/

@derofim Please try pulling the latest master. #6380 should have fixed the issues you encountered.

Tried pulling the latest master. Works fine.


Performance

The main drawback of LogarithmicNumbers for me is the (inevitable) performance hit of putting every single addition through a logsumexp. Is this package the same, slightly worse or slightly better?

I haven't done any benchmarking, but I expect they'll be comparable at arithmetic - the algorithms are very similar.

A large benefit of this package is in all the symmetric properties of the hexp function. It makes it much easier to write branchless code (which is easier to make type stable) - which is typically faster to run as a side effect.
You also don't waste another word of memory on the sign bit (you get to use the sign bit of the underlying value) which probably helps when you have lots of these.
Other symmetries mean that isinf, isnan, iszero, isone, signbit, abs, < etc all have trivial implementations, some of which will probably be a lot faster.

I'd be interested in a comparison.

Do you think there is any aspect in which HugeNumbers can not replace LogarithmicNumbers=

Nothing springs to mind - the representations of both are based around logarithms, so implementing functions should be much the same either way.

TBH this package was born out of nerdy perfectionism more than utility - the hexp function is just so mathematically pleasing. I may never release it.

I mean if it's simpler to code and works basically the same I see no reason not to make it available


App Store rejecting binaries due to Non-public API usage

[REQUIRED] Step 1: Describe your environment

Xcode version: 12.5
Firebase SDK version: 8.1.0 / 7.11.0
Installation method: Swift Package Manager
Firebase Component: Analytics / Crashlytics / RemoteConfig - not 100% sure

[REQUIRED] Step 2: Describe the problem
We are using Firebase Analytics, RemoteConfig and Crashlytics importing this SDK via SPM, since two days ago our binaries are getting rejected by Apple with the following message
ITMS-90338: Non-public API usage - The app references non-public selectors in <app>: determineAppInstallationAttributionWithCompletionHandler:, didLongPress:, didPan:, didTap, didTouchUpInside, lookupAdConversionDetails:, resetState, sendMessage, textDidChange, transform:.

Our app doesn't use any of those methods, but checking our symbolmap we discovered that Firebase SDK is using the method lookUpAdConversionDetails.
We are having this issues without changing any dependency version or Xcode configuration, so looks like Apple changed their API-usage process.
We are investigating if this is an Apple issue or is something that Firebase should take action on, if you can provide more info about this it will be much appreciated.

Hey @Alexsilvacodes - thanks for the report. We'll look into this ASAP to get it resolved. At first glance, it looks like this it was a public API that was deprecated and is now removed from the public headers in iOS 15.

Filed internally at b/190661518. Note: for the beta-software label it's to acknowledge this is due to iOS 15 changes, I recognize that this happens still with publicly released versions.

Hi @ryanwilson, thank you for your quick response! Right now we are not using anything related with iOS 15, our target is iOS 14 and in fact we got this using Firebase 7.11.0, then we tried 8.1.0 just to see if there was any change on the SDK to fix that.

Thanks @Alexsilvacodes, this is definitely a change on the App Store side. My suspicion is they now updated the "private APIs" list, and since the API being used was in a public header before and removed, it's now on the private API list and being flagged (regardless if you're supporting any iOS 15 features or not).
We'll hopefully have another update in a few hours, a lot of the team is in California so it's still quite early there before they'll see this and we can evaluate the impact. Stay tuned, and thanks again for the report.

Amazing @ryanwilson , thank you so much for the quick and thoughtful response!

Firebase 8.1.1 is now published for CocoaPods and Swift Package Manager. The zip and Carthage distributions are planned to be updated tomorrow (Friday)

8.1.1 is now available for zip and Carthage distributions as well.


fix(share-manager): remount volume if mount point became ro

ref: longhorn/longhorn#5961
remount the mountpoint in share-manager if the mountpoint become read-only

@mergify backport v1.5.x v1.4.x


Update and improve gVisor support

Implement event handlers for recently-added gVisor native events, including WRITE
Enhance event handlers to explicitly document which SCAP event fields are invalid (e.g. where info is not provided by the native gVisor event)
Improve gvisor config generator, to configure all fields needed by the event parser, and only those fields
Zero fill allocated scap_gvisor_platform structure, to avoid crash on startup
Return SCAP_TIMEOUT instead of SCAP_EOF on interrupted socket read

What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

/kind cleanup

/kind design

/kind documentation

/kind failing-test

/kind feature

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area API-version

/area build

/area CI

/area driver-kmod

/area driver-bpf

/area driver-modern-bpf

/area libscap-engine-bpf

/area libscap-engine-gvisor

/area libscap-engine-kmod

/area libscap-engine-modern-bpf

/area libscap-engine-nodriver

/area libscap-engine-noop

/area libscap-engine-source-plugin

/area libscap-engine-savefile

/area libscap-engine-udig

/area libscap

/area libpman

/area libsinsp

/area tests

/area proposals

Does this PR require a change in the driver versions?

/version driver-API-version-major

/version driver-API-version-minor

/version driver-API-version-patch

/version driver-SCHEMA-version-major

/version driver-SCHEMA-version-minor

/version driver-SCHEMA-version-patch

What this PR does / why we need it:
Enhance and update gVisor support
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

fix: Enhance and update gVisor support, including additional system call events

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: jcpittman144
Once this PR has been reviewed and has the lgtm label, please assign gnosek for approval. For more information see the Kubernetes Code Review Process.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

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

/milestone 0.13.0
Thank you very much @jcpittman144 ! Great job!

/milestone 0.14.0

I think this is a good moment to review and merge this PR; @jcpittman144 can you rebase and tackle Luca's suggestions?
Thank you!

I think this is a good moment to review and merge this PR; @jcpittman144 can you rebase and tackle Luca's suggestions? Thank you!

I'm working on the unit tests, plus rebase, now.
I plan to open a new PR with the rebased version, including the new unit tests.

Thank you @jcpittman144 ! It's great to see the gVisor implementation growing! This is a lot of work and it's greatly appreciated, also because it updates our support with the newest features in gVisor ❤ . I have a couple of comments before getting into the deeper details of the PR:

I think it could become hard for a contributor to understand the difference between parser and filler in this context. I think I got it, basically the parser has all the logic to interpret gVisor data, entry/exit/context detection + the encoding logic, while the filler (called by the parser) has only the encoding logic.  We had some refactoring ideas back then, I would try to think a bit about them and run them by you to see if we can use them to make this code more readable as we add more events.

I borrowed the term "filler", from the kmod and eBPF code paths.  In those cases, the fillers are functions that create SCAP events from the information available within the system; these new gvisor filler functions do the same thing, so I used the same name.  But I'm definitely open to using some other naming model or grouping convention.

I would be very happy if we can add a couple of tests for the trickier cases. Adding tests for all the straightforward events could be just busywork and not particularly useful but I see that there are some "special" ones that we want to make sure won't break. Since you wrote them, I'm pretty sure you know which ones could require a bit more care. You can find current tests in scap_gvisor_parsers.ut.cpp and as you can see, since parsers are pure functions they are pretty easy to test!

I have figured out how to build and run the gvisor parsers unit tests.
I've updated the existing tests to handle the changed behavior (e.g. EXECVE event now reporting 27 parameters like the other engines).
Now I'm working on unit tests for the new event handlers.

Closing this PR in favor of a new one, rebased from the current state of falcosecurity/libs.

Opened a new PR:

https://github.com/falcosecurity/libs/pull/1394
which is based on the current state of the falcosecurity/libs repo, plus implements unit tests as requested.


redirectionio dependency declaration is a path

Is this intended to have a path at:
https://github.com/redirectionio/cloudflare-worker/blob/b8360c1e6025869476a5ec2f235af59dce621d43/Cargo.toml#L13
Instead of relying on the crates.io published version?

We have both as we build it from our monorepository and version will be used if path is not present

Was wrong, this is an error, in fact it keep the version property only when it's published on crates, was thinking it would do the same here, will fix this soon

Thanks a lot @ptondereau :tada:
fixed in 8487f7c233ab1e2f1c92a7275c8fd4b6735186ab


[Snyk] Upgrade mongodb from 5.9.0 to 5.9.1

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to upgrade mongodb from 5.9.0 to 5.9.1.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 1 version ahead of your current version.
The recommended version was released 23 days ago, on 2023-10-20.

Release notes

Package name: mongodb

5.9.1 - 2023-10-205.9.1 (2023-10-18)
The MongoDB Node.js team is pleased to announce version 5.9.1 of the mongodb package!
Release Notes
insertedIds in bulk write now contain only successful insertions
Prior to this fix, the bulk write error's result.insertedIds property contained the _id of each attempted insert in a bulk operation.
Now, when a bulkwrite() or an insertMany() operation rejects one or more inserts, throwing an error, the error's result.insertedIds property will only contain the _id fields of successfully inserted documents.
Fixed edge case leak in findOne()
When running a findOne against a time series collection, the driver left the implicit session for the cursor un-ended due to the way the server returns the resulting cursor information. Now the cursor will always be cleaned up regardless of the outcome of the find operation.
Bug Fixes

NODE-5627: BulkWriteResult.insertedIds includes ids that were not inserted (#3870) (d766ae2)
NODE-5691: make findOne() close implicit session to avoid memory leak (#3889) (0d6c9cd)

Documentation

Reference
API
Changelog

We invite you to try the mongodb library immediately, and report any issues to the NODE project.

5.9.0 - 2023-09-145.9.0 (2023-09-14)
The MongoDB Node.js team is pleased to announce version 5.9.0 of the mongodb package!
Release Notes
Bumped bson version to make use of new Decimal128 behaviour
In this release, we have adopted the changes made to Decimal128 in bson version 5.5. The Decimal128 constructor and fromString() methods now throw when detecting a loss of precision (more than 34 significant digits). We also expose a new fromStringWithRounding() method which restores the previous rounding behaviour.
See the bson v5.5.0 release notes for more information.
Use region settings for STS AWS credentials request
When using IAM AssumeRoleWithWebIdentity AWS authentication the driver uses the @ aws-sdk/credential-providers package to contact the Security Token Service API for temporary credentials. AWS recommends using Regional AWS STS endpoints instead of the global endpoint to reduce latency, build-in redundancy, and increase session token validity. Unfortunately, environment variables AWS_STS_REGIONAL_ENDPOINTS and AWS_REGION do not directly control the region the SDK's STS client contacts for credentials.
The driver now has added support for detecting these variables and setting the appropriate options when calling the SDK's API: fromNodeProviderChain().
Important
The driver will only set region options if BOTH environment variables are present. AWS_STS_REGIONAL_ENDPOINTS MUST be set to either 'legacy' or 'regional', and AWS_REGION must be set.
Fix memory leak with ChangeStreams
In a previous release, 5.7.0, we refactored cursor internals from callbacks to async/await. In particular, the next function that powers cursors was written with callbacks and would recursively call itself depending on the cursor type. For ChangeStreams, this function would call itself if there were no new changes to return to the user. After converting that code to async/await each recursive call created a new promise that saved the current async context. This would slowly build up memory usage if no new changes came in to unwind the recursive calls.
The function is now implemented as a loop, memory leak be gone!
Features

NODE-5564: bump bson version to ^5.5.0 (#3865) (dc110e0)

Bug Fixes

NODE-5550: set AWS region from environment variable for STSClient (#3851) (2fab06b)
NODE-5587: recursive calls to next cause memory leak (#3842) (f60f1b5)

Documentation

Reference
API
Changelog

We invite you to try the mongodb library immediately, and report any issues to the NODE project.

    from mongodb GitHub release notes

Commit messages

Package name: mongodb

0c16582 chore(5.x): release 5.9.1 [skip-ci] (#3878)
0d6c9cd fix(NODE-5691): make findOne() close implicit session to avoid memory leak (#3889)
df0780e test(NODE-5705): fix failing explain tests (#3894)
efb5e93 test(NODE-5695): update azure configuration (#3892)
2ab2189 ci(NODE-5668): remove custom dep tests against master and fix prose test 14 (#3884)
74833fb ci(NODE-5664): unit test on all supported Node versions (#3885)
296faac ci(NODE-5653): remove vars from ci config (#3880)
d766ae2 fix(NODE-5627): BulkWriteResult.insertedIds includes ids that were not inserted (#3870)
6f67539 docs(no-story): build docs for 5.9 release (#3868)

Compare

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

Pull request merged

This is an automated message from Fork, Commit, Merge - web [BOT].

Thank you for your contribution! Your pull request has been merged and your name has been added to the List of Contributors in README.md.
Please leave a star if you enjoyed working on this project.
What's next?
If you're looking for more ways to contribute, I invite you to check out my other projects here.


refactor the service to use Flask-RESTX

Updated dependencies in requirements.txt
Added Swagger API details in __init__.py
Added models in routes.py

IBM Cloud toolchain: Delivery Pipeline deployed products to nyu-devops-products, including commit c53b8d41e1157d3da61b9772ad00410cd41504e6


[Feature request] Enable stacked bars

Would it be possible to have stacked bars? I am monitoring events per 5 minutes, they can succeed and fail. It would be nice to have bars (in my case per 5 minute) to show count of successful (green) and failed (red) events stacked above each other.
If this is out of scope, simply close the issue.

This could be accomplished by overlaying 2 different graphs on top of each other. Doing it in the same graph would be out of scope I'm afraid


Merge fields not working properly with PUT request

Hi,
Thanks for your work, it is working great and very useful !
I am having an issue though with the PUT request :
$mc = new MailChimp($api_key);
$list_id = '123456789'; // not the real one obviously
$subscriber_hash = $mc->subscriberHash($email);
$result = $mc->put("lists/$list_id/members/$subscriber_hash", [
   'email_address' => $email,
   'status'        => 'subscribed',
   'merge_fields' => ["FNAME" => $firstname, "LNAME" => $lastname],
   'status_if_new' => 'subscribed'
]);

The request works fine by adding a new member to the list or updating one if already existing, but the FNAME merge field is not taken into account... I can assure you the $firstname variable is not empty (I also tried with a fixed string value).
The returned array contains the following entry:
[merge_fields] => Array ( [FNAME] => [LNAME] => DOE )
The same request using a POST action does work fine, so the FNAME merge field is configured properly on MailChimp side. But I have to use the PUT action since it is the only one allowing a previously deleted email to be added again.
I have tried switching the order of the merge fields with no success, the same FNAME field still does not work.
Can you be of any help or is this a MailChimp-related bug ?
Thank you in advance !

I have the exact same issue, and it appears to happen only when using PUT to create the subscriber, any subsequent calls to the API with same details will update the FNAME correctly.
This is definitely not a bug in the PHP client, as the same thing happens when using cURL directly:
curl -X PUT -H "Content-Type: application/json" -H "Authorization: apikey <API-KEY>" -H "Cache-Control: no-cache" -d '{"email_address":"testemail@test.com","merge_fields":{"FNAME":"John","LNAME":"Price"},"status":"subscribed"}' "https://<dc>.api.mailchimp.com/3.0/lists/<LIST-ID>/members/<subscriber-hash>"

Thanks for the info @johnprice99. As it's an API bug/issue, I'll close this for now.

The code from the first post does work for me. I can update the info for my subscribers with PUT. I can show you my code if any one want.

@keen4o I would be interested in seeing your code. I've been trying to update $FNAME and $LNAME for subscribers, but each new put overwrites the fields. Would appreciate your help!

My code works the same. If the email is the same as the email in my mailchimp account it does overwrites my fields too because the email is the unique field. If the email is new it just creates a new subscriber.

Hi, does anyone know if there has been any update on this issue from the Mailchimp side at all?


Forbid S-mode execution from user memory

This is an issue that I have repeatedly raised on isa-dev.  In a nutshell, the only use in a POSIX environment for S-mode to fetch instructions from user memory is exploiting the supervisor for privilege escalation.  For the rare environments that do have legitimate uses for this, aliasing remains unrestricted (such restrictions are infeasible for hardware to enforce anyway) and physical pages may appear as both user and supervisor pages at different virtual addresses.
This is an issue bad enough that x86 had to retrofit a solution; we have the chance to get this right the first time.
Since I have finally made a GitHub account, I may as well submit this. :)

Sorry for taking so long to respond, Jacob.  I assumed this issue would be a bit more contentious, but it took a while to reach the top of my inbox again.
I looked over the old threads again, and I continue to think that the arguments in favor don't outweigh the two cons (sharing library code at same VAs between supervisor/user, which has been discussed at length; and the much more important endeavor to make no backwards incompatible changes to v1.10).  The most important concern was:

A ROP chain that sets SUM and then returns to userspace, or even that modifies another task's saved sstatus to set SUM when that task is resumed (and modifies the saved state to "in S-mode, resume at PC value X", where X is the address of an S-mode exploit payload in a user buffer in that task) is quite plausible.

Both are plausible.  But the latter is subsumed by greater concerns within the same memory word (namely, setting the saved sstatus.SPP field to S).   The former (the SUM code itself), can be demonstrated correct statically, and if not, should be rewritten accordingly.  That leaves the trap handler, which may be invoked when SUM=1, but that needs to be carefully audited, too.

Since I had raised this issue long before v1.10, and again (twice!) when the plan for v1.10 was announced, specifically in an effort to get it into v1.10, only to see it lost in the noise, I consider reluctance to break compatibility with v1.10 on this matter a red herring.
You seem to have misinterpreted my concerns about ROP chains.  The latter issue is not subsumed by a greater concern about sstatus.SPP.  Rather, it includes setting the saved SPP to S, since that will cause a preemptible supervisor to resume the task in S-mode.  (Supervisors that do not support preemption while in kernel code can protect themselves by ensuring that context switches always begin and end in U-mode.  Modern Linux supports kernel preemption and cannot do this.)  The benefit from this proposed change is that it would remove an otherwise easy option for an attacker:  running an exploit payload from a user buffer.  Currently, for this type of privilege escalation scenario, an attacker can simply spawn two cooperating tasks:  task A maps a buffer at a chosen virtual address, loads an exploit payload into the buffer, and goes to sleep waiting for task B to exploit the assumed kernel saved context corruption bug to (1) overwrite the saved sstatus for task A with SUM set and SPP==S and (2) overwrite the saved PC value for task A with the known address of the buffer, neatly defeating all KASLR protections, then continues task A, which proceeds to execute the payload in S-mode.  Depending on the extent of the saved context corruption bug, the chosen address may be important, if the attacker can know but does not fully control the overwritten PC value.  With this proposed change, the attacker needs information leaks in order to locate a kernel buffer containing the attack payload and must ensure that that kernel buffer remains valid long enough to use.
The use case you cite (sharing library code at a common virtual address between user and supervisor) is basically an information leak all by itself.  I cannot find an exact citation at the moment, but I remember reading that Mac OS X uses (or once used) a similar model of loading shared libraries into a global mapping region shared across all processes.  This led to privilege escalation exploits against root-owned processes, although the OS X kernel itself does not also share this library segment.  For POSIX systems, I believe that sharing library code at common virtual addresses between user and supervisor modes is a privilege escalation exploit waiting to happen and should be prevented.  I also understand that the initial RISC-V privileged ISA is intended primarily for POSIX supervisors, thus my confusion at the reluctance to adopt this change after discussions on isa-dev seemingly produced consensus for it, with the only opposition I had seen withdrawn.  (I now am sure that the issue had been raised and discussed previously before I joined isa-dev, so I had never seen your concerns and could not address them until now.)
The Linux support for x86 SMEP was added in https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=de5397ad5b9ad22e2401c4dacdf1bb3b19c05679 and essentially consists of turning SMEP on and forgetting about it.  I propose that the RISC-V equivalent be "always-on" and not require this "opt-in" step.

Thanks for setting me straight on the ROP gadget.
I'm going to re-propose this to the isa-dev list as a feature for inclusion in priv-1.11.

Merged!


Does Consumer::acknowledge use the network?

According to my mental model, there must be some network activity involved in acknowledging a pulsar message as a consumer. I was surprised to find that the Consumer::acknowledge method does not return a promise. My code which handles application shutdown would want to await until the acknowledgement has been successfully sent before ending the process.
Should acknowledge be updated to return a Promise?

I see that it does return a promise (i think) https://github.com/apache/pulsar-client-node/blob/11f28a6dace21a248fdf7f6d9d3a4a1de524a020/src/Consumer.cc#L277
So I guess the typescript definitions needs to be updated

This appears to be fixed in https://github.com/apache/pulsar-client-node/pull/200.
However, the negativeAcknowledge function still doesn't return a promise.


[BUG]-Driver Station Reports "x and y components of Rotation2d are zero" error in MapleCommonMath.getAngle()

Bug Description
The DS console stream reports a "x and y components of Rotation2d are zero" in MapleCommonMath.getAngle() when called by SwerveDriveSimulation.simulateChassisFrictionForce() on line 163.
It is possible that this is unrelated but the robot demonstrates highly erratic movement, twisting in quazi-random figure-8 patterns.
Robot Code Repository
https://github.com/BreakerBots/BRICK/tree/main/2025-beta
Steps to Reproduce
Call the SwerveDriveSimulation class's sub tick update method.
Additional Context
We are implementing this with Phoenix Swerve

Hi, thanks for reflecting the issue!
So the Rotation2d warining is completely normal, I also get it ever since I upgrade to wpilib2025, this shouldn't be the issue.
Please wait a little.  Once I have more time, I'll fork your repo to see if I can re-predocue the "highly erratic movement, twisting in quazi-random figure-8 patterns".

Hey, can you check the visibility of your repo?  It doesn't seem to be public.
https://github.com/BreakerBots/BRICK/

Apologies, it should be visible now.
The sim support is a bit messy as I put it together to debug.


Error while retreiving forecast data: Error occured processing forecast data.

Since yesterday I got following error and data is missing:
2022-03-26 20:45:47 WARNING (MainThread) [homeassistant.config_entries] Config entry 'Sint-Katelijne-Waver, Molenvelden' for weatherflow integration not ready yet: Error while retreiving forecast data: Error occured processing forecast data. Error message: 'current_conditions'; Retrying in background

There is something going wrong when fetching the Forecast Data. Would you mind sharing your station id, then I can check the raw data?

Assuming this is resolved so closing the issue. Please reopen if that is not the case, with some new information.


Fix unusable error when migrations are broken.

Summary
When a migration is defined without a name, Kong fails to start with a fairly useless error message:
/usr/local/share/lua/5.1/kong/cmd/start.lua:62: /usr/local/share/lua/5.1/kong/cmd/utils/log.lua:49: bad argument #6 to 'format' (no value)
stack traceback:
        [C]: in function 'error'
        /usr/local/share/lua/5.1/kong/cmd/start.lua:62: in function 'cmd_exec'
        /usr/local/share/lua/5.1/kong/cmd/init.lua:88: in function </usr/local/share/lua/5.1/kong/cmd/init.lua:88>
        [C]: in function 'xpcall'
        /usr/local/share/lua/5.1/kong/cmd/init.lua:88: in function </usr/local/share/lua/5.1/kong/cmd/init.lua:45>
        /usr/local/bin/kong:7: in function 'file_gen'
        init_worker_by_lua:38: in function <init_worker_by_lua:36>
        [C]: in function 'xpcall'
        init_worker_by_lua:45: in function <init_worker_by_lua:43>

This is because migration.name, being nil, when passed to the log function causes the format string to fail to resolve. This simply uses "(no name)" in place of the name.

Hi,
Names are mandatory for a migration, otherwise Kong has now way to decide whether a migration has been run already or not. Granted, Kong could catch that a migration has no name and should yield an appropriate error if so.
Will you contribute such a patch? :grin:

This actually does end up yielding an error about the migration having never run. I can likely change it to be a more explicit error.

Yes; I meant that Kong should fail earlier in such a case. This log message that you patched is-user friendly, and helps the user identify which migrations haven't run yet.
However, a migration that has no name is a developer error, and should be caught earlier (when the factory loads said migrations from the core/plugins) so that a developer can spot their mistake and fix it before the plugin is distributed. Something more or less like this maybe:
for i, migration in ipairs(migrations) do
  if type(migration.name) ~= "string" then -- cal also check that names are unique (another requirement)
    error("migration ", i, " for DAO ", dao_name, " must have a unique name")
  end
end

I've implemented the two checks. I noticed some of the CI tests were failing before but I don't see how they would have had to do with my changes.

Thanks, I manually committed this with some refactoring to avoid some back and forth. Thanks again!


Which bug do you fix for auto_gptq

Hi, I want to use the newest version of auto_gptq. In this repos, you fix some bugs of the original auto_gptq. May I ask what you mainly fix?

Please refer https://github.com/ChenMnZ/AutoGPTQ-bugfix/commit/ad5b0d72eece9a3cf6d4b7a5c710a6cc0331de80 for details.


Script to convert JSON to EXCEL

Description
This PR includes py script to convert JSON file to excel file.
Fixes #(issue_no)
#35
Type of change
Choosing one or more options from the following as per the nature of your Pull request.

NOTE: These boxes can be checked using [X]

[ ] Bug fix (non-breaking change which fixes an issue)

[x] New feature (non-breaking change which adds functionality)

[ ] Documentation Update

Checklist:
Please tick all the boxes that are fulfilled by your Pull Request.

[x] I have named my files and folder, according to this project's guidelines.
[x] My code follows the style guidelines of this project.
[x] My Pull Request has a descriptive title. (not a vague title like Update index.md)
[x] I have commented on my code, particularly in hard-to-understand areas.
[x] I have created a helpful and easy to understand README.md, according to the given README_TEMPLATE.
[x] I have included a requirements.txt file (if external libraries are required.)
[x] My changes do not produce any warnings.
[x] I have added a working sample/screenshot of the script.

Sure, I'll update that!

Sure, I'll update that!

The heading in your readme file is incorrect please check that

Sure, I'll update that!

The heading in your readme file is incorrect please check that

Updated it just now!

@all-contributors-bot please add @Meghana-12 for code

@all-contributors please add @Meghana-12 for code


Switch from list to iterable.

Codecov Report
Base: 19.60% // Head: 19.60% // No change to project coverage :thumbsup:

Coverage data is based on head (01c112f) compared to base (4a80d5a).
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff           @@
##           stable     #645   +/-   ##
=======================================
  Coverage   19.60%   19.60%
=======================================
  Files          70       70
  Lines        5829     5829
  Branches      314      314
=======================================
  Hits         1143     1143
  Misses       4641     4641
  Partials       45       45

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

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


Multiple conditions on join no longer works

What happened?
prql-compiler 0.8.1 allows:
from a
join b [==col1, ==col2]

But prql-compiler 0.9.2 doesn't allow now.
Error:
   ╭─[:2:15]
   │
 2 │ join b (==col1, ==col2)
   │               ┬
   │               ╰── unexpected , while parsing function call
───╯

PRQL input
from a
join b (==col1, ==col2)

SQL output
NA

Expected SQL output
SELECT
  a.*,
  b.*
FROM
  a
  JOIN b ON a.col1 = b.col1
  AND a.col2 = b.col2

MVCE confirmation

[X] Minimal example
[X] New issue

Anything else?
No response

This is intended behavior: you have to use &&.


Allow setting a connection name.

This can be helpful to identify specific connections in RabbitMQ, for debugging or tracing purposes.
I've matched the default values in amqp.Config (which are annoyingly not exposed in the lib itself), so behavior should be completely identical if this parameter is not set.

Having a CHANGELOG would be good indeed!

I could do it if you like.

Yes, I'll leave that up to you so you can choose the style as you like.


Cloudflare users unable to deploy

Hi there,
When updating to 0.18.4 caddy gives an error:
+] Building 6.7s (7/8)
=> [proxy internal] load .dockerignore                                                                                0.0s
=> => transferring context: 2B                                                                                0.0s
=> [proxy internal] load build definition from Dockerfile                                                                                0.0s
=> => transferring dockerfile: 202B                                                                                0.0s
=> [proxy internal] load metadata for docker.io/library/caddy:latest                                                                                0.2s
=> [proxy internal] load metadata for docker.io/library/caddy:builder                                                                                0.2s
=> CACHED [proxy builder 1/2] FROM docker.io/library/caddy:builder@sha256:f93573a72179f8f660127d9ae09a2a188b9194320f6fc1dbf562ca1bc7b38386                                                                   0.0s
=> CACHED [proxy stage-1 1/2] FROM docker.io/library/caddy:latest@sha256:89213bb94f8a60ebf0554ffe4a45c1af65321140246d34a689e641dae233b063                                                                    0.0s
=> ERROR [proxy builder 2/2] RUN xcaddy build     --with github.com/caddy-dns/cloudflare                                                                                6.3s
5.765 2023/08/08 18:18:05 [INFO] exec (timeout=-2562047h47m16.854775808s): /usr/local/go/bin/go get -d -v github.com/caddy-dns/cloudflare<EMAIL_ADDRESS>5.926 go: downloading github.com/caddy-dns/cloudflare v0.0.0-20230807034102-74f004e1c1ab
6.015 go: github.com/caddy-dns/cloudflare@upgrade (v0.0.0-20230807034102-74f004e1c1ab) requires<EMAIL_ADDRESS>not<EMAIL_ADDRESS>6.017 2023/08/08 18:18:05 [FATAL] exit status 1
Luckily I could just  start up the docker containers afterwards without an issue but the deploy script gives this error when running it.
Pete

Have they seriously not fixed that yet???
https://www.github.com/caddyserver/caddy-docker/issues/307
https://www.github.com/caddy-dns/cloudflare/issues/55
Sigh... I'll keep an eye on this. If it becomes a pattern of behavior/goes on for too long, I'll have to lock things to commit hashes.

No problem all good. Will wait for them to resolve :)

@pallebone Please try LED 1.3.0, I have updated the Caddy build files to avoid this.

Ok will try in a couple of hours! Thanks for the effort. Hopefully they can do what you suggested and make tags.

I am very doubtful they'll be receptive of that due to how immediately defensive their response was, but here's hoping.

Hi there,
Just ran the git pull, ./deploy -y, ./deploy -f and it has managed to run the update without any issue whatsoever this time.
I see you changed the tag to caddy272 - does this mean you will monitor it from now on and change the tag for caddy if there is an update when you update the script from time to time? Just wondering what to expect.
Anyway all seems good, so many thanks again :)
One other thing I have noticed is that after the installation the docker names have somewhat changed slightly. So for example the old names were containing _ but the new ones contain -.
For example:
=> => naming to docker.io/library/lemmy-easy-deploy-proxy                                                                                0.0s
[+] Running 6/6
✔ Container lemmy-easy-deploy_lemmy-ui_1  Removed                                                                                0.0s
✔ Container lemmy-easy-deploy_postgres_1  Removed                                                                                0.0s
✔ Container lemmy-easy-deploy_proxy_1     Removed                                                                                0.0s
✔ Container lemmy-easy-deploy_lemmy_1     Removed                                                                                0.0s
✔ Container lemmy-easy-deploy_pictrs_1    Removed                                                                                0.0s
✔ Network lemmy-easy-deploy_default       Removed                                                                                0.3s
[+] Running 6/6
✔ Network lemmy-easy-deploy_default       Created                                                                                0.1s
✔ Container lemmy-easy-deploy-postgres-1  Started                                                                                0.8s
✔ Container lemmy-easy-deploy-pictrs-1    Started                                                                                0.8s
✔ Container lemmy-easy-deploy-lemmy-1     Started                                                                                1.2s
✔ Container lemmy-easy-deploy-lemmy-ui-1  Started                                                                                1.5s
✔ Container lemmy-easy-deploy-proxy-1     Started
This means when I run this command below:
docker-compose -f /lemmy/Lemmy-Easy-Deploy/live/docker-compose.yml -p "lemmy-easy-deploy" up -d && docker-compose -f /lemmy/Lemmy-Easy-Deploy/live/docker-compose.yml -p "lemmy-easy-deploy" logs -f | grep -C7 -e ERROR -e WARN
It has to recreate the docker volumes as the names are brought back to lemmy-easy-deploy_proxy_1 instead of lemmy-easy-deploy-proxy-1 for example.
The script still states:
If you must manage your deployment manually, it is critical to supply the stack name:
docker compose -p "lemmy-easy-deploy" [up/down/etc]
So some small change has occurred recently to bring in this minor inconsistency.
I would note this seems to have no ill effect on the deployment thus far.
Kind regards
Peter

I see you changed the tag to caddy272 - does this mean you will monitor it from now on and change the tag for caddy if there is an update when you update the script from time to time? Just wondering what to expect.

Essentially yes, and the way I go about it will depends on how they respond to my feature request. But something tells me I won't have to worry about them publishing new versions "too fast."

One other thing I have noticed is that after the installation the docker names have somewhat changed slightly. So for example the old names were containing _ but the new ones contain -.

This might be yet another strange behavior of Docker Compose v1. Maybe Debian pushed an update to v1 and there was a behavior change. But since v1 has been deprecated, I still do recommend you update to v2 using Docker's official upgrade guide.
But make sure you aren't running two deployments now:
docker container ls

If you see duplicates, you might have a problem. If you don't then you should be good. I don't think your new stack would actually be running if there was an issue, so if Lemmy is working, then I think everything is fine.

I am running a later version after you moaned at me:
root@lemmy01:/lemmy/Lemmy-Easy-Deploy# docker compose version
Docker Compose version v2.19.1
I think it might be something that changed recently as it never used to do this.
Also it does not do this if I dont use the -f option on the script I noticed (from limited testing). Unsure if this is a difference?
Will continue to monitor it.
Pete

Maybe it's due to your upgrade from v1 to v2?
Checking my own stack, mine has always used hyphens, i.e.:
lemmy-easy-deploy-lemmy-ui-1

I wouldn't worry about it too much though, because I don't try to access these containers by absolute name, and the volume names are still predictable in either case. And even if this is some weird behavior in Docker Compose, the fact that your stack is running suggests that it's deleting the old containers as needed and basically sorting itself out.
Thanks for pointing this out though, it's a good reminder to be careful about these names. I didn't know it did this.

Interesting. Mine always had the underscores even of you check old issues where I posted information many days ago. I assumed that they were just the normal way. I never realised we were different either.

Relevant information:
https://stackoverflow.com/questions/66514436/difference-between-docker-compose-and-docker-compose
Changed command I use from docker-compose to docker compose (with a space) eg:
docker compose -f /lemmy/Lemmy-Easy-Deploy/live/docker-compose.yml -p "lemmy-easy-deploy" up -d
And now I get - instead of _
relevant comment:
Another notable difference between the two is how the docker image tags are generated. For both commands, the image tag is concatenation of COMPOSE_PROJECT_NAME env var (project dir name if env var is not set) and name value from the compose file. For older docker-compose command the name is appended to COMPOSE_PROJECT_NAME with an underscore, but the newer docker compose command appends the two with a hyphen/dash -


missing fallback userId

According to the document, the SDK uses a random installationId as a fallback for the user ID.
https://github.com/getsentry/sentry-docs/pull/4201
https://docs.sentry.io/platforms/flutter/enriching-events/identify-user/
However, I could not find an implementation of this and the reported issue seems to be tagged as Unknown User.

Is this behavior unimplemented? Or if I've missed something, please let me know.

@mj-hd thanks for reporting, is that Android or iOS?

I am seeing this as well on iOS - Android always has an ID

It could be related to https://github.com/getsentry/sentry-cocoa/issues/1554
@brustolin Reading the code snippet https://github.com/getsentry/sentry-dart/blob/main/flutter/ios/Classes/SentryFlutterPluginApple.swift#L74-L91
Which Class/Field should I read the userId? Is the userId that falls back to the installation Id also set in the scope?

@marandaneto I tried this on iOS. On Android, the issues are tagged with a unique user ID.

It's a bug then, we'll take care of that.

I was really looking forward to this but this suffers from the same effect that as soon as I set some other user fields, the cocoa SDK no longer adds the its fields to the context.
So on Android I always hav a unique user ID unless I set/remove it with something different. On iOS I only hav a user ID if I don't do anything with the user.


No license :(

I think this plugin deserves a lot more attention and would benefit from regular updates and being published on the JetBrains Marketplace. I would gladly help maintain, publish and update it, but unfortunately there doesn't seem to be any license, so it can only be really used within GitHub according to its quite limited ToS.
Is this an intentional decision, or is it possible to add an open source license of your choice? @vitalibo would have to agree to that in any case if this plugin shall be made open source, plus @fbezdeka and @ciarancourtney to make it possible to merge changes from their forks under that license.

I added Apache 2.0 license and I have no objections if you have the desire and ability to extend and publish this plugin, you can do that.

I'm using the plugin with CLion 2022.1.3, all necessary adjustments can be found in my clone (2022.1 branch) https://github.com/fbezdeka/bitbake-intellij-plugin/commits/2022.1
All commits should have a Signed-off-by, but it's unclear to me where those changes should go to and as they have never been reviewed this should definitely be done.
@moqmar, where/how do you plan to maintain that? As @vitalibo is the official author he should at least be involved in reviews. Uploading/publishing in the Marketplace is a different thing (IMHO).

Thank you, that's awesome! If @vitalibo wants to continue maintaining this project here that would be great, then I'd just create pull requests personally & you can also add me as a maintainer if you want me to e.g. review other pull requests.
If not, I can also try to get a fork at https://github.com/ZEISS approved, but it's preferred to keep changes upstream at the original repository if possible.

@moqmar at your choice. I don't have time to maintain the project right now, sent you an invitation.

Thank you very much, I'll maintain it here then for now. 😃


Get metrics, such as execution time

metrics: local execution time (includes queues), machine execution time (from dwave/ibm), QPU usage (dwave)
Check timing docs and dashboard for more

I have to figure how to understand timing metrics returned from dwave/ibm
https://docs.dwavesys.com/docs/latest/c_qpu_timing.html

I should think about serializing the results, so I can easily re-use them for data analysis

a simple way to serialize would be to convert to JSON https://stackoverflow.com/questions/3768895/how-to-make-a-class-json-serializable
A deserialization should be equally easy

I opened #85 since IBM timing info is not currently available


Add compliant and noncompliant examples of<EMAIL_ADDRESS>

Description of changes:

Rules Added<EMAIL_ADDRESS>Added new methods for compliant and non compliant examples
Added new class
Added dependencies on Spring Framework

Here already existing manifest -<EMAIL_ADDRESS>is  more correct . Thus new manifest is not needed, hence closing this PR.


How to use static methods like getCountryData?

I want to use getCountryData() static function mentioned in intl-tel-input documentation to set localized countries. Wondering how I can do it in this angular plugin. Did anyone try this?

I have been trying and managed to get the list:
telInputObject(obj) {
     console.log(obj);
     this.countriesList = obj['p']
  }


[CI] Update TagBot setup

Switch to comment-based setup, instead of hourly cron jobs.

@vchuravy since I don't know much about tagbot I'll let you review


Add traversaro and Tobias-Fischer to mantainers

Similar to https://github.com/conda-forge/sdl-feedstock/pull/4 .

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


Update createNode to use prevSvgMode for foreignObject

Updating idiff createNode to use prevSvgMode instead of isSvgMode when the element is foreignObject because foreignObject is still an SVG node
https://github.com/developit/preact/issues/771

Coverage remained the same at 100.0% when pulling 1aca1c036ac057017877c1a7009a679cd15d9fbd on grahm:master into e026d9e1a871a3f84fb88a499168b4af083673f6 on developit:master.

This PR doesn't cover all uses of isSVG. attributes don't work.


"[zotero]" citekey format doesn't match zotero's default format

The better-bibtex "[zotero]" format handles colons differently than zotero does by default. For example, for the paper "Biomaterials: Where We Have Been and Where We Are Going" the default zotero citekey is   ratner_biomaterials:_2004 and the "[zotero]" format citekey is ratner_biomaterials_2004.
This is inconvenient if you start using better-bibtex and want the new bib file to match your existing citations.

Can you right-click on such a reference and send me a debug report?

Sure, here's the report ID for the example paper mentioned above: DZEZ4XQD
Thanks for looking at it.

https://github.com/retorquere/zotero-better-bibtex/releases/download/builds/zotero-better-bibtex-1.6.49-circle-2354.xpi works for me, can you verify? Note that the sample you submitted has a fixed citekey, that won't change unless you clear the citekey.

Yup, that corrected all the citekeys with colons in my library, and didn't change any of the other citekeys. Thanks for the quick fix!