Allow dyndns to create host record if it doesn't exist

Would it be possible to allow host records to be created via dyndns if they don't exist, but so long as the user has rights to the domain?

I like this idea in, but I'd like for it to be a setting, on a per domain basis. We don't have a way of setting per-domain settings yet but probably should look for into creating one.
@ngoduykhanh what do you think?

Agreed. For us it allows newly provisioned hosts to be added to DNS as soon as they're turned up as we include ddclient as a standard part of our provisioning.

There is no public dyndns service provider allow to do this. Because of security and records management. But in internal use, in one of server provisioing step, using ddclient to provision the host's domain name is a really good idea.
I agree with you @ivanfilippov, this should be a setting. By default we won't allow this, but we can have a setting to "turn it on" for specific domains.

I have an implementation of domain specific settings almost ready with this
dyndns feature as the first use case. I'll submit it for review in the next
day or so.
On Jul 1, 2016 10:16 PM, "Khanh Ngo"<EMAIL_ADDRESS>wrote:

There is no public dyndns service provider allow to do this. Because of
security and records management. But in internal use, in one of server
provisioing step, using ddclient to provision the host's domain name is a
really good idea.
I agree with you @ivanfilippov https://github.com/ivanfilippov, this
should be a setting. By default we won't allow this, but we can have a
setting to "turn it on" for specific domains.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ngoduykhanh/PowerDNS-Admin/issues/61#issuecomment-230082511,
or mute the thread
https://github.com/notifications/unsubscribe/AAT5bh-SPZoATtZLvyjXsM3KSY3u1yOeks5qReYCgaJpZM4JDcmj
.

Hi @ngoduykhanh
Please review this new branch: https://github.com/ivanfilippov/PowerDNS-Admin/tree/per_domain_settings
If you don't see see any issues I'll submit a PR.
@trenb you're welcome to try that branch as well. :smile:
You'll need to do a DB migrate/upgrade if you're not doing a fresh install.

@ngoduykhanh
I'm waiting for user testing on branch scriptroot_fix from #52, there is one place in the new per_domain_settings branch that will need the scriptroot_fix as well. Can you help test the scriptroot_fix branch? If it looks good I'll PR that and then update the per_domain_settings branch.

You'll need to do a DB migrate/upgrade if you're not doing a fresh install.

I get an error from both db_migrate.py and db_upgrade.py. They both complain about:

migrate.exceptions.InvalidRepositoryError: /var/www/html/PowerDNS-Admin/db_repository

Which there is no directory for that. Am I missing files from this branch? Also, where are the settings for enabling this feature? The settings screen is the same as it was before. And if I try to admin a domain, everything blows up, assuming because I'm not running the correct DB version.
Looking forward to trying this feature out! Thanks for your hard work!

Thanks @ivanfilippov for the quick implementation. I've tried your code but it doesn't work. There 2 issues I can see now are:

The checked box isn't checked after we applied the change successfully.

