hotfix - Mime magic gem 0.3.5 has been yanked due to licensing issue …

hotfix - Mime magic gem 0.3.5 has been yanked due to licensing issue - causing chaos with every rails app yesterday.  Upgraded to 0.3.6

Duplicated

Duplicate of https://github.com/ministryofjustice/c100-application/pull/1170


Time out problem when running autopilot demo

Hi, i am using CarlaUE4 which is built on Windows 10 environment.
And now, i am tring to follow the direction "Connecting a Python client".
I am using VS2015 x64 native tools command prompt to run the client example, and I can start running the autopilot example, but after it run a while, time out error occured, and the prompt showed that the distance host forced closing a existing connection.
After a while, a new episode started itself, and it did not run too long, the time out error occured agian.

It never autopilot successfully.
Do you have any suggestions or way to solve this problem?

<EMAIL_ADDRESS>am using CarlaUE4 0.8 which is built on Windows 10 environment.
I am tring ro run driving_benchmark_example.py. I opened $./CarlaUE4.exe -carla-server at first, then, i opened $./driving_benchmark_example.py.
However, time out problem occured all the time, and it never connected sussesfully.
And I tried to run $./client_example.py --autopilot, it can connected sussesfully.
What can i do to solve this problem?

@marcgpuig  @juaxix
Can someone reproduce this in a windows system ?

Hello all. @Liangsyl  i think there is a problem with the connection, looking to the errors: 10054,  10061...have you allowed the .exe files in your firewall?, have you tried using a different port instead of 2000? (CarlaSettings.ini) ,maybe you have this port used by other software.


ODBC SSL Compliance Fix

Description
Fixed ODBC Driver Issues:

Driver ignores the UseSSL flag
SQL plugin query fails if opensearch instance has SSL enabled, and host url doesn't use https:// prefix
UI allows for mismatch between UseSSL flag, and specified protocol in host url
Driver defaults to OpenDistro sql endpoint in event of error with SQL plugin query

Issues Resolved
Issue: 280
Check List

[x] New functionality includes testing.

[x] All tests pass, including unit test, integration test and doctest

[x] New functionality has been documented.

[ ] New functionality has user manual doc added

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

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

Codecov Report

Merging #653 (61e9a7b) into main (26058b8) will decrease coverage by 31.81%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##               main     #653       +/-   ##
=============================================
- Coverage     94.57%   62.76%   -31.82%
=============================================
  Files           278       10      -268
  Lines          7430      658     -6772
  Branches        554      119      -435
=============================================
- Hits           7027      413     -6614
+ Misses          349      192      -157
+ Partials         54       53        -1

Flag
Coverage Δ

query-workbench
62.76% <ø> (ø)

sql-engine
?

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...ensearch/sql/planner/physical/PhysicalPlanDSL.java

...rg/opensearch/sql/ppl/config/PPLServiceConfig.java

...pression/window/ranking/RankingWindowFunction.java

...nsearch/data/value/OpenSearchExprValueFactory.java

...org/opensearch/sql/expression/env/Environment.java

...rch/data/value/OpenSearchExprTextKeywordValue.java

...ression/operator/arthmetic/ArithmeticFunction.java

...c/main/java/org/opensearch/sql/expression/DSL.java

...org/opensearch/sql/data/model/ExprStringValue.java

...g/opensearch/sql/expression/LiteralExpression.java

... and 258 more

Continue to review full report at Codecov.

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

Demo video for this fix: Issue-280


Highlight color does not look great with certain terminal themes

I'm using the Tokyo Night theme in my terminal and the highlight color behaves poorly both in dark and light themes:

Other UI elements looks about right. Should I blame the theme, or is this something that can be improved?
I noticed the colors do change a bit outside of the test environment shown above, but I'm not sure what caused this (I have $LS_COLORS set, if it's worth mentioning), there doesn't seem to be a way to configure it either (except --no-color).

I have the same problem, although the theme is different...

Hi, I have added possibility to change color of the selected row in the configuration file.


Issues with Relationships

I have been trying pretty much all day to get relationships to work in my application. I have tried many different combinations of relationships to get this to work.
Class Job {

	public function contractor() {
		return $this->hasOne('App\Company','job_id','contractor_id');
	}

	public function architect() {
		return $this->hasOne('App\Company','job_id','architect_id');
	}
}

Class Company {

	public function jobContractor() {
		return $this->belongsTo('App\Job','job_id','contractor_id');
	}

	public function jobArchitect() {
		return $this->belongsTo('App\Job','job_id','architect_id');
	}

}

The company class I have tried like this too:
Class Company {

	public function job() {
		return $this->belongsTo('App\Job','job_id','contractor_id');
	}

}

The business rules are:

A job can have one architect and one contractor
A company can be an architect or contractor for more than one job
I need the architect and contractor's ID able to be different.

If I can get anything to work, it will work in one direction and it will not save to the database.
Am I doing something wrong or missing something?

I figured out my issue. The job needed to belong to the company,which doesn't make too much sense to me for the application. Also, is there a way to add a new relationship from the job class to the company by saving on the job instead of on the company?


Run flutter code from androidNotificationCallback

Any suggestion for how to display an alert or rebuild part of the UI from androidNotificationCallback?
I tried SchedulerBinding.instance.addPostFrameCallback() and WidgetsBinding.instance.addPostFrameCallback() with no success in getting that working.

I resolved the issue using communication between isolates.

I think you can do
final SendPort send = IsolateNameServer.lookupPortByName(_isolateName);
send?.send("Notification");

and do what you want in the listen callback, the only problem is if the app is killed, nothing will be listening so the best way for this is to put a global variable on true for example and then on app start check if its true but we're having some problem for this #31
Oh you just did that lol


Add a script to help determine if the host meets the requirements for installing harvester

IMPORTANT: Please do not create a Pull Request without creating an issue first.

Problem:

Solution:

add a host check script
Related Issue:
Test plan:

where this has been used? or is it for the user to run this script manually for testing?

where this has been used? or is it for the user to run this script manually for testing?
run  manually for testing.
if user deploy Harvester to an existing k8s cluster,  they may need this script to testing  if the host meets the requirements.


Implement SyncSender and AsyncSender

What's needed?
The Sender class provides an async send() method, but most (if not all) our senders could currently send synchronously. Being async means that the control flow/CPU could be taken away from the caller, which is very inconvenient for cases where sync is guaranteed.
Proposed solution
Split Sender into SyncSender and AsyncSender (probably make them protocols instead of classes). SyncSender would provide a sync send() and AsyncSender would provide a async asend().
Use cases

Data sourcing actor: https://github.com/frequenz-floss/frequenz-sdk-python/pull/225#discussion_r1123163181
The resampling actor (Resampler class) can also benefit from this, now the resampling functions need to be async because send() is async: https://github.com/frequenz-floss/frequenz-sdk-python/blob/ce6d19b869ed26c4df1e08a332f4e4fa4cbfc199/src/frequenz/sdk/timeseries/_resampling.py#L711-L716
There could be channels that only provide a sync or an async sender interface.
Broadcast channel could implement senders that support both operations, send() would drop like now and asend() would wait until the queue has room for the message.

Alternatives and workarounds
Currently the Data sourcing actor is just spawning tasks for sending and assuming they will eventually finish, and successfully, as there is no error handling for the spawned tasks and if they don't end, we'll be leaking dangling tasks forever.
Additional context

Even if we don't have AsyncSenders now, we will probably need them in the future, at least for this issue: #20
Experiment using sync send() in the Data sourcing actor:

https://github.com/frequenz-floss/frequenz-sdk-python/pull/233
https://github.com/frequenz-floss/frequenz-channels-python/pull/75

Additional context: In the experimental branches, this change resulted in a speed up of the datasourcing benchmark from 30k/s to 70k/s samples

I think there are some issues with doing this:

We won't be able to pass around the same Sender everywhere.  And independently developed libraries will have unnecessary compatibility issues because one expects sync and another one provides async.
we won't be able to support inter-process communication through tcp if we switch to sync.  A lot of the async decisions were made to ensure that we'll have a seamless transition for actors, such that they would "just work" in multi-process contexts as soon as the sdk supports it.

Making it sync improves the performance in single-thread contexts,  but it will limit our ability to scale beyond a single thread, in the future.  So I'm against this change.

I thought the idea was multi-process, not multi-thread? It's an important distinction here..

we won't be able to support inter-process communication through tcp if we switch to sync.

I doubt that statement to be honest. Right now, all send does is put the sample in a queue. If that queue is full, it drops the oldest sample.
Networked or not, this never needs a sync send.
There are various strategies to handle the network part, the most important aspect is whether we need reliability or not. If we do, it needs to be async of course, otherwise not.
I believe we have both requirements, some need reliability, some don't.
At the moment the data sourcing actor is simply infinitely creating tasks so this is basically just a rather inefficient queue with the only job to call one function which puts the sample.. in another queue.

we won't be able to support inter-process communication through tcp if we switch to sync.
I doubt that statement to be honest. Right now, all send does is put the sample in a queue. If that queue is full, it drops the oldest sample.

These are both good points. If we have a send queue when we go networked, then we'll need a sending task that consumes from the queue, because right now is the receiver which consumes from the queue, but when there is a socket in the middle, that won't be the case.
But if we use a queue and we have (sync) send bursts, it will be very hard that the queue gets full and we lose messages, which is probably not what we want. Relegating the buffering to the socket might be a good approach.
But then, when we use TCP, then suddenly there is no more unreliable sending of messages, if we really want to provide some unreliable message sending approach that is more real-time, we should probably use UDP (and UDPs send_to() is sync).
Maybe the real discussion here, thinking about the long term (i.e. networked transport for channels), is if we want to really provide unreliable messages channels. We certainly will need reliable channels, to send power-setting commands for example. If we want unreliable channels, then I think having a sync send() still makes sense. The sync / async should be tied to that IMHO.

