Endpoint fault is being logged as a Debug level message.

Contact Details
No response
Version
8.x
On which operating system(s) are you experiencing the issue?
Linux
Using which broker(s) did you encounter the issue?
Azure Service Bus
What are the steps required to reproduce the issue?
I've reached a resource limit while connecting to Azure Service Bus.

2023-05-12T19:15:16.8385724+00:00 [DBG] (/null/11) [MassTransit]:Endpoint Faulted: sb://<redacted>.servicebus.windows.net/Instance_yryyyyfcnrbrfbjabdpig8jib8?autodelete=300
MassTransit.ServiceBusConnectionException: ReceiveTransport faulted: sb://<redacted>.servicebus.windows.net/Instance_yryyyyfcnrbrfbjabdpig8jib8?autodelete=300
 ---> Azure.Messaging.ServiceBus.ServiceBusException: The number of maximum allowed subscriptions have been reached or exceeded. Number of subscriptions:2001, Max number of subscriptions allowed: 2000. To know more visit https://aka.ms/sbResourceMgrExceptions. TrackingId:abbf1aa9-8ea1-4819-942a-c579b1887641_G8_B6,

What is the expected behavior?
The log message I feel should probably be logged on the ERROR level and not DBG level.
In production systems, I don't have DBG level enabled, so the fault went unnoticed.
What actually happened?
I'm making use of a JobService and I hit the resource limit due to lingering subscriptions to the masstransit.contracts.jobservice~canceljob topic.

Just wondering if I'm missing some configuration setting on my end to prevent these Instances from sticking around or would I need to clean up these subscriptions myself after my application exits?
Related log output, including any exceptions
No response
Link to repository that demonstrates/reproduces the issue
No response

What version of MassTransit?
Also, are you stopping the service properly so that the subscriptions can be removed when the bus is stopped? If not, you'll need to clean them up yourself.
If this error was observed at startup, you can specify a StartTimeout after which the connection exception will be thrown for the faulted endpoint that could not be started.

This is on version 8.0.12
Yeah, it could be a result of crashes during the startup of my app which prevented the bus from properly shutting down and cleaning up.
Thanks for the StartTimeout suggestion, I'll look into that.


Reorder delete table

What changes were proposed in this pull request?
This patch is the implementation of my proposal . Go to the link for details.
An example scenario of potential race condition is like this:

Deletion service fetches RepeatedOmKeyInfo of previously deleted version x from delete table.
A client creates (commits) version y of the same key
The client deletes version y, putting y to delete table: the delete table has both [x, y]
Deletion service deletes blocks and RepeatedOmKeyInfo of only x.

After all, blocks of version y has become leaked and there is no way to salvage and reclaim them.
This patch also has another good side effect that blocks are reclaimed in deleted order. Previously, blocks are reclaimed in the order of keys, alphabetically. Late keys in alphabetical order may remain forever depending of the distribution and lifecycle of of keys (e.g. blocks in the keys starting from z may never be deleted as long as keys starting from a-y are newly put and deleted).
Minor changes needed for this patch

Make deletedTable as non-cached
Make UpdateID as prefixed with epoch as well as ObjectID - it seems that UpdateID of OmKeyInfo is not used anywhere, so changing it will not do any harm to existing system

What is the link to the Apache JIRA
HDDS-5905
How was this patch tested?
(Please explain how this patch was tested. Ex: unit tests, manual tests)
(If this patch involves UI changes, please attach a screen-shot; otherwise, remove this)

Requests