Cannot get the domain id which is allowed in the DomainSetting table (I've commented about the error in your code)

@trenb : The db_repository directory was created when you run create_db.py. I think you missed this directory somehow when clone the repository to new place and reuse the old database.

@ngoduykhanh Aww. That original directory is long since gone. Is there a way to regenerate it?

@ngoduykhanh Ah well, I flattened my install and started fresh. I'll ensure I keep that db_repository directory, though it doesn't seem to actually be filled with anything other than empty py files.
@ivanfilippov The feature is tested and it does add the record. However it's marked as "disabled". Is this expected?
Thank you for your work! Let me know if you need any other information.

@trenb You're right about the disabled thing. I've fixed that in the latest commit to that branch.
@ngoduykhanh I can't seem to replicate the checkbox issue on my side. When I check it, the browser does the javascript call and the checkbox stays checked after it succeeds. I'll keep trying to replicate but I'm probably missing something.
Also, for your comment in the code the DomainSetting.domain is actually a reference to a Domain object (via a relationship in the model) instead of just the domain name. It's working for me but did your fix solve an issue?

@ivanfilippov I've got that, tested and working perfectly now. Thank you!

@ivanfilippov

Also, for your comment in the code the DomainSetting.domain is actually a reference to a Domain object (via a relationship in the model) instead of just the domain name. It's working for me but did your fix solve an issue?

I see. I've tried again.  The exception which I got is:
    if bool(int(ondemand_creation.value)) == True:
ValueError: invalid literal for int() with base 10: 'true'

Looking to the DB I see:
powerdnsadmin2=# select * from domain_setting;
 id | domain_id |      setting      | value
----+-----------+-------------------+-------
  1 |         1 | create_via_dyndns | true
  2 |         2 | create_via_dyndns | true
(2 rows)

It means that ondemand_creation.value is a string with value true and cannot be parsed into integer. But why the value is true instead of 1 or 0 ? I realize that the new_value which the view get from the browser is True (bool type).
Depends on the DB backend, It is difference between MySQL and Postgresql
mysql> insert into domain_setting(domain_id, setting, value) values(1,'create_via_dyndns',True);
Query OK, 1 row affected (0.00 sec)

mysql> select * from domain_setting;
+----+-----------+-------------------+-------+
| id | domain_id | setting           | value |
+----+-----------+-------------------+-------+
|  1 |         1 | create_via_dyndns | 1     |
+----+-----------+-------------------+-------+
1 row in set (0.00 sec)

powerdnsadmin=# insert into domain_setting(domain_id, setting, value) values(1,'create_via_dyndns',True);
INSERT 0 1
powerdnsadmin=# select * from domain_setting;
 id | domain_id |      setting      | value
----+-----------+-------------------+-------
  1 |         1 | create_via_dyndns | true
(1 rows)

That's the reason why I got the exception :D. I think you better to set the value of settings in domain_setting to (True or False) instead of (1 or 0). Just likes what we did in the setting table
mysql> select * from setting;
+----+-------------------+-------+
| id | name              | value |
+----+-------------------+-------+
|  1 | maintenance       | False |
|  3 | fullscreen_layout | True  |
+----+-------------------+-------+
2 rows in set (0.00 sec)

Good call, I'm using MySQL, I'll make the change to put in True instead of
the integer.
Ivan Filippov
On Jul 2, 2016 21:33, "Khanh Ngo"<EMAIL_ADDRESS>wrote:

@ivanfilippov https://github.com/ivanfilippov
Also, for your comment in the code the DomainSetting.domain is actually a
reference to a Domain object (via a relationship in the model) instead of
just the domain name. It's working for me but did your fix solve an issue?
I see. I've tried again. The exception which I got is:
if bool(int(ondemand_creation.value)) == True:

ValueError: invalid literal for int() with base 10: 'true'
Looking to the DB I see:
powerdnsadmin2=# select * from domain_setting;
id | domain_id |      setting      | value
----+-----------+-------------------+-------
1 |         1 | create_via_dyndns | true
2 |         2 | create_via_dyndns | true
(2 rows)
It means that ondemand_creation.value is a string with value true and
cannot be parsed into integer. But why the value is true instead of 1 or 0
? I realize that the new_value
https://github.com/ivanfilippov/PowerDNS-Admin/commit/4eb5862ecbb0316f25a4a8c72f39f0c5bcd74f5b#diff-b5099d1f0106025f31781ccbe0a59d13R459
which the view get from the browser is True (bool type).
Depends on the DB backend, It is difference between MySQL and Postgresql
mysql> insert into domain_setting(domain_id, setting, value) values(1,'create_via_dyndns',True);
Query OK, 1 row affected (0.00 sec)
mysql> select * from domain_setting;
+----+-----------+-------------------+-------+
| id | domain_id | setting           | value |
+----+-----------+-------------------+-------+
|  1 |         1 | create_via_dyndns | 1     |
+----+-----------+-------------------+-------+
1 row in set (0.00 sec)
powerdnsadmin=# insert into domain_setting(domain_id, setting, value) values(1,'create_via_dyndns',True);
INSERT 0 1
powerdnsadmin=# select * from domain_setting;
id | domain_id |      setting      | value
----+-----------+-------------------+-------
1 |         1 | create_via_dyndns | true
(1 rows)
That's the reason why I got the exception :D. I think you better to set
the value of settings in domain_setting to (True or False) instead of (1
or 0). Just likes what we did in the setting table
mysql> select * from setting;
+----+-------------------+-------+
| id | name              | value |
+----+-------------------+-------+
|  1 | maintenance       | False |
|  3 | fullscreen_layout | True  |
+----+-------------------+-------+
2 rows in set (0.00 sec)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ngoduykhanh/PowerDNS-Admin/issues/61#issuecomment-230133384,
or mute the thread
https://github.com/notifications/unsubscribe/AAT5bl0moK_XiuVMd5r88fSRw3jIMdh_ks5qRy1ugaJpZM4JDcmj
.

I think I've got it, check this commit https://github.com/ivanfilippov/PowerDNS-Admin/commit/b096788cf1e3ef24801b43819d23e28ad6708090
It now stores the string representation of True and False and still works fine in MySQL. @ngoduykhanh  can you try with pgSQL (I don't have a pgSQL environment ready)?

I have test with my Postgresql env, it works fine if the setting is preset. Just 2 more small adjustment need to be done. I've commented in your code. Thanks @ivanfilippov

Thanks for the comments! Try https://github.com/ivanfilippov/PowerDNS-Admin/commit/e0461a52107d30c6121a09f7e83b46ca5db73fba and let me know what you think.

It looks like you missed one of my comments. The last one is about the checkbox's value after changing from integers to True/False string. See comment. I think you can create the PR after that. Thanks.

Fixed and PR submitted.
Thanks for all your help @ngoduykhanh  :smile:

Merged. Thanks @ivanfilippov

create_db.py needs an update for this too? On a general note; how to address database changes for existing users? db_upgrade.py only handles the actually upgrade of version/whatnot, and does not address new/updates schemas?

Would be nice to add some CREATE TABLE stuff for this change as well, so we don't have to reverse-engineer what types of columns/whatnot (-:

And yes, the above commit/merge broke the Admin-page;
[Wed Jul 06 16:25:26.795965 2016] [wsgi:error] [pid 18900] ProgrammingError: (psycopg2.ProgrammingError) relation "domain_setting" does not exist
[Wed Jul 06 16:25:26.795985 2016] [wsgi:error] [pid 18900] LINE 2: FROM domain_setting
[Wed Jul 06 16:25:26.796005 2016] [wsgi:error] [pid 18900]              ^
[Wed Jul 06 16:25:26.796044 2016] [wsgi:error] [pid 18900]  [SQL: 'SELECT domain_setting.id AS domain_setting_id, domain_setting.domain_id AS domain_setting_domain_id, domain_setting.setting AS domain_setting_setting, domain_setting.value AS domain_setting_value \\nFROM domain_setting \\nWHERE %(param_1)s = domain_setting.domain_id'] [parameters: {'param_1': 4}]

@ivanfilippov, could you provide the CREATE TABLE for this one?

I guess roughly something like this;
CREATE SEQUENCE domain_setting_id_seq START 1;

CREATE TABLE "domain_setting" (
    "id" integer NOT NULL DEFAULT nextval('domain_setting_id_seq'::regclass),
    "domain_id" integer NOT NULL,
    "setting" character varying(64),
    "value" character varying(256),
    CONSTRAINT "domain_setting_pkey" PRIMARY KEY (id)
) WITHOUT OIDS;

@jallakim You can use db_migrate.py to generate the code that reflects the schema changes that happen between versions (they get put into the db_repository directory) and db_upgrade.py to apply the changes . You can run both every time you upgrade your PDNS-Admin repo to keep up to date, that won't break anything.
create_db.py shouldn't need to get upgraded because it's meant to to be used during a new install and it will create the database based on the current models defined in models.py :smile:
Sorry for the delay in response, we don't get notified about comments on closed issues and I only saw your recent comments because you mentioned my username directly.
Here is the schema that is currently in my database (I'm using MariaDB, MySQL should be identical, will need some modifications for SQLite and PGsql):
CREATE TABLE `domain_setting` (
 `id` int(11) NOT NULL AUTO_INCREMENT,
 `setting` varchar(255) NOT NULL,
 `value` varchar(255) DEFAULT NULL,
 `domain_id` int(11) DEFAULT NOT NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1

Actually we can re-run create_db.py script to create missing tables.

Oh cool, I didn't know that. So running create_db.py after we change the models will do the same thing as doing a db_migrate.py and db_upgrade.py?

I still can't see how the domain_setting table would be created for new installs as it is now? You'd need to edit create_db.py as a minimum? It currently only handles the Role and Setting classes from models.py, and your PR didn't change that file at all.

Hmm, never mind. I guess the init-thingie is just for tables that needs initial values, which is not the case for the domain_setting.

@ivanfilippov : no, create_db.py script only help to create missing tables and initialize the configs such as User/Roles/Settings.
@jallakim : create_db.py was changed in another PR which contribute by @winggundamth . Let's check the latest create_db.py script in the master branch.


Can't build with Visual Studio 2017 Express

Node Version:  v10.16.3 - 6.10.3
Platform: Windows 10
Compiler:  MSBUILD <IP_ADDRESS>4 / CL 19.16.27027.1 for x64
Module: node-rfc

Verbose output (from npm or node-gyp):
Paste your log here, between the backticks. It can be:
Error: gyp info it worked if it ends with ok
gyp info using<EMAIL_ADDRESS>gyp info using<EMAIL_ADDRESS>| win32 | x64
gyp info find Python using Python version 2.7.16 found at "C:\Python27\python.exe"
gyp ERR! find VS
gyp ERR! find VS msvs_version was set from command line or npm config
gyp ERR! find VS - looking for Visual Studio version 2017
gyp ERR! find VS running in VS Command Prompt, installation path is:
gyp ERR! find VS "C:\Program Files (x86)\Microsoft Visual Studio\2017\WDExpress"
gyp ERR! find VS - will only use this version
gyp ERR! find VS checking VS2017 (15.9.28307.423) found at:
gyp ERR! find VS "C:\Program Files (x86)\Microsoft Visual Studio\2017\WDExpress"
gyp ERR! find VS - found "Visual Studio C++ core features"
gyp ERR! find VS - missing any VC++ toolset
gyp ERR! find VS could not find a version of Visual Studio 2017 or newer to use
gyp ERR! find VS looking for Visual Studio 2015
gyp ERR! find VS - not found
gyp ERR! find VS looking for Visual Studio 2013
gyp ERR! find VS - not found
gyp ERR! find VS msvs_version does not match this VS Command Prompt or the
gyp ERR! find VS installation cannot be used.

It looks like it can find the standard libraries but can't find the sdk?
I'm sure I have the sdks because I also have C++ programs that use windows api.
Note: I can't use the standalone vc++ build tools as it can't be used in enterprise when I don't have enterprise/pro visual studio license.
Thanks in advance.

I can reproduce.
Node-gyp looks for the component Microsoft.VisualStudio.Component.VC.Tools.x86.x64 because it is present when both the Toolset and the files MSBuild needs to use it are present. But the Express edition does not have this component. I'll see if a different combination of components can be used.


withTrashed on routes not working with route caching

Laravel Version: 8.55.0
PHP Version: 8.0.9
Database Driver & Version: Postgres 13.4

Description:
I've just started using withTrashed on routing which was introduced in #38348. I had test coverage to ensure that certain routes worked with soft deleted records, and those tests continued to pass following the change. Also worked as expected when testing in a browser.
However, once running route:cache the tests stop working. In the browser you'll now get a 404 when hitting a route with a soft deleted record. My tests fail when the routes have been cached, and pass again once the route cache has been cleared.
Something about route caching is preventing withTrashed from working.
Steps To Reproduce:

Create a record and soft-delete it

$user = User::factory()->create();

$user->delete();

Create a route using withTrashed()

Route::get('/users/{user}', function (User $user) {
    return $user;
})->withTrashed();

Cache the routes

php artisan route:cache

Hit the route

curl -I http://laravel.test/users/1

Thanks for reporting this. It'll be in next week's release.


Add http prefix to implemented HttpTrait methods

Migrating methods from com.azure.core.client.traits.HttpTrait to io.clientcore.core.models.traits.HttpTrait

[x] pipeline -> httpPipeline
[x] addPolicy -> addHttpPipelinePolicy

All migrations that only require a simple rename are completed for interface HttpTrait


migrate testing framework to terraform-plugin-testing

Previously, the terraform provider utilized the sdkv2 framework. In order to stay up to date with testing framework improvements we upgrade to the new terraform-plugin-testing framework following these instructions:
https://developer.hashicorp.com/terraform/plugin/testing/migrating
The change that instigated this upgrade is that the id field is no longer required in the new framework.  During development of the role_grant_resource an ID was not used because the ccapi does not provide an ID for it.  Rather than work around this using a synthetic ID, we upgrade.
Commit checklist

[x] Changelog
[x] Doc gen (make generate)
[x] Integration test(s)
[ ] Acceptance test(s)
[ ] Example(s)

@carloruiz / @andy-kimball  as recent contributors to the terraform provider, I've added you two here as reviewers.

The changes are separated into 2 commits, one with all the vendor changes.   Don't let the 1600+ file counts scare you since its mostly vendor.


fix(GraphicsRenderer): fix graphics render with fill and line when na…

…tiveLines=true

Could you explain more about why this is important and what it fixes? Also there seems to be a listing/build error. Could you look into that?

const graphics = new PIXI.Graphics(true);
graphics.lineStyle(1, 0x000000)
              .beginFill(0xFFFFFF)
              .drawRect(0, 0, 10, 10)
              .endFill();

before change, it use gl.LINES render the fill and lines, so it display incorrect:
if (graphics.nativeLines)
{
    gl.drawArrays(gl.LINES, 0, webGLData.points.length / 6);
}
else
{
    webGLData.vao.draw(gl.TRIANGLE_STRIP, webGLData.indices.length);
}

I split the triangles and lines to different webGLData:
if (webGLData.nativeLines)
{
    gl.drawArrays(gl.LINES, 0, webGLData.points.length / 6);
}
else
{
    webGLData.vao.draw(gl.TRIANGLE_STRIP, webGLData.indices.length);
}

Is the Graphics nativeLines property (this one) needed anymore after this change?

Here's a fiddle of the current bug, helpful to validate:
https://jsfiddle.net/fcq2msqt/

Thanks @begininend for this addition!


Can't import PowerShellGet on Windows Server 2016

Prerequisites

[X] Write a descriptive title.
[X] Make sure you are able to repro it on the latest released version
[X] Search the existing issues.

Steps to reproduce
This started as a discussion item but it has been unanswered and I couldn't find any related issues.
Running Windows Server 2016, Server Core.
 PS C:\> $psversiontable

Name                           Value
----                           -----
PSVersion                      5.1.14393.2273
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.14393.2273
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>

I installed v3.0.19-beta19.
PS C:\> get-module powershellget -ListAvailable | Select Version,Name

Version Name
------- ----
3.0.19  PowerShellGet
2.2.5   PowerShellGet
<IP_ADDRESS> PowerShellGet

But it fails to import.
PS C:\> Import-Module PowerShellGet -RequiredVersion 3.0.19 -verbose
VERBOSE: Loading module from path 'C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\3.0.19\PowerShellGet.psd1'.
VERBOSE: Loading 'FormatsToProcess' from path 'C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\3.0.19\PSGet.Format.ps1xml'.
VERBOSE: Populating RepositorySourceLocation property for module PowerShellGet.
VERBOSE: Loading module from path 'C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\3.0.19\./netstandard2.0/PowerShellGet.dll'.
Could not load file or assembly 'netstandard, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' or
one of its dependencies. The system cannot find the file specified.
    + CategoryInfo          : NotSpecified: (:) [Import-Module], FileNotFoundException
    + FullyQualifiedErrorId : System.IO.FileNotFoundException,Microsoft.PowerShell.Commands.ImportModuleCommand

If there is a requirement for PowerShellGet, then it needs to be documented and put in the module manifest if appropriate.
Expected behavior
I expect the module to be imported. Or document module requirements.

Actual behavior
Missing assembly error.

Error details
Could not load file or assembly 'netstandard, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' or
one of its dependencies. The system cannot find the file specified.

Environment data
Version Name
------- ----
3.0.19  PowerShellGet

Name                           Value
----                           -----
PSVersion                      5.1.14393.2273
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.14393.2273
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>

Visuals
No response

Thanks for opening this issue @jdhitsolutions can you confirm this repros with beta20, we built this against a different version of .Net and have fewer dependencies


Want to use 0 devices, which is not enough to run 1 shards. Missing 1 device(s). Not enough devices connected (1) to run the requested number of shards (1).

Is there an existing issue for this?

[X] I have searched the existing issues and didn't find mine.

Steps to reproduce

Follow the setup windows setup
Create a sample flow.yaml
Run maestro --host <WINDOWS_IPV4_ADDR> test flow.yaml
then it will this
Want to use 0 devices, which is not enough to run 1 shards. Missing 1 device(s).
Not enough devices connected (1) to run the requested number of shards (1).

Actual results
Want to use 0 devices, which is not enough to run 1 shards. Missing 1 device(s).
Not enough devices connected (1) to run the requested number of shards (1).
Expected results
Test should run
About app
Is this an open source or closed source project? - Close project
Is this a native or cross-platform app? - Cross platform
Framework used to build the app - Flutter
If applicable, version of the framework (e.g. Flutter 3.22.0, Compose 1.62.0)
Flutter 3.24.3 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 2663184aa7 (3 months ago) • 2024-09-11 16:27:48 -0500
Engine • revision 36335019a8
Tools • Dart 3.5.3 • DevTools 2.37.3
If applicable, minimum and target Android SDK/iOS version (e.g. minSdk 21, targetSdk 34) - minSdkVersion 24
About environment
Run  on  windows 10  WSL2
Java Version
openjdk 21.0.5 2024-10-15
OpenJDK Runtime Environment (build 21.0.5+11-Ubuntu-1ubuntu124.04)
OpenJDK 64-Bit Server VM (build 21.0.5+11-Ubuntu-1ubuntu124.04, mixed mode, sharing)
Ubuntu
Ubuntu 24.04.1 LTS
Processor architecture
x64
Logs

Logs
<!-- Replace this line with your logs. *DO NOT* remove the backticks! -->

maestro_logs.zip

Maestro version
1.39.2
How did you install Maestro?
other (please specify in the text area below)
Anything else?
I use this to install maestro
curl -Ls "https://get.maestro.mobile.dev" | bash
Maestro studio is running fine, the only thing I  need now  is to run the script created using maestro but it returns
this instead.
Want to use 0 devices, which is not enough to run 1 shards. Missing 1 device(s).
Not enough devices connected (1) to run the requested number of shards (1).

The new version works perfectly on MacOS.


network fee management

Networks usually have some sort of fees associated with them, and often user input/configuration is required. For instance, Bitcoin and Dash have variable transaction fees. Does the user want to include a transaction fee? How big? Should it come out of the amount to send, or out of their balance?
These settings should be made configurable per network, which in this case means per plugin. The API then needs to be modified allowing the user to do this configuration (new request) and to see fee information for debits, credits, and networks.

[ ] Fee payment preferences configured and enforced per network
[ ] Fee amount, i.e. 1x, 2x, 3x
[ ] Fee payer: sender balance, transaction (basically the recipient)
[ ] User can set fee prefs via API
[ ] Fees shown and enforced in debits, and credits

@mobymarto I had to move forward, and so made a simplified solution for this. Please stop any further work on this task, and lets discuss at our meeting.


Use test -aP instead of which -a in test helper

The former is a bash builtin, latter not necessarily available. For
example, which is deprecated in Debian's debianutils >= 5.0.

👍


Location of xboost lib

I cloned & build from xboost repo.  Now, I have libxgboost.so inside the cloned dir.
Where do I have to put libxgboost.so so this gem can find it?
Ty.

Hey @hackhowtofaq, try /usr/local/lib. You can also do:
Xgb.ffi_lib << "/path/to/libxgboost.so"

That was what I was looking! Thank you a lot!


Disable IAM role due to error

Comment out currently broken IAM role resource in AWS.
2019-06-18T12:01:37.169+0100 [DEBUG] lyra: Associate state: intId=lyra://puppet.com/aws/instance2?hid=Aws%3A%3AInstance&rt=Aws%3A%3AInstance extId=i-04f270e7ac1e598ef
2019-06-18T12:01:37.169+0100 [DEBUG] lyra.identity: Invoke: @module=Identity api=Identity::Service name=associate timestamp=2019-06-18T12:01:37.169+0100
2019-06-18T12:01:37.181+0100 [ERROR] lyra: apply failed: Error="Failed to invoke method build/goplugins/aws#Aws::Iam_roleHandler/create() (file: workflows/aws.yaml)
 at /Users/scott/go/pkg/mod/github.com/lyraproj/servicesdk@v0.0.0-20190617121125-a22cb98187cb/grpc/client.go:106 (github.com/lyraproj/servicesdk/grpc.(*Client).Invoke)

Closed due to an oaf (me).


Function.prototype.bind and setTimeout are typed unfortunately

TypeScript Version:  2.3.3
Code
Note that this requires the @types/node package to demonstrate.  I have a full example project here to make replication straightforward: https://github.com/andyfriesen/ts-bind-any .  Run npm i --only=dev && ./node_modules/.bin/tsc -p .
class A {
  sayHi() {
    console.log('Hello!');
  }
}

const a = new A();

const t1: NodeJS.Timer = setTimeout(() => a.sayHi(), 500); // Line 10
const t2: NodeJS.Timer = setTimeout(a.sayHi.bind(a), 500); // Line 11

Expected behavior:
No errors.
Actual behavior:
Error on line 11: error TS2322: Type 'number' is not assignable to type 'Timer'.
There are a few things going on here.
First, Function.prototype.bind is typed to produce an any.  While still not perfect, it would be nice if it returned something like (...args: any[]) => any.
Secondly, lib.d.ts defines setTimeout thus:
declare function setTimeout(handler: (...args: any[]) => void, timeout: number): number;
declare function setTimeout(handler: any, timeout?: any, ...args: any[]): number;

I can't find any documentation or evidence that setTimeout can accept anything other than a function or a string.  If so, the second overload could be tightened up without breaking any working programs.
Lastly, it's a bit unfortunate that these definitions for setTimeout are available by default from lib.d.ts.  On Node, setTimeout never returns a number.

Lastly, it's a bit unfortunate that these definitions for setTimeout are available by default from lib.d.ts. On Node, setTimeout never returns a number.

Seems like they should be moved into lib.dom.d.ts but that would be a breaking change.

Using both DOM and Node definitions is always a big problem for setTimeout / clearTimeout typings. Node fights with the DOM definition and wins :cry:

use --lib core or --lib es6 if you are using node.

Automatically closing this issue for housekeeping purposes. The issue labels indicate that it is unactionable at the moment or has already been addressed.


Added redirection pages for the course

Issue #4 🎯🎯

I Ashwani Kumar Singh https://github.com/Ashwani1621 have worked upon #4

Description
Added 4 html files corresponding to the 4 courses.
Added script for redirection in body tag of index.html file.
Screenshots 📷

did you read https://github.com/freecoursera/freecoursera.github.io/issues/4 ?
add css and a template for courses, check out coursera website!


Could the Mecenas contract be drained by a rogue actor?

Greetings @rkalis,
I've finally started playing with CashScript; and I must say I'm loving it! Finally feels like I can start using some of my Solidity skills in the BCH community.
The first contract I'd like to get working is Mecenas.cash for the https://causes.cash platform. I've been having great success on my first go-round with the contract, however, there's an issue that I can't shake.
https://github.com/Bitcoin-com/cashscript/blob/d8b5c4d50366b3fa007ee7345b41ca1fe86d8593/examples/mecenas.cash#L20
The first half of the conditional for the receive function makes an "assumption" that the contract is below the pledge amount. There's even a pull that claims The recipient must claim all of of it. But what if they DON'T claim all of it.
It appears that the library enforces this by "automatically" sending change back to the contract address when you attempt to send less than the pledge amount, even though the contract balance is greater; which triggers the "else" and FAILS (as it should).
However, what if someone were to execute the contract without using the library and DOES NOT add the second output back to the contract. Would that not still trigger the first half of the conditional and send the remaining UTXO balance to the miners as a fee, as there's no enforcement of a 2nd (remaining balance) output?? A rogue actor could literally send 0 value, using up all the contract's UTXOs. Maybe I'm missing something obvious, but I'm just concerned that a "manually" crafted transaction could circumvent the contract's current protections.
Anyway, I'm very excited to continue working with CashScript and looking forward to giving those Ethereum guys a run for their ΞTH one day 🙏
Cheers! 😉

Hey @nyusternie! I think I should probably add some more comments to those example contracts, thanks for bringing that to my attention!
So basically there are two cases: one where the contract balance is higher than the pledge amount (+fee) and one where it is less than or equal to the pledge amount (+fee). This can be seen as the case where the remainder should be sent back to the contract and the case where all the balance should be sent to the recipient.
// Balance is less than pledge + fee, so all the remaining balance
// should be sent to the recipient.
if (intValue <= pledge + fee) {
    // Subtract the miner fee from the UTXO balance (`intValue`) to get amount to send
    bytes8 amount1 = bytes8(intValue - fee);
    // Construct output object sending this amount to the recipient
    bytes34 out1 = new OutputP2PKH(amount1, recipient);
    // Check that the ONLY output in this transaction is the output constructed above
    require(hash256(out1) == tx.hashOutputs);
// Else: Balance is higher than pledge, so a pledge should be sent
// to the recipient, and the rest back to the contract
} else {
    // amount one is the pledge amount
    bytes8 amount1 = bytes8(pledge);
    // amount two is the remainder
    bytes8 amount2 = bytes8(intValue - pledge - fee);
    // Construct output object that sends pledge amount to the recipient
    bytes34 out1 = new OutputP2PKH(amount1, recipient);
    // Construct output object that sends remainder back to the contract
    bytes32 out2 = new OutputP2SH(amount2, hash160(tx.bytecode));
    // Check that the ONLY outputs in this transaction are those constructed above
    require(hash256(out1 + out2) == tx.hashOutputs);
}

Let's make it concrete with an example, e.g. the pledge is 1M sats, and the balance is 2M sats, the recipient is Alice and the malicious actor is Craig.
Regular use - else branch

Alice uses the CashScript SDK and sends 1M sats from the contract to her address and specifies a fixed fee of 1K sats.
The CashScript SDK automatically adds a "change" output back for the remaining 999K sats.
In the contract we hit the if-statement and go into the else block (because it calculates 2M > 1M + 1K)
The contract then constructs 1 output of 1M to Alice and 1 output of 999K back to the contract.
The contract checks that these two outputs are the only outputs, which is correct, so the function succeeds.

Regular case - if branch
After executing the previous transaction, there is 999K left in the contract.

Alice needs to do some calculation on her end to know how much she can send, so she retrieves the contract balance and sees its 999K, then subtracts the fixed 1K fee.
Alice uses the CashScript SDK and sends 998K sats from the contract to her address and specifies a fixed fee of 1K sats.
The CashScript SDK does not add a "change" output because there is no money left.
In the contract we hit the if-statement and go into the if block (because it calculates 999K <= 1M + 1K).
The contract then constructs only 1 output of 998K to Alice (999K - 1K fee).
The contract checks that this output is the only one, which is correct, so the function succeeds.

Proposed attack
The balance of the contract is 2M again.

Craig constructs a transaction outside the CashScript SDK, sending 1M sats to Alice, but without a second "change" output back to the contract.
In the contract we hit the if-statement and go into the else block (because it calculates 2M > 1M + 1K).
The contract then constructs 1 output of 1M to Alice and 1 output of 999K back to the contract.
The contract checks that these two outputs are the only outputs, which is not correct, because the change output is missing, so the function fails.

Perhaps it is confusing that tx.value in CashScript means the value of the UTXO being spent. This is different than e.g. msg.value in Solidity. Because of this, for example in Mecenas, every individual UTXO is actually its own contract, and if there are two separate UTXOs, the function will be independently evaluated for both UTXOs.
Does this explain it enough? I'm very open to hearing about improvements I can make to the language itself, documentation or examples to make it more clear!

Perhaps it is confusing that tx.value in CashScript means the value of the UTXO being spent. This is different than e.g. msg.value in Solidity.

yes! I didn't realize that it was PER UTXO; wrongfully assumed tx.value to be the value of all inputs..

Represents the value of current UTXO being spent. This can be used to enforce the full balance or a specific part of the contract's balance to be spent.

you even mention it here in the docs, but I believe I found this after my claim.
excellent docs btw!!! 👏👍

Because of this, for example in Mecenas, every individual UTXO is actually its own contract

yeah, I gotta wrap my head around that concept..
also, what I realize now is that you don't even need to DEPLOY Script contracts, like you do with Ethereum, you just need to fund them with BCH .. that's so amazing!!

Does this explain it enough?

yes. thank you 🙏
appreciate you @rkalis, you're doing BIG things for Bitcoin 😉


Cannot read property 'connectionString' of undefined Error.

Storage Explorer Version:
Platform/OS Version: <MAC version 1.5>
Architecture:
Regression From:
Steps to Reproduce:

Trying to connect to a storage account I get the error message.
"Unable to retrieve child resources. Details: Cannot read property 'connectionString' of undefined"

Expected Experience:

Actual Experience:
Nothing shows and the error message appears.

I'm having the same issue as well. I just upgraded to 1.5.0 and I'm unable to connect to any storage account and have been getting the same error.

@qwpham can you try to clean up your keychain and give it a try?  Here are the steps:

Try also to delete the local data, see this help. It helped me resolve the exact same problem on windows.

@tbolon is correct. Those instructions are a way to workaround this issue. There's also a possibility this is due to RBAC preventing us from accessing your resources. That is fixed in 1.6.0, so I'd suggest trying 1.6.0 first, and then clearing the local data.

Bug is getting stale, and hasn't been any further discussion, so I will close this issue. Please provide additional information if problem persists.


Doesn’t work with styled-components?

It looks like it doesn’t work with styled-components. I used it as in the documentation but styled-components changed your scroll component to a div with class. It doesn’t have an id for the anchor anymore.

I'm using with styled-components and it works great. Could you provide a repository as an example? I can help you to make it work.


Add SPI Document

Hi Community：
We need to add documentation for custom SPI extensions to better help developers to customize the extensions to Apache ShenYu.  All SPI you can see this : https://shenyu.apache.org/zh/projects/shenyu/spi-design/
I have put together some tasks and need your help to complete it, as follows

[ ]  add custom-condition-match  en document
[ ]  add ParameterData SPI  zh and en document
[ ]  add PredicateJudge SPI zh and en document
[ ]  add RateLimiterAlgorithm  SPI  zh and en document
[ ] add LoadBalance SPI zh and en document
[ ]  add ShenyuServerRegisterRepository  and ShenyuClientRegisterRepository  SPI zh and en document

You can refer to the following format to complete ：
https://github.com/apache/incubator-shenyu-website/blob/main/content/zh/projects/shenyu/custom-condition-match/index.md

I can help with LoadBalance and RateLimiter document, if there are no other people pick rest task, you can assign all of six tasks to me, thanks.

@Banana1995  ok ，thank you just do it。

I can help with "add ShenyuServerRegisterRepository and ShenyuClientRegisterRepository SPI zh and en document"
"add custom-condition-match en document"
"add ParameterData SPI zh and en document"
"add PredicateJudge SPI zh and en document"

custom spi document has been done, please see in here


lost in translation

Hi,
just in case you are able to forward this to the translation engine provider:
The term '(not) shareable' is set to mysterious 'beharrbar/anharrbar' in German translation. I've no idea on what base it translates the part 'share' to the obscure 'harr'. There is only this unique search result on Google and Bing for these words.
regards

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

ID: 19df9b55-9ae6-9c08-b8e4-28518eaeb3bd
Version Independent ID: c5941a32-c208-1b0a-c2be-6050cafcb33b
Content: _fsopen, _wfsopen
Content Source: docs/c-runtime-library/reference/fsopen-wfsopen.md
Product: visual-cpp
Technology: cpp-ucrt
GitHub Login: @TylerMSFT
Microsoft Alias: twhitney

This appears to be an issue on the German fopen_s, _wfopen_s article, rather than the one listed as content source.

@mecpp, thank you for raising this issue. I've forwarded it to our machine translation folks to take a look at.

@mecpp, our machine translation people will look at it, but it is unlikely to be fixed unless they determine it to be a high priority/urgent issue.
In the meantime, my colleague fixed the text so that it should translate better. That should be live by Monday, 5/23/2022


Detect classes/functions/parameters-of-function of external libraries in input code and exclude them

link(s) to try perform this enhancement

library inspect (https://docs.python.org/3/library/inspect.html)

feature abandoned (project not maintained anymore)


Create a ggplot2 implementation of UNHCR style guide

suggest to develop a “UNHCR style” for R (font, colors, layout, etc..)
From ggplot2, all type of charts can be exported as SVG that can be then imported as vector object in Illustrator/Indesign for publication. Theme is one of the great feature of ggplot2.  Through the ggtheme package, it’s already easy to have styling based on “The economist”, “Excel”, “Fivethirtyeight”, “Stata”, “Tufte”, “The Wall street Journal”, “Google doc” or “High Chart”…
We could definitely add UNHCR on that list! This would be definitely useful for the automated data crunching of household survey performed with koboloader

Wow, I did not know about ggtheme!
This would get us a huge number of UNHCR-themed visualization types at once. This might be the best place to start on templates, because once we do this, we'll have a basis for creating the other templates for many visualization types.

@Edouard-Legoupil Have you worked with ggtheme? Would you be able to create a starting point for this? If those themes, like "Tufte" for example, are Open Source, maybe we can copy one of those and tweak it to our liking.

Closing in favor of using Trello


Option for switching guest to fullscreen has disappeared

I used to be able to switch guests to fullscreen by pressing fn-f or an option from the pulldown menu. This seems to have disappeared recently. Is this a bug or a feature?
Configuration

UTM Version: 4.1.5 (74)
macOS Version: Ventura 13.1
Mac Chip (Intel, M1, ...): M1

I have just noticed that the green traffic light button actually does this (now).


Paint edit all my photos

By: @samuelbetio
Story of My Life

https://github.com/samuelbetio/storyofmylife.git


too many loops in #next_time/previous_time for invalid dates

Issue description
This is again a known issue reporting as per error message. Although the input date is incorrect (e.g. Feb 31st) the :parse method returns a valid object and the loop :next_time reaches the max number of iterations.
How to reproduce
require 'fugit'
c = Fugit.parse('0 12 31 2 *')
p c.next_time

Same issue occurs with all inputs that have month within 1-12 and day within 1-31 but are not valid dates:

Feb 30th
Feb 31st
Apr 31st
Jun 31st
Sep 31st
Nov 31st

Suggestions

Could the parse method return nil directly when invalid combination of month-day is detected?

If this is not an easy fix, how about returning a more explicit error class which is safer to rescue on a production codebase than RuntimeError?
class TooManyLoopsError < RuntimeError; end

gh-20

https://crontab.guru/#*_*_31_2_* is valid, crond probably never schedules (and doesn't fail with a RuntimeError).

Thanks!

Thank you @jmettraux! much appreciated your quick turnaround! :)

You're welcome :-)


Dropping images broken

Getting below when trying to drop images in demo of master branch.
Uncaught SyntaxError: Failed to execute 'querySelector' on 'Document': '#' is not a valid selector.onDrop @ block-reorder.js:56

@timmyg looked into this and pretty sure it's only occurring when you are dropping on the white area rather than the grey middle.
Working on a better interface which will be pr'd shortly. This will make dragging to the inner area feel more intuitive and focused styled to show that.

May be dropping images on white section need to create new image block type there? it will be a great usability bonus imo. It need time to understand that you can't just drop image, you need first create image block and drop on it. If user is dropping an image between blocks then it is obvious that he want to add it. Why forcing him to create image block by himself.

@zyuhel this has about from the change of the look of the editor from a purely block based view to more of a document view. Need to get back to the changes I was making for tim.
Thanks for the feedback, i'll take it into account when improving drag and drop in the future.


[Feature Request] bring plugin to mobile

Personal Use Case:
collaboration is the main feature missing in Obsidian.
about 80% of my Obsidian use is Ipad and Phone. It would be amazing if I could collaborate there with other people on projects within Obsidian.
I know this is probably a ton of work, if even possible, but I would appreciate the effort.

Hey @LePenseur13 --
If you are comfortable testing the beta version then you can install it on mobile.
I personally use it on android, and have gotten it to work on iOS with some quirks.
The reason we haven't rolled it out more broadly is that iOS user experience is pretty broken in the login flow.
I'm working on that actively.
If you're interested in testing on mobile but don't know how to use BRAT (for beta testing), feel free to join our Discord and we'll help you out.

Here are the instructions for using BRAT (copied from the README)
Installing the latest Beta Release
BRAT is the Beta Reviewer's Auto-update Tool for Obsidian.
1. Install BRAT
First we need to install the Obsidian Plugin BRAT. If you haven't yet enabled community plugins, you can follow this guide on help.obsidian.md.
Search for "BRAT" and install the plugin by TfTHacker.
2. Add Relay via BRAT

Once you have BRAT installed open the Settings pane by pressing on the great in the bottom left of Obsidian.

In Settings, navigate to BRAT under "community plugins" at the bottom of the right-hand section.
In the BRAT configuration page click "Add Beta plugin".

Enter in No-Instructions/Relay.
Ensure that Enable after installing the plugin is checked.
Click Add Plugin

+1 for iPad support!

Relay 0.4.0 now supports mobile!
cc: @LePenseur13 @sonikun

Thank you. Awesome


Add .excluding and .extracting helpers

Closes #219
@reiv do you think this would help with the use case you described?

Codecov Report

Merging #220 (5951c57) into main (11e6d41) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##              main      #220   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           40        40
  Lines          710       710
  Branches       116       116
=========================================
  Hits           710       710

Impacted Files
Coverage Δ

packages/expect-type/src/index.ts
100.00% <ø> (ø)

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 11e6d41...5951c57. Read the comment docs.

@mmkal yep, that would mean I wouldn't have to extract the object-like member into a separate type to test it. My use case would be closer to this (I edited my reply in the linked issue to reflect this as well):
expectTypeOf<ResponsiveProp<number>>().excluding<number | number[]>().toHaveProperty("sm");
expectTypeOf<ResponsiveProp<number>>().excluding<number | number[]>().not.toHaveProperty("xxl");

i.e. validating its usage as an input type.


Invalid pointer access in case rule id == NOT_SET_P

Fixed invalid pointer access, by checking against NOT_SET_P before checking *id.
Fixed typo (duplicate string) in log message (not related).

replaced by https://github.com/owasp-modsecurity/ModSecurity/pull/3187


Custom root folder destroys hmr css update (svelte + vite + ubuntu)

Describe the bug
I have a custom root folder (e.g. /custom/) where I put the entry index.html and index.js. They are referencing the svelte app, which is placed inside /src folder.
In the vite-config file I add the root property with value 'custom'.
When I start the dev server, everything works fine, but when I change the css inside App.svelte, the css is destroyed.
This happens in ubuntu, but I couldn't reproduce it with MacOs or Windows.
So I would be happy, if someone can confirm this bug using ubuntu.
Unfortunately I need to put the index.html in another folder, because it's a multi-app-project and the index.html in the project folder is already used for another app.
Reproduction URL
https://github.com/robindanzinger/svelte_bug_custom_root
Reproduction
Unfortunately I can reproduce it only with ubuntu (different versions).

Checkout the github project
run npm install
run dev server npm run dev
open browser
open file src/App.svelte in favorite editor
change the background-color to something else

Result: Backgound-color should be updated in browser, but disappears.
Logs
browser:
no logs

server log:
11:18:54 [vite] hmr update<EMAIL_ADDRESS>/@fs/home/vite-svelte/src/App.svelte?svelte&type=style&lang.css
  vite:load 2.50ms [fs] ../src/App.svelte?svelte&type=style&lang.css +35s
  vite:hmr [self-accepts] /home/vite-svelte/src/App.svelte?svelte&type=style&lang.css +35s
  vite:import-analysis 0.35ms [0 imports rewritten] /home/vite-svelte/src/App.svelte?svelte&type=style&lang.css +35s
  vite:transform 1.25ms ../src/App.svelte?svelte&type=style&lang.css +35s
  vite:time 6.43ms ../src/App.svelte?svelte&type=style&lang.css +34s
  vite:load 4.72ms [fs] ../src/App.svelte +4ms
  vite:cache [memory] /home/vite-svelte/src/App.svelte?svelte&type=style&lang.css +34s
  vite:cache [memory] ../node_modules/svelte-hmr/runtime/hot-api-esm.js?v=9b053e16 +1ms
  vite:cache [memory] ../node_modules/svelte-hmr/runtime/proxy-adapter-dom.js?v=9b053e16 +0ms
  vite:cache [memory] ../node_modules/.vite/deps/svelte_internal.js?v=1125162b +0ms
  vite:cache [memory] ../node_modules/.vite/deps/svelte_internal_disclose-version.js?v=1125162b +0ms
  vite:hmr [accepts-exports] /home/vite-svelte/src/App.svelte +47ms
  vite:import-analysis 6.03ms [5 imports rewritten] /home/vite-svelte/src/App.svelte +47ms
  vite:transform 44.06ms ../src/App.svelte +46ms
  vite:time 51.69ms ../src/App.svelte +47ms
  vite:cache [memory] /home/vite-svelte/src/App.svelte?svelte&type=style&lang.css +10ms
  vite:time 0.70ms /home/vite-svelte/src/App.svelte?svelte&type=style&lang.css +9ms

System Info
System:
    OS: Linux 5.14 Ubuntu 22.04.4 LTS 22.04.4 LTS (Jammy Jellyfish)
    CPU: (16) x64 AMD Ryzen 7 PRO 6850U with Radeon Graphics
    Memory: 24.16 GB / 30.63 GB
    Container: Yes
    Shell: 5.1.16 - /bin/bash
  Binaries:
    Node: 20.15.1 - /usr/local/bin/node
    npm: 10.7.0 - /usr/local/bin/npm
  Browsers:
    Brave Browser: <IP_ADDRESS>
    Chromium: 127.0.6533.99
  npmPackages:
    svelte: ^4.2.18 => 4.2.18

can't reproduce this in stackblitz or linux (manjaro, arch based).
Does your home path include any special characters or are there other customizations on your fs that could impede the watcher?
In the browser, there is a websocket for the vite client, can you check what messages are sent there when you edit the file?

When I change the css, then the browser requests the url
http://localhost:5173/home/vite-svelte/src/App.svelte?t=1724318957374&svelte&type=style&lang.css
And the response is:
import {createHotContext as __vite__createHotContext} from "/@vite/client";
import.meta.hot = __vite__createHotContext("/@fs/home/vite-svelte/src/App.svelte?svelte&type=style&lang.css");
import {updateStyle as __vite__updateStyle, removeStyle as __vite__removeStyle} from "/@vite/client"
const __vite__id = "/home/vite-svelte/src/App.svelte?svelte&type=style&lang.css"
const __vite__css = "\n\n
this is custom, run dev server, changte the background-color to red or green.
\n
It should change background color, but it doesn't work on ubuntu
\n
Restart dev server. Now background-color is ok. Until you change the color again.
\n\n\n"
__vite__updateStyle(__vite__id, __vite__css)
import.meta.hot.accept()
import.meta.hot.prune(()=>__vite__removeStyle(__vite__id))

the const __vite__css contains the whole svelte file, but it should contain only the css part.
When I restart the server I get for the request: http://localhost:5173/@fs/home/vite-svelte/src/App.svelte?svelte&type=style&lang.css
import {createHotContext as __vite__createHotContext} from "/@vite/client";
import.meta.hot = __vite__createHotContext("/@fs/home/vite-svelte/src/App.svelte?svelte&type=style&lang.css");
import {updateStyle as __vite__updateStyle, removeStyle as __vite__removeStyle} from "/@vite/client"
const __vite__id = "/home/vite-svelte/src/App.svelte?svelte&type=style&lang.css"
const __vite__css = ".custom.s-_ndbGLWBsHAX{background-color:red}.s-_ndbGLWBsHAX{}"
__vite__updateStyle(__vite__id, __vite__css)
import.meta.hot.accept()
import.meta.hot.prune(()=>__vite__removeStyle(__vite__id))

I can reproduce it only with ubuntu but on different devices.
I have no customizations on ubuntu. Tried it on a new installed ubuntu version. Interesting thing is, that when I don't use a custom folder, then everything works fine.

So if the content of __vite__css is the whole .svelte file, it looks like that request was not transformed by v-p-s. I am still at a loss why this would only happen on ubuntu specifically though

does the same happen if you use vue? or vanilla vite? npm create vite@latest

In vue, I have to save the file twice, before it updates. But the css is correct.

hmm, will check, if I can reproduce it on another device / different native linux version, and then post here again. Or maybe someone in the svelte community uses ubuntu and can confirm the bug. I'm mostly offline the next days, so it will take some time. Thank you so far for your very quick response and help!

Is this inside a container or are you using a network fs?  Did you edit the paths in your report in any way? no username in /home confuses me a bit, or is this containerized and you run the project in the users home directory?
can you run DEBUG=* vite dev and post it here? there should be logs from vite-plugin-svelte regarding the hmr update. If not that shows that the edit does not reach it for some reason.

there is https://github.com/vitejs/vite/issues/16481 but thats more about a possible root relative path confusion, you don't happen to have /custom elsewhere?

Yes, I edited the path. Now moved the project it the home/robin .
12:21:18 [vite] hmr update<EMAIL_ADDRESS>/@fs/home/robin/vite-svelte/src/App.svelte?svelte&type=style&lang.css
  vite:load 3.11ms [fs] ../src/App.svelte?svelte&type=style&lang.css +11s
  vite:hmr [self-accepts] /home/robin/vite-svelte/src/App.svelte?svelte&type=style&lang.css +11s
  vite:import-analysis 0.29ms [0 imports rewritten] /home/robin/vite-svelte/src/App.svelte?svelte&type=style&lang.css +11s
  vite:transform 1.02ms ../src/App.svelte?svelte&type=style&lang.css +11s
  vite:time 3.94ms ../src/App.svelte?svelte&type=style&lang.css +7s
  vite:time 6.56ms ../src/App.svelte?svelte&type=style&lang.css +1ms
  vite:load 4.45ms [fs] ../src/App.svelte +4ms
  vite:cache [memory] /home/robin/vite-svelte/src/App.svelte?svelte&type=style&lang.css +7s
  vite:cache [memory] ../node_modules/svelte-hmr/runtime/hot-api-esm.js?v=09d42675 +1ms
  vite:cache [memory] ../node_modules/svelte-hmr/runtime/proxy-adapter-dom.js?v=09d42675 +0ms
  vite:cache [memory] ../node_modules/.vite/deps/svelte_internal.js?v=5ef0d121 +0ms
  vite:cache [memory] ../node_modules/.vite/deps/svelte_internal_disclose-version.js?v=5ef0d121 +1ms
  vite:hmr [accepts-exports] /home/robin/vite-svelte/src/App.svelte +38ms
  vite:import-analysis 5.18ms [5 imports rewritten] /home/robin/vite-svelte/src/App.svelte +38ms
  vite:transform 34.74ms ../src/App.svelte +37ms
  vite:time 41.13ms ../src/App.svelte +38ms
  vite:time 42.28ms ../src/App.svelte +0ms
  vite:cache [memory] /home/robin/vite-svelte/src/App.svelte?svelte&type=style&lang.css +10ms
  vite:time 0.68ms /home/robin/vite-svelte/src/App.svelte?svelte&type=style&lang.css +8ms
  vite:cache [memory] /home/robin/vite-svelte/src/App.svelte?svelte&type=style&lang.css +1ms
  vite:time 0.39ms /home/robin/vite-svelte/src/App.svelte?svelte&type=style&lang.css +2ms

Somehow the problem occurs when the svelte file is not inside the custom root folder.
When I put the App.svelte inside custom, everything works fine. When I put the App.svelte inside project root or in src folder (import via '../' or '../src') then the update doesn't work any more.

is this still occuring? as mentioned above i was unable to reproduce on manjaro and without a reproduction its really hard to work on a fix.

Yes, it's still occurring. But the reason is different. Updated Ubuntu to next LTS last monday.
First I couldn't reproduce it, because I used the Ubuntu default editor.
But when I use vim, the bug occurred again.
It seems that it has to do something in combination with vim and some vim plug-in. Really strange.
I will investigate further. And maybe reopen when I found the reason and it can be solved with this library.
However I don't think we need to keep this bug open at the moment.
Very thank you for investing your time.

thank you too


How to decode the ble authentication fail_reason

Hate to post questions as issues but Id like to find out how to decode the
esp_ble_auth_cmpl_t struct fail_reason as returned during an onAuthenticationComplete callback of a BLESecurityCallbacks class.
I often receive an value 81 or 88 and presume it is a bit mask of some kind.
Thanks for any info.

See the SecurityCompletionStatus_t table in this BLE repository :
https://github.com/ARMmbed/ble/blob/master/ble/SecurityManager.h
The same bonding codes are found here too:
https://github.com/NordicSemiconductor/ble-sdk-arduino/blob/master/libraries/BLE/aci.h
It seems the code values found in those two links are related to what you are looking for. Or maybe not.

Thomas


Safety Data Sheets

Logging an idea that came up in the Discord discussion.
https://chemicalsafety.com/sds-search/ provides access individually. Chemical vendors also provide access to individual sheets. I did not yet find an open, bulk dataset.

not yet find an open, bulk dataset.

we can construct one based on PubChem I guess


openai: 0.16.0 -> 0.18.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://pypi.org/project/openai/.
meta.description for openai is: "Python client library for the OpenAI API"
meta.homepage for openai is: "https://github.com/openai/openai-python"
meta.changelog for openai is: ""
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

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

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

5 total rebuild path(s)

3 package rebuild(s)

2 x86_64-linux rebuild(s)
3 x86_64-darwin rebuild(s)

First fifty rebuilds by attrpath
openai
python310Packages.openai
python39Packages.openai

Instructions to test this update (click to expand)

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

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

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/ywia4v84vmww80cjhzi9l1a8fx5a08cj-python3.9-openai-0.18.0
ls -la /nix/store/ywia4v84vmww80cjhzi9l1a8fx5a08cj-python3.9-openai-0.18.0/bin

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

1 package built:

openai (python39Packages.openai)

Maintainer pings
cc @malob for testing.

Result of nixpkgs-review pr 167981 run on x86_64-darwin 1

2 packages built:

openai (python39Packages.openai)
python310Packages.openai


No way to get a std::type_info?

Is there a way of getting a type_info from a variant like there is with boost::variant's type() routine?
I've tried emulating the "reflect" variant visitor from Boost's implementation, but it seems like "visitor" means something a bit different in this implementation. It's also really hard to parse through all of the template shenanigans without any comments.

Nevermind, figured it out!  This visitor does the trick:
struct ReflectVisitor
{
template
const std::type_info& operator()(const T&) const
{
return typeid(T);
}
};


Change the overall size in an html page

1、my code set style height={300}, but it has no effect , how do i set to change the whole pie size ,
while viewBoxSize don't change 's height .
`<PieChart
data={Piedata}
// If you need expand on hover (or touch) effect
expandOnHover
expandSize={1}
// If you need custom behavior when sector is hovered (or touched)
viewBoxSize={15}
strokeWidth={1}
onSectorHover={(d, i, e) => {
if (d) {
console.log("Mouse enter - Index:", i, "Data:", d, "Event:", e)
} else {
console.log("Mouse leave - Index:", i, "Event:", e)
}
}}
style={{height: 300}}
/>
`

Try to set the container height. Not the PieChart component itself

thanks ,now it's ok.

Perfect ! I close the issue. Thank you


footer issue

Hey i just found that there is a comma issue in your footer

I know it's insignificant and a zero value contribution most likely
But i want to contribute in your main panel too
Is there any community for this repo I am not aware you
Love to try my hands on some real kickass genAi webapp

Thanks @ManashAnand!


Data entry Dump

This merge contains several (alternate) class features, spells, feats from TR, GEM, AA3, and a few APs, as well as fixing broken Weapon Spec links in classes. I haven't added all of the class features to their respective lists, but those could do with a full redo anyway at some point; most of them have lots of dead links.

Looks good. Merging.


Syntax check prompt dislocation in style tag when change code in script tag

When i insert newline in

Thanks for the report!


Test additional K8s versions

Test recent patch-releases for the 1.18, 1.19, and 1.20 minor releases.
The recentness of versions available to test are limited by kindest/node
image available.
https://hub.docker.com/r/kindest/node/tags
Only test in the submariner-operator repository for now, to give maximum
coverage for minimal jobs.
Signed-off-by: Daniel Farrell<EMAIL_ADDRESS>

Builds on https://github.com/submariner-io/shipyard/pull/487.


Add feature: Signal app

https://signal.org/

Signal cannot be added as it does not have a web client.
Related:
getferdi/recipes#26
getferdi/recipes#22
getferdi/recipes#21
getferdi/recipes#18
meetfranz/franz#1702
meetfranz/franz#767
meetfranz/franz#655

but there is a signal chrome extension which is written in js.
https://chrome.google.com/webstore/detail/signal-private-messenger/bikioccmkafdpakkkcpdbppfkghcmihk?hl=de

but see https://github.com/signalapp/Signal-Desktop

The Signal Desktop app implements a lot of additional logic and is not a normal website that we can add to Ferdi. We would have to write our own Signal service in order for it to work with Ferdi's APIs and capabilities.


Clarify OMAD adviser text

Jira: https://jira.cac.washington.edu/browse/DAWGPATH-147

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 62.409%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
430

Relevant Lines:
689

💛  - Coveralls


feat: added reame

Coverage report

St.:grey_question:
Category
Percentage
Covered / Total

🟢
Statements
100%
91/91

🟢
Branches
100%
9/9

🟢
Functions
100%
6/6

🟢
Lines
100%
91/91

Test suite run success
5 tests passing in 1 suite.
Report generated by 🧪jest coverage report action from 022b7bdbf70ffcd325b8d3c06a8b44ec4b4426ba


[WIP] Eq 389 dynamic theme

What is the context of this PR?
This PR adds the ability for a survey schema to define a theme and for that theme (if it exists) to be used to display that survey in the runner.
We create a new theme 'titchfield' which is a stub for a social style theme.
How to review

Check out this branch.
Install new dependency Flask-themes2, by running pip install -r requirements.txt
Check that the tests pass and are sensible in their checks.
Run the star wars dev survey
Notice the change of style and in the source code of the web page
a comment naming the theme 'Titchfield'

[ ] Do all commits have sensible commit messages?
[ ] Is all new code unit tested?
[ ] Are there integration tests if needed?
[ ] Is there sufficient logging?
[ ] Is there documentation or is the code self-describing?

Who worked on the PR
@dhilton, @LJBabbage and @hamishtaplin all worked on this PR in places. Thus none of those people should have the final say in merging this PR.

I get In
--require-hashes mode, all requirements must have their versions pinned with ==. These do not:
simplejson from https://pypi.python.org/packages/79/9f/f6e2793254c8f87919d92abc42ef7d05aba5ca06ab590582ad32fa47be4f/simplejson-3.8.2-cp35-cp35m-macosx_10_9_x86_64.whl#md5=5a8d46930c05a45e3b6b35d5ff10478f (from Flask-Themes2==0.1.4-

Good spot - I thought I had pinned those requirements, will hash them now.

Looks good to me, I like that the new polite template which says hello when you are using it

Do you want to get this merged and I do a separate PR for the CSS?

@hamishtaplin Don't mind - perhaps better to have it all in one?
@LJBabbage - Sorry should have removed that - is that still in the commits?

The Hello is at the bottom of _survey.html

Don't merge this yet as I'm working on it.

@this is gtg from my end but is failing tests

This branch has been multi merged from master - rebasing is an absolute pain. I'm going to restage the commits and create a clean commit history for this feature as I can't seem to get a clean revert to work correctly without losing work.

All good apart from you've accidentally reintroduced the python model changes into app/model/questionnaire.py. These need to be removed 👎

This should be good to go now @warrenbailey - apologies for including that depreciated code.

LGTM 👍


[Android] Log warning if card element has a ShowCard select action

Adds warning log for card elements having a select action with type ShowCard

General: Dont forget the "How Verified" section in the description :)


Move Amp Status bits (7 Segment Display Status) to Global Status or the Main Screen

At the moment the Amp Status bits (7 Segment Display Status) is found at the bottom of the CS Status screen.  This status is general and doesn't just apply to coordinate systems.  It would be more useful and intuitive for it to be displayed on the Global Status screen, or on the main screen of the program.
Thank you

This is included in the 3.2.2 release


[GH-534] Proper blockchain cleaning

This changes how we clean blockchain (used in tests) so cleaning doesn't result in inconsistency.
Details:

Removed old delete functions from Aecore.Persiatance.Worker
Added delete_all to Aecore.Peristance.Worker
Fixed Exexec starting so Aecore can be stoped now
Fixed bug in Perisatance.get_blocks
Removed duplication of blockchain cleaning code
Tests for blockchain cleaning code

This fixes #534

@grzegorz225 Check if issue is resolved. It's resolved for me.

@cytadela8
The PR fixed the bug for me.


Push notification deprecated

With the push plugin being deprecated in favor of firebase push for NS (https://github.com/NativeScript/push-plugin#push-plugin-for-nativescript), is there a plan to update the SDK so we don't need to keep using the deprecated plugin?

@thomasconner, here is the migration guide from push plugin to firebase plugin https://github.com/NativeScript/push-plugin/blob/master/MIGRATE-TO-FIREBASE.md


Draw to bitmap, sometime zoom-in, sometime crop...

Hi,
I try the SVG library in a basic program.
The code is very simple:
        DialogResult selectResult = filePicker.ShowDialog();
        if (selectResult == System.Windows.Forms.DialogResult.OK)
        {
            txtSelectedFile.Text = filePicker.FileName;

            svgDocument = SvgDocument.Open(filePicker.FileName);
            float sf1 = pictConvertedImage.Width / svgDocument.Width;
            float sf2 = pictConvertedImage.Height / svgDocument.Height;
            float sf = Math.Min(sf1, sf2);
            svgDocument.Width *= sf;
            svgDocument.Height *= sf;
            pictConvertedImage.Image = svgDocument.Draw();
        }
    }

With https://github.com/picons/picons-source/blob/master/build-source/tv/alekino%2Bhd.svg, the svg fit correctly the PictureBox(PictConvertedImage), but if i try with https://github.com/picons/picons-source/blob/master/build-source/tv/123tvhd.svg, the svg is always crop.
I don' t know if it's a bug from SVG or if it's a bad implementation from me.
Test with the latest code (2015/03/09).
Sorry for my bad english.

As this is quite old, the links are invalid and the information is not sufficient to explain the problem, I'm closing this. Feel free to reopen it with more information.


prod error: Property 'animation' does not exist on type

Hi
When I build for prod I get a lot of these types of errors, dev is fine
ERROR in ng:///Users/a/Documents/webapps/takara-dashboard/src/app/takara-options/takara-options.component.html (168,5): Property 'animation' does not exist on type 'TakaraOptionsComponent'.
ERROR in ng:///Users/a/Documen
I am running
"@angular/cli": "1.0.1",
"@angular/compiler-cli": "^4.0.0",
"typescript": "~2.2.0"
Is there something I should be doing to stop this?

@mandelmonkey sorry for not getting to this sooner. If you're still having problems with this, feel free to reopen.


Improve autocomplete

Hi @gbouras13, I have encountered a case where there are multiple blast hits with very low evalue (1e-180) that just happened to miss the start of the target by few residues, so they were discarded and a random gene ("nearest" option) was used instead.
I think that in those cases it would be best to use the ORF that overlaps the best blast hit, and even make this the default when --autocomplete is not specified. What do you think?

At least that's my interpretation based on:
https://github.com/gbouras13/dnaapler/blob/6a672fdd2f60a6cdbf9b6c4faf30432dbaa27653/src/dnaapler/utils/processing.py#L78-L82
But correct me if I am wrong, I can take a closer look at the logs

I chose to have a strict match of the start codon in dnaapler to ensure the rotation does not interrupt a CDS, but I agree this would be a good feature.
I will aim to add this in the next week or two. It will require some refactoring and so isn't trivial but shouldn't be too hard.
George

Hi @simone-pignotti ,
I've made your suggestion the default within all BLAST based commands in dnaapler (aka it will take the top row of the blastx table, and if it the matching alignment doesn't start with a start codon, it will run pyrodigal to find the CDS with the most overlap).
Available in v0.4.0
George

Wonderful, thank you so much @gbouras13!


Update ctype data files to UCD 13.0.0

Checklist

[ ] At least one test case is included for this feature or bug fix.
[ ] ReleaseNotes has added or is not needed.
[ ] This PR has passed all of the test cases on Nodejs and Chrome Browser.
[ ] This PR has passed all of the test cases on QT/QML.
[ ] This is an API breaking change.
[ ] Requires a major version change.

Issue Resolved / Feature Added

Updated ctype localedate to UCD 13.0.0 by running genctype.js
ctype_c.json  ctype.json  ctype_l.json  ctype_m.json  ctype_n.json  ctype_p.json  ctype_s.json  ctype_z.json files are updated.

Resolution
Links
https://www.unicode.org/Public/13.0.0/ucd/
https://www.unicode.org/charts/ : Unicode 13.0 Character Code Charts

Also, we need a description of the CLDR 36 and UCD 13 updates in the ReleaseNotes.md

Also, we need a description of the CLDR 36 and UCD 13 updates in the ReleaseNotes.md

I updated ilib version number and ReleaseNote in this PR.


Fixed a misleading comment in the auth URLs

Not sure why the docs are failing, seems to work locally 🤔


Cat-dropdown: focus-trap library conflicts with FocusMonitor(@angular/cdk/a11y)

When user uses Tab for navigation inside cat-dropdown the first element is not reachable. It's reproducible only when FocusMonitor service is imported and provided into any component in the tree.
The reason underhood is that the focus-trap library uses preventDefault inside Tab keydown event handler in order to not let browser natively navigate the the next focusable element after programmatically setup the focus on the first element:
https://github.com/focus-trap/focus-trap/blob/master/index.js#L762
In the same time InputModalityDetector class, which is used by FocusMonitor, add event listener to keydown event with configuration passive: true
https://github.com/angular/components/blob/main/src/cdk/a11y/input-modality/input-modality-detector.ts#L196
which prevent preventDefault (ironically).
But to be honest I'm not sure why keydown event handler from focus-trap library which was defined with passive: false is impacted by options of event listener from InputModalityDetector.
How we can possible resolve it? Maybe we can start from creating the issue ticket in focus trap repo, seems like they are responded quickly. In the case it's gonna be resolved the only thing we need to do is to update the library version.

https://github.com/focus-trap/focus-trap/issues/1165 - added a ticket to focus-trap repo

This is a Zone.js issue:
There is an open ticket for that in Angular repo and draft PR.
I'd suggest to get rid of focus-trap library and implement our own focus trap service with approach different from focus-trap library: either we can keep keydown listener but somehow get rid of preventDefault inside of handler, or instead of keydown we can listen for focus event

At the risk of butting my nose in where it may not belong,

I'd suggest to get rid of focus-trap library and implement our own focus trap service with approach different from focus-trap library: either we can keep keydown listener but somehow get rid of preventDefault inside of handler, or instead of keydown we can listen for focus event

That's one way to go. On the other hand, the zone.js issue has been open for over 2 years now, and the PR has been in draft mode for over a year. And building a "focus trap" library is non-trivial, unless you plan on implementing something very targeted with very limited functionality to suit your specific needs.
Perhaps another way to address this would be to fork zone.js, merge the PR in your fork, and use your version of zone.js (assuming you have a direct dependency on the package; if it's a downstream dependency, this may not work).
And I guess another solution would be to fork focus-trap and "fix" it to work with zone.js in its current state the way you think it should. You may then at least still be able to take in future updates to focus-trap this way while still maintaining your modifications, and saving you the hassle of building your own "focus trap" solution.

Hello @stefcameron! Thanks for stopping by,

The problem with zone.js patching is that we have multiple micro-services which use Angular and consume catalyst library. I believe it's gonna be too aggressive solution in this case to patch zone.js in every micro-service to fix the problem of UI components library.
I like the idea with focus-trap fork. One of the possible ways which might work is adding focusable anchors in the start and the end of focus trap area (example), and potentially it can be done on top of focus-trap library.

But since there is a workaround with isKeyForward and isKeyBackward which allows user to reach the first element, this bug has low priority and I'm not sure what happens first: Angular will merge PR with zone.js fix and we install the update which let us continue using your library or we will have to fix it on our side.


createSubtitles does nothing?

I don't see anywhere in the code where createSubtitles is actually used. Should this be removed in the documentation?

https://github.com/tomyam1/protractor-video-reporter/blob/0.3.0/lib/VideoReporter.js#L149


error, Attempt to invoke virtual method 'void I/flutter ( 2174): android.media.ImageReader.setOnImageAvailableListener(android.media.ImageReader$OnImageAvailableListener, I/flutter ( 2174): android.os.Handler

Steps to Reproduce
This is a Camera plugin bug:

startImageStream at initState():

@override
  void initState() {
    print('camera page InitState');
    super.initState();
    _cameraController =
        new CameraController(cameras[0], ResolutionPreset.medium);
    _cameraController.initialize().then((_) {
      if (!mounted) {
        return;
      } else {
        _cameraController.startImageStream(onAvailable);
      }

      setState(() {
//        _cameraController.startImageStream(onAvailable);
      });
  }

stopImageStream at deactivate() or dispose(),

@override
  void deactivate() {
    print('camera page deactivate');
//    if (_cameraController != null &&
//        _cameraController.value.isStreamingImages &&
//        _cameraController.value.isInitialized &&
//        mounted) {
//      _cameraController?.stopImageStream();
//    }
    super.deactivate();
  }

  @override
  void dispose() {
    print('camera page dispose');
    if (mounted &&
        _cameraController.value.isStreamingImages &&
        _cameraController != null) {
      _cameraController?.stopImageStream();
    }
    _cameraController?.dispose();
    super.dispose();
  }

Everytime navigate to another page, exception raises.

Logs

[ +341 ms] E/EventChannel#plugins.flutter.io/camera/imageStream( 4934): Failed to close event stream
[        ] E/EventChannel#plugins.flutter.io/camera/imageStream( 4934): java.lang.NullPointerException: Attempt to invoke virtual method 'void
android.media.ImageReader.setOnImageAvailableListener(android.media.ImageReader$OnImageAvailableListener, android.os.Handler)' on a null object reference
[   +1 ms] E/EventChannel#plugins.flutter.io/camera/imageStream( 4934):         at io.flutter.plugins.camera.CameraPlugin$Camera$9.onCancel(CameraPlugin.java:822)
[        ] E/EventChannel#plugins.flutter.io/camera/imageStream( 4934):         at io.flutter.plugin.common.EventChannel$IncomingStreamRequestHandler.onCancel(EventChannel.java:194)
[        ] E/EventChannel#plugins.flutter.io/camera/imageStream( 4934):         at io.flutter.plugin.common.EventChannel$IncomingStreamRequestHandler.onMessage(EventChannel.java:162)
[        ] E/EventChannel#plugins.flutter.io/camera/imageStream( 4934):         at
io.flutter.view.FlutterNativeView$PlatformMessageHandlerImpl.handleMessageFromDart(FlutterNativeView.java:188)
[   +1 ms] E/EventChannel#plugins.flutter.io/camera/imageStream( 4934):         at io.flutter.embedding.engine.FlutterJNI.handlePlatformMessage(FlutterJNI.java:202)
[        ] E/EventChannel#plugins.flutter.io/camera/imageStream( 4934):         at android.os.MessageQueue.nativePollOnce(Native Method)
[        ] E/EventChannel#plugins.flutter.io/camera/imageStream( 4934):         at android.os.MessageQueue.next(MessageQueue.java:326)
[        ] E/EventChannel#plugins.flutter.io/camera/imageStream( 4934):         at android.os.Looper.loop(Looper.java:160)
[        ] E/EventChannel#plugins.flutter.io/camera/imageStream( 4934):         at android.app.ActivityThread.main(ActivityThread.java:6718)
[        ] E/EventChannel#plugins.flutter.io/camera/imageStream( 4934):         at java.lang.reflect.Method.invoke(Native Method)
[        ] E/EventChannel#plugins.flutter.io/camera/imageStream( 4934):         at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
[        ] E/EventChannel#plugins.flutter.io/camera/imageStream( 4934):         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
[        ] I/flutter ( 4934): ══╡ EXCEPTION CAUGHT BY SERVICES LIBRARY ╞══════════════════════════════════════════════════════════
[        ] I/flutter ( 4934): The following PlatformException was thrown while de-activating platform stream on channel
[        ] I/flutter ( 4934): plugins.flutter.io/camera/imageStream:
[        ] I/flutter ( 4934): PlatformException(error, Attempt to invoke virtual method 'void
[   +1 ms] I/flutter ( 4934): android.media.ImageReader.setOnImageAvailableListener(android.media.ImageReader$OnImageAvailableListener,
[        ] I/flutter ( 4934): android.os.Handler)' on a null object reference, null)
[        ] I/flutter ( 4934):
[        ] I/flutter ( 4934): When the exception was thrown, this was the stack:
[   +2 ms] I/flutter ( 4934): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:564:7)
[        ] I/flutter ( 4934): #1      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:302:33)
[        ] I/flutter ( 4934):
[        ] I/flutter ( 4934): #2      EventChannel.receiveBroadcastStream. (package:flutter/src/services/platform_channel.dart:502:29)
[        ] I/flutter ( 4934):
[        ] I/flutter ( 4934): #9      CameraController.stopImageStream (package:camera/camera.dart:402:30)
[        ] I/flutter ( 4934):
[        ] I/flutter ( 4934): #10     _CameraPageState.dispose (package:quick_learners_dictionary/pages/camera_body.dart:97:26)
[        ] I/flutter ( 4934): #11     StatefulElement.unmount (package:flutter/src/widgets/framework.dart:3916:12)
[        ] I/flutter ( 4934): #12     _InactiveElements._unmount (package:flutter/src/widgets/framework.dart:1696:13)
[   +3 ms] I/flutter ( 4934): #13     ListIterable.forEach (dart:_internal/iterable.dart:39:13)
[        ] I/flutter ( 4934): #14     _InactiveElements._unmountAll (package:flutter/src/widgets/framework.dart:1705:25)
[        ] I/flutter ( 4934): #15     BuildOwner.finalizeTree. (package:flutter/src/widgets/framework.dart:2359:27)
[        ] I/flutter ( 4934): #16     BuildOwner.lockState (package:flutter/src/widgets/framework.dart:2191:15)
[        ] I/flutter ( 4934): #17     BuildOwner.finalizeTree (package:flutter/src/widgets/framework.dart:2358:7)
[        ] I/flutter ( 4934): #18
_WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding&WidgetsBinding.drawFrame
(package:flutter/src/widgets/binding.dart:702:18)
[        ] I/flutter ( 4934): #19
_WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding._handlePersistentFrameCallback
(package:flutter/src/rendering/binding.dart:268:5)
[        ] I/flutter ( 4934): #20     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback
(package:flutter/src/scheduler/binding.dart:988:15)
[        ] I/flutter ( 4934): #21     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleDrawFrame
(package:flutter/src/scheduler/binding.dart:928:9)
[        ] I/flutter ( 4934): #22     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._handleDrawFrame
(package:flutter/src/scheduler/binding.dart:840:5)
[        ] I/flutter ( 4934): #26     _invoke (dart:ui/hooks.dart:209:10)
[        ] I/flutter ( 4934): #27     _drawFrame (dart:ui/hooks.dart:168:3)
[        ] I/flutter ( 4934): (elided 9 frames from package dart:async)
[        ] I/flutter ( 4934): ════════════════════════════════════════════════════════════════════════════════════════════════════

No issues found! (ran in 20.5s)

[✓] Flutter (Channel stable, v1.2.1, on Linux, locale en_US.UTF-8)
    • Flutter version 1.2.1 at /home/zhangyuzhou/flutter
    • Framework revision 8661d8aecd (3 weeks ago), 2019-02-14 19:19:53 -0800
    • Engine revision 3757390fa4
    • Dart version 2.1.2 (build 2.1.2-dev.0.0 0a7dcf17eb)

[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at /home/zhangyuzhou/Android/Sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-28, build-tools 28.0.3
    • Java binary at: /home/zhangyuzhou/android-studio/jre/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1248-b01)
    • All Android licenses accepted.

[✓] Android Studio (version 3.3)
    • Android Studio at /home/zhangyuzhou/android-studio
    • Flutter plugin version 33.3.1
    • Dart plugin version 182.5215
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1248-b01)

[!] IntelliJ IDEA Community Edition (version 2018.1)
    • IntelliJ at /home/zhangyuzhou/Downloads/idea-IC-181.4892.42
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • For information about installing plugins, see
      https://flutter.io/intellij-setup/#installing-the-plugins

[!] VS Code (version 1.32.1)
    • VS Code at /usr/share/code
    ✗ Flutter extension not installed; install from
      https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter

[✓] Connected device (1 available)
    • Pixel 2 XL • 805KPYR1822994 • android-arm64 • Android 9 (API 28)

! Doctor found issues in 2 categories.

/cc @bparrishMines

I don't think this is the root cause, but at the very least your code here is out of order:
_cameraController.value.isStreamingImages &&
        _cameraController != null

You're trying to access the _cameraController before checking if it's null..  If it ever is null you'll get an exception there.  Swap those two.

two

Thank you for your reply.
I swapped and got the same exception. : )

Hi @YuzhouZhang
I think you may need an await for controller.stopImageStream(). It's asynchronous so this may be a race condition.
You could try
if (controller != null) {
  controller.stopImageStream().then((_) {
    controller.dispose();
  });
}

You could also just call controller?.dispose(). This method should also stop all image streaming.

You could also just call controller?.dispose(). This method should also stop all image streaming.

Thanks a lot.
if (controller != null) {
  controller.stopImageStream().then((_) {
    controller.dispose();
  });
}

or
controller?.dispose()

both work fine for me.

You could also just call controller?.dispose(). This method should also stop all image streaming.

Thanks a lot.
if (controller != null) {
  controller.stopImageStream().then((_) {
    controller.dispose();
  });
}

or
controller?.dispose()

both work fine for me.

Sorry, old question, but I'm a little confused after reading. You say controller?.dispose() is working for you.
But you already had controller?.dispose() in your question.
What did you change to make it work?
Thanks.


Implement error state designs

The core reason for https://github.com/penumbra-zone/dex-explorer/issues/175 & https://github.com/penumbra-zone/dex-explorer/issues/195
Should implement error state design for:

Summary
Route book
My Positions
Chart

Mistakenly put the first commit of this into https://github.com/penumbra-zone/dex-explorer/pull/224, rest will go here.


Add MINERS Bitext retrieval benchmark

Checklist

[x] Run tests locally to make sure nothing is broken using make test.
[x] Run the formatter to format the code using make lint.

@KennethEnevoldsen please advise on how to test the benchmark and also the point for adding the benchmark. Thank you!

so the following should work:
import mteb

from mteb.benchmark import MTEB_MINERS_BITEXT_MINING
# in the future I would like this to be:
# mteb.get_benchmark("MINERS")

eval = mteb.MTEB(tasks=MTEB_MINERS_BITEXT_MINING)
eval.run(model)


Fixes #78 - Explicitly name reusable header types as 'response header' types

Motivation
Fixes #78
Modifications
Rename header types as response header types
Result
The name pf the types will better reflect the OpenAPI documentation
Test Plan
Ran all the tests

@swift-server-bot add to allowlist

Thanks, @PARAIPAN9! 🙏


Make the Danger Zone safer by adding a confirmation safeguard that requires typing a specific phrase

Is your feature request related to a problem? Please describe.
The Danger Zone contains stuff about resetting all progress and deleting accounts. Currently, you only have to click on the “Yes” button or anything similar to perform these dangerous actions. I think leaving this just like the way it is could cause lots of progress loss:
Screenshot_2024-07-28-21-32-37-799_com kiwibrowser browser-edit
Screenshot_2024-07-28-21-33-15-253_com kiwibrowser browser-edit
Describe the solution you'd like
My suggestion is to add a failsafe, where you type something like “I agree that all progress will be lost” (without quotes), just like in GitHub:
IMG_20240728_214736
Describe alternatives you've considered
No alternatives would fit for the solution because the failsafe must take a lot of time for users in order to protect users from progress loss accidents. So, it is crucial to make the failsafe be a typing specific phrase, which takes a lot of time so that users will not experience progress loss accidents.
Additional context
No response

That seems reasonable to me. Can anyone think of a reason not to go this route?
cc: @huyenltnguyen @ahmaxed

It's a pretty standard pattern on modern apps, anymore.

It is a good idea. I suggest making the phrase short so it is not too laborious.

It is a good idea. I suggest making the phrase short so it is not too laborious.

I mean, this is not something you would do occasionally. You would do this maybe one or two times in your life, so the long phrase should remain, in my opinion.


Ammo Tracking support

We've been asked to make ammo dynamically spend itself. Possible issues if people are testing a weapon or such - probably could add a global "Track Ammo On/Off" while they are setting things up.

Needs API script support. That having been said, it would be possible to add painless support for doing this via ChatSetAttr with a bit of extra plumbing under the hood.

Closed by 1f29c65.


Bug:  TypeError: forward() got an unexpected keyword argument 'boundary_rightmost'

Hi,
When I use your recent code, in example/aishell/s5.
when I score.sh the result, get error:
File "/../../../neural_sp/bin/asr/eval.py", line 259, in
main()
File "../../../neural_sp/bin/asr/eval.py", line 190, in main
progressbar=True)
File "neural_sp/evaluators/word.py", line 82, in eval_word
ensemble_models=models[1:] if len(models) > 1 else [])
File "neural_sp/models/seq2seq/speech2text.py", line 752, in decode
ensmbl_eouts, ensmbl_elens, ensmbl_decs)
File "neural_sp/models/seq2seq/decoders/transformer.py", line 772, in beam_search
eps_wait=eps_wait)
File "tools/venv/lib/python3.7/site-packages/torch/nn/modules/module.py", line 489, in call
result = self.forward(*input, **kwargs)
TypeError: forward() got an unexpected keyword argument 'boundary_rightmost'
0%|                                                                    | 0/400 [00:00<?, ?it/s]

