SQLite Migration fails.

Which version and edition of Flyway are you using?
10.1.0-Community
If this is not the latest version, can you reproduce the issue with the latest one as well? (Many bugs are fixed in newer releases and upgrading will often resolve the issue)
Which client are you using? (Command-line, Java API, Maven plugin, Gradle plugin)
Java API
Which database are you using? (Type & version)
SQLite - <IP_ADDRESS>
Which operating system are you using?
Windows
What did you do? (Please include the content causing the issue, any relevant configuration settings, the SQL statement(s) that failed (if any), and the command you ran)
The code that is being used to run the migrations:
        try {
            Flyway flyway = Flyway
                    .configure(ClasspathHelper.staticClassLoader())
                    .dataSource(getDataSource())
                    .locations("sql/migrations")
                    .installedBy("Ree6-SQL").load();

            MigrationInfo[] migrationInfo = flyway.info().pending();

            if (migrationInfo.length != 0) {
                log.info("Found " + migrationInfo.length + " pending migrations.");
                log.info("The pending migrations are: " + String.join(", ",
                        Arrays.stream(migrationInfo).map(MigrationInfo::getDescription).toArray(String[]::new)));

                log.info("Running Flyway Migrations.");
            } else {
                log.info("No pending migrations found.");
            }

            MigrateResult result = flyway.migrate();

            if (result.success) {
                log.info("Flyway Migrations were successful.");
            } else {
                log.error("Flyway Migrations were unsuccessful.");
            }
        } catch (Exception exception) {
            log.error("Migration failed!", exception);
        }

The actual error:
org.flywaydb.core.internal.command.DbMigrate$FlywayMigrateException: Migration V1__Initial.sql failed
--------------------------------
SQL State  : null
Error Code : 1
Message    : [SQLITE_ERROR] SQL error or missing database (near "CONSTRAINT": syntax error)
Location   : sql/migrations/V1__Initial.sql (C:\!Entwicklung\Project\Ree6\file:\C:\!Entwicklung\M2\de\ree6\Ree6-SQL\2.1.6-TEST14\Ree6-SQL-2.1.6-TEST14.jar!\sql\migrations\V1__Initial.sql)
Line       : 405
Statement  : ALTER TABLE Money_Transaction
    ADD CONSTRAINT FK_MONEY_TRANSACTION_ON_RECEIVER FOREIGN KEY (receiver) REFERENCES Money_Holder (Id)

	at org.flywaydb.core.internal.command.DbMigrate.doMigrateGroup(DbMigrate.java:382)
	at org.flywaydb.core.internal.command.DbMigrate.lambda$applyMigrations$1(DbMigrate.java:272)
	at org.flywaydb.core.internal.jdbc.TransactionalExecutionTemplate.execute(TransactionalExecutionTemplate.java:55)
	at org.flywaydb.core.internal.command.DbMigrate.applyMigrations(DbMigrate.java:271)
	at org.flywaydb.core.internal.command.DbMigrate.migrateGroup(DbMigrate.java:244)
	at org.flywaydb.core.internal.command.DbMigrate.lambda$migrateAll$0(DbMigrate.java:139)
	at org.flywaydb.core.internal.jdbc.TableLockingExecutionTemplate$1.call(TableLockingExecutionTemplate.java:36)
	at org.flywaydb.core.internal.jdbc.TransactionalExecutionTemplate.execute(TransactionalExecutionTemplate.java:55)
	at org.flywaydb.core.internal.jdbc.TableLockingExecutionTemplate.execute(TableLockingExecutionTemplate.java:31)
	at org.flywaydb.core.internal.database.base.Connection.lock(Connection.java:102)
	at org.flywaydb.core.internal.schemahistory.JdbcTableSchemaHistory.lock(JdbcTableSchemaHistory.java:144)
	at org.flywaydb.core.internal.command.DbMigrate.migrateAll(DbMigrate.java:139)
	at org.flywaydb.core.internal.command.DbMigrate.migrate(DbMigrate.java:97)
	at org.flywaydb.core.Flyway.lambda$migrate$0(Flyway.java:202)
	at org.flywaydb.core.FlywayExecutor.execute(FlywayExecutor.java:215)
	at org.flywaydb.core.Flyway.migrate(Flyway.java:147)
	at de.presti.ree6.sql.SQLConnector.runMigrations(SQLConnector.java:119)
	at de.presti.ree6.sql.SQLConnector.<init>(SQLConnector.java:62)
	at de.presti.ree6.sql.SQLSession.<init>(SQLSession.java:179)
	at de.presti.ree6.main.Main.main(Main.java:214)
Caused by: org.flywaydb.core.internal.sqlscript.FlywaySqlScriptException: Migration V1__Initial.sql failed
--------------------------------
SQL State  : null
Error Code : 1
Message    : [SQLITE_ERROR] SQL error or missing database (near "CONSTRAINT": syntax error)
Location   : sql/migrations/V1__Initial.sql (C:\!Entwicklung\Project\Ree6\file:\C:\!Entwicklung\M2\de\ree6\Ree6-SQL\2.1.6-TEST14\Ree6-SQL-2.1.6-TEST14.jar!\sql\migrations\V1__Initial.sql)
Line       : 405
Statement  : ALTER TABLE Money_Transaction
    ADD CONSTRAINT FK_MONEY_TRANSACTION_ON_RECEIVER FOREIGN KEY (receiver) REFERENCES Money_Holder (Id)

	at org.flywaydb.core.internal.sqlscript.DefaultSqlScriptExecutor.handleException(DefaultSqlScriptExecutor.java:270)
	at org.flywaydb.core.internal.sqlscript.DefaultSqlScriptExecutor.executeStatement(DefaultSqlScriptExecutor.java:225)
	at org.flywaydb.core.internal.sqlscript.DefaultSqlScriptExecutor.execute(DefaultSqlScriptExecutor.java:128)
	at org.flywaydb.core.internal.resolver.sql.SqlMigrationExecutor.executeOnce(SqlMigrationExecutor.java:68)
	at org.flywaydb.core.internal.resolver.sql.SqlMigrationExecutor.lambda$execute$0(SqlMigrationExecutor.java:57)
	at org.flywaydb.core.internal.database.DefaultExecutionStrategy.execute(DefaultExecutionStrategy.java:27)
	at org.flywaydb.core.internal.resolver.sql.SqlMigrationExecutor.execute(SqlMigrationExecutor.java:56)
	at org.flywaydb.core.internal.command.DbMigrate.doMigrateGroup(DbMigrate.java:374)
	... 19 common frames omitted
Caused by: org.sqlite.SQLiteException: [SQLITE_ERROR] SQL error or missing database (near "CONSTRAINT": syntax error)
	at org.sqlite.core.DB.newSQLException(DB.java:1179)
	at org.sqlite.core.DB.newSQLException(DB.java:1190)
	at org.sqlite.core.DB.throwex(DB.java:1150)
	at org.sqlite.core.NativeDB.prepare_utf8(Native Method)
	at org.sqlite.core.NativeDB.prepare(NativeDB.java:132)
	at org.sqlite.core.DB.prepare(DB.java:264)
	at org.sqlite.jdbc3.JDBC3Statement.lambda$execute$0(JDBC3Statement.java:53)
	at org.sqlite.jdbc3.JDBC3Statement.withConnectionTimeout(JDBC3Statement.java:459)
	at org.sqlite.jdbc3.JDBC3Statement.execute(JDBC3Statement.java:42)
	at com.zaxxer.hikari.pool.ProxyStatement.execute(ProxyStatement.java:94)
	at com.zaxxer.hikari.pool.HikariProxyStatement.execute(HikariProxyStatement.java)
	at org.flywaydb.core.internal.jdbc.JdbcTemplate.executeStatement(JdbcTemplate.java:210)
	at org.flywaydb.core.internal.sqlscript.ParsedSqlStatement.execute(ParsedSqlStatement.java:97)
	at org.flywaydb.core.internal.sqlscript.DefaultSqlScriptExecutor.executeStatement(DefaultSqlScriptExecutor.java:213)
	... 25 common frames omitted

What did you expect to see?
A "flawless" migration.
What did you see instead?
A not so functional migration.

Hi @DxsSucuk , are you able to share the full V1__Initial.sql ? Because from the error message, it looks like a sql error to me.

Sorry for the latest response!
Here is a link to the migration -> https://raw.githubusercontent.com/Ree6-Applications/Ree6-SQL/master/src/main/resources/sql/migrations/V1__Initial.sql

Hi @DxsSucuk , could you have a look into https://www.sqlite.org/foreignkeys.html#fk_enable, and check whether this is related? Because the error message seemed to be a sql syntax error.


DocOnly rules updated

Description
Please include a summary of the change and which is fixed.

Fix doc-only rules to detect more complex cases with upper and lowers and (digits or a sign)
update dependencies

How has this been tested?
Please describe the tests that you ran to verify your changes.

[x] UnitTest
[x] Benchmark

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

Comparison is base (105e296) 90.82% compared to head (adca91e) 90.92%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #451      +/-   ##
==========================================
+ Coverage   90.82%   90.92%   +0.09%
==========================================
  Files         126      126
  Lines        4209     4209
  Branches      666      666
==========================================
+ Hits         3823     3827       +4
+ Misses        251      249       -2
+ Partials      135      133       -2

see 2 files with indirect coverage changes

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

test

Is this PR already adopted on internal service?

Yes, the same rules version is used


Add dask-jobqueue and dask-drmaa links to HPC setup docs

cc @jakirkham @jhamman @lesteve

Generally this seems fine to me once some suitable example is settled on.

I gave this another read through and this all looks good to me.

Thanks all for the review
On Wed, May 2, 2018 at 7:18 PM, Joe Hamman<EMAIL_ADDRESS>wrote:

I gave this another read through and this all looks good to me.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/dask/dask/pull/3426#issuecomment-386150398, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AASszI7S8B30hJxUjs-sP3Homt0wkqMOks5tuj7AgaJpZM4TdcQC
.


Fontawesome external link icon error

I want to add an external link icon in this overleaf template like above. Below is the overleaf snap:

here is the error message that I got:

Little brief:
The icon wanted to use is  from font awesome,  CTAN states that:
The fontawesome package requires the font spec package when using the XƎ(LA)TEXor Lua(LA)TEX engines to load the included otf font. When using the (pdf)(LA)TEXengine, the fontawesome package doesn’t require any external package
I used the pdfLatex engine but it still gives error.