[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketDeleteRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketSetPropertyRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketAclRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketAddAclRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketRemoveAclRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketSetAclRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketCreateRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketSetOwnerRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMDirectoryCreateRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMFileCreateRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMFileRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyPurgeRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeysRenameRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixAclRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixAddAclRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixRemoveAclRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixSetAclRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAclRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAddAclRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyRemoveAclRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeySetAclRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMAllocateBlockRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCreateRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyDeleteRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyRenameRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeysDeleteRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMOpenKeysDeleteRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMTrashRecoverRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCommitRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3InitiateMultipartUploadRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadAbortRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadCommitPartRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadCompleteRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/security/S3GetSecretRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/security/S3RevokeSecretRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/security/OMCancelDelegationTokenRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/security/OMGetDelegationTokenRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/security/OMRenewDelegationTokenRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/upgrade/OMCancelPrepareRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/upgrade/OMFinalizeUpgradeRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/upgrade/OMPrepareRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeCreateRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeDeleteRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeSetOwnerRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeSetQuotaRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeAclRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeAddAclRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeRemoveAclRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeSetAclRequest.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/OMClientRequest.java

Responses

[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/OMClientResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/bucket/OMBucketCreateResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/bucket/OMBucketDeleteResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/bucket/OMBucketSetPropertyResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/bucket/acl/OMBucketAclResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/bucket/OMBucketSetOwnerResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/file/OMDirectoryCreateResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/file/OMFileCreateResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OMKeysRenameResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/acl/prefix/OMPrefixAclResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/acl/OMKeyAclResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OMAllocateBlockResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OMKeyCreateResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OMKeyDeleteResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OMKeyPurgeResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OMKeyRenameResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OMOpenKeysDeleteResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OMTrashRecoverResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OmKeyResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/AbstractOMKeyDeleteResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OMKeysDeleteResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OMKeyCommitResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/multipart/S3InitiateMultipartUploadResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/multipart/S3MultipartUploadAbortResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/multipart/S3MultipartUploadCommitPartResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/multipart/S3MultipartUploadCompleteResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/security/S3GetSecretResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/security/S3RevokeSecretResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/security/OMCancelDelegationTokenResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/security/OMGetDelegationTokenResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/security/OMRenewDelegationTokenResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/upgrade/OMCancelPrepareResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/upgrade/OMFinalizeUpgradeResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/upgrade/OMPrepareResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/volume/OMVolumeAclOpResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/volume/OMVolumeCreateResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/volume/OMVolumeDeleteResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/volume/OMVolumeSetOwnerResponse.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/volume/OMVolumeSetQuotaResponse.java

RequestsWithFSO

[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMDirectoryCreateRequestWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMFileCreateRequestWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAclRequestWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAddAclRequestWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyRemoveAclRequestWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeySetAclRequestWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMAllocateBlockRequestWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCreateRequestWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyDeleteRequestWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyRenameRequestWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMPathsPurgeRequestWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCommitRequestWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3InitiateMultipartUploadRequestWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadAbortRequestWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadCommitPartRequestWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadCompleteRequestWithFSO.java

ResponseWithFSO

[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/file/OMDirectoryCreateResponseWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/file/OMFileCreateResponseWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/acl/OMKeyAclResponseWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OMAllocateBlockResponseWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OMKeyCreateResponseWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OMKeyRenameResponseWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OMKeyCommitResponseWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OMKeyDeleteResponseWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OMPathsPurgeResponseWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/multipart/S3InitiateMultipartUploadResponseWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/multipart/S3MultipartUploadAbortResponseWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/multipart/S3MultipartUploadCommitPartResponseWithFSO.java
[ ] hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/multipart/S3MultipartUploadCompleteResponseWithFSO.java

Task split


diplay conversion percentages

I am not sure if this is considered a bug or a new feature, or may be this is already possible.
Just to keep things simple.
We have a dimension called "event", with two possible values  "impressions and "clicks".
When we query this data in airbnb caravel on a table view, a group by query is issued and we get the count of impressions and clicks on a table.
Is there a way to add an additional row called "conversion percentage" and calculate this percentage from the two values.
I have looked at the post aggregation option, but did not seem to find any real answer.

Nevermind. I figured i out, using postagg


Fix deserializing mistmatched JToken types in properties

Fixes https://github.com/JamesNK/Newtonsoft.Json/issues/2529

@JamesNK Hey James - thanks for all your hard work on this and the Newtonsoft.Json library in general.
Do you know if/when a new release version will be cut for this fix? Running into the issue now while updating from 12.0.3 to 13.0.1 and would prefer the fix vs the workarounds mentioned in #2529

@JamesNK Will this regression fix ever be deployed? It is especially critical now that older versions of the package are all alerted as potential security vulnerabilities.

It's on NuGet


Add change to work with several folders within folder.

Referring to issue #1

I'm on it since I'm also adding the option to work with .zip folder when a checkbox is clicked. I know it might be getting a lot wider in features but I just felt that also important.

@rocheio I have done the changes you have requested, Once these changes are merged I'll do a PR for the things I commented before (working with .zip) files. I do it in this way in order no to mess with commits.
Regards.


Corrected "ProjectAbbrevation" spelling

Please review this request, corrected "ProjectAbbrevation" spelling in community/hierarchical_configuration/Basic/templates/simple_frontend.py

Thanks for spotting this. Would you be able to sign  the CLA.
Also please do a search in the repo and fix this typo everywhere.

#397 fixing this in every file.


[FLINK-1927] [py] Operator distribution rework

Python operators are no longer serialized and instead rebuilt on each node. This also means that the dill library is no longer necessary.

Wow! Great to see that we get rid of the only python-side dependency. It was a bit unclear under which terms we could ship the library anyways. Have you done any measurements how this effects the performance? IMO the performance impact should be near zero, perhaps even faster now.

I didn't check performance, it shouldn't have any noticeable effect on it.

But doesn't this mean that the lambdas now must be stateless, i.e. if a user refers to some variable outside the lambda this will not be serialised with the closure anymore (because there is no serialization of the closure anymore).

@aljoscha that variable must be declared somewhere within the plan file. during the plan rebuild this would be executed as well, so i don't think this is a problem. in fact, i think this wouldn't work before this PR.

oh snap i just noticed a big flaw... well let's put this PR on hold for a bit.
I'm simply re executing the plan file on each node, but forgot to deal with arguments that were passed to the file -.-

Ok, keep at it. :smile_cat:

Implementing this in a clean way has become trickier that i initially expected, as such I'll postpone it and close this PR for now.


added spaces on header button

Done some space related  changes for header buttons
before

After

@codervivek5 please review my PR

@codervivek5  can please review and merge the PR

@codervivek5  can you please merge this PR


Use FlashAttention if possible

Summary
With torch>=2.0, we can use flash attention if possible. However, it is not employed in our attention modules.
To activate this useful feature, we added a wrapper function of F.scaled_dot_product_attention.
close #68

Codecov Report
Attention: Patch coverage is 96.49123% with 2 lines in your changes are missing coverage. Please review.

Project coverage is 84.06%. Comparing base (f83f999) to head (fbcf2a3).
Report is 43 commits behind head on main.

Files
Patch %
Lines

audyn/functional/activation.py
95.12%
2 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #79      +/-   ##
==========================================
+ Coverage   83.87%   84.06%   +0.19%
==========================================
  Files          91       95       +4
  Lines        9772    10247     +475
==========================================
+ Hits         8196     8614     +418
- Misses       1576     1633      +57

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


Create buttons component

Description

Create buttons component, similar to what is present in vocabulary.
Want to take up?

[Yes]

@dhruvkb please let me know if it is a valid issue, and if I can work upon it. Thanks!

Hi @Dishebh we have planned not to create components for the very simple elements (like buttons and inputs) because they are about the same effort to write as adding classes to pure HTML elements, while adding maintenance cost. You should read the Overview document.
A large-sized primary-coloured button in HTML:
<button class="button is-primary is-large">HTML button</button>

A large-sized primary-colored button in Vue.js:
<Button size="large" is-primary>Vue.js</Button>
<!-- And that's not counting the whole definition of the Button,
which adds maintenance effort. -->


Make names consistent and fix a few typos

Add/remove  to/from the "" section.

[ ] Table of contents has been updated (if needed).
[ ] Contents have been sorted alphabetically.

I ran hunspell to spot a few typos. It could be nice to setup some spell checkers we mention in the README as a proof of concept in the CI configuration.


Tag, null given

I'm running the phpdoc on the develop branch, and it gives me this error:

PHP Catchable fatal error:  Argument 1 passed to phpDocumentor\Reflection\DocBlock::addTag() must implement interface phpDocumentor\Reflection\DocBlock\Tag, null given, called in /vagrant/vendor/phpdocumentor/reflection-docblock/src/DocBlock.php on line 68 and defined in /vagrant/vendor/phpdocumentor/reflection-docblock/src/DocBlock.php on line 216

As I understood I must fork the develop branch, but it's not in a working state? Can anyone please clarify

phpunit works fine, though

This issue is solved. But please be aware of the fact that phpdocumentor 3 is still in development. It is not a working application at the moment. So I don't know what you are trying to do with it.
If you want to use phpdocumentor please use our latest tagged version. Or have a look at our releases page:
https://github.com/phpDocumentor/phpDocumentor2/releases

This is confusing me now, your contrib doc states I must branch develop for each issue.

we are currently working on a new release. I understand that this is a bit confusing. But the develop branch is unstable at the moment. It is still a lot of work before we will release version 3.0.0. Which is in develop.
If you had issues with a released version please create a patch on master.

OK, thanks


Support multiple ranges in a slider?

Hi. @NightCatSama .
Thanks for creating vue-slider-component!!
Especially it is usefull for  admin web page, setting page etc...
This is awesome, practical component, and it has sophisticated programing interface.
Describe the feature
I'd like to create multiple ranges slider in my application.
like this
|----◆====range-1=====◆------◆====range-2====◆-------|

Describe the solution you'd like
I think vue-slider-component implements these behaviors for supporting multiple ranges

When :value receives Array<Array<Number, Number>>, vue-component-slider renders multiple ranges in the slider.
<vue-slider :value="[[10, 20], [30, 40]]">
Each dots doesn't overlay adjacent range.

Additional context (If there is no relevant content, please delete the block)
let me know other workaronds/solutions if exists on vue-component-slider.
Should i create another compnent that supports multiple ranges in a slider. :thinking:

You can do this with v-model="[10, 20, 30, 40]" and process
e.g.  https://jsfiddle.net/NightCatSama/2xy72dod/10375/

omg..! thank you!!!  :+1: :+1: :+1: :+1: :+1:
That is what I had been looking for!

Each dots doesn't overlay adjacent range.

Your example doesn't meet this requirement.
But I got to stop overlay using enableCross: false. :smile:


LControl+A autodoor disable/enable

Is there an existing issue for this?

[X] I have searched the existing issues

Mod version
1.4.0
Is this a bug caused by this mod alone?
The bug was reproduced with this mod alone
List of mods to reproduce bug
No response
What happened?
Since version 1.4.0 I can switch off Automaticdoor with LControl+A but not switch it on.
Also some gates do not work anymore. I have to cancel them and build again.
Steps to reproduce the bug

LControl+A to disable Automaticdoor (theis works)
LControl+A again to enable. It is still disabled and I have to enable manualy

Logs and screenshots
No response

The investigation into the issue with the toggle key for the automatic door has been completed. It will be fixed in the next update.

Closed due to duplication with #33.


Add option to open build URL in browser

Would be nice to have a command that directly opens a specific build's URL in the browser for the user to be able to inspect/act on the build in more detail.

Thanks for your interest in the extension :+1:
I must admit, I kind of expected people to move to the official extensions:
https://marketplace.visualstudio.com/items?itemName=ms-vsts.team
Have you tried this one yet and is there any particular reason you would continue to use this one? In this case I will be happy to consider adding additional features to it.

@jlandersen Yes, I've tried it and am already using it in some projects. The problem is, the official extension does not work at all if your repository is not on VSTS.
We do however have some repos that are on other git servers and are only built & released through VSTS. For monitoring those builds your extension is superb 👌

Sorry for the late reply!
I have pushed 0.4.0 which adds another menu option for opening a build in the browser, similar to view logs


Unable to connect to git while creating a new brunch project

When running brunch new or any other skeleton command like brunch new --skeleton brunch/with-es6 the project fails to be created.
The error message I see:

12:21:34 - log: Pulling recent changes from git repo "git://github.com/brunch/with-react.git" to "/Users/bdubois/.brunch/skeletons/eb762f15f138e281aa63304a2d216881b88d1332"...
12:21:47 - log: Could not pull, using cached version (Error: Command failed: git pull origin master
fatal: unable to connect to github.com:
github.com[0: <IP_ADDRESS>]: errno=Operation timed out

)
12:21:47 - log: Copying local skeleton to "/Users/bdubois/Documents/healthCareSetup/dir"...
(node:19646) UnhandledPromiseRejectionWarning: TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received type undefined
    at assertPath (path.js:39:11)
    at Object.resolve (path.js:1090:7)
    at ncp (/Users/bdubois/.npm-global/lib/node_modules/brunch/node_modules/ncp/lib/ncp.js:16:26)
    at /Users/bdubois/.npm-global/lib/node_modules/brunch/node_modules/micro-promisify/index.js:8:14
    at new Promise (<anonymous>)
    at /Users/bdubois/.npm-global/lib/node_modules/brunch/node_modules/micro-promisify/index.js:6:10
    at mkdirp.then (/Users/bdubois/.npm-global/lib/node_modules/brunch/node_modules/init-skeleton/lib/index.js:76:12)
(node:19646) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:19646) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

I am on the latest npm and brunch versions, with a good network connection.  I am able to visit the repos and clone them manually with http and ssh.

This seems to happen when I'm using a public network (like starbucks or something). I'm guessing it's not an issue with brunch.


[Simplified Collect][Workflows] Select workspace approver

Details

Fixed Issues

$ https://github.com/Expensify/App/issues/37195
PROPOSAL:
Tests

Verify that you can set approver

Go to workspace settings
Select a control policy workspace that you're an admin of
Enable add approvals
Click approver
Select a user
Verify that the approver is changed and persisted.
Open the approver screen again, verify that the approver selected in step 5 has a green check next to it.

Verify that filtering (searching) works

Go to approver page
Search for a member, verify that the members are filtered.
Verify that you can select a searched member and it's set as an approver

[x] Verify that no errors appear in the JS console

Offline tests

QA Steps

[x] 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 approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[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 form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label 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

https://github.com/Expensify/App/assets/29673073/022302c5-3cf6-4704-a81c-074443bf07a7

MacOS: Desktop

Lint and typecheck unrelated to PR. Please ignore them and proceed with review.

Reviewer Checklist

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

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] 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)
[ ] 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)

[ ] 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
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] 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).
[ ] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[ ] I verified that comments were added to code that is not self explanatory
[ ] 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.
[ ] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[ ] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[ ] 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 approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[ ] 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.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] 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)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] 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
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] 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)
[ ] 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)
[ ] All JSX used for rendering exists in the render method
[ ] 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

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

