Troubleshooting random Cannot read keys when either application does not have a console or when console input has been redirected errors

Prerequisites

[X] Write a descriptive title.
[X] Make sure you are able to repro it on the latest released version
[X] Search the existing issues.
[X] Refer to the FAQ.
[X] Refer to Differences between Windows PowerShell 5.1 and PowerShell.

Steps to reproduce
Currently experiencing on PowerShell 7.4.3 on Windows, running inside Windows Terminal, but have also experienced with 7.4.2 and 7.4.1.
It's hard to lock down exactly what causes the issue, but I'm using Windows Terminal (1.20.11381.0) with multiple PowerShell tabs. A lot of the commands I'm running are git or ng or npm related. This is also happening with a co-worker and on a personal machine of mine.
I am importing posh-git (although not on another machine this fails on), Terminal-Icons, and oh-my-posh.
Upon giving the window focus or starting to type, the exception noted in a field below is thrown. I'm unable to proceed with the instance that crashed, but my other tabs and Windows Terminal PowerShell instance are fine.
Expected behavior
PowerShell doesn't randomly crash during the day or there's more information to troubleshoot what's causing the crash.

Actual behavior
When navigating back to a Windows Terminal tab or starting to type in a tab the following will randomly be output:

An error has occurred that was not properly handled. Additional information is shown below. The PowerShell process will exit.
Unhandled exception. System.InvalidOperationException: Cannot read keys when either application does not have a console or when console input has been redirected. Try Console.Read.
   at System.ConsolePal.ReadKey(Boolean intercept)
   at Microsoft.PowerShell.Internal.VirtualTerminal._TryIgnoreIOE[T](Func`1 f)
   at Microsoft.PowerShell.PSConsoleReadLine.ReadOneOrMoreKeys()
   at Microsoft.PowerShell.PSConsoleReadLine.ReadKeyThreadProc()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)

Event Viewer is essentially the same:
Application: pwsh.exe
CoreCLR Version: 8.0.624.26715
.NET Version: 8.0.6
Description: The process was terminated due to an unhandled exception.
Exception Info: System.InvalidOperationException: Cannot read keys when either application does not have a console or when console input has been redirected. Try Console.Read.
   at System.ConsolePal.ReadKey(Boolean intercept)
   at Microsoft.PowerShell.Internal.VirtualTerminal._TryIgnoreIOE[T](Func`1 f)
   at Microsoft.PowerShell.PSConsoleReadLine.ReadOneOrMoreKeys()
   at Microsoft.PowerShell.PSConsoleReadLine.ReadKeyThreadProc()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)

### Error details

_No response_

### Environment data