Actually, with the removal of Bidirectional, now we only have 2 types of channels and 1 is sync (Broadcast) and the other one is async (Anycast). There is also an issue about having an option to make Broadcast senders block too.
So I'm not sure if this is feasible or not, unless we have 2 different types of broadcast channels, one that blocks sends and one that doesn't, instead of making it just an option for the same channel.
Updating the issue description to mention this.


README's first example does not run as desired.

The code I run is taken from README.md Basic usage with first line modified. It is
var stan = require( 'node-nats-streaming' ).connect( 'test-cluster', 'client-123', 'nats://localhost:4222' );

stan.on( 'connect', function() {
    // Simple Publisher (all publishes are async in the node version of the client)
    stan.publishAsync( 'foo', 'Hello World!', function( err, guid ) {
        if ( err ) {
            console.log( 'publish failed: ' + err );
        } else {
            console.log( 'published message with guid: ' + guid );
        }
    } );

    // Subscriber can specify how many existing messages to get.
    var subscription = stan.subscribe( 'foo' );
    subscription.on( 'message', function( msg ) {
        console.log( 'Received a message: ' + msg.getData() );
    } );

    // Unsubscribe
    subscription.unsubscribe();

    // Close connection
    stan.close();
} );

The result it produces
$ node a.js
Error
    at Client.publish (/.../node_modules/nats/lib/nats.js:930:15)
    at Client.request (/.../node_modules/nats/lib/nats.js:1123:10)
    at Client.<anonymous> (/.../node_modules/node-nats-streaming/lib/stan.js:254:13)
    at emitOne (events.js:96:13)
    at Client.emit (events.js:188:7)
    at Client.connectCB (/.../node_modules/nats/lib/nats.js:330:10)
    at /.../node_modules/nats/lib/nats.js:755:67
    at Client.processInbound (/.../node_modules/nats/lib/nats.js:725:33)
    at Socket.<anonymous> (/.../node_modules/nats/lib/nats.js:405:16)
    at emitOne (events.js:96:13)
Error
    at Client.publish (/.../node_modules/nats/lib/nats.js:930:15)
    at Stan.publishAsync (/.../node_modules/node-nats-streaming/lib/stan.js:410:11)
    at Stan.<anonymous> (/.../a.js:6:10)
    at emitOne (events.js:96:13)
    at Stan.emit (events.js:188:7)
    at /.../node_modules/node-nats-streaming/lib/stan.js:260:12
    at Object.callback (/.../node_modules/nats/lib/nats.js:1121:9)
    at Client.processMsg (/.../node_modules/nats/lib/nats.js:873:17)
    at Client.processInbound (/.../node_modules/nats/lib/nats.js:805:24)
    at Socket.<anonymous> (/.../node_modules/nats/lib/nats.js:405:16)
Error
    at Client.publish (/.../node_modules/nats/lib/nats.js:930:15)
    at Client.request (/.../node_modules/nats/lib/nats.js:1123:10)
    at Stan.subscribe (/.../node_modules/node-nats-streaming/lib/stan.js:493:11)
    at Stan.<anonymous> (/.../a.js:15:29)
    at emitOne (events.js:96:13)
    at Stan.emit (events.js:188:7)
    at /.../node_modules/node-nats-streaming/lib/stan.js:260:12
    at Object.callback (/.../node_modules/nats/lib/nats.js:1121:9)
    at Client.processMsg (/.../node_modules/nats/lib/nats.js:873:17)
    at Client.processInbound (/.../node_modules/nats/lib/nats.js:805:24)
Error
    at Client.publish (/.../node_modules/nats/lib/nats.js:930:15)
    at Client.request (/.../node_modules/nats/lib/nats.js:1123:10)
    at Subscription.unsubscribe (/.../node_modules/node-nats-streaming/lib/stan.js:587:19)
    at Stan.<anonymous> (/.../a.js:21:18)
    at emitOne (events.js:96:13)
    at Stan.emit (events.js:188:7)
    at /.../node_modules/node-nats-streaming/lib/stan.js:260:12
    at Object.callback (/.../node_modules/nats/lib/nats.js:1121:9)
    at Client.processMsg (/.../node_modules/nats/lib/nats.js:873:17)
    at Client.processInbound (/.../node_modules/nats/lib/nats.js:805:24)
Error
    at Client.publish (/.../node_modules/nats/lib/nats.js:930:15)
    at Client.request (/.../node_modules/nats/lib/nats.js:1123:10)
    at Stan.close (/.../node_modules/node-nats-streaming/lib/stan.js:299:11)
    at Stan.<anonymous> (/.../a.js:24:10)
    at emitOne (events.js:96:13)
    at Stan.emit (events.js:188:7)
    at /.../node_modules/node-nats-streaming/lib/stan.js:260:12
    at Object.callback (/.../node_modules/nats/lib/nats.js:1121:9)
    at Client.processMsg (/.../node_modules/nats/lib/nats.js:873:17)
    at Client.processInbound (/.../node_modules/nats/lib/nats.js:805:24)
events.js:160
      throw er; // Unhandled 'error' event
      ^

Error: stan: invalid subscription
    at /.../node_modules/node-nats-streaming/lib/stan.js:592:26
    at Object.callback (/.../node_modules/nats/lib/nats.js:1121:9)
    at Client.processMsg (/.../node_modules/nats/lib/nats.js:873:17)
    at Client.processInbound (/.../node_modules/nats/lib/nats.js:805:24)
    at Socket.<anonymous> (/.../node_modules/nats/lib/nats.js:405:16)
    at emitOne (events.js:96:13)
    at Socket.emit (events.js:188:7)
    at readableAddChunk (_stream_readable.js:176:18)
    at Socket.Readable.push (_stream_readable.js:134:10)
    at TCP.onread (net.js:543:20)

Thanks for finding this. The issue is a subtle one. The unsubscribe/close are getting executed before the subscription is fully processed. I will add a comment to the example. To make the sample work correctly requires a bit more effort:
#!/usr/bin/env node

"use-strict";

var stan = require('node-nats-streaming').connect('test-cluster', 'test');

stan.on('connect', function () {

  // Simple Publisher (all publishes are async in the node version of the client)
  var payload = 'Hello World!' + Date.now();
  stan.publishAsync('foo', payload, function(err, guid){
    if(err) {
      console.log('publish failed: ' + err);
    } else {
      console.log('published message with guid: ' + guid + " payload:" + payload);
    }
  });

  // Subscriber can specify how many existing messages to get.
  var opts = stan.subscriptionOptions().setStartWithLastReceived();
  var subscription = stan.subscribe('foo', opts);
  subscription.on('message', function (msg) {
    console.log('Received a message: ' + msg.getData());
  });

  setTimeout(function() {
    subscription.unsubscribe();
    subscription.on('unsubscribed', function() {
      stan.close();
    });
  }, 1000);
});

stan.on('close', function() {
  process.exit();
});

@aricart, thank you for correcting the example. Now it says
Received a message: Hello World!1476277427730 and published message with guid: IB6GO035H15FLHWJP5WIYN payload:Hello World!1476277427730.
However, as well it still produces 7 errors as above. I suspect it the nats configuration could be the cause. I've tried an example from node-nats repo. It is producing the same errors in my case.  However, I have no clue what could it be.

I ran the program several times. Didn't run into the error you have.
Received a message: Hello World!1476280624154
Received a message: Hello World!1476280702944
published message with guid: 403BYUBL3I5QVZN2QOL4AZ payload:Hello World!1476280702944
[albertoricart@barsoom:~/node-example-test]$ node basic.js
Received a message: Hello World!1476280702944
Received a message: Hello World!1476280704976
published message with guid: Y6VGVKBLZH22177LZIMOKU payload:Hello World!1476280704976
[albertoricart@barsoom:~/node-example-test]$ node basic.js
Received a message: Hello World!1476280704976
Received a message: Hello World!1476280706922
published message with guid: OORU10TQDQFQKYRNUTT348 payload:Hello World!1476280706922
[albertoricart@barsoom:~/node-example-test]$ node basic.js
Received a message: Hello World!1476280706922
Received a message: Hello World!1476280708874
published message with guid: LNZZ8TIOXXX568942QUSL3 payload:Hello World!1476280708874
[albertoricart@barsoom:~/node-example-test]$ node basic.js
Received a message: Hello World!1476280708874
Received a message: Hello World!1476280710838
published message with guid: NOJ47V0CO84HYKCTVDFCTJ payload:Hello World!1476280710838
[albertoricart@barsoom:~/node-example-test]$ node basic.js
published message with guid: 7FOTLCFDF1625NVZJN7KP0 payload:Hello World!1476280712692
Received a message: Hello World!1476280712692
[albertoricart@barsoom:~/node-example-test]$ node basic.js
Received a message: Hello World!1476280712692
Received a message: Hello World!1476280714671
published message with guid: BLEOQ7CRG6Q435S87JZZDH payload:Hello World!1476280714671
[albertoricart@barsoom:~/node-example-test]$ node basic.js
Received a message: Hello World!1476280714671
Received a message: Hello World!1476280716606
published message with guid: O4R1RY9IJVY5I0G6TL1GPO payload:Hello World!1476280716606
[albertoricart@barsoom:~/node-example-test]$ node basic.js
Received a message: Hello World!1476280716606
Received a message: Hello World!1476280720034
published message with guid: SLPF1N6LG4Q8M6LK20LGWM payload:Hello World!1476280720034
[albertoricart@barsoom:~/node-example-test]$ node basic.js
Received a message: Hello World!1476280720034
Received a message: Hello World!1476280722253
published message with guid: 0ST6OPH046G1V81TGCNYEB payload:Hello World!1476280722253
[albertoricart@barsoom:~/node-example-test]$ node basic.js
Received a message: Hello World!1476280722253
Received a message: Hello World!1476280724122
published message with guid: EOJO0SQNY90A234GLGHXEC payload:Hello World!1476280724122
[albertoricart@barsoom:~/node-example-test]$ node basic.js
Received a message: Hello World!1476280724122
Received a message: Hello World!1476280726080
published message with guid: MH6G11U0F2EIVJ5LD21C9G payload:Hello World!1476280726080
[albertoricart@barsoom:~/node-example-test]$ node basic.js
Received a message: Hello World!1476280726080
Received a message: Hello World!1476280728050
published message with guid: JNWTMK4HNE5D72A3V2W386 payload:Hello World!1476280728050
[albertoricart@barsoom:~/node-example-test]$