[ ] 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

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

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

[ ] 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.
[ ] 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)
[ ] 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.
[ ] 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.
[ ] If the PR modifies the form input styles:

[ ] I verified that all the inputs inside a form are aligned with each other.
[ ] I added Design label so the design team can review the changes.

[ ] 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.
[ ] 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

BUG
No result found error not displaying in the member search bar

BUG
No result found shows up without entering anything inside the search bar?

BUG
Reloading the approver selection page changes the page in the background.
https://github.com/Expensify/App/assets/30054992/a9d6304f-9bb1-4690-a714-d5f0047a0b2b

BUG
Admin or Owner tag displaying at incorrect position.

BUG
Approver email being shown instead of name.

Admin or Owner tag displaying at incorrect position

expected. the mockup is a bit outdated

Approver email being shown instead of name

not part of issue?

Reloading the approver selection page changes the page in the background

@allroundexperts i need help with this. What might be causing this? Maybe lastViewedPage isn't updated? How to debug this?

@allroundexperts all done!

We should probably create a method to get the details from personalDetails by email instead of accountID

@luacmartins this method will be kinda expensive. It's going to search for a email in the entire personalDetails object.
Would this be okay?

@rushatgabhane let me know when you've addressed my comments above.

BUG

Offline indicator not at the bottom of the page
The selection is greyed out when offline even if the value was persisted in the db.

Seems pretty easily reproducible.

Open the workspace workflows page.
Go offline.

https://github.com/Expensify/App/assets/30054992/3f8a1a08-2ec5-49b1-aeb6-7aef5f0e7e50

@allroundexperts i think you might have some pending updates. The issue isn't reproducible with steps you've mentioned
https://github.com/Expensify/App/assets/29673073/09757bc5-b11b-4a6e-8699-f83d736d621f

@luacmartins updated to show display name

@allroundexperts i need help with this. What might be causing this? How to debug this? I tried comparing the implementation of invite members page but couldn't find a difference.

I have spent some good time on it but wasn't able to figure out the reason myself 😄. One thing which I found out was that this does not work for other pages as well:
https://github.com/Expensify/App/assets/30054992/77999f2f-c54c-42eb-ba1f-ac0282881933

@allroundexperts thankss it's a broader issue.
Issue to fix it all here - https://github.com/Expensify/App/issues/37517

@rushatgabhane Can a member be an approver?

@allroundexperts yes

@rushatgabhane Can a member be an approver?

yes, they can

Do you all see 89 commits in this PR? Github is going bonkers for me
My branch - 89 commits ahead

PR - 86 commits ahead

I see 86 commits

@luacmartins this would be a sync issue on github then. My branch is 89 commits ahead https://github.com/rushatgabhane/exfy/tree/approval-page

AH I was wondering what's up with that. I see a lot of the actions not being triggered

Does this checkbox look right to you guys? The bottom of it seems to be stripped.

@allroundexperts not a part of this PR. It looks intentional to me

@rushatgabhane You can run lint and type checks locally as well before pushing the code. Not only will it be faster but it will also save us the CI minutes!

You can run lint and type checks locally