It seems like there's a step missing somewhere...
Did you add \usepackage{fontawesome5} near the top with the other packages?

yes, I did, after you said.

According to the documentation, it's \faExternalLink*
You can find all of the icons associated with the fontawesome5 package here: https://latexdraw.com/wp-content/uploads/2021/01/fontawesome5_2.pdf

I've also used the same as you mentioned, \faExternalLink right?

Yes, but note the asterisk after \faExternalLink so it needs to be \faExternalLink*

Bang! it works!. aplogy, Thanks, dude.

\faExternalLink*
It is correct, it works for me.

@HabibRh26 Can you please provide me this template of your resume


[Envoy] A tasks user is not being used with ParallelSSH

Laravel Version: "laravel/envoy" : "~1.2"
PHP Version: 7
Database Driver & Version: n/a

Description:
When setting the username in a Task it is not being used when executing that task.
Steps To Reproduce:
$task = new Laravel\Envoy\Task($nodes, $username, $cmd, true);
$ssh = new Laravel\Envoy\ParallelSSH();
$ssh->run($task);

This issue tracker is for the framework only, sorry.


DefaultInterest - NoDefaultInterest

I have a question,  in DefaultInterest class, how am I able to request NoDefaultInterest?
If I look at the Description: it looks like the NoDefaultInterest is missing in BaseAmountType:
description: | Contains information on how penalty interest is calculated. NoDefaultInterest: No penalty interest shall be required.DefaultInterestAmount: Indicates that penalty interest is calculated on the basis of the amount claim. DefaultInterestAmountAndDefaultCharge: Indicates whether penalty interest is calculated on the basis of the amount and arrears of the claim. Percentage: (4 decimal, example: 12.1234 ) Indicates the percentage of penalty interest, may not be higher than the Central Bank's maximum permitted penalty interest rate. If the penalty interest rule specifies that penalty interest is to be calculated and this value is not specified, the Central Bank's maximum penalty interest rate is used automatically.
public enum BaseAmountTypeEnum
{
///
/// Enum AmountEnum for Amount
///
[EnumMember(Value = "Amount")]
AmountEnum = 0,
///
/// Enum AmountAndDefaultChargeEnum for AmountAndDefaultCharge
///
[EnumMember(Value = "AmountAndDefaultCharge")]
AmountAndDefaultChargeEnum = 1
}

Ok, I understand that null would indicate NoDefaultInterest, I wounder how the PATCH of an Claim can determine the difference of NoDefaultInterest or do not change DefaultInterest values? And then the others also Discount and DefaultCost.

I have been wondering the same thing. Here is my conclusion:
Given the name of the PATCH request is mergeClaimDetails I'm assuming it adheres to the JSON Merge Patch IETF standard.
Short answer to your question would then be that if one of the fields in the PATCH request has a null value then that tells the server to delete that field from the claim resource. If the fields are not present in the PATCH request they are not modified.
There is a good example of how to add, change and remove fields in the RFC 7369.
Hope this helps :)

Ok, I understand that null would indicate NoDefaultInterest, I wounder how the PATCH of an Claim can determine the difference of NoDefaultInterest or do not change DefaultInterest values? And then the others also Discount and DefaultCost.

I have been wondering the same thing. Here is my conclusion: Given the name of the PATCH request is mergeClaimDetails I'm assuming it adheres to the JSON Merge Patch IETF standard.
Short answer to your question would then be that if one of the fields in the PATCH request has a null value then that tells the server to delete that field from the claim resource. If the fields are not present in the PATCH request they are not modified.
There is a good example of how to add, change and remove fields in the RFC 7369.
Hope this helps :)

Thanks, can we put this short answer in the api description for clear functionality.

Meeting TN-FMÞ-VH7-18 discussed that an overall description or reference to RFC 7369 on how PATCH requests work should be handled in the Technical Specification and not the API description, as that might require too much context and text.

This issue was addessed in the 3.1 work done by workgroup VH-7.


MariaDB Not Starting after Chef Installation on Lubuntu

OS: Lubuntu
MariaDb Version: 10.0
I tried running this recipe and did some overrides of some attributes but i am having this error:
<IP_ADDRESS>   * template[/etc/mysql/debian.cnf] action create
<IP_ADDRESS>     - update content in file /etc/mysql/debian.cnf from f9b98e to 751c0c
<IP_ADDRESS>     - suppressed sensitive resource
<IP_ADDRESS>   * execute[correct-debian-grants] action run[2016-02-12T15:33:23+08:00] ERROR: execute[correct-debian-grants](mariadb::galera line 143) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received '1'
<IP_ADDRESS> ---- Begin output of mysql -r -B -N -u root --password='tln123' -e "GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER ON  . TO 'tln'@'localhost' IDENTIFIED BY 'tln123' WITH GRANT OPTION" ----
<IP_ADDRESS> STDOUT:
<IP_ADDRESS> STDERR: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/home/tln/mysqld/mysqld.sock' (2 "No such file or directory")
<IP_ADDRESS> ---- End output of mysql -r -B -N -u root --password='tln123' -e "GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER ON  . TO 'tln'@'localhost' IDENTIFIED BY 'tln123' WITH GRANT OPTION" ----
<IP_ADDRESS> Ran mysql -r -B -N -u root --password='tln123' -e "GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER ON  . TO 'tln'@'localhost' IDENTIFIED BY 'tln123' WITH GRANT OPTION" returned 1; ignore_failure is set, continuing
*### -- It seems that the mariadb server was not running. *
When i ran manually, error:
Failed to open file '/var/lib/mysql//galera.cache' : 13 (Permission Denied)
Not sure but, it seems this is a permission problem. this directory belongs to mysql but I did not or can't find any in the recipe that created a mysql user. Or probably another user it seems.

Installing Manually (MariaDB-Galera-Server) works seemlessly on my END.

That is interesting as I would expect Lubuntu to operate the same way Ubuntu does, and we fully support Ubuntu.
I'll take a look into this and see if I can resolve it before the next release.

I was able to replicate the problem.
When converging for the first time Chef fails, second time it failed too, I logged in and manually started the mysql service and then was able to converge successfully.

Hi,
Closing issue as we have released 2.0.0 which does not use recipes anymore, if you are still having an issue please re-open
Thanks


Optimized images files

The image files were optimized using advanced tools in order to achieve lossless file size reduction.

Thank you for the contribution. Appreciated.


FAILURE: Build failed with an exception

Your Environment

Plugin version:0.6.3
Platform: iOS or Android
OS version: Android 10
Device manufacturer and model: Xiaomi K20

Running in Simulator:
React Native version:0.63
Plugin configuration options:
Link to your project: Autolink

Context

What went wrong:
A problem occurred evaluating project ':@mauron85_react-native-background-geolocation-common'.

Failed to apply plugin [id 'com.android.internal.library']
The option 'android.enableUnitTestBinaryResources' is deprecated.
The current default is 'false'.
It has been removed from the current version of the Android Gradle plugin.
The raw resource for unit test functionality is removed.

Expected Behavior

Actual Behavior

Possible Fix

Steps to Reproduce

Context

Debug logs

Go to:
<EMAIL_ADDRESS>And set:
android.enableUnitTestBinaryResources=false

Should be fixed by https://github.com/mauron85/background-geolocation-android/pull/49
@mauron85 could you take a look at that please :) thanks

Just ran into this issue as well - would be great if that PR could get merged in.

please merge!

@billnbell I created fork repo to solve several issues. (Including this issue)
https://github.com/darron1217/react-native-background-geolocation
Take a look

Ran into the same issue, fixed by @pavel-skrypko method but I would rather not modify the node_modules...

someone can merge into master and create a release. Is this package being maintained or is it abandoned?

If you are using patch-package, use this patch
@mauron85+react-native-background-geolocation+0.6.3.patch
diff --git<EMAIL_ADDRESS><EMAIL_ADDRESS>index 0c27457..f7f2f4b 100644
---<EMAIL_ADDRESS>+++<EMAIL_ADDRESS>@@ -1,2 +1 @@
-android.enableUnitTestBinaryResources=true
 android.builder.sdkDownload=true


Add hdevtools linter for haskell

This adds support for the hdevtools haskell linter
https://github.com/hdevtools/hdevtools
The output for hdevtools is near identical to the ghc output so this
also extracts the ghc handler into the handle file and adds tests

Cheers! :beers:


Dynamic galleries

[ ] Regression (a behavior that used to work and stopped working in a new release)
[ ] Bug report
[ ] Feature request
[ ] Documentation issue or request
[x] Support request

- Node version: 11.5.0
- npm version: 6.4.1
- Operating System and version:  Linux
- Angular version: 7.1.4
- angular-cli version 7.1.4

Browser:
- [x] Chrome (desktop) version XX
- [ ] Chrome (Android) version XX
- [ ] Chrome (iOS) version XX
- [ ] Firefox version XX
- [ ] Safari (desktop) version XX
- [ ] Safari (iOS) version XX
- [ ] IE version XX
- [ ] Edge version XX

Hello!

How do I create galleries dynamically?

When I try to do it, based on the example of "Plain gallery with image pointer.", When I click on the gallery open the amount of galleries you have in * ngFor, all at once.

Grateful for the attention!!

Hi.
Please check the official live example and click on menu's Modal gallery item.
As you can see there is a button to add images at the beginning of the page. This button executes a method called "addRandomImage" in the component's code.
It's very simple, because you only need to add new elements to the array of images, but take care of immutability.
If you try to push images to the array, Angular won't trigger changes and you'll see the same images. If you want to trigger a change when OnPushStrategy is enabled (like in this library) you must create a new instance of the array in a way like this:
 addImage() {
    const newImage: Image = .......;
    this.images = [...this.images, newImage];
  }

In this snippet I used es6 syntax, but you are free also to use ES5 if you want. The important thing is that you must provide a new instance and not the same array with new element pushed inside.
Feel free to comment if you are still having the same problem

Oh, wait probably I didn't understand your problem. If not, please explain it again.

Ks89, thank you very much for your attention.
So my problem is this:
I have 3 products, each one needs to have a gallery, I can do it dynamically.
But, what I did not understand is how to call the pictures from each gallery, and dynamically.
In your examples, there are only one images: Image [], I think you could make an example with two galleries, with different images, I think it would help a lot to better understand how things work
Once again thank you for the attention !!!
Atte,
fbmarques