Can you attach your node_modules/nats/lib/nats.js file. Your version is not matching mine.
Alternatively, you can delete nats and node-nats-streaming from node_modules, and do npm install node-nats-streaming

Thank you, @aricart. I've put basic.js into a new catalog and installed node-nats-streaming as you've shown. It works.


Display issue on GeoJSON file

This file does not display correctly in ol3, but does in QGIS: https://raw.githubusercontent.com/datasets/lme-large-marine-ecosystems/master/offshore/json/lme66-offshore.geojson

Another dataset that fails: https://raw.githubusercontent.com/datasets/geo-boundaries-world-110m/master/countries.geojson
but works fine in QGIS:

I bet in QGIS, you're looking at those in EPSG:4326 as view projection. Coordinates near the poles cannot be transformed to EPSG:3857, which is the view projection in OpenLayers. You'd need to use an ol.View with projection set to EPSG:4326.

Good point @ahocevar

Would there be a way for us to fail more gracefully (assert) or not worth the trouble?

It would be possible, but it would slow down coordinate transforms in debug mode.

Okay, I'll close this one. Thanks for clearly stating the issue here ;-)

The geojson is correctly displayed in the vector-layer example

Ah, so only the auto-zooming to the data extent is the issue.

Oh really? And that also uses EPSG:3857 right @fredj?
I was using the drag and drop example.

@bartvde so that check would be easy - we could assert that we don't ol.View#fit to extents with NaN coordinates.

It's not NaN but Infinity:
0: -20037508.342789244
1: -Infinity
2: 20037508.34278926
3: 18440002.895114224

So the check would have to be for Infinity, -Infinity and NaN. All these values can occur with coordinate transforms outside the world bounds.

Would we do the check just for the fitting of an extent?

Looking at the source code of ol.View#fit, I think it would be best to do the NaN/Infinity/-Infinity check on the coordinates that are passed to setCenter, and another sanity check on the value passed to setResolution. Both in the respective methods. Better than in ol.View#fit.

Good suggestion

In the second dataset, some coordinates are outside the world boundaries (for example<PHONE_NUMBER>00000142, -90.095554572290979, etc ...)


x/tools/cmd/gopls: should support modules in rootURI subdirectories

What version of Go are you using (go version)?

$ go version
go version go1.12 linux/amd64

Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/vince/.cache/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/vince"
GOPROXY=""
GORACE=""
GOROOT="/home/vince/go"
GOTMPDIR=""
GOTOOLDIR="/home/vince/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/home/vince/dev/go.mod"

What did you do?
I am using vscode to edit a project consisting of several subdirectories, one of them being the root of my go module.

- doc
- resources
...
- src
    go.mod
    go.sum

What did you expect to see?
The root directory /home/vince/dev is opened in vscode, the go module is at /home/vince/dev/src/go.mod. When opening src/admin/file.go I'd like to have working completion / hover / ...
What did you see instead?
gopls does not work: the newColumnMap function returns an error "no file information for file:///home/vince/dev/src/admin/file.go"
(tok := f.GetToken(ctx) returns nil)
Manually updating the packages.Config.Dir path in server.go (line 108) works around the problem (Dir:     rootPath + "/src") but of course this is not a proper fix
Should gopls try to find the appropriate go module for each given file by itself ? Or should the vscode-go plugin be responsible for it ? (In this case this bug should be reassigned to https://github.com/Microsoft/vscode-go)

I found this, too.
go list (and therefore go/packages) only seems to work properly when its pwd is inside the module being resolved.
~/issue30841 $ tree
.
└── a
    ├── b
    │   ├── go.mod
    │   └── main.go
    ├── c
    │   └── main.go
    ├── go.mod
    └── main.go

3 directories, 5 files

Works:
~/issue30841/a $ go list $(pwd)
github.com/broady/issue30841/a

~/issue30841/a $ go list $(pwd)/c
github.com/broady/issue30841/a/c

~/issue30841/a/c $ go list $(pwd)
github.com/broady/issue30841/a/c

~/issue30841/a/b $ go list $(pwd)
github.com/broady/issue30841/a/b

Does not work (pwd is outside module):
~/issue30841 $ go list $(pwd)/a
go: cannot find main module; see 'go help modules'
Exit code 1

~/issue30841/a $ go list $(pwd)/b
can't load package: package github.com/broady/issue30841/a/b: unknown import path "github.com/broady/issue30841/a/b": cannot find module providing package github.com/broady/issue30841/a/b

@broady : I applied your change locally and it makes the language server work properly for me at least

@broady thx~

This issue is a duplicate of #29174, and as the discussion there suggests, @broady's fix will not actually work. We are trying to figure out a good approach for fixing this problem, but it's difficult because LSP sends a rootURI when it is initialized, so we can't just use the current working directory.

Duplicate of #29174

@stamblerre  for the broady's fix, would the approach below be a better way?
	originDir := cfg.Dir
	cfg.Dir = filepath.Dir(f.filename)

	pkgs, err := packages.Load(&cfg, fmt.Sprintf("file=%s", f.filename))

	cfg.Dir = originDir

We are trying to figure out a good approach for fixing this problem, but it's difficult because LSP sends a rootURI when it is initialized, so we can't just use the current working directory.

Encounter this problem too, based on @broady's fix, I use the following approach for the time being. Looking forward to the official fix!
originDir := cfg.Dir

fdir := filepath.Dir(f.filename)
if !strings.HasPrefix(fdir, os.Getenv("GOPATH/pkg/mod“)) {
	cfg.Dir = fdir
}
pkgs, err := packages.Load(&cfg, fmt.Sprintf("file=%s", f.filename))

cfg.Dir = originDir

The official fix is already in, we support multiple workspace folders now.
The job of finding the go.mod files that people care about and adding their folders to the workspace is up to either the user or the editor/client, but once that has happened, gopls will correctly work in those directories.

The job of finding the go.mod files that people care about and adding their folders to the workspace is up to either the user or the editor/client, but once that has happened, gopls will correctly work in those directories.

@ianthehat :

is there already some support in the vscode-go plugin for this ? I had a look but see nothing related in the changelog
is there a reason why the gopls server couldn't find the proper go.mod file by itself (by scanning the rootURI subdirectories for example), I don't understand why every editor/client should have to implement this by itself

No, there is no automatic support, just add the directories to your workspace by hand.
The trouble as discussed in the other bugs is that there is no correct answer.
If you think through the edge cases of nested modules and replace directives with differing versions of dependancies there is no reasonable way to pick the right target of a cross module jump without understanding the flow that got the user to that point.
This means it is a question of intent and style, and thus cannot (and should not be) be answered automatically by gopls.

@ianthehat, is there anything remaining to be done for this issue?

No, there is no automatic support, just add the directories to your workspace by hand.
The trouble as discussed in the other bugs is that there is no correct answer.
If you think through the edge cases of nested modules and replace directives with differing versions of dependancies there is no reasonable way to pick the right target of a cross module jump without understanding the flow that got the user to that point.
This means it is a question of intent and style, and thus cannot (and should not be) be answered automatically by gopls.

@ianthehat : how should editors implement the necessary support ? Right now this is the most annoying issue with the language server, with no specific editor support for this, having to manually open the root directory of each module does not make for a great user experience at all.
As a sidenote: I also believe that although there are probably many edge cases that can't be handled automatically, there should at least be some simple fallback in the language server that would make it work for the vast majority of cases that are not corner cases if the editor did not provide the required information.

The last piece for gopls of this is tracked in #31635 and fixed in https://go-review.googlesource.com/c/tools/+/175477
A better error message is being tracked in #31668
I don't want to dictate the right approach to editors, but I would suggest adding a workspace folder for all go.mod files seen at the earliest opportunity would cover the 99% case.


Update ciris to 1.2.1

Updates is.cir:ciris from 1.2.0 to 1.2.1.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "is.cir", artifactId = "ciris" } ]

labels: library-update, semver-patch

Codecov Report

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

@@           Coverage Diff           @@
##           master     #461   +/-   ##
=======================================
  Coverage   89.27%   89.27%
=======================================
  Files         119      119
  Lines        2574     2574
  Branches       78       78
=======================================
  Hits         2298     2298
  Misses        276      276

Impacted Files
Coverage Δ

...cala/hydra.ingest/services/IngestorRegistrar.scala
77.77% <0.00%> (-11.12%)
:arrow_down:

...ala/hydra/kafka/services/TopicBootstrapActor.scala
99.05% <0.00%> (+0.94%)
:arrow_up:

Continue to review full report at Codecov.

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


