Do not fetch pods when we do not need them

What are you trying to accomplish with this PR?
On large clusters, get pods is really expensive. Try to do it less often.
How is this accomplished?
The main time we have a problem with this is while watching a large set of huge Deployment objects that are steadily rolling out. The reason we fetch pods in that watch is for eager failure detection, i.e. pods.all?(&:deploy_failed?) in ReplicaSet. The thing is, once the rollout has progressed a little, there's no real possibility of that condition becoming true. This PR check ReplicaSet's status, and if it shows that some pods are ready, we infer that pods.all?(&:deploy_failed?) would not be true if we fetched the pods, and bypass that fetch.
The same cannot be done for DS or SS because they use a .any? condition.
What could go wrong?
This is added complexity that could cause trouble in the future, e.g. if ReplicaSet starts doing something new with @pods that expects it to always be populated.

I'm wondering now if this filtering ("get all pods that failed") could be done server-side (by sending an API request that tells the server only to return those) rather than client-side (fetch ALL pods and then filter in Ruby)?

Unfortunately not. You can filter on some status fields like phase (and that is done server-side), but nothing granular enough to detect all the failure scenarios we want to (see the private Container class in Pod.rb). Another problem is that we'd lose the ability to safely centralize the pods cache if we do something more clever. Right now, the worst case is that we request all pods once, no matter how many different pod manager types (deployment, job, stateful set...) we've got in our set. If we stopped requesting all the data, that sharing across pod manager classes would no longer be safe.

Is pods.any?(&:deploy_failed?) equivalent to something like pods.all?(&:deploy_succeeded?)? Does that help (since it would allow you to turn the any? into a all?)?

No, it is possible for pods to neither have succeeded nor have failed (they may be starting or stalled for example). If that condition persists until the end of the deploy, you get a timeout rather than a failure.

@fw42 did my answers make sense to you? Are you ok with this PR?


Update authors

Codecov Report

Merging #58 (9545209) into main (256d450) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #58   +/-   ##
=======================================
  Coverage   75.12%   75.12%
=======================================
  Files          40       40
  Lines        2203     2203
=======================================
  Hits         1655     1655
  Misses        548      548

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 256d450...9545209. Read the comment docs.


Allow player to switch direction on short key press

