Fix where diagnostic listener SqlDiagnosticsListener.OnAfterCommand runs to avoid implict concurrent execution

Describe the bug
See https://github.com/dotnet/aspnetcore/issues/41924 for more background and https://github.com/dotnet/aspnetcore/issues/41924#issuecomment-1146646674 for the context.
When you run an async sql SqlCommand (via ExecuteReaderAsync), the implementation fires the diagnostics listener callback after running the user's continuation. This allows the code to run concurrently with the user code, which can introduce accidental parallelism and break in various ways. The linked issues explain how this breaks in a very common app insights scenario.
Microsoft.AspNetCore.Http.DefaultHttpRequest.get_Cookies()+8f
Microsoft.ApplicationInsights.AspNetCore.TelemetryInitializers.WebSessionTelemetryInitializer.UpdateRequestTelemetryFromPlatformContext(Microsoft.ApplicationInsights.DataContracts.RequestTelemetry, Microsoft.AspNetCore.Http.HttpContext)+3c
Microsoft.ApplicationInsights.AspNetCore.TelemetryInitializers.WebSessionTelemetryInitializer.OnInitializeTelemetry(Microsoft.AspNetCore.Http.HttpContext, Microsoft.ApplicationInsights.DataContracts.RequestTelemetry, Microsoft.ApplicationInsights.Channel.ITelemetry)+c4
Microsoft.ApplicationInsights.AspNetCore.TelemetryInitializers.TelemetryInitializerBase.Initialize(Microsoft.ApplicationInsights.Channel.ITelemetry)+fa
Microsoft.ApplicationInsights.TelemetryClient.Initialize(Microsoft.ApplicationInsights.Channel.ITelemetry)+2f9
Microsoft.ApplicationInsights.TelemetryClient.Track(Microsoft.ApplicationInsights.Channel.ITelemetry)+35
Microsoft.ApplicationInsights.DependencyCollector.Implementation.SqlClientDiagnostics.SqlClientDiagnosticSourceListener.AfterExecuteHelper(System.Collections.Generic.KeyValuePair`2, Microsoft.ApplicationInsights.Common.PropertyFetcher, Microsoft.ApplicationInsights.Common.PropertyFetcher, Microsoft.ApplicationInsights.Common.PropertyFetcher)+18b
Microsoft.ApplicationInsights.DependencyCollector.Implementation.SqlClientDiagnostics.SqlClientDiagnosticSourceListener.System.IObserver>.OnNext(System.Collections.Generic.KeyValuePair`2)+48f
System.Diagnostics.DiagnosticListener.Write(System.String, System.Object)+45
System.Data.SqlClient.SqlClientDiagnosticListenerExtensions.WriteCommandAfter(System.Diagnostics.DiagnosticListener, System.Guid, System.Data.SqlClient.SqlCommand, System.String)+1fc
System.Data.SqlClient.SqlCommand+<>c__DisplayClass130_0.b__2(System.Threading.Tasks.Task`1)+2fc
System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(System.Threading.Thread, System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)+4b
System.Threading.Tasks.Task.ExecuteWithThreadLocal(System.Threading.Tasks.Task ByRef, System.Threading.Thread)+b6
System.Threading.ThreadPoolWorkQueue.Dispatch()+1fa
System.Threading.PortableThreadPool+WorkerThread.WorkerThreadStart()+1f2

To reproduce
TBD (this is a race condition)
Expected behavior
The diagnostics listener should not run concurrently with code executing after the query is completed.
Further technical details
Microsoft.Data.SqlClient version: 4.8.3
.NET target:  6.0
SQL Server version: LocalDb
Operating system: Windows 11

System.Data.SqlClient is in maintenance mode. Microsoft.Data.SqlClient should be used instead (unsure if it makes any difference for the repro)

If I understand this correctly then the equivalent code for netcore in this library is:
https://github.com/dotnet/SqlClient/blob/9b1996a768afad0f29ae692189ffef8b91770907/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlCommand.cs#L2542-L2577
It creates a TCS and then passes the task from it to RegisterForConnectionCloseNotification which adds a ContinueWith and unrwaps it, this is the returnedTask that we give back to the user. The Task.Factory call then sets up the async call and we add a ContinueWith on the result and add our own cleanup. We don't keep the task returned from the factory and the continue so the task returned to the user and our worker task only interact through the TCS and when we set the TCS result it's possible for the user task to be woken and finish it's task before the delegate that sets the result has finished, essentially between lines 2564 and 2566 mutithreaded stuff can happen. It'll take some pretty close timing/delays to make it happen but I think it's a hole.
If that is the problem then the obvious, and probably breaking/wrong fix would be to keep the unwrap the internal task from the async invocation and return that to the caller instead, then they'd be awaiting our cleanup task and there can't be an ordering problem.
Without a reliable replication I'd be really worried about making any changes to this. The async in this library is older than langauge support and can have really complicated interactions with any mistakes capable of breaking or regressing customers easily. okolvik-avento have you observed this bug since you moved to Microsoft.Date.SqlClient at all?
Is there a contractual obligation for event ordering here? The issue it's causing seem to be that the telemetry client is trying to access an HttpContext object which has already been cleaned up in response to the query diagnistic being sent but is that a behaviour that's defined or is it just hopeful and works because of close timing? Does sqlclient have a defined obligation to raise the event before returning to the customer?

@Wraith2 i'm still seeing the get_Cookies exception after transitioning to Microsoft.Data.SqlClient

@Wraith2 I think there are 2 fixes I can think of:

Do a bigger refactoring and await the FromAsync task. This feels bigger and a bit riskier.
Call WriteCommandAfter before setting the TaskCompletionSource. This will make sure diagnostics listeners run before their async continuation executes. We don't need to await the fire and forget task.

Without a reliable replication I'd be really worried about making any changes to this. The async in this library is older than langauge support and can have really complicated interactions with any mistakes capable of breaking or regressing customers easily. @okolvik-avento have you observed this bug since you moved to Microsoft.Date.SqlClient at all?

I'm confident I can make a reliable repro now that the problem is understood. If there's fear this is too breaking we can always add an app context switch. This ends up breaking ASP.NET Core + AppInsights (which is a very common combination) so it's important we figure out how to solve this.
cc @noahfalk for this take.

Moving the diagnostics call before setting result/exception is easy and relatively safe in terms of changes in this library. I'm not going to worry about a replication for that one since we're not logically changing the async composition. I did eventually think of this but only after I'd turned my computer off.
My only worry is whether it would expose similar problems to calling late if we call too early and people expect late, what happens if someone relies on knowing a result has been user-handled and it now hasn't been? The other path through continuation calls before setting the exception so users have already been exposed to that situation in a limited way.
I'll try and audit the library later and move all diagnostics calls before tcs outcome setting methods are called.

@davidfowl thanks for opening the issue here. @Wraith2 thank you for the support. We will review the PR.

How's that for a quick fix :)


[Discussion] Public Methods, Addressed Events and Wait Reply

The common way to communicate with SMO is by exchanging events, but sometimes many SMOs would register and send the same message, so there would be many ways to get around this, even by adding a message indentifier or a wait reply using DVR + occurences.
Occurences would be vulnerable to race conditions...
Example:
Consider "SMO.Mongo.lvclass", a SMO that insert & loads variants from MongoDB.
I want this class to be extensible, so normally projects with complex queries would inherit it.
All SMO that DB access would composite SMO.Mongo.lvclass, like UI.UserManager.lvclass would call API "Put Document.vi" normally, but "Load Document by ID.vi" would need a reply. I could easily check if an incoming event with document _id reply at "UI.UserManager", but at some cases when a list of documents is asked there is no parameter for verification, so I would need to add a field in "List Documents.vi" api call like "call-key" and send this in replies, so I could get an addressed event, all event structures waiting that case would need to check if the key matches, but I don't like this solution as it seems a lot of overload.
Another idea I am thinking is to make this a byRef SMO, and after API call wait on occurence, so when SMO.Mongo loads response in a proper DVR it fires the occurence, so API call can read DVR with response.
Of course that occurences are not safe, but then a 'call key' could be added, and if this is the case, why not create a queue, message the SMO with that queue and wait for element then destory? Or why not using then Notifier?
I don't know what is the best option and why I should use one over the other option.
This SMO.Mongo.lvclass is a real project I'm planning to write in order to stop worring with database structure.
Currently I create 2 projects with a SMO DBs (EnduranceDB.lvclass & DynaDB.lvclass) using Mongo.lvclass (source avaliable in my repo) and make all project logic there, but then for each project I will need to change my reusable subsystems, like UI.UserManager.lvclass. So I want to create a SMO.Mongo.lvclass and make layers of specialization, so I could make Mongo.Endurance.lvclass, Endurance project have user authentication, so I just add UI.UserManager.lvclass and it already works with my Mongo.Endurance.lvclass as it is a SMO.Mongo.lvclass.
Currently I need different source for UI.UserManager in 2 projects, as the SMO DB is different.

You can imagine there is no single answer to this question. :-)
An important thing to consider when you decide on a method for your queries is whether the calls need to be synchronous or asynchronous.
For synchronous calls, I'll generally rely on private events (from within public method) to send commands to the Process and wait for a response using a notifier. The public method creates a notifier and passes it as part of the private event payload. The process will handle all commands in sequence and be responsible for any modification of the class private data, ensuring that no race conditions occur. The process replies using the notifier. (If I'm not mistaken, there is a dictionary example in the HAL Webinar code that relies on that mechanism. [apply vipc file and it should be in SMO palette])

How does one do asynchronous replies in SMO?  As someone who has not studied this package, the OP is a rather worryingly long bit of technobabble, given that asynchronous replies are conceptually very simple (Me: “Request 123: what is X?,  You: “Re: Request 123: what is X?, X=10”).

Hello James,
Here's a snapshot of the code I was referring to. It checks if the SMO is started (has a process). If it is, it signals the process through PrivateEvents to use a notifier to send the reply. API call waits for notification to come back. API is blocking for duration of call, process is processing asynchronously the requests. If the process it not running (SMO created, not started), it simply returns the byRef value stored in the private data. More instantaneous and non-blocking, but possibly stale value.

My response was perhaps too vague because one could use any type of callback (wink: Messenger Queue). SMOs don't enforce any standard pattern for those queries. I think at least one of these standard mechanisms should be scripted in the SMO Editor, but I haven't personally gotten around to do that just yet.

Ah, but that’s a synchronous reply.  Synchronous from the point of view of the caller/requestor, who is blocked waiting for the response.  How does one receive the reply asynchronously, without blocking?  I’m imagining passing a private event in the message, along with some kind of identifying information.
BTW, in you code example, why are you not destroying the reply Notifier after use?

You should implement your API call with a non-blocking event or messaging queue if you choose so. If I want to receive a reply later, in an async way, I generally rely on either a Public Event I'm registered to. But I think I see what you mean: is there a generic way to request a callback when the data is available? At this time, there is none. Not in the base class anyway.
As for the notifier... you are right that the API is responsible for the reference and should destroy it. I don't know why this one doesn't have it, it is part of my template. I'll have to review this piece of code for similar leaks ;-)  I also explicitly put a note in my processes to not destroy the notifier ref as the API is responsible for that. Process should ignore error 1 if it occurs on sending notification (as in: API has stopped waiting for it). Thanks for pointing that out!

Minor suggestion: use a one-element Queue in place of the Notifier, as reading a Notifier involves a copy of the data.

I'll close this thread and refer to issue #26 .


Migrating data from mineflayer to minecraft-data

The enums have moved but some more data inside mineflayer can move to minecraft-data.
The point of this is still the same as for the enums : making the data available and improvable by anyone even people not using mineflayer. It's also easier to change data if it's not inside a lot of code.
I listed what I think can move there https://github.com/PrismarineJS/minecraft-data/issues/6, I'll close both issues when the migration is done.

When entity data will be up to date, update mount in jumper.js to handle horses.


Creating microservice in python for generating plots

This microservice will receive the radar file from API Gateway and it will plot the reflectivity and save it as a image in a folder and return the filename/location to the API Gateway.
POST API

This microservice will receive the radar file from API Gateway and it will plot the reflectivity and save it as a image in a folder and return the filename/location to the API Gateway.


Find all Erlang Standard Library calls in Elixir Standard Library

There are a couple of ways to do this. One can either go through Elixir source code and pick them out, or one can create a new pass (or use an existing one) to find the erlang calls. These should be documented so that there is a list to use to implement them.
If using pass, a plan could be to take all Elixir modules listed in the docs and put them through the compiler.

:erlang
fun_info
get
binary_to_term
phash2
pid_to_list
split_binary
garbage_collect
system_info
spawn_monitor
put
process_flag
unique_integer
monotonic_time
system_time
convert_time_unit
time_offset
:math
log2
:calendar
date
datetime
valid_date
:binary
copy
match
part
compile_pattern
split
replace
:code
add_to_pathz
add_to_patha
del_path
ensure_loaded
get_object_code
which
where_is_file
lib_dir
is_loaded
:filename
dirname
join
:epp
parse_file
:re
compile
version
run
inspect
:ets
take
insert
lookup_element
insert
select
match_delete
delete_object
select_count
insert_new
lookup
member
new
test_ms
:sys
get_state
get_status
trace
statistics
no_debug
suspend
resume
:global
send
whereis_name
:io
get_line
get_chars
columns
:application
get_all_key
get_key
get_application
get_all_env
get_env
set_env
unset_env
ensure_started
ensure_all_started
start
stop
load
unload
which_applications
loaded_applications
:os
set_signal
system_time
type
cmd
getenv
find_executable
getpid
putenv
unsetenv
:elixir
eval
eval_quoted
string_to_quoted
string_to_quoted!
:rand
seed
uniform
:orddict
store
:supervisor
start_link
sup_flags
modules
:file
open
read_file_info
make_dir
format_error
read_file
write_file_info
make_link
make_symlink
copy
rename
list_dir
write_file
delete
get_cwd
close
change_mode
format
:gen
call
start
stop
:unicode
characters_to_binary
:timer
tc

Hi,
I would like to contribute to this project, and this seems like a good place to start. But I have some questions first.
I was thinking to try doing system_time/0 and processes/0. Implementations might be something like:
function system_time() {
  return new Date().getTime();
}`

```js
function processes() {
  child_process.exec('ps aux', (err, stdout, stdin) => {
    if (err) throw err;
      console.log(stdout);
    });
}

but how can I go about writing the test for such functions? Since they are relying on JS APIs and Node.js APIs.

Hmm... I think you might want to check all the filename functions off since they are implemented here.

I think this should be rethought a bit


miss some metrics

in our envirotment we miss a lot of metrics
eg:
packetloss_abnormal
socketlatencywrite100ms
....
os: 4.19.104-300.el7.x86_64 #1 SMP Mon Feb 17 15:34:16 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
version: v0.0.2-alpha(fe3b5f3)  kubeskoop/kubeskoop:20230703-fe3b5f3
config:
apiVersion: v1
data:
  config.yaml: |-
    debugmode: false
    metric_config:
      interval: 15
      port: 9102
      probes:
      - netdev
      - io
      - socketlatency
      - packetloss
      - sock
      - tcpsummary
      - tcp
      - tcpext
      - udp
      - net_softirq
      - virtcmdlatency
    event_config:
      port: 19102
      loki_enable: false
kind: ConfigMap
metadata:
  name: kubeskoop-config
  namespace: kubeskoop%

more detial in logs
{"time":"2023-07-26T03:29:28.414162999Z","level":"INFO","msg":"collect metric cache","err":"no cache found for packetloss_netfilter","metric":"packetloss_netfilter"}
{"time":"2023-07-26T03:29:28.435159598Z","level":"INFO","msg":"collect from cache","value":null}
{"time":"2023-07-26T03:29:28.435212145Z","level":"INFO","msg":"collect metric cache","err":"no cache found for packetloss_abnormal","metric":"packetloss_abnormal"}
{"time":"2023-07-26T03:29:28.43603406Z","level":"INFO","msg":"collect from cache","value":null}
{"time":"2023-07-26T03:29:28.436048544Z","level":"INFO","msg":"collect metric cache","err":"no cache found for socketlatencywrite100ms","metric":"socketlatencywrite100ms"}
{"time":"2023-07-26T03:29:28.436211736Z","level":"INFO","msg":"collect from cache","value":null}
{"time":"2023-07-26T03:29:28.436251548Z","level":"INFO","msg":"collect metric cache","err":"no cache found for socketlatencyread100ms","metric":"socketlatencyread100ms"}
{"time":"2023-07-26T03:29:28.436259698Z","level":"INFO","msg":"collect from cache","value":null}
{"time":"2023-07-26T03:29:28.436271434Z","level":"INFO","msg":"collect metric cache","err":"no cache found for packetloss_tcprcv","metric":"packetloss_tcprcv"}
{"time":"2023-07-26T03:29:28.436561499Z","level":"INFO","msg":"collect from cache","value":null}
{"time":"2023-07-26T03:29:28.436570684Z","level":"INFO","msg":"collect metric cache","err":"no cache found for net_softirq_schedslow100ms","metric":"net_softirq_schedslow100ms"}
{"time":"2023-07-26T03:29:28.43694424Z","level":"INFO","msg":"collect from cache","value":null}
{"time":"2023-07-26T03:29:28.436950445Z","level":"INFO","msg":"collect metric cache","err":"no cache found for packetloss_total","metric":"packetloss_total"}
{"time":"2023-07-26T03:29:28.43782782Z","level":"INFO","msg":"collect from cache","value":null}
{"time":"2023-07-26T03:29:28.437840106Z","level":"INFO","msg":"collect metric cache","err":"no cache found for net_softirq_excuteslow100ms","metric":"net_softirq_excuteslow100ms"}
{"time":"2023-07-26T03:29:28.437965734Z","level":"INFO","msg":"collect from cache","value":null}
{"time":"2023-07-26T03:29:28.437972273Z","level":"INFO","msg":"collect metric cache","err":"no cache found for socketlatencyread1ms","metric":"socketlatencyread1ms"}
{"time":"2023-07-26T03:29:28.438477543Z","level":"INFO","msg":"collect from cache","value":null}
{"time":"2023-07-26T03:29:28.438492922Z","level":"INFO","msg":"collect metric cache","err":"no cache found for socketlatencywrite1ms","metric":"socketlatencywrite1ms"}
{"time":"2023-07-26T03:29:28.438499554Z","level":"INFO","msg":"collect from cache","value":null}
{"time":"2023-07-26T03:29:28.438505567Z","level":"INFO","msg":"collect metric cache","err":"no cache found for net_softirq_excuteslow","metric":"net_softirq_excuteslow"}
{"time":"2023-07-26T03:29:28.438808609Z","level":"INFO","msg":"collect from cache","value":null}
{"time":"2023-07-26T03:29:28.438815834Z","level":"INFO","msg":"collect metric cache","err":"no cache found for virtcmdlatency","metric":"virtcmdlatency"}
{"time":"2023-07-26T03:29:28.438820438Z","level":"INFO","msg":"collect from cache","value":null}
{"time":"2023-07-26T03:29:28.438825159Z","level":"INFO","msg":"collect metric cache","err":"no cache found for packetloss_tcphandle","metric":"packetloss_tcphandle"}
{"time":"2023-07-26T03:29:28.438830515Z","level":"INFO","msg":"collect from cache","value":null}
{"time":"2023-07-26T03:29:28.438836817Z","level":"INFO","msg":"collect metric cache","err":"no cache found for packetloss_tcpstatm","metric":"packetloss_tcpstatm"}
{"time":"2023-07-26T03:29:28.438842095Z","level":"INFO","msg":"collect from cache","value":null}
{"time":"2023-07-26T03:29:28.438846734Z","level":"INFO","msg":"collect metric cache","err":"no cache found for net_softirq_schedslow","metric":"net_softirq_schedslow"}
{"time":"2023-07-26T03:29:28.439587745Z","level":"INFO","msg":"collect from cache","value":null}
{"time":"2023-07-26T03:29:28.439602554Z","level":"INFO","msg":"collect metric cache","err":"no cache found for virtcmdlatency100ms","metric":"virtcmdlatency100ms"}

Hi, I think this issue is related to #76 , could you please try to enable packetloss and socketlatency probes in event_config to check if the metrics appear? The config shoud be like:
apiVersion: v1
data:
  config.yaml: |-
    debugmode: false
    metric_config:
      interval: 15
      port: 9102
      probes:
      - netdev
      - io
      - socketlatency
      - packetloss
      - sock
      - tcpsummary
      - tcp
      - tcpext
      - udp
      - net_softirq
      - virtcmdlatency
    event_config:
      port: 19102
      loki_enable: false
      probes:
      - packetloss
      - socketlatency
kind: ConfigMap
metadata:
  name: kubeskoop-config
  namespace: kubeskoop

Thank you!

duplicate with #76


Prevent clients from sticking to old pools after config update

When configs are RELOADed, we replace old pools with new pools. Clients that hold on to their old pool references will keep using the old pools until they disconnect. This is undesirable.
In this PR, we give each client the name of the target pool and target username and have it re-acquire a pool reference at the beginning of the protocol loop (at the beginning of a new session or after finishing transaction). This will not change behavior for clients that are in the middle of a transaction or clients in session mode.

It took me sometime to add a test to verify the pool refresh after reload. So, I open a connection, leave in transaction, reload configs where we swapped database names for shards and then run SELECT current_database(), connections in transactions should see old database name, if they are connecting anew or after a transaction they should see the new database name


Localizable Strings.

Can we have the Strings used in the App in a Localizable.strings? In that way they be easily localizable for any language!
Thanks!

Buglife actually doesn't use Localizable.strings, since it is a static library that is embedded into host apps with zero resources; We do this to make it as easy as possible to add or upgrade Buglife in your app :)
If there is a specific language you're looking for, we'd be more than happy to add it for you! (I also noticed you're located in Brazil, and it just so happens we just added support for Portuguese in Buglife v1.4.0.)

Unfortunately the when the device is in Portuguese Brazil (pt-BR) the localizable are from a language I don't even know. very strange..

Whoops! This has been fixed in the latest release (v.1.4.1). Please let us know if you continue to see any issues :)


Application Hangs when querying Roles or Userroles

Describe the bug
Querying for UserRoles or Roles then enumerating the results causes the application to hang.  No exceptions are thrown.
To Reproduce
Steps to reproduce the behavior:

Running Asp.net Core 2.2
Add the following to the ConfigureServices method in Startup.cs

            services.AddDbContext<ApplicationDbContext>(options =>
                options.UseMySql(Configuration.GetConnectionString("DefaultConnection"), mysqlOptions =>
                {
                    mysqlOptions.ServerVersion(new Version(5, 6), ServerType.MySql)
                        .DisableBackslashEscaping();
                }));
            services.AddIdentity<ApplicationUser,IdentityRole>()
                .AddDefaultUI(UIFramework.Bootstrap4)
                .AddEntityFrameworkStores<ApplicationDbContext>()
                .AddDefaultTokenProviders();

Seed database with roles, users, and userroles
Run the following elsewhere in the application

            var roles = applicationContext.UserRoles;
            var cnt = roles.Count();

Expected behavior
Print out a count of the total UserRoles
Additional context
This doesn't only apply to count but any point in where the collection would be enumerated.  This also applies when querying "Roles"

Related SO question: https://stackoverflow.com/questions/56511457/requesting-userroles-or-roles-hangs

Does the SO comment not help? You should be using the stores rather than querying through context, although I would have expected context to work.
Is it only roles? Does the claims enumeration work?
Where is "elsewhere" in your application?

The SO comment didn't help any.  I may need to update this.  After a LOT of research, it turns out that the first query would be successful and any queries after that would result in a deadlock.  I'm not sure if this is EF Core, Pomelo, or AWS RDS.  Seemed like an EF issue at the time.

Tagging @ajcvickers for EF, but you'll need to prove it with logs :)

Sorry so late to respond back.  I wound up rewriting the project from scratch and it started working again.  Never was able to determine the issue but I'll play around when I get some free time to try and get it to happen again.


openhantek6022: 3.2.4 -> 3.2.5

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/OpenHantek/OpenHantek6022/releases.
meta.description for openhantek6022 is: "Free software for Hantek and compatible (Voltcraft/Darkwire/Protek/Acetech) USB digital signal oscilloscopes"
meta.homepage for openhantek6022 is: "https://github.com/OpenHantek/OpenHantek6022"
meta.changelog for openhantek6022 is: ""
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
Warning: no invocation of /nix/store/rqr2r3v62lhb9c0q37x8hmzlx29prvjx-openhantek6022-3.2.5/bin/OpenHantek had a zero exit code or showed the expected version
Warning: no invocation of /nix/store/rqr2r3v62lhb9c0q37x8hmzlx29prvjx-openhantek6022-3.2.5/bin/.OpenHantek-wrapped had a zero exit code or showed the expected version
0 of 2 passed binary check by having a zero exit code.
0 of 2 passed binary check by having the new version present in output.
found 3.2.5 with grep in /nix/store/rqr2r3v62lhb9c0q37x8hmzlx29prvjx-openhantek6022-3.2.5
found 3.2.5 in filename of file in /nix/store/rqr2r3v62lhb9c0q37x8hmzlx29prvjx-openhantek6022-3.2.5

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

1 package rebuild(s)

1 x86_64-linux rebuild(s)
1 x86_64-darwin rebuild(s)

First fifty rebuilds by attrpath
openhantek6022

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/rqr2r3v62lhb9c0q37x8hmzlx29prvjx-openhantek6022-3.2.5 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A openhantek6022 https://github.com/r-ryantm/nixpkgs/archive/80175b54cc39a464d865d2aa5a3638bb675c9c86.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/rqr2r3v62lhb9c0q37x8hmzlx29prvjx-openhantek6022-3.2.5
ls -la /nix/store/rqr2r3v62lhb9c0q37x8hmzlx29prvjx-openhantek6022-3.2.5/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

openhantek6022

Maintainer pings
cc @baracoder for testing.

LGTM
builds, works. Tested with Hantek6022BE


"Protect" certain names of datasets

For example, a user should not be allowed to create a _DATASETS_AND_DICTIONARIES_ group, because we need that and we need it to be formatted in a particular way.

Need to be checked....

This was done by introducing checks to hepfile.write to ensure group names and dataset names are not in the hepfile.constants.protected_names set.


Submenu truncated in fullscreen mode with rtl languages

Hi
custom:frigate-card-menu-submenu does not display all content
When the card is not in full screen mode, the menu is displayed and everything works properly
When the card is in full screen, I have a condition that the menu will be hidden and only display what I selected in the settings

Please use the new issue template and include the requested diagnostics so I can attempt to reproduce.

I tried this with the cast submenu and the camera submenu, in fullscreen, with עִברִית as my language, and the menu seems to render fine. Might depend on the browser, so I'll try to reproduce with your exact config when I have the diagnostics.

hi
I don't think the problem is related to Hebrew "rtl" because I changed homeassitant to English and it still happens
After many attempts in the settings of
frigate-card
I learned to understand that this happens when you select the menu in "style: hidden"
And it also happens in full screen and not full screen mode
I also tried in other browsers

Please use the new issue template and include the requested diagnostics so I can attempt to reproduce.

I cannot help you further without these diagnostics. From the new issue template:
<!-- =================================================================
***               PLEASE DO NOT IGNORE THIS TEMPLATE
***
*** This is the smallest amount of information needed to help you!
====================================================================== -->

**Checklist:**

- Please try updating to the [latest available version](https://github.com/dermotduffy/frigate-hass-card/releases).
- Please try clearing your browser cache.

**[REQUIRED] Card diagnostic information:**

<!--
On the card, hold down the Default/Frigate menu button for a few seconds then paste the diagnostics below. No help can be provided without this
-->


Improper log multiplexing on docker logs for containers with tty

Currently docker logs uses the existence of a tty in the container to determine how logs are displayed to the user.  But it goes deeper, docker stores all logs from a tty as stdout regardless of where it was sent.  Since docker is the one supplying fds 0, 1, and 2 it should be able to store and display all the logs regardless of the tty.
Examples:
$ docker run --name test debian sh -c 'echo this is stdout && echo this is stderr >&2'
this is stdout
this is stderr
$ docker logs test 2> /dev/null
this is stdout
$ docker logs test 1> /dev/null
this is stderr
$ # the above does exactly what I would expect
$ docker run -t --name test2 debian sh -c 'echo this is stdout && echo this is stderr >&2'
this is stdout
this is stderr
$ docker logs test2 2> /dev/null
this is stdout
this is stderr
$ # not expected, the fact that the container has a tty affects how it displays to the user

This is how it should work:
$ # tty or none on the container doesn't affect `docker logs` output
$ docker run -t --name test2 debian sh -c 'echo this is stdout && echo this is stderr >&2'
this is stdout
this is stderr
$ docker logs test2
this is stdout
this is stderr
$ docker logs test2 > some-file 2> /dev/null
$ cat some-file
this is stdout
$ docker logs test2 2>&1 > some-file2
$ cat some-file
this is stdout
this is stderr

It would be better to leave it to users to control whether they want stderr with stdout via the same output redirection that they are used to without having to worry whether or not the container had a tty allocated.
On a side note, why does the logs api stream differently formatted data from tty vs non-tty containers?

When you allocate a TTY, the creator only gets a single input stream, and a single output stream. Meaning that when you redirect a program's STDOUT & STDERR into the TTY, they are getting muxed together.
For example, lets use the script utility to create a TTY and look at the streams it sets up:
# script -q -c 'ls -l /dev/fd/' /dev/null
total 0
lrwx------ 1 phemmer adm 64 Jan 25 23:58 0 -> /dev/pts/16
lrwx------ 1 phemmer adm 64 Jan 25 23:58 1 -> /dev/pts/16
lrwx------ 1 phemmer adm 64 Jan 25 23:58 2 -> /dev/pts/16
lr-x------ 1 phemmer adm 64 Jan 25 23:58 3 -> /var/lib/sss/mc/passwd
lr-x------ 1 phemmer adm 64 Jan 25 23:58 4 -> /var/lib/sss/mc/group
lrwx------ 1 phemmer adm 64 Jan 25 23:58 5 -> socket:[6636438]
lr-x------ 1 phemmer adm 64 Jan 25 23:58 6 -> /proc/859/fd

Notice that FD 0, 1, & 2 all go to the TTY.
If you look at a normal terminal session, you'll see the same thing (STDIN, STDOUT, STDERR all going to the same TTY). The reason redirection works in your terminal is because you're performing the redirection BEFORE it gets sent into the TTY device. If you perform the redirection inside the docker container, you can accomplish the same thing.
The only way to accomplish your goal would be for docker to set up separate TTYs for both STDOUT & STDERR. While this would be possible, it would probably cause problems as this would be a very uncommon setup.

Ok, that explains why docker can only store one output on a tty since the tty handles stderr.  The real question then is why does docker logs treat them differently?  In either case we have a json file filled with logs and a tty's output would be the same as a process that never uses stderr.
Doing a curl on the api gives vastly different responses:
$ docker run --name test debian sh -c 'echo this is stdout && echo this is stderr >&2'
$ docker run -t --name test2 debian sh -c 'echo this is stdout && echo this is stderr >&2'
$ curl --unix-socket /var/run/docker.sock 'http:/containers/test/logs?stderr=1&stdout=1' | hexdump -C
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    46    0    46    0     0  61333      0 --:--:-- --:--:-- --:--:-- 46000
-bash: child setpgid (9484 to 9472): Operation not permitted
00000000  01 00 00 00 00 00 00 0f  74 68 69 73 20 69 73 20  |........this is |
00000010  73 74 64 6f 75 74 0a 02  00 00 00 00 00 00 0f 74  |stdout.........t|
00000020  68 69 73 20 69 73 20 73  74 64 65 72 72 0a        |his is stderr.|
0000002e
$ curl --unix-socket /var/run/docker.sock 'http:/containers/test2/logs?stderr=1&stdout=1' | hexdump -C
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    32    0    32    0     0  55749      0 --:--:-- --:--:-- --:--:-- 32000
-bash: child setpgid (13320 to 13308): Operation not permitted
00000000  74 68 69 73 20 69 73 20  73 74 64 6f 75 74 0d 0a  |this is stdout..|
00000010  74 68 69 73 20 69 73 20  73 74 64 65 72 72 0d 0a  |this is stderr..|
00000020

$ # headers are the same
$ curl --unix-socket /var/run/docker.sock 'http:/containers/test/logs?stderr=1&stdout=1' -D- -o /dev/null
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0HTTP/1.1 200 OK
Server: Docker/1.9.1 (linux)
Date: Tue, 26 Jan 2016 22:26:59 GMT
Content-Type: text/plain; charset=utf-8
Transfer-Encoding: chunked

100    46    0    46    0     0  83182      0 --:--:-- --:--:-- --:--:-- 46000
$ curl --unix-socket /var/run/docker.sock 'http:/containers/test2/logs?stderr=1&stdout=1' -D- -o /dev/null
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0HTTP/1.1 200 OK
Server: Docker/1.9.1 (linux)
Date: Tue, 26 Jan 2016 22:27:03 GMT
Content-Type: text/plain; charset=utf-8
Transfer-Encoding: chunked

100    32    0    32    0     0  62745      0 --:--:-- --:--:-- --:--:-- 32000

I know that the extra formatting of the stream comes from pkg/stdcopy, so why don't we treat the logs from a tty the same as non-tty?  This currently makes it hard to consume the api, since you must check if the container has a tty to determine how to process it.

Valid question, can't really answer that. I know this has come up in the past, but I can't find the issue. However there is #14201 which is about adjusting the documentation in regards to this.


Revert "[swiftc (49 vs. 5396)] Add crasher in swift::constraints::ConstraintGraphNode::getEquivalenceClass(...)"

Reverts apple/swift#6658

@swift-ci Please test

Build failed
Jenkins build - Swift Test OS X Platform
Git Commit -<PHONE_NUMBER>8c8bdf767b90a3465071b45a2b9594
Test requested by - @airspeedswift

@swift-ci please clean test macOS platform

Is it possible this is nondeterministic? // @practicalswift

Test seems to be failing in the same way on all subsequent PRs, but it's possible the original PR struck it lucky, or it's a clean vs incremental build thing.


Reference data on Stream Analytics on Edge

We're using ASA on edge (windows 10 host, linux containers) with reference data, and it worked up until recently.
ASA now states Microsoft.Streaming.StreamingNode.ReferenceData.ReferenceDataException <stack trace here> "Failed to loaded reference data from ''. Please verify the source data file exists."
We updated to the microsoft/azureiotedge-azure-stream-analytics:1.0.0-preview010 image, and since then its stopped working.
The file exists on the host in JSON format, UTF8 encoding.
We've given docker access to C drive.
Referenced the file from the ASA job (c:\Share\refdata.json)
In the ASA container create options we have respective bind: {"HostConfig": { "Binds": ["c:\Share:/asareferencedata"] }}
Is there any guidance on how to pass through bind or is it a new bug?
Many thanks.

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

ID: 6a9f5843-5ef0-abb8-b539-50d78d1545c8
Version Independent ID: 170e69fb-9cb7-c7e5-6b81-f8572da9217d
Content: Use reference data for lookups in Azure Stream Analytics
Content Source: articles/stream-analytics/stream-analytics-use-reference-data.md
Service: stream-analytics
GitHub Login: @JSeb225
Microsoft Alias: jeanb

@alpinedelight
Thanks for the feedback! We are currently investigating and will update you shortly.

Hi @alpinedelight: since you are running a Linux container on Windows host, you will need to first create a volume, then populate the reference data in the volume. Then you can provide the absolute path in volume eg. Vol1/file1.txt
We are improving our documentation to make this clear.

Thanks for the rapid response Sebastian - just to clarify, binds are no longer recommended/supported and should be replaced with volumes? As a result when creating the ASA edge reference data set we should point it to the volume path as opposed to host system path - i.e. ignore this documentation (https://github.com/MicrosoftDocs/azure-docs/blob/master/articles/stream-analytics/stream-analytics-edge.md#reference-data?) for the time being
Thanks again

Yes, in this case it should be replaced by volume. We'll update the doc shortly with this information. Thanks for pointing this out.

Test text


fix git with a % character

parse-url fail when git remote have a % in URL

fix: manage git with a % character
fix: pkgroll conflict

This will be included in #75. Thank you very much!


Local radius density score for dimensionality reduction

What is the metric?
The densMAP/denSNE paper includes a score for density preservation based on the local radius in the nearest neighbour graph before/after embedding https://www.nature.com/articles/s41587-020-00801-7. It would be great to have other density metrics as well (because this will be biased towards these methods) but this is a good place to start.
How should it be implemented?
Include a link to the publicly available codebase if available.
densMAP is implemented in the densmap-learn package https://github.com/hhcho/densvis and is also part of umap-learn so there should be implementations of the score there. Not sure how easily useable they are though.
Which task(s) could it be used for?
If the method is to be used for a task that is not yet included in the code base, use the issue template propose a new task instead.
Dimensionality reduction (2D) (possibly some related tasks)

Closed in #317


Component for inter-page navigation

Issue #13 proposes to add a Javascript TOC component for a within-page navigation. When a CreativeWork is part of a Collection then it would be useful to have cross-page navigation.
The dir codec in Encoda generates a root.json file at the top level - this includes all the properties for the works in the collection (including nested collections ie directories) except for content (which is encoded as HTML). This file could be fetched and used to
{
  "type": "Collection",
  "parts": [
    {
      "name": "CHANGELOG",
      "type": "Article",
      "title": "Untitled",
      "authors": [],
      "meta": {
        "depth": 0
      }
    },
    {
      "name": "CONTRIBUTING",
      "type": "Article",
      "title": "Untitled",
      "authors": [],
      "meta": {
        "depth": 0
      }
    },
    {
      "name": "README",
      "type": "Article",
      "title": "Untitled",
      "authors": [],
      "meta": {
        "depth": 0,
        "main": true
      }
    },
    {
      "type": "Collection",
      "name": "src",
      "parts": [
        {
          "type": "Collection",
          "name": "codecs",
          "parts": [
            {
              "type": "Collection",
              "name": "csv",
              "parts": [
                {
                  "name": "README",
                  "type": "Article",
                  "title": "Untitled",
                  "authors": [],
                  "meta": {
                    "depth": 3,
                    "main": true
                  }

Each HTML file also includes the meta data for the parts of the collection, including the depth attribute. This would allow some Javascript to know where to fetch root.json relative to the current page e.g.
  <head>
    <title>Untitled</title>
    <meta charset="utf-8">
    <script type="application/ld+json">
      {
        "@context": "http://stencila.github.io/schema/stencila.jsonld",
        "name": "CONTRIBUTING",
        "type": "Article",
        "authors": [],
        "meta": {
          "depth": 0
        }
      }
    </script>

Just to clarify the intent here. We need a tree nav for getting between pages as is often seen on the left of documentation sites e.g. this one in the Gatsby docs

Just to point out that the encoda docs are now being self-generated (ie. getting generated by encoda itself) and producing a root.json file: https://stencila.github.io/encoda/root.json and JSON-LD in <meta> as above. You can click through to the docs for individual codecs from the "Formats" table. Should be useful for testing this, and other components.


Allow adonis new --blueprint to clone from custom providers #109

not just github
and internal templates

Coverage increased (+0.008%) to 47.676% when pulling b0323be7abc2d5f360d0c5138e7ac38c7246a600 on PieterVenter7:develop into a028f28a4a8b940879c482fd1210ae1a8badb6a1 on adonisjs:develop.

How about using this package https://github.com/jonschlinkert/is-git-url
It will also check for URL's ending with .git/ or .git .

ping @PieterVenter7

I do apologize for the long turn around time(had a large production sprint) I've made the recommended changes. Thanks for the advise @thetutlage

Yes, looks nice 😄


How to get the real-time progress in CopyObject operation?

I see the code in apt-copy-object.go:
// Update the progress properly after successful copy.
if dst.Progress != nil {
io.Copy(io.Discard, io.LimitReader(dst.Progress, dst.Size))
}
Does it update the progress in the end?
My file is always large,I need the real-time progress in copy object operation.
How to get it?
Thangks!

CopyObject is server side, there is no progress possible.

Ok.What does the dst.Progress to do ? Is there any use?

@licf12138 No.


Cache cookies collected from browser instead of searching them each time

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

[x] I'm requesting a feature unrelated to a specific site
[X] I've looked through the README
[X] I've verified that I'm running yt-dlp version 2023.07.06 (update instructions) or later (specify commit)
[X] I've searched known issues and the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue

Provide a description that is worded well enough to be understood
What the problem is:
I always include --cookies-from-browsers in my yt-dlp commands, and it ALWAYS searches the same exact cookies everytime without caching them somewhere (or at least caching their places)
How it could be fixed:
By caching necessary cookies (i.e. twitter, youtube, twitch cookies)
How your proposed solution would look like:
a cookies database somewhere in ~/.config/yt-dlp I guess?
Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[ ] If using API, add 'verbose': True to YoutubeDL params instead
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
[debug] Command-line config: ['--cookies-from-browser', 'Brave', '-vU', '-F', 'https://www.twitch.tv/videos/1910046316']
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version<EMAIL_ADDRESS>[b532a3481]
[debug] Python 3.11.3 (CPython x86_64 64bit) - Linux-6.4.8-zen1-1-zen-x86_64-with-glibc2.38 (OpenSSL 3.1.2 1 Aug 2023, glibc 2.38)
[debug] exe versions: ffmpeg 6.0 (setts), ffprobe 6.0, rtmpdump 2.4
[debug] Optional libraries: Cryptodome-3.12.0, brotlicffi-<IP_ADDRESS>, certifi-2023.07.22, mutagen-1.46.0, secretstorage-3.3.3, sqlite3-2.6.0
[Cookies] Extracting cookies from brave
[debug] Extracting cookies from: "/home/mymamaaintgay/.config/BraveSoftware/Brave-Browser/Default/Cookies"
[Cookies] Extracted 1858 cookies from brave
[debug] cookie version breakdown: {'v10': 1824, 'v11': 0, 'other': 0, 'unencrypted': 34}
[debug] Proxy map: {}
[debug] Loaded 1855 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Available version<EMAIL_ADDRESS>Current version<EMAIL_ADDRESS>yt-dlp is up to date<EMAIL_ADDRESS>[twitch:vod] Extracting URL: https://www.twitch.tv/videos/1910046316
[twitch:vod]<PHONE_NUMBER>: Downloading stream metadata GraphQL
[twitch:vod]<PHONE_NUMBER>: Downloading video access token GraphQL
[twitch:vod]<PHONE_NUMBER>: Downloading m3u8 information
[twitch:vod]<PHONE_NUMBER>: Downloading storyboard metadata JSON
[debug] Formats sorted by: hasvid, ie_pref, lang, quality, res, fps, hdr:12(7), vcodec:vp9.2(10), channels, acodec, size, br, asr, proto, vext, aext, hasaud, source, id
[info] Available formats for v1910046316:

In many cases a fresh cookie value is needed since the site sets the cookie to expire. This is particularly true for login cookies, the main reason why you would pass cookies (eg, your preference for a dark theme is unlikely to be an issue in site extraction). So the browser's cookie store is the only valid cache, provided that you have refreshed the site in the browser.

Also, yt-dlp can't know in advance which cookies will be needed for the upcoming requests at the time of extracting cookies from browser. The input URL is known, but there could be several upcoming requests made to other domains in the extraction and download processes. So --cookies-from-browser needs to extract all cookies and load them into yt-dlp's cookiejar.

You could use --cookies and --cookies-from-browser together to make a copy/"cache" of the cookie database and then pass it to subsequent runs.


Error when installing codeceptjs-protractor

What are you trying to achieve?
Install codecept-protractor using npm i codeceptjs-protractor --save
What do you get instead?
npm ERR! path C:\Users\Seb\WebstormProjects\desktop\node_modules\codeceptjs-protractor\node_modules\.bin\codeceptjs
npm ERR! code ENOENT
npm ERR! errno -4058
npm ERR! syscall chmod
npm ERR! enoent ENOENT: no such file or directory, chmod 'C:\Users\Seb\WebstormProjects\desktop\node_modules\codeceptjs-protractor\node_modules\.bin\codeceptjs'
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent

npm ERR!      C:\Users\Seb\AppData\Roaming\npm-cache\_logs\2017-07-11T19_48_40_645Z-debug.log

Details

CodeceptJS version: 0.6.3
NodeJS Version: 6.11.0
Operating System: Windows 10
Protractor Version: 5.1.2

Installing codecept worked fine via npm i codeceptjs --save but I can't install the helpers

it looks like the same issue as https://github.com/Codeception/CodeceptJS/issues/583

Thanks for the report. I just updated all meta packages to make them compatible with latest npm
please update


feat: integrate hlsjs with videojs-contrib-quality-levels

See https://github.com/gkatsev/videojs-mux-kit/pull/1 for some comments on this.
The package-lock update is big because I used node 16, and it ships with npm 8, so, a major lockfile revision. I can downgrade to node 14? And regenerate it if that would be better.

It's not immediately clear to me how to activate this plugin in a JS file, I just get plugin "httpSourceSelector" does not exist in the console.
I've tried importing the 2 mentioned libraries and placing them in my bundler config's entry files, but the error stays the same. Any ideas?

@AdrianMrn what bundler are you using? Your question made me realize that you likely need to configure your bundler similarly to how videojs-mux-kit is configured for the Video.js plugins to work with the default import of mux-kit.
You'd need to alias video.js to video.js/core, which is done like so in webpack in this project
https://github.com/muxinc/videojs-mux-kit/blob/bed7fcfa25569e0b791574cea7ce638e8ac69e1f/webpack.common.js#L30-L32
Alternatively, you can change your import to import the VHS build, which theoretically won't require fiddling with your bundler.


add support for latest Avalonia Build

Avalonia Nightly Build changed several APIs (most of them are ready for the next preview release). This PR adds support for it.

For the removal of IsEffectiveValueChange: all changes that get as far as PropertyChanged will be effective value changes.

@laolarou726 did you think it should be merged asap, or I should wait till the next Avalonia preview will be released?

@laolarou726 did you think it should be merged asap, or I should wait till the next Avalonia preview will be released?

I think either is ok? You can wait till next preview release. Currently I'm linking the source code directly.

Just did more fix for the project

Oh, okay, thanks. I think what i need to add .editorconfig to the project to stabilize all formatting rules for code. What do you think?

Oh, okay, thanks. I think what i need to add .editorconfig to the project to stabilize all formatting rules for code. What do you think?

Agree, currently I'm using the default lint rules in Resharper.

@SKProCH It seems you forgot to publish a release for this merge. Can you create a new release on Nuget? Thanks!

Oh, in current project releases are triggered by tag... So, yes, my fault. I launched pipeline. Thanks, @laolarou726 )

I should unify all scripts in my libraries...


unable to connect to the postgres database

https://github.com/NewGraphEnvironment/fish_passage_bulkley_2022_reporting/blob/08c19fcd192dcc1752a45cb4bb64fba6f4e1cb0f/scripts/outgoing-mapping.R#L32-L40
I'm having an issue connecting to the database in the mapping script. The error message just says: "Error: FATAL:  password authentication failed for user "postgres"". I'm assuming it is because my environmental variables aren't set correctly? I remember you posting a note about this somewhere but I couldn't locate it.

i think you only need to access a database if you wanted to grab watershed group shapes.  Pretty sure the rest of that script doesn't need a pg db connection...
those are settings for a local database which you don't have.  you will need to alter the script to connect to the remote database if that is what you want to do

Ya I need it to get the study area watersheds. Which is also needed in the web map in the results section. How do I connect to the remote db?

call the connection params for bcbarriers

make sure to alter the query so the study area is only BULK

Got it working. But I don't want to commit the credentials to github, right?


Drag doesn't work nomally when handing File Object.

Hello.
I use this library to sort a list of files which will be uploaded to server.
After dragging any file, "undefined" is assign to a element in list.
I think file object cannot be serialized.
I tested it with JSON.serialize and It just returned empty Object {}.
Is there way to use list of File Object?
Thanks!

Roughly, to solve this problem, I used the following code example.
I used some fields to be serialized / deserialized. Later, It's looking for same file.

File objects don't work due to the serialization that the directive performs. You can solve this with the new dnd-callback, e.g. https://jsfiddle.net/Ldxffyod/1/


Model attributes customization inside admin panel

I tried to follow the docs but I couldn't figure out how to properly customize admin panel – manage attributes visibility per action, set default values in form fields, etc.
Suppose I've generated Project API with name, isActive and slug attributes via the CLI. I want to:

hide slug from new and edit actions and use beforeCreate callback to generate it behind the scenes
set isActive to true by default (here I mean form input, not db settings)

JSON settings seems better than overriding view templates.
Related question on stackoverflow

Hi @peresleguine,
Thanks for this issue. I replied directly through stackoverflow.


Option to use lesson solution as a template for next lesson

Is your feature request related to a problem?
I have step by step tutorial, where the next step in many cases rely on the previous step (lesson)
I find my self creating templates that are copies of the solution of the previous step - and though that this could be simplified.
I'm using the .tk-config.json to only put changed files in that template - but still that template is a copy of the solution of the previous step
Describe the solution you'd like.
I wish I could refer to a lesson in the template: option of a lesson
Describe alternatives you've considered.
Create a lot of templates - less fun
Additional context
No response

Hey @noam-honig! This is a very good idea! I like it!
Regarding how you refer to the previous lesson as a template, I'm thinking we could use a path like ../prev-lesson-folder.
What do you think?

@Nemikolh Sounds prefer.
A bit unrelated question - I hope it's ok, I'm having a wierd behavior around cookies with stackblitz, using cookie-session.
I can easily reproduce it in this tutorial or a stackblitz project version of it, but reproducing it stand alone would take a long time.
Is this something that's of interest - if so I'll spend the time

@Nemikolh I mean sounds perfect :)

Yes! That's definitely of interest! If you can share the stackblitz project, we'll have a look. :+1:

Yes! That's definitely of interest! If you can share the stackblitz project, we'll have a look. 👍

@Nemikolh thank you for that - i've been suffering from it for a while.
I created a small reproduction of the issue, you can find it at:
https://stackblitz.com/edit/stackblitz-starters-m9nszw?file=index.js
You'll see how saving the user alex in the session works, and saving the user  steve does not.
Initially I said that I don't like steve and that's ok - but I saw that other things break the cookie as well
This only happens in stackblitz - and I can see in the cookies section of the browser, that it seems that the result cookie is tempred with and breaks down - you can see that there is a weird date key, and that the signature is cleared for the values that don't work.
Value with alex:

Value with steve:

Let me know if that's ok

Hey @noam-honig! This is a very good idea! I like it!
Regarding how you refer to the previous lesson as a template, I'm thinking we could use a path like ../prev-lesson-folder.
What do you think?

Hi, @Nemikolh I think that this is a great idea - is there a timeline for it?

First, thanks a lot for the repro! This is a really odd bug. I've added it to our internal tracker for WebContainer. We will let you know when we have a fix :+1:

I think that this is a great idea - is there a timeline for it?

I'm currently pretty busy with bolt and I'm not sure about @AriPerkkio. However if you want to take a stab at it, PRs are welcome!

I'm thinking we could use a path like ../prev-lesson-folder

Where would this path be used? In .tk-config.json that is put in lesson's _files or _solution?

Describe the solution you'd like.
I wish I could refer to a lesson in the template: option of a lesson

This is also pretty much same that https://github.com/stackblitz/tutorialkit/pull/165 provides. A way to create re-usable files that are shown in lesson's editor.

I'm thinking we could use a path like ../prev-lesson-folder

Where would this path be used? In .tk-config.json that is put in lesson's _files or _solution?

Describe the solution you'd like.
I wish I could refer to a lesson in the template: option of a lesson

This is also pretty much same that #165 provides. A way to create re-usable files that are shown in lesson's editor.

I think it differs from #165 since I don't want to show these files in the lesson - I want these files to actually be like template files - hidden - and I want to avoid the need to duplicate files - and maintain so many duplications.
Today I find myself with templates that are called "solution_lession_x" that I use in lesson x+1
As for the "where would this path be used?" I would use it in the template field in the lesson front-matter.
The entire idea is not to duplicate files, and use them as templates in the next lesson.
For example - conisder I'm building a full stack app - in the first lesson I've built the sign in mechanism - in the second lesson I do things with signed in users, I want the solution of the lesson about the sign in mechanizm to be used as the template for the lesson about doing things with them - without duplicating the files, and without showing them in the lesson editor (unless I specifically put them there)
just like a template
Sorry for the long text, I'm not sure I'm expressing myself clearly so I decided to elaborate


Update README to point to new location

Prepare to archive the repository.
Keep the pubspec and required files to avoid needlessly breaking
existing git dependencies.

I'm not super worried about existing git deps 🤷

Let's just update the readme and archive, no? Let's not get too complicated here!


Code is Too old

As in the title, your code is too old. . Not only is it outdated, but it's also not stable.
There is no support for providers with channel data at all.
Basically, if you insert channels in tvprovider in the way of companionlibrary, only providers with really few channels can use this method.
As a test, if you use another large xmltv instead of richinput, you will get numerous errors, or the scan time will be in the order of hours. Android seems to have given up on the field of tv development. At the same time, it is not compatible with Live Tv App.
Why are these issues left unresolved in the latest branch?

What is your Android Version on TV?
I have moved the code to latest media3 and I donot see functionality issues as such running on android-pie TV.
I have removed the xml parsing part though and do xml parsing on my own since I am using Kodi compatible xml and m3u.
checkout swinder0161/androidtv-sample-inputs branch media3

-----Original Message-----
From: @.>
To: @.>;
Cc: @.>; @.>;
Sent: 2023-10-03 (화) 15:40:32 (GMT+09:00)
Subject: Re: [googlesamples/androidtv-sample-inputs] Code is Too old (Issue #63)
What is your Android Version on TV?
I have moved the code to latest media3 and I donot see functionality issues as such running on android-pie TV.
I have removed the xml parsing part though and do xml parsing on my own since I am using Kodi compatible xml and m3u.
checkout swinder0161/androidtv-sample-inputs branch media3
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.
First of all, I am grateful that you have provided me with an answer to my opinion until the second quarter or at this point. At the same time, I would like to apologize for my ignorant question.
I've also been working on a project with 9.0 set-top box like you. Looking back, my complaint was that the Api I receive has a different structure from Google's standard (as used in CompanionLibrary in our company, program and advertising are not separated, but simply send out LiveStream, and in this context, most of the playback information is included in the Channel), and the speed issue of the xml Parsing part. However, this was due to my lack of understanding of the TV industry, and the TestCase I complained about found that the amount of data I had was unusually high compared to the normal provider, causing speed issues on the TvProvider side of Android, not my Rich-based application.
Also, my complaint about RichPlayer being low on ExoPlayer version, mostly resolved.Message ID: @.***>

What about sdk 31 .. to run on androidx ?


runners: Implement --erase option in pyocd runner

Implements the common runner option to mass erase before flashing in the
pyocd runner.
Signed-off-by: Maureen Helm<EMAIL_ADDRESS>

@mbolivar-nordic ping


Oceanbase competition 2023

What problem were solved in this pull request?
Issue Number: close #xxx
Problem:
What is changed and how it works?
Other information

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


fix: bug bash bugs

:tada: This PR is included in version 0.301.1 :tada:
The release is available on:

npm package (@next dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Error: Not responsive in Mobile Screen

Navbar do not scale up to cover the full width while in mobile screen mode ...
same goes for  Footer too
their width should be full for better User interface

Thank you for assigning me ...

@Jainpaswan any update regarding this issue?

Apology for the late reply...
But currently I'm dealing with health issues...
Not able to continue to gssoc...
Therefore I am requesting to unassigned this task from me...
About the updates I already made 2 pull request but they were declined due
to "merge and too much changes"...
Again sorry for informing this late to you....
On Sat, 19 Oct, 2024, 12:02 am Himangshu Sharma, @.***>
wrote:

@Jainpaswan https://github.com/Jainpaswan any update regarding this
issue?
—
Reply to this email directly, view it on GitHub
https://github.com/recodehive/awesome-github-profiles/issues/808#issuecomment-2423023778,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A5SKIPO7S2VUXQCLQ4CAJ53Z4FH5HAVCNFSM6AAAAABP3VW7MOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMRTGAZDGNZXHA
.
You are receiving this because you were mentioned.Message ID:
@.***>


Audio echo and vibriating cursor in Firefox

When opening editor.opencast.org in Firefox, I'm currently hearing the audio echo. Furthermore, the scrubber is jumping back and forth vigorously.

Since this is not happening anymore, I am inclined to write this off as a once-off problem.


Gh 2331 Switched from Travis to Github actions for CI

Codecov Report

Merging #2332 into develop will decrease coverage by 0.02%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##             develop    #2332      +/-   ##
=============================================
- Coverage      65.61%   65.58%   -0.03%
+ Complexity      2505     2355     -150
=============================================
  Files            937      902      -35
  Lines          31151    29676    -1475
  Branches        3813     3606     -207
=============================================
- Hits           20439    19464     -975
+ Misses          9089     8655     -434
+ Partials        1623     1557      -66

Impacted Files
Coverage Δ
Complexity Δ

...gov/gchq/gaffer/graph/hook/FunctionAuthoriser.java
93.54% <0.00%> (-3.12%)
0.00% <0.00%> (ø%)

...uk/gov/gchq/gaffer/cache/impl/JcsCacheService.java
74.07% <0.00%> (-2.85%)
6.00% <0.00%> (ø%)

...er/store/operation/handler/compare/MaxHandler.java
80.00% <0.00%> (-2.36%)
0.00% <0.00%> (ø%)

...r/store/operation/handler/compare/SortHandler.java
56.00% <0.00%> (-2.34%)
0.00% <0.00%> (ø%)

...er/store/operation/handler/compare/MinHandler.java
71.42% <0.00%> (-2.11%)
0.00% <0.00%> (ø%)

...r/serialisation/implementation/JavaSerialiser.java
61.29% <0.00%> (-2.05%)
9.00% <0.00%> (ø%)

.../gchq/gaffer/jsonserialisation/JSONSerialiser.java
72.47% <0.00%> (-1.84%)
22.00% <0.00%> (-1.00%)

.../gov/gchq/gaffer/rest/service/v2/JobServiceV2.java
32.07% <0.00%> (-1.26%)
0.00% <0.00%> (ø%)

.../gchq/gaffer/rest/service/v1/OperationService.java
65.51% <0.00%> (-1.15%)
0.00% <0.00%> (ø%)

...operation/handler/utilities/WriteUnsortedData.java
84.90% <0.00%> (-0.81%)
0.00% <0.00%> (ø%)

... and 44 more

Continue to review full report at Codecov.

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


[Bug] example doesn't work

latest flutter/ windows/

Why is the input line underlined?
Did you "Pub get"?

Yes.

F1. flutter: new project
Set dependences barcode_scan: any
lib/main.dart replace all code from example

I cleared flutter.pub-cache\hosted\pub.dartlang.org\barcode_scan-3.0.1
It works now


Null safety release (now published as 0.11.0-nullsafety.1)

Hey,
As more and more packages are getting compatible with null safety, would it be possible for you to make a null safety release ? I need it personally because my app uses flutter_math which relies on quiver: ^3.0.0-nullsafety and it also use your package which relies on quiver ^2.0.0.
Thanks !

Definitely. I'll see what I can do today.

Definitely. I'll see what I can do today.

Great !

Great !

I made a lot of progress, but still not quite there. Unless something surprising comes up, this will be ready and published by EOD tomorrow.

I made a lot of progress, but still not quite there. Unless something surprising comes up, this will be ready and published by EOD tomorrow.

Cool, is there a branch or a pull request where we can track the progress @shyndman ?

Cool, is there a branch or a pull request where we can track the progress @shyndman ?

There you are.

There you are.

All errors worked through, and tests are passing.
This is my first Dart null-safety experience. Not bad at all. :)

All errors worked through, and tests are passing.
This is my first Dart null-safety experience. Not bad at all. :)

OK, published as 0.11.0-nullsafety.0. Give it a shot.

OK, published as 0.11.0-nullsafety.0. Give it a shot.

I'm gonna try it tomorrow. Thanks a lot :wink:

I'm gonna try it tomorrow. Thanks a lot :wink:

You're welcome. Thanks for using the package. :)

You're welcome. Thanks for using the package. :)

OK, so I got that code sample you gave me running, confirmed that it's not working properly, and I think I see what's happening.
Thinking through what the correct behavior should be now.

OK, so I got that code sample you gave me running, confirmed that it's not working properly, and I think I see what's happening.
Thinking through what the correct behavior should be now.


Running Rill Frontend behind Proxy doesn't work

Describe the bug
I'm trying to run Rill behind a proxy, for example https://mydomain.example/proxy/rill. However, the frontend doesn't load and I'm greeted with a blank screen instead. Looking at the network requests in the browser, it seems like the Rill frontend tries to retrieve the JS assets from the wrong path. For example, it tries to fetch from https://mydomain.example/_app/immutable/chunks/singletons.f7c0925f.js, instead of https://mydomain.example/proxy/rill/_app/immutable/chunks/singletons.f7c0925f.js. Somehow, the frontend does not include the proxy/rill path section in the request.
To Reproduce
I'm hoping that this is a simple frontend issue that can be resolved without a reproducible example. However, I can try to put together a minimal reproducible test case, if necessary.
Expected behavior
I would expect that the Rill frontend loads the JS assets from the correct path and displays the frontend corrently, instead of showign a blank screen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: Ubuntu 20.04
Browser: Edge
Version: 0.38.0

Hello @janjagusch, the Rill web app can't be served from a subpath, it needs to be hosted at the domain root. That goes not just for serving the frontend, but also for the API requests made by the frontend (which are all prefixed with /v1/...).
If you try to make Rill work behind a proxy, another thing to be aware of is that it relies heavily on streaming HTTP responses. So make sure you allow long lived HTTP requests (I would say at least 1hr).

Thanks for getting back to me so quickly, @begelundmuller.

the Rill web app can't be served from a subpath, it needs to be hosted at the domain root. That goes not just for serving the frontend, but also for the API requests made by the frontend (which are all prefixed with /v1/...).

Is that something you think can be fixed? I want to use Rill in a contrained corporate environment where I have no control over which ports are open. So I have no choice but to serve it behind a proxy.

If you try to make Rill work behind a proxy, another thing to be aware of is that it relies heavily on streaming HTTP responses. So make sure you allow long lived HTTP requests (I would say at least 1hr).

Thanks for letting me know. I will keep that in mind if we can make the proxy solution work.

In general, the local application is not really developed with self-hosting in mind.

Can you elaborate on this? How else would I host it? Or is Rill only meant to be used as an Enterprise SaaS in the cloud?

I think your best bet is to use a proxy that runs at the domain root.

That unfortunately not an option for us. To give you a bit more context:

In the environment I work in, only one port is open, which must run Jupyter server.
We use jupyter-server-proxy to access other services, like Rill, though the Jupyter server port.

I understand that you cannot cater to every esoteric use case your users encounter. However, in the corporate environments I've seen so far, accessing sensitive data usually means having restricted/no access to the internet, which renders a cloud SaaS version of Rill unusable. To enable such use cases, it will often be necessary to self-host Rill and access it behind a proxy.

Can you elaborate on this? How else would I host it? Or is Rill only meant to be used as an Enterprise SaaS in the cloud?

We currently focus on the local read/write experience on localhost (similar to Jupyter) and the managed read-only experience on https://ui.rilldata.com (that you deploy to using rill deploy).
Others have successfully deployed the localhost experience into a hosted environment, but beyond answering questions and suggesting workarounds, it's not really something we have the bandwidth to support properly at the moment.
Regarding the proxy setup, I understand why your current setup doesn't allow you to set up Rill, but unfortunately I can't currently think of any way around needing to run Rill at the domain root.

Closing this issue since Rill needs to run at the domain root and changing that would unfortunately be very complex (for example, gRPC which we use heavily also needs to run at the domain root).


HBASE-22980 HRegionPartioner getPartition() method incorrectly partitions the regions of the table.

Partitioner class HRegionPartitioner in a HBase MapReduce job has a method getPartition(). In getPartition(), there is a scenario where we have check for less number of reducers than region. This scenario seems incorrect because for a rowKey present in last region(let us say nth region) , getPartition() should return value (n-1). But it is not returning n-1 for the last region as it is falling in the case where number of reducers < number of regions and returning some random value.
So if a client uses this class as a partitioner class in HBase MapReduce jobs, this method incorrectly partitions the regions because rowKeys present in the last regions does not fall to the last region.
https://github.com/apache/hbase/blob/fbd5b5e32753104f88600b0f4c803ab5659bce64/hbase-mapreduce/src/main/java/org/apache/hadoop/hbase/mapreduce/HRegionPartitioner.java#L92
Consider the following scenario:
if there are 5 regions for the table, partitions = 5 and number of reducers is also 5.
So in this case above check for reducers < regions should not return true.
But for the last region when i=4(last region, 5th region) , getPartition should return 4 but it returns 2 because it falls in the case of when we have less reduces than region and returns true for the above condition even though we have reducers = regions. So the condition is incorrect.

Solution:
Instead of
   if (i >= numPartitions-1){

It should be
   if (i >= numPartitions){

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

:blue_heart:
reexec
1m 13s
Docker mode activated.

_ Prechecks _

:green_heart:
dupname
0m  0s
No case conflicting files found.

:green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

:green_heart:
@author
0m  0s
The patch does not contain any @author tags.

:green_heart:
test4tests
0m  0s
The patch appears to include 1 new or modified test files.

_ master Compile Tests _

:green_heart:
mvninstall
6m  7s
master passed

:green_heart:
compile
0m 27s
master passed

:green_heart:
checkstyle
0m 21s
master passed

:green_heart:
shadedjars
5m  7s
branch has no errors when building our shaded downstream artifacts.

:green_heart:
javadoc
0m 18s
master passed

:blue_heart:
spotbugs
0m 55s
Used deprecated FindBugs config; considering switching to SpotBugs.

:green_heart:
findbugs
0m 54s
master passed

_ Patch Compile Tests _

:green_heart:
mvninstall
5m 39s
the patch passed

:green_heart:
compile
0m 27s
the patch passed

:green_heart:
javac
0m 27s
the patch passed

:green_heart:
checkstyle
0m 20s
the patch passed

:green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

:green_heart:
shadedjars
5m  8s
patch has no errors when building our shaded downstream artifacts.

:green_heart:
hadoopcheck
19m 40s
Patch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.

:green_heart:
javadoc
0m 20s
the patch passed

:green_heart:
findbugs
1m  5s
the patch passed

_ Other Tests _

:green_heart:
unit
30m  5s
hbase-mapreduce in the patch passed.

:green_heart:
asflicense
0m 22s
The patch does not generate ASF License warnings.

86m 28s

Subsystem
Report/Notes

Docker
Client=19.03.2 Server=19.03.2 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-590/1/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/590

Optional Tests
dupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile

uname
Linux c14e6b712da8 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 GNU/Linux

Build tool
maven

Personality
/home/jenkins/jenkins-slave/workspace/HBase-PreCommit-GitHub-PR_PR-590/out/precommit/personality/provided.sh

git revision
master / fbd5b5e327

Default Java
1.8.0_181

Test Results
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-590/1/testReport/

Max. process+thread count
5170 (vs. ulimit of 10000)

modules
C: hbase-mapreduce U: hbase-mapreduce

Console output
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-590/1/console

versions
git=2.11.0 maven=2018-06-17T18:33:14Z) findbugs=3.1.11

Powered by
Apache Yetus 0.11.0 https://yetus.apache.org

This message was automatically generated.

Hi @apurtell , can you review this ?

LGTM. Would you mind checking or adding an assert that the table does indeed have 5 regions in it (it should) and then I'll merge. Thanks.

Hi @saintstack , Thanks for the review. I have handled the review comments and pushed. :)

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

:blue_heart:
reexec
1m 24s
Docker mode activated.

_ Prechecks _

:green_heart:
dupname
0m  0s
No case conflicting files found.

:green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

:green_heart:
@author
0m  0s
The patch does not contain any @author tags.

:green_heart:
test4tests
0m  0s
The patch appears to include 1 new or modified test files.

_ master Compile Tests _

:green_heart:
mvninstall
6m 18s
master passed

:green_heart:
compile
0m 27s
master passed

:green_heart:
checkstyle
0m 20s
master passed

:green_heart:
shadedjars
5m  2s
branch has no errors when building our shaded downstream artifacts.

:green_heart:
javadoc
0m 19s
master passed

:blue_heart:
spotbugs
0m 53s
Used deprecated FindBugs config; considering switching to SpotBugs.

:green_heart:
findbugs
0m 50s
master passed

_ Patch Compile Tests _

:green_heart:
mvninstall
5m 29s
the patch passed

:green_heart:
compile
0m 27s
the patch passed

:green_heart:
javac
0m 27s
the patch passed

:green_heart:
checkstyle
0m 20s
the patch passed

:green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

:green_heart:
shadedjars
5m  0s
patch has no errors when building our shaded downstream artifacts.

:green_heart:
hadoopcheck
17m  9s
Patch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.

:green_heart:
javadoc
0m 17s
the patch passed

:green_heart:
findbugs
0m 56s
the patch passed

_ Other Tests _

:broken_heart:
unit
23m  9s
hbase-mapreduce in the patch failed.

:green_heart:
asflicense
0m 16s
The patch does not generate ASF License warnings.

74m 33s

Reason
Tests

Failed junit tests
hadoop.hbase.snapshot.TestExportSnapshotNoCluster

Subsystem
Report/Notes

Docker
Client=19.03.3 Server=19.03.3 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-590/2/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/590

Optional Tests
dupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile

uname
Linux 79adf25277df 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 GNU/Linux

Build tool
maven

Personality
/home/jenkins/jenkins-slave/workspace/HBase-PreCommit-GitHub-PR_PR-590/out/precommit/personality/provided.sh

git revision
master / ba12d5b9de

Default Java
1.8.0_181

unit
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-590/2/artifact/out/patch-unit-hbase-mapreduce.txt

Test Results
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-590/2/testReport/

Max. process+thread count
5131 (vs. ulimit of 10000)

modules
C: hbase-mapreduce U: hbase-mapreduce

Console output
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-590/2/console

versions
git=2.11.0 maven=2018-06-17T18:33:14Z) findbugs=3.1.11

Powered by
Apache Yetus 0.11.0 https://yetus.apache.org

This message was automatically generated.


[v2] Support Java matching methods to schema

I would like to ask about support matching Java methods of resolvers (queries, mutations) to schema files (*.graphqls).
Example (based on How To GraphQL tutorial with graphq-java):
I've created a simple schema with query (the same is for mutations):
type Link {
    id: ID!
    url: String!
    description: String
}

type Query {
    allLinks: [Link]
}

schema {
    query: Query
}

Corresponding Java classes:
public class Query implements GraphQLRootResolver {
    private final LinkRepository linkRepository;

    public Query(LinkRepository linkRepository) {
        this.linkRepository = linkRepository;
    }

    public List<Link> allLinks() {
        return linkRepository.getAllLinks();
    }
}

public class Link {

    private final String id;
    private final String url;
    private final String description;

    // constructor and getters
}

And build schema:
private static GraphQLSchema buildSchema() {
    return SchemaParser.newParser()
            .file("schema.graphqls")
            .resolvers(new Query(linkRepository))
            .build()
            .makeExecutableSchema();
}

It works, but plugin in IntelliJ doesn't recognize that method allLinks() is used by schema query allLinks, and query is implemented by resolver's method.
After Ctrl+click:

Plugin name is JS GraphQL and is it means that it works only with JavaScript code and there no plans for support other languages (in particular, interested me Java)?
v. 2.0.0-beta-1 (the same is for v. 1.7.3)
IntelliJ IDEA 2018.3.5 Ultimate Edition

+1, would be awesome if it supported *.graphqls files, which is common convention used in graphql-java based frameworks to signify a schema-file (vs a file containing queries/mutatations)


TextInput: No events triggered and no text displayed when typing Korean on AndroidReact Native 0.76.3)

Description
I created a new React Native project using npx react-native init text.
After completing the setup, I ran the app on Android using yarn android without any additional configurations.
However, when using the TextInput component, typing Korean does not trigger any events (onChange, onChangeText, etc.) and no text is displayed in the input field.
Steps to reproduce

Create a new React Native project: npx react-native init text.
Run the app on an Android device using yarn android.
Add a TextInput component with onChange or onChangeText event handlers.
Type Korean characters into the TextInput.

React Native Version
0.73.6
Affected Platforms
Runtime - Android
Output of npx react-native info
System:
  OS: macOS 14.6
  CPU: (12) arm64 Apple M3 Pro
  Memory: 84.44 MB / 18.00 GB
  Shell:
    version: "5.9"
    path: /bin/zsh
Binaries:
  Node:
    version: 20.11.0
    path: ~/.nvm/versions/node/v20.11.0/bin/node
  Yarn:
    version: 1.22.22
    path: ~/.nvm/versions/node/v20.11.0/bin/yarn
  npm:
    version: 10.2.4
    path: ~/.nvm/versions/node/v20.11.0/bin/npm
  Watchman:
    version: 2<IP_ADDRESS>
    path: /opt/homebrew/bin/watchman
Managers:
  CocoaPods:
    version: 1.15.2
    path: /Users/kimgyeongseok/.rbenv/shims/pod
SDKs:
  iOS SDK:
    Platforms:
      - DriverKit 24.0
      - iOS 18.0
      - macOS 15.0
      - tvOS 18.0
      - visionOS 2.0
      - watchOS 11.0
  Android SDK:
    API Levels:
      - "31"
      - "33"
      - "34"
      - "34"
      - "34"
      - "34"
      - "35"
    Build Tools:
      - 33.0.1
      - 34.0.0
      - 35.0.0
    System Images:
      - android-35 | Google APIs Intel x86_64 Atom
      - android-35 | Google Play ARM 64 v8a
    Android NDK: Not Found
IDEs:
  Android Studio: 2024.2 AI-242.21829.142.2421.12409432
  Xcode:
    version: 16.0/16A242d
    path: /usr/bin/xcodebuild
Languages:
  Java:
    version: 17.0.12
    path: /usr/bin/javac
  Ruby:
    version: 3.1.6
    path: /Users/kimgyeongseok/.rbenv/shims/ruby
npmPackages:
  "@react-native-community/cli":
    installed: 15.0.1
    wanted: 15.0.1
  react:
    installed: 18.3.1
    wanted: 18.3.1
  react-native:
    installed: 0.76.3
    wanted: 0.76.3
  react-native-macos: Not Found
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: true
  newArchEnabled: true
iOS:
  hermesEnabled: true
  newArchEnabled: true

Stacktrace or Logs
no error console

Reproducer
https://github.com/KimGSeok/react-native-text-input
Screenshots and Videos

I'm unable to reproduce this. If you can provide a proper reproducer with a minimal example, we can help you


Add diagnostics to see recorded data etc, to see if phones have issues recording

To be used live by the people conducting the collection, some kind of dashboard.

this could include ways to add new prompts and many other things as well, an admin panel

#20 would benefit to identify which user or phone was having this sync issue and if the database reflected the UI problem

Hypothetically it would help for when the user presses the rec, stop, and skip buttons too fast so no recordings are captured. The only thing saved in the backend is an audio metadata.

Include a section on which devices/IMEIs are registered for this collection and perhaps the corresponding collections and timestamps done by that phone.


integration_tests should ignore pointers from real devices

If you run an integration test written with the integration_test package with flutter test any pointer events caused by physically touching the screen should be ignored and not forwarded to the framework in any way to keep the test hermetic. Only pointer events caused by the test itself (via the WidgetTester) should be dispatched to the framework.
Currently, the IntegrationTestWidgetsFlutterBinding extends LiveTestWidgetsFlutterBinding which takes pointer events from the device and performs a hit test on the app under test to print a list of possible finders:
https://github.com/flutter/flutter/blob/7d85a585da7572a495960d93324cbe1f8ac0be13/packages/flutter_test/lib/src/widget_tester.dart#L883
These hit tests of device pointer events can clash with simulated pointer events from the test if the events have the same pointer ID causing an assert [1] to trigger in the framework. This makes tests flaky in an unpredictable and hard to debug way (they only crash if something happens to touch the screen at the right moment while the test is running). We have seen an example of this in https://github.com/flutter/flutter/issues/116663.
Tests should be hermetic, so while the integration_test is executed an an automated fashion via flutter test, all outside pointer events should just be ignored.
[1] https://github.com/flutter/flutter/blob/7d85a585da7572a495960d93324cbe1f8ac0be13/packages/flutter/lib/src/gestures/binding.dart#L369

cc @pdblasi-google

An open question is whether we should keep handling pointer events from device and print out finder suggestions when you run an integration_test in live-mode via flutter run. I have suggested before that we maybe should just scrap that feature altogether, see https://github.com/flutter/flutter/issues/111203.
Another thought: flutter_driver tests likely suffer from the same source of flakes. We should investigate fixing it there as well (or finally commit to migrating all our tests to integration_test).

A crude way of fixing the issue could be to add the following to the IntegrationTestWidgetsFlutterBinding:
  @override
  void handlePointerEvent(PointerEvent event) {
    switch (pointerEventSource) {
      case TestBindingEventSource.test:
        super.handlePointerEvent(event);
        break;
      case TestBindingEventSource.device:
        print('>> Ignoring ghost event coming from outside of test: $event');
        break;
    }
  }

This of course disable it for all modes, flutter test and flutter run.

Even if we decide to remove the "finder explore" feature altogether, we'll have to do some work here to stop device pointer events from getting dispatched to the framework during a hermetic test run.


[New WTFBin]: WTFBIN Here

Contributor Name: Matthew W/0xdeadcell
Application/Executable: C:\Windows\system32\Startupscan.dll
SusRunTask
WTF Behavior Description:
System executes a suspiciously named DLL export with a name of SusRunTask, and this dll checks many various scheduled task and autostart execution locations such as registry persistence locations and C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup\ as well as spawning new processes that are not child processes.

List of registry keys it opens: "Registry Keys Opened"
https://www.virustotal.com/gui/file/7e20bd611bf14082ef28068073abc9f84faeb04fc9f4735b8fc7c0c0a1fbc87b/behavior
In a windows environment it is not uncommon to see execution of rundll32 Startupscan.dll,SusRunTask, however this is normal startup behavior that is executed by task scheduler during startup - it scans startup apps and warns the user if there are too many.

Link to Documentation of Behavior:
https://strontic.github.io/xcyclopedia/library/Startupscan.dll-4EA151DBB72D2BB5C73E16A91547E453.html
https://www.virustotal.com/gui/file/8b49b3f3d7773802cbb1e1400504fa5ad437502a3752f8149e6bb8d231a2522f/detection/
https://renenyffenegger.ch/notes/Windows/dirs/Windows/System32/Startupscan_dll
"StartupAppTask"
https://superuser.com/questions/884839/windows-8-1-automatic-maintenance-whats-really-going-on-under-the-hood#:~:text=compattelrunner -maintenance.-,StartupAppTask,-%3A scans startup apps
https://windows10dll.nirsoft.net/startupscan_dll.html

https://www.hybrid-analysis.com/sample/7e20bd611bf14082ef28068073abc9f84faeb04fc9f4735b8fc7c0c0a1fbc87b/5c60484b7ca3e14e0132f425

Please provide any images for additional evidence. Please check the links for images

Great submission. Added in 6e626a753a6. Thank you!


Web interface in Docker container/ Error when uploading document: "Must be either POST with the field 'file'...."

I am running the Web service in a Docker container. When trying to upload and process a file, I am getting the following Error: Must be either POST with file field 'file' or GET with param 'url'.

Environment:

MacOS 11.3.1
Docker Engine v20.10.0
ocr-transform v0.4.0

Ok, in the logs I see this:
[Thu May 13 10:41:22 2021] <IP_ADDRESS>:63222 Accepted
[Thu May 13 10:41:23 2021] PHP Warning:  POST Content-Length of 14446932 bytes exceeds the limit of 8388608 bytes in Unknown on line 0
[Thu May 13 10:41:23 2021] <IP_ADDRESS>:63222 [400]: POST /ocr-fileformat.php?do=transform&from=abbyy&to=page
[Thu May 13 10:41:23 2021] <IP_ADDRESS>:63222 Closing

Seems like you need to increase the file size limit for PHP or, if you don't want to do that, provide an more informative error message.

The latest code no longer limits the upload size when running in a Docker container.


Added a birdhouse using the github.com/deadsy/sdfx go package.

Awesome. Thanks, @deadsy.

Awesome. Thanks, @deadsy.


Fix GitHub workflow

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

Project coverage is 81.42%. Comparing base (77e450f) to head (3e286a1).

Additional details and impacted files
@@           Coverage Diff           @@
##            stage     #909   +/-   ##
=======================================
  Coverage   81.42%   81.42%
=======================================
  Files          49       49
  Lines        6421     6421
=======================================
  Hits         5228     5228
  Misses       1193     1193

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


Keep getting [!]load_script Exception Error.

Device : LGE Nexus 5X.
Frida Server version: 11.0.13 android arm64.
Device OS: Android 8.1.0 Rooted.
Frida Server is running and Fridump & Frida-ps work like a charm.
House recognizes the device but the package does not get loaded in the House Browser UI.

Take a look at this, https://github.com/nccgroup/house/issues/5, maybe the same issue. Let me know if that helps, thanks.


VS Code as a requirement?

Maybe I'm old fashioned but since when was the choice of IDE/editor a topic for a codebase itself to be involved in?

I understand your perspective on the choice of IDE/editor being independent of the codebase, but let's consider this from a different angle.
This project is a tutorial designed to help anyone, regardless of their level of development expertise, to follow along. For total beginners, deciding on an IDE can be a hurdle and by recommending a specific one, we significantly simplify their experience. This way, they can focus on learning the core concepts, rather than getting stuck on tooling choices.
For experienced developers, we trust in their ability to discern which parts of the tutorial are IDE-specific and adapt those to their preferred toolchain. We understand that seasoned developers may have preferences for certain tools due to their familiarity or specific features that align with their workflow.
Furthermore, it's worth noting that certain IDEs may provide better support for a specific programming language or framework, and therefore might be recommended or even required for working with a certain codebase. In this case, VS Code, with its support for devcontainers, made it incredibly easy to ensure everyone is developing in an identical environment. This effectively sidesteps potential complexities like setting up port forwarding, which are not the main focus of the tutorial.
Our goal here is not to impose but to guide and simplify the learning journey, especially for beginners, while giving a context where the recommended IDE adds tangible benefits to the learning and development process.

I think maybe it's just your wording. If you said "This tutorial assumes you're using VS Code for x reasons" then it would make more sense.
On a side note - I didn't know about devcontainers and I'm slightly disappointed they aren't yet supported in WebStorm etc.

On a side note - I didn't know about devcontainers and I'm slightly disappointed they aren't yet supported in WebStorm etc.

devcontainers is an open spec. It's up to the ide developers to support them. Looks like someone already made a feature request to JetBrains for this.


Formatting of match arms with long guards is a bit awkward.

             match *token {
                 Token::Dimension {
                     value, ref unit, ..
-                } if num_context.is_ok(context.parsing_mode, value) =>
+                }
+                    if num_context.is_ok(context.parsing_mode, value) =>
                 {
                     return NoCalcLength::parse_dimension(context, value, unit)
                         .map(LengthOrPercentage::Length)
                         .map_err(|()| location.new_unexpected_token_error(token.clone()))
                 },

Not sure it's expected, feel free to close if so, but I have never seen a human use that formatting :)

@emilio This indentation is expected I think as per the style guide. @nrc should the guide be revised or close the issue as a wont fix ?

I think we didn't consider the case where there is a } on it's own line in the pattern of the match arm. In that case, I think we should apply the 'combining' rules. This could be clarified in the style guide.

I believe I'm experiencing the same issue with rust-sfml.
Diff from old to new rustfmt behavior:
diff --git a/examples/pong.rs b/examples/pong.rs
index 4bfa5ed..cf3928c 100644
--- a/examples/pong.rs
+++ b/examples/pong.rs
@@ -101,7 +103,8 @@ fn main() {
                 } => return,
                 Event::KeyPressed {
                     code: Key::Space, ..
-                } if !is_playing =>
+                }
+                    if !is_playing =>
                 {
                     // (re)start the game
                     is_playing = true;