SAMZA-2444: JobModel save in CoordinatorStreamStore resulting flush for each message

Symptom
When Samza's job creates lots of tasks/partitions, it can take over a long time for AM to save the metadata in a run which may cause timeout exception.
We observed if the Samza's job has over 37k tasks/partitions, it takes over 10 min for AM to save it in a run.
Cause
JobModelManager uses CoordinatorStreamStore.put() to save job metadata information which does flush for each message, and the flush operation is heavy especially when the remote server suffering the performance issues.
Changes

[x] Separate flush from put/putAll/delete functions in CoordinatorStreamStore.
[x] Explicity call flush after call put/putAll/delete in related classes
[x] Batch write task partition assignments information to metadata store.
[x] Batch write task container information to metadata store.

Tests

[x] All unit tests and integration tests are passed

API Changes

[x] Replace writeTaskPartitionAssignment with new batch write method writeTaskPartitionAssignments in TaskPartitionAssignmentManager
[x] Replace writeTaskContainerMapping with  new batch write method writeTaskContainerMappings in TaskAssignmentManager.

Upgrade Instructions
None
Usage Instructions
None

@xinyuiscool @prateekm
Can any of you help check and merge the PR if no new comments? Thanks.


Enrich failed events with custom attributes provided via HTTP Response Headers

Problem
Currently deadLetterSink strategy enriches error message with a set of predefined attributes (knativeerrordest, knativeerrorcode and knativeerrordata).
It is not possible to provide additional custom attributes to add to the error and the only attribute where there is a bit of control is knativeerrordata but it contains the body of the response so it is a single value.
The proposal is to have a mechanism (opt-in?) to ask Knative Broker to take HTTP Response Headers and add them as CloudEvents attributes to the deadLetterSink event.
A proposal for the opt-in scenario could be to have an allowlist annotation defined at Trigger (or Broker?) level with the list of supported custom extensions and * to forward all of them
# enable two custom extensions
x-kafka.eventing.knative.dev/deadLetterSink.custom.extensions: ['mycustomattribute', 'anothercustomattribute']
# enable all extensions
x-kafka.eventing.knative.dev/deadLetterSink.custom.extensions: ['*']

Persona:
I think this feature is useful both for Event consumer (developer) and System Operator personas (essentially all personas involved with error handling)
Exit Criteria
It should be possible for a subscriber sink to enrich error HTTP Response with custom HTTP headers that are included in the deadLetterSink message
Time Estimate (optional):
This is probably a quite simple implementation in Knative Kafka Broker (it changes the same classes of this other PR #2374) so it could be probably also a good-first-issue (1-2 days). It might be useful to bring a similar requirement to Knative Eventing to generalise the solution but it can takes more time.
Additional context (optional)
We have an error catalog (that is not based on HTTP error codes) that has error id, error reason and maybe also nested errors and we would like to avoid to "encode" them as raw string in the HTTP Response body.
Example
Event from Broker to Subscriber
HTTP Headers
specversion: 1.0
type: com.github.pull_request.opened
source: https://github.com/cloudevents/spec/pull
subject: 123
id: A234-1234-1234
time: 2018-04-05T17:31:00Z
comexampleextension1: value

Payload
My payload

Subscriber Response
HTTP Response
status: 500
mycustomerrordefinition: maintenance window

HTTP Response Body
Internal server error

DeadLetterSink message
Attributes
specversion: 1.0
type: com.github.pull_request.opened
source: https://github.com/cloudevents/spec/pull
subject: 123
id: A234-1234-1234
time: 2018-04-05T17:31:00Z
comexampleextension1: value
mycustomerrordefinition: maintenance window
knativeerrordest: /destination
knativeerrorcode: 500
knativeerrordata: Internal server error

Body
My payload

@danielezonca Thanks for the feedback!
I have a question:
Perhaps we could go with some well defined prefix? If present in the headers, those would be passed downstream as CE extension?
IMO this lowers the burden of extra configuration?

@danielezonca Thanks for the feedback!
I have a question: Perhaps we could go with some well defined prefix? If present in the headers, those would be passed downstream as CE extension?
IMO this lowers the burden of extra configuration?

Do you mean something like a fixed prefix ce-ext-*?
Yes this is a possible option, I was thinking about keeping this more flexible so that it makes less assumption on subscriber side and it can be easily configured but if the prefix is configurable at subscriber level it is probably enough 🤔

I believe this should be brought to general Knative Eventing spec first. So that interface(spec) - implementation relationship is preserved. Changes should be pushed downstream, not the other way around. If it makes sense :)

Hi @egorlepa I agree that this is a good candidate for a knative eventing improvement.
We faced this need using the Knative Kafka Broker but it is definitely not specific for Kafka.
I started this discussion with @matzew and he suggested to bring this upstream but I'm not familiar with Knative Eventing spec process so I dumped the idea here.
Fine for me to target spec first :)

Let's have it on the Eventing WG call, today (Wednesday)

We are using the kne- as a prefix.
If the response contains headers that start with the prefix, such as kne-mycustomerrordefinition: maintenance window, they end up as CloudEvent extension headers, like:
☁  cloudevents.Event
Validation: valid
Context Attributes,
  specversion: 1.0
  type: demo
  source: /my/curl/command
  id: 4711
  datacontenttype: application/json
Extensions,
  mycustomerrordefinition: maintenance window
  knativeerrorcode: 404
  ...

Here is a e2e test that shows the pattern: https://github.com/knative-sandbox/eventing-kafka-broker/pull/2657/files#diff-0de2d5afb422b7e648e6a13010e4331ecad2c15de240dcea0e8177e263e73e10R391-R422


Change SoilModel to use the data object

Description
This pull request alters the SoilModel so that it uses the data object to initialise itself and updates the data object as it goes. As part of this, the soil carbon pools are no longer attributes of the SoilCarbonPools class, instead these soil carbon pools are only stored as part of the data object. This is mainly for the sake of code clarity, as changes to the attributes (initialised from data) would change the data object for everyone. This still happens now but the code is explicit about it happening.
This PR also sets the logger level used by pytest has been to DEBUG globally, in order to ensure that debug messages are always seen by pytest. Previously, they were seen if pytest was run on the entire repo, but not if it was run on individual testing files. This option can be overridden in individual test functions or files, but if it proves to be problematic we can set it to another level.
Type of change

[x] New feature (non-breaking change which adds functionality)
[ ] Optimization (back-end change that speeds up the code)
[ ] Bug fix (non-breaking change which fixes an issue)

Key checklist

[x] Make sure you've run the pre-commit checks: $ pre-commit run -a
[x] All tests pass: $ poetry run pytest

Further checks

[x] Code is commented, particularly in hard-to-understand areas
[x] Tests added that prove fix is effective or that feature works

Oh yeah it's probably worth mentioning that the way that the data object gets updated is a bit of a placeholder. At the moment the value is simply overwritten, down the line we either want to output data at each step (i.e. before it gets overwritten), or want to make the data object into a time series.

In terms of the data update question, I've now set it up so that a single function updates the data object (SoilCarbonPools.update_soil_carbon_pools), and when it does so it updates the data object explicitly (rather than changing an attribute that was populated from the data object).
Down the line I might move this function into the soil_model module, so that soil model updates to the data object only happen within a single function, but that feels like too big a restructure to make midway through the review process of a PR.


Unknown prop 'level' (React 15)

The level attribute used here causes unknown prop warnings in React 15. I didn't see this prop being used as anything other than a debugging convenience and would love to quiet the error by changing it to a data attribute.
Unknown prop 'level' on <div> tag. Remove this prop from the element. For details, see https://fb.me/react-unknown-prop

Thanks for the PR!
You are right, the level prop shouldn't be part of the props at all. I don't think it needs to be there for debugging either so we should just remove it.
Do you mind updating the PR?

@patrik-piskay Any ETA on when there might be a new release containing this fix?

I'll do a new release later today. I wanted to include more things in it but it'll have to be a major version change, so I'll do 2 separate releases (one minor, one major)

Released as 2.0.2


Cgofuse creates non static binaries

Is there a way to make cgo build with static linking? We can not have a runtime dependencies on libfuse which may not be installed on the target platform.  I noticed that when building for windows there is no runtime dependency as it opens the winfsp dll dynamically (it will just fail if its not installed). Is it possible to have the same thing on Linux?

Unfortunately not currently. The issue is that go is missing universal support for dlopen and friends.
See golang/go#18296.

I wasnt thinking of dlopen in runtime, I was more thinking of linking to a .a library at build time so libfuse gets embedded into the final binary. AFAIK libfuse does not have a hard version dependency on the kernel like libc?
I am not entirely sure how its done but in our project we use github.com/hanwen/go-fuse for the linux implementation and it does not have the same runtime dependency on libfuse.
I would really like to use cgofuse because then we can merge the linux and windows implementations in the same dependency and the same implementation for better maintainability. But if it cant be done then we can live with it I suppose.

I have not used the Hanwen implementation, but I believe it interfaces directly with /dev/fuse and does not use libfuse. I do not currently have any plans to do this for cgofuse.


fix: add height property to cloned node

Fixes https://github.com/mattlewis92/angular-resizable-element/issues/31
Tell me if something else is needed 👍

Perfect, thanks! Will cut a new patch release after your second PR 😄


Added permission to use storage to use download function on some devices

Added permission to use storage. In some devices. The download will not work and it will show like this:

Thanks for the pull request i will look into it.


Update ComposeMail demo App

Now uses constraintlayout-compose 1.1.0-alpha07

Basic support for Foldables w/ MotionLayout

Forms supported: closed, open-landscape, halfOpen-portrait

Added view to se detailed mails
Better dark theme support
Cleanup