Hi, my official example is a big page with multiple galleries in the same webpage. If you want different images, you should simply create two different arrays. I don't see any problem to do this.
Every instance of modal-gallery can use a different array of images.

I understand...
Could you tell me the example you mentioned with a sample link?
Once again thank you for the attention !!!
Atte,
fbmarques

This is the live example. As you can see I'm using multiple instances of the gallery, sometime with the same array, sometime not.
https://stackblitz.com/edit/angular-modal-gallery-v7


DataSet.get_data bugs with start/end arguments

Fixes #1384.
There are two bugs in the underlying get_data function of sqlite_base.py:

0 are treated as None
sql query has a typo in the where clause for start for the case where both start and end are not None

This PR fixes both.
Note that the current behavior suggests a 1-based indexing (unlike python 0-based), with both start and end indexes being included into retuned data. This behavior is captured by the test suite.
Ideally, the very same test should be done for get_data from sqlite_base.py but did not make it to this PR in order to avoid code duplication.
Note that get_data from sqlite_base.py was also refactored to reduce the possibility for bugs like the ones mentioned above. In case it made the function less, readable, the refactoring can be reverted.

@QCoDeS/core ready for review.


add concept list to concepticon

I think it is worthwhile adding this list, even if it is not completely mapped.

Is this done?

No.

The dataset is already using the concept list.  Many concepts are unmapped, but it was reviewed about 6 months ago and in most cases it was due to concepts missing in Concepticon (at least the first is still not there, "eyeball"). I think I reviewed it with Nathanel, maybe he remembers.

Pinging @Schweikhard

Ah, I forgot the concept list was already added to concepticon.


add two helpers functions

This adds two functions:
get_language_by_iso_code and get_translation_by_iso_codes

# get_language_by_iso_code(iso_code) helps to simplify:

from_code = "en"
to_code = "es"

# Translate
installed_languages = argostranslate.translate.get_installed_languages()
from_lang = list(filter(
	lambda x: x.code == from_code,
	installed_languages))[0]
to_lang = list(filter(
	lambda x: x.code == to_code,
	installed_languages))[0]

# by

from_code = "en"
to_code = "es"

from_lang = argostranslate.translate.get_language_by_iso_code(from_code)
to_lang = argostranslate.translate.get_language_by_iso_code(to_code)

# get_translation_by_iso_codes(iso_code) helps to simplify:

from_code = "en"
to_code = "es"

# Translate
installed_languages = argostranslate.translate.get_installed_languages()
from_lang = list(filter(
	lambda x: x.code == from_code,
	installed_languages))[0]
to_lang = list(filter(
	lambda x: x.code == to_code,
	installed_languages))[0]
translation = from_lang.get_translation(to_lang)

# by

from_code = "en"
to_code = "es"

translation = argostranslate.translate.get_translation_by_iso_codes(from_code, to_code)

I have add return false if no language is found, but maybe it should let the error be throw as in the base code

Thanks, I'm planning to merge this with some edits once I get a chance.

I removed the error catching code


Refactor: Creates 'install-shared-deps.sh' for common dependencies

Ah my bad. Still had a diff locally:
diff --git a/install-shared-deps.sh b/install-shared-deps.sh
index a7e601b..877571a 100644
--- a/install-shared-deps.sh
+++ b/install-shared-deps.sh
@@ -57,6 +57,6 @@ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh |
     && nvm use default

 # install cmake
-https://cmake.org/files/v3.11/cmake-3.11.2-Linux-$(uname --machine).sh /tmp/cmake.sh
+curl https://cmake.org/files/v3.11/cmake-3.11.2-Linux-$(uname --machine).sh > /tmp/cmake.sh
 sh /tmp/cmake.sh --prefix=/usr/local --skip-license && /bin/rm /tmp/cmake.sh
 cmake --version

Fixing with new PR.


add README and .gitignore

This PR adds an initial README, .gitignore, and .gitattributes.

LGMT!

/assign @kimwnasptd
Lets merge this soon, we can do follow up PRs, but its good for the repo to have a readme.

/lgtm
/approve


[BUG] New-PnPSite : Code: timeout Message: The request timed out error in GCCHigh with Azure Runbook

Reporting an Issue or Missing Feature
NOTE!  THIS IS IN A GCCHIGH ENVIRONMENT WITH AZURE AUTOMATION RUNBOOK!!!
When using version 1.6 we are trying to create a new site using the following code (sanitized so replace with your values where appropriate):
Disable-AzContextAutosave –Scope Process;
$connection = Get-AutomationConnection -Name AzureRunAsConnection;
Write-Output $connection;
$certificate = Get-AutomationCertificate -Name AzureRunAsCertificate;
Write-Output "Certificate thumbprint: "$certificate.CertificateThumbprint;
$tenant = "tenant";
$connectionResult = Connect-PnPOnline -returnconnection -Tenant "$tenant.onmicrosoft.us" -Url "https://$tenant.sharepoint.us" -AzureEnvironment USGovernmentHigh -Thumbprint $connection.CertificateThumbprint -ClientID $connection.ApplicationId;
Write-Output $connectionResult;
$spoadmin =<EMAIL_ADDRESS>$admingroup = "c:0t.c|tenant|00000000-0000-0000-0000-000000000000";
$tempatesource = "";
$mailalias = "Test20210623Z";
$sitename = $mailalias;
$displayname = $mailalias;
$sitedescription = $mailalias;
#Define site owners.
$siteowners =<EMAIL_ADDRESS>'xyz@tenant.onmicrosoft.us');
$sitetemplate = "TeamSite";
#Create a new Collaboration site.
Write-Output "New-PnPSite -Type $sitetemplate -Alias $mailalias -Title $displayname -Description $sitedescription -Owners $siteowners";
$url = New-PnPSite -Type $sitetemplate -Alias $mailalias -Title $displayname -Description $sitedescription -Owners $siteowners -connection $connectionResult;
Write-Output $url.url;