Hello, and awesome plugin! Wondering if there is a way to change the player direction on a short key press and stay on the same tile (instead of moving 1-2 tiles).  I was thinking I could override the default movement behavior, but wanted to check if there was a simpler way (couldn't find it in the docs).
Thank you!

Hi @notchris, I also don't know a better way to achieve that. But maybe @zewa666 could find an elegant solution to this?

I went with a similar approach though had additionally to care about gamepad justUp simulation which got fixed in the other plugin I've been using + an additional virtual keyboard from the rex plugin

@notchris  Can I close this issue?

@Annoraaq I think so - unless you want to wait for a PR with a method with this functionality. Or maybe add the fix to to the notes on the docs page for movement. What do you think?

I would not fix this in GridEngine, because it seems to be a general Phaser feature (handling keypresses) and not grid movement related.
However, if this is a common problem we could add it to the docs. If not, I think this issue here is suffices as documentation of the solution.


Exec tachikoma update<PHONE_NUMBER>1810

:hamster::hamster::hamster:   Strategy none
Powered by Interval Pull Request as a Service - Tachikoma.io Announcement: 2015-06-28 Updated permissions - Tachikoma.io

Coverage decreased (-0.009%) to 99.695% when pulling 290246d4a8ff8a72d6f5a9026479cbf424a3cda0 on pazjacket:tachikoma/update-20160804151810 into 77a776d257a2436999eb722afb99b372b7aa9f95 on hoshinotsuyoshi:master.


Added ReferencesPriv to DB and Table level, see tidb issue 26703

What problem does this PR solve?
Parser related fix for https://github.com/pingcap/tidb/issues/26703 (ReferencesPriv needs to be on both DB/Schema and Table level).
What is changed and how it works?
In MySQL, the REFERENCES privilege can be on both DB and Table level, the Parser definition AllDBPrivs and AllTablePrivs did not include ReferencesPriv which made TiDB fail when checking it.
Check List
Tests

Manual test (add detailed scripts or steps below)

Built TiDB with go.mod change replace github.com/pingcap/parser => ../parser to build tidb-server with the locally changed parser repository
Tested CREATE USER r;, CREATE SCHEMA reftest;, USE reftest, CREATE TABLE t (a int);, GRANT REFERENCES ON reftest.* TO r; and GRANT REFERENCES ON reftest.t TO r; which did succeed, just like in MySQL.

Code changes

Has exported variable/fields change: AllDBPrivs and AllTablePrivs

/cc @morgo Could you please review this?

/merge


Detect table rewrites

Should solve #3 -- we're tracking oid => relfilenodeid from pg_class now, to discover if any table or index was moved to a new location on disk in our transaction, which would indicate it was rewritten.
This will trigger on things like:

Widening types: int => bigint
VACUUM FULL, REINDEX, CLUSTER
TRUNCATE
ALTER TABLE ... ADD COLUMN NOT NULL DEFAULT fn() where fn() is VOLATILE

Eugene 🔒 trace report of add_authors.sql
This is a human readable lock tracing and migration report generated by eugene to assist you in writing safer database migration scripts.
Here are some tips for reading it:

A lock is called dangerous ❌ if it will cause concurrent queries to wait for the migration to complete
You read that right, once a lock is acquired, it is only released at the end of the script
Eugene will tell you what kinds of queries dangerous locks would block in a summary
Hints can sometimes help you avoid dangerous locks, or hold them for a shorter time
It is hard to avoid dangerous locks, but we should minimize time spent while holding them
Sometimes seemingly fast migration scripts cause long outages because of lock queues, here is an example scenario

There is a summary section for the entire script at the start of the report and then a section for each statement in the script, that goes over the state of the database at the time the script was executed, as well as effects or hints specific to that particular statement
Overall Summary

Started at
Total duration (ms)
Number of dangerous locks

2024-05-10T22:08:00.529153772+00:00
4
2 ❌

All locks found

Schema
Object
Mode
Relkind
OID
Safe
Duration held (ms)

public
books
AccessExclusiveLock
Table
16416
❌
1

public
books
AccessShareLock
Table
16416
✅
1

public
books
ShareRowExclusiveLock
Table
16416
❌
1

public
books_pkey
AccessShareLock
Index
16422
✅
1

Dangerous locks found

AccessExclusiveLock would block the following operations on public.books:

SELECT
FOR UPDATE
FOR NO KEY UPDATE
FOR SHARE
FOR KEY SHARE
UPDATE
DELETE
INSERT
MERGE

ShareRowExclusiveLock would block the following operations on public.books:

UPDATE
DELETE
INSERT
MERGE

Statement number 1 for 3 ms
SQL
create table authors(id serial primary key, name text not null)

Locks at start
No locks held at the start of this statement.
New locks taken
No new locks taken by this statement.
Statement number 2 for 0 ms
SQL
alter table books alter column title set not null

Locks at start
No locks held at the start of this statement.
New locks taken

Schema
Object
Mode
Relkind
OID
Safe

public
books
AccessExclusiveLock
Table
16416
❌

Hints
Validating table with a new NOT NULL column
ID: E2
A column was changed from NULL to NOT NULL. This blocks all table access until all rows are validated. A safer way is: Add a CHECK constraint as NOT VALID, validate it later, then make the column NOT NULL.
The column title in the table public.books was changed to NOT NULL. If there is a CHECK (title IS NOT NULL) constraint on public.books, this is safe. Splitting this kind of change into 3 steps can make it safe:

Add a CHECK (title IS NOT NULL) NOT VALID; constraint on public.books.
Validate the constraint in a later transaction, with ALTER TABLE public.books VALIDATE CONSTRAINT ....
Make the column NOT NULL

Taking dangerous lock without timeout
ID: E9
A lock that would block many common operations was taken without a timeout. This can block all other operations on the table indefinitely if any other transaction holds a conflicting lock while idle in transaction or active. A safer way is: Run SET LOCAL lock_timeout = '2s'; before the statement and retry the migration if necessary.
The statement took AccessExclusiveLock on the Table public.books without a timeout. It blocks SELECT, FOR UPDATE, FOR NO KEY UPDATE, FOR SHARE, FOR KEY SHARE, UPDATE, DELETE, INSERT, MERGE while waiting to acquire the lock.
Statement number 3 for 0 ms
SQL
alter table books add column author_id integer not null

Locks at start

Schema
Object
Mode
Relkind
OID
Safe

public
books
AccessExclusiveLock
Table
16416
❌

New locks taken
No new locks taken by this statement.
Hints
Running more statements after taking AccessExclusiveLock
ID: E4
A transaction that holds an AccessExclusiveLock started a new statement. This blocks all access to the table for the duration of this statement. A safer way is: Run this statement in a new transaction.
The statement is running while holding an AccessExclusiveLock on the Table public.books, blocking all other transactions from accessing it.
Statement number 4 for 1 ms
SQL
alter table books add foreign key (author_id) references authors(id)

Locks at start

Schema
Object
Mode
Relkind
OID
Safe

public
books
AccessExclusiveLock
Table
16416
❌

New locks taken

Schema
Object
Mode
Relkind
OID
Safe

public
books
AccessShareLock
Table
16416
✅

public
books
ShareRowExclusiveLock
Table
16416
❌

public
books_pkey
AccessShareLock
Index
16422
✅

Hints
Validating table with a new constraint
ID: E1
A new constraint was added and it is already VALID. This blocks all table access until all rows are validated. A safer way is: Add the constraint as NOT VALID and validate it with ALTER TABLE ... VALIDATE CONSTRAINT later.
A new constraint books_author_id_fkey of type FOREIGN KEY was added to the table public.books as VALID. Constraints that are NOT VALID can be made VALID by ALTER TABLE public.books VALIDATE CONSTRAINT books_author_id_fkey which takes a lesser lock.
Running more statements after taking AccessExclusiveLock
ID: E4
A transaction that holds an AccessExclusiveLock started a new statement. This blocks all access to the table for the duration of this statement. A safer way is: Run this statement in a new transaction.
The statement is running while holding an AccessExclusiveLock on the Table public.books, blocking all other transactions from accessing it.
Taking dangerous lock without timeout
ID: E9
A lock that would block many common operations was taken without a timeout. This can block all other operations on the table indefinitely if any other transaction holds a conflicting lock while idle in transaction or active. A safer way is: Run SET LOCAL lock_timeout = '2s'; before the statement and retry the migration if necessary.
The statement took ShareRowExclusiveLock on the Table public.books without a timeout. It blocks UPDATE, DELETE, INSERT, MERGE while waiting to acquire the lock.
Statement number 5 for 0 ms
SQL
select * from books

Locks at start

Schema
Object
Mode
Relkind
OID
Safe

public
books
AccessExclusiveLock
Table
16416
❌

public
books
AccessShareLock
Table
16416
✅

public
books
ShareRowExclusiveLock
Table
16416
❌

public
books_pkey
AccessShareLock
Index
16422
✅

New locks taken
No new locks taken by this statement.
Hints
Running more statements after taking AccessExclusiveLock
ID: E4
A transaction that holds an AccessExclusiveLock started a new statement. This blocks all access to the table for the duration of this statement. A safer way is: Run this statement in a new transaction.
The statement is running while holding an AccessExclusiveLock on the Table public.books, blocking all other transactions from accessing it.

Eugene 🔒 trace report of add_authors.sql
This is a human readable lock tracing and migration report generated by eugene to assist you in writing safer database migration scripts.
Here are some tips for reading it:

A lock is called dangerous ❌ if it will cause concurrent queries to wait for the migration to complete
You read that right, once a lock is acquired, it is only released at the end of the script
Eugene will tell you what kinds of queries dangerous locks would block in a summary
Hints can sometimes help you avoid dangerous locks, or hold them for a shorter time
It is hard to avoid dangerous locks, but we should minimize time spent while holding them
Sometimes seemingly fast migration scripts cause long outages because of lock queues, here is an example scenario

There is a summary section for the entire script at the start of the report and then a section for each statement in the script, that goes over the state of the database at the time the script was executed, as well as effects or hints specific to that particular statement
Overall Summary

Started at
Total duration (ms)
Number of dangerous locks

2024-05-10T22:11:45.458000205+00:00
4
2 ❌

All locks found

Schema
Object
Mode
Relkind
OID
Safe
Duration held (ms)

public
books
AccessExclusiveLock
Table
16416
❌
1

public
books
AccessShareLock
Table
16416
✅
1

public
books
ShareRowExclusiveLock
Table
16416
❌
1

public
books_pkey
AccessShareLock
Index
16422
✅
1

Dangerous locks found

AccessExclusiveLock would block the following operations on public.books:

SELECT
FOR UPDATE
FOR NO KEY UPDATE
FOR SHARE
FOR KEY SHARE
UPDATE
DELETE
INSERT
MERGE

ShareRowExclusiveLock would block the following operations on public.books:

UPDATE
DELETE
INSERT
MERGE

Statement number 1 for 3 ms
SQL
create table authors(id serial primary key, name text not null)

Locks at start
No locks held at the start of this statement.
New locks taken
No new locks taken by this statement.
Statement number 2 for 0 ms
SQL
alter table books alter column title set not null

Locks at start
No locks held at the start of this statement.
New locks taken

Schema
Object
Mode
Relkind
OID
Safe

public
books
AccessExclusiveLock
Table
16416
❌

Hints
Validating table with a new NOT NULL column
ID: E2
A column was changed from NULL to NOT NULL. This blocks all table access until all rows are validated. A safer way is: Add a CHECK constraint as NOT VALID, validate it later, then make the column NOT NULL.
The column title in the table public.books was changed to NOT NULL. If there is a CHECK (title IS NOT NULL) constraint on public.books, this is safe. Splitting this kind of change into 3 steps can make it safe:

Add a CHECK (title IS NOT NULL) NOT VALID; constraint on public.books.
Validate the constraint in a later transaction, with ALTER TABLE public.books VALIDATE CONSTRAINT ....
Make the column NOT NULL

Taking dangerous lock without timeout
ID: E9
A lock that would block many common operations was taken without a timeout. This can block all other operations on the table indefinitely if any other transaction holds a conflicting lock while idle in transaction or active. A safer way is: Run SET LOCAL lock_timeout = '2s'; before the statement and retry the migration if necessary.
The statement took AccessExclusiveLock on the Table public.books without a timeout. It blocks SELECT, FOR UPDATE, FOR NO KEY UPDATE, FOR SHARE, FOR KEY SHARE, UPDATE, DELETE, INSERT, MERGE while waiting to acquire the lock.
Statement number 3 for 0 ms
SQL
alter table books add column author_id integer not null

Locks at start

Schema
Object
Mode
Relkind
OID
Safe

public
books
AccessExclusiveLock
Table
16416
❌

New locks taken
No new locks taken by this statement.
Hints
Running more statements after taking AccessExclusiveLock
ID: E4
A transaction that holds an AccessExclusiveLock started a new statement. This blocks all access to the table for the duration of this statement. A safer way is: Run this statement in a new transaction.
The statement is running while holding an AccessExclusiveLock on the Table public.books, blocking all other transactions from accessing it.
Statement number 4 for 1 ms
SQL
alter table books add foreign key (author_id) references authors(id)

Locks at start

Schema
Object
Mode
Relkind
OID
Safe

public
books
AccessExclusiveLock
Table
16416
❌

New locks taken

Schema
Object
Mode
Relkind
OID
Safe

public
books
AccessShareLock
Table
16416
✅

public
books
ShareRowExclusiveLock
Table
16416
❌

public
books_pkey
AccessShareLock
Index
16422
✅

Hints
Validating table with a new constraint
ID: E1
A new constraint was added and it is already VALID. This blocks all table access until all rows are validated. A safer way is: Add the constraint as NOT VALID and validate it with ALTER TABLE ... VALIDATE CONSTRAINT later.
A new constraint books_author_id_fkey of type FOREIGN KEY was added to the table public.books as VALID. Constraints that are NOT VALID can be made VALID by ALTER TABLE public.books VALIDATE CONSTRAINT books_author_id_fkey which takes a lesser lock.
Running more statements after taking AccessExclusiveLock
ID: E4
A transaction that holds an AccessExclusiveLock started a new statement. This blocks all access to the table for the duration of this statement. A safer way is: Run this statement in a new transaction.
The statement is running while holding an AccessExclusiveLock on the Table public.books, blocking all other transactions from accessing it.
Taking dangerous lock without timeout
ID: E9
A lock that would block many common operations was taken without a timeout. This can block all other operations on the table indefinitely if any other transaction holds a conflicting lock while idle in transaction or active. A safer way is: Run SET LOCAL lock_timeout = '2s'; before the statement and retry the migration if necessary.
The statement took ShareRowExclusiveLock on the Table public.books without a timeout. It blocks UPDATE, DELETE, INSERT, MERGE while waiting to acquire the lock.
Statement number 5 for 0 ms
SQL
select * from books

Locks at start

Schema
Object
Mode
Relkind
OID
Safe

public
books
AccessExclusiveLock
Table
16416
❌

public
books
AccessShareLock
Table
16416
✅

public
books
ShareRowExclusiveLock
Table
16416
❌

public
books_pkey
AccessShareLock
Index
16422
✅

New locks taken
No new locks taken by this statement.
Hints
Running more statements after taking AccessExclusiveLock
ID: E4
A transaction that holds an AccessExclusiveLock started a new statement. This blocks all access to the table for the duration of this statement. A safer way is: Run this statement in a new transaction.
The statement is running while holding an AccessExclusiveLock on the Table public.books, blocking all other transactions from accessing it.

Eugene 🔒 trace report of add_authors.sql
This is a human readable lock tracing and migration report generated by eugene to assist you in writing safer database migration scripts.
Here are some tips for reading it:

A lock is called dangerous ❌ if it will cause concurrent queries to wait for the migration to complete
You read that right, once a lock is acquired, it is only released at the end of the script
Eugene will tell you what kinds of queries dangerous locks would block in a summary
Hints can sometimes help you avoid dangerous locks, or hold them for a shorter time
It is hard to avoid dangerous locks, but we should minimize time spent while holding them
Sometimes seemingly fast migration scripts cause long outages because of lock queues, here is an example scenario

There is a summary section for the entire script at the start of the report and then a section for each statement in the script, that goes over the state of the database at the time the script was executed, as well as effects or hints specific to that particular statement
Overall Summary

Started at
Total duration (ms)
Number of dangerous locks

2024-05-10T22:18:26.946574551+00:00
4
2 ❌

All locks found

Schema
Object
Mode
Relkind
OID
Safe
Duration held (ms)

public
books
AccessExclusiveLock
Table
16416
❌
1

public
books
AccessShareLock
Table
16416
✅
1

public
books
ShareRowExclusiveLock
Table
16416
❌
1

public
books_pkey
AccessShareLock
Index
16422
✅
1

Dangerous locks found

AccessExclusiveLock would block the following operations on public.books:

SELECT
FOR UPDATE
FOR NO KEY UPDATE
FOR SHARE
FOR KEY SHARE
UPDATE
DELETE
INSERT
MERGE

ShareRowExclusiveLock would block the following operations on public.books:

UPDATE
DELETE
INSERT
MERGE

Statement number 1 for 3 ms
SQL
create table authors(id serial primary key, name text not null)

Locks at start
No locks held at the start of this statement.
New locks taken
No new locks taken by this statement.
Statement number 2 for 0 ms
SQL
alter table books alter column title set not null

Locks at start
No locks held at the start of this statement.
New locks taken

Schema
Object
Mode
Relkind
OID
Safe

public
books
AccessExclusiveLock
Table
16416
❌

Hints
Validating table with a new NOT NULL column
ID: E2
A column was changed from NULL to NOT NULL. This blocks all table access until all rows are validated. A safer way is: Add a CHECK constraint as NOT VALID, validate it later, then make the column NOT NULL.
The column title in the table public.books was changed to NOT NULL. If there is a CHECK (title IS NOT NULL) constraint on public.books, this is safe. Splitting this kind of change into 3 steps can make it safe:

Add a CHECK (title IS NOT NULL) NOT VALID; constraint on public.books.
Validate the constraint in a later transaction, with ALTER TABLE public.books VALIDATE CONSTRAINT ....
Make the column NOT NULL

Taking dangerous lock without timeout
ID: E9
A lock that would block many common operations was taken without a timeout. This can block all other operations on the table indefinitely if any other transaction holds a conflicting lock while idle in transaction or active. A safer way is: Run SET LOCAL lock_timeout = '2s'; before the statement and retry the migration if necessary.
The statement took AccessExclusiveLock on the Table public.books without a timeout. It blocks SELECT, FOR UPDATE, FOR NO KEY UPDATE, FOR SHARE, FOR KEY SHARE, UPDATE, DELETE, INSERT, MERGE while waiting to acquire the lock.
Statement number 3 for 0 ms
SQL
alter table books add column author_id integer not null

Locks at start

Schema
Object
Mode
Relkind
OID
Safe

public
books
AccessExclusiveLock
Table
16416
❌

New locks taken
No new locks taken by this statement.
Hints
Running more statements after taking AccessExclusiveLock
ID: E4
A transaction that holds an AccessExclusiveLock started a new statement. This blocks all access to the table for the duration of this statement. A safer way is: Run this statement in a new transaction.
The statement is running while holding an AccessExclusiveLock on the Table public.books, blocking all other transactions from accessing it.
Statement number 4 for 1 ms
SQL
alter table books add foreign key (author_id) references authors(id)

Locks at start

Schema
Object
Mode
Relkind
OID
Safe

public
books
AccessExclusiveLock
Table
16416
❌

New locks taken

Schema
Object
Mode
Relkind
OID
Safe

public
books
AccessShareLock
Table
16416
✅

public
books
ShareRowExclusiveLock
Table
16416
❌

public
books_pkey
AccessShareLock
Index
16422
✅

Hints
Validating table with a new constraint
ID: E1
A new constraint was added and it is already VALID. This blocks all table access until all rows are validated. A safer way is: Add the constraint as NOT VALID and validate it with ALTER TABLE ... VALIDATE CONSTRAINT later.
A new constraint books_author_id_fkey of type FOREIGN KEY was added to the table public.books as VALID. Constraints that are NOT VALID can be made VALID by ALTER TABLE public.books VALIDATE CONSTRAINT books_author_id_fkey which takes a lesser lock.
Running more statements after taking AccessExclusiveLock
ID: E4
A transaction that holds an AccessExclusiveLock started a new statement. This blocks all access to the table for the duration of this statement. A safer way is: Run this statement in a new transaction.
The statement is running while holding an AccessExclusiveLock on the Table public.books, blocking all other transactions from accessing it.
Taking dangerous lock without timeout
ID: E9
A lock that would block many common operations was taken without a timeout. This can block all other operations on the table indefinitely if any other transaction holds a conflicting lock while idle in transaction or active. A safer way is: Run SET LOCAL lock_timeout = '2s'; before the statement and retry the migration if necessary.
The statement took ShareRowExclusiveLock on the Table public.books without a timeout. It blocks UPDATE, DELETE, INSERT, MERGE while waiting to acquire the lock.
Statement number 5 for 0 ms
SQL
select * from books

Locks at start

Schema
Object
Mode
Relkind
OID
Safe

public
books
AccessExclusiveLock
Table
16416
❌

public
books
AccessShareLock
Table
16416
✅

public
books
ShareRowExclusiveLock
Table
16416
❌

public
books_pkey
AccessShareLock
Index
16422
✅

New locks taken
No new locks taken by this statement.
Hints
Running more statements after taking AccessExclusiveLock
ID: E4
A transaction that holds an AccessExclusiveLock started a new statement. This blocks all access to the table for the duration of this statement. A safer way is: Run this statement in a new transaction.
The statement is running while holding an AccessExclusiveLock on the Table public.books, blocking all other transactions from accessing it.


Add GPU acceleration option for AMD GPUs

I was excited to see the new update for Vividl includes support for GPU acceleration. Unfortunately, it seems this only works with CUDA, which requires an NVIDIA GPU. There is no acceleration option for AMD GPUs, but FFmpeg has an option for it (-hwaccel amf). I'm hoping this can be implemented and added as an extra option or in a drop-down.
If I ever have the time, I can try experimenting with it myself, and contribute code if I figure something out.

Hey @JosephM101, it's true that the current version only supports hardware acceleration with CUDA. I think it would make sense to include acceleration for AMD GPUs as well, however I'm unable to test this myself as I don't have an AMD GPU. In case you'd like to look into this issue yourself, I'd be glad to accept a PR. The current CUDA acceleration support is done by adding the required FFmpeg options in the download configuration class:
https://github.com/Bluegrams/Vividl/blob/ecd29c632bde587eb217b1e855a87755614a8e53/Vividl/Model/DownloadConfigurations.cs#L24-L31
Adding AMD GPU support should work equivalently.

I went through the FFmpeg documentation and found arguments to enable AMD acceleration, and I played around with them a bit to figure out how to get it to work. I found that calling -hwaccel auto and -vcodec h264_amf yielded speedy results, with my laptop encoding a 1080p H.264 video at up to 3x the speed.
I set an additional parameter (-quality quality) since not passing this resulted in a fairly iffy output. It slowed down the encode a very slight bit, but the output was considerably better compared to not passing it, so I figured it was a worthy change.
Before the change:

After the change:

With the arguments combined, I ended up with a final command that looked similar to the following:
ffmpeg -hwaccel auto -i "video_raw.mp4" -vcodec h264_amf -quality quality "video_amd.mp4"
Here's a code snippet I wrote based on the config code that you provided me and the arguments I found to work the best:
if (Settings.Default.FFmpegAmdAcceleration && download.GetExt() == "mp4")
{
    // Example command that enabled AMD acceleration:
    // ffmpeg -hwaccel auto -i "raw_video.mp4" -vcodec h264_amf -quality quality "amd_video.mp4"

    options = options ?? new OptionSet();
    // Use AMD-based H.264 encoder for MP4
    options.PostprocessorArgs = "ffmpeg:-vcodec h264_amf -quality quality";
    // Add another post-processor option for input file args
    options.AddCustomOption("--postprocessor-args", "ffmpeg_i1:-hwaccel auto");
}

I will do some more testing once I get the time, such as testing the above code snippet. I'm thinking about cloning the source code and making the additions/changes myself to see if the solution works. However, if it's possible for you to provide me with source code containing the necessary baseline changes (adding the settings/GUI options) so that all I have to do is mess with the OptionSet() arguments to see what works best, that would be great in terms of time and hassle on my end, although I completely understand if that kind of request is unreasonable.
I will follow-up with more findings once I get the chance to do some more testing. Thank you for reaching out to me!

I have cloned the branch in GitHub desktop, but upon opening the solution in Visual Studio, the code is riddled with errors saying things can't be found.

I have tried restarting Visual Studio and rebuilding the NuGet package cache, but I think I should try this in a containerized environment.
I'm using Visual Studio 2022 at the moment. I'm hoping you can tell me what version you use, and how you have set up your dev environment, so that I can replicate the environment in a VM.

There appears to be an issue with the code you've provided. I went into Settings to attempt to change the encoder format, and noticed I was getting an error on conversion. The reason is that when changing what encoder is used, the change is not saved. Upon opening Settings, the drop-down selection is empty.
When opening the Settings window, this error appears in the output:
System.Windows.Data Error: 40 : BindingExpression path error: 'HardwareAcceleration' property not found on 'object' ''Settings' ...
EDIT: I fixed the issue. It was just a typo in SettingsWindow.xml.


Fix Maven publication

There was an issue with Maven publication when using Java 17.
I wasn't able to figure out the exact cause, but using Java 11 seems to work fine, so I've updated the project to use that version.
I've also updated the code_quality.yml workflow to add a step to publish to Maven local, so we can always ensure that publication works.
The error that was happening can be seen in the build log of the first commit: https://github.com/SRGSSR/srgdataprovider-android/actions/runs/12274751507/job/34248321537?pr=64

Nice idea for the local publication in code quality.

Nice idea for the local publication in code quality.

I've added it to the list of required checks on PRs in the branch protection rules


Update dependencies

The dependencies listed in devtools.mk are wildly out of date. IPython 0.10 (current supporting 2.7 is 5.4.1), ipdb 0.1 (current is 0.10.
For the general health of a project, we shouldn't depend on >=7 year old versions of packages.

I think it's probably because of all the different (old) platforms we have to support.
Opened https://issues.cloudera.org/browse/HUE-6822 to track it


README.md doesn't help much.

README.md doesn't provide enough context and doesn't support dev processes.
A detailed description of the project, standards and set up should be written and set here.

ok

Fixed by @Sonny97


NetworkManager disabled on eth0. Modify base images to enable it.

There are sporadic CI/CD failures that have been traced to the following root cause:
NetworkManager was disabled on eth0.

Suggested remedy:
1.	Change the file /etc/sysconfig/network-scripts/ifcfg-eth0 and change it to :  NM_CONTROLLED=yes
2.     Recapture the image

Detailed Analysis
Hope you are doing well. Thanks for your time over remote session. That was a pleasant talk with you. Regarding your issue, I have figured out the root cause. Please check it below:

I have checked the VM adminservervm and found out the computer name setting was correct during the deployment.
Invoking action VirtualMachines.ResourceOperation.PUT(subscriptionId=685ba005-af8d-4b04-8f16-a7bf38b2eb5a, resourceGroupName=wls-270132377-281-owls-122130-8u131-ol74, resourceName=adminServerVM, vm={ "location": "eastus", "plan": { "name": "owls-122130-8u131-ol74", "publisher": "oracle", "product": "weblogic-122130-jdk8u131-ol74" }, "properties": { "hardwareProfile": { "vmSize": "Standard_A3" }, "storageProfile": { "imageReference": { "publisher": "oracle", "offer": "weblogic-122130-jdk8u131-ol74", "sku": "owls-122130-8u131-ol74", "version": "latest" }, "osDisk": { "createOption": "FromImage", "managedDisk": { "storageAccountType": "Standard_LRS" } }, "dataDisks": [ { "lun": 0, "createOption": "FromImage", "managedDisk": { "storageAccountType": "Standard_LRS" }, "diskSizeGB": 900 } ] }, "osProfile": { "computerName": "adminServerVM", "adminUsername": "weblogic" }, "networkProfile": {"networkInterfaces":[{"id":"/subscriptions/685ba005-af8d-4b04-8f16-a7bf38b2eb5a/resourceGroups/wls-270132377-281-owls-122130-8u131-ol74/providers/Microsoft.Network/networkInterfaces/adminServerVMNIC"}]}, "diagnosticsProfile": { "bootDiagnostics": { "enabled": true, "storageUri": "https://593261olvm.blob.core.windows.net/" } }, "provisioningState": 0 } })

I checked the system log and found out the file /etc/hostname was modified after the VM restart.

Image attachment 1

From the system log, we could see the hostname was changed by NetworkManager.

Image attachment 2

I have reproduced the issue using the Oracle 7.4 image. That means the issue is from the official image not from your end.
After discussing with Linux SME Frank, we finally found out the root cause is NetworkManager was disabled on eth0.

Action Plan:

Change the file /etc/sysconfig/network-scripts/ifcfg-eth0 and change it to :  NM_CONTROLLED=yes
Re-capture the image.

From @galiacheng 👍
Update for new findings:

The “managedservervm2” that we investigated on was able to access “adminservervm” with hostname “adminservervm” after a restart.
Because after restart,  /etc/resolv.conf in “managedservervm2” was appended with a new search option “internal.cloudapp.net”.

To make “adminservervm.internal.cloudapp.net” visible to managedservervm2 DNS resolver, we can add the search option “internal.cloudapp.net” to /etc/resolv.conf, without a restart.
The DNS resolver will append the suffix to the hostname automatically when managedservervm2 accesses “adminservervm”.

From Microsoft.Network networkInterfaces template reference, we can specify “internalDomainNameSuffix” in the ARM template for internal VMs communication in the same network.
After I specified “internalDomainNameSuffix” with value “internal.cloudapp.net” and deployed the ARM template, /etc/resolv.conf  in VMs were updated with search option “internal.cloudapp.net”.
The adminservervm with hostname “adminservervm.internal.cloudapp.net” is available even connecting with hostname “adminservervm” from other VMs.

As it requires to capture a new images by changing file /etc/sysconfig/network-scripts/ifcfg-eth0, I will specify “internalDomainNameSuffix” from template to solve that error.

Your quick debugging into root cause help me a lot to find out the setting.
Feel free to call me if you need more information.
Thank you again.

Regards,
Galia

Offer ID: weblogic-122130-jdk8u131-ol74
file /etc/sysconfig/network-scripts/ifcfg-eth0 and changed it to :  NM_CONTROLLED=yes
captured new image and published on partner center


fix documentation home page title

[x] Closes #888
[x] I am familiar with the contributing guidelines
[x] Adds description and name entries in the appropriate "what's new" file in docs/sphinx/source/whatsnew for all changes. Includes link to the GitHub Issue with :issue:`num` or this Pull Request with :pull:`num`. Includes contributor name and/or GitHub username (link with :ghuser:`user`).
[ ] Pull request is nearly complete and ready for detailed review.
[x] Maintainer: Appropriate GitHub Labels and Milestone are assigned to the Pull Request and linked Issue.

This PR fixes the homepage title misnaming by ensuring that "pvlib python" is the first section title. I opted for the short title rather than the longer one proposed by @wholmgren since it duplicated what was in the following paragraph.

Here's an example of the new homepage title from this PR next to the old one.

thanks @CameronTStark!


added content for the enterprise features page moved the monitoring.

this change does not require a changelog entry imo


feat(helpers): update get_client_str to accept request object

Relating to this feature request: https://github.com/jazzband/django-axes/issues/782

Fixes #782
@sarahboyce this was released as part of 5.23.0.


DPP in Pytorch

Hi, I think your method in your paper really gets excellent results, so I try to use it in my research. But I am not familiar with torch. And finally I want to try to use it in pytorch. The problem is that I don't know how to use it in a network. Could you explain for us?

Have you known how to use it in a network?


InMemoryResourceMatcher AND resource search parameters are evaluated as OR parameters

Describe the bug
The InMemoryResourceMatcher contains a bug where AND search parameters are evaluated and matched as OR parameters.
This causes issues where for example GET /fhir/DocumentReference?indexed=ge2018-01-01&indexed=le2019-01-01 would return DocumentReferences with an indexed data of 2020-01-01. This of course only happens when search parameter matching is done using the InMemoryResourceMatcher in the resource provider.
To Reproduce
Steps to reproduce the behavior:
For example:

Implement a DocumentReference resource provider which searches for DocumentReferences using the InMemoryResourceMatcher.  Support "indexed" as a search parameter.
Take for example the following DocumentReference as its only source resource to match incoming requests on:

{
  "resourceType": "DocumentReference",
  "status": "current",
  "type": {
    "coding": [
      {
        "system": "http://loinc.org/",
        "code": "68688-1",
        "display": "Neurological surgery Discharge summary"
      }
    ]
  },
  "indexed": "2020-01-01T00:00:00+01:00",
  "content": [
    {
      "attachment": {
        "contentType": "application/pdf",
        "language": "en",
        "url": "Binary/1234"
      }
    }
  ]
}

If you now perform the request GET /fhir/DocumentReference?indexed=ge2018-01-01&indexed=le2019-01-01 it should return an empty Bundle, but it matches the above DocumentReference.

Expected behavior
It should not match the above DocumentReference
Environment (please complete the following information):

HAPI FHIR Version: Tested in 5.1, but should happen in 5.2 as well

Additional context
I've implemented a fix for this issue in #2365. I think it's good to implement some tests before we merge that one, so that we can be sure this issue actually exists and if it's indeed fixed by that PR.

I've written a test and included it in PR #2367. This test will fail until #2365 is merged. It's also included in the branch of #2365, where it succeeds.

Fix has been merged


[HIGH] Uncaught Exception in yaml

Github reported a new dependabot security alert at: https://github.com/cdk8s-team/cdk8s-core/security/dependabot/7

Duplicated due to workflow error. Tracking here: https://github.com/cdk8s-team/cdk8s-core/issues/1190


Combining tree and text (as table)?

Hello,
I am trying to replicate the visualization here, where a table is displayed right next to a tree.
https://observablehq.com/@d3/indented-tree
Is this out of scope for your library? The key code from that script is:
  for (const {label, value, format, x} of columns) {
    svg.append("text")
        .attr("dy", "0.32em")
        .attr("y", -nodeSize)
        .attr("x", x)
        .attr("text-anchor", "end")
        .attr("font-weight", "bold")
        .text(label);

    node.append("text")
        .attr("dy", "0.32em")
        .attr("x", x)
        .attr("text-anchor", "end")
        .attr("fill", d => d.children ? null : "#555")
      .data(root.copy().sum(value).descendants())
        .text(d => format(d.value, d));
  }

I've tried replicating this with Plot.text but it appears combining these marks disrupts how inset handles the Plot.tree. Here is the code for the tree alone.
indent = js("""
() => {
  return (root) => {
    root.eachBefore((node, i) => {
      node.x = i;
      node.y = node.depth;
    });
  };
}
""")

Plot.plot({
    'axis': None,
    'inset': 10,
    'insetRight': 800,
    'round': True,
    'width': 1000,
    'height': 6000,
    'marks': [
        Plot.tree(path_utility, {
            'path': 'Path',
            'strokeWidth': 1,
            'curve': "step-before",
            'treeLayout': indent,
            'treeSort': "node:height",
            'delimiter': '^',
        }),
    ]
})

I don't actually need all the dynamic logic for calculating sizes. I can precompute all the numbers. Just want to align the table with the tree.
Thanks again!

Hi,
I think your issue is not related to pyobsplot. You're trying to reproduce using Plot something which has been created with pure d3. I think you would have better odds to get help on this if you ask you question to the Plot or d3 communities...

Okay, thank you. I'll go ahead and close this.


exp/services/recoverysigner: add use of unique signing keys per registered account

What
Add use of unique signing keys that are randomly generated for each account at registration, storing the signing secret key in Postgres, and using AWS KMS to encrypt the signing secret key.
Why
The application uses a single signing key for all accounts that are registered. The issue with this is that anyone who knows that single signer can determine what accounts are registered with a recoversigner server. This public association may be undesirable for a user using a recoverysigner.

Recommend not starting this until #2339 is closed.

#2627 is going to create code conflicts I'm sure for this, so it'd be good for it to be merged when this work is started.

I believe this one is specifically about updating the endpoints to be using the encrypter and decrypter?

This is the parent issue for the entire unique signing keys work.

@shanzzam We need to discuss the priorities around this change.

@shanzzam We need to discuss the priorities around this change.

Closing all recoverysigner issues


Need IPV4 example

Great article, would be good to have the T-SQL example use IPV4 addresses that are easier to understand.

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

ID: b679be86-06b0-b425-cd4f-d7b3ea104693
Version Independent ID: aec2cf5b-5bf9-647e-6b0f-9fab6fca3a79
Content: Configure availability group listener - SQL Server Always On
Content Source: docs/database-engine/availability-groups/windows/create-or-configure-an-availability-group-listener-sql-server.md
Product: sql
Technology: high-availability
GitHub Login: @cawrites
Microsoft Alias: chadam

@kbuck-fortifieddata -- thank you for your kind words and your suggestion.
@cawrites -- please look into this issue.

@kbuck-fortifieddata thank you for contacting Microsoft regarding your suggestion. I have reviewed the sections referencing IPV4. The syntax using for each of the statements:  command adds a static IPv4 address to the availability group listener, the IPv4 address passed to the -StaticIp parameter as its virtual IP address, Add-SqlAGListenerstaticIp command adds a static IPv4 address are needed for each of the functions described as suggested.
Can you advise if these are the sections you are referring to? Or a specific section.

No, the section you are referring to is PowerShell.
I was referring to the section “Using Transact-SQL” and the example that is part of that section.
<EMAIL_ADDRESS>Keith Buck
Senior Consultant
Fortified Data
KBUCK<EMAIL_ADDRESS>After Hours and Emergency Production Support
1.844.282.DATA(3282)
From: cawrites<EMAIL_ADDRESS>Sent: Friday, December 11, 2020 1:20 AM
To: MicrosoftDocs/sql-docs<EMAIL_ADDRESS>Cc: Keith Buck<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/sql-docs] Need IPV4 example (#5794)
CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
@kbuck-fortifieddatahttps://github.com/kbuck-fortifieddata thank you for contacting Microsoft regarding your suggestion. I have reviewed the sections referencing IPV4. The syntax using for each of the statements: command adds a static IPv4 address to the availability group listener, the IPv4 address passed to the -StaticIp parameter as its virtual IP address, Add-SqlAGListenerstaticIp command adds a static IPv4 address are needed for each of the functions described as suggested.
Can you advise if these are the sections you are referring to? Or a specific section.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/sql-docs/issues/5794#issuecomment-743022871, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AHZTOGF3EZXS7ZPM6RKABJDSUHB2XANCNFSM4UVPFMJA.

@kbuck-fortifieddata  I am reviewing the IPV4 Line by line with the existing description:
Description:
The following example adds an availability group listener to an existing availability group named MyAg2.
Syntax
ALTER AVAILABILITY GROUP MyAg2
Description A unique DNS name, MyAg2ListenerIvP6, is specified for this listener.
Syntax
ADD LISTENER 'MyAg2ListenerIvP6'
Description
For each of the two availability replicas, the WITH IP clause specifies a static IP address, 2001:4898:f0:f00f::cf3c and 2001:4898:e0:f213::4ce2,
Syntax
( WITH IP ( ('2001:db88:f0:f00f::cf3c'),('2001:4898:e0:f213::4ce2') ) , PORT = 60173 );
Description
This example also specifies uses the optional PORT argument to specify port 60173 as the listener port.
Syntax
PORT = 60173 );
It is noted in the description that it is using the IPv6 format
I understand your need for clarification. It appears that the syntax is showing examples of both IPv4 and IPv6. However, in each example, it identifies which address version it is using. By showing both it gives the user examples for both. Individuals could determine on their own to use IPV4 throughout the set up.

@kbuck-fortifieddata  I am reviewing the IPV4 Line by line with the existing description:
Description:
The following example adds an availability group listener to an existing availability group named MyAg2.
Syntax
ALTER AVAILABILITY GROUP MyAg2
Description A unique DNS name, MyAg2ListenerIvP6, is specified for this listener.
Syntax
ADD LISTENER 'MyAg2ListenerIvP6'
Description
For each of the two availability replicas, the WITH IP clause specifies a static IP address, 2001:4898:f0:f00f::cf3c and 2001:4898:e0:f213::4ce2,
Syntax
( WITH IP ( ('2001:db88:f0:f00f::cf3c'),('2001:4898:e0:f213::4ce2') ) , PORT = 60173 );
Description
This example also specifies uses the optional PORT argument to specify port 60173 as the listener port.
Syntax
PORT = 60173 );
It is noted in the description that it is using the IPv6 format
I understand your need for clarification. It appears that the syntax is showing examples of both IPv4 and IPv6. However, in each example, it identifies which address version it is using. By showing both it gives the user examples for both. Individuals could determine on their own to use IPV4 throughout the set up.