Demo with foldable Emulator.
composeMailDemo-Foldable.webm


BUG: Discover / api_bluray: "'NoneType' object has no attribute 'lower'"

This just cropped up in 2.3.0:
  File "/usr/local/lib/python2.7/dist-packages/flexget/task.py", line 472, in __run_plugin
    return method(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/flexget/event.py", line 23, in __call__
    return self.func(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/flexget/plugins/input/discover.py", line 289, in on_task_input
    entries = self.estimated(entries, estimation_mode)
  File "/usr/local/lib/python2.7/dist-packages/flexget/plugins/input/discover.py", line 201, in estimated
    est_date = estimator.estimate(entry)
  File "/usr/local/lib/python2.7/dist-packages/flexget/plugins/estimators/est_released.py", line 28, in estimate
    estimate = estimator(entry)
  File "/usr/local/lib/python2.7/dist-packages/flexget/plugins/estimators/est_released_movies_bluray.py", line 31, in estimate
    movie = lookup(title=movie_name, year=movie_year, session=session)
  File "/usr/local/lib/python2.7/dist-packages/flexget/plugins/internal/api_bluray.py", line 212, in lookup
    if title.lower() != movie.name.lower():
AttributeError: 'NoneType' object has no attribute 'lower'

  moviesPBHQ:
    verify_ssl_certificates: no
    discover:
      what:
        - movie_list:
            list_name: allmyfilms
            strip_year: yes
      from:
        - piratebay:
            category: movies
    template: movietemplate
    priority: 80
    seen: local
    quality:
      - 720p+
      - webrip+

Let me know if you need more details

Duplicate of #1352
Fix is in develop, release in few hours will have it fixed.


daemon: fixing cilium deadlock

When cilium was being used with kubernetes, the endpoint RLock was
called while the endpoint's Lock was already held. By calling
UpdatePolicyEnforcement with the lock held, it is not necessary use the
RLock inside this function.
Signed-off-by: André Martins<EMAIL_ADDRESS>

Needs rebase with #841 so tests won't fail


Where to find the ec3.soil to use for irrigation experiment?

Context
When I use https://github.com/ajwdewit/pcse_notebooks/blob/master/data/soil/ec3.soil, I have a pcse.exceptions.PCSEError: Failed to parse the CABO file!.
Which file should I use?

Either the file downloaded is of wrong format
Or the code to read the file is obsolete: https://pcse.readthedocs.io/en/stable/code.html?highlight=CABOFileReader#pcse.fileinput.CABOFileReader

1st hypothesis retained: the file downloaded is of wrong format.
somehow the download with urllib got a corrupted file. when I copy the content on remote and paste it in local file then it works

Actually I get the full content of the Github page and not the content I am interested in. Have to write a parser with beautifulsoup to get the useful content.

After fixing the data problem, now I have
---------------------------------------------------------------------------
PCSEError                                 Traceback (most recent call last)
Input In [2], in <cell line: 1>()
----> 1 YAMLCropDataProvider()

File ~/repository/github/nevergrad/venv/lib/python3.8/site-packages/pcse/fileinput/yaml_cropdataprovider.py:132, in YAMLCropDataProvider.__init__(self, fpath, repository, force_reload)
    130 else:
    131     msg = "No path or URL specified where to find YAML crop parameter files"
--> 132     raise exc.PCSEError(msg)
    134 with open(self._get_cache_fname(fpath), "wb") as fp:
    135     pickle.dump((self.compatible_version, self._store), fp, pickle.HIGHEST_PROTOCOL)

PCSEError: No path or URL specified where to find YAML crop parameter files

cd nevergrad/functions/irrigation/data/
git clone https://github.com/ajwdewit/WOFOST_crop_parameters.git

solved


Python 3.7 support

The current version depends on https://github.com/GoogleCloudPlatform/psq that is incompatible with Python 3.7.
Please remove dependency to psq or upgrade psq.

Thank you for your report. Sorry to be so late to respond, but the problem was fixed not long after this report. Please let us know if there's still a problem.

@engelke yes still have the problem:
  File "/Users/vv/Documents/AzureDevOps/WCLApp/dpdp/task.py", line 4, in <module>
    from psq import Queue
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/psq/__init__.py", line 24, in <module>
    from .broadcast_queue import BroadcastQueue
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/psq/broadcast_queue.py", line 20, in <module>
    from . import queue
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/psq/queue.py", line 37
    name='default', storage=None, extra_context=None, async=True):
                                                          ^
SyntaxError: invalid syntax

The psq code is fixed (for Python 3.7) but still no new release of psq with the fix (from last year).

Hi everyone!
I'd appreciate some pointers on how you solved this problem @VelizarVESSELINOV. I see "async" is now a reserved word in python so I changed modified the variable name which cleared that problem. However, I am having issues with the other dependencies as well. Is there any way to confirm which python version was used for the project as it was not included in the requirements.txt file?
For example, the latest error is this:
(py-bookshelf-env) C:\Users\k\Google\Cloud SDK\getting-started-python\7-gce>python main.py Traceback (most recent call last):   File "main.py", line 28, in <module>     books_queue = bookshelf.tasks.get_books_queue()   File "C:\Users\k\Google\Cloud SDK\getting-started-python\7-gce\bookshelf\tasks.py", line 35, in get_books_queue     return psq.Queue(   File "C:\Users\k\Google\Cloud SDK\getting-started-python\7-gce\py-bookshelf-env\lib\site-packages\psq\queue.py", line 45, in __init__     self.topic_path = self._get_or_create_topic()   File "C:\Users\k\Google\Cloud SDK\getting-started-python\7-gce\py-bookshelf-env\lib\site-packages\psq\queue.py", line 59, in _get_or_create_topic     self.publisher_client.get_topic(topic_path)   File "C:\Users\k\Google\Cloud SDK\getting-started-python\7-gce\py-bookshelf-env\lib\site-packages\google\cloud\pubsub_v1\_gapic.py", line 40, in <lambda>     fx = lambda self, *a, **kw: wrapped_fx(self.api, *a, **kw)  # noqa   File "C:\Users\k\Google\Cloud SDK\getting-started-python\7-gce\py-bookshelf-env\lib\site-packages\google\pubsub_v1\services\publisher\client.py", line 621, in get_topic     request = pubsub.GetTopicRequest(request)   File "C:\Users\k\Google\Cloud SDK\getting-started-python\7-gce\py-bookshelf-env\lib\site-packages\proto\message.py", line 446, in __init__     raise TypeError( TypeError: Invalid constructor input for GetTopicRequest: 'projects/python-bookshelf-303717/topics/psq-books' Waiting up to 5 seconds. Sent all pending logs.

@yomikoye Hi, I just saw exactly the same problem. Have you figured it out? Thank you!


Action Sheet closes itself on outside click; also added ability to ...

...close it via trigger

@valzav Thanks for PR


add polyfill

added polyfill for IE11 (resolved the case with 'startsWith' method)

Linked with PulseTile/PulseTile-React-Core#236

sorry , need more info to merge this pull request
Are you saying this PR resolves issue https://github.com/PulseTile/PulseTile-React-Core/issues/236 ?


Can't even run tools.py

When I try to install the dearpygui==0.6.415 package I get an error:
ERROR: Could not find a version that satisfies the requirement dearpygui==0.6.415 (from versions: 1.0.0, 1.0.1, 1.0.2, 1.1, 1.1.1, 1.1.2, 1.1.3, 1.2, 1.2.1, 1.2.2, 1.2.3, 1.3.0, 1.3.1)
ERROR: No matching distribution found for dearpygui==0.6.415

Python version 3.10.2

If we go here
https://pypi.org/simple/dearpygui/
we can see the only available packages from PIP are for 3.6 - 3.9.


WIP: integration of flask-migrate

docker-compose down -v
docker-compose up -d --build
sleep 2
docker-compose run --rm web flask db init
docker-compose run web python -m unittest discover -s app/tests

docker-compose down -v
docker-compose up -d --build
sleep 2
docker-compose run --rm web flask db init
docker-compose run web python -m unittest discover -s app/tests

[+] Running 4/4
 ✔ Container flask-testing-db-isolation-test-1  Removed                                                                                0.0s
 ✔ Container flask-testing-db-isolation-web-1   Removed                                                                                10.1s
 ✔ Container flask-testing-db-isolation-db-1    Removed                                                                                0.1s
 ✔ Network flask-testing-db-isolation_default   Removed                                                                                0.1s
[+] Building 0.5s (15/18)                                                                                docker:desktop-linux
 => [web internal] load build definition from Dockerfile                                                                                0.0s
 => => transferring dockerfile: 541B                                                                                0.0s
 => [test internal] load metadata for docker.io/library/python:3.10                                                                                0.4s
 => [test internal] load build definition from Dockerfile                                                                                0.0s
 => => transferring dockerfile: 541B                                                                                0.0s
 => [web auth] library/python:pull token for registry-1.docker.io                                                                                0.0s
 => [web internal] load .dockerignore                                                                                0.0s
 => => transferring context: 2B                                                                                0.0s
 => [test internal] load .dockerignore                                                                                0.0s
 => => transferring context: 2B                                                                                0.0s
 => [web 1/5] FROM docker.io/library/python:3.10@sha256:bb4c63ac8c19ffbdb69dd7b62841fb5d76bde06c65cd031194f655d6747fa1d5                                                                                0.0s
 => [test internal] load build context                                                                                0.0s
 => => transferring context: 38.83kB                                                                                0.0s
 => [web internal] load build context                                                                                0.0s
 => => transferring context: 38.83kB                                                                                0.0s
 => CACHED [web 4/5] RUN pip install --no-cache-dir -r requirements.txt                                                                                0.0s
 => CACHED [web 2/5] WORKDIR /usr/src/app                                                                                0.0s
 => CACHED [web 3/5] COPY requirements.txt ./                                                                                0.0s
 => [web 5/5] COPY . .                                                                                0.0s
 => [test] exporting to image                                                                                0.0s
 => => exporting layers                                                                                0.0s
 => => writing image sha256:f8eb2387a5cee18a046dd76ab97e73c124572a190b894e8affb92f5e51c043a3                                                                                0.0s
 => => naming to docker.io/library/flask-testing-db-isolation-test                                                                                0.0s
 => [web] exporting to image                                                                                0.0s
 => => exporting layers                                                                                0.0s
 => => writing image sha256:279b05e5e9678f5b432b797a5d8b030d2ed93e4c7b3c0b3697ac5b8d583f8120                                                                                0.0s
 => => naming to docker.io/library/flask-testing-db-isolation-web                                                                                0.0s
[+] Running 4/4
 ✔ Network flask-testing-db-isolation_default   Created                                                                                0.0s
 ✔ Container flask-testing-db-isolation-db-1    Started                                                                                0.2s
 ✔ Container flask-testing-db-isolation-web-1   Started                                                                                0.4s
 ✔ Container flask-testing-db-isolation-test-1  Started                                                                                0.4s
[+] Creating 1/0
 ✔ Container flask-testing-db-isolation-db-1  Running                                                                                0.0s
DEBUG:root:TestingConfig: postgresql://user:password@db:5432/test_db
DEBUG:root:Routes and models imported and database created
DEBUG:root:Database URI: postgresql://user:password@db:5432/dev_db
DEBUG:root:Testing Mode: False
DEBUG:root:Rule: /static/<path:filename>, Endpoint: static
DEBUG:root:Rule: /users, Endpoint: main.get_users
ERROR:flask_migrate:Error: Directory migrations already exists and is not empty
[+] Creating 1/0
 ✔ Container flask-testing-db-isolation-db-1  Running                                                                                0.0s
DEBUG:root:TestingConfig: postgresql://user:password@db:5432/test_db
DEBUG:root:Routes and models imported and database created
DEBUG:root:Database URI: postgresql://user:password@db:5432/test_db
DEBUG:root:Testing Mode: True
DEBUG:root:Rule: /static/<path:filename>, Endpoint: static
DEBUG:root:Rule: /users, Endpoint: main.get_users
/usr/src/app/migrations/env.py:25: DeprecationWarning: 'get_engine' is deprecated and will be removed in Flask-SQLAlchemy 3.2. Use 'engine' or 'engines[key]' instead. If you're using Flask-Migrate or Alembic, you'll need to update your 'env.py' file.
  str(current_app.extensions['migrate'].db.get_engine().url).replace(
/usr/src/app/migrations/env.py:74: DeprecationWarning: 'get_engine' is deprecated and will be removed in Flask-SQLAlchemy 3.2. Use 'engine' or 'engines[key]' instead. If you're using Flask-Migrate or Alembic, you'll need to update your 'env.py' file.
  connectable = current_app.extensions['migrate'].db.get_engine()
INFO  [alembic.runtime.migration] Context impl PostgresqlImpl.
INFO  [alembic.runtime.migration] Will assume transactional DDL.
/usr/src/app/app/tests/test_routes.py:37: SAWarning: transaction already deassociated from connection
  self.transaction.rollback()
EEEE
======================================================================
ERROR: test_create_and_get_user_1 (test_routes.UserRoutesTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context
    self.dialect.do_execute(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/default.py", line 924, in do_execute
    cursor.execute(statement, parameters)
psycopg2.errors.UndefinedTable: relation "user" does not exist
LINE 1: INSERT INTO "user" (username) VALUES ('testuser1') RETURNING...
                    ^

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/app/app/tests/test_routes.py", line 44, in test_create_and_get_user_1
    db.session.commit()
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/scoping.py", line 597, in commit
    return self._proxied.commit()
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 2017, in commit
    trans.commit(_to_root=True)
  File "<string>", line 2, in commit
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/state_changes.py", line 139, in _go
    ret_value = fn(self, *arg, **kw)
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 1302, in commit
    self._prepare_impl()
  File "<string>", line 2, in _prepare_impl
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/state_changes.py", line 139, in _go
    ret_value = fn(self, *arg, **kw)
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 1277, in _prepare_impl
    self.session.flush()
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 4341, in flush
    self._flush(objects)
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 4476, in _flush
    with util.safe_reraise():
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/util/langhelpers.py", line 146, in __exit__
    raise exc_value.with_traceback(exc_tb)
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 4437, in _flush
    flush_context.execute()
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/unitofwork.py", line 466, in execute
    rec.execute(self)
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/unitofwork.py", line 642, in execute
    util.preloaded.orm_persistence.save_obj(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/persistence.py", line 93, in save_obj
    _emit_insert_statements(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/persistence.py", line 1233, in _emit_insert_statements
    result = connection.execute(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1418, in execute
    return meth(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/sql/elements.py", line 515, in _execute_on_connection
    return connection._execute_clauseelement(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1640, in _execute_clauseelement
    ret = self._execute_context(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1846, in _execute_context
    return self._exec_single_context(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1986, in _exec_single_context
    self._handle_dbapi_exception(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 2353, in _handle_dbapi_exception
    raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context
    self.dialect.do_execute(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/default.py", line 924, in do_execute
    cursor.execute(statement, parameters)
sqlalchemy.exc.ProgrammingError: (psycopg2.errors.UndefinedTable) relation "user" does not exist
LINE 1: INSERT INTO "user" (username) VALUES ('testuser1') RETURNING...
                    ^

[SQL: INSERT INTO "user" (username) VALUES (%(username)s) RETURNING "user".id]
[parameters: {'username': 'testuser1'}]
(Background on this error at: https://sqlalche.me/e/20/f405)

======================================================================
ERROR: test_create_and_get_user_2 (test_routes.UserRoutesTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context
    self.dialect.do_execute(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/default.py", line 924, in do_execute
    cursor.execute(statement, parameters)
psycopg2.errors.UndefinedTable: relation "user" does not exist
LINE 1: INSERT INTO "user" (username) VALUES ('testuser2') RETURNING...
                    ^

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/app/app/tests/test_routes.py", line 54, in test_create_and_get_user_2
    db.session.commit()
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/scoping.py", line 597, in commit
    return self._proxied.commit()
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 2017, in commit
    trans.commit(_to_root=True)
  File "<string>", line 2, in commit
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/state_changes.py", line 139, in _go
    ret_value = fn(self, *arg, **kw)
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 1302, in commit
    self._prepare_impl()
  File "<string>", line 2, in _prepare_impl
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/state_changes.py", line 139, in _go
    ret_value = fn(self, *arg, **kw)
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 1277, in _prepare_impl
    self.session.flush()
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 4341, in flush
    self._flush(objects)
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 4476, in _flush
    with util.safe_reraise():
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/util/langhelpers.py", line 146, in __exit__
    raise exc_value.with_traceback(exc_tb)
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 4437, in _flush
    flush_context.execute()
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/unitofwork.py", line 466, in execute
    rec.execute(self)
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/unitofwork.py", line 642, in execute
    util.preloaded.orm_persistence.save_obj(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/persistence.py", line 93, in save_obj
    _emit_insert_statements(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/persistence.py", line 1233, in _emit_insert_statements
    result = connection.execute(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1418, in execute
    return meth(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/sql/elements.py", line 515, in _execute_on_connection
    return connection._execute_clauseelement(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1640, in _execute_clauseelement
    ret = self._execute_context(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1846, in _execute_context
    return self._exec_single_context(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1986, in _exec_single_context
    self._handle_dbapi_exception(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 2353, in _handle_dbapi_exception
    raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context
    self.dialect.do_execute(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/default.py", line 924, in do_execute
    cursor.execute(statement, parameters)
sqlalchemy.exc.ProgrammingError: (psycopg2.errors.UndefinedTable) relation "user" does not exist
LINE 1: INSERT INTO "user" (username) VALUES ('testuser2') RETURNING...
                    ^

[SQL: INSERT INTO "user" (username) VALUES (%(username)s) RETURNING "user".id]
[parameters: {'username': 'testuser2'}]
(Background on this error at: https://sqlalche.me/e/20/f405)

======================================================================
ERROR: test_manual_route_check (test_routes.UserRoutesTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context
    self.dialect.do_execute(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/default.py", line 924, in do_execute
    cursor.execute(statement, parameters)
psycopg2.errors.UndefinedTable: relation "user" does not exist
LINE 2: FROM "user"
             ^

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/app/app/tests/test_routes.py", line 66, in test_manual_route_check
    response = self.client.get('/users')
  File "/usr/local/lib/python3.10/site-packages/werkzeug/test.py", line 1162, in get
    return self.open(*args, **kw)
  File "/usr/local/lib/python3.10/site-packages/flask/testing.py", line 235, in open
    response = super().open(
  File "/usr/local/lib/python3.10/site-packages/werkzeug/test.py", line 1116, in open
    response_parts = self.run_wsgi_app(request.environ, buffered=buffered)
  File "/usr/local/lib/python3.10/site-packages/werkzeug/test.py", line 988, in run_wsgi_app
    rv = run_wsgi_app(self.application, environ, buffered=buffered)
  File "/usr/local/lib/python3.10/site-packages/werkzeug/test.py", line 1264, in run_wsgi_app
    app_rv = app(environ, start_response)
  File "/usr/local/lib/python3.10/site-packages/flask/app.py", line 1498, in __call__
    return self.wsgi_app(environ, start_response)
  File "/usr/local/lib/python3.10/site-packages/flask/app.py", line 1476, in wsgi_app
    response = self.handle_exception(e)
  File "/usr/local/lib/python3.10/site-packages/flask/app.py", line 1473, in wsgi_app
    response = self.full_dispatch_request()
  File "/usr/local/lib/python3.10/site-packages/flask/app.py", line 882, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/usr/local/lib/python3.10/site-packages/flask/app.py", line 880, in full_dispatch_request
    rv = self.dispatch_request()
  File "/usr/local/lib/python3.10/site-packages/flask/app.py", line 865, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)  # type: ignore[no-any-return]
  File "/usr/src/app/app/routes.py", line 10, in get_users
    users = User.query.all()
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/query.py", line 2673, in all
    return self._iter().all()  # type: ignore
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/query.py", line 2827, in _iter
    result: Union[ScalarResult[_T], Result[_T]] = self.session.execute(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 2351, in execute
    return self._execute_internal(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 2236, in _execute_internal
    result: Result[Any] = compile_state_cls.orm_execute_statement(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/context.py", line 293, in orm_execute_statement
    result = conn.execute(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1418, in execute
    return meth(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/sql/elements.py", line 515, in _execute_on_connection
    return connection._execute_clauseelement(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1640, in _execute_clauseelement
    ret = self._execute_context(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1846, in _execute_context
    return self._exec_single_context(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1986, in _exec_single_context
    self._handle_dbapi_exception(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 2353, in _handle_dbapi_exception
    raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context
    self.dialect.do_execute(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/default.py", line 924, in do_execute
    cursor.execute(statement, parameters)
sqlalchemy.exc.ProgrammingError: (psycopg2.errors.UndefinedTable) relation "user" does not exist
LINE 2: FROM "user"
             ^

[SQL: SELECT "user".id AS user_id, "user".username AS user_username
FROM "user"]
(Background on this error at: https://sqlalche.me/e/20/f405)

======================================================================
ERROR: test_routes_exist (test_routes.UserRoutesTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context
    self.dialect.do_execute(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/default.py", line 924, in do_execute
    cursor.execute(statement, parameters)
psycopg2.errors.UndefinedTable: relation "user" does not exist
LINE 2: FROM "user"
             ^

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/app/app/tests/test_routes.py", line 62, in test_routes_exist
    response = self.client.get('/users')
  File "/usr/local/lib/python3.10/site-packages/werkzeug/test.py", line 1162, in get
    return self.open(*args, **kw)
  File "/usr/local/lib/python3.10/site-packages/flask/testing.py", line 235, in open
    response = super().open(
  File "/usr/local/lib/python3.10/site-packages/werkzeug/test.py", line 1116, in open
    response_parts = self.run_wsgi_app(request.environ, buffered=buffered)
  File "/usr/local/lib/python3.10/site-packages/werkzeug/test.py", line 988, in run_wsgi_app
    rv = run_wsgi_app(self.application, environ, buffered=buffered)
  File "/usr/local/lib/python3.10/site-packages/werkzeug/test.py", line 1264, in run_wsgi_app
    app_rv = app(environ, start_response)
  File "/usr/local/lib/python3.10/site-packages/flask/app.py", line 1498, in __call__
    return self.wsgi_app(environ, start_response)
  File "/usr/local/lib/python3.10/site-packages/flask/app.py", line 1476, in wsgi_app
    response = self.handle_exception(e)
  File "/usr/local/lib/python3.10/site-packages/flask/app.py", line 1473, in wsgi_app
    response = self.full_dispatch_request()
  File "/usr/local/lib/python3.10/site-packages/flask/app.py", line 882, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/usr/local/lib/python3.10/site-packages/flask/app.py", line 880, in full_dispatch_request
    rv = self.dispatch_request()
  File "/usr/local/lib/python3.10/site-packages/flask/app.py", line 865, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)  # type: ignore[no-any-return]
  File "/usr/src/app/app/routes.py", line 10, in get_users
    users = User.query.all()
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/query.py", line 2673, in all
    return self._iter().all()  # type: ignore
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/query.py", line 2827, in _iter
    result: Union[ScalarResult[_T], Result[_T]] = self.session.execute(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 2351, in execute
    return self._execute_internal(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 2236, in _execute_internal
    result: Result[Any] = compile_state_cls.orm_execute_statement(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/orm/context.py", line 293, in orm_execute_statement
    result = conn.execute(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1418, in execute
    return meth(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/sql/elements.py", line 515, in _execute_on_connection
    return connection._execute_clauseelement(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1640, in _execute_clauseelement
    ret = self._execute_context(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1846, in _execute_context
    return self._exec_single_context(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1986, in _exec_single_context
    self._handle_dbapi_exception(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 2353, in _handle_dbapi_exception
    raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context
    self.dialect.do_execute(
  File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/default.py", line 924, in do_execute
    cursor.execute(statement, parameters)
sqlalchemy.exc.ProgrammingError: (psycopg2.errors.UndefinedTable) relation "user" does not exist
LINE 2: FROM "user"
             ^

[SQL: SELECT "user".id AS user_id, "user".username AS user_username
FROM "user"]
(Background on this error at: https://sqlalche.me/e/20/f405)

----------------------------------------------------------------------
Ran 4 tests in 0.166s

FAILED (errors=4)


Not able to build react native app on Android

"react-native-bignumber": "0.1.9",
Error:
* Where:
Build file '.../node_modules/react-native-bignumber/android/build.gradle' line: 331
* What went wrong:
Execution failed for task ':react-native-bignumber:extractAARHeaders'.
> Could not resolve all files for configuration ':react-native-bignumber:extractHeaders'.
   > Could not find fbjni-0.5.0-headers.jar (com.facebook.fbjni:fbjni:0.5.0).
     Searched in the following locations:
         https://repo.maven.apache.org/maven2/com/facebook/fbjni/fbjni/0.5.0/fbjni-0.5.0-headers.jar

Hey! Are you on the latest version of RN BigNumber? I don't use fbjni in the latest version 🤔


Review RFIDDriver & RFIDKit

branch: https://github.com/leka/LekaOS/tree/benjamin/feature/clean_driver_RFID
PR: #272 #274
Closed by #915

closed by 556f8ab


No Relay Power Monitoring EU Plug for ESPHome links to wrong yaml

Hey,
The No Relay Power Monitoring EU Plug for ESPHome links to wrong yaml.
You need a new yaml without the switch part. Or any of the power switch logic.

@Gunni
I'm still waiting for this plug to come out in the AU version, so can't test it myself. If you can...in your local device file, try adding:
select:
  - platform: template
    name: "Power On State"
    optimistic: true
    icon: "mdi:electric-switch"
    options:
      - Always Off
      - Always On
      - Restore Power Off State
    internal: true

switch:
  - platform: gpio
    name: "Switch"
    pin: GPIO15
    internal: true

then validate and flash it to your 'no relay' plug.  If you could confirm this does what your after, that would appear to be to remove the 'Power On State' and 'Switch' options from the devices webGUI / HA?
Could you confirm this and also that no other errors are seen? The above should hide these, whilst the switch logic should just lie dormant in the background.
If this 'solves the issue' then we can see about making this into a subsitute option, so users of these plugs could add something like:
is_no_relay_plug: 'true'

to their substitutions section and have the existing Smart Plug v2 code work for them.

I don't have one yet, it is out of stock for me (EU). I just noticed that the yaml had on/off stuff despite that device specifically not having that capability, which is what I want.

@tarontop keeping with your naming standard to date, would this not be better as either:
a) athom-smart-plug-v2-without-relay.yaml , or:
b) athom-smart-plug-without-relay.yaml

Weirdly the product is gone from the website and a ban on shipments to the EU on the website...
What's happening?

@Gunni  Legal BS. https://community.homey.app/t/athom-wins-lawsuit-against-chinese-athom-tech-and-aliexpress/121124

But why remove it entirely? Iceland is not in the European Union, yet.


Exoutia

Issue Number:
This submission will close the issue #38
Submissions Checklist:

[x] Have you followed the guidelines in CONTRIBUTING.md?
[x] Have you checked there aren't other open Pull Requests for the same hackerrank problem?

[x] Have you ensured that you have put the files in appropriate folders? (Folders are made according to the subdomain of hackerrank practice problems).

Hacktoberfest Contributor:

[x] Are you a hacktoberfest contributor?

Hackerrank Problem Link:
https://www.hackerrank.com/challenges/python-division/problem?isFullScreen=true
Submitted Hackerrank Solution Link:
https://www.hackerrank.com/challenges/python-division/submissions/code/293520698
Any other changes you made or something you would like to mention?
I have deleted the dummy file

sorry i was trying to send pull request into origin repository you can delete this branch


Fonts are not correctly apply using Tamagui and expo-router on web

Hey !
After a fresh install, it seems that the font family and color are not working on web using:

expo-router
tamagui

Working well on iOS and Android

Expected Behavior
The inter Font should be apply to the text and title
Current Behavior
The browser serve the default font
Steps to Reproduce
fresh install using this command
npx create-expo-stack test-stack --expo-router --tamagui --firebase --import-alias --yarn

@gwenoleR thanks for flagging!  Are you aware of it? Perhaps @benschac can provide some insight?

@gwenoleR I think I accidentally closed your PR when pushing to your fork. Can you please re-open? It should be good to go with my latest push.

I opened and merged the PR and you are credited here: https://github.com/danstepanov/create-expo-stack/pull/156


[HW]

Name: Goh Kim Seng
Email<EMAIL_ADDRESS>Linkedin Profile: www.linkedin.com/in/kim-seng
Attach the homework screenshots below for both step II and step III:

![image](https://user-images.githubusercontent.com/87450520/128174746-a857a832-74d2-4356-adb9-02ac733bb14e.png)
![image](https://user-images.githubusercontent.com/87450520/128174887-934d04b6-4b33-4727-aabb-edea716183a1.png)
![image](https://user-images.githubusercontent.com/87450520/128174924-2e55a1f0-d6f6-4f21-b943-cef4677b765b.png)

Hello there,
great job! It seems that you uploaded the final screen of the same scenario twice. Please add a screenshot of the completed "data model" scenario, https://www.datastax.com/node/3272 , to finish the homework.
See you soon and keep up the good work!

Name: Goh Kim Seng
Email<EMAIL_ADDRESS>Linkedin Profile: www.linkedin.com/in/kim-seng
Screenshots from Intro to Cassandra.docx


Cloudfront: Obtain masked user agent from Cloudfront-specific headers

Description
Cloudfront is sending the wrong user agent and a couple of custom headers to indicate what class of user agent it actually is.
For details see here: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/RequestAndResponseBehaviorCustomOrigin.html#request-custom-user-agent-header
We should look at these headers and use them to determine if it’s desktop mobile or bot if they are present, before examining the actual user agent string
Expected behavior
If any of the following headers is found these values should be used:
CloudFront-Is-Desktop-Viewer=true: desktop
CloudFront-Is-Mobile-Viewer=true: mobile
CloudFront-Is-SmartTV-Viewer=true: desktop (? - based on size)
CloudFront-Is-Tablet-Viewer=true: mobile

I'd treat smarttv as desktop, just like you proposed.

:tada: This issue has been resolved in version 2.9.1 :tada:
The release is available on:

v2.9.1
v2.9.1
GitHub release

Your semantic-release bot :package::rocket:


[4.0] [FIX/Feature] Datatables inconsistent behaviour. Persistent table duration implementation

So ... here we are again around Datatables. I hope this one is for good :D
As recently reported in #2193 by @axelzuze and mentioned again some time ago by other users, I have made an attempt to fix Datatables export and visibility.
I will try to describe all the behavior on this thread. Here we go.
If you add a regular column, for sake of example lets just use:
 [
    'name' => 'text',
    'label' => 'Text label,
    'type' => 'text
]

// Will appear on table, can be hidden by user, can be exported if not hidden in table.

 [
    'name' => 'text',
    'label' => 'Text label,
    'type' => 'text,
    'visibleInTable' => false
]
// Will start hidden in table, can be shown by user, can be exported if not hidden in table.

 [
    'name' => 'text',
    'label' => 'Text label,
    'type' => 'text,
    'visibleInTable' => false,
    'visibleInExport' => true
]
// Will start hidden in table, can be shown by user, WILL ALLWAYS BE EXPORTED  EVEN IF HIDDEN.

 [
    'name' => 'text',
    'label' => 'Text label,
    'type' => 'text,
    'visibleInTable' => false,
    'visibleInExport' => false
]
// Will start hidden in table, can be shown by user, WILL NEVER BE EXPORTED EVEN IF SHOWN.

 [
    'name' => 'text',
    'label' => 'Text label,
    'type' => 'text,
    'visibleInTable' => true,
    'visibleInExport' => true/false
]
// Will ALLWAYS start in table, user can't hide it, if visibleInExport is not set/true this column will ALLWAYS be exported (because is allways visible) if you don't want this column to be exported use the visibleInExport => false

 [
    'name' => 'text',
    'label' => 'Text label,
    'type' => 'text,
    'visibleInExport' => false
]
// Will start in table, can be hidden by user, WILL NEVER BE EXPORTED EVEN IF SHOWN

 [
    'name' => 'text',
    'label' => 'Text label,
    'type' => 'text,
    'exportOnlyField' => true
]
// Will start hidden in table, user cannot show it, will allways be exported. Also don't show in modal.

I think i got to cover all use cases, but please guys, give it a look and tell me what you think.
Best,
Pedro

While on it, i decided to also enable another feature in crud that was somehow planned and described but not implemented :)
I followed the conversation on this issue: #1702 got there from #2165 !
So about the feature, it defaults to false meaning no expiration date.
Developers could set in config 'persistentTableDuration' => 120, for two hours.
Also could be changed by crud with $this->crud->setOperationSetting('persistentTableDuration', 120, 'list');
Let me now what you guys think.
Best,
Pedro

Once again, i think by luck, another Datatable problem arised today. #2231
Scenario:
User have a text filter on the crud, and create a link in sidebar with a url containing that parameter to filter the crud on load applying the filter. https://admin.com/users?text=test
Problem:
If persistent table is active (OR was active and localStorage was not cleared) user cannot see the filtered page as the persistent table took precedence and redirected the user to the persisted stored url.
While working on this I decided to tackle it also, and added the solution to the PR.
Best,
Pedro

Thank you @pxpm - great work here! I do think there are a few ways to improve the code consistency here, but I'll go ahead and merge it as-is, and maybe we can take the time to refactor some of this at a later date. Will be available with a composer update later today, as 4.0.18.
Cheers! Thanks again for the good work.

I wish to report that after updating, 1 of my models admin list view broke with the following errors in production. I believe it is caused by this PR. Other admin list views are still fine.
some_model:468 Uncaught ReferenceError: persistentUrl is not defined
    at some_model:468
bundle.js?v=4.0.18@48d7847b12d11b3c36a404cfa0720f8929964e51:1 Uncaught TypeError: Cannot read property 'dataTableConfiguration' of undefined
    at HTMLDocument.<anonymous> (some_Model:573)
    at c (bundle.js?v=4.0.18@48d7847b12d11b3c36a404cfa0720f8929964e51:1)
    at u (bundle.js?v=4.0.18@48d7847b12d11b3c36a404cfa0720f8929964e51:1)

Hello @ziming .
Working on it. Could not reproduce yet.
I think it's because a previously saved state. Could you please clear you browser local storage and give it a try ?
Best,
Pedro

Sorry man.
Got it. persistentUrl was beeing set only if you have SPECIFIC defined duration. If you have the default forever it would not work. Sent a PR to fix this.
Once again, sorry for introducing this error.
Best,
Pedro


Question: Invoice.is_confirmed vs is_expired

I just wanted to check what the behavior is for a flow in which the user pays right before expiration, say:
Invoice created, 2 confirmations required, 15 block expiration.
Payment is received on block 14 or even 15 which will take until block 16 or 17 to confirm. Does the library stop tracking invoices at the expiration block or only when you call remove_invoice?
I ask because in the examples you have one loop that just removes invoices irrespective of any payment that might be waiting on confirmations. Is that because you created the invoices to expire in 5 blocks and the remover loop at 30?
Thanks!

Hey, great question! The library will continue tracking invoices until you remove them with remove_invoice.
The expiration field exists to make cleaning up old invoices easier, but your implementation decides the details of when invoices actually stop being tracked.
This behavior is briefly mentioned in the docs here: https://docs.rs/acceptxmr/latest/acceptxmr/struct.Invoice.html
The text is:

Invoices have an expiration block, after which they are considered expired. However, note that the payment gateway by default will continue updating invoices even after expiration.

I do my best to keep that documentation up-to-date, so 99% of questions can probably be answered by it. If you have any suggestions to improve the docs, please let me know (or feel free to make a PR if you're feeling motivated!).

Thanks! I've spent a lot of time in the docs, and they've been very helpful. I missed this one though. :( So sorry for that.
I appreciate the answer. :)


feat: minimal implementation to support valibot

ref: https://github.com/Code-Hex/graphql-codegen-typescript-validation-schema/issues/577

This PR implements valibot support.
First of all, only the contents of example/zod/schemas.ts are supported, not all configurations. Even at this point, the use case for my project can be met, and I plan to begin production operation when it is released.
Should documentation still be added in its current condition? I would like to discuss this.
After merging this PR, I will implement the test which is a todo.

@Code-Hex Sorry for the delay, please review at your convenience!

What a great job @MH4GF !!
I'm checking this PR now 🙏

CI is down, so I'll merge the main branch 🏃🏻♂


help

dont work

u need to have python 11 not the newest python
hope this helped ya

u need to have python 11 not the newest python hope this helped ya

oh alr ill try it out

u need to have python 11 not the newest python hope this helped ya

like 3.11 ?

yeah mb u need 3.11

Hey, just uninstall all  .py related to pysilon and aslo pysilon and also uninstall python itself, and download the 12.0 version. Do every steps carefully and everything should be fine.


Script Continues, Even w/ Only a Partial Download

Script will continue, even if the MATALB download only partially completes. This is a bug, not a feature. Checksum? df check? Something else...?

Addressing this by comparing md5 hashes. For reference: https://github.com/marshki/matlab_installer/blob/master/functions/md5_check.sh

Status: Resolved. For reference:
https://github.com/marshki/matlab_installer/blob/master/functions/md5_check.sh
https://github.com/marshki/matlab_installer/blob/master/functions/md5_compare_source_dest.sh


scheduler pods is in CrashLoopBackOff mode

Every time we deploy through  "kubectl create  -f airflow.all.yaml  --namespace airflow" the scheduler pods is crashing after 5 restart and we observer that there is no airflow home( /usr/local/airflow) or airflow drag path ( /usr/local/airflow/diag)is getting created in the worker node. Neither the diag run is yelling any result. Not sure if we are missing any prerequisites from running kubectl create. Any help will be appreciated..

+1

+1

If someone gets stuck with this. just change in the airflow.all.yaml from scheduler -n 5 to scheduler