The New-PnPSite cmdlet fails after with either:
"New-PnPSite : Code: timeout Message: The request timed out. At line:31 char:12 + $url = New-PnPSite -Type $sitetemplate -Alias $mailalias -Title $ ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : WriteError: (:) [New-PnPSite], ServiceException + FullyQualifiedErrorId : EXCEPTION,PnP.PowerShell.Commands.NewSite"
or
"Message: Location header not present in redirection response.
System.Management.Automation.ParameterBindingException: Cannot process command because of one or more missing mandatory parameters: InputObject.
at System.Management.Automation.CmdletParameterBinderController.PromptForMissingMandatoryParameters(Collection1 fieldDescriptionList, Collection1 missingMandatoryParameters)
at System.Management.Automation.CmdletParameterBinderController.HandleUnboundMandatoryParameters(Int32 validParameterSetCount, Boolean processMissingMandatory, Boolean promptForMandatory, Boolean isPipelineInputExpected, Collection1& missingMandatoryParameters)    at System.Management.Automation.CmdletParameterBinderController.BindCommandLineParameters(Collection1 arguments)
at System.Management.Automation.CommandProcessor.BindCommandLineParameters()
at System.Management.Automation.CommandProcessorBase.DoPrepare(IDictionary psDefaultParameterValues)
at System.Management.Automation.Internal.PipelineProcessor.Start(Boo"
without creating the site.
Expected behavior
Site created successfully.
Actual behavior
The above error or timeout.
Steps to reproduce behavior
Run the above code against a GCCHigh tenant in an Azure Automation runbook.
What is the version of the Cmdlet module you are running?
1.6
Which operating system/environment are you running PnP PowerShell on?

[ ] Windows
[ ] Linux
[ ] MacOS
[ ] Azure Cloud Shell
[ X] Azure Functions
[ ] Other : please specify

@cjvandyk - Does this work correctly outside of Azure automation as in normal PS 5/ PS 7 ?

Closing this due to lack of response.


--kubeconfig creates

What happened:
As a non-root user in an Ubuntu container in MacOS:
When following the (dated 2021) guide "Kubernetes the hard way", the following (modified) command...
kubectl config set-cluster kubernetes-the-hard-way \
    --certificate-authority=ca.pem \
    --embed-certs=true \
    --server="<IP_ADDRESS>:6443" \
    --kubeconfig=abc.kubeconfig

produces the error:
error: open abc.kubeconfig.lock: permission denied

and ls -lah produces:
ls: cannot access 'abc.kubeconfig.lock': No such file or directory
total 4.0K
drwxr-xr-x 4 user user  128 Aug  6 17:42 .
drwxr-xr-x 6 user user  192 Aug  6 17:42 ..
-????????? ? ?    ?       ?            ? abc.kubeconfig.lock
-rw-r--r-- 1 user user 1.3K Aug  6 17:42 ca.pem

The abc.kubeconfig.lock can be removed with unlink but not rm.
What you expected to happen:
How to reproduce it (as minimally and precisely as possible):

Anything else we need to know?:
Environment:
kubectl: Client Version: version.Info{Major:"1", Minor:"27", GitVersion:"v1.27.4", GitCommit:"fa3d7990104d7c1f16943a67f11b154b71f6a132", GitTreeState:"clean", BuildDate:"2023-07-19T12:20:54Z", GoVersion:"go1.20.6", Compiler:"gc", Platform:"linux/arm64"} Kustomize Version: v5.0.1
Using MacOS 13.4.1 with Docker. Running commands in an ubuntu container in Docker with a non-root user.

The workaround is to not work in a mounted filesystem, e.g. mkdir /tmp/workdir.
This is probably a bug in the Docker host-mounted filesystem.
But, can anyone provide insight into what is happening in the code? What could be causing this problem?
And does it make sense to support this use case in kubectl?


InfluxDB storage as fields

I have going deeper in influxDB database (which is impressive) and I have noticed that we are storing each OPC tag as independent measurement. As I have several machines I would like to know if it would be possible to store a group of measurements as fields instead of measurements. Actually I am clasifying the measurements thanks to tag values but it would be good to have all the sensors of each machine under the same measurement "box" and treated as fields. I don't know if I have explained properly.
Thanks

I interpreted this differently, and it is a use case I'm interested as well: for a machine I collect a set of data at the same timestamp: i would like to be able to save them in the same record in the same measurement, as different fields, for instance
time tags1, tag2, tag3 field1 field2 field3
currently the configuration allows for multiple tag, but not for multiple fields.
The polled configuration, as it reads values from opc ua at a predeterined rate could do this, while this does not make sense in the "subscribe/monitor" configuration.


[WIP] upgrade distroless-iptables image to fix CVE

Opened issue to keep track: https://github.com/kubernetes/release/issues/3450


X-Forwarded-User not set with Keycloak as provider

I'm using traefik-forward-auth in Auth host mode behind Traefik v2, and I'd like to get the logged in user inside the X-Forwarded-User header.
This works fine when I use Google as a provider, but since i switched to a Keycloak instance, the X-Forwarded-User header doesn't get set anymore, it appears empty. I don't know if I'm missing a configuration on the side of Keycloak, which has a minimal setup (following this guide)
Traefik middleware configuration:
[http.middlewares]
  [http.middlewares.forward-auth.forwardAuth]
    address="http://traefik-forward-auth:4181"
    trustForwardHeader= true
    authResponseHeaders= ["X-Forwarded-User"]

traefik-forward-auth log when a user logs in
traefik-forward-auth_1  | time="2020-05-22T12:26:50Z" level=info msg="Listening on :4181"
traefik-forward-auth_1  | time="2020-05-22T12:27:05Z" level=debug msg="Authenticating request" headers="map[Accept:[text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9] Accept-Encoding:[gzip, deflate, br] Accept-Language:[en-GB,en-US;q=0.9,en;q=0.8] Purpose:[prefetch] Sec-Fetch-Dest:[document] Sec-Fetch-Mode:[navigate] Sec-Fetch-Site:[none] Sec-Fetch-User:[?1] Upgrade-Insecure-Requests:[1] User-Agent:[Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36] X-Forwarded-For:[77.***.***.***] X-Forwarded-Host:[mydomain.example.com] X-Forwarded-Method:[GET] X-Forwarded-Port:[443] X-Forwarded-Proto:[https] X-Forwarded-Server:[616fbecef24e] X-Forwarded-Uri:[/] X-Real-Ip:[77.***.***.***]]" rule=default source_ip=77.***.***.***
traefik-forward-auth_1  | time="2020-05-22T12:27:05Z" level=debug msg="Set CSRF cookie and redirecting to google login" source_ip=77.***.***.***
traefik-forward-auth_1  | time="2020-05-22T12:27:05Z" level=debug msg=Done source_ip=77.***.***.***
traefik-forward-auth_1  | time="2020-05-22T12:27:15Z" level=debug msg="Handling callback" headers="map[Accept:[text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9] Accept-Encoding:[gzip, deflate, br] Accept-Language:[en-GB,en-US;q=0.9,en;q=0.8] Cache-Control:[max-age=0] Cookie:[_forward_auth_csrf=78f0639795c31e14eabaea183607d373] Referer:[https://keycloak.example.com/auth/realms/master/protocol/openid-connect/auth?client_id=forward-auth&redirect_uri=https%3A%2F%2Fauth.example.com%2F_oauth&response_type=code&scope=openid+profile+email&state=78f0639795c31e14eabaea183607d373%3Aoidc%3Ahttps%3A%2F%2Fmydomain.example.com%2F] Sec-Fetch-Dest:[document] Sec-Fetch-Mode:[navigate] Sec-Fetch-Site:[same-site] Sec-Fetch-User:[?1] Upgrade-Insecure-Requests:[1] User-Agent:[Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36] X-Forwarded-For:[77.***.***.***] X-Forwarded-Host:[auth.example.com] X-Forwarded-Method:[GET] X-Forwarded-Port:[443] X-Forwarded-Proto:[https] X-Forwarded-Server:[616fbecef24e] X-Forwarded-Uri:[/_oauth?state=78f0639795c31e14eabaea183607d373%3Aoidc%3Ahttps%3A%2F%2Fmydomain.example.com%2F&session_state=82f00673-b94f-4a35-a950-9333d995f353&code=1d983a89-98ff-4c6a-beba-d8b879282694.82f00673-b94f-4a35-a950-9333d995f353.23ae06a9-88cb-436d-9862-af9f78d12da6] X-Real-Ip:[77.***.***.***]]" rule=default source_ip=77.***.***.***
traefik-forward-auth_1  | time="2020-05-22T12:27:15Z" level=info msg="Generated auth cookie" source_ip=77.***.***.*** user=
traefik-forward-auth_1  | time="2020-05-22T12:27:15Z" level=debug msg="Authenticating request" headers="map[Accept:[text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9] Accept-Encoding:[gzip, deflate, br] Accept-Language:[en-GB,en-US;q=0.9,en;q=0.8] Cache-Control:[max-age=0] Cookie:[_forward_auth=Z3QCAGKNuvQ0N9R6Dd0b-Z8PpOMKjLFli5***=|1590193635|] Referer:[https://keycloak.example.com/auth/realms/master/protocol/openid-connect/auth?client_id=forward-auth&redirect_uri=https%3A%2F%2Fauth.example.com%2F_oauth&response_type=code&scope=openid+profile+email&state=78f0639795c31e14eabaea183607d373%3Aoidc%3Ahttps%3A%2F%2Fmydomain.example.com%2F] Sec-Fetch-Dest:[document] Sec-Fetch-Mode:[navigate] Sec-Fetch-Site:[same-site] Sec-Fetch-User:[?1] Upgrade-Insecure-Requests:[1] User-Agent:[Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36] X-Forwarded-For:[77.***.***.***] X-Forwarded-Host:[mydomain.example.com] X-Forwarded-Method:[GET] X-Forwarded-Port:[443] X-Forwarded-Proto:[https] X-Forwarded-Server:[616fbecef24e] X-Forwarded-Uri:[/] X-Real-Ip:[77.***.***.***]]" rule=default source_ip=77.***.***.***
traefik-forward-auth_1  | time="2020-05-22T12:27:15Z" level=debug msg="Allowing valid request " source_ip=77.***.***.***
traefik-forward-auth_1  | time="2020-05-22T12:27:15Z" level=debug msg="Authenticating request" headers="map[Accept:[image/webp,image/apng,image/*,*/*;q=0.8] Accept-Encoding:[gzip, deflate, br] Accept-Language:[en-GB,en-US;q=0.9,en;q=0.8] Cookie:[_forward_auth=Z3QCAGKNuvQ0N9R6Dd0b-Z8PpOMKjLFli5***=|1590193635|] Referer:[https://mydomain.example.com/] Sec-Fetch-Dest:[empty] Sec-Fetch-Mode:[no-cors] Sec-Fetch-Site:[same-origin] User-Agent:[Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36] X-Forwarded-For:[77.***.***.***] X-Forwarded-Host:[mydomain.example.com] X-Forwarded-Method:[GET] X-Forwarded-Port:[443] X-Forwarded-Proto:[https] X-Forwarded-Server:[616fbecef24e] X-Forwarded-Uri:[/favicon.ico] X-Real-Ip:[77.***.***.***]]" rule=default source_ip=77.***.***.***
traefik-forward-auth_1  | time="2020-05-22T12:27:15Z" level=debug msg="Allowing valid request " source_ip=77.***.***.***

Resulting headers on the protected application:
...
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: same-site
Sec-Fetch-User: ?1
Upgrade-Insecure-Requests: 1
X-Forwarded-For: 77.***.***.***
X-Forwarded-Host: mydomain.example.com
X-Forwarded-Port: 443
X-Forwarded-Proto: https
X-Forwarded-Server: 616fbecef24e
X-Forwarded-User:
X-Real-Ip: 77.***.***.***

The X-Forwarded-User is read from the "email" claim here: https://github.com/thomseddon/traefik-forward-auth/blob/master/internal/provider/oidc.go#L96
It's not immediately obvious to me, looking at the keycloak docs, if this is enabled by default or if it will require some work on your side - it looks like a number of people seem to be using keycloak, so it would be good to add this to the docs if you can figure it out from there?

I see, important detail that the user is read from the email address (I'm guessing it stems from the Google integration).
If I set an email address on the user in Keycloak, the X-Forwarded-User header is correctly set to that email, as you'd expect.

BTW: In the Keycloak admin console, you can change this setting under Client Scopes -> email under "Mappings". If you map the email property to "username" instead of "email", that will get used for the claim

Great, I'm glad there's a good workaround for keycloak - I'll dig this back up when I'm adding specific keycloak docs in the future!

Thank you, @Excape, for your workaround.

BTW: In the Keycloak admin console, you can change this setting under Client Scopes -> email under "Mappings". If you map the email property to "username" instead of "email", that will get used for the claim

To elaborate on that, for use in docs:

Remove the email scope from Assigned Default Client Scopes under the Client Scopes tab of your Keycloak client.
Create a new mapper under the Mappers tab of your Keycloak client with the following details:

Name: email
Mapper Type: User Property
Property: username
Token Claim Name: email
Claim JSON Type: String

See that X-Forwarded-User is now your Keycloak username


Revert "Repo dependencies update / dev env"

Reverts Linkurious/lke-plugin-image-export#61

Can we remove this very outdated PR ?

what about the branch ?


Offline Local Startup - Possible missing configurations

Hi.
I hope this e-mail finds you well.
I'm a solutions architect from Iteris and my team and I are helping a customer to deploy an own instance from Falcon-Metrics Open Source.
I'm facing a few issues to start running the application locally.
The API repo does not have an example .ENV file, so I've been trying to discover a few required keys to be configured.
So far, I've reached a stage where the running the offline script is failing due this managed stages check:

I have tried the start:dev/dev script as well and it is failing in the same point:

Adding the appropriate treatment for null check, it brings a different error where the service instance is not defined:

I'd appreciate too much some help from Falcon-Metrics.

Hi @GuinaCosta,
Even though I am working on the same, could you let me know if this has been resolved? or can you share the env template?


[client,sdl] respect -decorations

Disable window borders if requested, fixes #9673

tested and works.

-decorations disables window title bar
+decorations (and leaving out) enables it


Filename too long

When trying to install this package for the first time, I get the following message:
System: Windows 10 64 bit, Julia 0.4.2
Package directory:
C:\Users\F.julia\v0.4
´´´´
INFO: Installing Vega v0.6.0
fatal: cannot create directory at 'assets/bower_components/vega/node_modules/bow
er/node_modules/update-notifier/node_modules/latest-version/node_modules/package
-json/node_modules/got/node_modules/duplexify/node_modules/end-of-stream/node_mo
dules/once/node_modules': Filename too long

Can you try Pkg.checkout("Vega") and tell me if it works? I saw this error in the AppVeyour tests and I think I fixed it on master, but since I don't use Windows I haven't tagged a new version yet.

Wow, that was quick!
I added the package by modifying the REQUIRE file. After removing it from REQUIRE and also deling the folder on disk, Pkg.checkout("Vega") returns "Vega is not a git repo".  Pkg.rm("Vega") returns "Removing Vega (unregistered)". Well, well.
So my package manager is a bit confused now, and I'm running Pkg.update. If Pkg.checkout still doesn't work, would you like me to use git directly, Pkg.checkout or Pkg.clone?

It sounds like your directory might be mangled beyond easy repair. It's probably easiest to delete the entire v0.4 folder, then use Pkg.add() to reinstall your packages.
Once you do that, Pkg.checkout("Vega") should work.

On Dec 30, 2015, at 1:45 PM, hustf<EMAIL_ADDRESS>wrote:
Wow, that was quick!
I added the package by modifying the REQUIRE file. After removing it from REQUIRE and also deling the folder on disk, Pkg.checkout("Vega") returns "Vega is not a git repo". Pkg.rm("Vega") returns "Removing Vega (unregistered)". Well, well.
So my package manager is a bit confused now, and I'm running Pkg.update. If Pkg.checkout still doesn't work, would you like me to use git directly, Pkg.checkout or Pkg.clone?
—
Reply to this email directly or view it on GitHub.

Quite possible. I'm exploring many different packages simultaneously. Probably not the best of ideas. But this may take some time and the package is already broken on Windows so don't let this refrain you from tagging...


zookeeper atomicput with flag

Please sign your commits following these rules:
https://github.com/moby/moby/blob/master/CONTRIBUTING.md#sign-your-work
The easiest way to do this is to amend the last commit:
$ git clone -b "master" git@github.com:sixiaobai/libkv.git somewhere
$ cd somewhere
$ git rebase -i HEAD~842354326776
editor opens
change each 'pick' to 'edit'
save the file and quit
$ git commit --amend -s --no-edit
$ git rebase --continue # and repeat the amend for each commit
$ git push -f

Amending updates the existing PR. You DO NOT need to open a new one.


Bug Fix #58 - SparkplugApplication Required Known Metrics

Solve issue mention in https://github.com/SeppPenner/SparkplugNet/issues/58
"The package internally validates incoming NBIRTH metrics with metrics saved in KnownMetricsStorage and does not fire the NodeBirthReceived and NodeDataReceived event if we give an empty metrics list to start the host application and later when the edge node publishes NBIRTH"

@SeppPenner Please review this PR on high priority as we are stuck in our development.

@all-contributors please add @adityashahazilen for tests and code


Quality of life improvement: make run.sh not run ff, if the build fails

If set -e is used, the script will not run build/fastfetch if the build failed.

Looks fine.


Add gitignore for Construct2 projects

Reasons for making this change:
Add the basic gitignore file for Construct2 projects due to it is becoming popular.
Links to documentation supporting these rule changes:
This tutorial on collaboration with svn has the necessary rules to apply it to git.
www.scirra.com/tutorials/537/how-to-collaborate-on-projects-with-svn
If this is a new template:

Link to application or project’s homepage: www.scirra.com/construct2

I'm going to close this out because the value of maintaining a template like this isn't clear to me.
@JAFS6 if you feel like this should still be a template listed here, please read the section about specialized templates and open a new pull request matching the new format.


Add Proxy for verifyIdToken method

Set proxy for easily like that $client->verifyIdToken($id_token,['proxy' => 'IP:PORT']

I signed it!


Audible "tick" is produced at the beginning (or end maybe?) of each note

Describe the bug
Definitely not a big deal, but figured I'd report it since I noticed it.  There is an audible "tick" is produced at the beginning (or end maybe?) of each note.  You can see it on a spectrogram but also hear it depending on the pitch, distortion, etc.
To reproduce

Run linuxwave -n 27 -o bass.wav
Run ffmpeg -i bass.wav -lavfi showspectrumpic=s=1920x1080:mode=separate spectrogram.png
View spectrogram.png

Expected behavior
A smooth transition between tones or notes
Screenshots / Logs

Software information

Operating system: ArchLinux 6.6.57-1-lts
Zig version: I don't know, I installed this from extra
Project version: 2.0

Additional context
This is a totally awesome project!  Thank you for making it!
It's possible this is unique to my machine.  I have only tested on one device.

As far as I can tell this seems to be caused by harsh transitions between each note because the waveforms intersect abruptly rather than decaying and overlapping with the next note.

Would love to hear it and compare it with my results if you can share it :)

Here's a file I generated.  There was some post processing on this one to resample, and get rid of the DC offset.  The original is included in the zip too:
bass_44100.wav.zip
post processing steps:
ffmpeg -i bass.wav -ac 1 -ar 44100 bass_44100.wav
wavegain -y bass_44100.wav

The tick is in the original too but none of my equipment plays nice with the DC offset so I have to post process to play them.
My friend sent me an interesting video about this issue and creating a window function to deal with it.  I was messing around with it but I don't quite have the understanding to implement anything yet.  https://youtu.be/PjKlMXhxtTM?si=JQPNJWQybmlZVTY5&t=742

bass_44100.wav.zip

Yeah I see. That's an issue that I was aware of but not able to fix so far :/ It's probably related to the encoding of the samples...

My friend sent me an interesting video about this issue and creating a window function to deal with it. I was messing around with it but I don't quite have the understanding to implement anything yet.

That's a good reference - your friend has a big brain!
I tried implementing the Hann window function in #38 - it makes things a bit better. But I think it can be improved. Can you take a look? 🙂

Thanks! I built that PR and tried it out.  It does get rid of the tick by fading down to zero between each note.  Unfortunately this has two impacts on the audio that may not be desirable:

It really changes the "vibe" lol.  The original sounds pretty cool, like you'd expect a robot from a 90s sci-fi movie to sound if you asked it to play you a song.  With the Hann window function it has a much different tone, something more mellow and I tend to fall into each pause.  This is subjective of course so this is only my opinion, just the first thing I noticed.
Both the normalizing filters I've tried on the hann version of the output fail to remove the DC offset.  They move the whole waveform down, but because the window function it self is offset it becomes "differently offset".  See the screenshot:

Here they are not normalized

These have both been normalized using tenacity's builtin normalizing filter with DC offset removal selected.

It may be that in order to implement a window function the offset will need to be removed first.  Sorry that this ended up being so complicated.
I tried playing with some of the constants in the function but couldn't find anything that improves the situation.

Thanks for sharing your findings. I 100% agree that the window function that I applied changes the vibe a lot. It definitely needs some tweaking and playing around.

It may be that in order to implement a window function the offset will need to be removed first. Sorry that this ended up being so complicated.

I'm not sure if I understood what you mean about DC offset fully. I'm not sure how that should be possible 🤔

I'm not sure if I understood what you mean about DC offset fully. I'm not sure how that should be possible 🤔

DC offset may be something requiring another github issue as it's not really related to this ticking sound, I just wasn't sure until now that it impacts the solution to the ticking.  I will try, with my limited understanding, to explain what I think is causing this, and the impacts of it:
DC offset or DC bias in audio means that mean value of the waveform is either above or below zero.  Since this term comes from analog circuits, and we are talking about sound over a speaker, we can think of the speaker at "rest" being zero.  When a correctly DC balanced sine wave (mean 0) is reproduced the speaker moves outwards from zero "rest" position to the maximum positive peak, and then inwards to the (negative) minimum peak of the sine wave, creating the pressure changes we perceive as sound.
The audio produced by this program has an entirely positive DC bias, so the entire wave form, both the peak and the trough of the sine wave is above zero.  So when played over a speaker the speaker is forced outwards at all times, effectively moving the zero position to half the wave height, and requiring the amplifier to hold the speaker in an outward position at all times, never passing the rest position.
The reason I think this is an issue here is because the Hann function is attempting to taper the wave to zero, but because zero is actually the trough of the wave the mean ends up being positive still.  So when one tries to apply a zero mean (normalize filter with DC offset correction) the whole waveform shifts down so that the mean is zero, but the waveform is shaped like a positive hump, or hill, so that type of simple correction doesn't work correctly and part of the wave is still offset for each note.
Here I've taken a screenshot of the Hann function on the top, the output of the stable version of the program in the middle, and a waveform with no DC offset on the bottom.  You can see on the scale on the left that the rest position is offset by the wave height for the first two.

Now, I'm pretty sure that this is happening because when you write out each note you somehow only end up with positive numbers for the variable that stores the waveform, I have stared at the gen.zig function for longer than I care to admit and I cant figure it out, but this type of programming, as well as this language specifically, is not my area of expertise.
I hope you don't mind that this got a little long.  I had a lot of fun researching all this, and I'd really like to keep trying to understand how to improve it.  Thanks for reading! =] .  And no worries if you have other priorities and don't want to continue diving into this.

So when played over a speaker the speaker is forced outwards at all times, effectively moving the zero position to half the wave height, and requiring the amplifier to hold the speaker in an outward position at all times, never passing the rest position.

That's super interesting. I always thought there is something wrong with the generated file when I play it on a speaker but was not able to pinpoint it. Maybe I felt that happening somehow 🤔

Now, I'm pretty sure that this is happening because when you write out each note you somehow only end up with positive numbers for the variable that stores the waveform, I have stared at the gen.zig Generator function for longer than I care to admit and I cant figure it out, but this type of programming, as well as this language specifically, is not my area of expertise.

So when played over a speaker the speaker is forced outwards at all times, effectively moving the zero position to half the wave height, and requiring the amplifier to hold the speaker in an outward position at all times, never passing the rest position.

That's super interesting. I always thought there is something wrong with the generated file when I play it on a speaker but was not able to pinpoint it. Maybe I felt that happening somehow 🤔

Now, I'm pretty sure that this is happening because when you write out each note you somehow only end up with positive numbers for the variable that stores the waveform, I have stared at the gen.zig Generator function for longer than I care to admit and I cant figure it out, but this type of programming, as well as this language specifically, is not my area of expertise.

Yes, IIRC we always end up with positive values and encode them as notes using the equal temperament. The generate function in gen.zig definitely needs more explanation and I'm happy to walk you through the code if you have any specific questions.  I had a lot of fun researching all this, and I'd really like to keep trying to understand how to improve it. Thanks for reading! =] . And no worries if you have other priorities and don't want to continue diving into this.

