Publish exact date and time when an update was published in the Google Play Store

Current Implementation

Only the date of a release is published.
Suggested Enhancement

See title.
Expected Benefits

Give the users the chance to estimate the date and time when the staged rollout of a new version will be finished.

I don't know if that is possible. In the past it was said that new releases (from Google) are deliberately distributed with time delays in order to prevent possible errors in the releases from affecting all users at the same time!? Or to incorporate 'necessary corrections'.
No matter how, but then calculations would hardly be possible.

The time when the release button (or whatever it is in Google Play) is pressed should be known to at least one person. So the exact time can be published.

Ah, I misunderstood that. Based on an action by a user (e.g. 'release button'), Google should show him when the staged rollout of a new version will be completed!?

@DerVogel2020
The rollout is usually started at the same time as the release blogpost is published (e.g. 10:00, 12 July for CWA 2.5).
I'm not sure if specifying the exact time helps because the time users get the update can also depend on other factors

The time that the Play Store/App Store fetches for updates, which is determined by things we cannot influence (battery charge, last update, user settings, ...)
If a rollout is stopped (which has happened in the past) and we push a fix, the rollout is restarted. That also means that an additional 48h are necessary to complete the rollout

Generally, on day 3 after the rolout has started, everyoe should have gotten the update.

Corona-Warn-App Open Source Team

@heinezen Ok, accepted.
 should be changed.


feat: require user authorization when launching the application

feat: require user authorization when launching the application
feat: display user info after authorized #338

Authroized --> Authorize


ChebConv: wrong Laplacian, incomplete documentation

1. Missing Documentation
It was already discussed in https://github.com/rusty1s/pytorch_geometric/issues/242 that the Laplacian in ChebConv is L = 1 - A_norm and not (tilde L) = (2 / lambda_max) L - 1. In the documentation, however, it says that the convolution is as in the original paper, and that the normalised and scaled Laplacian is used, which is not correct.
I suggest that the documentation in https://pytorch-geometric.readthedocs.io/en/latest/modules/nn.html#torch_geometric.nn.conv.ChebConv makes clear that the normalisation is different, otherwise it's quite hard to spot.
2. Wrong Laplacian
As it is now, ChebConv.norm computes L = -A_norm instead of L = 1 - A_norm. I think the following line should be added right before the return statement:
        edge_index, norm = add_self_loops(edge_index=edge_index,
                                          edge_weight=norm,
                                          fill_value=1,
                                          num_nodes=num_nodes)