Thank you for your report. I fixed it in #40.


Feedback: Graphback config should let you skip database creation

Config only supports 2 databases. Developers should be able to skip db creation completely and provide their own CRUD source.

@wtrocki I am working on this issue

https://github.com/aerogear/graphback/blob/master/packages/graphback-cli/src/components/init.ts#L8
The initConfig was imported but never used... should I remove it there is some role of it

This issue is very similar to the https://github.com/aerogear/graphback/pull/800
I think we had some conflict in those. We initially wanted to skip it but now we actually asking for the db. Sorry for that @jaskeerat789

no problem


Bugfix WordBazaar

Fixes #1113
Empty assets list and create token error were fixed in the contracts by @thepiwo
@Liubov-crypto , please test https://test-wordbazaar.aggregator.z52da5wt.xyz/

Retested, bugs fixed. LGTM.


iOSHostConfig & API Update

Updated API to be align with documentation.
Added json hostconfig option
Not all warning and errors in documentation are implemented.

@nesalang,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

There are a lot of changes to hot config in this branch https://github.com/Microsoft/AdaptiveCards/tree/newspacingmodel_stagingbranch.
I believe it would be more productive if you change the base branch for this PR to that one, and then update the iOS code to match the changes.


replaces ocw-config-runner to ocw_config_runner

ocw-config-runner folder has "-" in between that causes error when you import it in python, python sees at minus sign not dash so they need to be change to something like "_".

Merged build triggered. Test Failed.

Merged build started. Test Failed.

Merged build finished. Test Passed.

Merged build triggered. Test Failed.

Merged build started. Test Failed.

Merged build finished. Test Passed.


Release videointelligence 1.4.0

This pull request was generated using releasetool.
Closes #6026.

Release is at https://github.com/GoogleCloudPlatform/google-cloud-python/releases/tag/videointelligence-1.4.0

@theacodes Likely works better for the originator to merge it, so they know to trigger releasetool tag in their local clone.

google-cloud-videointelligence 1.4.0 release distributions are on PyPI.