No worries at all! I hope you don't mind my disappearances on different intervals though.
Btw do you have a blog? I would love to read more about it if you go ahead and put up a deep dive article there. Maybe something in this format.
As for fixing this issue, I think we need to dive a bit more into the generate function and figure out what's happening in there I guess.

Don't mind the professional artwork.
If the program knew where a note transition would be placed slightly ahead of time, a short low-pass filter with a high cutoff frequency (only filtering the tick) could soften the wave transition. Ideally, the cutoff freq should lower (or attenuation should rise), come to a min. at note transition (or attenuation should come to a max.), and rise again (or attenuation should lower) until it's the original waveform again, all within some milliseconds.
 But! Computational cost for this shouldn't be high (but don't quote me on that) as there are digital audio workstation software that can process several low-pass filters in near-real-time.


Implement device disable (simple)

Here is simple implementation of device disabling. In continue of https://github.com/tananaev/traccar/pull/3697
Device is basically hidden from all users except admins.
Incoming positions might be stored or not in DB. (database.storeDisabled)

Oh, sorry, removed. Initially it was in other class.

Merged, thanks.


Calculating num replicas for DaemonSets should take into account affinity

/area clusterloader
/label help-wanted

I can help it, Can I assign it to me? @mm4tt

Sure, would be great if you could take it :)
The purpose of this issue is to address these TODOs:

https://github.com/kubernetes/perf-tests/blob/7d226a65336414a2d23141d6cc09f6ac4e4d09f3/clusterloader2/pkg/measurement/util/runtimeobjects/runtimeobjects.go#L294
https://github.com/kubernetes/perf-tests/blob/7d226a65336414a2d23141d6cc09f6ac4e4d09f3/clusterloader2/pkg/measurement/util/runtimeobjects/runtimeobjects.go#L342

/assign

This is now fixed.


[Snyk] Upgrade @pnpm/dependency-path from 5.1.1 to 5.1.2

Snyk has created this PR to upgrade @pnpm/dependency-path from 5.1.1 to 5.1.2.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 1 version ahead of your current version.

The recommended version was released on 22 days ago.

Issues fixed by the recommended upgrade:

Issue
Score
Exploit Maturity

Regular Expression Denial of Service (ReDoS)SNYK-JS-SEMVER-3247795
159
Proof of Concept

Arbitrary Code ExecutionSNYK-JS-JSYAML-174129
159
No Known Exploit

Regular Expression Denial of Service (ReDoS)SNYK-JS-GLOBPARENT-1016905
159
Proof of Concept

Regular Expression Denial of Service (ReDoS)SNYK-JS-HOSTEDGITINFO-1088355
159
Proof of Concept

Denial of Service (DoS)SNYK-JS-JSYAML-174117
159
No Known Exploit

Code Execution due to Deserializationnpm:js-yaml:20130623
159
Mature

Information ExposureSNYK-JS-NODEFETCH-2342118
159
No Known Exploit

Denial of ServiceSNYK-JS-NODEFETCH-674311
159
No Known Exploit

[!IMPORTANT]

Check the changes in this PR to ensure they won't cause issues with your project.
This PR was automatically created by Snyk using the credentials of a real user.
Max score is 1000. Note that the real score may have changed since the PR was raised.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:

🧐 View latest project report
📜 Customise PR templates
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

@dependabot recreate

@dependabot recreate


delaycompress to fix file size changed error

To fix FTI-3240.

 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.Zachary Hu seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

Duplicate of https://github.com/Kong/kong-build-tools/pull/450.


Test hardening

@vancem During local testing I observed a couple issues which could cause test failures in the StackWindowTests. One of these, a reliance on Keyboard.FocusedElement, represents a true race condition in the product that is fixed by this.
:memo: I was not able to specifically reproduce the hang seen during testing, but it's possible it was some side effect of the test failing due to the above case.

Codecov Report

Merging #291 into master will decrease coverage by <.01%.
The diff coverage is 69.23%.

@@            Coverage Diff             @@
##           master     #291      +/-   ##
==========================================
- Coverage   24.36%   24.36%   -0.01%
==========================================
  Files         199      199
  Lines      112475   112467       -8
  Branches    11228    11228
==========================================
- Hits        27403    27397       -6
+ Misses      85045    85043       -2
  Partials       27       27

Flag
Coverage Δ

#2015
24.35% <69.23%> (-0.01%)
:arrow_down:

#2017
24.36% <69.23%> (-0.01%)
:arrow_down:

#Debug
15.81% <15.38%> (-0.01%)
:arrow_down:

#Release
14.89% <15.38%> (ø)
:arrow_up:

Impacted Files
Coverage Δ

src/PerfView.Tests/Utilities/PerfViewTestBase.cs
100% <100%> (ø)
:arrow_up:

src/PerfView/StackViewer/StackWindow.xaml.cs
34.19% <55.55%> (-0.2%)
:arrow_down:

src/PerfView/GuiUtilities/GuiUtilities.cs
23.56% <0%> (-0.53%)
:arrow_down:

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 9dd9b1a...79712c8. Read the comment docs.


ElementReference only added to rendered markup during first render

After further investigation, it looks as if this issue is not solvable as the RenderTreeDiffBuilder doesn't include the element reference id during later renders.
The logic in Blazor assumes that the DOM tree is not replaced at each render, but simply updated.
This will probably be easily solvable with #48.

This seems to have been solved.


expiringAuthTokenRefreshPeriod and passing a token to Iterable.setEmail(email, token) don't work on iOS

Hi Iterable Folks!
Thanks for your efforts to make this SDK better.
Recently, I discovered these issues within this SDK:
JWT token refreshing becomes inactive once I manually input the token into Iterable.setEmail(email, token). Even when I assign a specific value to config.expiringAuthTokenRefreshPeriod, this setting is disregarded.
I also noticed that the Iterable SDK might initiate registerDeviceToken before the JWT token is prepared. To address this, I attempted to manually provide a pre-fetched JWT token upon user change. Generally triggering registerDeviceToken or disableDevice without a valid JWT doesn't make any sense so it shouldn't be possible.
Additionally, I identified another issue where, occasionally, the first request made after the Iterable SDK retrieves a new JWT token still employs the outdated JWT token from the previous request.
And the last issue detected is that authHandler can be triggered after the app logged out (when the app is logged out the API used for generating the JWT token will return 401 error). It would be much easier to be sure that when we set Iterable.setEmail(null) authHandler won't be immediately triggered.
The below recording shows that there is no auto JWT token request from SDK which is set to 5 minutes:
https://recordit.co/AJtf969F1v
Lib versions:
"@iterable/react-native-sdk": "1.3.13",
"react-native": "0.70.13",
"iterableSdkVersion": "6.4.16",
OS: iOS 16.4
A recording was made in the simulator but it works exactly the same on a real device.

Thanks for sharing this @buuuudzik-- quick clarity check, could you please confirm whether you're replacing the valid auth token before setting the email to null? If the authToken is expired, it's possible that the API won't work as expected.

@jena-chakour Yes, I always kept the value of the previous email in a function to retrieve the token needed for the disableDevice query.
Currently, we are using the default JWT token refresh, which sometimes can use an expired token in the registerDeviceToken query and can ask for a refreshed token too late when the application is already logged out, and this query returns 401.
It would probably be good to add information in the documentation that, when manually passing the JWT token in the Iterable.setEmail(email, token) method, then the config.authHandler stops working. Initially, I wanted to supplement the default solution with manual calls to Iterable.setEmail(email, token) just before logging out and just after logging in. I didn't immediately notice that the default refresh is disabled despite setting config.authHandler, but also when I manually call Iterable.setEmail(email, token).
When manually using Iterable.setEmail(email, token), I noticed that the SDK sometimes still uses the previous token for the first registerDeviceToken query. Probably there is a race condition somewhere in the SDK when changing the token and sending registerDeviceToken and disableDevice queries.
Currently we've changed the implementation and we rely on SDK refetching mechanism which sometimes can fetch JWT token too late which in our app can produce 401 errors.
But when I've tried to patch it with a manual

Thanks @buuuudzik, bringing this back to our team and will update further here as we have findings or followup questions to share-- let me know if any changes or questions come up on your side

Hey @buuuudzik we will be making a change to remove JWT authentication for the disableDevice endpoint; will follow up here when that it released!

Hey @buuuudzik were you able to make SDK register the token in iOS after calling Iterable.setEmail?
Is there some changes I need to make in native code like appdelegate.mm?


TF display segfault (openni_tracker related)

I'm attempting to play a bag file captured from openni_tracker (skeleton tracking using the kinect), with an additional (custom) frame meant to provide a global reference. The custom frame is produced using a static transform publisher started in the launch file. During playback, RViz crashes if the TF plugin is loaded. If I don't load the TF plugin, RViz is fine; other nodes I'm running that do transforms between global and other frames also seem happy.
The crash can be reproduced by launching the following (note that I left gdb in there):
<launch>
  <param name="use_sim_time" type="bool" value="true" />
  <node pkg="tf" type="static_transform_publisher" name="depth_2_global" args="3.0 0.25 0 0 0 0 /global /camera_link 100"/>
  <node pkg="rviz" name="rviz" type="rviz" output="screen" launch-prefix="gdb -ex run --args" args="-d tf_debug.rviz" />
</launch>

then playing a bag file that recorded the /tf topic produced by openni_tracker:
rosbag play --clock skeleton.bag

I'm not sure I got the static transform correct, which is why I was attempting to view the TF frames. Since I can't post the bag file and the .rviz file is a bit unwieldy, all three files (gdb_rviz.launch, skeleton.bag.tar.gz, and tf_debug.rviz) are available at: https://personal.traclabs.com/~jkramer3/.
The crash happens about 8 seconds in, with the following gdb backtrace:
Program received signal SIGSEGV, Segmentation fault.
0x0000000000000000 in ?? ()
(gdb) bt
#0  0x0000000000000000 in ?? ()
#1  0x00007ffff7b03221 in rviz::Property::Property(QString const&, QVariant, QString const&, rviz::Property*, char const*, QObject*) () from /opt/ros/hydro/lib/librviz.so
#2  0x00007fffb03d64f2 in rviz::TFDisplay::updateFrame(rviz::FrameInfo*) ()
   from /opt/ros/hydro/lib/libdefault_plugin.so
#3  0x00007fffb03d8189 in rviz::TFDisplay::createFrame(std::string const&) ()
   from /opt/ros/hydro/lib/libdefault_plugin.so