Thank you for this issue, but I still think that the ChebConv computation is correct. Given that we have L = I - A_norm, the scaled Laplacian \tilde{L} = 2L / lambda_max - I can be rewritten to:
\tilde{L} = 2(I - A_norm) / 2 - I = - A_norm`

I see, thanks. So is there any motivation for approximating lambda_max = 2 other than that it simplifies the computation?
It's true that computing the eigenvalues at each convolution would be super expensive, maybe labmda_max could be pre-computed and passed as an optional parameter?

Sounds like a good idea. We could add the argument lambda_max to the forward function like
def forward(self, x, edge_index, edge_weight=None, batch=None, lambda_max=None)

which would expect a scalar or zero-sized tensor for operating on single graphs, and a tensor of shape [num_graphs] for working on mini-batches. In addition, we could provide a transform to compute lambda_max. Are you interested in submitting a PR for this?

Yeah sure. I'm tinkering on some models at the moment anyway, so I'll try to implement that as well.


Subnet Identity

Description
Currently, the subnet registration process doesn't include identity information, and the SubnetInfo struct lacks fields for storing this data. We need to enhance the subnet registration process to include identity information and extend the SubnetInfo struct to accommodate these new fields.
This enhancement will allow subnet owners to provide more detailed information about their subnets, making it easier for users and administrators to identify and interact with different subnets in the Bittensor network.
Acceptance Criteria

Extend the SubnetInfo struct in pallets/subtensor/src/rpc_info/subnet_info.rs to include the following new fields:

subnet_name: Option<Vec<u8>>
github_repo: Option<Vec<u8>>
subnet_contact: Option<Vec<u8>>

Modify the subnet registration process to accept and store the new identity information.

Update the get_subnet_info function to retrieve and return the new identity fields.

Ensure that the subnet deregistration process clears the identity information.

Add appropriate error handling for cases where required identity information is missing during registration.

Tasks

[ ] Update the SubnetInfo struct in pallets/subtensor/src/rpc_info/subnet_info.rs.
[ ] Modify the register_subnet function to accept and store identity information.
[ ] Update the get_subnet_info function to include the new identity fields in its return value.
[ ] Modify the deregister_subnet function to clear identity information.
[ ] Add new error types for missing required identity information.
[ ] Update any relevant tests to cover the new functionality.
[ ] Update documentation to reflect the changes in subnet registration and information retrieval.

Additional Considerations

Consider making subnet_name and github_repo required fields, while keeping subnet_contact optional.
Evaluate the impact of these changes on existing subnets and consider a migration strategy if necessary.
Consider adding a function to update subnet identity information separately from the registration process.

What's wrong with the current identity mechanism?

What's wrong with the current identity mechanism?

@mvds00 its manual and often leads to significant onboarding friction , as moderators need to figure out who the owner is , what the repo is etc.

By manual you mean as a separate step? All of this remains manual. The core feature of this proposal is that the values can only be set once, at registration time, right? That will not hold, these things are not set in stone, names change, repos change. When we registered our SN we did not have a definite name yet, for one thing, so we would have put some placeholder data in there.

By manual you mean as a separate step? All of this remains manual. The core feature of this proposal is that the values can only be set once, at registration time, right? That will not hold, these things are not set in stone, names change, repos change. When we registered our SN we did not have a definite name yet, for one thing, so we would have put some placeholder data in there.

@mvds00 good point. Similar to how we backfil the delegates file, we would have to do this too. We do have an extrinsic that will allow subnet owners do this. We just need to check its the owning coldkey cc @JohnReedV


⚠ Bofrost.at has degraded performance

In f1c61f6, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1279 ms

Resolved: Bofrost.at performance has improved in 20109f2 after 7 minutes.


Remove bot is typing indicator

This is not very relevant anymore since everything is handled by the interactions now. It was also not being stopped properly since we updated to using interactions.

Removed in commit 9a697356c760afc2c65c9340be90e26ad90c40ec
i should have merged this way sooner 😭


program not valid with latest three.js

I'm seeing this error trying to use your library on a recent three.js release (r157):
three.module.js:19999 THREE.WebGLProgram: Shader Error 0 - VALIDATE_STATUS false

Program Info Log: Fragment shader is not compiled.
�

FRAGMENT

ERROR: 0:1591: 'GeometricContext' : undeclared identifier
ERROR: 0:1591: 'geometry' : syntax error
�

  1586: 	material.alphaT = mix( pow2( material.roughness ), 1.0, pow2( material.anisotropy ) );
  1587: 	material.anisotropyT = tbn[ 0 ] * anisotropyV.x - tbn[ 1 ] * anisotropyV.y;
  1588: 	material.anisotropyB = tbn[ 1 ] * anisotropyV.x + tbn[ 0 ] * anisotropyV.y;
  1589: #endif
  1590:
> 1591: GeometricContext geometry;
  1592:
  1593: geometry.position = - vViewPosition;
  1594: geometry.normal = normal;
  1595: geometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition );
  1596:
  1597: #ifdef CLEARCOAT

Any idea what I can do to fix this? Should I just use the version of this that ships with three.js?

Looks like this was the PR that broke things: https://github.com/mrdoob/three.js/pull/26805

I didn't want to use the three.js version mainly because they don't expose lightColor in the constructor.

@aiden-jeffrey your fork doesn't seem to work for me in three 159, running this fails
 npm i aiden-jeffrey/three-csm#aiden/three-157

any updates?

any updates?

I just used the three.js fork of this in the end. I'm sure that the PR I linked is most of the way there, but I couldn't get the shadows to render.

I'm sure that the PR I linked is most of the way there, but I couldn't get the shadows to render.

Just tried your fix with three.js 162 and I do have shadows!

I'm sure that the PR I linked is most of the way there, but I couldn't get the shadows to render.

Just tried your fix with three.js 162 and I do have shadows!

How you did it? I mean three-csm working with three 162.
I have this problem.

How you did it? I mean three-csm working with three 162.

I forked CSM (actually just copied the files from the threejs samples: CSM.js, CSMFrustum.js and CSMShader.js)
Then I applied the fix from @aiden-jeffrey and I use my local version of CSM for now.
The file with the fix is here: https://github.com/ebeaufay/UltraGlobe/blob/master/src/csm/CSMShader.js


Enable/disable extension based on hosting plan / subscription

Right now, the Let's encrypt extension is available for any website & subscription once the plugin is installed.
Since different hosting plans typically comprise certain features, it would be nice if Let's Encrypt can be enabled / disabled for specific hosting plans and / or subscriptions.

Almost one year ago, I have already suggested this feature. Much appeal, but no reaction of the Coder. See #39

I think security should not be an feature of an hosting package.  It must and should be an world wide standard. So definitely no to that request :P

I think security should not be an feature of an hosting package. It must and should be an world wide standard. So definitely no to that request :P

Well, first of all, without wanting to start a flame war, if security is the highest concern, there are quite some other mandatory issues that should be fixed for Plesk (e.g. no symmetric passwords for accounts, https://talk.plesk.com/threads/force-password-encryption-for-mail-users.332212/)...
However, getting back to the original issue, for me it is more the idea to present a clean inteface to certain customers. For them, the idea would be to enable Let's encrypt with out seeing the options for it...

Hey guys,
I can also side with the original post. Reason being is that it can cut out profit for resellers who sell premium SSL to customers. If all customers have access to free SSL within their dashboard, then they are likely not going to purchase an SSL certificate.
Something to think about. Either way, thanks for your hard work and contribution! :)


Updated to latest RTOS fork and lowrisc-nix

Updated to latest version of lowRISC RTOS fork
Updated lowrisc-nix version

We'll need the latest version of the compiler to be able to build the
upstream CHERIoT RTOS.

Force pushes have rebased on latest main, and updated the software (usbdev utils, usbdev test, plic test) to use the refactored USB device driver so that all tests should still work.


A couple of proposed unit corrections

What happened?
Sepsis Module
The Lactate_Level observation is coded as LOINC 59032-3 which is supposed to be Mass/Volume, but the unit being used is mmol/L which is Moles/Volume. The unit should be changed to mg/dL, or even better, the LOINC code 32693-4 should be used instead, which correctly corresponds to Moles/Volume.
https://github.com/synthetichealth/synthea/blob/7c14fea75daad705c311f9fa9916e65b550a0202/src/main/resources/modules/sepsis.json#L138
Gallstones Module
In the Complete_Blood_Count section, the first item under observations has unit K/uL which per UCUM is "degrees Kelvin per microliter" when the intended unit is actually "thousands per microliter". The correct way to express this is 10*3/uL (see the next item in the list, which is already doing this correctly).
https://github.com/synthetichealth/synthea/blob/a5228488e4627a26ee7dc3beea544de34b5cef25/src/main/resources/modules/gallstones.json#L1026
Environment
- OS: macOS 12.3 (21E230)
- Java: openjdk version "18.0.1" 2022-04-19

Relevant log output
No response

Sepsis Module
The "Common US Lab Results Rank" for 32693-4 Lactate [Moles/volume] in Blood is 313, while the rating for 59032-3 Lactate [Mass/volume] in Blood is 2444, so it is probably best to switch to the more commonly used LOINC code (i.e., 32693-4).
Fortunately, that already coincides with the current units of measure (i.e., mmol/L) and the reference ranges used (e.g., 1 - 4) according to the Module Companion Guide and the original source, Andersen et al.

Gallstones Module
You are correct. Fix pending.

Looks great! Agree with using 32693-4 based on rank.


Excludes and max chained ignores excludes

I noticed a strange behaviour when combining #excludes and #max on a embeds_many relation. The excludes criteria seems to be ignored.
Example:
class Parent
  include Mongoid::Document
  embeds_many :children
end

class Child
  include Mongoid::Document
  embedded_in :parent

  field :age, Integer
end

parent = Parent.new
parent.children.build(:age => 5)
parent.children.build(:age => 8)

parent.children.excludes(:age => 8).max(:age)  # => 8

I'm using Mongoid RC7 (and Rails 3.0.5).

#excludes/#includes aren't implemented in embedded document criteria since they are already loaded when accessing the parent model from the database... If you wanted those fields excluded you'd have to get the parent without them.
Parent.excludes("children.age").first


Memory leak when using DocumentClient?

I'm using the DocumentClient in production with Azure Functions, it all works fine, but I'm seeing an increase in memory consumption over time.
To test what was causing this I replaced all of my external calls with stubs, then reran the application for a longer time. No memory leak occurred.
Only after re-enabling the DocumentDB client my memory consumption started to rise.
Using heapdump, I captured a memory dump before and after doing 200 requests to the DocumentDB using the client:

Comparing the two I noticed that TLSSockets do not seem to garbage collect properly and keep using memory.
Did anyone else notice this behavior, or have any pointers on how to further investigate this?

@AranVinkItility
Could you please share the code to reproduce this (which queries are you using, etc)? I will have someone to look at this.

@moderakh Would really appreciate it, here is my code:
'use strict';
const heapdump = require('heapdump');
const Promise = require('bluebird');
const DocumentClient = require('documentdb').DocumentClient;

const host = 'https://yourhost.documents.azure.com';
const key = 'yourkey';
const dbName = 'dbnamewithcollections';

const client = new DocumentClient(host, { masterKey: key });

function listCollections(databaseLink) {
    return Promise.fromCallback(function (callback) {
        client.readCollections(databaseLink).toArray(callback);
    });
}

const numberOfRequests = 100;
let counterCompleted = 0;
let promises = [];

for (var x = 0; x < numberOfRequests; x++) {
    promises.push(
        listCollections('dbs/' + dbName)
    );
}

console.log('Writing snapshot (before calling docDB)');
heapdump.writeSnapshot();
Promise.all(promises)
    .then(function (result) {
        console.log(result.length);
    })
    .then(function () {
        console.log('Writing snapshot (after calling docDB)');
        heapdump.writeSnapshot();
    });

@mehdijazayeri3000  can you please take a look at this?

That's probably because toArray() implementation. Before we release the new version, please
go to queryIterator.js. file and find_toArrayImplementation function. Change this line
"that.toArrayTempResources = that.toArrayTempResources.concat(resource);"
with "that.toArrayTempResources.push(resource);"
Please let us know if that solved your problem.

@mehdijazayeri3000 I'm a colleague of @AranVinkItility, I'll be taking over this issue in his absence.
I have tried your suggestion but I don't see an improvement, the heap size at the end of the function run stays the same (give or take a few KB, of course) as it was before the modification.

@AranVinkItility Testing memory leak in node is a bit tricky. V8 GC is not a reference-counting GC. Instead, it does a full mark-and-sweep GC. It won't start cleaning up unless we get over a certain amount of memory. Please read this post  for more information.

@mehdijazayeri3000 I agree that we can't easily conclude there is a memory leak, however I still have my suspicions. I've looked into forcing garbage collection, and came up with the following code:
'use strict';
const heapdump = require('heapdump');

function generateData() {
    const host = '<host-url>';
    const key = '<authorization-key>';
    const dbName = '<database-name>';

    let DocumentClient = require('documentdb').DocumentClient;
    let client = new DocumentClient(host, { masterKey: key });

    global.gc();
    console.log('Writing snapshot (before starting loop)');
    heapdump.writeSnapshot();

    for (var x = 0; x < 100; x++) {
        client.readCollections('dbs/' + dbName).toArray(() => {});
    }

    client = null;
    DocumentClient = null;
}

generateData();

setTimeout(() => {
    global.gc();
    console.log('Writing snapshot (after timeout)');
    heapdump.writeSnapshot();
}, 5000);

You have to run this with node --expose-gc to enable the global.gc() function.
I've tried every trick I know to ensure the DocumentClient instance and all other data goes out of scope, calling the garbage collector and heapdump on a timeout to ensure it happens after the http calls without tieing directly to them. I do see some result from garbage collection, but it's very minimal; a huge amount of strings and other data is still floating around.

We have recently announced deprecation version 1.x of the Azure Cosmos JavaScript SDK. We will end support for the documentdb package and this repo on August 30, 2020. Please update to our new package @azure/cosmos as soon as possible. If you encounter any issues, you can raise them in the Azure central JS SDK repo. If something is preventing you from upgrading to the latest version of the SDK, you can always email me directly<EMAIL_ADDRESS>


Adds Libre Hosters

https://github.com/indiehosters/awesome-librehosters/
A curated list of awesome libre hosters. They are libre because they just use libre software.

[x ] I have read and understood the contribution guidelines and the instructions for creating a list.
[x ] This pull request has a descriptive title. (For example: Add Node.js)
The list I added

[x ] has been around for at least 20 days,
[x ] is not a duplicate,
[x ] only has awesome items with descriptions (Awesome lists are curations of the best, not of everything),
[x ] contains the awesome badge on the right side of the list heading,
[ ] has a Table of Contents as the first section,

It doesn't but it doesn't need it I guess
- [x ] has an [appropriate license](https://github.com/sindresorhus/awesome/blob/master/awesome.md#choose-an-appropriate-license) *(Meaning something like CC0, NOT a code licence like MIT, BSD, Apache, etc)*,
- [x ] has [contribution guidelines](https://github.com/sindresorhus/awesome/blob/master/awesome.md#include-contribution-guidelines),
- [x ] has been checked for inconsistent formatting, spelling, and grammar *(This includes starting each link description with an uppercase character and ending it with a dot, and consistent naming)*,
- [x ] has been added at the bottom of the appropriate category.

Thanks for the suggestion, but I don't really see the value its current form. Right now it's just a bunch of links without any context.

A list of nice hosting providers

What makes them nice? Proof? Why does it matter? The list should answer those questions.

Just knowing they're nice is not very useful either. Should include more info, like what kind of hosting they do, language (noticed many are in French, that should be marked as such), etc.
Work on it more and I'd be happy to reconsider in a month.


Cancelling a read operation

I'm not sure if this is caused by Kable or the Android platform. If I cancel a coroutine while it's running a read operation, any attempt to read afterwards immediately fails with a GattRequestRejectedException (message is null). This lasts until I restart the connection. I haven't dared to test the same thing with a write operation 😅
Is this the expected behavior, or a bug in Kable?
My use case is I am reading a characteristic periodically while a specific page is showing, and I want to cancel that polling when navigating away from that page, while keeping the connection open for the next page.

Likely a bug in Kable; what you're describing (cancelling a read operation) should be supported, and subsequent reads should work.
Can you provide logs leading up to the exception?

Here are logs for two different cases. I used logging level = Events. Tell me if I can provide more details.
In this case I kick off a read of characteristic 5fd01, cancel it, and then try to read 5fcdf. Reading the second characteristic immediately throws an exception, and then the response from the first characteristic arrives a little later. Notice that 5fd01 takes about 5 seconds to get a response.
2022-04-27 09:42:42.257 14877-14877 Kable/Peripheral         D  AC:67:B2:6C:59:E6 read
                                                                service: 000000ff-0000-1000-8000-00805f9b34fb
                                                                characteristic: 10492c5a-deec-4577-a25a-6950c0b5fd01
2022-04-27 09:42:45.625 14877-14877 Kable/Peripheral         D  AC:67:B2:6C:59:E6 read
                                                                service: 000000ff-0000-1000-8000-00805f9b34fb
                                                                characteristic: 10492c5a-deec-4577-a25a-6950c0b5fcdf
2022-04-27 09:42:45.667 14877-14877 Resource                 E  A resource failed with a throwable: com.juul.kable.GattRequestRejectedException
                                                                com.juul.kable.GattRequestRejectedException
                                                                	at com.juul.kable.AndroidPeripheral$read$$inlined$execute$1.invokeSuspend(Connection.kt:106)
                                                                	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
                                                                	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
                                                                	at android.os.Handler.handleCallback(Handler.java:938)
                                                                	at android.os.Handler.dispatchMessage(Handler.java:99)
                                                                	at android.os.Looper.loopOnce(Looper.java:201)
                                                                	at android.os.Looper.loop(Looper.java:288)
                                                                	at android.os.HandlerThread.run(HandlerThread.java:67)
2022-04-27 09:42:46.713 14877-15186 Kable/Callback           D  AC:67:B2:6C:59:E6 onCharacteristicRead
                                                                service: 000000ff-0000-1000-8000-00805f9b34fb
                                                                characteristic: 10492c5a-deec-4577-a25a-6950c0b5fd01
                                                                status: GATT_SUCCESS(0)

In this case I start reading the same characteristic 5fd01, cancel it, and wait for the response to arrive. Then I try to read 5fcdf. At this point I should explain an implementation detail: our device splits data read into chunks of 22 bytes, and we read the same characteristic several times to get the complete data. 5fcdf is expected to return only 1 byte, but in these logs it returns 22 bytes, tries to read again, and throws. Then the expected 1 byte arrives. Could this be caused by some overflow from the callback of the characteristic that was canceled? I also can't rule out bugs on the bluetooth device 😅
2022-04-27 10:16:33.479 16919-16919 Kable/Peripheral         D  AC:67:B2:6C:59:E6 read
                                                                service: 000000ff-0000-1000-8000-00805f9b34fb
                                                                characteristic: 10492c5a-deec-4577-a25a-6950c0b5fd01
2022-04-27 10:16:37.962 16919-17386 Kable/Callback           D  AC:67:B2:6C:59:E6 onCharacteristicRead
                                                                service: 000000ff-0000-1000-8000-00805f9b34fb
                                                                characteristic: 10492c5a-deec-4577-a25a-6950c0b5fd01
                                                                status: GATT_SUCCESS(0)
                                                                data: 00 0A E9 01 0F 41 6E 64 72 6F 69 64 41 50 2D 4A 6F 68 61 6E D3 01
2022-04-27 10:16:45.097 16919-16919 Kable/Peripheral         D  AC:67:B2:6C:59:E6 read
                                                                service: 000000ff-0000-1000-8000-00805f9b34fb
                                                                characteristic: 10492c5a-deec-4577-a25a-6950c0b5fcdf
2022-04-27 10:16:45.118 16919-16919 BluetoothScope           D  Reading characteristic LedState: Read 22 bytes, reading more...
2022-04-27 10:16:45.118 16919-16919 Kable/Peripheral         D  AC:67:B2:6C:59:E6 read
                                                                service: 000000ff-0000-1000-8000-00805f9b34fb
                                                                characteristic: 10492c5a-deec-4577-a25a-6950c0b5fcdf
2022-04-27 10:16:45.123 16919-16919 Resource                 E  A resource failed with a throwable: com.juul.kable.GattRequestRejectedException
                                                                com.juul.kable.GattRequestRejectedException
                                                                	at com.juul.kable.AndroidPeripheral$read$$inlined$execute$1.invokeSuspend(Connection.kt:106)
                                                                	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
                                                                	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
                                                                	at android.os.Handler.handleCallback(Handler.java:938)
                                                                	at android.os.Handler.dispatchMessage(Handler.java:99)
                                                                	at android.os.Looper.loopOnce(Looper.java:201)
                                                                	at android.os.Looper.loop(Looper.java:288)
                                                                	at android.os.HandlerThread.run(HandlerThread.java:67)
2022-04-27 10:16:45.188 16919-17386 Kable/Callback           D  AC:67:B2:6C:59:E6 onCharacteristicRead
                                                                service: 000000ff-0000-1000-8000-00805f9b34fb
                                                                characteristic: 10492c5a-deec-4577-a25a-6950c0b5fcdf
                                                                status: GATT_SUCCESS(0)
                                                                data: 02

Based on the logs you provided and description of what actions you're doing (thanks for the thorough explanation of the issue, btw), I'm fairly confident that Connections.execute is not properly handling cancellation.
The gritty details are that normally the lock is held to prevent concurrent Android BLE I/O operations (and to ensure an operation fully completes before attempting a subsequent operation):
https://github.com/JuulLabs/kable/blob/2e013c0541a20376eac913506c3a8a8cb6231879/core/src/androidMain/kotlin/Connection.kt#L54-L73
In your case, cancelling the I/O operation is breaking out of the lock (which is normal and correct coroutine behavior), but then it is allowing a subsequent I/O operation to occur (line 56) before the previous has finished.
I'll try to figure out a fix for this soon. Thanks again for reporting!

Makes sense. Thanks for the quick response!

@joharei I tried to reproduce this issue but was getting OutOfOrderGattCallbackException (instead of the GattRequestRejectedException you reported), so I'm not sure if I'm actually fixing the issue you were hitting.
I may have a fix, if you can give it a try, please? 🤞
repositories {
    maven("https://oss.sonatype.org/content/repositories/snapshots")
}

dependencies {
    implementation("com.juul.kable:core:0.18.0-issue-326-1-SNAPSHOT")
}

Hi @twyatt, thanks for looking into this. I've done some initial testing, and it looks like my issue is solved with this fix! I will need to get hold of some devices to verify that my original issue has been solved, but this looks promising.
Thank you!


Refactor Service Objects for fetching Service Plans and Ordering a service

There are 2 service objects in this PR

Fetch Service Plans from the Topology Service
Order a  service from Topology Service

The controller calls the process method in the service object
The controller handles exceptions and sends responses back
The controller validates the parameters needed for the service object

@Fryguy
Please review

cc @syncrou

@Fryguy Please review I have made all the changes we discussed yesterday


Represent all server errors through system logs

Environment
IS 2 node cluster setup fronted by Nginx
Mysql 5.6
JDK 1.8
OS - Ubuntu-14.04-LTS
Browser Chrome 58.0.3029.96
Steps to reproduce the issue

Go to 'Monitor' -> System Logs
Check the error logs on the server

Use Case
As an admin user, I want to monitor the server errors in the cluster nodes, so that I can get corrective action depending on the severity of the issue.
Observations
Since the nodes are fronted by Nginx, From the management console it does not reflect the errors in both nodes. It only reflects the logs relevant to the node where the management console is up and running.
It would be better to provide a mechanism to monitor all server logs

Thank you for your contribution!
We are closing this issue since it has not been prioritized for a long time. Chances are that it has already been solved in more recent versions. If not, we will be re-evaluating this when it becomes a priority.


feat(Select): clearIcon支持常显

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
What is the current behavior? (You can also link to an open issue here)
What is the new behavior (if this is a feature change)?
Does this PR introduce a breaking change?
Please check if the PR fulfills these requirements

[ ] Follow our contributing docs
[ ] Docs have been added/updated
[ ] Tests have been added; existing tests pass

Other information:

lgtm


Xero authentication flow

Details

This PR is part of the Xero integration project where we supports integration with Xero, an accounting software, on New Expensify.
This PR adds a button that the user can click to start the authentication flow with the Xero, similarily to QBO authentication flow. On both web and native platforms, this button opens up a new web page where the user can authenticate with the Xero. After the authentication is complete, the user's authentication token is stored in the backend and the web page closes.
On a web browser, the web page is opened on a separate browser window. On iOS and Android, a temporary browser window is opened as a modal within the app to display the web page.
This PR also adds support to 'Other integrations' section on PolicyAccountingPage. When one of accounting integration is successfully connected, then the rest of integrations is put into 'Other integrations' section.
Fixed Issues

$ https://github.com/expensify/app/issues/39725
$ https://github.com/Expensify/App/issues/39955
PROPOSAL:
Tests

To test this you need to add .env file in root of the project with following content
ENVIRONMENT=staging

Create a Collect type workspace that has areConnectionsEnabled = true prop(you can set it on OldDot by writing commands in console like on screen-shot)

On workspace page go to the "More features" and enable "Accounting"

Go to the new "Accounting" menu entry and try setting up connection with Xero.

Try to set up Xero connection.

Try to open up 'Other integrations' and set up QBO(modal with disconnecting from QBO should pop up)

Try connecting to Xero from 'Other integrations' the same way you connected to QBO.

Try disconnecting from Xero by clicking three dots and then 'Disconnect'

Offline tests

QA Steps

[ ] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

MacOS: Desktop

bump @mollfpr 😃

I'll be back on the review here in an hour.

@mananjadhav added test steps, I don't think any additional setup apart from adding .env file and setting up workspace correctly is required

Good review, @SzymczakJ seems like there are conflicts! And ready for another look from @mananjadhav

@mananjadhav bump 🙏

I did a partial review. I’ll finish the rest today.

Did the PR Review, and I think it looks good to me. Will start testing this out and post an update in a few hours.

@SzymczakJ Can you please complete the author checklist? I am starting with the checklist now.

Reviewer Checklist

[ ] I have verified the author checklist is complete (all boxes are checked off).
[x] I verified the correct issue is linked in the ### Fixed Issues section above
[x] I verified testing steps are clear and they cover the changes made in this PR

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[x] I checked that screenshots or videos are included for tests on all platforms
[ ] I included screenshots or videos for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

[ ] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[ ] MacOS: Chrome / Safari
[ ] MacOS: Desktop

[ ] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[x] I verified proper code patterns were followed (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I verified that this PR follows the guidelines as stated in the Review Guidelines
[x] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

MacOS: Desktop

I've posted some bugs/issues on the slack thread here.

I was testing this, I got the same crash. https://github.com/Expensify/App/pull/40277#issuecomment-2079032793

I got another crash -
https://github.com/Expensify/App/assets/29673073/c69ca2c6-417c-4749-bd83-30adb6f86c80

I was testing this, I got the same crash. #40277 (comment)

I saw the video I didn’t get this crash and I must’ve tried 20+ times.  I can see you’ve mentioned you got it for the first time and even on disconnect, right? I’ll create a fresh account and try.  Did you create a new account ? Did you setup any data in that? All I did is create a new Xero account and a basic company with no details/data.

Did you create a new account?

Yes

Did you setup any data in that? All I did is create a new Xero account and a basic company with no details/data

Yes same.

A PR to fix the sync progress not being displayed is under review, and will be merged as soon as possible.

@cdOut you'll need to update the translations with the copy here.

@mananjadhav I've pushed fixes to the recently added suggestions and also updated the translations. PR should be ready to be re-tested, let me know if I've missed any issues.

Overall the auth change works, but disconnect doesn't.

Clicking on Disconnect doesn't work for Xero.
Clicking on Cancel doesn't land me back to the App.
On Desktop after successful connection it didn't redirect back to the Desktop app.
There's a slight delay after successful connection, and you end up seeing the setup clickable button.
When I click on Sync now for Xero, it shows Importing your Quickbooks Online data.

https://github.com/Expensify/App/assets/3069065/63795903-f004-4c92-8c13-4ed8e26b55a7

Reviewer Checklist

[x] I have verified the author checklist is complete (all boxes are checked off).
[x] I verified the correct issue is linked in the ### Fixed Issues section above
[x] I verified testing steps are clear and they cover the changes made in this PR

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[x] I checked that screenshots or videos are included for tests on all platforms
[x] I included screenshots or videos for tests on all platforms
[x] I verified tests pass on all platforms & I tested again on:

[x] Android: Native
[x] Android: mWeb Chrome
[ ] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[x] I verified proper code patterns were followed (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I verified that this PR follows the guidelines as stated in the Review Guidelines
[x] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native
https://github.com/Expensify/App/assets/3069065/996eeea8-caed-4cf1-b9f1-d03d6d215367

Android: mWeb Chrome
https://github.com/Expensify/App/assets/3069065/cd3fe1fc-b554-4296-9c5a-96e280f75369

iOS: Native

iOS: mWeb Safari
https://github.com/Expensify/App/assets/3069065/ab946d38-2eb6-48ce-b932-0b536c87829c

MacOS: Chrome / Safari
https://github.com/Expensify/App/assets/3069065/acd8ca5f-8995-4caa-bf3d-e2b05dbb954e

MacOS: Desktop
https://github.com/Expensify/App/assets/3069065/01b58422-8746-4feb-b5bc-31f084bfc3db

Overall the auth change works, but disconnect doesn't.

Clicking on Disconnect doesn't work for Xero.
Clicking on Cancel doesn't land me back to the App.
On Desktop after successful connection it didn't redirect back to the Desktop app.
There's a slight delay after successful connection, and you end up seeing the setup clickable button. In extension to this, should we be having a loader state when the connection is being authentication?
When I click on Sync now for Xero, it shows Importing your Quickbooks Online data.

Thank you for this recap on what needs to be fixed.
Regarding 4. the slight delay with the Set upclickable button, there's an issue for this that has been created for QBO. You can take a look here.
Concerning the loading states, we should have them, it'll be fixed when the PR to fix push notifications will be merged.
For the reasons mentioned above by @mountiny, I'm going to proceed with the merge so we can identify and fix as soon as possible eventual new issues that'll arise on staging.

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Cherry-picked to staging by https://github.com/francoisl in version: 1.4.67-7 🚀

platform
result

🤖 android 🤖
failure ❌

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

@Expensify/applauseleads please QA this PR and check it off on the deploy checklist if it passes.

🚀 Deployed to staging by https://github.com/lakchote in version: 1.4.68-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Cherry-picked to staging by https://github.com/francoisl in version: 1.4.67-7 🚀

platform
result

🤖 android 🤖
failure ❌

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

@Expensify/applauseleads please QA this PR and check it off on the deploy checklist if it passes.

🚀 Deployed to production by https://github.com/francoisl in version: 1.4.68-3 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


[Authorize] Works Until I try Authorizing Roles in .Net Core 2.2

I can't figure out what I'm doing wrong. I'm using Azure AD to authenticate and the [Authorize] attribute which works just fine. I have the below in my Startup.cs.
services.AddAuthentication(sharedOptions =>
            {
                sharedOptions.DefaultScheme = CookieAuthenticationDefaults.AuthenticationScheme;
                sharedOptions.DefaultChallengeScheme = OpenIdConnectDefaults.AuthenticationScheme;
            })
            .AddAzureAd(options => Configuration.Bind("AzureAd", options))
            .AddCookie();

So authorization works but when I add a role check, like [Authorize(Roles="Domain Users")] I'm redirected to https://localhost:5001/Account/AccessDenied?ReturnUrl=%2Fitems which hits the AccessDenied() method in the generated AccountController.cs. I've tried Roles that were created in AD and also a Group that I created in Azure AD. "Domain Users" is pretty much the roll that every single employee has in the company so I don't see how access could be denied for at least that role.
Any help would be much appreciated.

Hello! Thanks for contacting us. This sounds like a general question about using ASP.NET Core. While we try to look at and respond to all issues, for questions like this we recommend posting to a community support group like Stack Overflow with the asp.net-core tag.


Add support for specifying clang-format command

I'm aware of the ability to specify a custom executable for clang-format, but I would appreciate it if that was changed to a command instead. Specifically, it is much easier to get clang-format-11 on linux (and by extension, wsl) than it is on Windows (it's also much more convenient to keep it updated via apt).
It would be great if we could specify something in settings like
Custom command: C:\Windows\Sysnative\wsl.exe -e clang-format-11

Right now if I try to do that I get this, which seems to indicate that it's trying to run the whole command as the executable, rather than parsing the string and pulling the arguments out of it:

Setting the executable to just C:\Windows\Sysnative\wsl.exe gives a different error message caused by it not writing anything to stdout/stderr (obviously), so the path to wsl.exe is correct.

Hello @PazerOP,
Thank you for your suggestion. We'll try to implement this feature in a future release. If you have any other suggestions, please let us know.


Producer emits ready when not connected to broker

I have a producer instance created that listens to the 'error' event being emitted by lib/producer.js and then try to reconnect (on a timeout) using the strategy outlined in an answer to a different issue (on error, create new instance of producer) https://github.com/SOHU-Co/kafka-node/issues/209
The problem though, is that lib/producer (the new instance that is created) emits a ready event, when it is not actually connected to a broker.
Steps to reproduce the issue:

Have Zookeeper and Kafka instances running
Start a producer instance, to connect to Kafka. This producer must implement the reconnection logic mentioned above.
a. Kill Kafka, and let the reconnection logic in the producer trigger.
b. DO NOT RESTART KAFKA at this point.
After the timeout / interval set in the reconnection logic, when reconnection is tried, lib/producer emits ready - when it is not really connected to any broker.

P.S - I think that the problem is actually in lib/client - it emits the 'ready' event outside of the callback to connect  to a broker - (https://github.com/SOHU-Co/kafka-node/blob/master/lib/client.js#L78). I think that this emit needs to be on line 75, just before the return.

Has anyone else seen this problem? Is there a recommended method to correctly reconnect to a broker in case of lost connections?

Have you tried running the test without any reconnect logic? The reason I mention this is b/c the sockets to the broker automatically reconnects every second when it's closed or encounters an error. I also have submitted some PRs which was merged dealing with recovering from both zookeeper and kafka. There should be limited cases where you need to reconnect manually.

@hyperlink: I have tried that, but it didn't work as expected. Which is why I had to write this reconnection logic.

Just to be clear you are using v0.2? There's still outstanding issues (at least ones that haven't been merged yet) with v0.3.
The only case I've come up against is when I receive a NO_NODE error I had to close and recreate the client/producer combo.


3D deconvolution?

This is a very nice approach,thanks for the clear paper and code. We have some 3D widefield fluorescence data that it would be great to try your approach on.
Do you have any plans to extend the model to 3D? Happy to provide some bead z stacks if it would be helpful.

Hey Doug!,
Thank for reaching out, and for your interest! We are absolutely interested in extending to 3D. Currently, it is possible to do 3D by calibrating and deblurring each depth plane separately. The main inefficiency of this is the need to render out different PSFs at each depth. However, we feel that there is a more efficient way to do it!
I would love to collaborate on this. If you send me your z-stacks I can try to see if I can develop something quicker than just the naive slice-by-slice method. If you are interested, it is maybe best to send the data to my email<EMAIL_ADDRESS>(or whatever method you prefer).
If you wanted to try something right away, you can essentially just apply the code slice by slice, recalibrating and doing 2D ring deconvolution at each slice. If that's too slow you can replace ring deconvolution with DeepRD, although we only have models for 512x512 and 1024x1024 images. Let me know if you are interested in a particular image size, we can train a model for you!

Sorry for being slow on this. One of the group members is collecting some better bead data and then we will a link over to you.


ready event fires before waveform appears

In the docs, it says that the 'ready' event should fire when "audio is loaded, decoded and the waveform drawn.". However, for me it is firing as soon as the audio starts playing (BEFORE the waveform is drawn).
Edit-
I see this is a duplicate of #429. Could we have a separate event fired for the waveform? From what I understand, the solution in #429 won't work for me as I need the track to start playing before the waveform is loaded.

Do you have a proposal for the new event name?

Nothing nice and simple like the other event names!
waveformReady / waveformready ?

this seems to work in the meantime:
wavesurfer.once('redraw', ()=>{
      debugger;
    });

I really need an Event that is fired when the waveform is drawn, too. :(

Any update on this issue :) ?

You can use the loading event and wait until it has load the track 100%.
wavesurfer.on('loading', function(e){ if(e == 100){ //doSomething; } });
Its nearly the same as to wait the waveform drawn, because it will be drawn immediately after the track is loaded 100%.

The mentioned didn't work for me :/ too bad; it would really help me build my peak cache system.

I found that having an event which fires when waveform is decoded from audio loaded with media element backend is very useful to create peaks file. No other native events works as nicely, so I think it could be good to have it.
https://github.com/X-Raym/wavesurfer.js/commit/250cde1410622b68d219f23ec2a3571cf1e30e26
I can make a pull request if you are interested :)

@katspaugh Hi,
Are you ok for a pull request with the event mentionned above ?
I use it for WaveSurfer-WP-Premium, and it is especially useful for peaks file creation, as this event is only trigger if wavesurfer is loaded with MediaElement and without peaks.

@X-Raym I'm all for it, but I don't get why you named it "noPeaks". In thedecodeArrayBuffer, callback peaks are, on the opposite – present.

@katspaugh 'noPeaks' because it is trigger only if no peaks have be passed as parameter of the load function. This event is called when waveform is drawn from audio analysis, and not from other sources (like a peaks file).
But really, you can choose another name which would fit more your actual events naming conventions.

I'm OK with what was suggested here before: waveform-ready.

@katspaugh
Sounds good,
I'm on it 🐙

Published version 1.2.3 on npm with the new event. Thanks @X-Raym!


NaN loss when I was training resnet101 on Pascal Voc 2007

I used the vanilla codes and prepare pascal voc 2007 datasets as suggested methods. I set learning rate as 0.01 and use 8 gpus, 24 batch size for training. However, the rcnn_cls loss will be Nan after training only 2 iters. My pytorch version is: 0.3.0.post4. I also tried to train resnet50 and got similar problems. Even though I used 1 gpu and 1 batch size, and lr=0.001, this problem still appear. But VGG16 works fine. I am not sure what happened, anyone can provide some suggestions?

It is pretty wired that it works fine two weeks ago, after git clone new version of codes, bugs appear.

Could you plz tell me which pytorch version do you use for running your codes? I am using 0.3.post4. And it will lead NaN errors.

@xuw080 I'm pytorch 0.4 with resnet. After making those adjustments on my dataset I was able to remove the NaN errors

@Worulz,what adjustments have you done?I need remove the NaN errors?

@1csu. if you're receiving NaN errors. It's to do with your annotations. Refer to this comment to fix it. https://github.com/jwyang/faster-rcnn.pytorch/issues/136#issuecomment-390544655
Even when using default settings for pascal voc I received NaN results. I would change the data load or  as stated, check your annotations.

@xuw080 I have a same problem like yours,if you change lr from 1e-3 to 1e-4 ,the loss will be not nan,but the mAP will be 56 ,besides ,if you delete the batchnorm layer in lib/models/fast-rcnn/resnet.py ,lr equals to 1e-3 will be trained well ,but mAP is also bad,almost 30.but it can work well.Therefore, it has problem in batchnorm layer.if you can make it well ,please send email to 987752424@qq.com,thanks.

If you didn't fix BN layer, you will not get NAN loss and get similar results as reported one. However, this is not what original codes tends to do. Generally, for training detection datasets, we should set BN layer fixed. I also get similar results, as you did, if I fix BN layers as original codes and set lower learning rate. The mAP is about 60, which is much lower than reported results. @jwyang @ly19965

Hi Leon, did you try to train Pascal Voc with this code? @Worulz I will still meet NaN loss when I was training Pascal Voc_0712. I have checked data loading codes, I didn't find any bugs. Thank you in advance.

@XudongWang12Sigma have you solved you problem?

Maybe I have solve this  problem,just in pascal_voc.py ,function _load_pascal_annotations,you should comment all -1,and then delete all things in data/cache.and then it works

and you need add some codes about check coordinate,maybe print it will show if the coordinate is right,


Experiment with Yarn 2

Yarn 2 has been released, supposedly bringing in a bunch of enhancements. See https://dev.to/arcanis/introducing-yarn-2-4eh1, a blog post by the lead maintainer of Yarn 2. This bug is to track our progress in experimenting and hopefully eventually adopting Yarn 2.
Some differences:

Different and non-backwards-compatible yarn.lock format
Stricter dependency requirements
No node_modules anymore!
Yarn is now installed per project

Here are some of my findings:

It works.
It does away with node_modules as advertised.
And, it's very slow.

I think we might want to take another look deeper into the future, like when a non-RC version of Yarn 2 gets released. But for now, I will unassign myself.


Remove unnecessary setup.py file

With a recent setuptools version, it's no longer necessary to have a dummy setup.py file.

Thanks a lot @cdce8p for pointing it out.
My only reason behind including the dummy setup.py was to allow "editable installs". As far as I can see from setuptools documentation (see the note on this page), support for PEP 660 seems to have been introduced in 64.0.0.
Based on this, I would bump the required version to 64.0, to keep the requirement low, unless there are reasons against it.
Rather unfortunately, I have not been able to experimentally bisect the version of setuptools on my machine, to see at which version the editable install starts to work. My experience is limited to using pip and it seems that it added support for PEP 660 in 21.3. From my experience, it seems to me that the only thing that defines whether I can install a package as editable without setup.py is the version of pip that I use, disregarding which version of setuptools I have installed. Maybe another manager would allow to identify the necessary version of setuptools, but at this point I am willing to follow aforementioned setuptools documentation rather blindly. I am open to your opinions however.

My only reason behind including the dummy setup.py was to allow "editable installs". As far as I can see from setuptools documentation (see the note on this page), support for PEP 660 seems to have been introduced in 64.0.0. Based on this, I would bump the required version to 64.0, to keep the requirement low, unless there are reasons against it.

Pushed a new commit.


Garden planner

Introduce a new feature in the game that allows players to plan and grow their own virtual garden. This feature will enhance gameplay by providing a relaxing and educational gardening experience, teaching players about plant care, garden design, and sustainability.
Garden Planning
Add a new menu option where players can design their garden layout.
Provide various garden templates and customization options (e.g., flower beds, vegetable plots, herb gardens).
Allow players to choose garden themes, such as tropical, desert, or cottage garden.
Plant Selection
Include a wide variety of plants, categorized by type (e.g., flowers, vegetables, herbs, trees).
Provide detailed information about each plant, including growth conditions, care instructions, and harvest times.
Implement a virtual nursery where players can purchase seeds, seedlings, and mature plants.

@Sulagna-Dutta-Roy please assign this issue

@mahek0620 Kindly respond urgently
How many points you earned from my repo? The limitation is reduced to 150

Pull request received since long time. Closing this


Do nvim-go will add syntax hightlight?

Do nvim-go will add syntax hightlight?

@Cosson2017 Sorry for late reply.
Yes, I’ll try to add AST base syntax highlight.


Docker & Helm Support

Hi there,
Are there plans to provide klaw as a docker image or a helm chart?
The current approach with pulling the source code and providing cluster configuration inside springboot is not very intuitive ;)
Looking at examples from other vendors like provectus https://docs.aiven.io/docs/products/kafka/howto/provectus-kafka-ui.html
Cheers

Hello Wanis, thank you for asking. Indeed there is a plan to provide docker image. We are currently working on release 1.1.0, and a docker image of the same will be released. Will keep you updated.

FWIW, here's a (multi-stage) Dockerfile we used when testing klaw in-container:
# syntax=docker/dockerfile:1.4

ARG VERSION=1.1.0

FROM maven:3-jdk-11 AS builder

ARG VERSION

WORKDIR /usr/src

RUN <<-EOF
    set -e
    git clone --depth 1 --branch v$VERSION https://github.com/aiven/klaw.git
    cd klaw
    mvn -B -ntp install
EOF

FROM eclipse-temurin:11

ARG VERSION

COPY --from=builder /usr/src/klaw/core/target/klaw-$VERSION.jar /opt/klaw/klaw.jar

RUN <<-EOF
  set -e
  mkdir -p /var/opt/klaw
  groupadd --system --gid 999 app
  useradd --system --comment "Application" \
    --create-home --uid 999 --gid 999 \
    --shell /usr/sbin/nologin app
  chown app:app /var/opt/klaw
EOF

WORKDIR /var/opt/klaw

USER app

CMD [ "java", "-jar", "/opt/klaw/klaw.jar" ]

Built with: DOCKER_BUILDKIT=1 docker build --no-cache -t klaw:0.1 .

@wanisfahmyDE it took sometime for the repos to be created. We have them now.
https://hub.docker.com/repositories
Here is a compose file, incase you need.
`---
version: '3'
services:
klaw-core:
image: aivenoy/klaw-core:latest
environment:
example secret - base64 encoded
  KLAW_CLUSTERAPI_ACCESS_BASE64_SECRET: dGhpcyBpcyBhIHNlY3JldCB0byBhY2Nlc3MgY2x1c3RlcmFwaQ==