@kbuck-fortifieddata we appreciate your suggestions regarding our content and we certainly consider them as we continue to update our content. Thank you for contacting Microsoft.

@kbuck-fortifieddata we appreciate your suggestions regarding our content and we certainly consider them as we continue to update our content. Thank you for contacting Microsoft.

#please-close

#please-close


Missing setup.py

When I do same thing https://github.com/garrettfoster13/sccmhunter/pull/74, it does not work. See https://github.com/xnotsure28x/aced/tree/aced-setup-files
Please add setup.py.

Hi @xnotsure28x I'm not really maintaining this project.

@purpole any help to get this to work for package for nixpkgs?

@purpole any help to get this to work for package for nixpkgs?

Hey!
I did the same that I did for sccmhunter and for me it worked with this package.nix:
{
  lib,
  fetchFromGitHub,
  python3Packages,
}:
python3Packages.buildPythonApplication {
  pname = "aced";
  version = "0-unstable-2024-11-08";
  pyproject = true;

  src = fetchFromGitHub {
    owner = "purpole";
    repo = "aced";
    rev = "7b9a303add3497935b166b39df63dda11c92d1b5";
    hash = "sha256-C6C/flKjxZQB5qEVG7HqJKfLuUiY+iUwd6hTESjRGlA=";
  };

  build-system = with python3Packages; [
    setuptools
  ];

  dependencies = with python3Packages; [
    impacket
    ldap3
    pyasn1
  ];

  meta = {
    description = "Tool to parse and resolve a single targeted Active Directory principal's DACL";
    homepage = "https://github.com/garrettfoster13/aced";
    license = lib.licenses.mit;
    mainProgram = "aced.py";
    maintainers = with lib.maintainers; [ YOURNAMEHERE ];
  };
}