#4  0x00007fffb03d875e in rviz::TFDisplay::updateFrames() () from /opt/ros/hydro/lib/libdefault_plugin.so
#5  0x00007fffb03d8826 in rviz::TFDisplay::update(float, float) () from /opt/ros/hydro/lib/libdefault_plugin.so
#6  0x00007ffff7aa4a91 in rviz::DisplayGroup::update(float, float) () from /opt/ros/hydro/lib/librviz.so
#7  0x00007ffff7b53749 in rviz::VisualizationManager::onUpdate() () from /opt/ros/hydro/lib/librviz.so
#8  0x00007ffff2c17281 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#9  0x00007ffff2c1c179 in QObject::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#10 0x00007ffff6ec7894 in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#11 0x00007ffff6ecc713 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#12 0x00007ffff2c02e9c in QCoreApplication::notifyInternal(QObject*, QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#13 0x00007ffff2c341f2 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#14 0x00007ffff2c31c0d in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#15 0x00007ffff1987d13 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#16 0x00007ffff1988060 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#17 0x00007ffff1988124 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#18 0x00007ffff2c32426 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#19 0x00007ffff6f6fd9e in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#20 0x00007ffff2c01c82 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#21 0x00007ffff2c01ed7 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#22 0x00007ffff2c06f67 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#23 0x0000000000400b0c in main ()

I'm running hydro on Ubuntu 12.04, everything up to date as of today.

I found that https://github.com/ros-visualization/rviz/pull/926 solved this issue on my machine using the skeleton bag example in the OP. Please comment if anyone still has a problem with this.
Unfortunately it will only go out into Indigo and Jade since Hydro is eol and I cannot make new releases of it.

Hi wjwwood,
I'm getting into the same segfault on rviz whenever I add a new tf. This is the debug output:
Program received signal SIGSEGV, Segmentation fault.
0x00007fff9d3eb882 in rviz::TFDisplay::updateFrame(rviz::FrameInfo*) ()
from /opt/ros/indigo/lib/libdefault_plugin.so
(gdb) backtrace
#0  0x00007fff9d3eb882 in rviz::TFDisplay::updateFrame(rviz::FrameInfo*) ()
from /opt/ros/indigo/lib/libdefault_plugin.so
#1  0x00007fff9d3ecf57 in rviz::TFDisplay::updateFrames() ()
from /opt/ros/indigo/lib/libdefault_plugin.so
#2  0x00007fff9d3ed1d6 in rviz::TFDisplay::update(float, float) ()
from /opt/ros/indigo/lib/libdefault_plugin.so
#3  0x00007ffff7aa5a12 in rviz::DisplayGroup::update(float, float) ()
from /opt/ros/indigo/lib/librviz.so
#4  0x00007ffff7b47f5e in rviz::VisualizationManager::onUpdate() ()
from /opt/ros/indigo/lib/librviz.so
#5  0x00007ffff2e2187a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) ()
from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#6  0x00007ffff2e25a31 in QObject::event(QEvent*) ()
from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
I'm sorry, I don't know how to extract info about the exact line of the error, and I saw that the updateFrame function is quite huge xD


How to control data items externally?

Hello. I've got an external function which loads table items. I need to implement following:

Recieve events on page / order change - something like tableParams.onParamsChange(callback)
An ability to set array of displayed items - something like tableParams.setData(data)
An ability to set total items count - this can be done by tableParams.total(x)

I'd like to keep this project, there are many feature and improvement we could add. are u active?


⚠ Bofrost.de has degraded performance

In 805a9d6, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1229 ms

Resolved: Bofrost.de performance has improved in 37d975c after 6 minutes.


Suggestion regarding badges

I would like to see a badge (of any type) require that the data be available without having to provide any personal information. I have seen some badges awarded where you must provide personal details such as name, organisation and email address as a prerequisite to obtaining the data and I do not feel that this is in the spirit of ODI.
The requirement for bronze states "BRONZE: data is openly licensed, available with no restrictions, accessible and legally reusable.". I would regard the providing of any data as a prerequisite for obtaining the data a restriction.

Good point. I understand that requiring contact information is to ensure that there is clear stewardship of the dataset and that the licensing is clear. @ldodds do you recall whether that was the rationale?


feat(k8s): add support to update SSL Certificates

Codecov Report

Merging #15 into master will increase coverage by 0.05%.
The diff coverage is 75%.

@@            Coverage Diff             @@
##           master      #15      +/-   ##
==========================================
+ Coverage   50.14%   50.19%   +0.05%
==========================================
  Files          27       27
  Lines        1751     1753       +2
==========================================
+ Hits          878      880       +2
  Misses        762      762
  Partials      111      111

Impacted Files
Coverage Δ

internal/ingress/sort_ingress.go
100% <ø> (ø)
:arrow_up:

cli/ingress-controller/main.go
21.38% <0%> (ø)
:arrow_up:

internal/net/ssl/ssl.go
41.45% <100%> (+0.5%)
:arrow_up:

internal/ingress/controller/store/backend_ssl.go
42.04% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Campaign | Doors: Display focus areas

As an app user, I want to see the focus areas defined for door-to-door campaigning shown on the map in order to most efficiently canvas these.
Source of the routes & areas:

Until October 2024: Wahlatlas
Now: the Wahlatlas' successor in development by Pollion

Acceptance criteria:

[ ] Focus area layer can be activated / deactivated #268
[ ] Focus areas colors: #284
[ ] Design and information associated with these layers and individual elements are displayed in the App for reference and are "read only"

Design:

Prototype: https://www.figma.com/proto/7wE0Iveas3GGb8u4oL0714/App-Design-Mitglieder-App-(1)-(Copy)?node-id=2685-14759&t=b8swD5IOAFfZ0OSo-1&starting-point-node-id=2425%3A17429
Pollion reference: https://github.com/pollion/sunflower-app/issues/77

Pollion reference: https://github.com/pollion/sunflower-app/issues/77

Review issue description and move to "Ready for Development". @leagerndt @JuliaFreitagBGSt

issue is reviewed, rfd


building packages

rpm and deb.

Coverage decreased (-0.53%) to 50.65% when pulling dfdc3442da3d1e661c3bbd10d8f2ee133e413875 on feature/build-rpm into 9903c711266e7995d1601b348b9ffc604eb9e2bc on master.


Fix GitHub action workflows/jobs naming

Changes

The naming of workflows/jobs are quite inconsitent
This attempts to make them clearer by grouping similar jobs into a worflow with the same name

Checklist

[ ] Attach this pull request to the appropriate card in Trello.
[ ] Update the CHANGELOG.md if needed.

If this all looks fine, I'll change the branch settings so that they are all required (and remove the test requirement)


⚠ Bofrost.de has degraded performance

In f60ad06, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1937 ms

Resolved: Bofrost.de performance has improved in 786d073 after 1 hour, 53 minutes.


[MINOR] Move to ubuntu-latest for Azure CI

Tips

Thank you very much for contributing to Apache Hudi.
Please review https://hudi.apache.org/contributing.html before opening a pull request.

What is the purpose of the pull request
(For example: This pull request adds quick-start document.)
Brief change log
(for example:)

Modify AnnotationLocation checkstyle rule in checkstyle.xml

Verify this pull request
(Please pick either of the following options)
This pull request is a trivial rework / code cleanup without any test coverage.
(or)
This pull request is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
(example:)

Added integration tests for end-to-end.
Added HoodieClientWriteTest to verify the change.
Manually verified the change by running a job locally.

Committer checklist

[ ] Has a corresponding JIRA in PR title & commit

[ ] Commit message is descriptive of the change

[ ] CI is green

[ ] Necessary doc changes done or have another open PR

[ ] For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.

Downloaded from Maven Central: https://repo.maven.apache.org/maven2/org/scala-lang/scala-library/2.11.6/scala-library-2.11.6.jar (5.6 MB at 61 MB/s)
[ERROR] error: java.lang.NoClassDefFoundError: javax/tools/ToolProvider
[INFO] 	at scala.reflect.io.JavaToolsPlatformArchive.iterator(ZipArchive.scala:301)
[INFO] 	at scala.collection.IterableLike$class.foreach(IterableLike.scala:72)
[INFO] 	at scala.reflect.io.AbstractFile.foreach(AbstractFile.scala:92)
[INFO] 	at scala.tools.nsc.util.DirectoryClassPath.traverse(ClassPath.scala:277)
[INFO] 	at scala.tools.nsc.util.DirectoryClassPath.x$15$lzycompute(ClassPath.scala:299)
[INFO] 	at scala.tools.nsc.util.DirectoryClassPath.x$15(ClassPath.scala:299)
[INFO] 	at scala.tools.nsc.util.DirectoryClassPath.packages$lzycompute(ClassPath.scala:299)


Register Datalog variables bound in let patterns

This fixes #13

@segeljakt @domenicquirl Would appreciate any feedback on this, or if you have a test to add!

@segeljakt @domenicquirl Would appreciate any feedback on this, or if you have a test to add!

Hi, thank you for fixing it so fast! 👍1 I'll try to send a PR with a test or example

Hi, thank you for fixing it so fast! 👍1 I'll try to send a PR with a test or example


refactoring

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

Comparison is base (63875fa) 81.76% compared to head (4d559db) 81.79%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #64      +/-   ##
==========================================
+ Coverage   81.76%   81.79%   +0.02%
==========================================
  Files          56       56
  Lines        7452     7452
==========================================
+ Hits         6093     6095       +2
+ Misses       1359     1357       -2

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


Question/Request: IOS17 and Apple Airtags

Since IOS17 is public beta it´s now possible to share Airtags.
Would it be possible to integrate them into iCloudv3 ?
Is there anything planned on your side?
cheers
Dirk

AirTag data is not provided by Apple so probably not until they do.


Add blog post on open source course material