ports:
-   "9097:9097"
networks:
  - klaw
extra_hosts:
  - "moby:<IP_ADDRESS>"

klaw-cluster-api:
image: aivenoy/klaw-cluster-api:latest
hostname: localhost
networks:
- klaw
environment:
provide the same secret as defined in core
  KLAW_CLUSTERAPI_ACCESS_BASE64_SECRET: dGhpcyBpcyBhIHNlY3JldCB0byBhY2Nlc3MgY2x1c3RlcmFwaQ==
ports:
-   "9343:9343"
extra_hosts:
  - "moby:<IP_ADDRESS>"

networks:
klaw:`

@muralibasani two questions

Are the original Docker files available, that were used to build these images?
Cluster-api docker image misses how to pass the application.properties file. As without this, it is not possible to connect to Aiven managed Kafka cluster for example.

Thanks

@advissor https://hub.docker.com/r/aivenoy/klaw-core there is an example compose file here. You can add all the properties (https://github.com/aiven/klaw/blob/main/cluster-api/src/main/resources/application.properties) under 'environment:' in the compose file.
And reg your first question : the same images are uploaded. Are you facing any issues with the images ?

@muralibasani
Images are working, at least starting and I can browse the UI
Just wanted to understand how to pass the application properties properly, without to the Entrypoint
This is what i've tried for Entrypoing in   klaw-cluster-api service :
   entrypoint: ["/bin/sh", "-c", "java -jar cluster-api-1.1.0.jar","--spring.config.location=/certs/application.properties"]
Volume in   klaw-cluster-api :
    volumes:
          - ./certs:/certs #host directory:container directory

Apllication properties in certs/application.properties
Cluster name in UI/Core as klawssl
Kafka SSL block in app properties like :
klawssl.kafkassl.protocol=TLS
klawssl.kafkassl.key.password=YYYYYYY
klawssl.kafkassl.keystore.location=/certs/client.keystore.p12
klawssl.kafkassl.keystore.password=Opetg89234
klawssl.kafkassl.keystore.type=PKCS12
klawssl.kafkassl.truststore.location=/certs/client.truststore.jks
klawssl.kafkassl.truststore.password=YYYYYYY
klawssl.kafkassl.truststore.type=JKS

/certs/client.truststore.jks generated with avn CLI
But in logs Properties are not recognised & are null:
	ssl.keystore.key = null
	ssl.keystore.location = null
	ssl.keystore.password = null
	ssl.keystore.type = JKS
	ssl.protocol = TLSv1.3
	ssl.provider = null
	ssl.secure.random.implementation = null
	ssl.trustmanager.algorithm = PKIX
	ssl.truststore.certificates = null
	ssl.truststore.location = null
	ssl.truststore.password = null
	ssl.truststore.type = JKS

One thing found a long the way:

on mac with docker-compose  the localhost:9343 will not work. So, has to be updated in UI/Core with http://klaw-cluster-api:9343

Thanks!

@muralibasani  I found the answers and discrepancies in docs

Docker composes you provided can't be used, as cluster ID can only be known after looking into LOGS!!!

Apparently, there is a bug in the code
When you create a cluster-ID in CORE/UI for example DEV in clustet-api logs I can see identified DEV11. It appends 1
If you add one more cluster in UI, likeDEV , it made it DEV2. So, somehow UI/CORE increments the cluster IDs
For this reason, only if you know this logic, can you properly set the Cluster ID value in application.properties

There is a command in the readme. Didn't work for me :
-spring.config.location=cluster-api/target/classes/application.properties

I had to specify in Docker compose like this :
"SPRING_CONFIG_ADDITIONAL_LOCATION=file:/cluster-api/target/classes/application.properties"
Then it was picked up by spring boot properly
Neither replacing the original file under cluster-api/target/classes/application.properties or using entry point with -spring.config.location didn't help

@advissor you can copy the cluster ID from UI clusters page. Last column.


Feature/panda Merge panda-3175 customer coupon service into PANDA-3170

Task:PANDA-3175
Title:customer coupon service
Description:

service lay for customer coupon.

NGRX layer for customer coupon.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.0 out of 2 committers have signed the CLA.:x: Terry01Tan:x: Seven7hangYou have signed the CLA already but the status is still pending? Let us recheck it.

deprecated


chore(typescript): convert src/ to typescript

Rats.  I went ahead and created tracking issues so we don't step on each other's toes :) . I'll assign stuff to myself before workin on it :)


Power versus Energy and Units for Parameters tab

Sorry if this appears to be pedantic, but probably important to get right?
Power and Energy are different things. Power is the rate of transfer of energy and is measured in watts or kilowatts. Energy is the work or potential work done and is measured in watt-hours or kilowatt-hours. The Stats page in EnergyStats provides a break down of the energy used or stored in a battery and the units are kWh. These are the results of the report queries against the Fox cloud.
The Parameters page in EnergStats provides information about the power available at a specific time and the values and units are obtained from the raw data query of the Fox cloud. This means it is wrong to label a parameter Output Energy in kWh, when the value being presented is the Output Power and is in kW. The same applies to Feed-in, Grid Consumoption, Charge, Discharge and Load - these are all Power values, not Energy values.
The labels and units are correct when viewed in the selection list, these just need to be carried across when the parameter values are being displayed for a specific time selection. So, temperatures should be oC (not kwh). PV1 power should be kW (not kWh), Battery Current should be A, SoC should % etc.

Thanks, this was done on iOS but never on Android as I only recently figured how to do the touch handling. I've removed the fixed kWh unit entirely as that was totally wrong. Will look to add specific units as per the selection view.


Hope to be able to support code syntax highlighting And Find a Code Format Issue

Now it doesn't seem to support the code very well, and the plug-in might be preview the chunks by detecting line breaks. So if I insert a blank line in my code, it will look like this:

Hi. Thanks for pointing this out. I will have a look at it.
As a temporary workaround, it is possible to put one space on the empty lines and they will no longer work as card page separators, i.e. the whole code block will appear at once.
Note: make sure VSCode's files.trimTrailingWhitespace setting is set to false, otherwise they will get removed on save

Fixed in v0.7.0


compatibility mod valhesia structures

hello, sorry for the mistakes i'm french don't speak english well so i used google translate. My problem is the following one I installed terraforged in 1.15.2 and the valhesia structures mod which adds many structures to the game. However when I run the game with the terraforged generation no problem but when I go to do a / locate structure of valhesia, it is impossible to find these last, do you know if there is an incompatibility between the two mods?

Nope they all seem to work fine. Some structures may spawn far away which can make the locate command take a long time or fail


docs,devel: mention how to get docker-compose

Fixes #299

I have cleaned up commits (hope you don't mind, I still have the previous snapshot with merge commit saved locally).

LGTM


bug: npm install ionic broken behind proxy

Type: bug
Platform: mobile webview
When i run: npm install -g ionic i get the below error, no problem running npm install -g cordova. I had no problems installing and updating ionic before until now.
I been trying to solve this for 2 days now without any luck. It works at my home network both on windows and mac, but NOT on my company network. I have set the proxy in C:\Users\xxxxx.npmrc like this on my company windows pc:
proxy=http://user:password@httpproxy.xxxxxx:8080
https-proxy=http://user:password@httpproxy.xxxxxxxx:8080
strict-ssl=false
am using node version v4.2.1 and npm version 2.14.7
The issue is also discussed here:
http://forum.ionicframework.com/t/ionic-and-node-sass-3-3-3-is-broken/35022
Building: C:\Program Files\nodejs\node.exe C:\Users\xxxxx\AppData\Roaming\npm\n
ode_modules\ionic\node_modules\ionic-app-lib\node_modules\node-sass\node_modules
\node-gyp\bin\node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --l
ibsass_ldflags= --libsass_library=
gyp info it worked if it ends with ok
gyp verb cli [ 'C:\Program Files\nodejs\node.exe',
gyp verb cli 'C:\Users\xxxxx\AppData\Roaming\npm\node_modules\ionic\n
ode_modules\ionic-app-lib\node_modules\node-sass\node_modules\node-gyp\bin
\node-gyp.js',
gyp verb cli 'rebuild',
gyp verb cli '--verbose',
gyp verb cli '--libsass_ext=',
gyp verb cli '--libsass_cflags=',
gyp verb cli '--libsass_ldflags=',
gyp verb cli '--libsass_library=' ]
gyp info using<EMAIL_ADDRESS>gyp info using<EMAIL_ADDRESS>| win32 | x64
gyp verb command rebuild []
gyp verb command clean []
gyp verb clean removing "build" directory
gyp verb command configure []
gyp verb check python checking for Python executable "C:\Python34" in the PATH
gyp verb which failed Error: not found: C:\Python34
gyp verb which failed at F (C:\Users\xxxxx\AppData\Roaming\npm\node_modul
es\ionic\node_modules\ionic-app-lib\node_modules\node-sass\node_modules\node-gyp
\node_modules\which\which.js:78:19)
gyp verb which failed at E (C:\Users\xxxxx\AppData\Roaming\npm\node_modul
es\ionic\node_modules\ionic-app-lib\node_modules\node-sass\node_modules\node-gyp
\node_modules\which\which.js:82:29)
gyp verb which failed at C:\Users\xxxxx\AppData\Roaming\npm\node_modules
ionic\node_modules\ionic-app-lib\node_modules\node-sass\node_modules\node-gyp\no
de_modules\which\which.js:93:16
gyp verb which failed at FSReqWrap.oncomplete (fs.js:82:15)
gyp verb which failed C:\Python34 [Error: not found: C:\Python34]
gyp verb could not find "C:\Python34". guessing location
gyp verb ensuring that file exists: C:\Python27\python.exe
gyp verb check python version C:\Python27\python.exe -c "import platform; print
(platform.python_version());" returned: "2.7.10\r\n"
gyp verb get node dir no --target version specified, falling back to host node v
ersion: 4.2.1
gyp verb command install [ '4.2.1' ]
gyp verb install input version string "4.2.1"
gyp verb install installing version: 4.2.1
gyp verb install --ensure was passed, so won't reinstall if already installed
gyp verb install version not already installed, continuing with install 4.2.1
gyp verb ensuring nodedir is created C:\Users\xxxxx.node-gyp\4.2.1
gyp verb created nodedir C:\Users\xxxxx.node-gyp\4.2.1
gyp http GET https://nodejs.org/download/release/v4.2.1/node-v4.2.1-headers.tar.
gz
gyp verb download using proxy url<EMAIL_ADDRESS>.xx:8080/"
gyp WARN install got an error, rolling back install
gyp verb command remove [ '4.2.1' ]
gyp verb remove using node-gyp dir: C:\Users\xxxxx.node-gyp
gyp verb remove removing target version: 4.2.1
gyp verb remove removing development files for version: 4.2.1
gyp ERR! configure error
gyp ERR! stack Error: unable to verify the first certificate
gyp ERR! stack at Error (native)
gyp ERR! stack at TLSSocket. (tlswrap.js:1000:38)
gyp ERR! stack at emitNone (events.js:67:13)
gyp ERR! stack at TLSSocket.emit (events.js:166:7)
gyp ERR! stack at TLSSocket.finishInit (tls_wrap.js:567:8)
gyp ERR!  Windows_NT 6.1.7601
npm ERR! argv "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs
node_modules\npm\bin\npm-cli.js" "install" "-g" "cordova" "ionic"
npm ERR! node v4.2.1
npm ERR! npm v2.14.7
npm ERR! code ELIFECYCLE
npm ERR<EMAIL_ADDRESS>postinstall: node scripts/build.js
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>postinstall script 'node scripts/build.js
'.
npm ERR! This is most likely a problem with the node-sass package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node scripts/build.js
npm ERR! You can get their info via:
npm ERR! npm owner ls node-sass
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! C:\Users\xxxxx\npm-debug.log

Greetings @aslani75!
My sensors indicate that you need to update your issue through our custom issue form. We are now requiring all issues to be submitted this way, to ensure that we have all of the information necessary to fix them as quickly as possible.
Click Here To Update Your Issue
I will have no choice but to close this issue if it is not resubmitted through the form. Please fill out the rest of the form, so that I may use my friendly robot powers to assist you.
Thank you!

This issue was moved to driftyco/ionic-cli#626


Allow longer read timeout

Coverage remained the same at 100.0% when pulling 9baa285e1ef37aa0033862c9254d10df3604511b on increase_timeout into 9da0e15f43e618cf0c6c433bb2cd642851182385 on master.

Coverage remained the same at 100.0% when pulling 9baa285e1ef37aa0033862c9254d10df3604511b on increase_timeout into 9da0e15f43e618cf0c6c433bb2cd642851182385 on master.


Rename EstimatePrice to EstimateSwap

Branched off current custom messages tests branch
Let's merge this after #14.

Codecov Report

Merging #15 (b3431c4) into wasm-integration-2 (8586062) will not change coverage.
The diff coverage is n/a.

@@                 Coverage Diff                 @@
##           wasm-integration-2      #15   +/-   ##
===================================================
  Coverage               20.92%   20.92%
===================================================
  Files                     201      201
  Lines                   25453    25453
===================================================
  Hits                     5326     5326
  Misses                  19164    19164
  Partials                  963      963

Impacted Files
Coverage Δ

app/wasm/bindings/query.go
0.00% <ø> (ø)

Continue to review full report at Codecov.

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


Coffeescript lexer stuck in infinite loop

(Original issue 729 created by None on 2012-01-17T03:28:49.276219+00:00)
The following code gets Pygments stuck in an infinite loop when lexed as Coffeescript.
{{{
//= foo()
}}}
I am aware that this is not valid Coffeescript. I'm just expecting the lexer to fail instead of getting stuck.

(Original issue 729 last updated on 2012-02-05T07:34:16.402439+00:00)
(Issue automaticaly closed due to status in Bitbucket: resolved)

(Original comment by birkenfeld on 2012-02-05T07:34:16.400309+00:00)
Closes #729: infinite looping in CoffeeScript lexer.
→ <<cset 873bae613277>>


The application switches to the background and then back, causing the camera to freeze

Steps to reproduce
1.When my application opened the camera, switched to another application, and then switched back, the camera went black and was frozen. Currently, the reason cannot be found, and the console did not report an error
Expected results
I hope to release camera resources when switching the application to the background, and then reload the camera to take photos when switching to the application
Actual results
But in reality, when I switched the application to the background, I had already released the camera's resources and used the dispose method. However, when I switched back to the application and reinitialized the camera, the camera froze and could not take photos
Code sample
// this is  'takephoto_controller.dart'

import 'package:flutter/material.dart';
import 'package:flutter_easyloading/flutter_easyloading.dart';
import 'package:get/get.dart';
import '../../utils/api.dart';

// import 'package:flutter_easyloading/flutter_easyloading.dart';
import '../../global.dart';

import 'dart:io';
import '../../common/colors/theme_colors.dart';

import 'package:camera/camera.dart';
import 'package:image/image.dart' as imglib;

import 'package:tencentcloud_cos_sdk_plugin/cos.dart';
import 'package:tencentcloud_cos_sdk_plugin/cos_transfer_manger.dart';
import 'package:tencentcloud_cos_sdk_plugin/fetch_credentials.dart';
import 'package:tencentcloud_cos_sdk_plugin/pigeon.dart';
import 'package:tencentcloud_cos_sdk_plugin/transfer_task.dart';

import 'dart:async';

import 'package:image_picker/image_picker.dart';

class TakephotoController extends GetxController with WidgetsBindingObserver {
  late CameraController controller;
  final cameraInit = false.obs;
  @override
  void onInit() {
    // TODO: implement onInit
    super.onInit();
    WidgetsBinding.instance.addObserver(this); // 监听app切换前后台
    getCameras();
  }

  // 监听app的存活状态
  // 应用从后台切换到前台时的逻辑
  // 部分手机需要重新初始化相机 否则卡死
  @override
  void didChangeAppLifecycleState(AppLifecycleState state) {
    var _controller = controller;
    try {
       if (state == AppLifecycleState.inactive) {
        _controller.dispose();
      }

      // 应用从后台切换到前台
      if (state == AppLifecycleState.resumed) {
        print('切换到前台${controller.value.isInitialized}');
        // _controller.initialize();
         getCameras();
      }
    } catch (e) {
      getCameras();
    }
  }
// 屏幕聚焦
  void onScreenTapped() async {
    try {
      await controller.setExposureMode(ExposureMode.auto);
      await controller.setFocusMode(FocusMode.auto);
    } catch (e) {
      print('Error: $e');
    }
  }
  getCameras() async {
    List<CameraDescription> cameras = await availableCameras();
    controller = CameraController(cameras[0], ResolutionPreset.high, enableAudio: false);
    await controller.initialize();
    cameraInit.value = true;
  }
}

// this is  'takephoto_view.dart'
import 'dart:io';

import 'package:camera/camera.dart';
import 'package:flutter/material.dart';

import 'package:get/get.dart';

import '../../components/custom_scaffold.dart';
import 'takephoto_controller.dart';
import '../../common/colors/theme_colors.dart';

import 'dart:math' as math;

class TakephotoPage extends GetView<TakephotoController> {
  TakephotoPage({super.key});

  @override
  Widget build(BuildContext context) {
    return Column(children: [
      Container(
          padding: const EdgeInsets.only(top: 50),
          width: Get.width,
          height: Get.height - 150,
          child: Obx(() => Container(
                padding: const EdgeInsets.symmetric(vertical: 0, horizontal: 0),
                child: !controller.cameraInit.value ? const SizedBox() : CameraPreview(controller.controller),
              ))),
      InkWell(
          onTap: () {
            controller.onScreenTapped();
          },
          child: Text('这是按钮'))
    ]);
  }
}

Screenshots or Video

Screenshots / Video demonstration

Logs
Logs
java.util.concurrent.RejectedExecutionException: Task android.hardware.camera2.impl.CallbackProxies$SessionStateCallbackProxy$$ExternalSyntheticLambda0@39bef79 rejected from java.util.concurrent.ThreadPoolExecutor@cf204be[Terminated, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 3]
E/System  (17505):      at java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:2082)
E/System  (17505):      at java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:842)
E/System  (17505):      at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1374)
E/System  (17505):      at java.util.concurrent.Executors$DelegatedExecutorService.execute(Executors.java:678)
E/System  (17505):      at android.hardware.camera2.impl.CallbackProxies$SessionStateCallbackProxy.onClosed(CallbackProxies.java:104)
E/System  (17505):      at android.hardware.camera2.impl.CameraCaptureSessionImpl.close(CameraCaptureSessionImpl.java:594)
E/System  (17505):      at android.hardware.camera2.impl.CameraCaptureSessionImpl.finalize(CameraCaptureSessionImpl.java:900)
E/System  (17505):      at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:344)
E/System  (17505):      at java.lang.Daemons$FinalizerDaemon.processReference(Daemons.java:329)
E/System  (17505):      at java.lang.Daemons$FinalizerDaemon.runInternal(Daemons.java:305)
E/System  (17505):      at java.lang.Daemons$Daemon.run(Daemons.java:150)
E/System  (17505):      at java.lang.Thread.run(Thread.java:1012)

Flutter Doctor output
Doctor output
[Flutter assets will be downloaded from https://storage.flutter-io.cn. Make sure you trust this source!
[√] Flutter (Channel stable, 3.22.2, on Microsoft Windows [版本 10.0.22631.3737], locale zh-CN)
    • Flutter version 3.22.2 on channel stable at D:\SDK\flutterSDK\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 761747bfc5 (4 weeks ago), 2024-06-05 22:15:13 +0200
    • Engine revision edd8546116
    • Dart version 3.4.3
    • DevTools version 2.34.3
    • Pub download mirror https://pub.flutter-io.cn
    • Flutter download mirror https://storage.flutter-io.cn

[√] Windows Version (Installed version of Windows is version 10 or higher)

[√] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at D:\SDK\androidSDK
    • Platform android-34, build-tools 34.0.0
    • ANDROID_HOME = D:\SDK\androidSDK
    • Java binary at: D:\installApp\androidstudio\jbr\bin\java
    • Java version OpenJDK Runtime Environment (build 17.0.10+0--11572160)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • CHROME_EXECUTABLE = D:\installApp\chrome\chrome.exe

[√] Visual Studio - develop Windows apps (Visual Studio Community 2022 17.10.2)
    • Visual Studio at D:\installApp\visualStudio\Microsoft Visual Studio\2022\Community
    • Visual Studio Community 2022 version 17.10.35004.147
    • Windows 10 SDK version 10.0.22621.0

[√] Android Studio (version 2023.3)
    • Android Studio at D:\installApp\androidstudio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.10+0--11572160)

[√] Connected device (4 available)
    • PHF110 (mobile)   • 8954495c • android-arm64  • Android 14 (API 34)
    • Windows (desktop) • windows  • windows-x64    • Microsoft Windows [版本 10.0.22631.3737]
    • Chrome (web)      • chrome   • web-javascript • Google Chrome 126.0.6478.61
    • Edge (web)        • edge     • web-javascript • Microsoft Edge 126.0.2592.81

[√] Network resources
    • All expected network resources are available.

Hi @4396mingkai, what version of camera & camera_android are you experiencing this issue with?
Does this happen with the camera plugin example app?

你好@4396mingkai，您使用版本camera时遇到的问题？camera_android
相机插件示例文件是否创建了文件？

Hello, the camera version I am using is ^ 0.10.5+9, and the version number of android_camera is version: "0.10.9+2"
version:
Flutter 3.22.2 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 761747bfc5 (4 weeks ago) • 2024-06-05 22:15:13 +0200
Engine • revision edd8546116
Tools • Dart 3.4.3 • DevTools 2.34.3
I created a camera example but still have this problem

Hi @4396mingkai, what version of camera & camera_android are you experiencing this issue with?
Does this happen with the camera plugin example app?

I upgraded the camera library to the latest version. Running the camera example is possible, but it still doesn't work in my project. Is it because it conflicts with the Getx library

Is it because it conflicts with the Getx library

That could be. Can you try it without using Getx in your app? Also, instead of calling getCameras again, can you check how the plugin example handles the lifecycle changes and try to use that to see if you still experience the issue?


Update users_and_groups dependency

users_and_groups role v1.0 does not work anymore with Ansible 2.2.
Moreover, default variable values must be set.

Thanks for this, please see my comments on your Logstash PR as they apply here as well (https://github.com/sansible/logstash/pull/19)

Superseded by https://github.com/sansible/elasticsearch/pull/20


New Versioning:  Still need ability to override entire version information.,.

Sometimes we need to initialize all 3 components of a version.  Such as #.#.#

Fixed