: ( will ask help on slack

Have you tried cleaning everything and installing again?

@allroundexperts all typechecks and lint errors fixed. I didn't fix errors that are also present on main branch.

@rushatgabhane All checks are passing on main.

@allroundexperts i didn't make any changes in withPolicy

@allroundexperts we didn't make any changes in withPolicy. But there's still an error

Hm... Something must have changed. Because this is passing on main.

TS passed 🎉

: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.

Created internal issue to send approverAccountID so we can get rid of getPersonalDetailByEmail - https://github.com/Expensify/Expensify/issues/374749

🚀 Deployed to staging by https://github.com/luacmartins in version: 1.4.47-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
failure ❌

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/roryabraham in version: 1.4.47-10 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


It failed to train with 102flowers dataset

Hi, I tried BMSG-GAN with 102 flowers dataset ,and the result is very good, So I want to tried BBMSG for better result ,and I can not train it with 102 flower dataset  with default parameters.
I trained 400 epochs but generate is still:

Can you check it ??

@Johnson-yue,
Hope I am not too late..
From what I see, you have either set the spoofing factor to a very large value (something like 2 or 4 works best) or you haven't trained the model long enough.
As apparent from your results, it is not failed at all. The network is learning to generate flower like blobs. I would highly encourage you to keep training this model till at least 1000 epochs and then check the results. For ablation experiment, you could try to run the same model again with a smaller spoofing factor too.
Hope this helps!
Cheers :beers:!
@akanimax

@akanimax yes, you are right, I am trained this model until to 1500 epoch. And the spoofing_factor default is 16 and I am not change it , as your said ,it very big.
But when it finished train at 1500 epochs, it looks like better than before , but not good than BMSG-GAN, I think.
My train script is:
#!/usr/bin/bash
python train.py --depth=6 \
                --latent_size=512 \
                --images_dir="/home/ubuntu/media_data/public_Data/102flowers/jpg_128" \
                --sample_dir="samples/exp_flowers_1" \
                --model_dir="models/exp_flower_1" \
                --batch_size 8 \
                --num_workers 10

and when training 1500 epochs, the train image is :

I will decrease  spoofing_factor=4 and try it again, Do you have any other suggestions??
I really appreciate your timely and patient reply, which helps me to understand your method and makes great contribution to the development of technology .For example ,StyleGAN-v2 draws on your method, Great Job!!!!

@Johnson-yue,
Indeed, the spoofing_factor=16 is a very high value. I think I should change the default value altogether.
Thanks a lot for you compliment :smile:! It means a lot for me.
Yeah true, the nvidia's stylegan2 citation has been a very big surprise for me. I am glad that the researchers at Nvidia considered my work and the multi-scale gradients improved the results.
Please let me know if you have any further questions. I'll try to answer them as promptly as possible.
Best regards,
@akanimax


[.NET] Support build script on Ubuntu Linux #1778

Fixes #1778.

@iMicknl Could you check if this works on the Mac?

ahhh, the smell of fresh coffee and fresh builds in the morning... ☺
I've run the build and it works just fine on MacOS 10.14.6 with DotNet 2.2.401.
Build log attached.
build.log


align() and broadcast() before concat()

I have two arrays with misaligned dimensions x and y, and I want to concatenate them on dimension y.
I can't seem to find any way to do it, because:

If I do not invoke align(), it will fail complaining that dimension x is not aligned
if I invoke align(), it will create unwanted elements on dimension y

See example:
https://gist.github.com/crusaderky/a96db5b59396d94fe1e22694bc091d55
Am I missing something obvious?
Possibly align() should accept an optional parameter e.g. exclude==['y'] ?
Thanks in advance

Just found xarray.core.alignment.partial_align(), which does exactly that.
Not sure why the functionality is not part of the public API?
Looks like the solution is to simply merge partial_align() into align()?

I'm now facing the equivalent problem with broadcast().
I need to concat 3 arrays:
a = xarray.DataArray([[1,2],[3,4]], dims=['time', 'scenario'], coords={'time': ['t1', 't2']})
b = xarray.DataArray([5,6], dims=['time'], coords={'time': ['t3', 't4']})
c = xarray.DataArray(7, coords={'time': 't5'})

I want to broadcast dimension 'scenario' and concatenate on dimension 'time'. However, I can't invoke broadcast() because

a and b have misaligned time
c has a time coord, but not a time dim - if you broadcast a and c, you will get incorrect results

Again the solution would be to have a on optional parameter exclude=['time']

Indeed, we could probably replace align with partial_align, and use this inside concat (see #930 for an example of that). This is probably worth doing.
I didn't add exclude to align before mostly because I wasn't sure if the functionality would be useful to users, and I wanted to avoid making the mistake of expanding the API prematurely (it's harder to remove features than add them). Also, I didn't write tests or a good docstring for partial_align :).

I can work on it.
Should we go for a default outer join + broadcast inside concat? If the input already arrive aligned, or if the user wants a different type of join, this will slow things down with useless code though. What's your policy on this?

Awesome! We usually stick to outer joins by default so we don't
inadvertantly drop data. If datasets are already aligned, calling align
with copy=False should have minimal performance costs.
On Tue, Aug 2, 2016 at 12:20 AM crusaderky<EMAIL_ADDRESS>wrote:

I can work on it.
Should we go for a default outer join + broadcast inside concat? If the
input already arrive aligned, or if the user wants a different type of
join, this will slow things down with useless code though. What's your
policy on this?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/pydata/xarray/issues/927#issuecomment-236822408, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABKS1uZ5XlGSWrDfp3MRrKxPFd2zlD_aks5qbu-ugaJpZM4JY0b1
.

Started working on it. Still a lot of cleanup to be done.
https://github.com/crusaderky/xarray/commit/8830437865c43e472101ca91a12f714ee43546cc
Observations:

I can't put any sense in the skip_single_target hack or in the whole special treatment inside align() for when there is only one arg. What's the benefit of the whole thing? What would happen if we simply removed the special logic?
DataArray.reindex(copy=False) still performs a copy, even if there's nothing to do. I'm a bit afraid to go and fix it right now as I don't want to trigger domino effects
I'm experiencing a lot of grief because assertDatasetIdentical expects both the coords and the data vars to have the same order, which in some situations it's simply impossible to control without touching vast areas of your code. As a more general and fundamental point, I cannot understand what's the benefit of using OrderedDict instead of a plain dict for coords, attrs, and Dataset.data_vars?

First of all -- thanks for diving into this! You are really getting into the messy guts here, so thanks for sticking with it.

I can't put any sense in the skip_single_target hack or in the whole special treatment inside align() for when there is only one arg. What's the benefit of the whole thing? What would happen if we simply removed the special logic?

I actually just added this hack in a few days ago to fix a regression in the v0.8.0 release (https://github.com/pydata/xarray/issues/943). The problem is that __setitem__ assignment in xarray does automatic alignment, but arrays with non-unique indexes cannot be aligned. This meant that it was impossible to assign to an array with a non-unique index, even if the new array did not have any labels.
I agree that the way I fixed this is really messy. It would be better simply not to align as part of merge if there is only a single labeled argument, but it wasn't obvious how to do last week when I was rushing to get the bug fix out (the logic is currently buried in deep_align and needs to be extracted).
I'll take a look now and see if I can come up with a cleaner fix, but for now I would stick with a separate internal only private_align that allows the extra argument.

DataArray.reindex(copy=False) still performs a copy, even if there's nothing to do. I'm a bit afraid to go and fix it right now as I don't want to trigger domino effects

One issue issue here is that the purpose and functionality of the copy argument is currently poorly documented. It should say something like:
            If `copy=True`, the return value is independent of the input. If `copy=False` and
            reindexing is unnecessary, or can be performed with only slice operations,
            then the data may include references to arrays also found in the input.

(I'll update this soon.)
We should not be making any promises about returning exactly the same input object, and in fact for consistency we should (as we current do) always return a new Dataset or DataArray, because constructing these objects is pretty cheap. Rather, the issue is whether we need to copy numpy.ndarray input, which can be very expensive if the array is large.

I'm experiencing a lot of grief because assertDatasetIdentical expects both the coords and the data vars to have the same order, which in some situations it's simply impossible to control without touching vast areas of your code.

This shouldn't be true. assertDatasetIdentical calls the Dataset.identical method, which doesn't care about order:
In [29]: from collections import OrderedDict

In [30]: ds1 = xr.Dataset(OrderedDict([('x', 0), ('y', 1)]))

In [31]: ds2 = xr.Dataset(OrderedDict([('y', 1), ('x', 0)]))

In [32]: ds1
Out[32]:
<xarray.Dataset>
Dimensions:  ()
Coordinates:
    *empty*
Data variables:
    x        int64 0
    y        int64 1

In [33]: ds2
Out[33]:
<xarray.Dataset>
Dimensions:  ()
Coordinates:
    *empty*
Data variables:
    y        int64 1
    x        int64 0

In [34]: ds1.identical(ds2)
Out[34]: True

As a more general and fundamental point, I cannot understand what's the benefit of using OrderedDict instead of a plain dict for coords, attrs, and Dataset.data_vars?

This is something we considered before (https://github.com/pydata/xarray/issues/75). I think the main advantage is that OrderedDict is more intuitive (for people) and makes it easier to see at a glance how data changes.

One other thing to note: concat already handles broadcasting for each variable (independently) with ensure_common_dims. This would definitely be handled more cleanly with support for an exclude argument to broadcast_variables. It wouldn't work to use the main broadcast function for this because it would broadcast unnecessary variables when concatenating datasets.

Finished first complete part, ready for merging:
https://github.com/pydata/xarray/pull/963
Note: there is a failed unit test, TestDataset.test_broadcast_nocopy, which shows broadcast on dataset doing a data copy whereas it shouldn't. Could you look into it?
I'm now moving to auto-calling broadcast inside concat()...

Fixed by #963


Nothing happens when I run .bat

I edited the info for steam ID, BL name and password. Just brings up a blank notepad.
I added - SET PATH=%PATH%;"C:\apps\Java\jre7\bin;C:\apps\Java\jre6\bin" - because I think that's where my java is installed. This was added above - SET PATH=%PATH%;"C:\Program Files\Java\jre7\bin;C:\Program Files\Java\jre6\bin" - so now there are 3 lines there now. Still just a blank notepad.

I'm running into what appears to be the same problem. However looking at the output from Windows Command Prompt it is errors out with: "Error: Unable to access jarfile bltool.jar" It does this just before opening the games.txt file and after the notepad is closed. Looking at the directory and the github files, that jar file is just flat out missing. Was this file accidentally forgotten on push?

The jar is there:
$ unzip -l bltool-0.2.1.zip \*.jar
 16051636  2015-02-10 10:10   bltool-0.2.1/bltool.jar

Make sure that you downloaded the latest release and not the source code; the latter is for developers and doesn't come with the jar.


Onboarding in app

[ ] UserDetails

[ ] Timezone picker

[ ] ConnectCalendar
[ ] Availability

https://github.com/Real-Dev-Squad/CalendarMobile/pull/12


⚠ Bofrost.fr has degraded performance

In 02f01dc, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 864 ms

Resolved: Bofrost.fr performance has improved in d9b4342 after 21 minutes.


Quick Info font size is not the same as used by C# editor

It's too small (on a 4K monitor):

Fixed in https://github.com/Microsoft/visualfsharp/pull/1862


Fix failing mssql integration tests

Desired Outcome
Fix failing builds due to errors when installing pyodbc in mssql integration tests
Implemented Changes
Pin unixodbc dependencies to 2.3.7 until this is fixed in 2.3.11 (see: https://github.com/microsoft/linux-package-repositories/issues/36)
Definition of Done
At least 1 todo must be completed in the sections below for the PR to be
merged.
Changelog

[ ] The CHANGELOG has been updated, or
[x] This PR does not include user-facing changes and doesn't require a
CHANGELOG update

Test coverage

[ ] This PR includes new unit and integration tests to go with the code
changes, or
[x] The changes in this PR do not require tests

Documentation

[ ] Docs (e.g. READMEs) were updated in this PR
[ ] A follow-up issue to update official docs has been filed here: [insert issue ID]
[x] This PR does not require updating any documentation

Behavior

[ ] This PR changes product behavior and has been reviewed by a PO, or
[ ] These changes are part of a larger initiative that will be reviewed later, or
[x] No behavior was changed with this PR

Security

[ ] Security architect has reviewed the changes in this PR,
[ ] These changes are part of a larger initiative with a separate security review, or
[x] There are no security aspects to these changes

How soon do we expect this to be fixed? It may not be worth pinning the version if it's just for a few days.


proposal: Go 2: Permit running code at compile-time using "comptime" keyword

Problem
I want to read in the content of files while compiling time to simplify the shipping of template files with a binary.
Solution
using the comptime keyword to run arbitrary code at compilation-time.
Ref: https://ziglang.org/documentation/master/#Introducing-the-Compile-Time-Concept
Design idea
func main() {
    content := comptime os.Open("./code.json")
   ....
}

We aren't going to permit arbitrary code to run at compile time.
The specific topic of embedding files in a compiled binary is #35950.

Also there is go generate which should be used instead for code generation.

For the reasons mentioned above, this is a likely decline.  Leaving open for four weeks for final comments.

No further comments.


Feature/add ant support

This PR fixes #2538 and patches in support for inferring classpath from Ant build.xml files. The code is based on the equivalent Neomake functionality and is written to resemble the Gradle classpath-inferrer. Tests are written.

Build is failing on Windows build, I think due to path errors.
In order to get one of the tests to work, I need to 'trick' the container into thinking that an Ant executable exists. I do this by editing the $PATH variable to point at an ant stub I created. I'm not sure how Windows handles paths, so I don't know how to accomplish the same thing on for it.
I also don't have a Windows machine. Could I have some help in making this test also work on Appveyor?

Cheers! :beers:


Added support for  OCP-APIM Subscription Key needed for Victorian PTV (and others) GTFS-RT datasource

This datasource
https://data-exchange-api.vicroads.vic.gov.au/opendata/gtfsr/v1/tram/tripupdates
and
https://data-exchange-api.vicroads.vic.gov.au/opendata/gtfsr/v1/tram/vehicleposition
Need Ocp-Apim-Subscription-Key in the header. This PR adds support and it seems to work.
That said, I still cannot get sensible answers out of the API but I'll open an issue for that

Hi,  thanks for the code.  The latest release has support for custom headers via new api_header_key configuration value.  So, I won't be incorporating this code.  I have tested Vicroads API using this release and it works.  See comments in issue

No worries, thanks, any chance you could post a working config for the Vicroads API ? I cannot get the previous release to produce any output, very similar to #26

Hi,
First, let me say that I hate GTFS-RT so much !!! Because every transport operator implements it slightly differently.  Here is an example of a vehicle position that I got from Vicroads.
trip {
trip_id: "282.T0.3-57-mjp-1.4.R"
start_time: "19:53:00"
start_date: "20240508"
schedule_relationship: SCHEDULED
}
position {
latitude: -37.769016
longitude: 144.87929
}
timestamp:<PHONE_NUMBER>
vehicle {
id: "166.282.T0.3-57-mjp-1.4.R"
label: "Comeng (Z3.166)"
}
And here is one from Translink.
trip {
trip_id: "27412854-BCC 23_24-35813"
route_id: "NHAM-3482"
}
position {
latitude: -27.449083
longitude: 153.0493
}
current_status: IN_TRANSIT_TO
timestamp:<PHONE_NUMBER>
stop_id: "319743"
vehicle {
id: "D86D5BD7AAF5C603A783FE8A6BF771A6_Ya-wa-gara"
label: "Ya-wa-gara"
}
Unfortunately, you’ll notice that the Vicroads one does not contain the Route ID but the Translink one does.  The code, as it is currently written, requires that the Route ID be included in the vehicle position entity.  They are probably still compliant with the GTFS-RT standard but they are the first operator I’ve seen that does not include it ☹
Ironically, they are including the time due in the stop_time_update.  The problems that I’ve come across previously is that the time due is not included in this update.  Again, the code needs the time due to function.
stop_time_update {
stop_sequence: 33
arrival {
delay: 186
time:<PHONE_NUMBER>
}
departure {
delay: 186
time:<PHONE_NUMBER>
}
stop_id: "19661"
schedule_relationship: SCHEDULED
The solution to both problems (and to enhance the data in the sensor) is to query the GTFS static information.  Every operator publishes this data as a zip file.  Home Assistant already includes a core integration (General Transit Feed Specification (GTFS) - Home Assistant (home-assistant.io)https://www.home-assistant.io/integrations/gtfs/) that loads the zip file into a SQLlite database on startup.  Unfortunately, it only does it on startup which is painful because the operators usually update this file many times a day.  However, it’s a start.
My idea is to add code my integration to query the SQLlite database using the trip id, which is always provided in the GTFS-RT updates.  I just haven’t had a chance to finish it.
I know that doesn’t help you much but I thought I should provide an explanation as to why it is not working.
Regards,
Mark
From: lakidd @.>
Sent: Wednesday, May 8, 2024 5:50 PM
To: mark1foley/ha-gtfs-rt-v2 @.>
Cc: Mark Foley @.>; State change @.>
Subject: Re: [mark1foley/ha-gtfs-rt-v2] Added support for OCP-APIM Subscription Key needed for Victorian PTV (and others) GTFS-RT datasource (PR #33)
No worries, thanks, any chance you could post a working config for the Vicroads API ? I cannot get the previous release to produce any output, very similar to #26https://github.com/mark1foley/ha-gtfs-rt-v2/issues/26
—
Reply to this email directly, view it on GitHubhttps://github.com/mark1foley/ha-gtfs-rt-v2/pull/33#issuecomment-2099964689, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AL6CAIHEZ2N67U7MRTIQ6PLZBHKMDAVCNFSM6AAAAABHKQNRHSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAOJZHE3DINRYHE.
You are receiving this because you modified the open/close state.Message ID<EMAIL_ADDRESS>

thanks for the detailed response. Does it help that the route_id is 'inside' the trip_id ? In the example above route_id is 3-57-mjp-1 which is part of   trip_id: "282.T0.3-57-mjp-1.4.R"
I was thinking (any my python is bad) of using that to populate the route_id. Great work on the component btw !


Pattern match and rewrite fuzzing

Commit Message:
Pattern match and rewrite fuzzing
Additional Description:
Risk Level:
Testing:
Docs Changes:
Release Notes:
Platform Specific Features:
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Fixes commit #PR or SHA]
[Optional Deprecated:]
[Optional API Considerations:]

/assign @RyanTheOptimist

/retest

/retest

/retest

/retest

/assign @adisuissa

@adisuissa AIUI, you've got a lot of experience with Envoy fuzzers. Can you take a look?

@adisuissa I run the tests locally several time until they completed.

/wait

/retest


adding examples and documentation

adding examples for GillesPy2, BioNetGen; adding example for COPASI
adding documentation about SED-ML execution

Error due to nrwl installation


Format JSON of expected response in generated test files

format json generated in test files
format json in test files resources
add method assertEqualJsonFiles() to compare json files using ObjectMapper, instead of text based compare
fix typo (missing 'n' in "Antoine Griezmann"'s name)
Closes #17

Thank you for the JSON formatting @tal66! And thank you for having fixed the Griezmann typo!


ExpandSuggestionDocs Settings conflict with the command panel

In the past, I made the details expand by default in this way, but in the current version this configuration makes the command panel unusable
this.editor = window.monaco.editor.create(this.$el, this.editorOptions, {
        storageService: {
          get() {},
          remove() {},
          getBoolean(key) {
            if (window.activeLanguage && window.activeLanguage == 'java' && key === 'expandSuggestionDocs') {
              return true;
            }
            return false;
          },
          store() {},
          onWillSaveState() {},
          onDidChangeStorage() {}
        }
      }
);

This works for me:
monaco.editor.create(document.getElementById("container"), {
    value: "function hello() {\n\talert('Hello world!');\n}",
    language: "javascript"
}, {
    storageService: {
        get() { },
        remove() { },
        getBoolean(key) {
            return true;
        },
        store() { },
        onWillSaveState() { },
        onDidChangeStorage() { }
    }
});

So it looks like you have a problem with window.activeLanguage

What do you mean? I'm making this change so that the right-click Command Pelette F11 is not available. Now, how do I get my Documention of CompletionItemProvide expanded by default if I don't do that

@y912765390
The snippet I have posted above makes it that the suggestion details are expanded by default:

Yes  .I know.  But if I do this . F1  Command  Palette  will  not  show  。 Try F1 with your change. The same result

Yes  .I know.  But if I do this . F1  Command  Palette  will  not  show  。 Try F1 with your change. The same result

The example from @alexdima works, but as I understand this should come with some drawbacks. Is there a way to just configure this to be always open without configuring anything else?

The example from @alexdima works, but as I understand this should come with some drawbacks. Is there a way to just configure this to be always open without configuring anything else?

@alexdima中的示例有效，但是据我了解，这应该有一些缺点。有没有一种方法可以将其配置为始终打开而不配置其他任何内容？

I know this is fine but it will make the F1 command panel unusable

@alexdima中的示例有效，但是据我了解，这应该有一些缺点。有没有一种方法可以将其配置为始终打开而不配置其他任何内容？

I know this is fine but it will make the F1 command panel unusable

The error in the console is revealing:
VM17 editor.main.js:2248 TypeError: this.storageService.getNumber is not a function

So:
monaco.editor.create(document.getElementById("container"), {
    value: "function hello() {\n\talert('Hello world!');\n}",
    language: "javascript"
}, {
    storageService: {
        get() { },
        remove() { },
        getBoolean(key) {
            return true;
        },
        getNumber(key) {
            return 0;
        },
        store() { },
        onWillSaveState() { },
        onDidChangeStorage() { }
    }
});

The error in the console is revealing:
VM17 editor.main.js:2248 TypeError: this.storageService.getNumber is not a function

So:
monaco.editor.create(document.getElementById("container"), {
    value: "function hello() {\n\talert('Hello world!');\n}",
    language: "javascript"
}, {
    storageService: {
        get() { },
        remove() { },
        getBoolean(key) {
            return true;
        },
        getNumber(key) {
            return 0;
        },
        store() { },
        onWillSaveState() { },
        onDidChangeStorage() { }
    }
});

Thanks @alexdima this works. I was missing remove().
From Stackoverflow:

The storage service is also used for things like remembering most recently used suggestions (to personalize IntelliSense) etc., so if you need that functionality you may want to implement the other functions as well

I didn't notice any difference in functionality for now. Are there any important features one would miss out on by leaving storageService unimplemented?

Thanks @alexdima this works. I was missing remove().
From Stackoverflow:

The storage service is also used for things like remembering most recently used suggestions (to personalize IntelliSense) etc., so if you need that functionality you may want to implement the other functions as well

I didn't notice any difference in functionality for now. Are there any important features one would miss out on by leaving storageService unimplemented?

thank you ver much!The problem was solved

thank you ver much!The problem was solved

@martonlanga Sorry, I cannot answer that because I don't know. You can try searching for IStorageService in the src/vs/editor folder in the vscode repo and see which features use that.

@martonlanga Sorry, I cannot answer that because I don't know. You can try searching for IStorageService in the src/vs/editor folder in the vscode repo and see which features use that.

This is a hack, don't use it for production, but you can get this to work in 0.31.1 this way:
  let editor = monaco.editor.create(container, {value: your_code});
  let {widget} = editor.getContribution('editor.contrib.suggestController');
  if (widget) {
    const suggestWidget = widget.value;
    if (suggestWidget && suggestWidget._setDetailsVisible) {
      // This will default to visible details. But when user switches it off
      // they will remain switched off:
      suggestWidget._setDetailsVisible(true);
    }
    // I also wanted my widget to be shorter by default:
    if (suggestWidget && suggestWidget._persistedSize) {
      suggestWidget._persistedSize.store({width: 200, height: 256});
    }
  }

well done! your code works, and others' above not work any more

@anvaka Is there any way to Resize the Right side part to ?


Support ES Module

I'm exploring the option of using amagaki within an existing project that uses ES Module. Here is an illustration of what the directory structure looks like:
project root
├ package.json (with `"type": "module"`)
├ …
└ website
     ├ package.json (WITHOUT `"type": "module"`)
     ├ amagaki.js
     └  …

The reason the amagaki project is under another project is because the parent project contains both dynamic pages (server-rendered) and static marketing pages, and I wanted to use amagaki as the static site generator for the marketing pages for easy maintenance.
It's currently working but would be nice to have everything under the “website” directory using the same module system.
Let me know if I'm missing something.

I don't think this should be a problem. The amagaki-starter project does assume one TS/Sass stack but Amagaki core can be used within any environment as the static generator.
If "type": "module" is used, can you elaborate on which bit isn't working?

Yeah, right now if I don't place the extra package.json to reset the type, when running npx amagaki serve storefront (storefront is the subdirectory that contains the code for marketing pages), it'll throw this:
/Users/zacky/Code/epos-storefront/node_modules/@amagaki/amagaki/src/index.js:32
    throw up;
    ^

Error [ERR_REQUIRE_ESM]: Must use import to load ES Module: /Users/zacky/Code/epos-storefront/storefront/amagaki.js
require() of ES modules is not supported.
require() of /Users/zacky/Code/epos-storefront/storefront/amagaki.js from<EMAIL_ADDRESS>is an ES module file as it is a .js file whose nearest parent package.json contains "type": "module" which defines all .js files in that package scope as ES modules.
Instead rename amagaki.js to end in .cjs, change the requiring code to use import(), or remove "type": "module" from /Users/zacky/Code/epos-storefront/package.json.

    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1080:13)
    at Module.load (internal/modules/cjs/loader.js:928:32)
    at Function.Module._load (internal/modules/cjs/loader.js:769:14)
    at Module.require (internal/modules/cjs/loader.js:952:19)
    at require (internal/modules/cjs/helpers.js:88:18)
    at new Pod (/Users/zacky/Code/epos-storefront/node_modules/@amagaki/amagaki/src/pod.js:80:39)
    at ServeCommand.run (/Users/zacky/Code/epos-storefront/node_modules/@amagaki/amagaki/src/commands/serve.js:34:21)
    at Command.<anonymous> (/Users/zacky/Code/epos-storefront/node_modules/@amagaki/amagaki/src/index.js:55:9)
    at Command.listener [as _actionHandler] (/Users/zacky/Code/epos-storefront/node_modules/@amagaki/amagaki/node_modules/commander/index.js:922:31)
    at Command._parseCommand (/Users/zacky/Code/epos-storefront/node_modules/@amagaki/amagaki/node_modules/commander/index.js:1503:14) {
  code: 'ERR_REQUIRE_ESM'
}

My amagaki.js looks like this:
export default function(pod) {
  pod.configure({
    metadata: {
      name: 'Amagaki Starter',
    },
    localization: {
      defaultLocale: 'en',
      locales: ['en'],
    },
    staticRoutes: [],
  });
}

Chatted offline, node v10 doesn't require the extra package.json for amagaki to work, but node v14 does require it.

We've made some improvements, namely supporting auto-transpilation of .ts files without tsc as well as some updates to Amagaki's package file that might improve support here.
I added a test for your exact setup, and tested it on Node 14:
https://github.com/blinkk/amagaki/tree/main/tests/modules
I think this should be working now, with the latest version of Amagaki as well as the usage of the amagaki.ts file. Let me know if you're still having issues.


add github action to build

this action will trigger a ci on new PR and on merge

@itye-msft have you seen the work @shajidissa and @mdp0 have done here https://github.com/NDPH-ARTS/trial-config-service/blob/main/.github/workflows/pr-test.yml? The build and tests are happening within Docker.
Should probably stick with one approach. I like the Docker approach, as I can build locally with no prerequisites, but happy to be convinced otherwise!

@itye-msft have you seen the work @shajidissa and @mdp0 have done here https://github.com/NDPH-ARTS/trial-config-service/blob/main/.github/workflows/pr-test.yml? The build and tests are happening within Docker.
Should probably stick with one approach. I like the Docker approach, as I can build locally with no prerequisites, but happy to be convinced otherwise!

I havn't seen it, and it looks good, aside of the the problem, that this yaml file should build all the projects inside the repo...

Hmm. Is each microservice not going to be built independently/have its own pipeline and tests?
Guess could build the entire repo and then take the jar files, but could be building (and testing) lots that's isn't needed.

Hmm. Is each microservice not going to be built independently/have its own pipeline and tests?
Guess could build the entire repo and then take the jar files, but could be building (and testing) lots that's isn't needed.

The CI doesn't know all microservices are placed in the same repo. As far as it cares, there was a change which triggers a CI and now it builds... everything

As discussed, if this is just a placeholder until other pipelines are added then that's fine.
Suggest  a repo wide CI approach is agreed and this removed when resulting pipeline(s) are added.


Size functions in @media

I need to use height(image) in media features, but I can't.
.Page--blank {
	@media screen and (min-height: height(image)) {
		background-size: cover;
	}
}

@media screen and (min-height: height(image)) {
	.Page--blank {
		background-size: cover;
	}
}

I have workaround this with variable, but it not obvious:
$imageHeight: height(image);

.Page--blank {
	@media screen and (min-height: $imageHeight) {
		background-size: cover;
	}
}

@media screen and (min-height: 1200px) {
	.Page--blank {
		background-size: cover;
	}
}

I've added a test case (https://github.com/assetsjs/postcss-assets/commit/e53cb896a7e37035592edea64370fc935215c913) checking media queries support and it is happily succeeding.
Could you give more info about your environment so we can see why this happens to you? The node version, installed packages versions (be sure to check if installed packages are up-to-date with package.json), how the PostCSS is being called.

Oops, excuse me for troubling!
I'm using old 2.1.3. Current version work as expected.
Will double check this next time!


Implement expanded Job Function Roles

User Story
As a: System Administrator
I want: the ability to map specific Kitos administrator roles from FK to employees in my organisation
So that: municipalities can ensure that employees are assigned the correct and specific roles in Kitos, enhancing efficiency and accuracy in role management.
Acceptance Criteria:

The system allows for the automation of role assignments based on job functions.
Administrators can add and customize specific Kitos roles during the hiring process.
The system includes the following roles:
Organisationsadministrator: View and write access at the organizational level.
Systemadministrator: Full system access for configuration and maintenance.
Kontraktadministrator: Manage contracts and data processing.
Lokal Admin: Local administrative access for specific departments or regions.
The system ensures that the correct roles are assigned to new employees automatically based on their job function.

User Story from Kitos perspective
As a: System Administrator
I want: the ability to map specific Kitos administrator roles from FK to employees in my organisation
So that: municipalities can ensure that employees are assigned the correct and specific roles and user rights in Kitos, enhancing efficiency and accuracy in role management.
Municipalities request more roles in FK Administration, so that a user can be assigned the current viewing access to Kitos + WRITE access at administration level.
Acceptance Criteria:

The system allows for the automation of role assignments based on job functions in FK Administration.
Administrators can add and customize specific Kitos administrator roles during the hiring process.
The system ensures that the correct roles are assigned to new employees automatically based on their job function.

The Kitos system includes the following administrator roles:

Organisationsadministrator: View and write access in the Organisation (organizational) module.
Systemadministrator:  View and write access in the system module.
Kontraktadministrator: View and write access in the kontrakt (contract) and databehandler (data processor) module.
Lokal Admin: Highest level for municipalities - view and writing acess to the full system + system settings and user management.

Jira: https://os2web.atlassian.net/browse/KITOSUDV-5176


Proxy auth

Summary
Add basic auth support (username/password) for proxy
Checklist
Delete items not relevant to your PR:

[ X] A human-readable description of the changes was provided to include in CHANGELOG

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Nick Hall seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

Good day, @NDHApps !
Thank you for the contribution! However I should warn you that old client will be deprecated very soon.
Would it be an option for you to migrate to the client-v2? Here is documentation https://clickhouse.com/docs/en/integrations/java/client-v2
Thanks!

Good day, @NDHApps ! Thank you for the contribution! However I should warn you that old client will be deprecated very soon.
Would it be an option for you to migrate to the client-v2? Here is documentation https://clickhouse.com/docs/en/integrations/java/client-v2
Thanks!

Hey @chernser, thanks the the speedy response! This specific change is being used to unblock proxy support for the clickhouse-jdbc driver (I have been manually building it for a personal use for some time now and having to recompile it regularly with every change). I do see now that the V2 client already has a setProxyCredentials method and that there is also a new jdbc-v2 library being built on top of this, which I will look into further. However, I'm not sure if or how soon my legacy application would be able to upgrade to this. Would this pending deprecation preclude contributions to the V1 library for the time being?

@NDHApps I will merge this, no worries.
If you are using jdbc then transition should be easier. We are working on new version that will have a few differences but more compliant to JDBC spec.
Please keep in touch and let us know when you decide to migrate to the new version. Here is Community Slack Channel https://clickhouse.com/slack


Fail to deploy the dist project to the storage account with an error

OS: All
Azure Resource Extension Build Version: 20220505.12 (unified)
Azure Storage Extension Build Version: 20220505.2 (unified)
Regression: Not a regression
Repro Steps:

Make sure the resource groups by Resource Type/Location/ARM Tag.
Create a storage account -> Deploy the dist project to the storage account.
Check whether succeeds to deploy the dist project to the storage account or not.

Expect:
Succeed to deploy the dist project to the storage account.
Actual:
Fail to deploy the dist project to the storage account with an error.

More Info:
There is a $web blob container in the storage account.

More Info:
This issue doesn't reproduce when the resource groups by Resource Group.

This issue also reproduces on the latest main build 20220516.1, the actual behavior shows as below.
Steps:

Create a storage account.
Deploy project to the above storage account.
An error occurs.

Deploy again, the error is the same as this issue.

Verified this issue on build 20220520.3, it does not reproduce.


Does not create a package.json

Hans@HP-HANS C:\Users\Hans\Web\npm\packages\init-test

init
? Name of your project? init-test
? Who maintains the project? HansS
? Do you want me to create a base README.md? Default
? Which license do you want to use? Apache 2.0
? Want me to initialize a git repository? No
Success: Workspace successfully set up! Don't forget to adjust the mising placeholders :)

Hans@HP-HANS C:\Users\Hans\Web\npm\packages\init-test

dir
Datenträger in Laufwerk C: ist Windows
Volumeseriennummer: 3AE6-A1D0

Verzeichnis von C:\Users\Hans\Web\npm\packages\init-test
15.12.2015  17:27              .
15.12.2015  17:27              ..
15.12.2015  17:27               560 LICENSE
15.12.2015  17:27               722 README.md
2 Datei(en),          1'282 Bytes
2 Verzeichnis(se), 267'365'130'240 Bytes frei

The creation of a package.json file is currently not a feature of init.js since I didn't want to limit it to Node projects.

Hi Jonas,thank's for the message
Date: Tue, 15 Dec 2015 11:50:26 -0800
From<EMAIL_ADDRESS>To<EMAIL_ADDRESS>CC<EMAIL_ADDRESS>Subject: Re: [init.js] Does not create a package.json (#8)
The creation of a package.json file is currently not a feature of init.js since I didn't want to limit it to Node projects.
—
Reply to this email directly or view it on GitHub.

@HansS Very welcome :)


ITVR - error logs

Describe the task
If an applicant enters an invalid email when applying, this will cause 422 errors when we ask CHES to send them an email using that email address. In the logs, this will be displayed (most likely multiple times due to retries). The task is to clean up the logged error messages, and document this behaviour.
Purpose
This will make it more clear what's happening to whoever looks at the logs
Acceptance Criteria

[ ] See if we can customize Django Q's way of logging these scenarios, and if so, customize it appropriately.
[ ] Write documentation about this and put it in the README/developer's guide.

Hey team! Please add your planning poker estimate with Zenhub @AlexZorkin @tim738745


[Sema] Allow @_section/@_used in concrete generic context

Allow @_section and @_used to be used in fully constrained extensions.
This aligns with the existing behavior of static properties of generic types. The following is valid:
extension Array where Element == Int {
  static let specificConstant = 41
}

However, adding @_section or @_used to the above property, will result in an error diagnostic.
This change updates the logic of @_section/@_used to allow their use when the generic context is fully concrete.

@swift-ci smoke test

@swift-ci test macOS

@swift-ci smoke test macOS


Why no more updates? Has it been cancelled?

Has youtube center been cancelled?
There has been no updates for a long time now.
Please don't cancel it it is a great script

The developer has been inactive for a few months. There are other (and IMHO, unnecessary) issues stating this same thing. Please close this issue.

Maybe you guys could fork this repo and start to fix things instead to make for the 1000th time the same question (or even, like some people do, try to make merchandising for another extension) ;)

Maybe you guys could fork this repo and start to fix things
People be lazy.

Also, the few people who have the talent to work with such scripts (particularly the author of YouTube+) have stated that they have no interest in maintaining this script as it is.

So guys just leave the repo alone, anyway this could be called dead until @YePpHa  returns, but i think disgusting making advertising of another extension here...

I don't think those who were recommending some other script was 'advertising' it. They were simply helping people by suggesting an alternative since development of YouTube Center seems to be halted.
Not everyone who comes to GitHub to report issue is a geek.


ng2-select2 is not working with this ng2-admin

Hi,
as of now am using ng2-admin as Dashboard for my application it's working well and good..and thanks for it.
but am unable to integrate ng2-select2  for this Admin dashboard. but when i tried with a sample application it's working fine.
just a followed this link ng2-select2

please fins the attached screen shot for a sample application...

when i integrate ng2-select2 am getting dropdown as below screen


Topic insight update

Added example and more context to the Topic insight.

@fvneerden : Thanks for your contribution! The author(s) have been notified to review your proposed change.

Sorry - this should not go into the public repo (azure-docs).


Article data model

Should be similar to zola, eleventy, hugo
Can be used in importing Markdown (.md) files (see #434)

It was merged in some time ago, and the model is live: https://atomicdata.dev/classes/Article


Hosting & Domain

Unam, please tell me the hosting for the panel.  Which one would you recommend?  And which domain zone is better to take?

For domain Unam has recommended https://xuid.ru quite a few times: https://github.com/UnamSanctam/SilentCryptoMiner/issues/831#issuecomment-1152573546, https://github.com/UnamSanctam/UnamWebPanel/issues/177#issuecomment-1206524343, https://github.com/UnamSanctam/UnamWebPanel/issues/250#issuecomment-1483836147.
As for hosting, you will probably have to wait for Unam to answer, however I would recommend self-hosting. In my experience, even services that advertise blackhat usage, like crazyrdp.com, blackholed my IP because I hosted this webpanel on there. Blackholing essentially means that any request made to or from the IP results in nothing happening.

For domain Unam has recommended https://xuid.ru quite a few times: UnamSanctam/SilentCryptoMiner#831 (comment), #177 (comment), #250 (comment).
As for hosting, you will probably have to wait for Unam to answer, however I would recommend self-hosting. In my experience, even services that advertise blackhat usage, like crazyrdp.com, blackholed my IP because I hosted this webpanel on there. Blackholing essentially means that any request made to or from the IP results in nothing happening.

Thanks for the answer.  How to do self-hosting?  This is the first time I've heard about this

Self-hosting means that you host the webpanel yourself, on your own computer, or on a secondary computer. This computer then has to be on 24/7 for the webpanel to be available 24/7. You are going to need to make this server accessible from anywhere in the world, so other users can connect to it. To do that you need to port-forward, however I would never recommend you port-forward your own IP, as this would make it possible for anyone that reverse engineers the miner to catch your IP and find your location. To combat this you need to buy a VPN that offers port-forwarding and dedicated static IP. I have heard good things about https://www.purevpn.com/ and https://www.ovpn.com/.

Fine.  Thank you.


getStorageAt function

Description
Issue #264
Checklist:

[x] I have reviewed my diff in github, line by line.
[x] Every change is related to the PR description.
[x] I have linked this pull request to the issue(s) that it resolves.
[x] There are no unexpected formatting changes, superfluous debug logs, or commented-out code.
[x] The branch has been merged or rebased against the head of its merge target.
[x] I'm happy for the PR to be merged at the reviewer's next convenience.

Tip: if you write "Fixes #264" instead of "Issue #264" in the description, it closes the issue automatically once the PR is merged.


Starting Http listener in VS Test fails with AccessDenied

We have a test which brings up a Owin Selfhost service. The test fails with access denied when running it through the VS Test Task.
Error message
Initialization method VolumeResourceManager.Test.VolumeResourceManagerTest.TestSetup threw exception. System.Net.HttpListenerException: Access is denied.
Stack trace
at System.Net.HttpListener.AddAllPrefixes()
at System.Net.HttpListener.Start()
at Microsoft.Owin.Host.HttpListener.OwinHttpListener.Start(HttpListener listener, Func2 appFunc, IList1 addresses, IDictionary2 capabilities, Func2 loggerFactory)
at Microsoft.Owin.Host.HttpListener.OwinServerFactory.Create(Func2 app, IDictionary2 properties)
https://msazure.visualstudio.com/One/Service Fabric/_build/index?buildId=12478884&_a=summary&tab=ms.vss-test-web.test-result-details
I am guessing this is because the tests are run with lower privilege. I couldn't find an option in VS Test task to run it with higher privilege. Any idea on how to fix this?

You will need to run the automation agent with a higher privilege. There's no plan to enhance the vstest task as a different user.


4.5.x - Prevent sending Authorization header to other than the original host

It's an easy fix and really important (from my perspective) - mainly for security reasons.

May I know why?

@marverix What exactly do you mean? Why the PR was closed? Same reason as #258


lb-only: Document standalone L4LB

Hi, any WIP? Or it's free to take? 🙂

cc @qmonnet who is currently working on it.

Yes I am, I've got something but didn't have time to finish it before the LPC conference. I'll finish and post next week, I can CC you for review/comments when this happens.


Epic: rename old names for ASF brand Compliance

closes: #ISSUE_Number

Change logs
This commit renames "Cloudberry Database" to "Apache Cloudberry" in the documentation and ensures clarity across references.
Contributor's checklist
Here are some reminders before you submit your pull request:

Make sure that your Pull Request has a clear title and commit message. You can take the Git commit template as a reference.
Learn the code contribution and doc contribution guides for better collaboration.
Make sure that your changes deployment preview is successful.
List your communications in the GitHub Issues or Discussions (if has or needed).
Feel free to ask for the cloudberry committers or other people to help review and approve.

Will check the files again before merging them.

In the release notes (both en and zh), the old name "Cloudberry Database" remains unchanged. Is that expected? Besides, you can still get many "Cloudberry Database" search results within this PR branch.

For pre-ASF releases, as they are not Apache releases, we cannot rename
them to Apache Cloudberry. We may consider deleting them after our first
Apache release, but for now, let's keep them unchanged.
As for other occurrences of "Cloudberry Database" outside the docs, I plan
to update them in a separate PR.

There are many references to the following which should be updated throughout:

The old repository name cloudberrydb (in various capitalization forms).
cloudberrydb.org

Done. Thanks for your feedback! Please take a look again.
Note: There are still a lot of old links like https://github.com/cloudberrydb/cloudberrydb-site/blob/cbdb-doc-validation/docs/sql-stmts/release-savepoint.md. This should be replaced with the new redirect links in the documentation and not included in this PR. I have already created the issue - https://github.com/apache/cloudberry-site/issues/215 for tracking.


Test case v17 generates expected error, update needed

Test case 17 generates an expected error and needs updating.
Observable of the form
Molecules Rpattern L(s!2,s!1).R(s!2,s!3).L(s!3,s!4)

is not allowed in NFsim due to dangling edges.

This was fixed, closing the issue.


Empty assets folders

Hello,
I am having a problem with assets folder and files. It creates empty folders.
I checked permission on folder which looks good. Some folder has files and some don't.
Even yii.js and bootstrap.js doesn't get created in the asset.
I tried composer clearcache, composer  dump-autoload and composer  update. Didn't  fix the problem.
I am using Yii 2.0.12 version and PHP 7.0.12 and OS windows
Thanks in advance

We need more info on how to reproduce the issue exactly.

Thanks for reply
I don't really know whats causing it?
I delete all the folders in the assets folder and reload everything still go same error.

http://<IP_ADDRESS>/assets/4d83c3d2/yii.validation.js
According to the response headers, Abyss web server tries to handle requests to assets with PHP:
Status Code:500 Internal Server Error
Server:Abyss/2.11.2-X1-Win32 AbyssLib/2.11.2

Directory http://<IP_ADDRESS>/assets/4d83c3d2/ is empty.
Probably, web server does not have sufficient permissions to write files in it.
The problem is out of Yii scope.

It was composer error. Composer didn't clone all those files in vendor folder.