Discusses the importance of reusability and Git for the source - and
what the difficulties are.
As usual, an early draft.  Please make direct changes and add
yourself to authers.
I have a feeling that there is more to add here than usual (as in,
there is more to say that I'm not saying yet).  Actually, now that I
think about it, maybe we should do the "collaborative course"
lessons first.

Again a great post! One thing that could be added is that we (you) have worked hard to make preview of changes easier which lowers barrier to contribute. In future we can try to make that even easier (with bots commenting on PRs).

Also for this one: I don't want this to get forgotten but I also don't really have the time to drive this but if it helps to reserve 45 mins or less to live-blog this together so that we can publish it, I would be happy to.

Should we have a writing session on this?


Feature request: Add Canada - Calgary region to the Lambda Layers Deployment

Use case
AWS recently launched new region:
Canada (Calgary) - ca-west-1
https://aws.amazon.com/blogs/aws/the-aws-canada-west-calgary-region-is-now-available/
This region doesn't support arm64, so we need to add in exception list.
Solution/User Experience
Deploy Lambda Layers to these new region.
Alternative solutions
No response
Acknowledgment

[X] This feature request meets Powertools for AWS Lambda (Python) Tenets
[X] Should this be considered in other Powertools for AWS Lambda languages? i.e. Java, TypeScript, and .NET

CompatibleArchitectures are not supported in ca-west-1

Note: ca-west-1 currently does not support arm64 lambdas


Auto imports causing excessive CPU and bad perf

Reported by user on Twitter; see https://twitter.com/alexdreptu/status/1517573258685657092
Environment data
To find your version, you can either:

Open the VS Code extensions panel. Locate Pylance from the list of installed extensions. The version appears next to the name.

Select "View: Toggle Output" from the command palette (Ctrl+Shift+P on Windows/Linux, Command+Shift+P on macOS), then select "Python Language Server" in the dropdown on the right. Look for the line Pylance Language Server version X in the console.

Language Server version: XXX

OS and version: XXX

Python version (& distribution if applicable, e.g. Anaconda): XXX

Logs
Enable trace logging by adding "python.analysis.logLevel": "Trace" to your settings.json configuration file.
Adding this will cause a large amount of info to be printed to the Python output panel. This should not be left long term, as the performance impact of the logging is significant.

if user is not interested in using auto import, user might want to disable indexing as well to get even more perf
"python.analysis.indexing": false.
this will degrade "add import" code actions, and workspace symbol search perf as well, but if machine is having problem with auto import, those other features will probably have similar issue.

Closing old issue. If this is still a problem, please reopen with the information requested. thanks


Some load_pgn updates

The use case of this is to allow loading of more annotated PGNs. For example:
1. d4 d5 2. c4 e6 3. e3 Nf6 4. a3 c6 5. Nf3 Bd6 6. cxd5?!
(6. Bd3 O-O 7. O-O dxc4 8. Bxc4 c5 9. Nc3 Nc6 10. dxc5 Bxc5)
6... cxd5 7. Bd3 a6

Closing this in favor of #89


XKCD 961 Eternal Flame animated gif

https://xkcd.com/961/
The image is an animated gif, but is renamed with .jpg extension when downloaded.

Hey @antonc42
Looks like this is an edge case. Will take a look over the weekend. If
someone is up to it. There's not much to patch here. So feel free to make a
PR
Cheers!
On May 26, 2017 8:53 PM, "antonc42"<EMAIL_ADDRESS>wrote:

https://xkcd.com/961/
The image is an animated gif, but is renamed with .jpg extension when
downloaded.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/prodicus/xkcd-dl/issues/37, or mute the thread
https://github.com/notifications/unsubscribe-auth/AEdMBkTSaxIDws-EcQlmYyfzFohwscUfks5r9u5hgaJpZM4Nnu2z
.

After looking, it does seem to be a simple fix. I submitted a PR #38. I tested it by downloading all the comics again and it found a few more gifs than just 961. There was also 1116, 1264, and 1331.

Good work @antonc42 👍
Thanks for the contribution. Will update the pip module in a while

No problem! Thank you for the awesome app!

I am glad you liked it @antonc42 :)
Do you use it quite frequently?
Regards,
Tasdik
[image: http://]tasdikrahman.me
http://tasdikrahman.me/
[image: https://in.linkedin.com/in/tasdikrahman]
https://in.linkedin.com/in/tasdikrahman http://github.com/prodicus
http://www.quora.com/Tasdik-Rahman
https://plus.google.com/+TasdikRahman https://twitter.com/tasdikrahman
On Sat, May 27, 2017 at 9:22 PM, antonc42<EMAIL_ADDRESS>wrote:

No problem! Thank you for the awesome app!
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/prodicus/xkcd-dl/issues/37#issuecomment-304460229,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEdMBnrNJAlzOvHUI7yi1eY7UF405jPlks5r-EbOgaJpZM4Nnu2z
.

I just discovered it recently. I'm using it to create a screensaver slideshow of the comics.

Ah. That's nice. Please keep me posted on this project of yours. Would love to have a look at it.
Cheers!

There's not really much to it. I use your app to download all the comics to a directory and then point my screensaver at it. The only other thing I did was to put the alt text at the bottom of the image. I just do that with a little bash script. https://gist.github.com/antonc42/01742c560eb741b4ca543c966fe22cc0

Looks good man. @antonc42
Would love to put your project on the README.md under a title like projects using xkcd-dl if you don't mind

Sure, fine by me.


Manifest updates for the NonAdminBackup PR 108

Updates to the manifests required by the NAB PR:
https://github.com/migtools/oadp-non-admin/pull/108
Why the changes were made
To allow PR   https://github.com/migtools/oadp-non-admin/pull/108 to be merged
How to test the changes made
Auto-generated by running make update-non-admin-manifests

/retest

/retest

/override ci/prow/4.17-e2e-test-kubevirt-aws

/lgtm


Add documentation for implementing webhooks in the example quickstart

Description of the change:
Adds documentation for implementing webhooks for Golang operators.
Motivation for the change:

/lgtm


give an explanation for empty hover results on untyped files

Motivation

More information for users is a good thing.
Getting the file information on empty results is a little bit of a hack.  I think the cleaner thing might be extending LSPQuery with some information about why the results are empty, but it would be a weird enum like:
enum class EmptyResultReason {
  TypedFalse,
  TypedIgnore, // these could maybe be collapsed into one
  Irrelevant,
};

and the default value would be Irrelevant.
Test plan

See included automated tests.

@froydnj what do you think about adding a new QueryResponse like BadSigilResponse (or some other name)?
At the end of LSPTypechecker::query we could check to see if the list of responses was empty, and if so we could do the same logic you're doing here to check the strictness level of the file. That way we could reuse the BadSigilResponse across hover.cc, definitions.cc, references.cc, etc.

@froydnj what do you think about adding a new QueryResponse like BadSigilResponse (or some other name)?
At the end of LSPTypechecker::query we could check to see if the list of responses was empty, and if so we could do the same logic you're doing here to check the strictness level of the file. That way we could reuse the BadSigilResponse across hover.cc, definitions.cc, references.cc, etc.

I like this solution; I think it's more elegant than a field on LSPQueryResult, but I'm not sure how to rewrite:
https://github.com/sorbet/sorbet/blob/a10576f5d16729d4610bb84768f91255ae59c70c/main/lsp/LSPQuery.cc#L55-L79
(which is called prior to LSPTypechecker::query, so the proposed code would never get hit.)  I guess we could just remove:
https://github.com/sorbet/sorbet/blob/a10576f5d16729d4610bb84768f91255ae59c70c/main/lsp/LSPQuery.cc#L75-L79
but I'm not sure what kind of impact that would have (would cost some performance on some typed: false files for some queries?).

Oh, I guess we just make that code return UntypedResponse or whatever as one of the responses, rather than returning an empty response list.  Easy!

I thought about this some more overnight and realized I don't like something about BadSigilResponse: all of our previous responses are specifically responses dealing with Ruby constructs being queried by the client.  BadSigilResponse is different: it's more about the environment that the query was performed in rather than any response to the query and therefore sort of weird to handle in the existing framework.  (I'm also not totally sure how often it would get used; I could see #5598 using it and maybe completion.cc...but then those places could also do something similar to what we're doing here or the tree below.)
I think the problem is LSPQueryResult is really some tri-state (or more!) sort of thing; in a horrible mashup of Rust and C++, it's:
enum LSPQueryResult {
  // Responses to the query, possibly empty.
  Success(Vec<core::lsp::QueryResponse>),
  // We had a single file to query and requested "erroring" on untyped files.
  UntypedFile,
  Error(ResponseError),
};

This structure has the downside of forcing everybody to be aware of UntypedFile, even when they knew that response couldn't come back (because you passed errorIfFileIsUntyped=false to LSPQuery::byLoc or you used one of the other named functions in LSPQuery).  Perhaps that just points to the idea that LSPQuery::byLoc should be returning a fundamentally different type than LSPQuery::{bySymbolInFiles,bySymbol}.
I prototyped out something along the lines of the tri-state enum above: https://github.com/sorbet/sorbet/tree/froydnj-empty-hover-results-enum-refactor
I don't know whether it's better, per se; I think it's slightly clearer, but still not great in the confines of C++ (I don't want to go full std::variant, because I think that would require rewriting way too much code).
Anyway, I'm going to go ahead and merge this, and we can follow up with a pass over the code if people feel strongly about the types involved.


Fix: Prevent numeric values from being incorrectly parsed as dates.

Fix: Prevent numeric values from being incorrectly parsed as dates in formatDateValues
Added a check to return numeric values without parsing them as dates. Previously, values like 206.55 were parsed into incorrect dates such as "01/01/1970 00:03:26" without raising an exception. This change ensures numeric values are returned as-is, preventing unintended date parsing and preserving data integrity.

I tried it and works great, can this please be pushed as this is me from preventing using it !


iOS client

is anyone working on a iOS client generator?

@zboralski I'm working on an RxSwift-based iOS client as part of a react-native client library (likely to soon become a catch-all RxTwirp library with clients for swift, java, js, and react-native) — current effort is focused on supporting the experimental streaming-download twirps that are in development (see #70), but it's working for non-streaming calls as well. The code is WIP but you can get an idea of the general approach by checking out gnarbox/react-native-twirp/ios/GBXTwirp.swift.
I'm just in the process of migrating from a protobuf.js-based generator to a setup based on protoc-gen-gotemplate to try to provide an easier interface for customizing/extending the generated code, I should have something ready to share in about a week or so and will post here when it's at a point where it's all up and running. Feel free to hit me up on the gophers slack ("@fritzherald") if you want to get into the weeds and discuss some of the finer points

I'm closing this as not-really-a-bug - the Gophers slack is the best place for questions like this. Thanks!


Bump version to 1.2.2

Bump version to 1.2.2
Check List

[ ] New functionality includes testing.

[ ] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Superseded by https://github.com/opensearch-project/cross-cluster-replication/pull/269