```powershell
Name                           Value
----                           -----
PSVersion                      7.4.3
PSEdition                      Core
GitCommitId                    7.4.3
OS                             Microsoft Windows 10.0.19045
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

Visuals

Try to unload oh-my-posh.
Are there errors in other terminals?

:( but done. Will see if it triggers a failure in the next few days. Been in use for almost 3 years on work machine, and I don't recall any updates to the module immediately before the crashing started, but ... good call to disable it.
No. No errors, and other terminals are fine.

oh-my-posh disabled, still happened (about 3 minutes ago according to Event Viewer):

Didn't start typing in the window, machine didn't get locked or have a screensaver kick in. Other tabs are still fine.
I suppose I can run it outside Windows Terminal.

At this point too early to tell for sure, but:
On my personal machine I kept the tab open that had crashed (in Windows Terminal) and wasn't experiencing an issue with PowerShell crashing again. Was using the terminal within VS Code as well and it wasn't crashing within there. oh-my-posh was still enabled. Interestingly, it was the first tab in Terminal that crashed. Not 100% that that's been the case for all crashes or not, but definitely was for the majority I can remember.
I tend to use the first tab pretty consistently for git gui and git push commands. Moving my workflow to the second tab might be a good test.
oh-my-posh disabled + running PowerShell outside Windows Terminal = no issues on my work machine today. Will be enabling oh-my-posh and continuing to use PowerShell without Terminal to see if that trend continues.
I was also way slower without multi-tab support, so could be a speed issue. Should be hitting it harder in the next couple of days.

This issue is due to https://github.com/dotnet/runtime/issues/88697. This InvalidOperationException happens when there are multiple processes attached to the same console, both waiting for input, and one dies or is killed. The _TryIgnoreIOE method you see in the stack trace is already a way to mitigate the issue but when it happens too much in a row, the retries will be exhausted and the exception will be thrown out eventually.
The fix to the .NET issue will be available in .NET 9, but I'm not sure if it's already included in the existing .NET 9 previews.

Changing my workflow to use a combination of Terminal and PowerShell seems to have potentially narrowed it down.
If I only run git gui and the majority of my git commands from a non-Terminal PowerShell instance, I'm not experiencing PowerShell randomly crashing in Terminal.
I'll ... and I just saw you posted a comment as I was writing this. So, I guess I have a workaround.

Just in case, this does appear to be linked to using PowerShell inside of Terminal and starting a 'long running' instance of git gui from said Terminal instance.
Just staging commits and committing them, without doing any pushes via the UI, will eventually result in PowerShell crashing.

I'm here because I got exception this running a CLI app in Linux (WSL), over a local network, where it was OK running locally. I switched to running it in Powershell, and it worked. Good enough for me, without getting to the root of it.


input field with arrows for numbers input

Duplicates

[X] I have searched the existing issues

Related page
https://mui.com/joy-ui/react-input/
Kind of issue
Missing information
Issue description
I was looking for
input field with arrows for numbers input

and it appears that
you have this available but didn't include documentation for it.
Context 🔦
https://mui.com/joy-ui/react-input/
scroll down, to css playground section
I want the code for the input with the numbers please.

@ddublon @gzrae @siriwatknp we would like to pick this up

:) thanks

@ddublon You can see the exact implementation of the Joy playground's input here
However it uses <input type="number"> which comes with many usability issues ( we document it here) so it may or may not meet all your needs
Are you using Joy UI in your project?

sorry that it took me time to answer back,

how would you do this input with the arrow with joy ui?

@ddublon Please see this example https://codesandbox.io/s/throbbing-https-htf7x3?file=/Demo.js.
You just need to apply type="number" to the Input:
<Input type="number" />


Response#issuers detects  tag but not <Issuer xmlns="something-here">

My app use devise_saml_authenticatable, which use ruby-saml.
When doing SP initiated logged out (I had to monkey patch to get this to work), my IDP will send back a response, that response contains this:
<Issuer xmlns=\"urn:oasis:names:tc:SAML:2.0:assertion\">http://my-own-url</Issuer>
My app respond to the above response from IDP by some controller method and I have a before_action method that got run before that controller method, which tries to access the current_user method, but by this time the user already signed out so we will reach the Warden authenticate method and reach devise_saml_authenticatable's authenticate method eventually, and we will reach the ruby-saml's issuers method inside Response class eventually.
The issuers method contain this piece of code:
          issuer_response_nodes = REXML::XPath.match(
            document,
            "/p:Response/a:Issuer",
            { "p" => PROTOCOL, "a" => ASSERTION }
          )

          unless issuer_response_nodes.size == 1
            error_msg = "Issuer of the Response not found or multiple."
            raise ValidationError.new(error_msg)
          end

I mentioned above that my IDP return only
<Issuer xmlns=\"urn:oasis:names:tc:SAML:2.0:assertion\">http://my-own-url</Issuer>
to me, but the code above will raise error for my application when I tries to logout: Issuer of the Response not found or multiple.
I guess the reason that this error came out is because REXML::XPath.match didn't pick up <Issuer xmlns=\"urn:oasis:names:tc:SAML:2.0:assertion\">http://my-own-url</Issuer>?
I debug for some time and I think REXML::XPath.match is expecting my IDP to also return this:
<Issuer>http://my-own-url</Issuer>? (The reason that I think this is because that's what my login response contain, and my login response works without error)
I thought about asking my IDP to add <Issuer>http://my-own-url</Issuer> for me, but I think that's the wrong way to go, because
<Issuer>http://my-own-url</Issuer> and <Issuer xmlns=\"urn:oasis:names:tc:SAML:2.0:assertion\">http://my-own-url</Issuer> both provide us info about issuer and the method Response#issuers should accept both format, so I think the right way to go is for ruby-saml to update the code to accept both format: <Issuer> and  <Issuer xmlns=>
Please correct me if I'm wrong

I think I see the problem now.
The reason that I fail for SP initiated logout is because (if my understanding is correct) the devise_saml_authenticatable gem doesn't actually support SP initiated logout and only support IDP initiated logout.
Even though I monkey patch the devise and devise_saml_authenticatable code to make it do SP initiated logout, it still use the devise_saml_authenticatable's parse_saml_response and DefaultIdpEntityIdReader's entity_id method to create OneLogin::RubySaml::Response, but this is the wrong thing to do:
I should have used OneLogin::RubySaml::LogoutResponse instead of OneLogin::RubySaml::Response since I am logging out.
And this is where the problem occur, I am using OneLogin::RubySaml::Response but my actual response from IDP is of LogoutResponse which won't match so it gives error. If I use OneLogin::RubySaml::LogoutResponse then probably it will match and not produce error.
Below is the OneLogin::RubySaml::LogoutResponse code I should have used and reached:
      def issuer
        @issuer ||= begin
          node = REXML::XPath.first(
            document,
            "/p:LogoutResponse/a:Issuer",
            { "p" => PROTOCOL, "a" => ASSERTION }
          )
          Utils.element_text(node)
        end
      end

So I think ruby-saml is working correctly and nothing needs to be changed for ruby-saml.


Shows black screen while cropping on android 8 only

Uploading WhatsApp Video 2022-11-17 at 6.14.57 PM.mp4…

Can you try with a newer Android version?

@dmarcs works fine on new versions, but not on android 8.

android 8 and fewer version having the same issue

@dmarcs are you guys going to resolve this anytime soon?

I wasn't able to reproduce this bug on an emulator using Android 8. I'm not sure why this happens. Maybe the image is too big, and the phone runs out of memory.

@dmarcs try running on a physical device and use your rear camera. it'll reproduce

My physical device has Android 12. It doesn't seem easy to downgrade.


MqttCommunicationTimedOutException

Describe the bug
I have an app in which the MQTT client have to publish several message to the destination MQTT broker.
To handle the message which the client hast to publish I use a Parallel.ForEach, so as I have seen in #738 this could be due the client is not thread safe
Which project is your bug related to?

Client

To Reproduce
Steps to reproduce the behavior:

Using this version of MQTTnet 3.0.5

Expected behavior
Publish the message without error
Additional context / logging
Error en ManageMQTTClient: MQTTnet.Exceptions.MqttCommunicationTimedOutException: Exception of type 'MQTTnet.Exceptions.MqttCommunicationTimedOutException' was thrown.
at MQTTnet.PacketDispatcher.MqttPacketAwaiter`1.WaitOneAsync(TimeSpan timeout)
at MQTTnet.Client.MqttClient.SendAndReceiveAsync[TResponsePacket](MqttBasePacket requestPacket, CancellationToken cancellationToken)
at MQTTnet.Client.MqttClient.PublishExactlyOnceAsync(MqttPublishPacket publishPacket, CancellationToken cancellationToken)
at x.MQTT.ManageMQTTClient(MQTTConfiguration MQTTconfigPublisher, String payload, ILogger`1 logger) in /app/MQTT.cs:line 50

Code example
Parallel.ForEach(receiveMessageResponse.Messages, async message =>
                            {
                                if (!string.IsNullOrEmpty(message.Body))
                                {
                                    try
                                    {
                                        await mqtt.ManageMQTTClient(MQTTconfigPublisher, message.Body,logger);
                                    }
                                    catch (Exception e)
                                    {
                                        parallelExceptions.Enqueue(e);
                                    }
                                }
                           });

        public async Task ManageMQTTClient( MQTTConfiguration MQTTconfigPublisher, string payload, ILogger<Program> logger)
        {
            string topic = "test";
            //string topic = payload.Split(";")[1];
            string cliente =  Guid.NewGuid().ToString();
            try
            {
                IMqttClientOptions optionsPublisher = new MqttClientOptionsBuilder()
                           .WithTcpServer(MQTTconfigPublisher.Servidor)
                            .WithClientId(cliente)
                            .WithCredentials(MQTTconfigPublisher.Username, MQTTconfigPublisher.Password)
                            .WithTls()
                            .WithCleanSession(false)
                            .WithKeepAlivePeriod(System.TimeSpan.FromSeconds(60))
                            .Build();

                IMqttClient mqttClientPublisher = new MqttFactory().CreateMqttClient();

                mqttClientPublisher.UseConnectedHandler(async e =>
                {
                    try
                    {
                        logger.LogInformation("Cliente " + cliente + " conectado del servidor");
                        await mqttClientPublisher.PublishAsync(topic, payload.Split(";")[2], MQTTnet.Protocol.MqttQualityOfServiceLevel.ExactlyOnce);
                    }
                    catch (Exception ex)
                    {
                        throw;
                    }
                });

                mqttClientPublisher.UseDisconnectedHandler(async e =>
                {
                    logger.LogInformation("Cliente " + cliente + " desconectado del servidor. Intentando reconexion al broker: " + MQTTconfigPublisher.Servidor);
                    try
                    {
                        await mqttClientPublisher.ConnectAsync(optionsPublisher);
                        logger.LogInformation("Cliente " + cliente + " reconexion establecida con éxito al broker " + MQTTconfigPublisher.Servidor);
                    }
                    catch (Exception ex)
                    {
                        logger.LogError("Reconexión fallida al topic " + MQTTconfigPublisher.Topic + "  " + ex.Message);
                    }
                });

                await mqttClientPublisher.ConnectAsync(optionsPublisher);
            }
            catch (Exception ex)
            {
                throw;
            }
        }

How should I deal with this problem? Should I use a simple foreach instead of parallel?
Thank you.

For me this looks valid on the first view. You're creating a client everytime you run it in a new task, so I would have expected it to work...


WIP: Emoji reactions backend

This PR adds the following.

A reaction model that consists of a user, a message and an emoji that
are unique together (a user cannot react to a particular message more
than once with the same emoji)
A reaction event that looks like:

    {
        'type': 'reaction',
	'op': 'add',
	'message_id': 3,
	'emoji_name': 'doge',
	'user': {
	    'user_id': 1,
            'email'<EMAIL_ADDRESS>            'full_name': 'King Hamlet'
	}
    }

A new API endpoint, /reactions, that accepts POST requests to add a
reaction to a message
A migration to add the new model to the database
Tests that check that
(a) Invalid requests cannot be made
(b) The reaction event body contains all the info
(c) The reaction event is sent to the appropriate users
(d) Reacting more than once fails

Automated message from Dropbox CLA bot
@arpith, it looks like you've already signed the Dropbox CLA. Thanks!

Thanks @timabbott! I've made the fixes :)

Since this is getting pretty big and didn't have any major problems left, I did some cleanup on this (moving the check_add function to be the view function, to match how every code path other than message/typing notification sending works, removing a duplicate test, etc.) and then merged this as 001847ac5bc08be795a6654f2190a768cb10aa83.  Thanks @arpith!
Still lots to do:

Add delete emoji support
Add this to the serving code path
Consider whether we want to rename the database and/or endpoints to have "emoji" in the name.  E.g. should it be EmojiReaction or Reaction?  I'm OK with merging with these names for now, but I feel like we might actually want to change it for better clarity.
Add the frontend

(Many of which are in progress).


✨ ERC721

https://github.com/transmissions11/solmate/blob/main/src/tokens/ERC721.sol
https://eips.ethereum.org/EIPS/eip-721
Ok, this won't be ERC721A.
It won't have the bells and whistles like _numberMinted(address owner), _totalMinted().
There won't even be totalSupply. That's under ERC721Enumerable.
We leave it up the the devs on whether they want to implement totalSupply.
Hopefully they will pack their variables if possible.
This will be a nearly barebones ERC721.
Use case? Nouns style auctions?
Honestly, I think ERC721A can cover most use cases.
This is for completeness and for the rare use cases where people want to squeeze out extra gas from stuff that don't require bulk minting.
To be in src/tokens/ERC721.sol.
Some functions:
function name() public view virtual returns (string memory); // For people to override.

function symbol() public view virtual returns (string memory); // For people to override.

function tokenURI(uint256 id) public view virtual returns (string memory); // For people to override.

function _getAux(address owner) internal returns (uint224); // Packed with `balance` word.

function _setAux(address owner, uint224 value) internal; // Packed with `balance` word.

function _getExtraData(uint256 id) internal returns (uint96); // Packed with `ownership` word.

function _setExtraData(uint256 id, uint96 value) internal; // Packed with `ownership` word.

// Mint without checking if token has been minted.
// We don't use `unsafe` cuz the word `safe` in mint refers to
// checking if the recipient implements `onERC721Received`.
function _uncheckedMint(address to, uint256 id) internal;

Please use custom mappings.
mstore(0x20, operator)
mstore(0x0c, _IS_APPROVED_FOR_ALL_SLOT_SEED)
mstore(0x00, owner)
let isApprovedForAllSlot := keccak256(0x0c, 0x34)

mstore(0x0c, _BALANCE_SLOT_SEED)
mstore(0x00, owner)
let balanceSlot := keccak256(0x0c, 0x20)

mstore(0x20, _OWNERSHIP_SLOT_SEED)
mstore(0x00, id)
let ownershipSlot := keccak256(0x00, 0x40)

When testing, please make a MockERC721 which brutalizes all upper bits. I cannot over-emphasize this.
Assume that all functions will be called internally, and the variables passed in will have dirty upper bits.
This will be an excellent practice and test of your inline assembly skills and code taste.
If anyone wants to take this up, please let me know. This is to prevent multiple attempters stepping on each other's toes.  Once started, you have 1 week to complete, or it will be assumed that you have dropped the task.

I love it! FWIW I think another good use-case is for situations where you want to cram business logic into the token id.
For example, in the case of ENS, it is nice for the token id to be the uint of the hash of the name so that you get name dupe prevention for free.
Just trying to further motivate the breaking of the non-compete!

Ahh, i'll do it myself.

@RogerPodacter Ok, done, now i need someone to help me check the work.

Amazing! I will poke around! RIP OpenSea! Truly is there any reason to use it now?
Also, question, and please stop me if I'm literally tripping right now, but would it be possible / non-insane to add hitchhiking to the getApproved flow? Given we're storing just the address and it still takes (I think) a full slot?
Even if possible probably not worth it as this feature is seldom used, but I figured I'd throw it out there.

Not worth it imo.


use builtin IMAP functions for copying and moving emails

Lost some emails by doing this lol:
> himalaya  move 1 archive
Error: cannot append message to mailbox archive

Caused by:
    Could not append mail to mailbox

archive is an alias to "Archive".

Himalaya should be able to handle folder aliases here imo, because my gmail folders are super ugly...
Himalaya should probably validate the destination folder before moving the email into nirvana lmao

the destination being an alias doesn't matter. the same thing happens when the folder plainly doesn't exist.

Lost some emails by doing this lol:

Hence the warning on the README The project is under active development. Do not use in production before the v1.0.0. :rofl:

archive is an alias to "Archive".

How did you set up your alias? Could you share your configuration?

Himalaya should probably validate the destination folder before moving the email into nirvana lmao

This for sure, in fact the email should be append first then removed, I guess it is better to have two copies than none :sweat_smile:
Which version do you use?

No worries, nothing of value was lost! Not on my desk right now, but basically:
[ACCOUNT]
folder-alias.archive = „my-ugly-gmail-folder“

this actually works when listing email from the folder. I used the current version in the arch repository.
I can rebuild from master to see if it helps.

I just realize that I did the copy and the move manually (delete then append), whereas there is a copy and a mv function available in the imap crate :facepalm: either they are new commands or I did not see them when I developed this part… I will change this ASAP!

Plus the mv command is safe, which prevents losses:

Because a MOVE applies to a set of messages, it might fail partway through the set.
Regardless of whether the command is successful in moving the entire set, each individual
message will either be moved or unaffected.  The server will leave each message in a state
where it is in at least one of the source or target mailboxes (no message can be lost or
orphaned).  The server will generally not leave any message in both mailboxes (it would be
bad for a partial failure to result in a bunch of duplicate messages).  This is true even
if the server returns with [Error::No].

I also realized that aliases are not resolved for some reason, you just found two horrible bugs :rofl: thank you for pointed this out :+1:

https://github.com/soywod/himalaya/issues/430

Hehe glad I could be of help! Loving himalaya. Finally got an email workflow I am happy with!

Fixed by cb87728, it should available in the next release!


feat: 1.0.0 libraries release (tracking issue)

Broadly:

Include C#/.NET in releases
Bring drivers on par with each other roughly (particularly for PostgreSQL and SQLite, which are extremely divergent codebases)
Ensure more functional and correctness testing
Ensure some basic performance testing

Rust is being explicitly punted on without a contributor.
Hopefully this would be what would be 0.12.0 or 0.13.0 (roughly, Summer 2024)
Bindings

[ ] Release C#/.NET
[ ] https://github.com/apache/arrow-adbc/issues/750
[ ] https://github.com/apache/arrow-adbc/issues/1484
[ ] https://github.com/apache/arrow-adbc/issues/1431
[ ] https://github.com/apache/arrow-adbc/issues/1291
[ ] https://github.com/apache/arrow-adbc/issues/1150
[ ] https://github.com/apache/arrow-adbc/issues/847
[ ] https://github.com/apache/arrow-adbc/issues/624
[ ] https://github.com/apache/arrow-adbc/issues/1105
[ ] https://github.com/apache/arrow-adbc/issues/924

Documentation

[ ] https://github.com/apache/arrow-adbc/issues/1463

Drivers
Arrow Flight SQL

[ ] https://github.com/apache/arrow-adbc/issues/1194
[ ] https://github.com/apache/arrow-adbc/issues/745

JDBC Adapter
PostgreSQL

[ ] https://github.com/apache/arrow-adbc/issues/1483
[ ] https://github.com/apache/arrow-adbc/issues/933

Snowflake

[ ] https://github.com/apache/arrow-adbc/issues/1454
[ ] Performance testing
[ ] Correctness testing
[ ] https://github.com/apache/arrow-adbc/issues/1144
[ ] https://github.com/apache/arrow-adbc/issues/1143
[ ] https://github.com/apache/arrow-adbc/issues/1064
[ ] https://github.com/apache/arrow-adbc/issues/1277

SQLite3

[ ] https://github.com/apache/arrow-adbc/issues/1355

Would updating to Arrow 15 be part of this?

Do we think that this would be with the existing 1.1 specification or should we also consider any items in #8 as targets for a 1.2 spec and 1.0 release?

Would updating to Arrow 15 be part of this?

@jduo this isn't a complete list, I didn't list general maintenance tasks (Arrow 15 I expect to happen for the next release)

Do we think that this would be with the existing 1.1 specification or should we also consider any items in #8 as targets for a 1.2 spec and 1.0 release?

I think it would extend the timeline but if there is interest we should start drafting the proposal.

Would it be reasonable to add handling prepared statements for Postgres to this release?

@judahrand would you mind filing an issue about what's missing so I can link it here? (I know the support is incomplete but it's been a while since I've dug into the implementation)

Ah now I see the other comments you've made

I linked #81 and #855 but if you'd still like to file an issue with more details I can link it here too

Removing https://github.com/apache/arrow-adbc/issues/1143 because it needs upstream support first.

Would Spark and Flink have their own driver? thanks.
I found an open source spark-flight-connector, but it has not update for a long time.
(https://github.com/qwshen/spark-flight-connector)
I saw that Dremio introduced a plugin in 2023, it allow hive/spark to read and write Dremio. I hope Apache Doris can also have this capability.
(https://george-jen.gitbook.io/data-science-and-apache-spark/dremio-data-lake-engine-apache-arrow-flight-connector-with-spark-machine-learning, https://github.com/dremio-hub/dremio-flight-connector)

If people are willing to contribute drivers for Spark/Flink, that may be possible. That will not happen for 1.0.0.

ok, thanks reply.

If people are willing to contribute drivers for Spark/Flink, that may be possible. That will not happen for 1.0.0.

I've added to the discussion on dev@ about versioning given I'd like to put out 1.0.0 releases of some components here (Snowflake, Flight SQL, SQLite) but not everything else (PostgreSQL still needs some work, I believe, and the Java bindings are just too untested). It would mean refactoring the release scripts and the next couple releases would probably take a good deal of manual work, though.

It would be good to iron out the exact scope of what a 1.0.0 would include. I'd like (for instance) to make some breaking changes to some C# APIs to clean them up a bit but I've been putting that off as lower priority. I also want to implement the 1.1 spec. So if 1.0.0 is going to include some of the C# components then I'll need to get to work... .
CC: @davidhcoe

Okay. I'll give breaking up versioning a shot since I don't want to rush you into that work.

I started on this in https://github.com/apache/arrow-adbc/pull/1762 so C# will be 0.12.0. That way we can move to 1.0.0 whenever you feel the API is ready and there's no rush on your side. Testing this out pre-release is going to be a bit of a pain, but that's alright.
@kou you've already seen it but I'll be counting on you for review/よろしくお願いします :pray:

Sure! I'll review #1762 carefully!

While there are still issues listed in the parent, I don't think anything is exactly a blocker. I'd like to kick off the release either at the end of the week or at the start of next week. (5/3-5/6)

@paleolimbot I've currently marked R packages to have a next version number of "0.12.0", but we can make it "1.0.0" if you'd like


The start number of ordered list is not parsed correctly

Describe the bug
When using the following content as initial value, the fourth item will not be starting at 10.
1. asldkfjal;sj
2. asld;kfjad;lsjf
3. asdfl;kjas;dlfjlak;j

10. a;sldkfjalksdf

The rendered content looks like this:

To Reproduce
Use the above content as initial value.
Expected behavior
The expected index in traditional markdown should actually be the 4 because traditional markdown does not separate ordered list no matter how many empty lines are in between.
But the Tiptap supports two adjacent ordered lists to have unconnected numbers because they are treated as two separate nodes rather than just one node. I think it would be good to align with the support of Tiptap or at least provide an option to override that.

Desktop (please complete the following information):
Not related
Smartphone (please complete the following information):
Not related
Additional context
I can help with the PR if you think it is good to support.

Released in 0.8.8. Adjacent ordered list are now rendered like this:
1. foo

1) bar

1. baz

Thank you! This is fast!!


Fix #515.

This PR fixes #515 by locking unit tests within conda test to versions of jupyter_client known to be compatible with jupyter_kernel_test. See jupyter/jupyter_kernel_test#56 for details.
This PR does not change any user-facing requirements, as jupyter_client is only upper-bounded in test environments.

@kuzminrobin: It looks like the macOS build agent lost its connection again, let me restart that.


[Issue]: "An iTunes offer could not be found. Skipping..."

Confirmations

[X] I confirm that I checked the issues tab and couldn't find an existing open issue for the issue I want to report.

OS Type
Windows
Python Version
3.10.5
Package Version
2.3.3
Description
When I try to get the French subtitles for this link: https://tv.apple.com/fr/movie/the-score/umc.cmc.64dyhbdttzmnf1yghg8tbd9lh, isubrip says: "An iTunes offer could not be found. Skipping...".
But the Apple TV page lists French subtitles as available.
Config
[downloads]
folder = "C:\\Users\\Admin\\Desktop\\"
format = "vtt"
languages = ["en-US", "en-GB", "fr-FR","fr"]
zip = false

[subtitles]
fix-rtl = false

check-for-updates = true

Output Log
C:\Users\Admin>isubrip https://tv.apple.com/fr/movie/the-score/umc.cmc.64dyhbdttzmnf1yghg8tbd9lh
Scraping https://tv.apple.com/fr/movie/the-score/umc.cmc.64dyhbdttzmnf1yghg8tbd9lh...
An iTunes offer could not be found. Skipping...

Not a bug. It's not available in the French iTunes store.
If it was on the French store you'd have "Available at iTunes" and a "Show in iTunes" link.
On the French AppleTV page it says "Available at myCanal".
It is available in other European iTunes stores, but not with French subtitles.

Like @insurw said, this is not a bug.
The output of An iTunes offer could not be found. seems to correct here.


sound level rise up and app stacks when opeonig telegram

Disclaimer:
Please go through existing issues to avoid creating duplicates. If you found a similar issue please post a comment there. If you are uncertain your issue is related to others then create the issue. Obvious ignorance of this rule might get you blocked from posting new issues. Please tick the box below to show that you have followed the guideline.

[x] I have checked for a similar issue and sure it hasn't been reported before.

Describe the bug
sound level rise up and app stacks when opening telegram app
Steps to Reproduce
Steps to reproduce the behaviour (feel free to change the placeholder as you need):
1 start eqMac
2 connect external monitor
3 install driver
4 start telegram
after that driver exited and sound level trough extended monitor rising up
Expected behaviour
sound level stay controllable and on same level
Setup information:

Audio device used for playback: dell U2421HE
Audio transmission interface: usb-c with TB 4
macOS Version: [e.g. 10.15]
eqMac Version 1.7.10
\

Haho, please help me with registration. I sent mail I do chat and now I do post here about it. What kind of customer service is? I do buy this app and just two week later my Mac broken.I like to use it what I paid for, but I can't!  I have to wait till somebody able to help with new machine registration. What? This is business, I paid for service but no serving at all. Is it really need to put all screenshot, mailing and trying process post it in google rank?

It seems customer service is not provided with the purchase of the pro app. Time to look for a supported alternative.

Customer service is provided but I get hundreds of messages a day and I can't keep up with the demand at the moment as I'm in a process of moving to a different country.


Handful of additions and changes (messy commit tree)

Removed an unnecessary page
Added information on System V calling convention
Added page about x86 architecture
Added stub for Visual Studio page
Slightly reorganized main page

The commit tree contains a couple of merge commits, which are a bit messy. Squash if you care, rebase otherwise.

Why was the "why cross compile" article removed?
And why did you change "modern OSDev" to "new OSDev". This wiki will focus on modern OSDev (UEFI, Limine, Long Mode), which was one of the issues of the other wiki (which focuses on BIOS, 32-Bit, GRUB Multiboot).

The "why cross compile" article was removed because the tutorial on cross-compiling already had that information.
I changed the name in case you would be receptive to it. You can change it back if you like.


2018-4.17 update

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


⚠ Bofrost.be has degraded performance

In 6c71bcf, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 2663 ms

Resolved: Bofrost.be performance has improved in 87965e1.


You can share database?

You can share database? @AravinthPanch

Unfortunately no.
This project was done 4 years ago and database belongs to the research institution.


Handle CESQL cases when figuring out which EventTypes the Trigger is interested in

In https://github.com/knative-extensions/backstage-plugins/pull/24, the backend only matches the EventTypes with spec.type matches the Trigger's filter.attribute[type]. Trigger's CESQL filter is not supported yet.
This might be the solution: https://github.com/knative-extensions/backstage-plugins/pull/24#pullrequestreview-1864534039

/remove-lifecycle stale


chore: post merge #128

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@5772716). Click here to learn what that means.
The diff coverage is 100%.

@@            Coverage Diff            @@
##             master     #129   +/-   ##
=========================================
  Coverage          ?   94.44%
=========================================
  Files             ?        4
  Lines             ?       36
  Branches          ?        8
=========================================
  Hits              ?       34
  Misses            ?        2
  Partials          ?        0

Impacted Files
Coverage Δ

lib/core/seekExportDefaultLine.js
83.33% <100%> (ø)

Continue to review full report at Codecov.

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


🐛 Fix delay of publishing diagnostics

:tada: This PR is included in version 3.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[Bug] Can not delete vertex labels when use  standalone mode and set server.role=computer

Bug Type (问题类型)
rest-api (结果不合预期)
Before submit

[X] 我已经确认现有的 Issues 与 FAQ 中没有相同 / 重复问题 (I have confirmed and searched that there are no similar problems in the historical issue and documents)

Environment (环境信息)

Server Version: 1.0.0 (Apache Release Version)
Backend: RocksDB x nodes, HDD or SSD
OS: xx CPUs, xx G RAM, Ubuntu 2x.x / CentOS 7.x
Data Size:  xx vertices, xx edges

Expected & Actual behavior (期望与实际表现)
curl -X POST http://localhost:8080/graphs/hugegraph/schema/propertykeys \
-H "Content-Type: application/json" \
-d '
{
    "name": "name",
    "data_type": "TEXT",
    "cardinality": "SINGLE"
}
';

curl -X POST http://localhost:8080/graphs/hugegraph/schema/propertykeys \
-H "Content-Type: application/json" \
-d '
{
    "name": "age",
    "data_type": "INT",
    "cardinality": "SINGLE"
}
';

curl -X POST http://localhost:8080/graphs/hugegraph/schema/vertexlabels \
     -H "Content-Type: application/json" \
     -d '{
    "name": "person",
    "id_strategy": "DEFAULT",
    "properties": [
        "name",
        "age"
    ],
    "primary_keys": [
        "name"
    ],
    "nullable_keys": [],
    "enable_label_index": true
}
';

curl -X DELETE http://localhost:8080/graphs/hugegraph/schema/vertexlabels/person ;

Vertex/Edge example (问题点 / 边数据举例)
curl -X DELETE http://localhost:8080/graphs/hugegraph/schema/vertexlabels/person

return :
Can't schedule task on non-master server

### Schema [VertexLabel, EdgeLabel, IndexLabel] (元数据结构)

_No response_

@dosu how to run KoutApiTest on mac

This is the expected behavior as we designed. Can I know in what scenario you need to do this?


Updates tests for converter idempotency

Description of what I changed

Fixes #1003.
E2E test

TESTED:
Please replace this with a description of how you tested your PR beyond the
automated e2e/unit tests.
Checklist: I completed these to help reviewers :)

[x] I have read and will follow the review process.

[x] I am familiar with Google Style Guides for the language I have coded in.
No? Please take some time and review Java and Python style guides.

[x] My IDE is configured to follow the Google code styles.
No? Unsure? -> configure your IDE.

[x] I have added tests to cover my changes. (If you refactored existing code that was well tested you do not have to add tests)

[x] I ran mvn clean package right before creating this pull request and added all formatting changes to my commit.

[x] All new and existing tests passed.

[x] My pull request is based on the latest changes of the master branch.
No? Unsure? -> execute command git pull --rebase upstream master

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

Project coverage is 51.37%. Comparing base (491e9ca) to head (336b464).

Additional details and impacted files
@@             Coverage Diff              @@
##             master    #1205      +/-   ##
============================================
+ Coverage     51.34%   51.37%   +0.03%
  Complexity      711      711
============================================
  Files            95       95
  Lines          5886     5886
  Branches        781      781
============================================
+ Hits           3022     3024       +2
+ Misses         2578     2576       -2
  Partials        286      286

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


Manual Installation

CocoaPods and Carthage are awesome tools and make our life really easier, but there are some devs who still don't know how to use them.
It would be cool to add the Manual installation guide in your README.md. You can take a look at my iOS Readme Template to see how you can do it.

Strongly suggest that you should use a dependency manager for it.


Fix issue #9 Support ip4 when network device has ip6

IP.To4 returns nil for non-IPv4 addresses. Adds a check that ipnet.IP.To4 != nil to findIP to prevent it returning non-IPv4 addresses. Fixes #9.

Closing this pull request. Getting mattn's pull request updated so that IPv6 works is the better bet.


Demo

Looking at the demo page, why is the first node not connected to the second one, is that by design?
Thanks,
Alex

Fixed display issue and added dateFormat property in v0.2.0.


[test only] Issue 7150 - Templated Constructors Should be Able to Call Other Constructors

http://d.puremagic.com/issues/show_bug.cgi?id=7150

bug 7150 was already fixed in commit 59c5fe5, so this is just adding test case.


Replace Collision Layer/Masks with Collision Groups

The current way of managing what should collides with, works, but when the project start growing it starts to get messy and very unpleasant to work with, and for new users it gets frustrating to understand how it really works.
Groups are great to identify something as a tag like Collisions layers are meant to, and since Collision Groups are alot simplier of Collision Layers/Masks I feel like I need to explain it.
Instead of setting the Layer of the node and the Masks to tell wich layer should collide with, on Collision groups the only thing you need to set is with wich groups should collide this node, if this node is in certain group then it shoud collide, otherwise you could check overlapping (check #14884).
Let’s say on a platformer game you have 5 objects and you add them to certain groups as you would do normally:

Player is on "player" group
Block is on "solids" group
IceBlock is on "solids" "Ice_blocks" groups
InviBlock on "barrier" group
Enemy is on "baddies" and "solids" groups

At this point nothing should colliding with anything, even at the beginning there is no collisions set as default. Since we want the player and enemies to collide with something, we have to set it to collide with any group or groups, e.x:

Player will collide with everything inside "solids" group (Block, IceBlock, Enemy)
Enemy will collide with everything inside "solids" and "barrier" group (Block, IceBlock, Enemy)

In order to set collisions on the UI I suggest replacing the current Layer and Masks checkmarks with something that says “Collide with” with a button on the right that says Edit that pops up something like this:

On script you could set it with something like this_ set_collision_with("solids").
Would be cool if this function had multiple variable support so you can do something like Enemy.set_collision_with(["solids","barrier"]) and set collisions with a single line of code. This way Enemy will collide also with Invisible blocks so enemies won’t enter certain areas where the Player can.
If you want characters to act differently with an IceBlock then you can check with something that already exists: get_collider().is_in_group("ice_blocks") they already are colliding with IceBlocks because IceBlocks are in the “solids” group.
Now, for example, Block is not set to collide with any group, but as long as it exists in the level and its In the "solids" group, then Player and Enemy still have something to collide with, Block can have values in a script so other nodes can get values from the Block when they collide or overlaps with it.
TL;DR:

Bodies will not collide with anything unless you tell them to and with what certain groups will collide, if player is set to collide with a “solids” group, it will collide with all the bodies inside the “solids” group.
Set a body to collide with something by just adding the group name to the list of collision groups on the node inspector or just with set_collision_with("group_name") .

Benefits:

Easy, simple and very customizable.
Easier to recognize in comparison of Layers.
You don’t have to set the Collision Layers and Masks for every PhysicsBody, just set the groups you want the body to collide with.
There is no set/get_layer_bit, instead, you just need to add or remove collision groups

There are times where we reach a point when the physics engine starts to get in our way.
What you guys think? What are flaws of this or the benefits of the current system? Its just an idea based on my experience using various engines and frameworks where they use a similar system.

No, because it's costly to test when having thousands of physics objects, whereas the current approach is just a bit and operation. In Godot 3.0 you can name your layers, so it's more similar to what you are proposing.

it should be the same as the current way, while you can name the layers, its should be just the group name, diferences are, you already set this "layer" when you gave it a group. Instead of setting two values on the inspector for wich layer is this body and with wich layer should collide this body, instead you just set the mask, in this case you set the groups to collide with.
the purpose of this is so you don't have to set the layer for every node since you already gave it a group.

I don't think this is a good idea, you are mixing logic groups with collision groups. If someone wanted, for example, to change the logic group of a node without changing the collision group they would need to create an extra "group" for that exception only that wouldn't be used anywhere else.

@mrcdk I think that's just confusion from using the word "Group", since nothing so far has hinted at these Collision Groups being the same as the node groups we already have.
I don't think this is a bad idea, in the regard that it looks like a clean way to expose the bit masks to the user, as an editor feature rather than changing anything in the backend.
Where currently you use the kind of unintuitive bitmask editor with the 20 little boxes that you can give names (once you find that setting at the bottom of the project settings), instead you pop up a little popupmenu that looks like the picture in the original post, which lets you add your layer masks there. Only instead of titling it "Groups" you title it "Collides with" and "Collides as", or something, with an additional button to edit the collision layer names from the popup itself.
Add a few functions that let you get the exact collision mask of whichever layer names you want and the user can basically use collision layers without ever having to figure out that it's just a bunch of bit flags on the backend.
Something like get_collision_mask("solids", "collectibles"), which would then return the collision mask for those two groups, which can be plugged into direct state access addresses, other nodes' collision masks and what have you.
Whether this is in any way necessary I don't know, but I think it could be a cleaner approach than the current mess of boxes and bits, especially since (and I think I already mentioned this in some other issue), this is so far the only appearance of bitwise operations in the Godot UI anywhere.

@mrcdk What do you mean by changing the logic group of a node? if you mean by deleting a group or changing a group name, you can have multiple groups in a  node, with the example I explained, every PhysicsBody that is in the "solid" group, the enemy and the player will collide with it, if for some reason you´re using the "solid" group for something else too then you gotta be careful with that.

I see this as an UI issue. If there were some interface sugar to abstract this away, it would be interesting. Not to remove the collision layers / mask (not even from the inspector), but just add another interface bit to help you manage them. Similar to the Sprite region editor, it's a sugar interface to avoid setting the values manually, while it's still possible. That said, I don't think the underlying API should change, so doing things from script should remain the same.
I also don't like the idea of nothing colliding by default, that's counter-intuitive and will trip beginners off.

@leoddd I don't think having to add the collision layers names for each node is easier or more intuitive than this:

(it's just a quick example, I may have goofed something 😅 )
At the end of the day, you still need to name the collision layers somehow. I agree that naming the layers is a bit hidden... maybe adding a button in the layer popup to name or rename the layers so the user knows that that's actually a thing.

@vnen This is not just a UI issue, on script is actually a bit messed up, I assume you didn't read but I suggested a new function to determine collisions set_collision_with("solids") or even set_collision_with("solids", "barrier", ...) to set multiple collision groups, to delete them just use something like disable_collision_with("solids") or disable_collision_with("solids", "barrier", ...)
instead of

set_collision_mask( int mask )
set_collision_mask_bit( int bit, bool value )
set_layer_mask( int mask )
set_layer_mask_bit( int bit, bool value )

I think what will trip begginers more is to learn using Collision Layers/Masks. That's just a small detail, because there is no way godot can predict what group you'll put there. But in this way people will learn straight away that they can set what will collide with that, if you want everything to collide with everything just create a group named "solid" and add all the bodies in there.
@mrcdk There you have to add the collision layer AND collision mask, you have to check them true or false, and in order to give them names you need to go into the proyect settins. Instead with groups you already are giving them a name while creating a group on a node so this node is in this group. There, two steps in one.
Then for setting the Masks you just click on Add collision group and it shows a list like this:

where it doens't show you ALL the collision Layers and masks that exist or could exist, instead you add the "layers" or groups name you want it to collide,
The problem is not about naming the layers or hiding the background logic, the problem is all about the bits and setting them true or false on script, and while on the UI you have to put checkmarks on Layers AND Masks.

@aaronmzn I think they realized that that was your original intent, but reduz' comment pretty handily summed up that that is not a thing that will happen.
The current bitwise logic is MUCH faster computation wise than checking an unknown amount of groups for each body, which is a real concern in something that runs as often as the collision checks, which thus needs to be as optimized as possible.
Everyone else's responses are discussing ways to "fake" the UI you were proposing for it, to make it easier to work with bit masks without actually changing how it works (because that is not a thing that's desired).
@mrcdk I'd disagree with that. The current method isn't, like, impossible to work with or anything, but it feels hamfisted, visually looks really ugly compared to everything else in Godot's UI and, again, it's the only time Godot exposes bit masks to the user, meaning a lot of people who have no clue what a bit even is will be REALLY confused about how to calculate the bit mask value in code or what those boxes mean, while a clean UI would alleviate that entirely.
If not a whole new UI system for collision layers specifically (such as the one being discussed here, using a "tag" system that just set bits on the backend), at the very least it should be discussed how to make the current bit editor prettier.
The in-Inspector representation likes to cut through the boundaries of the Inspector and the popup is just a completely unorganized mess of 20 checkboxes with variable space between them thanks to the name labels.

@leoddd I understand the current bitwise logic is much faster and I won't discuss that, But in some way I'm saying if there is an automatic way to asign a bit value to a group (like how variables works) in terms of when they where created and that would let you use functions like set_collision_with("solids", "barrier", ..) or disable_collision_with("solids", "barrier", ...) without affecting the performance then that would be great. it will be more readable in script and you don´t have to take a look in the UI or a list that you make aside to check what bit is what for.
`
But still if the UI gets changed to something close to what I suggested then I thing is good enough.

@aaronmzn but why dont you code your own function, it would be easy to have the behavior you want with the things godot already offer, if you want this in lets say characters, you can create a base class that is kinematic body and then add such function, so now you can have, player, enemies, npcs that inherit that base class with your function available.

@aaronmzn

@vnen This is not just a UI issue, on script is actually a bit messed up, I assume you didn't read but I suggested a new function to determine collisions set_collision_with("solids") or even set_collision_with("solids", "barrier", ...)

Script is not messed up, like always in such cases you should represent your numbers somehow to maintain readability:
set_collision_mask_bit(Constants.LAYER_HERO, true);
set_collision_layer(Constants.LAYER_HERO | LAYER_ENEMIES);

Couldn't the proposed function translate from the existing names to the existing bitmask?
Like, say you can currently name the first layer "hero".
Now, instead of set_collision_mask_bit(0, true) you do set_collision_mask("hero", true) and it translates "hero" to "0" once.
Just a suggestion on the current discussion however, no sure how useful (or not) this would be or how big of a problem the current behaviour is.

Basing on string values in my opinion is very bad idea. In case if you rename collision mask the program will not care much and it will continue to work, with such constants you will have crash and you will be obligated to fix the error. If you want to get values directly from project settings why not do something like this:
for idx in range(20):
		var name = ProjectSettings.get_setting("layer_names/3d_physics/layer_" + str(idx+1));
		LAYER[name] = idx;

and you can use it for example with:
set_collision_mask_bit(Constants.LAYER.YOUR_LAYER_NAME, true);

@djrm @kubecz3k yea I could do that but even if I did it or not, I had to do it on every project, I´m proposing this here so its already implemented in the engine right off the bat so its simplier to work with collisions on UI and on the script even, when you got figured out how collision layer/masks works then there is no problem but tell me how long it took you to learn use it, unless you used unity or blender before, you will have some troubles getting it. People will start to understand how it works when they actually need it in the middle of the project and it will slows down their work figuring things out.
I see it this way, having the term "mask" in there it's confusing, right now masks seems like something different form layers when they are actually the exact same layers with another term, if you want layer 1 to collide with mask 1 you´re actually saying to collide layer 1 with layer 1 so it collides with itself, seems redundant, but when you set a "layer" automatically with a group you don't need to set the layers in the UI, instead you just have to set the layers you want it to collide with (masks) or in this case, add the groups to a list of groups to collide with.

So maybe we should simply have a hint when user hovers over the masks with something like 'what this body will collide with'. What do you think?

@kubecz3k That and the option to name layers should really be way more obvious.

@aaronmzn the concept of mask is just a bitmask and it is quite useful to filter collisions, let say you want just an area that does not report collisions because by itself it doesnt do anything but instead the player uses collision with it to check for behaviors, if the collection system does not give you the ability to set a mask this area will report collisions resulting in unwanted behavior or wasted resources.

sorry, didn't saw the last two messages before sending that last message. I'll answer them here.
@mhilbrunner
Now, instead of set_collision_mask_bit(0, true) you do set_collision_mask("hero", true) and it translates "hero" to "0" once.
Yes that would be a bit better too, but like @kubecz3k said, being dependent on strings values seems like a bad idea, so instead of treating them like string they should be treated more like some global variables that can be accessed from anywhere. Right now Groups are treated as strings too, e.x:
is_in_group("IceBlocks") instead could be is_in_group(iceBlocks) where IceBlock would return an unique ID value or the bit value for the purpose of replacing colision layers, and if you check what groups this node is in, then this should return the names as strings. Same with set_collision_mask(hero, true) where hero returns the bit value.
@djrm there is no diferences with Group Collisions, you could do the same, I based this Group collision in the current system anyway, I understand what masks are, and groups collisions would replace this. If you would change or add this body to a layer, just add this node to a group. If you want this area to check this body then add this group to the collision group in the area node, just make sure player doesn't has this group on the collision group list. It's the same, the only diference is that with Layers/Masks you have to set a layer and a mask and with groups is add the node to a group and add it to a "groups to collide" list. The benefit of this is that you'll me managing group names instead of bit and setting themn to true or false in script.
I didn't propose this hoping everyone would agree. Instead to discuss whether what is the best way to implement something similar or even if it's really worth it or needed. If not, then we can move on but I do think this should and can be improved. Also this is so the main devs have this in mind.

@aaronmzn thats actually not the use case i proposed, i said i dont want the area to detect things, so in your proposed system im not able to do that because if i leave it without a group nothing will collide with it, and i want to check in some other object if it is colliding with the area (that has not group), so there is no easy way to do that without masks. this is not a remote case by any means im using this logic in several places, i think it could also work with your proposal but as i said it will waste resources because collision checking will have to be performed in both objects.
And of course nobody is simply denying your proposal but you have to prove that your method is better and covers all the use cases supported by the current system.

For just grouping a set of layers and masks into some name to be selected without having to remember the combinations, a plugin can be enough.

@djrm you're confusing me now... areas can't collide with anything. if you want a body/area 1 to be detected by a body/area 2, you have to set body/area 1 in a group and then add this group to the collision group list of the area/body 2 in order to detect it, exactly the same with the current system.
If you don't add the collision group or lets say you don't check the mask to true where this body/area 1 is, then for the body/area 2, area/body 1 won't exist, exactly the same with the current system.
if body 1 has no group and body 2 is in a group and you set body 1 to collide with the group body 2 is in then body 1 will collide with body 2. but if body 2 was an area instead then area 2 won't detect body 1 because body 1 has no group to add on the collision group list. Same with Layer/Masks.

Layers = Groups
Masks = Collision Groups (or groups this body will collide/detect)
if body will collide with "solid" groups is the same as, body will collide with the Mask 3
body has layer 0 check, same as, body is in group "player"
body has mask, 1, 2, 3 checked == body is set to collide with "player", "solid", "pancakes" groups.

it will waste resources because collision checking will have to be performed in both objects.

can you explain me that better
@eon-s don't know how to do that

what I prefer doing is having a constants.gd
class COLLISIONS:
	enum COLLISION_GROUPS {
		DEFAULT = int(pow(2,0)),
		GROUND_MAP = int(pow(2,1)),
		DEFAULT_UNITS = int(pow(2,2)),
	}

and then in my unit.gd
I can do stuff like
_ready():
    $StaticBody.collision_layer = (Constants.COLLISIONS.GROUND_MAP & Constants.COLLISIONS.DEFAULT)

just do bitwise logic on named enums. Though I wish there was a way for my secript to sync to the godot 3.0 named layer hints so that I wouldn't have to sync manually.

I'll close this due to lack of support. If you still have a need for this, please open a proposal on the Godot Proposals repository.


Support for beacons

Totally forgot that these used the glass texture. Should probably be made to support translucency as well as a result.

Done


Zendesk Ex -- custom field fix

Remove value from custom field PK

isn't that a bit of a bc break?

Maybe, but the current version is broken.  That value shouldn't be a pk.

https://keboola.slack.com/archives/CQB468K63/p1595930182032800

a imho by to melo jit na status


Quick simplification of Mkerr .pl

as suggested in PR #5275
Ping @levitte  and @richsalz

want me to merge or you?

Feel free to go ahead

@richsalz : this is ready,no ?

It was merged with a699b8e4ca106a1aade0cc741eca63a61d44b90f I just didn't get around to push and closing this. :)


Adding group aggregators to fix many -> one relationships.

Thanks @felder. Is this ready to merge? If you can add some inline comments on why group is necessary, I think that will help with longer term maintenance.

@yuvipanda This is ready for merge.

Thanks, @felder!


Error installing Dalle2-Pytorch- module youtokentome

I am having error while installation. probably due to youtokentome
Collecting dalle2-pytorchdone
  error: subprocess-exited-with-error

  python setup.py egg_info did not run successfully.
  exit code: 1

  [6 lines of output]
  Traceback (most recent call last):
    File "<string>", line 2, in <module>
    File "<pip-setuptools-caller>", line 34, in <module>
    File "C:\Users\saurabh.gayali\AppData\Local\Temp\pip-install-ladp9dcm\youtokentome_7e78bf3ba9904ff7af5d9bbcebde25cf\setup.py", line 5, in <module>
      from Cython.Build import cythonize
  ModuleNotFoundError: No module named 'Cython'
  [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

Encountered error while generating package metadata.

  Using cached dalle2_pytorch-0.6.5-py3-none-any.whl (1.4 MB)
Collecting rotary-embedding-torch
  Using cached rotary_embedding_torch-0.1.5-py3-none-any.whl (4.1 kB)
Collecting resize-right>=0.0.2
  Using cached resize_right-0.0.2-py3-none-any.whl (8.9 kB)
Collecting pydantic
  Using cached pydantic-1.9.1-cp38-cp38-win_amd64.whl (2.1 MB)
Collecting kornia>=0.5.4
  Using cached kornia-0.6.5-py2.py3-none-any.whl (512 kB)
Collecting einops>=0.4
  Downloading einops-0.4.1-py3-none-any.whl (28 kB)
Collecting webdataset>=0.2.5
  Using cached webdataset-0.2.5-py3-none-any.whl (46 kB)
Collecting embedding-reader
  Using cached embedding_reader-1.4.2-py3-none-any.whl (17 kB)
Collecting clip-anytorch
  Using cached clip_anytorch-2.4.0-py3-none-any.whl (1.4 MB)
Collecting torchvision
  Using cached torchvision-0.12.0-cp38-cp38-win_amd64.whl (1.0 MB)
Collecting torchmetrics[image]>=0.8.0
  Downloading torchmetrics-0.9.0-py3-none-any.whl (418 kB)
     -------------------------------------- 418.2/418.2 kB 1.6 MB/s eta 0:00:00
Collecting tqdm
  Using cached tqdm-4.64.0-py2.py3-none-any.whl (78 kB)
Collecting einops-exts>=0.0.3
  Using cached einops_exts-0.0.3-py3-none-any.whl (3.8 kB)
Collecting x-clip>=0.4.4
  Downloading x_clip-0.6.1-py3-none-any.whl (1.4 MB)
     ---------------------------------------- 1.4/1.4 MB 6.7 MB/s eta 0:00:00
Collecting youtokentome
  Using cached youtokentome-1.0.6.tar.gz (86 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'error'

See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

@saurabhgayali hey Saurabh! decided to just make youtokentome optional, as it isn't an essential package yet https://github.com/lucidrains/DALLE2-pytorch/commit/a851168633968219ef88e6fac7a760018ac756f9 hope this helps!


[META] Remote Store flaky tests

Creating a separate issue to differentiate SegRep from remote store flakies. All SR related tests (remote store or n2n) are here - https://github.com/opensearch-project/OpenSearch/issues/8279

[x] https://github.com/opensearch-project/OpenSearch/issues/9408
[x] https://github.com/opensearch-project/OpenSearch/issues/9191
[x] https://github.com/opensearch-project/OpenSearch/issues/9185
[x] https://github.com/opensearch-project/OpenSearch/issues/9294
[x] https://github.com/opensearch-project/OpenSearch/issues/9158
[x] https://github.com/opensearch-project/OpenSearch/issues/7791
[x] https://github.com/opensearch-project/OpenSearch/issues/7128
[x] https://github.com/opensearch-project/OpenSearch/issues/9598
[x] https://github.com/opensearch-project/OpenSearch/issues/9586
[ ] https://github.com/opensearch-project/OpenSearch/issues/9580
[x] https://github.com/opensearch-project/OpenSearch/issues/9116
[x] https://github.com/opensearch-project/OpenSearch/issues/9115
[x] org.opensearch.remotestore.RemoteRestoreSnapshotIT.testRestoreOperationsShallowCopyEnabled
[ ] https://build.ci.opensearch.org/job/gradle-check/22872/testReport/junit/org.opensearch.remotestore/RemoteRestoreSnapshotIT/testRestoreShallowSnapshotRepositoryOverriden/
[ ] https://build.ci.opensearch.org/job/gradle-check/22872/testReport/junit/org.opensearch.remotestore/RemoteRestoreSnapshotIT/testRestoreShallowCopySnapshotWithDifferentRepo/
[ ] org.opensearch.snapshots.CloneSnapshotIT.testCloneAfterRepoShallowSettingDisabled

Not able to reproduce org.opensearch.remotestore.RemoteRestoreSnapshotIT.testRestoreOperationsShallowCopyEnabled on local even after 2700 attempts.


Lint/Format CSS

Is your feature request related to a problem? Please describe.
It would be nice if our CSS had a linter / formatting so it looks uniform. Similar to ESLint for javascript.
Describe the solution you'd like
I'd like to see Prettier being used more heavily across multiple file types and then running ESLint/TSLint for whatever is missing in javascript files.

This is related to https://github.com/ShabadOS/desktop/issues/546 but for RN I don't think there is a need for this here because RN has Stylesheets and that is JSON like and ESLint is able to format this.

I can't really think of any other files besides JS/CSS. So if there is nothing else that can benefit from standardized formatting, we can close this issue.

Also ESLint can make the stylesheet alphabetical and enforce lowercase/uppercase hex codes and such?

Also ESLint can make the stylesheet css props alphabetical and enforce lowercase/uppercase hex codes and such?

I know that it does enforce camelCase for names but don't think it can force alphabetic ordering

eslint-plugin-react-native can require StyleSheet keys to be sorted https://github.com/intellicode/eslint-plugin-react-native/blob/HEAD/docs/rules/sort-styles.md

Should this issue be closed if it's not resolved ?

My bad because I did that because

So if there is nothing else that can benefit from standardized formatting, we can close this issue.

But now I think about it we should rename this to say "Add ESLint rules for stylesheets" so that we add those specific rules can be added either to current ESLint config or maybe when we have custom @ShabadOS/actions config

Should this be in Mobile? Are we looking for JS stylesheet linting?

Should this be in Mobile?

Yes, since the rule mentioned is react-native specific.

Are we looking for JS stylesheet linting?

Yes
Thanks and Regards
Saihajpreet Singh

On Sep 5, 2020, at 7:52 AM, Harjot Singh<EMAIL_ADDRESS>wrote:

Should this be in Mobile? Are we looking for JS stylesheet linting?
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub, or unsubscribe.

https://dev.to/chgldev/getting-prettier-eslint-and-vscode-to-work-together-3678
This is more inline with what we're looking for, but we still need to figure out prettier support for the rest of the files

Closed by #102 and closed by #109.

I don't think this should be closed until Stylesheet is sorted properly. For instance:
const styles = StyleSheet.create( {
  welcomeContent: {
    marginTop: '5%',
    alignItems: 'center',
  },
  welcomeLogo: {
    width: '30%',
    height: 100,
    marginTop: '5%',
    marginBottom: '5%',
  },
  brand: {
    fontSize: 35,
    fontWeight: 'bold',
  },
} )

Should become:
const styles = StyleSheet.create( {
  brand: {
    fontSize: 35,
    fontWeight: 'bold',
  },
  welcomeContent: {
    marginTop: '5%',
    alignItems: 'center',
  },
  welcomeLogo: {
    width: '30%',
    height: 100,
    marginTop: '5%',
    marginBottom: '5%',
  },
} )

Descending order?

On 15 Sep 2020, at 23:21, Bhajneet S.K<EMAIL_ADDRESS>wrote:

I don't think this should be closed until Stylesheet is sorted properly. For instance:
const styles = StyleSheet.create( {
welcomeContent: {
marginTop: '5%',
alignItems: 'center',
},
welcomeLogo: {
width: '30%',
height: 100,
marginTop: '5%',
marginBottom: '5%',
},
brand: {
fontSize: 35,
fontWeight: 'bold',
},
} )
Should become:
const styles = StyleSheet.create( {
brand: {
fontSize: 35,
fontWeight: 'bold',
},
welcomeContent: {
marginTop: '5%',
alignItems: 'center',
},
welcomeLogo: {
width: '30%',
height: 100,
marginTop: '5%',
marginBottom: '5%',
},
} )
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.

https://github.com/Intellicode/eslint-plugin-react-native/blob/master/docs/rules/sort-styles.md enable for only style names and not properties


Cannot see Atom window on Ubuntu after Upgrade

Description
after an upgrade to Ubuntu 18.04, atom won't show up any window (only a frame with a transparent window)
I have NVIDIA Quadro 2100.
I try to uninstall, purge and reinstall both versions (stable and beta) without success, even with --safe mode, I got a transparent screen.
Delete .atom folder doesn't help either.
Workaround
I could run Atom successfully after delete the ~user/.config/Atom folder (without touching ~/.atom folder).

Thanks for the report -

I could run Atom successfully after delete the ~user/.config/Atom folder

Just to clarify, it sounds like the Atom window is showing up now?  I believe this directory is where project saved state is stored on Linux - if deleting this directory helped, then it looks like clearing saved state is what fixed things (you should run Atom as described in the docs instead of manually deleting the directory):
https://flight-manual.atom.io/hacking-atom/sections/debugging/#clearing-saved-state
The debugging guide is mentioned in the issue template, please fill out the issue template for future issues.