I could be wrong tho, didn't really test anything, just --help:
[david@nixos:~/aced-nix]$ nix shell

[david@nixos:~/aced-nix]$ aced.py --help

          _____
         |A .  | _____
         | /.\ ||A ^  | _____
         |(_._)|| / \ ||A _  | _____
         |  |  || \ / || ( ) ||A_ _ |
         |____V||  .  ||(_'_)||( v )|
                |____V||  |  || \ / |
                       |____V||  .  |
                              |____V|
                                     v1.0

        Parse and log a target principal's DACL.
                                    @garrfoster

usage: aced.py [-h] [-ldaps] [-dc-ip DC_IP] [-k] [-no-pass] [-hashes LMHASH:NTHASH] [-aes hex key] [-debug] [-no-smb] target

Tool to enumerate a single target's DACL in Active Directory

options:
  -h, --help            show this help message and exit

Authentication:
  target                [[domain/username[:password]@]<address>
  -ldaps                Use LDAPS isntead of LDAP

Optional Flags:
  -dc-ip DC_IP          IP address or FQDN of domain controller
  -k, --kerberos        Use Kerberos authentication. Grabs credentials from ccache file (KRB5CCNAME) based on target parameters. If valid credentials cannot be found, it will use the ones specified in the command line
  -no-pass              don't ask for password (useful for -k)
  -hashes LMHASH:NTHASH
                        LM and NT hashes, format is LMHASH:NTHASH
  -aes hex key          AES key to use for Kerberos Authentication (128 or 256 bits)
  -debug                Enable verbose logging.
  -no-smb               Do not resolve DC hostname through SMB. Requires a FQDN with -dc-ip.


Support array of webpack configs in next.config.js

Issues like #774 & #972 are fine as long as the new entry-point can have vendors & commons.js extracted the same as main.js.
Resolving this requires exporting a different webpack config, but the signature requires return config;, as return [config, otherEntryConfig]; fails.
If an array of configs were supported by default, having separate build targets (e.g. #1245) & entry-points could be possible.

@ericclemmons Yep. That should be possible.
But it might cause a duplication of modules in two bundles.

@arunoda That's correct and to be expected by multiple configs (potentially) referencing shared modules.
What next does today by remove duplicates between pages is smart, but isn't necessarily applicable to all scenarios (server, or providing <script> tags to 3rd parties).

My current project would greatly benefit from this. I am happy to contribute if given a direction.

Having multiple build targets manually by manipulating webpack is not something we want to expose to users. We do want to expose build targets however. This will be added in the near future.
This is a rather old issue, but since Next.js 5.0 we run webpack on both server and client code, solving most issues related to universal compilation.


faust1: drop

Description of changes
Upstream does not seem to have released a 0.9.x/1.x version since 2016 while faust 2.x is actively maintained.
No package depend on it anymore.

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Thanks for the ping. PR has been rebased.

What do you think @AndersonTorres ?

At Fridays I don't think too much.
Let's drop!


Looking for new contributors

I guess I have not been using SQL databases for the last 2 years, which means no Sqlectron as well. I tried to maintain this project as much as I could but I have lost the interest spending my personal time on something I don’t use anymore. That is why I'm formally pausing my work on its maintenance 😢
If you use it and you are interested in keeping this project alive. Please, contact me over here and I will make sure to help you out with anything you need for a smooth maintainer transition.
Overall, thanks to all users and contributors ❤

Thanks for your work, I have found this tool very useful! :)

Beautiful program, bummed to hear you are dropping it.

Thank you very much for all your work on this. On Linux, Sqlectron is invaluable!

@maxcnunes I use it! Interested in becoming maintainer.

Thank you for developing a Wonderful Application. We will wait until someone will volunteer to improve the development of SQLElectron.

The best one on linux for mysql, mysql workbench is awful

I just came across this project a couple of weeks ago and I love it.  Not sure I have the time to take point, but I'd be happy to help maintain it.

I hope, people will fork it and develop on it,
(I did one just now)

I guess all we need to do is submit PRs back to @maxcnunes ? I'm keen, Ive already found a bug that I just need to fix asap :D

thank you maxcnunes ,i'm working to improve it so if i'd ask for something , i hope you 'll help me.

Max, thanks again for all the help and advices you gave to us, contributors. I completely understand you've lost interest maintaining something that you don't use. I can relate to that 😅
I'd just like to point out to future maintainer, that UI code may use some good refactoring. Max is world class engineer, but I think lot of contributions to GUI repo were from people (including myself) that were getting started with React couple of years ago. I think the same was with Max, it was learn-new-technology-make-something-useful kind of project, if I'm not wrong :) Backend part should be good, Max got that covered well.
All in all, what was supposed to be learn&fun project turned into something really useful and that's true beauty of open source. I know people will mostly see the value in the app they use (Sqlectron), but there's additional value to that. Max helped me, and many others, to get started with Open Source, and technologies there were new to us. Speaking on my behalf, he was very patient teacher and OSS maintainer. I've never felt a bit of annoyance in his replies, no matter how dull my question was. That guy is true Open Source Hero if you ask me. @Github you hear me? :D
Ps. For future maintainer(s): Maybe you could use Open Collective platform for covering part of your expenses?

I would love to be a part of Sqlectron's future, but would definitely want to be working with a few others.
I came to Sqlectron just today while looking for a good relational database GUI that isn't absolute trash on Linux. Not only is it good, it's really good. I don't have time to be the sole maintainer of it, but if there are at least a couple others that would like to spend some time making this project even more awesome I would love to be a part of it.

Since this is not maintained anymore, I'd like to recommend dbeaver as an alternative.
It's not as pleasing to the eye but it's very featureful and well used.

i fork it,and change a lot on it.https://github.com/mahongquan/sqlectron-gui

Since several people have expressed interest, this shouldn't really be a problem. @mahongquan did you try to contanct @maxcnunes as he said in the issue? Or @sscholle ?

just fork it @fuzzy76 - maybe link your fork in this issue - and update your README to the changes you make

I was contacted by mahongquan weeks ago. But I didn't agree with the way the changes were driven on his fork (mostly commit messages and the way changes were done). I spent a long time building this app and I hope to pass the ownership to someone who shares few common guides:

keep the commit history clean, so it makes easier for contributors to maintain the project (a great article about that: https://chris.beams.io/posts/git-commit/)
keep the master branch clean, do not commit debugging stuff that should live a separated development branch

I don't want to be picky. I'm just thinking about the future of the project to keep it easy for other contributors to join and understand the project history and codebase.

@maxcnunes Have you found a new maintainer?
SQLECTRON is a very useful tool on Linux and seems to have quite the following. It would be a shame to see it fall in to decline. If you are yet to find some I would be interested in discussing it.

@dsofeir I'm still waiting for someone to take it over :) If you prefer to discuss it in private just DM me on Twitter @maxcnunes.

@mahongquan looks like https://github.com/mahongquan/sqlectron-gui looks quite active.

Activity trumps purity I guess

@fuzzy76 If no one takes over, one of the active forks will possibly become the new thing. I'm definitely not saying "busy" is good.

@scottjbarr Just see the commit messages and the content of those and message by @maxcnunes above and you'll understand. Standards in open source projects are very important and commits should be meaningful atomic unit of code change which have 1:1 correspondence with a feature or bugfix

I am a current student at Woz U and just finished a course in ReactJS. I see that your project relies on React (at least partially). While I am in the 24-Week bootcamp program, I might not be able to contribute much, but I do like the interface of your application, and as time might allow in the near future, I would be happy to contribute and interested in doing so.
My focus has been and remains Full Stack Web Development/Design, and a tool such as sqlectron might be very useful and expedient for that work.
Thank you for your development work on this project thus far, and I wish you the best in all your future and current development work.

So... @barneydmedia just did a new release of SQLElectron: https://github.com/sqlectron/sqlectron-gui/releases :tada: - so is this issue closed, then?

There is a new build out, and I plan on taking a look at some of the other issues. I would like to see the project continue, personally.

@maxcnunes @barneydmedia I started using sqlectron has an alternative to MySQL Workbench and the lack of a comparable Atom package. Specifically there is no Atom package which offers SSH tunneling to a MySQL host.
Since this discussion is about the continuation/future of the project. Do you think packaging sqlectron as an Atom package would be a good future direction? This would expand the potential user-base and potentially attract new contributors.

I think it would be cool, and I think it would be a good thing. I also think it would be a lot of work and could potentially split the codebase in consequential ways.
I'm not able to do it, but I also wouldn't be against someone else making an effort on a separate fork to later add/merge. I would also love to see more users and contributors here.

Hey @barneydmedia, or anyone who comes after you, feel free to close this issue and remove the unmaintained labels from the project if you think you are ready to take over the project. 🙏 🎉
For others interested in taking over, I just answered an email to @dsofeir with details of how to do it, and it is the same for anyone else:

I'm looking for people who can improve this project or at least keep the existing quality. In my opinion, the best way to analyze it is through a PR so I can check those details. For example, @barneydmedia sent a PR https://github.com/sqlectron/sqlectron-gui/pull/436 and I added him as a contributor. Then he merged and released a new version himself.

@barneydmedia are you the new maintainer on this project? If so, could we close this issue?

Thanks for building this. I was planning to add support for noSQL databases(mongo).

Hey guys, looks like the project has sort of slipped back into non-maintenance since @barneydmedia took over last year.
I'm interested in taking over the project, website, et al. I have a junior dev who is willing to help with the maintenance work, so that's the start of a small team!
We'll start submitting some PRs and see how that goes.

@rathboma feel free to ping me on issues if you'd like - I can try to offer some support

Thanks! My biggest concern with a take-over is that there are a lot of outdated dependencies that need upgrading. We'll start small :-)

One question -- when debugging it only shows me stack traces within bundle.js, the webpacker dev config seems to be correct. Have any of the prior maintainers figured this out?

my fork has upgrade to newest depends

@mahongquan nice! Have you thought about submitting a PR?

@rathboma I’m a bit confused here. Are you now the maintainer? If so, that’s good news!

Not yet! But I'm hoping to slowly ramp up my involvement in the project and get my junior dev on board to help too.

@rathboma, I'll be happy to assist and maintain this project (did some small contribution in the past...) please contact me so we can coordinate.

so is the project able to be maintenaid by @rathboma ? i think i may be submitting a PR to add shortCut to the connected interface (to ease the keyboard navigation inside the gui interface)

one year passed, so its maintaining yes ?

Hey! I'm on the maintainer list now. I'm just wrapping up some project work and will be able to take more of a look at the project at the end of the month and actively start moderating and contributing. Stay tuned! My first task will be bringing dependencies up to date and fixing any critical bugs.

thx @rathboma it's going to be great to have someone active in the project! I'd love to help as much as I can but it's not a software that I'm using nowadays (I'm using relational db 😞) but I can for sure help in code review looking for to see yours PR'S @rathboma 💪  👏

@mahongquan why haven't you submitted a pull request yet?

@rathboma please ping me or whatever on certain issues - I can see what I can do

Honestly folks I thought my work would be letting up, but it's not really, so I'm not sure how much time I'm going to actually have to work on the project :-(

@rathboma Since you don't have time a Discord server is a good idea to let anyone collaborate to bring this project back.

@rathboma Since you don't have time a Discord server is a good idea to let anyone collaborate to bring this project back.

cc @maxcnunes @BornaP @barneydmedia @krolow @rathboma

Not sure if a Discord server would make much difference. There is already a Slack team but there have not been any interactions there since I announced I was stopping my contribution to the project. Anyway, the team still available if anyone wants to use it - https://sqlectron.herokuapp.com/

Don't know which version is currently latest / the go to, but I am also interested to do some UX stuff if need be. Current (official) version I use, on Linux, lacks some basic features like 'in place editing'.
If Discord server is running, please send me an invite :D

This project looks cool. Anyone who has the most recently maintained fork, please let us know.
It's kind of crazy how bad pretty much all other SQL clients are, UX/UI wise.

Hope this project gets revived. But in the meantime, for those looking for a linux alternative - Tableplus just released an alpha version.
https://tableplus.com/linux

@maniadevice I believe advertising a product which is NOT open-source in this context is inappropriate and you should remove or clarify your comment.

Sure, I can clarify.
I am not advertising this product. I am not associated with them in any way, nor am I getting any benefit out of it.
Yes, it's not an open source product. I am a Linux user and a lot of people here have mentioned how helpful sqlectron was to them. I have only tried to help them by suggesting a (currently) free product, that they could use - maybe until sqlectron is back to being actively maintained.
I'll be glad to remove the comment if one of the members are also offended it. No problem at all.

Thank you @maniadevice for the clarification. I only objected because your initial comment had the appearance of an advertisement for a commercial product.

I can be a part time mantainer

Hey everyone.
I wanted to write you all with an apology and a reason for why I haven't contributed much to this GUI.
Back in 2019 when I tried to get involved in Sqlectron I totally underestimated the learning curve of Electron, Electron Builder, and React. Honestly I was totally unable to solve even simple problems.
I started playing with the SQLectron core libraries in a new Vue electron project to sort of figure out how everything should fit together.
In the end, the out of date dependencies and React-based UI was too much for me. So in collaboration with a friend I decided to build a fresh UI on top of the Sqlectron core libraries. I released the app a couple of weeks ago - beekeeperstudio.io.
If you look at the Github the commit history the code is a fork of sqlectron-core. So in a very real way it is a continuation of Sqlectron.
I'm sure many of you might be disappointed by my actions. I understand that. Thanks for being a welcoming community either way. I plan on continuing maintenance of Beekeeper Studio and hope some of you might become part of the project.
Thanks again.
Matthew

I chatted with @maxcnunes and will be taking over maintence of sqlectron project. A new release should be forthcoming later on this week which will have a number of fixes and features. Will leave this open for now, in case some other people are inspired to contribute.

Downloading now - let's see what gives! Been looking for a SequelPro alternative ever since coming over to Ubuntu.

@MasterOdin Still looking for more contributors? I use this tool daily on my linux and mac machines and I'd love to contribute some code to the project.

More the merrier, feel free on making PRs and such. I'm looking to release 1.31.0 in a day or so as it's got a nice bit of improvements here:
1.31.0 changelog

Add option to list connections instead of rendering cards (#425) - by @barneydmedia
Allow custom UI fonts (#330) - by @barneydmedia
Single clicking table name runs a default query - by @barneydmedia
Fix NaN error on zoomFactor label on first startup (#457) - by @barneydmedia
Fix query results error if no custom font is set (#470) - by @rathboma
Move from Travis / appveyor to GH actions for CI (#492) - by @MasterOdin
Update node-sass to 4.14.0 (#486) - by @MasterOdin
Update axios to 0.19.2 (#489) - by @MasterOdin
Update electron-builder to 21.2.0 (#491) - by @MasterOdin
Add MariaDB to server type dropdown (functionally equivalent to selecting MySQL) - by @MasterOdin
Update sqlectron-core to 8.1.1 (#484) - by @MasterOdin

Add cassandra authentication support
Support MySQL caching_sha2_password authentication (default for MySQL 8)
Add official support for MySQL 8
Add official support for PostgreSQL 12
Add official support for cassandra 2.x and 3.10+
Add official support for MariaDB 10.1+
Fix regression on querying information_schema tables on MySQL 8
Fix not being able to specify socket without a port - by @rathboma
Use ordinal_position to order column listing for all postgres, mysql, and sqlserver
Fix truncateAllTables for sqlserver not working with foreign key constraints
Fix sqlserver breaking if using CS collation

I've started triaging issues for a 1.32.0 release, but the focus for me is principally on upgrading electron to the newest version and adding official support for CockroachDB. The following release I plan to begin work on upgrading react to a newer version.

@MasterOdin Anything I could do to get 1.31.0 released?

Ah, never mind, it's already released.

Yup, and progress is steadily being made to a quicker 1.32.0 follow-up. While I was somewhat planning on trying to add more official cockroach and redshift support in this version, I think I might hold off and get 1.32.0 out quicker to hopefully resolve the usage problems people were seeing with dependencies and such.


about validation on nuscenes

Hi, benemer!
I would like to know how to use the nuscenes dataset for validation because I'm not familiar with it. How should I set up the "sequence" parameter?
https://github.com/PRBonn/MapMOS/blob/56b2cc857d909f97f1a7fd7b582c3817512e1eb1/src/mapmos/datasets/nuscenes.py#L33-L34
Looking forward to your response :)

The sequence parameter refers to the sequence ID in nuscenes. You can find the IDs for the validation set here or just get it via Python:
from nuscenes.utils.splits import val
sequences = [v.split("-")[1] for v in val]

Note that you have to modify these lines in the Nuscenes dataloader to load the correct database. Note that loading the "v1.0-trainval" data takes some time, especially if you want to run it for each sequence of the validation set. To mitigate this, you can load the dataset when importing the dataloader:
[..]
import nuscenes
from nuscenes.nuscenes import NuScenes

__nusc_dataroot__ = "/path/to/nuScenes"
__nusc_version__: str = "v1.0-trainval"
 __nusc__ = NuScenes(dataroot=__nusc_dataroot__, version=__nusc_version__)

class MOSNuscenesDataset(NuScenesDataset):
[...]

And then you set self.nusc = __nusc__ in the __init__.

Many thanks!! You really help me a lot!


Add character statuses

We should setup a list of status that a character can have.

Create a list of status
Enter status into database
Create sql files to automatically input the values

Blocked by #11


Sentinel 2 input spec and retrieval

General specifications for v0
Initially, we've landed on selecting the 10-20 meter bands from Sentinel 2, plus the SLC band for tile-level cloud cover thresholding.
The bands to be included:

B2 (490 nm), 10 meter
B3 (560 nm), 10 meter
B4 (665 nm), 10 meter
B8 (842 nm), 10 meter
B5 (705 nm), 20 meter
B6 (740 nm), 20 meter
B7 (783 nm), 20 meter
B8a (865 nm), 20 meter
B11 (1610 nm), 20 meter
B12 (2190 nm), 20 meter
SLC (not for training)

We will use the L2A data product right now, but note that we discussed internally it may be worthwhile to explore a more applicable atmospheric correction method for water-related downstream tasks in future versions of the model.
Retrieval
We will build on what @yellowcap started in https://github.com/Clay-foundation/model/pull/11, adjusting per the aforementioned specs.

Closing as implemented in #27, feel free to comment further or reopen if we want to modify the specification further.


[RFR] fix auth client logout action issue

If we remove the permissions first, then we might have an "unauthorized" response from the server on the DELETE.


Describe oneshot return values in the right order.

Correctly describe the first element of the tuple returned as the
Complete, and the second as the Oneshot. Spell out that the value is
passed to the Complete, and then the Oneshot resolves to it.

Thanks!


Pin io_driver targets to cores and docker cleanup wrapper for cargo-test

I've packed two changes into one PR as they are quite small a loosely related:

pins io_driver test target containers to improve likelihood of succeeding as suggested by @gila
traps signals in the wrapper cargo-test.sh to allow for clean up. This is related to CAS-524, if we want to make it nice and driven by tests themselves.

~Cleanup is currently a bit brutal as it goes after all containers.~ I've done that as the other alternative would be listing names which is not very future-proof. Also our CI/CD runs on dedicated machines. Possible changes:

explicitly list names used throughout the tests
prefix all names in tests with a selector (e.g. mayadata-) and filter for it in the loop at handler
prefix all names in tests with a selector passed as an environment variable to allow non conflicting names for parallel test runs + being able to select out containers related to this run in the handler.
based on @tiagolobocastro 's suggestion, to use labels and mark our resources. Name of the label is io.mayastor.test.name and it holds value of the test which created the resource. This still means, that we can run only one mayastor on the machine, but will not kill other containers / networks.

code LGTM, not 100% sure about the blast radius of docker kill/rm on our jenkins. Please allow for another reviewer to give it a tick.

bors merge

borse merge

bors merge

bors merge

bors merge

bors merge


chore(package): update mocha to version 4.0.1

Codecov Report

Merging #191 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #191   +/-   ##
=======================================
  Coverage   98.14%   98.14%
=======================================
  Files           1        1
  Lines         108      108
=======================================
  Hits          106      106
  Misses          2        2

Continue to review full report at Codecov.

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


Fix request timeout handling

With this commit we address several issues in request timeout handling:

We ensure that the end of the request is properly measured
We set an explicit request timeout on the connection to avoid that
the default connection timeout is picked.
We use the proper method parameter timeout when falling back to the
raw transport API instead of setting the ineffective parameter
request_timeout.

Thanks for the review :)


[Add] Hugging Face

Site URL
https://huggingface.co/models
Description of the above provided site
It's an Ai community platform where the machine learning community collaborates on models, datasets, and applications.
Kindly assign me this issue under Hacktoberfest'23
Category
Artificial Intelligence
Sub Category
Artificial Intelligence
Checklist

[X] I have checked the existing issues
[X] I have read the Contributing Guidelines
[X] I am willing to work on this issue (optional)
[X] I am participating in Hacktoberfest 2023

@singodiyashubham87
I have assigned you the issue. Please proceed with it, and don't hesitate to tag me @Anmol-Baranwal or @CBID2 if you require any assistance.


[Bug report]:

Platform
Desktop
Version
shimmer 2.1.5
Description
I am attempting to stake my SOON tokens, however, everytime I do so the storage deposit is in my firefly shimmer is set to 49000 glow, and when I click the button to send the storage deposit as gift the amount changes to 53400, but when I attempt to send I get an error message stating the storage deposit is too low at 49000 and I need to send 53400 glow.
I have attempted to uninstall and reinstall the app and made sure my ledger and macbook pro is up to date software but this does not change the error within firefly.
Error message is shown in photo.
Expected behaviour
I expected the storage deposit to be sent and not have the glow change on its own when I click the button next to storage deposit in the firefly shimmer.
Actual behaviour
Error message below pops up and states I am sended a lower storage deposit amount.
Can the issue reliably be reproduced?
Yes
Steps to reproduce the issue
No response
Operating System
Mac
Diagnostics
No response
Developer Profile
Yes
Profile Type
Hardware (Ledger)
Staking
Previously staked
Crash Status
None of the above
Error Messages

Error Logs
No response
Duplicate declaration

[X] I have searched the issues tracker this issue and there is none

Code of Conduct

[X] I agree to follow this project's Code of Conduct

We are working on a fix, seems like indeed we have an issue around gifting the storage deposit for native tokens and nfts, tracked in https://github.com/iotaledger/firefly/issues/7327
A small note: when you gift the storage deposit is normal that the value decreseases because the transaction has one less unlock condition, the storage deposit value change works as expected

Fixed by https://github.com/iotaledger/firefly/pull/7331

I tried staking my soon again and I am still experiencing the same issue.

The fix is merged in the repository but is not yet included in a new production release, it wil be included in the next one which we are preparing to release soon


Migration from CF Releases to CF Deployments

Currently, we are using CF release version 283 and TCP Routing release version 163, with current configuration can we migrate to CF deployments.
If yes, then what are the prerequisites needed to migrate to cf-deployments.?
If not, then what is the compatible version for CF release version with TCP Routing release version to migrate to CF deployments.

Hey @lordcf - Please take a look at the cf-deployment-transition. It should help you migrate from cf-release to cf-deployment.
If you have further questions, please feel free to reach out to the cf-deployment channel in CloudFoundry slack.
Thanks for reaching out!
Josh

This repository is no longer supported. Closing issue.


fix(onboarding): rename retentionPeriodHrs in onboarding for clarity

Closes #20452
This API is used by Quartz (not the influx CLI) on the Cloud side of things, so we should be able to merge this independently.

Closing this for now, needs more thought


pam.d: Uniformly enforce pam_nologin

Without this change, user sessions may be started anyhow (eg. by systemd).
This was mildly annoying while deploying the fixes for #167

Only deployed on to1 so far due to (known) etckeeper issues.


Improvements to shutdown logic

@Gezzellig these are some changes to handle the shutdown logic.
This PR merges into your original PR. Feel free to review it and do with the changes whatever you want.
Differences:

Use AtomicBool for the global flag. This means the flag does not need to be static mut for which all access is unsafe, so a lot of the unsafe code can now be turned into safe code 😊 .
Turns out Rust happily casts a function pointer in an option to a nullable C-style function pointer, simplifying the callback registration code.
Moved some of the logic into dedicated small functions so any calls into (unsafe) C libraries are wrapped inside documented Rust functions.

Way cleaner thanks a lot! Still have to learn how to do proper idiomatic Rust.
It did introduce one minor bug, because the render falls out of scope before proper shutdown is initiated it gives this error:

Will fix this in the main feature branch


Support to use plasma-sql-ds-cache on AWS EMR-6.3.0

For OAP-1.2, we target to support all features on cloud. We choose emr-6.3.0 and the versions of software are showed below:

We try to run TPC-DS power test with 1GB data scale and meet the issue like:

If we use spark-sql_2.12-3.1.1.jar instead of spark-sql_2.12-3.1.1-amzn-0.jar all work well.

@winningsix @zhixingheyi-tian Please help to track the issue. Thanks!


Revert "aarch64: Use latest released rhel9 kernel"

This reverts commit 19372d4e919d713bbd735aec807042c9704a9e97.
OCP-4.13 will have RHEL-9.2 content by default so we don't need to update the kernel for aarch64.

/hold
until we create and  test arm bundle using this PR.

/close
we are going to downgrade rhel9.


Release v3

Major change is Bolt class is not a Facade but Factory. Instead of direct bolt message method call you have to get protocol class instance and invoke these methods on it.
Also I changed return values from protocol classes methods, now all of them returns array. Because we have seen how historically they have been added or updated. Originally some methods returned boolean.

Of course some of methods currently returns empty array, because server success response message in some situations doesn't have any data. If method wasn't successful it throws exception.
Only one method returns void and that is goodbye.

Added support for ignored response message and it throws new type of exception IgnoredException. At this exception you can call method reset which set the server into initial state.
Fixed one error in old version 1. Propably nobody have experienced that, because that old version of Neo4j isn't available.
Updated phpunit to follow all these changes.

Old approach https://github.com/neo4j-php/Bolt/wiki/Usage
New approach:
//create Bolt instance
$bolt = new \Bolt\Bolt(new \Bolt\connection\StreamSocket());
//get protocol class instance by requested bolt versions
$protocol = $bolt->build();
//login
$metadata = $protocol->init(\Bolt\helpers\Auth::basic('neo4j', 'nothing'));
//execute some query and get result
$info = $protocol->run('RETURN 1 as num, 2 as cnt', [], ['mode' => 'r']);
$result = $protocol->pull();
var_dump($info, $result);
//farewell
$protocol->goodbye();

It already looks really good to me! I added another suggestion to improve the MessageException class. I will try and add github ci support as well


[Comparison] ComparisonPerformers buildGetters breaks the filtering

ComparisonPerformers.buildGetters adds including filter for public methods. But GettersDynamicPerformerBuilder appends a method if any of including filters match.
We cannot remove public methods filter from "buildGetters", since:

It may break existing code that uses exlusing filters.
The usecase is still relevant, we should be able to filter public methods along with other including filters.

The only proper solution is to add functionality to GettersDynamicPerformerBuilder to register another kind of filters, that would have AND combinator logic with existing filters. Current logic is this:
any of (IF1, IF2, IF3, ..., IFn)
AND
none of (EF1, EF2, EF3, ..., EFn)

Meaning that method should be accepted by any of including filter and NOT accepted by any of excluding filters. But there should be something like:
all of (RF1, RF2, RF3, ..., RFn)
AND
any of (IF1, IF2, IF3, ..., IFn)
AND
none of (EF1, EF2, EF3, ..., EFn)

Meaning that method should be accepted by ALL "requirement filters" and then be accepted by any including filter, and also NOT be accepted by any excluding filter. This approach would create 3 distinguished groups of predicates with clear internal combinatory logic. Use case for public methods then would look like this:
new GettersDynamicPerformerBuilder<>(type)
	.addRequirement(m -> UberMethods.getVisibility(m) == Visibility.PUBLIC);

Meaning that all methods are required to be public to be included by any filter. Addition of a second requirement will affect only those methods that have passed the first one. For example:
new GettersDynamicPerformerBuilder<>(type)
	.addRequirement(m -> UberMethods.getVisibility(m) == Visibility.PUBLIC)
	.addRequirement(m -> m.getExceptionTypes().length == 0);

Meaning that only public methods with no thrown exceptions may be included.
If user will need to include both PUBLIC and PROTECTED methods, for example:
Predicate<Visibility> publicOrProtected = v -> v == Visibility.PUBLIC || v == Visibility.PROTECTED;
new GettersDynamicPerformerBuilder<>(type)
	.addRequirement(m -> UberMethods.getVisibility(m) == Visibility.PUBLIC
		|| UberMethods.getVisibility(m) == Visibility.PROTECTED);

This new group of methods turns out to be extremely specific, but the requirement is specific itself. Also it seems that there's no need for usability method to add requirement by name regexp, so there may as well be only one method: adRequirement(Predicate<Method>).
Note: name addRequirement is specified for consistency with existing names addFilter and addExcludingFilter (which were selected for code readability matters).

Note: there was a discussion to make "requirement filters" inner combinatory logic also as ANY OF, but this scheme seems weird and confusing:
any of (RF1, RF2, RF3, ..., RFn)
AND
any of (IF1, IF2, IF3, ..., IFn)
AND
none of (EF1, EF2, EF3, ..., EFn)

This creates a question: "why there's only two groups of any of kind? And is there a way to add more groups like this?"

Note: this fix was backported to 0.0.9 version and released as <IP_ADDRESS>
https://github.com/Whaka-project/whakamatautau-util/releases/tag/whakamatautau-util-<IP_ADDRESS>


build esm/cjs; fix jest

 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.You have signed the CLA already but the status is still pending? Let us recheck it.

@murillo128 @mildsunrise ready for review

@mildsunrise rebased. Please let me know if you'll consider merging this.

hi, thanks for the PR and sorry for the delay in responding to this... it was something I was looking forward to merge but always had more important things in my desk.
let me see if I can bring these changes in, especially the buildsystem ones, it'd be nice to ship a cjs version

I still have to merge some stuff, like windows support, but I think it's good enough for a v1 release.
Package is up on NPM, let me know if there's any issues :) NPM rejected the original name (h264-frame-parser) as spam, so we've named it nal-extractor. I'll rename this repo.

Looks good!


warn user calling Vue() without new

Hi,
Open to different wording on the error & I wasn't sure where to put these tests so I've put them in a new file for now.
An alternative to this PR would be something like:
function Vue (options) {
+  if (!(this instanceof Vue)) {
+    return new Vue(options)
+  }
   this._init(options)
}

I'm not sure which would be better in the long run but the alternative would be more forgiving.
I could also wrap this in env check so this is left out of the production build, but it's also not a lot of code to leave in.
Let me know what you think.

It should actually be something like
if (process.env.NODE_ENV !== 'production' &&
    <failing-condition>) {
    warn('foo')
}

The test is something like expect('foo').toHaveBeenWarned()

Hi, thanks! I've updated the code and test to match that


clarity on index types

arango 3.4.9
rocksdb 5.16.0
according to the docs
index types hash, skiplist and persistent are equivalent when using the RocksDB storage engine.
what do you mean by equivalent? are they identical? or simply are all persistent i.e. persisted to disk?
additionally, my web interface offers the following index types

geo
hash
persistent
full-text
skiplist

that one sentence about equivalency is fkin up my ability to choose an index type, which is extremely funny, as I understand which index type im suppose to choose for my specific use case, but to think a sorted index is the equiavelent to hash index, if the docs are correct, is making me question my degree from wikipedia

I just upgraded to 3.6.1
and i now see the equivalency

skip, hash -> persistent

for any one else arriving, here are the tests for ensureindex

In the past, we only had the MMFiles storage engine. Here the index types hash, skiplist and persistent are fundamentally different, and the names correctly indicate the type of each index.
Later, we added the RocksDB storage engine to ArangoDB. In order to ensure maximum compatibility and make engine switching as easy as possible, we stuck with the existing index type names even for RocksDB. But, as the documentation states, these index types are identical for the RocksDB storage engine. They have different names but use the same internal implementation.
In order to make things a bit less confusing, we simplified the web interface in 3.6 so that it only offers one of these index types when creating a new index with the RocksDB engine. We picked "persistent" here, because that most clearly indicates the type of index. "hash" and "skiplist" don't really fit for the RocksDB-based indexes, as they are neither of these two things. In RocksDB, all keys are stored in sorted order, so functionally it provides the same behavior and guarantees as a skiplist. But underneath it is using whatever RocksDB is employing (ironically, in-memory data is stored in RocksDB in a skiplist-based structure - but on disk data is stored differently).
It is still possible to use the APIs to create indexes of types hash, skiplist and persistent. Though internally their characteristics will be identical, and the web interface does not offer the former two types.
I hope this clarifies the confusion at least a bit!

u are da real mvp


what should I do used share connection with lettuce5.x

just open a conncetion like this: client.connect()
and then don't close it and sharing in different threads？

Not exactly sure what you're up to. Care to elaborate what you want to achieve?

OK, my application is concurrent and IO intensive type, and I want to use a single conncetion with lettuce5.x. Can you give an example？Thx!

It's no more than connecting and holding the connection. Make sure to close the connection on application shutdown. Dependency injection helps quite a lot in such scenarios.


Linux support added

I needed to use this lib either on windows or mono linux. Working like a charm on Windows and Raspian stretch (Raspberry pi).
Eric

Is this still going to be added?


fix: remove margin when no label

Description

In ButtonGroup Widget Remove Extra Padding when there is no label.

Fixes #10725
Type of change

Bugfix (non-breaking change which fixes an issue)

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes

Test coverage results :test_tube:
:red_circle: Total coverage has decreased
// Code coverage diff between base branch:release and head branch: fix/button-group-widget-centered-icon

Status
File
% Stmts
% Branch
% Funcs
% Lines

:red_circle:
total
55.88 (0)
37.24 (-0.01)
35.22 (0)
56.19 (-0.01)

:red_circle:
app/client/src/selectors/commentsSelectors.ts
83.61 (-1.64)
61.76 (-2.95)
73.33 (0)
88.24 (-2.35)

:green_circle:
app/client/src/widgets/ButtonGroupWidget/component/index.tsx
24.21 (0.25)
11.2 (0)
4.35 (0.18)
25.88 (0.3)

/ok-to-test sha=383d211

/ok-to-test sha=e5c56f5

/ok-to-test sha=285e617


Which version of Python is used to train SVD-v2?

Which version of Python is used to train SVD-v2? Is it crucial for training converge? (As you mentioned here, the version of dependencies matters.)

Hello, thanks for your interests for our work.
We adopt:
Python 3.11.8 (main, Feb 26 2024, 21:39:34) [GCC 11.2.0] on linux


982 Make NPI delay implementation a parameter, set it and harmonize model advance functions

Changes and Information
Please briefly list the changes (main added features, changed items, or corrected bugs) made:

Rename delay_lockdown and make it a DynamicNPIsImplementationDelay Parameter
Harmonize SECIR and SECIRVVS advance functions

If need be, add additional information and what the reviewer should look out for in particular:

Merge Request - Guideline Checklist
Please check our git workflow. Use the draft feature if the Pull Request is not yet ready to review.
Checks by code author

[x] Every addressed issue is linked (use the "Closes #ISSUE" keyword below)
[x] New code adheres to coding guidelines
[x] No large data files have been added (files should in sum not exceed 100 KB, avoid PDFs, Word docs, etc.)
[x] Tests are added for new functionality and a local test run was successful (with and without OpenMP)
[x] Appropriate documentation for new functionality has been added (Doxygen in the code and Markdown files if necessary)
[x] Proper attention to licenses, especially no new third-party software with conflicting license has been added
[ ] (For ABM development) Checked benchmark results and ran and posted a local test above from before and after development to ensure performance is monitored.

Checks by code reviewer(s)

[ ] Corresponding issue(s) is/are linked and addressed
[ ] Code is clean of development artifacts (no deactivated or commented code lines, no debugging printouts, etc.)
[ ] Appropriate unit tests have been added, CI passes, code coverage and performance is acceptable (did not decrease)
[ ] No large data files added in the whole history of commits(files should in sum not exceed 100 KB, avoid PDFs, Word docs, etc.)
[ ] On merge, add 2-5 lines with the changes (main added features, changed items, or corrected bugs) to the merge-commit-message. This can be taken from the briefly-list-the-changes above (best case) or the separate commit messages (worst case).

@HenrZu @jubicker After I had reseen our delay_lockdown parameter on Thursday I directly made a first suggestion on how to improve it. There might be things missing like sampling, setting etc and tests are missing anyway. Could you have a look and take over?

@mknaranja @jubicker i have made some changes and add a few tests. Maybe one can verify/ review this further.

@mknaranja @jubicker i have made some changes and added a few tests. Maybe one can verify/ review this further.

Looks good so far (only had some minor comments). But the merge conflicts should be resolved.


feat: implement AIP 11

Summary
Implement AIP-11 Support.
Resolves #7 and #90.

completely refactor transaction classes.
add a test helper method to compare arrays across platforms.
add a standard base58 method for Ipfs hash parsing.
add unit test fixtures for v2 Transaction types.
hide MultiPayment builder tests from embedded environments.
use extraction to reduce map/json method complexity.
add more precise calculation of json payloads for ArduinoJson.
add and utilize packing/unpacking macros for uint value -> bytes.
change move -> copy/copy_n semantics to prevent unwanted modification of sources.
typedef -> using semantics for types .
BIP66 lib version 0.2.1 -> 0.3.2.
move BCL to an external dep.
update docs to reflect AIP11 changes.
update all relevant unit tests.

Checklist

[x] Documentation (if necessary)
[x] Tests (if necessary)
[x] Ready to be merged

Additional Comments
Breaking changes:

Transaction Interface.
Transaction Builder Interface.

@vasild
On the previous discussion..
I agree, if it can’t serde, it’s not a good candidate for support.
It’s not so much a matter of whether a platform can support serde though;

I’m more concerned with the space unit tests and fixtures take up.
The library itself doesn't take up much space and is fairly well-oriented towards embedded.

I can sign a Tx on 8-bit platforms (Uno); it’s slow, but works.

Adding multiple fixtures exceeds the available space though.
I’d like to eventually find a way of optimizing such that storage is improved, but testability isn’t affected.
@ciband has helped improve this situation by breaking up tests so that different aspects can be tested independently. I think this should be good enough in the mean time.
I’m leaving this out of the AIP11 feature as it’s not directly concerned with the scope here, but will continue looking at the issue separately 👍


Fix example BOSH_ALL_PROXY variable

Sorry, we got it wrong in https://github.com/cloudfoundry/docs-bosh/pull/544.

Oops_thanks


Export knex.raw('CURRENT_TIMESTAMP') for quick usage

Maybe knex should allow people to write like this:
    table.dateTime('updated_at')
      .defaultTo(knex.CURRENT_TIMESTAMP)

    table.date('day')
      .defaultTo(knex.CURRENT_DATE)

   table.dateTime('timestamp')
      .defaultTo(Date.now)

knex.raw is not a portable or flexible solution.  The proposal above is exactly what I would call a portable and flexible solution.  Why is this issue closed?

@mjbrisebois Reopened. I'll accept a PR that adds constants to knex as suggested by @ktmud.

This seems to have been implemented by #372.
table.dateTime('updated_at').defaultTo(knex.fn.now());

Might be nice to have some better documentation for this, though.

There's a PR out for documentation changes related to this: #1029

Closed by #1029.

For people ending up here from Google. This is the way how to do it in 2017:
const knexfile = require('../../knexfile');
const knex = require('knex')(knexfile.development);
const date = knex.fn.now();


Add support for flush on savefiles

I noticed there is an API for that already in libpcap (pcap_dump_flush).
I'm using the crate to create pcap files with a certain size limit so I constantly need to check what is the output size on the disk.
I opened a PR to add that functionality

Thanks! I've merged it now. CI failed on your PR, but that was due to a new clippy lint which I've just fixed on master so hopefully there won't be any other surprises.