Add CryptoWalletFacet and CryptoAddressFacet

Background
For a growing number of investigations, there is a need to represent cryptowallets and the account(s) they contain.
Crypto wallets can be hosted by an online service, or stored in a software wallet application, or  secured using a hardware wallet.
Requirements
Requirement 1: CASE must be able to represent what cryptoaddress(es) were stored in a given cryptowallet.
Requirement 2: CASE must be able to represent how much cryptocurrency was stored in a given cryptoaddress at a point in time.
Requirement 3: CASE must be able to represent multiple measurements of the balance of a crypto wallet.
Benefits

Representing cryptowallets and cryptoaddresses is necessary for various cyber-investigations, including Dark Web activities and cryptocurrency transactions.
(Noted during administrative review) QUDT employs owl:versionIRI, giving CDO a chance to try versionIRI practices under consideration for CASE's and UCO's versioning.

Risks

(Noted during administrative review) Some proposals under draft are considering importing ontologies outside of the UCO/CASE ontologies.  None have been accepted yet.  This proposals includes incorporating QUDT.  (It remains to be reviewed whether this would be adoption of certain provided classes, or importing QUDT.)
(Noted during administrative review) One logistical risk pertaining to usage of QUDT is that its ontology resources only transmit from their namespace IRIs via plaintext HTTP.  TLS fails with a 404 message.  Transmission risks can be mitigated by CASE tracking the QUDT public Github repository as a Git submodule.
(Noted during administrative review) Usage of QUDT for unitary measurements introduces a design a pattern to CASE that is not used elsewhere in UCO-housed concepts.  One concept where unitary measurement could be applied is the UCO property observable:storageCapacityInBytes - that property could reduce its name to storageCapacity and use the unit:BYTE unit of measure.  In short, adoption of this proposal induces a need in CASE to explain why some numeric properties are represented with qudt:unit and others aren't.

Competencies demonstrated
Competency 1
The cryptoaddress(es) that were stored in a given cryptowallet, and how much cryptocurrency they had.
Admin. note - For this proposal, the competencies should include a sample JSON-LD snippet and two SPARQL queries demonstrating satisfaction of the above competency statement, i.e. SELECT ?nCryptoWallet ?xCryptoAddress and SELECT ?nCryptoWallet ?xQuantity, with the latter demonstrating something similar to usage of http://qudt.org/vocab/unit/AUD.  (?x prefix is where the admin. review was unclear on what value(s) or value form(s), node or literal, should be returned.)

Solution summary

Add CryptoWalletFacet with the following properties:

cryptoWalletIdentifier (string): the identifier of a wallet
cryptoWalletName (string): the name assigned to a wallet
cryptoWalletCreatedTime (date): when the wallet was created
cryptoWalletSeed (string): a series of words for accessing crypto associated with the wallet.

Add CryptoAddressFacet with the following properties, using qudt.org ontology to represent currency:

cryptoAddress (string): reference to CryptocurrencyAddress containing the value of the cryptocurrency address
cryptoCurrencyType (string): the type of cryptocurrency in the wallet
cryptoAddressFormat (string): P2SH (BASE58)
cryptoAddressName (string): the name assigned to the cryptocurrency address
cryptoAddressCreatedTime (date): when the cryptocurrency address was created
cryptoAddressBalance (currency - qudt): the total amount of cryptocurrency in the cryptocurrency address
cryptoAddressCompletedTransactionCount (integer): how many transactions have been completed using the cryptocurrency address
cryptoAddressTotalSent (currency - qudt): the total amount of cryptocurrency sent by the cryptocurrency address
cryptoAddressTotalReceived (currency - qudt): the total amount of cryptocurrency received by the cryptocurrency address
cryptoAddressPendingTransactionCount (integer: how many transactions are pending for the cryptocurrency address

Add CryptocurrencyAddress observableObject (subClassOf observable:DigitalAddress)

Create example using public data: Wallet Explorer (https://www.walletexplorer.com/wallet/335f3892f622984f

Add unit test showing potential errors in property usage and how to avoid them

Coordination

Tracking in Jira ticket ONT-478
[ ] Administrative review to be completed

[ ] Development of competency queries is in progress here.

[ ] Requirements to be discussed in Ontology Committee (OC) meeting, date TBD

[ ] Requirements Review vote has not occurred

[ ] Requirements development phase completed.
[ ] Solutions Approval to be discussed in OC meeting, date TBD
[ ] Solutions Approval vote has not occurred

[ ] Solutions development phase completed.
[ ] Implementation has not been merged into develop

[ ] Milestone linked
[ ] Documentation logged in pending release page

It is likely a crypto wallet will have several state-inspections done over the course of an investigation, e.g. to see its balance before some event and after some event.  In QUDT, these would be measurements.  CASE and UCO do not currently have demonstration of repeated measurements.  (observable:Observation has no demonstrations of usage, and further as would help this proposal, no demonstrations of usage on the same object.)
Hence, I've modified Requirement 2, which before read:

CASE must be able to represent how much cryptocurrency was stored in a given cryptoaddress.

to now read:

CASE must be able to represent how much cryptocurrency was stored in a given cryptoaddress at a point in time.

(An aside:  I'd also adjusted the grammar previously to fit a "Must" form.  That did not otherwise alter the meaning.)
I've also added Requirement 3:

CASE must be able to represent multiple measurements of the balance of a crypto wallet.

An example of how QUDT is used to do multiple measurements is in another ontology, the Semantic Sensor Network ontology, under consideration elsewhere in UCO.  See the Apartment 134 temperature example.

This branch and directory houses current development of treating a cryptowallet's balance as a repeatably-measurable property using the SSN, SOSA, and QUDT ontologies.  The development currently needs to represent a link between a wallet and an address, and establish CASE classes and properties that are subclasses and subproperties of the corresponding SOSA classes.

Alex, I may be missing something, but there are a few things that seem a bit off here:

I am not sure if a Wallet Address should have a name, I understand the name at the Wallet level, but not at the address level.
The cryptoWalletSeed should probably be a list/array of strings and not a singular string field.
You mention that CASE must be able to express the balance within a wallet at a given pint in time, on the other hand you express the properties as singular values without multiplicity, or any timestamp associated to the measured fields. Specifically, I would expect all of the following properties to change over time:
cryptoAddressBalance
cryptoAddressCompletedTransactionCount
cryptoAddressTotalSent
cryptoAddressTotalReceived
cryptoAddressPendingTransactionCount

Thanks for the feedback, @dannyr101 .  This was likely an important nudge before people review this for Tuesday's meeting.
Re: the list in 3:
I fully agree with you on the fields you noted.  Those were presented in the original proposal draft as fixed properties on a Facet.  I counter-proposed to @cyberinvestigationexpress that they be measurements, drafted the measurements, but then hadn't gotten to removing their fixed-point values from the Facet.  That usage is now cut from the drafting.ttl and cryptowallet.json file.
Re: 2, seed values:
I'm fine with removing this cardinality.  Do you know of a cryptocurrency that uses more than one seed value?  I assume seed-order matters, but it's helpful to have documentation to cite noting so.
Re: Wallet Address name
I defer to @cyberinvestigationexpress on that one.  Is this the wallet address behaving like an address book contact, where 1 or more remote parties are providing a name?

I believe this proposal will require UCO Issue 535 to be resolved before it can progress.


Adding composable network

This PR adds the Composable network
https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Fcomposable-rpc.dwellir.com#/rpc
Was tested from 2 to 27007 blocks

Spoiler!

For some unknown reason it cannot index the first block.

Task linked: CU-2evtyxg Add Composable network


Issue with object translations

This package is great, but there is a slight issue, when object translation is needed.
E.g. if we need to take for example a whole datepicker localisation in an object, pseudo translator tries to split it and following error occurs:
ERROR Error: Uncaught (in promise): TypeError: value.split is not a function TypeError: value.split is not a function
If you want I could pr the fix, this is really easy one.
Cheers.

Would love for you to submit a PR with a fix. Thanks.


Currently deserves to be framed.

Basically this is based on the "NPC Speech" frame idea.
There's a new toolbar button using the "ui_chat" interface icon, which can be toggled in "Frames settings".

Clicking on it will reveal the Currently frame. Which features a single scrollbox that feeds directly into "CU" (like the profile currently box). Input is sanitzed and version incremented like normal.

There's also a chat command "/trp3 currently" which opens the same chat frame. In case the toolbar is not used or you want to hide the button.

There are three new strings that will require localization.

also do the thing

Yes.


[Bug] Error when scanning the server

Problem behavior
The console was stuck at "Info: Scanning the server." for a while, then crashes entirely outputting:
Could not scan the server. Failed scan tasks had the following errors:
Exception of type 'BDSM.Lib.Exceptions+FTPConnectionException' was thrown.
See the log for full error details.
KKManager seems to work fine. But it is indeed very slow at downloading speed.
Full Log:
[2023-01-12 21:52:06.0734] Info: == Begin BDSM log ==
[2023-01-12 21:52:06.1459] Info: Logger initialized.
[2023-01-12 21:52:06.2926] Info: Scanning the server.
[2023-01-12 21:52:13.6182] [C:\Users\iamtheclaw\source\repos\BDSM\BDSMInternal.cs: 68] Warn: A task was faulted.   at BDSM.Lib.FTPFunctions.GetFilesOnServer(ConcurrentBag1& paths_to_scan, ConcurrentDictionary2& files_found, RepoConnectionInfo repoinfo, CancellationToken ct)
at BDSM.BDSM.<>c__DisplayClass5_0.b__0() in C:\Users\iamtheclaw\source\repos\BDSM\BDSM.cs:line 183
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
[2023-01-12 21:52:13.6182] [C:\Users\iamtheclaw\source\repos\BDSM\BDSMInternal.cs: 68] Warn: A task was faulted.   at BDSM.Lib.FTPFunctions.GetFilesOnServer(ConcurrentBag1& paths_to_scan, ConcurrentDictionary2& files_found, RepoConnectionInfo repoinfo, CancellationToken ct)
at BDSM.BDSM.<>c__DisplayClass5_0.b__0() in C:\Users\iamtheclaw\source\repos\BDSM\BDSM.cs:line 183
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
[2023-01-12 21:56:31.3150] Fatal: Could not scan the server. Failed scan tasks had the following errors:
[2023-01-12 21:56:31.3150] [C:\Users\iamtheclaw\source\repos\BDSM\BDSM.cs: 198] Warn: BDSM.Lib.Exceptions+FTPConnectionException: Exception of type 'BDSM.Lib.Exceptions+FTPConnectionException' was thrown.   at BDSM.Lib.FTPFunctions.GetFilesOnServer(ConcurrentBag1& paths_to_scan, ConcurrentDictionary2& files_found, RepoConnectionInfo repoinfo, CancellationToken ct)
at BDSM.BDSM.<>c__DisplayClass5_0.b__0() in C:\Users\iamtheclaw\source\repos\BDSM\BDSM.cs:line 183
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
[2023-01-12 21:56:31.3244] Off: == End BDSM log ==
[2023-01-12 22:00:02.1228] Info: == Begin BDSM log ==
[2023-01-12 22:00:02.1457] Info: Logger initialized.
[2023-01-12 22:00:02.2649] Info: Scanning the server.
[2023-01-12 22:00:09.4146] [C:\Users\iamtheclaw\source\repos\BDSM\BDSMInternal.cs: 68] Warn: A task was faulted.   at BDSM.Lib.FTPFunctions.GetFilesOnServer(ConcurrentBag1& paths_to_scan, ConcurrentDictionary2& files_found, RepoConnectionInfo repoinfo, CancellationToken ct)
at BDSM.BDSM.<>c__DisplayClass5_0.b__0() in C:\Users\iamtheclaw\source\repos\BDSM\BDSM.cs:line 183
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
[2023-01-12 22:00:09.4755] [C:\Users\iamtheclaw\source\repos\BDSM\BDSMInternal.cs: 68] Warn: A task was faulted.   at BDSM.Lib.FTPFunctions.GetFilesOnServer(ConcurrentBag1& paths_to_scan, ConcurrentDictionary2& files_found, RepoConnectionInfo repoinfo, CancellationToken ct)
at BDSM.BDSM.<>c__DisplayClass5_0.b__0() in C:\Users\iamtheclaw\source\repos\BDSM\BDSM.cs:line 183
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
[2023-01-12 22:00:40.8649] Off: == End BDSM log ==
[2023-01-12 22:02:59.8078] Info: == Begin BDSM log ==
[2023-01-12 22:02:59.8295] Info: Logger initialized.
[2023-01-12 22:02:59.9464] Info: Scanning the server.
[2023-01-12 22:03:07.1053] [C:\Users\iamtheclaw\source\repos\BDSM\BDSMInternal.cs: 68] Warn: A task was faulted.   at BDSM.Lib.FTPFunctions.GetFilesOnServer(ConcurrentBag1& paths_to_scan, ConcurrentDictionary2& files_found, RepoConnectionInfo repoinfo, CancellationToken ct)
at BDSM.BDSM.<>c__DisplayClass5_0.b__0() in C:\Users\iamtheclaw\source\repos\BDSM\BDSM.cs:line 183
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
[2023-01-12 22:03:07.1195] [C:\Users\iamtheclaw\source\repos\BDSM\BDSMInternal.cs: 68] Warn: A task was faulted.   at BDSM.Lib.FTPFunctions.GetFilesOnServer(ConcurrentBag1& paths_to_scan, ConcurrentDictionary2& files_found, RepoConnectionInfo repoinfo, CancellationToken ct)
at BDSM.BDSM.<>c__DisplayClass5_0.b__0() in C:\Users\iamtheclaw\source\repos\BDSM\BDSM.cs:line 183
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
[2023-01-12 22:07:24.0311] Fatal: Could not scan the server. Failed scan tasks had the following errors:
[2023-01-12 22:07:24.0311] [C:\Users\iamtheclaw\source\repos\BDSM\BDSM.cs: 198] Warn: BDSM.Lib.Exceptions+FTPConnectionException: Exception of type 'BDSM.Lib.Exceptions+FTPConnectionException' was thrown.   at BDSM.Lib.FTPFunctions.GetFilesOnServer(ConcurrentBag1& paths_to_scan, ConcurrentDictionary2& files_found, RepoConnectionInfo repoinfo, CancellationToken ct)
at BDSM.BDSM.<>c__DisplayClass5_0.b__0() in C:\Users\iamtheclaw\source\repos\BDSM\BDSM.cs:line 183
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
Expected behavior
No response
Steps to reproduce
No response

I have got exacly the same problem. I then tried the 0.3.4 version and the error kept happening.
Further reverting to the 0.3.3 version solved the issue.
Try it as a workaround for the time being.

I have got exacly the same problem. I then tried the 0.3.4 version and the error kept happening. Further reverting to the 0.3.3 version solved the issue. Try it as a workaround for the time being.

tried downgrading to 0.3.3. it does solved my issues temporarily.

I have got exacly the same problem. I then tried the 0.3.4 version and the error kept happening. Further reverting to the 0.3.3 version solved the issue. Try it as a workaround for the time being.

tried downgrading to 0.3.3. it did solve my issue temporarily. thanks.

0.3.4 is known to have issues. Use 0.3.5 which fixes 0.3.4's problems and see if you are still unable to connect.

0.3.4 is known to have issues. Use 0.3.5 which fixes 0.3.4's problems and see if you are still unable to connect while 0.3.3 works.

I am actually using 0.3.5, the one that had the errors. Reverting to 0.3.3 did actually fix the issue as per @pigwithslippers idea.

Can you provide a debug log from a debug build of 0.3.5?

[2023-01-12 21:52:06.0734] Info: == Begin BDSM log ==
[2023-01-12 21:52:06.1459] Info: Logger initialized.
[2023-01-12 21:52:06.2926] Info: Scanning the server.
[2023-01-12 21:52:13.6182] [C:\Users\iamtheclaw\source\repos\BDSM\BDSMInternal.cs: 68] Warn: A task was faulted.   at BDSM.Lib.FTPFunctions.GetFilesOnServer(ConcurrentBag1& paths_to_scan, ConcurrentDictionary2& files_found, RepoConnectionInfo repoinfo, CancellationToken ct)
at BDSM.BDSM.<>c__DisplayClass5_0.b__0() in C:\Users\iamtheclaw\source\repos\BDSM\BDSM.cs:line 183
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
[2023-01-12 21:52:13.6182] [C:\Users\iamtheclaw\source\repos\BDSM\BDSMInternal.cs: 68] Warn: A task was faulted.   at BDSM.Lib.FTPFunctions.GetFilesOnServer(ConcurrentBag1& paths_to_scan, ConcurrentDictionary2& files_found, RepoConnectionInfo repoinfo, CancellationToken ct)
at BDSM.BDSM.<>c__DisplayClass5_0.b__0() in C:\Users\iamtheclaw\source\repos\BDSM\BDSM.cs:line 183
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
[2023-01-12 21:56:31.3150] Fatal: Could not scan the server. Failed scan tasks had the following errors:
[2023-01-12 21:56:31.3150] [C:\Users\iamtheclaw\source\repos\BDSM\BDSM.cs: 198] Warn: BDSM.Lib.Exceptions+FTPConnectionException: Exception of type 'BDSM.Lib.Exceptions+FTPConnectionException' was thrown.   at BDSM.Lib.FTPFunctions.GetFilesOnServer(ConcurrentBag1& paths_to_scan, ConcurrentDictionary2& files_found, RepoConnectionInfo repoinfo, CancellationToken ct)
at BDSM.BDSM.<>c__DisplayClass5_0.b__0() in C:\Users\iamtheclaw\source\repos\BDSM\BDSM.cs:line 183
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
[2023-01-12 21:56:31.3244] Off: == End BDSM log ==

No, a debug log. If you download and run a debug build from the releases page, it will produce a file named BDSM.debug.log with a ton of messages.
Also, does it fail right away or does it take some time?

No, a debug log. If you download and run a debug build from the releases page, it will produce a file named BDSM.debug.log with a ton of messages.
Also, does it fail right away or does it take some time?

yes. i was wrong. i ran the non-debug build. now this one is correct. it doesn't fail right away. it takes a bit of a time. 2-5 mins. here it is
[2023-01-13 04:33:05.5950] [BDSM.cs: line 53] Info: == Begin BDSM log ==
[2023-01-13 04:33:05.6175] [BDSM.cs: line 54] Debug: == Begin BDSM debug log ==
[2023-01-13 04:33:05.6175] [BDSM.cs: line 55] Info: Logger initialized.
[2023-01-13 04:33:05.6693] [Configuration.cs: line 167] Debug: Validating user configuration
[2023-01-13 04:33:05.6693] [Configuration.cs: line 173] Debug: User configuration was verified.
[2023-01-13 04:33:05.7437] [LoggingConfiguration.cs: line 63] Info: Scanning the server.
[2023-01-13 04:33:05.7505] [FTPFunctions.cs: line 31] Debug: TryConnect hit with 0 retries.
[2023-01-13 04:33:05.7505] [FTPFunctions.cs: line 31] Debug: TryConnect hit with 0 retries.
[2023-01-13 04:33:05.7505] [FTPFunctions.cs: line 31] Debug: TryConnect hit with 0 retries.
[2023-01-13 04:33:05.7505] [FTPFunctions.cs: line 31] Debug: TryConnect hit with 0 retries.
[2023-01-13 04:33:05.7505] [FTPFunctions.cs: line 31] Debug: TryConnect hit with 0 retries.
[2023-01-13 04:33:07.5470] [FTPFunctions.cs: line 31] Debug: TryConnect hit with 1 retries.
[2023-01-13 04:33:07.5630] [FTPFunctions.cs: line 31] Debug: TryConnect hit with 1 retries.
[2023-01-13 04:33:08.3490] [FTPFunctions.cs: line 36] Debug: An FTP connection was successful
[2023-01-13 04:33:08.3490] [FTPFunctions.cs: line 36] Debug: An FTP connection was successful
[2023-01-13 04:33:08.3568] [FTPFunctions.cs: line 36] Debug: An FTP connection was successful
[2023-01-13 04:33:09.3446] [FTPFunctions.cs: line 31] Debug: TryConnect hit with 2 retries.
[2023-01-13 04:33:09.3606] [FTPFunctions.cs: line 31] Debug: TryConnect hit with 2 retries.
[2023-01-13 04:33:11.1530] [FTPFunctions.cs: line 31] Debug: TryConnect hit with 3 retries.
[2023-01-13 04:33:11.1680] [FTPFunctions.cs: line 31] Debug: TryConnect hit with 3 retries.
[2023-01-13 04:33:12.9495] [FTPFunctions.cs: line 61] Debug: Failed to establish an FTP connection.
[2023-01-13 04:33:12.9654] [FTPFunctions.cs: line 61] Debug: Failed to establish an FTP connection.
[2023-01-13 04:33:13.2093] [BDSMInternal.cs: line 68] Warn: A task was faulted.   at BDSM.Lib.FTPFunctions.GetFilesOnServer(ConcurrentBag1& paths_to_scan, ConcurrentDictionary2& files_found, RepoConnectionInfo repoinfo, CancellationToken ct) in C:\Users\iamtheclaw\source\repos\BDSM\BDSM.Lib\FTPFunctions.cs:line 78
at BDSM.BDSM.<>c__DisplayClass5_0.b__0() in C:\Users\iamtheclaw\source\repos\BDSM\BDSM.cs:line 183
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
[2023-01-13 04:33:13.2247] [BDSMInternal.cs: line 68] Warn: A task was faulted.   at BDSM.Lib.FTPFunctions.GetFilesOnServer(ConcurrentBag1& paths_to_scan, ConcurrentDictionary2& files_found, RepoConnectionInfo repoinfo, CancellationToken ct) in C:\Users\iamtheclaw\source\repos\BDSM\BDSM.Lib\FTPFunctions.cs:line 78
at BDSM.BDSM.<>c__DisplayClass5_0.b__0() in C:\Users\iamtheclaw\source\repos\BDSM\BDSM.cs:line 183
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
[2023-01-13 04:37:31.0073] [LoggingConfiguration.cs: line 63] Fatal: Could not scan the server. Failed scan tasks had the following errors:
[2023-01-13 04:37:31.0073] [BDSM.cs: line 198] Warn: BDSM.Lib.Exceptions+FTPConnectionException: Exception of type 'BDSM.Lib.Exceptions+FTPConnectionException' was thrown.   at BDSM.Lib.FTPFunctions.GetFilesOnServer(ConcurrentBag1& paths_to_scan, ConcurrentDictionary2& files_found, RepoConnectionInfo repoinfo, CancellationToken ct) in C:\Users\iamtheclaw\source\repos\BDSM\BDSM.Lib\FTPFunctions.cs:line 78
at BDSM.BDSM.<>c__DisplayClass5_0.b__0() in C:\Users\iamtheclaw\source\repos\BDSM\BDSM.cs:line 183
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)

This seems to be triggered when there is an open connection to the server elsewhere and a task aborts because there are too many connections or if there is just some other temporary problem. The issue was that the logic for handling this got messed up - if the first task it looked at was faulted, it treated the entire operation as faulted even if it was able to finish.
A new release with the fix will be up shortly.

The release is out, but I won't announce it unless the issue has truly been resolved for you.
https://github.com/RobotsOnDrugs/BDSM/releases/tag/v0.3.6

The release is out, but I won't announce it unless the issue has truly been resolved for you. https://github.com/RobotsOnDrugs/BDSM/releases/tag/v0.3.6

The new release fixed it. Thanks.


[BUG] FileNotFoundError: [Errno 2] No such file or directory: '/root/.local/share/undetected_chromedriver/undetected_chromedriver'

Before submitting a bug report...

[X] This bug wasn't already reported.
(I have checked every bug report on GitHub)

Title

[X] The title is no longer "[BUG] Title" and I edited it with the right error name.

Describe the bug
I used the Docker mirror based on Python: 3.10-Alpine, running the required dependencies, installed
apk add-no-cache
chromium
chromium-chromedriver
XVFB \
udev \
TTF-freefont
fontconfig
APK add-no-cache musl-dev
, But execute python3 autopdate_main.py
Elberry FilenotFounderror: [Errno 2] No Such File or Directory: '/root/.Local/share/undetect_Chromedriver/UndeTected_Chromedriver'
I am convinced that this file already exists

Copy and paste your error
root@QingLong:/ql/scripts/Microsoft-Rewards-Farmer-master $ python3 autoupdate_main.py
Starting...
2023-08-17 20:11:16,522 [INFO]<EMAIL_ADDRESS>2023-08-17 20:11:17,635 [INFO] Using default request storage
2023-08-17 20:11:17,644 [INFO] Created proxy listening on <IP_ADDRESS>:39143
2023-08-17 20:11:17,645 [INFO] Using undetected_chromedriver
2023-08-17 20:11:19,192 [INFO] patching driver executable /root/.local/share/undetected_chromedriver/undetected_chromedriver
2023-08-17 20:11:19,230 [ERROR] FileNotFoundError: [Errno 2] No such file or directory: '/root/.local/share/undetected_chromedriver/undetected_chromedriver'
Traceback (most recent call last):
File "/ql/scripts/Microsoft-Rewards-Farmer-master/main.py", line 24, in main
executeBot(currentAccount, notifier, args)
File "/ql/scripts/Microsoft-Rewards-Farmer-master/main.py", line 127, in executeBot
with Browser(mobile=False, account=currentAccount, args=args) as desktopBrowser:
File "/ql/scripts/Microsoft-Rewards-Farmer-master/src/browser.py", line 41, in init
self.webdriver = self.browserSetup()
File "/ql/scripts/Microsoft-Rewards-Farmer-master/src/browser.py", line 77, in browserSetup
driver = webdriver.Chrome(
File "/usr/local/lib/python3.10/site-packages/seleniumwire/undetected_chromedriver/webdriver.py", line 61, in init
super().init(*args, **kwargs)
File "/ql/scripts/Microsoft-Rewards-Farmer-master/src/undetected-chromedriver/undetected_chromedriver/init.py", line 466, in init
super(Chrome, self).init(
File "/usr/local/lib/python3.10/site-packages/selenium/webdriver/chrome/webdriver.py", line 45, in init
super().init(
File "/usr/local/lib/python3.10/site-packages/selenium/webdriver/chromium/webdriver.py", line 53, in init
self.service.start()
File "/usr/local/lib/python3.10/site-packages/selenium/webdriver/common/service.py", line 105, in start
self._start_process(self._path)
File "/usr/local/lib/python3.10/site-packages/selenium/webdriver/common/service.py", line 206, in _start_process
self.process = subprocess.Popen(
File "/usr/local/lib/python3.10/subprocess.py", line 971, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/local/lib/python3.10/subprocess.py", line 1863, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: '/root/.local/share/undetected_chromedriver/undetected_chromedriver'
2023-08-17 20:11:19,237 [INFO]<EMAIL_ADDRESS>2023-08-17 20:11:20,011 [INFO] Using default request storage
2023-08-17 20:11:20,017 [INFO] Created proxy listening on <IP_ADDRESS>:33789
2023-08-17 20:11:20,018 [INFO] Using undetected_chromedriver
2023-08-17 20:11:21,472 [INFO] patching driver executable /root/.local/share/undetected_chromedriver/undetected_chromedriver
2023-08-17 20:11:21,502 [ERROR] FileNotFoundError: [Errno 2] No such file or directory: '/root/.local/share/undetected_chromedriver/undetected_chromedriver'
Traceback (most recent call last):
File "/ql/scripts/Microsoft-Rewards-Farmer-master/main.py", line 24, in main
executeBot(currentAccount, notifier, args)
File "/ql/scripts/Microsoft-Rewards-Farmer-master/main.py", line 127, in executeBot
with Browser(mobile=False, account=currentAccount, args=args) as desktopBrowser:
File "/ql/scripts/Microsoft-Rewards-Farmer-master/src/browser.py", line 41, in init
self.webdriver = self.browserSetup()
File "/ql/scripts/Microsoft-Rewards-Farmer-master/src/browser.py", line 77, in browserSetup
driver = webdriver.Chrome(
File "/usr/local/lib/python3.10/site-packages/seleniumwire/undetected_chromedriver/webdriver.py", line 61, in init
super().init(*args, **kwargs)
File "/ql/scripts/Microsoft-Rewards-Farmer-master/src/undetected-chromedriver/undetected_chromedriver/init.py", line 466, in init
super(Chrome, self).init(
File "/usr/local/lib/python3.10/site-packages/selenium/webdriver/chrome/webdriver.py", line 45, in init
super().init(
File "/usr/local/lib/python3.10/site-packages/selenium/webdriver/chromium/webdriver.py", line 53, in init
self.service.start()
File "/usr/local/lib/python3.10/site-packages/selenium/webdriver/common/service.py", line 105, in start
self._start_process(self._path)
File "/usr/local/lib/python3.10/site-packages/selenium/webdriver/common/service.py", line 206, in _start_process
self.process = subprocess.Popen(
File "/usr/local/lib/python3.10/subprocess.py", line 971, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/local/lib/python3.10/subprocess.py", line 1863, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: '/root/.local/share/undetected_chromedriver/undetected_chromedriver'
Screenshots

Value of dashboard variable
none

I think you have issues with your permissions on this folder, the program might not be able to access to it so.


Remove DesktopUI code

DesktopUI was flagged as obsolete, but we never got around to get rid of it.

Closing as tracked in #1770


Minor code improvements

String buffer replacement commit is going back, stringBuffer is far better for memory and execution time. I think that commit should be removed

Same happen with diamond interface, no improvement there, just code ofuscation and hidden problems

What IntellJ/AndroidStudio says about my StringBuffer replacements:

Using a String concatenation makes the code shorter and simpler. This inspection only reports when the resulting concatenation is at least as efficient or more efficient than the original StringBuffer or StringBuilder use.

In my opinion using the diamond interface makes the code easier to read. What kind of hidden problems do you mean @crispi7 ?

What IntellJ/AndroidStudio says about my StringBuffer replacements:

Using a String concatenation makes the code shorter and simpler. This inspection only reports when the resulting concatenation is at least as efficient or more efficient than the original StringBuffer or StringBuilder use.

In my opinion using the diamond interface makes the code easier to read. What kind of hidden problems do you mean @crispi7 ?
Diamond interface make code simpler to read, but devs can not see compiler problems. So using diamond interface will make us see problems on runtime

@crispi7 on runtime there is no difference because of type erasure.
Let's wait to hear from @hzsweers or @fadils what they think

@crispi7 on runtime there is no difference because of type erasure.
Let's wait to hear from @hzsweers or @fadils what they think
Yes, but devs can not see compiler problems, you will face problems on Runtime!!!

Diamond interface make code simpler to read, but devs can not see compiler problems.

@crispi7 what exactly do you mean here? I can't think of any instances where an issue would only present itself at runtime.

stringBuffer is far better for memory and execution time

Actually the efficiency difference between StringBuffer and StringBuilder is minimal, with StringBuilder being a little more efficient. The only time StringBuffer should be used over StringBuilder or String is in multithreaded situations.

Devs should never use Diamond interfaces.
For example:
Map mSomething = new HashMap<integer, integer>();
// Suppose there is lots of stuff in middle but the map is the same object
Integer number = (Integer)mSomething.get(5);
In this case you will have a warning, but no problem
Now if u make this complicated, return the map from a method and try to cast you can find a very good exception if the map was initialized this way:
Return new HashMap<Integer, String>();
BUT, if u don't use diamond interface, everything will be better and compiler will make sure you never have casting problems.

Diamond operators are syntactic sugar that allows the right hand side of the assignment to be defined as a true generic instance with the same type parameters as the left side without having to type those parameters again. It allows you to keep the safety of generics with almost the same effort as using the raw type. It's a convenience, not a functional change. The compiler would only complain if you tried to specify a different type in the right hand side, and that's true both with or without diamonds.
Trying to decipher your comment, it seems you're implying that parameterized types shouldn't be used at all. The warnings you mention in your example would be raw type warnings. Raw types in Java effectively only exist for compatibility with pre-generics code and should never be used in new code unless you absolutely have to. This project is built against Java 7, which means we don't have to. If you really believe that programmers shouldn't be using parameterized types, then you're free to take this up with the Java developers at Oracle. They're a modern convention and have been since the introduction of generics.

@crispi7 You are not even using generics. Let me provide all 3 possible forms for your example:
no generics (java 1.1 to 1.4):
Map mSomething = new HashMap();
// Suppose there is lots of stuff in middle but the map is the same object
Integer number = (Integer)mSomething.get(5);

In this case you will have a warning about an unchecked cast. I don't want you to use this form.
generics whithout diamond (java 1.5 to 1.6)
Map<Integer> mSomething = new HashMap<Integer>();
// Suppose there is lots of stuff in middle but the map is the same object
Integer number = mSomething.get(5);

generics whith diamond (java since 1.7)
Map<Integer> mSomething = new HashMap<>();
// At this point the compiler can infer that the type argument for the Constructor
// has to be 'Integer' so we don't have to write it a second time
// Suppose there is lots of stuff in middle but the map is the same object
Integer number = mSomething.get(5);

in the both last cases you will have generics and the compiler can and will check your type casts.


Modernization

This brings everything up to the latest dependencies and ember-cli blueprint recommendations.
Open Questions:

Is it correct to remove bower?
Should we test against even older Ember versions?

Is it correct to remove bower?

I think this is fine

Should we test against even older Ember versions?

Going back to 2.12 seems like a reasonable level of coverage to me!

This look great!
@stefanpenner can we get a new release with this?

@stefanpenner is there still a desire to support Node 4?

we can drop node 4, it will just require a major version bump.


Introduce support for validators

If the processor framework permits it, use a method from the enum to get a validator for the property (in the form of a java.util.function.Predicate<String> at the moment)

Well, actually... Null value is not skipped...


fix: Persist Orchestrator Model settings in appsettings

Description
Persist the model name in appsettings.json, which would look like this:
  "orchestrator": {
    "model": {
      "en_intent": "pretrained.20210521.microsoft.dte.01.06.int.en.onnx",
      "multilingual_intent": "pretrained.20210608.microsoft.dte.01.06.int.unicoder_multilingual.onnx"
    }
  },

These settings are only written when orchestrator is used for the first time.  The default model names  will be picked by checking against the Orchestrator models API.  The user can later alter these models by changing the model name in appsettings and the bot will use the new model.  If an invalid model is chosen, the bot will fail to start with a warning that the model is invalid.
Task Item
closes #7946

Coverage decreased (-0.02%) to 54.634% when pulling 5c104c180d505dbbfb989af777fdfae27a7203d2 on tachou/persistOrchSettings into 20886706dc34d61dcf271aa9f380ac92ef7feec4 on main.


Shortcuts don't work after zooming in/out

Test device
MacBook Air M1 chip
Operating System
13.3.1
Browser
Safari/chrome
Problem description
For https://github.com/phetsims/qa/issues/926, if I had zoomed in at any time while playing with the sim, the shortcuts: Opt + C, Opt + R, and Opt + shift + R will no longer work. This happens even if I am no longer zoomed in.
Steps to reproduce

Turn on Voicing
Press command + + to zoom in
Press command + 0 to return to default view
Move a side or corner
Press any of these shortcuts: Opt + C, Opt + R, or Opt + shift + R

Troubleshooting information:
!!!!! DO NOT EDIT !!!!!
Name: Quadrilateral
URL: https://phet-dev.colorado.edu/html/quadrilateral/1.0.0-rc.2/phet/quadrilateral_all_phet.html
Version: 1.0.0-rc.2 2023-04-04 16:04:39 UTC
Features missing: applicationcache, applicationcache, touch
Flags: pixelRatioScaling
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36
Language: en-US
Window: 1472x775
Pixel Ratio: 1.7999999523162842/1
WebGL: WebGL 1.0 (OpenGL ES 2.0 Chromium)
GLSL: WebGL GLSL ES 1.0 (OpenGL ES GLSL ES 1.0 Chromium)
Vendor: WebKit (WebKit WebGL)
Vertex: attribs: 16 varying: 31 uniform: 1024
Texture: size: 16384 imageUnits: 16 (vertex: 16, combined: 32)
Max viewport: 16384x16384
OES_texture_float: true
Dependencies JSON: {}

Would it be reasonable to use something other than meta/cmd?  Or only use meta/cmd with other keys where keyup is unimportant?

Thanks for checking this out!
I don't think so. The meta keys are most conventional for zoom in/zoom out behavior. It will be less accessible if PhET/scenery uses custom commands for those gestures.
Scenery keeps track of key state so that we know what keys are down and for how long (there is no native DOM support for tracking combinations of keys pressed or press and hold behavior). For the key state to be correct we need a key down/key up event pair for every pressed key.

This issue may have been made more noticeable after changes around 9/22 when we moved alt input event capturing to the window. Before then, the key state should only become incorrect when focus is inside of the simulation DOM. I was wondering if this was helpful for maintenance releases. But we might want to MR all alt-input sims when this is fixed.

@jessegreenberg said:

... But we might want to MR all alt-input sims when this is fixed.

Geometric Optics is an alt input sim, and we're about to start QA - see https://github.com/phetsims/geometric-optics/issues/278.  Can we assume that it's OK to proceed with this as a known problem, to be fixed by a future MR?

Yes, Ill do a MR for this when it is done.

Im seeing another odd behavior on macOS to be aware of in how this is fixed. If both meta keys are down at the same time, macOS Safari incorrectly dispatches a DOWN event for the first meta key that is released.

Press (and hold) left meta key -> receive MetaLeft down event
Press (and hold) right meta key -> receive MetaRight down event
Release left meta key -> receive MetaLeft down event (??????)
Release right meat key -> receive MetaRight up event

I pushed the suggested workaround in https://github.com/phetsims/scenery/commit/9375f1c84c7c59ad7055141bc20eaade64637ca4 and it seems to fix the problem. It has the drawbacks listed in https://github.com/phetsims/scenery/issues/1555#issuecomment-1528185141, but I think that is the best I can do without getting all of the relevant input information. I couldn't think of a way this could break anything.
Before proceeding with maintenance releases and cherry-picking into quadrilateral I requested a regression test in https://github.com/phetsims/qa/issues/941.

In https://github.com/phetsims/qa/issues/941 @Nancy-Salpepi noticed that this fix is not working in FF.  It turns out that FF uses a different code for the meta keys than other browsers. For now we should include the FF specific keys in this workaround. But in general we keep running into reasons why we should be using event.key instead of event.code.

This looks good in rc.3.

Great, thanks @Nancy-Salpepi. I'll leave this one open for the maintenance release of other sims after https://github.com/phetsims/qa/issues/941

OK, https://github.com/phetsims/qa/issues/941 is cleared so we can start a batch of maintenance releases for this issue.

This is fixed and the batch MR for this is complete. Closing.


Alert if features are not URIEncode-able

Issue
Creating vector tiles from geojson with properties that are not Unicode works.  However, the data is not available for
Replicate
Create a geojson feature with a non-Unicode value in properties.
{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "properties": {
        "name": "è\"//\\"
      },
      "geometry": {
        "type": "Polygon",
        "coordinates": [[[20.214843749999996,
              54.87660665410869],
            [4.74609375,
              46.800059446787316],[16.34765625,
              36.87962060502676],[35.33203125,
              48.69096039092549],[20.214843749999996,
              54.87660665410869]]]}}]}

Create a Vector Tile from Tippecanoe with the feature
Upload the feature to Mapbox.
Add the vector tile to a Map Style in Studio.  Get the following error:

Expected Behavior
Tippecanoe warns or encodes non-Unicode characters.

Thanks @ryanbaumann. https://github.com/mapbox/tippecanoe/pull/304 will make it an error to have string feature attributes that are not correctly UTF-8-encoded.

Merged!


Long blacksceen

Hi when i go live with a mobile to sent the livestream to my server with the ngix and the obs i have 20-30 sec a black screen and then comes the livestream, but the system switch after 2 seconds to live scene when i start the stream via mobile.

What is your environment like? What mobile network are you using? what are your speed test results at home/mobile network?


Check during operator creation that finalizer/name is not too long.

For Loki's usage tracker operator I received this error:
{"time":"2024-06-14T13:54:37.438111611Z","level":"ERROR","msg":"error adding finalizer: CostAttributionLabelName.grafana-attributions-app.ext.grafana.com \"costattributionlabelnames.grafana-attributions-app.ext.grafana.com\" is invalid: metadata.finalizers: Invalid value: \"usage-tracker-config-operator-costattributionlabelnames-finalizer\": name part must be no more than 63 characters"}

usage-tracker-config-operator is configured by
runner, err := simple.NewOperator(simple.OperatorConfig{
		Name:       "usage-tracker",
})

this should return an error when the name is too long.

Resolved by https://github.com/grafana/grafana-app-sdk/pull/321


First draft of new page for individual pipelines

Refactored how some of the dynamic pages are loaded - usage and developer docs. This allows me to set up more dynamic URL routing to handle individual pages for pipelines.
Currently the individual pipeline page doesn't do much - just grabs the README.md file remotely from GitHub and renders that. There will probably be a bunch of bugs from people putting weird stuff in there, but it seemed to work ok on the ones I tried. I've also updated the pipelines page to link to the individual pages instead of GitHub directly.

Amaaaazing! I have no idea what I'm reviewing here so I'll side step. Would it be worth linking usage.md and output.md somehow (tabs/links) while you're doing this?

Ok, just done a bit more stuff: now repo sub-pages in markdown should also work - not just README.md. So for example https://nf-co.re/hlatyping/docs/output now works as well as https://nf-co.re/hlatyping
Images should now also load, and relative links are fixed.

Would it be worth linking usage.md and output.md somehow (tabs/links) while you're doing this?

This could be a nice idea! They now work when you get there from a link in the readme, but this is definitely one way that we could improve the UI. Any other ideas? I also threw together what's there pretty quickly so am happy for feedback / suggestions.

Ok, subnav thingy added!  I think this can pretty much be merged now...

I think the header is a bit deep still, so maybe need to play with moving the GitHub link or something th thin it out..? But it's trivial stuff now I think.

Good work. Looks really good :+1: Wouldn't expect anything less :smile:

Going to merge then based on pretty pictures :+1:

Nice! Hah, finding a couple of things with fresh eyes on the website.. Like on pipelines without a release:

...I'll open a new PR! 😉

https://nf-co.re/atacseq/docs/output
Heads up. Quick look on phone revealed that you can't see images from output.md too.

Wait. It would help to actually have images embedded in the page. It's fine.
https://nf-co.re/chipseq/docs/output
As you were.

Hah, yes that does help! I was thinking that I should add a link at the bottom to "View this page on GitHub". Would make it easier to check things like this, to see what's expected.

Maybe we need to change the links in the template to point to the website for usage.md and output.md too?

Ok, I added a "Read this on GitHub" subfooter to basically all website pages over in https://github.com/nf-core/nf-co.re/pull/137 (e40ff74d6472d6b6d9c85d345421151265c6c0a2)

Maybe we need to change the links in the template to point to the website for usage.md and output.md too?

Not sure I understand, which links? All relative links (ie. not starting http(s)://) are fudged when the markdown is rendered on the website, so they should all work there without changes.

The ones in this section:
https://github.com/nf-core/tools/tree/master/nf_core/pipeline-template/{{cookiecutter.name_noslash}}#documentation

Most point to the website already.

There is no need for this - it's already set up as it should be.
These links on the readme are a mixture of "core docs" - one markdown file which all pipelines should refer to (eg. how to install nextflow) and "pipeline docs" which are markdown files that are bundled with the repo.
The core docs should have complete, absolute paths - eg. https://nf-co.re/usage/installation - this is because all pipelines need to go to exactly that page.
The pipeline docs should have relative paths - eg. docs/usage.md - this is because that link is the same for every pipeline but refers to the usage documentation for that pipeline. So it needs to be relative to the file that it's written in.
Both sets of links should already work properly on both GitHub and the nf-co.re website.


Move optimization patch

High Level Overview of Change
This PR removes redundant use of std::move in the codebase. Since the types are trivially-copyable, the compiler will copy it despite the usage of std::move.
I've also removed an unused import in one of the unit test files, I noticed it while working on something else.
As a sidenote, do you guys know of any tools to clean up unused imports? There seem to be many in the rippled codebase.
@seelabs  thanks for pointing out the compiler warnings. Can you please review this PR?

Context of Change

Type of Change

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[x] Refactor (non-breaking change that only restructures code)
[ ] Tests (You added tests for code that already exists, or your new feature included in this PR)
[ ] Documentation Updates
[ ] Release

@HowardHinnant can you please review this?

Suggested commit message:
fix: remove redundant moves (#4565)

- Resolve gcc compiler warning:
      AccountObjects.cpp:182:47: warning: redundant move in initialization [-Wredundant-move]
  - The std::move() operation on trivially copyable types may generate a
    compile warning in newer versions of gcc.
- Remove extraneous header (unused imports) from a unit test file.


Chart with holoviews and bokeh not displaying in jupyter notebook

I have used below code to display simple curve in Jupyter notebook with holoviews and bokeg.
import pandas as pd
import holoviews as hv
hv.extension('bokeh')
xs=[i for i in range(-10,11)]
ys=[100-(x**2) for x in xs]
simple_curve=hv.Curve((xs,ys))
simple_curve
But the curve is not displaying , only bokeh symbol display.
The curve is displayed when I use  hv.extension('matplotlib').
I am not sure why background bokeh( hv.extension('bokeh')) not working. Please help.
Please look version of different library
python: 3.6.4 |Anaconda, Inc.| (default, Jan 16 2018, 10:22:32) [MSC v.1900 64 bit (AMD64)]
bokeh: 1.0.1
holoviews: 1.10.9
Please please help.

Are there any errors on your browsers JS console?

Hello Philipp,
Thank you so much for your reply.
I checked in console and found there is one error(SCRIPT1014: Invalid character).
I have also attached one screenshot. Please look.
I am very new in python, holoviews ect. Please please help.

Just to clarify, which browser is that?

It is IE 11. Thank you.
Regards,
Asif
On Dec 12, 2018 6:25 PM, "Philipp Rudiger"<EMAIL_ADDRESS>wrote:

Just to clarify, which browser is that?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/ioam/holoviews/issues/3274#issuecomment-446578425,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ArqjN-MaFNdwnxpQDO4mcc6c6pddZ1v5ks5u4PzGgaJpZM4ZM-aU
.


How I may create HPC cluster in Azure portal?

I didn't find instruction only arhitecture for HPC cluster

Thanks for reporting - this issue is under review.  This is a Microsoft Internal DevOps Bug ID AB#205881

this Docs page covers a high level overview of Azure HPC capabilities.  https://docs.microsoft.com/en-us/azure/architecture/topics/high-performance-computing


Automation - Condition - Not State

It is possible to add a not_state condition in automation ?
Exemple :
automation:
  condition:
    platform: state
    entity_id: media_player.paulus
    not_state: playing

The condition match when the state is everything excepted 'playing'
Thanks,
(Sorry for my english)

You could detect a change in state as is but there's no not state that I'm aware off.
Example from the getting started guide has this

automation:
trigger:
platform: state
entity_id: device_tracker.paulus
# Optional
from: 'not_home'
to: 'home'

You could try it without the to argument.

Or you can use templates to return false when you have that state and else return true...

Op 27 jan. 2016 om 14:47 heeft Landrash<EMAIL_ADDRESS>het volgende geschreven:
You could detect a change in state as is but there's no not state that I'm aware off.
Example from the getting started guide has this
automation:
trigger:
platform: state
entity_id: device_tracker.paulus
Optional
from: 'not_home'
to: 'home'
You could try it without the to argument.
—
Reply to this email directly or view it on GitHub.

The from argument is functionally a not argument.
On Wednesday, January 27, 2016, Bart274<EMAIL_ADDRESS>wrote:

Or you can use templates to return false when you have that state and else
return true...

Op 27 jan. 2016 om 14:47 heeft Landrash<EMAIL_ADDRESS><javascript:_e(%7B%7D,'cvml','notifications@github.com');>> het volgende
geschreven:
You could detect a change in state as is but there's no not state that
I'm aware off.
Example from the getting started guide has this
automation:
trigger:
platform: state
entity_id: device_tracker.paulus
Optional
from: 'not_home'
to: 'home'
You could try it without the to argument.
—
Reply to this email directly or view it on GitHub.

—
Reply to this email directly or view it on GitHub
https://github.com/balloob/home-assistant/issues/1018#issuecomment-175685298
.

--
Thanks,
Ryan Kraus

Thanks for replies,
I've tried this :
- alias: 'Temp'
  trigger:
    platform: state
    entity_id: device_tracker.192168010
    to: 'home'
  condition:
   - platform: state
     entity_id: sun.sun
     state: 'below_horizon'
   - platform: template
     value_template: >
       {% if is_state('media_player.chromecastboced66', 'playing') %}
         false
       {% else %}
         true
       {% endif %}
  action:
    service: homeassistant.turn_on
    entity_id: switch.lampe_entre

but this :
   - platform: template
     value_template: >
       {% if is_state('media_player.chromecastboced66', 'playing') %}
         false
       {% else %}
         true
       {% endif %}

and this :
   - platform: template
     value_template: >
       {% if is_state('media_player.chromecastboced66', 'playing') %}
         true
       {% else %}
         false
       {% endif %}

Is always "true"
The other condition works fine.
I will trying that this evening :
   - platform: state
     entity_id: media_player.chromecastboced66
     from: 'playing'

Apparently,
This :
   - platform: state
     entity_id: media_player.chromecastboced66
     from: 'playing'

Is always "false" :(

This is how i set it up.
  - action: "Plex paused"
    trigger:
      - platform: state
        entity_id: media_player.apple_tv
        from: 'playing'
    condition:
      - platform: state
        entity_id: sun.sun
        state: 'below_horizon'
    action:
        service: scene.turn_on
        entity_id: scene.some_light_bright

  - alias: "Plex playing"
    trigger:
      - platform: state
        entity_id: media_player.apple_tv
        to: 'playing'
    condition:
      - platform: state
        entity_id: sun.sun
        state: 'below_horizon'
    action:
        service: scene.turn_on
        entity_id: scene.some_light_scene

Yes, i do this to (and it's works) :
- alias: 'Chromecast Pause'
  trigger:
    platform: state
    entity_id: media_player.chromecastboced66
    from: 'playing'
  action:
    service: homeassistant.turn_on
    entity_id: switch.lampe_plafond

- alias: 'Chromecast Play'
  trigger:
    platform: state
    entity_id: media_player.chromecastboced66
    to: 'playing'
  action:
    service: homeassistant.turn_off
    entity_id: group.lampes_cedric

But in a condition it does not work

My version was outdated,
Template works now,
Sorry

That happened to me too. He often skips home and go straight to not_home
I want either a
- condition: state
  entity_id: device_tracker.iphone
  state: ! 'home'

or
- condition: state
  entity_id: device_tracker.iphone
  not_state: 'home'

or
- condition: not_state
  entity_id: device_tracker.iphone
  state: 'home'

You can do this with the template condition...

Hi,
I need to do a switch off after a some conditions are matched. For inner conditions, I used template conditions, but how can I put these contidions to a STATE CONDITION which has for ... a https://home-assistant.io/getting-started/scripts-conditions/
Can you do this in HA ?


PDF files missing from multiple brief pages

These pages give an error for the PDF viewer, and the PDF is a 404 on the live site as well:
1.
https://www.merative.com/documents/brief/DynaMed_and_Micromedex_with_Watson_solution_brief
https://www.merative.com/content/dam/merative/documents/brief/DynaMed_and_Micromedex_with_Watson_solution_brief.pdf

https://main--merative2--hlxsites.hlx.page/documents/brief/mer-3036706726-merative-factsheet-aug2022
https://www.merative.com/content/dam/merative/documents/brief/mer-3036706726-merative-factsheet-aug2022.pdf

https://main--merative2--hlxsites.hlx.page/documents/brief/micromedex-with-watson-solution-brief
https://www.merative.com/content/dam/merative/documents/brief/micromedex-with-watson-solution-brief.pdf

@keith-kaplan , this one is for your team I think.

Also missing is the PDF for https://main--merative2--hlxsites.hlx.page/documents/brief/mer-3036706726-merative-factsheet-aug2022
https://www.merative.com/content/dam/merative/documents/brief/mer-3036706726-merative-factsheet-aug2022.pdf

@venturewise  i'll take a look today.

New links are here:

https://main--merative2--hlxsites.hlx.page/content/dam/merative/documents/brief/dynamedex-solution-brief.pdf
https://main--merative2--hlxsites.hlx.page/content/dam/merative/documents/brief/micromedex-solution-brief.pdf

We don't need to worry about putting a PDF Viewer page for the old Merative fact sheet.

I updated the PDF viewer URL on the two pages using these, and the PDF is showing now:
https://www.merative.com/content/dam/merative/documents/brief/dynamedex-solution-brief.pdf
https://www.merative.com/content/dam/merative/documents/brief/micromedex-solution-brief.pdf

@keith-kaplan those 2 pages still need metadata to be looked at (I see read time is blank, for example).

Thanks. I can get those updated.

Updated.

We can complete this one
https://main--merative2--hlxsites.hlx.page/documents/brief/dynamed-and-micromedex-with-watson-solution-brief
https://main--merative2--hlxsites.hlx.page/documents/brief/micromedex-with-watson-solution-brief

Are you going to delete the 2022 fact sheet from Sharepoint?

Done.


Refactor blob sidecars slot and indices iteration

Anther approche to iterate through slots and indices to retrieve the blob sidecars could be by using a data structure.
Proposal: https://github.com/zilm13/teku/commit/208e424ba40c56c9ad9074c1309e6e4e168b5ae5
For more details check: https://github.com/ConsenSys/teku/pull/6835#discussion_r1118112561

btw I did #6880 in it too


Configurar a Database do Heroku

https://devcenter.heroku.com/articles/heroku-postgresql
https://stackoverflow.com/questions/23336161/deploying-to-herokutable-does-not-exist-error
https://stackoverflow.com/questions/6782818/rails-could-not-find-table-error
Como:
https://www.youtube.com/watch?v=bQ2wXZf9irA

Bug do PostgreSQL não rodar, possíveis soluções:
https://stackoverflow.com/questions/37307346/is-the-server-running-on-host-localhost-1-and-accepting-tcp-ip-connections

Será feito no fly.io


added background color to image shared object

would be nice to have unit test.:smile:

@nesalang sorry I wanted to speed up in order for the UWP implementation to be done today. What kind of test do you think would be appropriate? I can't seem to be able to find a good example.


Laravel 9.x Shift

This pull request includes the changes for upgrading to Laravel 9.x. Feel free to commit any additional changes to the shift-56990 branch.
Before merging, you need to:

Checkout the shift-56990 branch
Review all pull request comments for additional changes
Run composer update (if the scripts fail, add --no-scripts)
Clear any config, route, or view cache
Thoroughly test your application (no tests?, no CI?)

If you need help with your upgrade, check out the Human Shifts. You may also join the Shifty Coders Slack workspace to level-up your Laravel skills.

:information_source: Laravel 9 moved the resources/lang folder to the top level of the project. While Shift moved and replaced references to this folder, you may have additional references to this folder which need to be updated.

:warning: The FILESYSTEM_DRIVER environment variable was renamed to FILESYSTEM_DISK in Laravel 9. Shift did not find this variable referenced in your committed files, but you should review any additional environment configuration and rename this variable.

:warning: Laravel 9 transitioned from SwiftMailer to Symfony Mailer. While this transition should be relatively seamless and Shift automates any tedious changes, there are some changes which are not reliably automated.
Dependencies
Some mail providers may require an additional dependency. For example, if you are using Mailgun, then you will need to install the symfony/mailgun-mailer package:
composer require symfony/mailgun-mailer symfony/http-client

For more details on what has changed you may review the Symfony Mailer section of the Upgrade Guide.

:warning: Shift upgraded your configuration files by defaulting them and merging your true customizations. These include values which are not changeable through core ENV variables.
You should review this commit for additional customizations or opportunities to use new ENV variables. If you have a lot of customizations, you may undo this commit with git revert 875919ac and make the config file changes manually.

:information_source: The FILESYSTEM_CLOUD environment variable was removed in a later release of Laravel 8. While you may still use the cloud disk, you are encouraged to configure your own disks.

:warning: The token driver for API authentication is no longer available. This driver was not very robust and was removed from the documentation. Laravel now recommends using Sanctum.
If you were using the token driver, you may re-add it within your auth.php configuration file, then migrate to Sanctum at your convenience.

:information_source: Shift updated your dependencies for Laravel 9. While many of the popular packages are reviewed, you may have to update additional packages in order for your application to be compatible with Laravel 9.
Watch dealing with dependencies for tips on handling any additional package incompatibilities.

:information_source: Laravel 9 adopted anonymous migrations. Shift automated this change to align with modern Laravel conventions and avoid naming migrations.

:information_source: The HTTP client has been updated to have a default timeout of 30 seconds. Previously there was no default. The underlying request would wait indefinitely. Now an exception is thrown after 30 seconds.
If you find your requests need longer, you may prefix your request to specify a timeout:
Http::timeout(60)->get("https://laravelshift.com");

:tada: Congratulations, you're now running the latest version of Laravel!
Next, you may optionally run the following Shifts to ensure your application is fully upgraded, adopts the latest Laravel conventions, and easier to maintain in the future:

Upgrade Checker ensures your application is fully upgraded by detecting any outdated code.
Laravel Fixer automatically updates your code to the latest Laravel conventions.
Tests Generator intelligently generates model factories, HTTP Tests, and configuration for your application.
CI Generator intelligently generates CI jobs to lint PHP, check code style, and run tests, including Dusk.

You may also use the Shift Workbench to automate common tasks for maintaining your Laravel and PHP applications.


[incubator/kafka] Add priorityClassName

Signed-off-by: Sam Weston<EMAIL_ADDRESS>What this PR does / why we need it:
Adds the possibility of setting a priorityClassName for the Kafka pods. I use this in my cluster to make Kafka higher than the average priority for extra reliability.
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] Title of the PR starts with chart name (e.g. [stable/chart])

/assign h0tbird
/assign faraazkhan

/ok-to-test
/assign
/lgtm


docs: continue reorganizing 'Advanced QL'

Partially fixes https://github.com/github/product-documentation/issues/2188.
This PR continues the work started in #2583. I'm trying to reorganize the Advanced QL section. Hopefully we'll be able to get rid of that section altogether soon.
Changes in this PR

Move the relevant detail from Determining the most specific types of a variable into the topic about debugging queries.
Delete Constraining types The content doesn't seem to fit anywhere. I'll probably add a redirect to the section in the handbook about casts.

TODO

Add appropriate redirects
Move Monotonic aggregates in QL into the handbook, but I need some help from a QL writer to fill in some gaps in my knowledge before doing that.

@max-schaefer over to you for a technical review, if you have a moment please

Since these are fairly uncontroversial changes, I'd like to get this merged now as it's blocking https://github.com/github/product-documentation/issues/2157
@max-schaefer if you do have time to review, feel free to add comments here and I'll address them in a follow-up PR.
@shati-patel, before we merge I'll retarget this against rc/1.23 so that the changes become visible when we update help.semmle.com from that branch.

Actually, I'm going to open a fresh PR. Retargetting introduces many conflicts. Closing this now.

Replaced by https://github.com/Semmle/ql/pull/2876.


From camera to world transformation tutorial/example

🚀 Feature
Motivation
We get questions about Habitat coordinate system quite frequently. We should create a page or tutorial on it with visuals.

Hi @rpartsey
Is this issue still open?
If it is not urgent, I'd like to give it a try.


Cue position does not adjust to the top-left corner of the compound node

I've been working with the Cose-Bilkent layout lately and I've just added this plug-in to be able to collapse and expand compound nodes. It seems that everything works fine but I think there is some issue with some padding for the cues. It seems to get placed outside of the compound node so the action doesn't get trigger. It seems to get better when I zoom in to certain level so the cue finally gets placed inside the compound node. Please, find attached below some screenshots of this issue. The first one is an example of the original placement of the cue on a compound node when the graph gets displayed. The second one is the result of zooming in. Any clue of why is this happening? I'm using the following parameters for the layout:
   layout_params = {
              name: 'cose-bilkent',
              animate: false,
              randomize: true,
              tilingPaddingVertical: 20,
              tilingPaddingHorizontal: 20,
          }

Many thanks!

@RosaRomeroGomez This shouldn't happen if you're using the default options documented in the extension (see README here https://github.com/iVis-at-Bilkent/cytoscape.js-expand-collapse). You can adjust the position of the expand/collapse visual cue using this option: expandCollapseCuePosition (could provide a function for it as well).
If you can't figure out your problem, perhaps you could provide a JS Fiddle to reproduce your problem.

Thanks @ugurdogrusoz for your quick response. I'm using the default options documented in the extension but I suspect there is something weird going on with the zooming capabilities. This is how I initialize the extension:
  var expandCollapse_defaults = {
    layoutBy: null, // to rearrange after expand/collapse. It's just layout options or whole layout function. Choose your side!
    // recommended usage: use cose-bilkent layout with randomize: false to preserve mental map upon expand/collapse
    fisheye: true, // whether to perform fisheye view after expand/collapse you can specify a function too
    animate: true, // whether to animate on drawing changes you can specify a function too
    ready: function () { }, // callback when expand/collapse initialized
    undoable: false, // and if undoRedoExtension exists,

    cueEnabled: true, // Whether cues are enabled
    expandCollapseCuePosition: 'top-left', // default cue position is top left you can specify a function per node too
    expandCollapseCueSize: 30, // size of expand-collapse cue
    expandCollapseCueLineSize: 20, // size of lines used for drawing plus-minus icons
    expandCueImage: undefined, // image of expand icon if undefined draw regular expand cue
    collapseCueImage: undefined, // image of collapse icon if undefined draw regular collapse cue
    expandCollapseCueSensitivity: 2 // sensitivity of expand-collapse cues
  };
  cy.expandCollapse(expandCollapse_defaults);
  let api = cy.expandCollapse('get');`

I've increased the cue size a bit and it seems to adjust better (I know this is not an ideal solution but it works for now while I find another solution). If I wanted to add another cue image instead of the default one, would it suffice just to include the path to the cue? Something like: expandCueImage: /path/to/image.png Thanks again!

@RosaRomeroGomez as @ugurdogrusoz mentioned this should not happen. Paddings are taken into consideration in default position calculation. See our demo - cues are positioned correctly independent of zoom level. Can you provide a minimal JS Fiddle which reproduces your problem?

Would it suffice just to include the path to the cue? Something like: expandCueImage: /path/to/image.png ? I have tried but not works well.


Error 500 (empty page)

Hello,
I have try Kanboard and cannot have any home page, or login page or nothing !
I have try nightly, and normal zip. Normal zip return an error with require autoload.php, vendor folder is missing ? So i have download nightly build.
My config:

Debian 8.2
Apache 2.4.10-10+deb8u3 (amd64)
PHP 7.0 RC5 (Dotdeb  7.0.0~rc5-1~dotdeb+8.1) WITH curl, gd, imap, sqlite, mysql, pspell, snmp.
Mariadb 10.1.8+maria-1~jessie (amd64)

./kanboard command line report a lot of "Cannot adopt OID in NET-SNMP-EXTEND-MIB"
Resolved by "apt-get install snmp-mibs-downloader".
I have try :

Copy config.default.php  to config.php with define('DEBUG', true); (Error 500)

Change MySQL config in config.php. (Kanboard is creating table than Error 500).

Delete all table, import MySQL Shema .sql (Error 500).

Connexion to database is OK (Kanboard is creating 31 tables if i don't import schema)
I have try on index.php
error_reporting(E_ALL);
ini_set("display_errors", 'on');
Failed require autoload.php with normal zip, and Nightlybuild => Error 500
Try this two line also in app/common.php after and even before require config.
I have try to edit .htaccess too with Only :
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [QSA,L]
Rewrite module in ON on Apache2.
I have try, on index.php
die("EOL"); before all => 200 with EOL
die("EOL"); before echo 'Internal Error: '.$e->getMessage(); => Error 500
die("EOL"); before  $container['router']->dispatch(...); => 200 with EOL
die("EOL"); AFTER  $container['router']->dispatch(...); => ERROR 500
Any idea ?
Thank you

Failed require autoload.php with normal zip, and Nightlybuild => Error 500
-> try composer install

vendor folder is not missing in Nightlybuild.
I have
rm -rf kanboard/
unzip kanboard-nightly-build.zip
i get : Internal Error: SQLSTATE[HY000] [14] unable to open database file (this is normal)
chmod -R 777 kanboard/data
Now /data/db.sqlite is create => Error 500
set debug to true => Error 500 nothing change
cp kanboard/config.default.php kanboard/config.php
data/debug.log is create with
[2015-10-28 13:06:41] [debug] START_REQUEST=/kanboard/
But nothing has change => Error 500.
I will try normal zip with composer maybe, or normal zip, with nightlybuild vendor folder.

Try to debug.
Error 500 is beggin with :  app/Core/Router.php line 226.
If i comment
//$instance->beforeAction($this->controller, $this->action);
Get a 200 with KB Page not found.
Replace with : die($this->controller ." && ".$this->action );
controller = app
action = index
I will see "beforeAction" and come back if i have some new

So, in "beforeAction"
/app/Controller/Base.php line 101.
Comment //$this->session->open($this->helper->url->dir()); into beforeAction function solve the 500.
Now i have login page, and debug.log is more verbose !
i will see WTF into "session->open" function and come back.

OK. I have found what was the problem :
    // Enable strict mode
    if (version_compare(PHP_VERSION, '7.0.0') < 0) {
        //ini_set('session.use_strict_mode', '1');
    }

PHP_VERSION is 7.0.0RC5.
Version_compare return -1
ini_set('session.use_strict_mode', '1');  make the Error 500.

If session.use_strict_mode is causing an error, you should check your php/server configuration.


seperate dbops from the routes in the users BP.

Follow conventions

I am not using that file( routes) vishwa. I think It was created before we assigned tasks among us.

@NavyaSree27 then please make a branch and delete unused files


Simple Typo on bikes page!

On your Bikes page, you've typed ilan key in the first paragraph when I believe it is Allen Key.
Just a small typo!

Fixed. Thx for reporting the error.


Not available to validate specific values per field

In schema, I don't see a way to define allowed values per field. Here is an example with allowed_values attribute
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-04/schema#",
  "properties": {
    "city": { "type": "string", allowed_values: ["Paris", "London"] },
    "country": { "type": "string" }
  },
  "required": ["country"]
}

It means it returns an error if I pass a different city.
Is there any workaround to do this?

Hi @IlyaUmanets,
I’m not sure, are you asking if it’s possible to do that using a schema? Or you are reporting a bug with ActiveRecord::JSONValidator?

@remi, No, I do not report a bug. It's more like a question or suggestion rather than a bug.

@IlyaUmanets You could do string validation using the pattern field: https://json-schema.org/draft/2020-12/json-schema-validation.html#name-pattern


Instance nodes should not start with numbers

Originally reported on Google Code with ID 816
A form with a <2013crop/> instance node will not validate. Change to <crop2013/> and
it validates. Instance nodes should not start with numbers.

Reported by<EMAIL_ADDRESS>on 2013-04-26 13:59:42

Closing in favor of https://github.com/XLSForm/pyxform/issues/130. Build doesn't have this problem.


Assertion failure on GetGtkHotKey for some locales

While testing some (not all) of the poedit's locales for #369, I received "assertion failure" dialogs on GetGtkHotKey() for some languages. These are displayed a few times on startup, but can be dismissed and the GUI will be available as expected.
Distro: Arch Linux 64-bit
Package versions:
poedit 2.0
wxgtk 3.1.0 (built with GTK+2)
Locales involved: ca_ES es_ES hu_HU ja_JA kr_KR zh_CN zh_TW
Steps to reproduce:

Run `LC_ALL= poedit' (Some dialogs will pop up)
Dismiss the dialogs by pressing "Continue" button and it's gone

Log files:
assertion-error.txt (same for all locales)
gdb-accel.txt

This is a wx bug — it assumes a translation cannot be 1 character long for accels. I'm partially addressing it by deleting offending translations.
I'm not seeing it with Japanese or (either) Chinese, by the way, but do with the rest.

Candidate proper fix: https://github.com/wxWidgets/wxWidgets/pull/451

Closing as the combination of wx fixes and translation files workarounds deals with this for 2.0.1 (later this week).


[SPARK-44697][CORE] Clean up the deprecated usage of o.a.commons.lang3.RandomUtils

What changes were proposed in this pull request?
In commons-lang3 3.13.0, RandomUtils has been marked as @Deprecated, the Java doc of commons-lang3 suggests to instead use the api of commons-rng.
https://github.com/apache/commons-lang/blob/bcc10b359318397a4d12dbaef22b101725bc6323/src/main/java/org/apache/commons/lang3/RandomUtils.java#L33
 * @deprecated Use Apache Commons RNG's optimized UniformRandomProvider

However, as Spark only uses RandomUtils in test code, so this pr attempts to replace RandomUtils with ThreadLocalRandom to avoid introducing additional third-party dependencies.
Why are the changes needed?
Clean up the use of Deprecated api.
Does this PR introduce any user-facing change?
No
How was this patch tested?
Pass GitHub Actions

https://github.com/LuciferYang/spark/actions/runs/5780825406

GA passed

Thanks @dongjoon-hyun ~


Keeps renaming yuzu.exe

Updating will consistently keep renaming yuzu.exe to cemu.exe for some strange reason, breaking all integrations pointing to the original executable.

You're asking this on the wrong project 🧐

Oops, sorry Clooos. Not sure how that happened.


Add version: Hydraulic.Conveyor version <IP_ADDRESS>

[X] Have you signed the Contributor License Agreement?
[X] Have you checked that there aren't other open pull requests for the same manifest update/change?

[ ] Have you tested your manifest locally with winget install --manifest <path>?
[X] Does your manifest conform to the 1.2 schema?

Microsoft Reviewers: Open in CodeFlow

@wingetbot run

Installing through Winget gives the error:

800B0110 The certificate is not valid for the requested usage.

Manually installing the package gives the error:

Is there an issue with this version?

Installing through Winget gives the error:

800B0110 The certificate is not valid for the requested usage.

Manually installing the package gives the error:
Is there an issue with this version?

This was their first release, so probably. I think we can proceed with closing this pull request, as I submitted it so that we had all versions.


1129 - Create a publish command for the CLI

Description
Users should be able to publish a test message right from the command line. To do this, a publish command has been added to the CLI main.py file.
Close  #1129
How to Test
To test the new publish functionality introduced in this Pull Request, follow these steps:

Start Your FastStream Application: First, you need to have a running FastStream application. You can start your application with the following command, assuming your FastStream application is defined in a file named testfaststreamapp.py:
python testfaststreamapp.py

Make sure your FastStream application is set up to subscribe to a channel named input_channel and publishes processed messages to another channel (e.g., output_channel). Here's a simple example of what your testfaststreamapp.py might contain:
from faststream import FastStream
from faststream.redis import RedisBroker

broker = RedisBroker("redis://localhost:6379")
app = FastStream(broker=broker)

@broker.subscriber(channel="input_channel")
@broker.publisher(channel="output_channel")
async def process_message(message: str) -> str:
    print(f"Received message: {message}")
    return f"Processed: {message}"

if __name__ == "__main__":
    app.run()

Send a Test Message: With your FastStream application running, you can send a test message using the faststream publish command. Use the following command to publish a message to the input_channel:
faststream publish testfaststreamapp:app "Hello World" --channel "input_channel" --rpc

Type of change

[x] New feature (a non-breaking change that adds functionality)
[x] This change requires a documentation update

Checklist

[x] My code adheres to the style guidelines of this project (scripts/lint.sh shows no errors)
[x] I have conducted a self-review of my own code
[ ] I have made the necessary changes to the documentation
[x] My changes do not generate any new warnings
[x] I have added tests to validate the effectiveness of my fix or the functionality of my new feature
[ ] Both new and existing unit tests pass successfully on my local environment by running scripts/test-cov.sh
[ ] I have ensured that static analysis tests are passing by running scripts/static-anaylysis.sh
[ ] I have included code examples to illustrate the modifications

Having issues running tests locally. They seem to get stuck and the test run never finishes.
Opened this draft PR to get eyes on the work and get feedback on whether the changes here fulfill the requirements of adding this feature.

Hey @davorrunje , this PR is in Draft because I wanted to check I had the correct logic and if the code changes are doing the intended changes. I haven't looked into the tests yet, will check.
If it looks good to be reviewed, I can mark it ready. Would also be helpful if you can recommend next steps for documenting and other checks before having this PR ready to be deployed.

@MRLab12 can you please give me write access to your repo, I would like to push some changes to you branch

@davorrunje Sent you invite for access.

@MRLab12 The tests are failing for Python versions 3.8 and 3.9. Can you please check locally with the following command:
bash scripts/test.sh -m "(slow and (not nats and not kafka and not confluent and not rabbit and not redis)) or (not nats and not kafka and not confluent and not rabbit and not redis)"

I think your tests are interfering with the rest. Can you please check the way you handle async code and compare it with the run function and its tests?

@davorrunje Hey I was really busy with interviews and did not have a chance to take a look a this. I was able to find that adding @pytest.mark.asyncio to the tests seems to properly end the event loop. It is a weird to use it this way since the test are not using async, but the publish command is. Let me know if this works or we should handle tests some other way.

@MRLab12 Thanx for the PR, I am merging it now :)


chore: create command for updating auto-generated docs and helm resources for CRD structs

Fixes #1879
Description

command for make generate in the operator directory to update the zz_autogenerated.deepcopy.go files
command for make manifests to update the CRD manifests in the operator's config directory
command for the generated manifest for the CRD to helm/chart/templates/
command for updating the auto-generated CRD docs by running ./.github/scripts/generate-crd-docs/generate-crd-docs.sh

How to test
Please describe how to run the tests that you ran to verify your changes.
Provide instructions so we can reproduce.
Please also provide information about any automatic tests that you added.

[ ] Manual Test A
[ ] Unit Test B
[ ] Integration Test C

Checklist

[ ] My PR fulfills the Definition of Done of the corresponding issue and not more (or parts if the issue is separated
into multiple PRs)
[ ] I used descriptive commit messages to help reviewers understand my thought process
[ ] I signed off all my commits according to the Developer Certificate of Origin (DCO)
see Contribution Guide
[ ] My PR title is formatted according to the semantic PR conventions described in
the Contribution Guide
[ ] My code follows the style guidelines of this project (golangci-lint passes, YAMLLint passes)
[ ] I regenerated the auto-generated docs for Helm and the CRD documentation (if applicable)
[ ] I have performed a self-review of my code
[ ] I have made corresponding changes to the documentation (if needed)
[ ] My changes result in all-green PR checks (first-time contributors need to ask a maintainer to approve their test runs)
[ ] New and existing unit and integration tests pass locally with my changes

Summary
Please include a short summary of the changes and the related issue.
Please also include relevant motivation and context.
List any dependencies that are required for this change.
Fixes # (issue)
Checks

[ ] My PR fulfills the Definition of Done of the corresponding issue and not more (or parts if the issue is separated
into multiple PRs)
[ ] I used descriptive commit messages to help reviewers understand my thought process
[ ] I signed off all my commits according to the Developer Certificate of Origin (DCO)(
see Contribution Guide)
[ ] My PR title is formatted according to the semantic PR conventions described in
the Contribution Guide
[ ] My content follows the style guidelines of this project (YAMLLint, markdown-lint)
[ ] I regenerated the auto-generated docs for Helm and the CRD documentation (if applicable)
[ ] I have performed a self-review of my content including grammar and typo errors and also checked the rendered page
from the Netlify deploy preview
[ ] My changes result in all-green PR checks (first-time contributors need to ask a maintainer to approve their test runs)

Hey @prakrit55 great job here! To simplify your scripts a bit you may want to have a look to Kustomize transformers and patches: basically, there is a way t odefine how your yaml file should be enriched when you run the make generate command for instance to add labels like you do in your script :)
some  maybe helpful links:
https://medium.com/@giorgiodevops/kustomize-use-patches-to-add-or-override-resources-48ef65cb634c
https://github.com/kubernetes-sigs/kustomize/tree/master/examples/transformerconfigs
https://github.com/kubernetes-sigs/kustomize/blob/master/examples/patchMultipleObjects.md

Hey @prakrit55 great job here! To simplify your scripts a bit you may want to have a look to Kustomize transformers and patches: basically, there is a way to define how your yaml file should be enriched when you run the make generate command for instance to add labels like you do in your script :)
some maybe helpful links:
https://medium.com/@giorgiodevops/kustomize-use-patches-to-add-or-override-resources-48ef65cb634c https://github.com/kubernetes-sigs/kustomize/tree/master/examples/transformerconfigs https://github.com/kubernetes-sigs/kustomize/blob/master/examples/patchMultipleObjects.md

Thanks @RealAnna, this so cool with kustomize for the annotations to feed in the CRDs. Could you suggest if there is any other potential methods to copy the CRDs from config to helm templates, I could only think of the scripts that I created ?

Hi @prakrit55 any news on this PR?

Hi @prakrit55 any news on this PR?

was a bit busy, will start working on it  : )

hello @odubajDT, had a query with kustomize and some bash stuffs, I am able to produce the crds in a single file as realanna said, now do u get any solution how to reassemble those crds into the same hlm templates file ??? 😓 like I got stuck in this thing previously

hello @odubajDT, had a query with kustomize and some bash stuffs, I am able to produce the crds in a single file as realanna said, now do u get any solution how to reassemble those crds into the same hlm templates file ??? 😓 like I got stuck in this thing previously

Hi @prakrit55 not sure I understand your question. But I don't think producing a single file output is the goal. What I think Anna suggested is to actually template the CRDs and create it basically "substituable", but in multiple templates files.
Can you explain your thoughts a little bit more ?

Sorry for the confusion. So I tried to run kustomize build config/crd > chart/templates/file.yaml, with some scripts for the annotations. Now we are getting a single file with all the CRDs in the template . Its difficult to put the files separately. Any thoughts ??

hello @odubajDT, had a query with kustomize and some bash stuffs, I am able to produce the crds in a single file as realanna said, now do u get any solution how to reassemble those crds into the same hlm templates file ??? 😓 like I got stuck in this thing previously

Hi @prakrit55 not sure I understand your question. But I don't think producing a single file output is the goal. What I think Anna suggested is to actually template the CRDs and create it basically "substituable", but in multiple templates files.
Can you explain your thoughts a little bit more ?

Sorry for the confusion. So I tried to run kustomize build config/crd > chart/templates/file.yaml, with some scripts for the annotations. Now we are getting a single file with all the CRDs in the template . Its difficult to put the files separately. Any thoughts ??

@prakrit55 I think having all crd in a file is an acceptable outcome as long as we are certain that the content is automatically updated 😃


IconData's codepoint inconsistency issue.

Use case
I am storing the Icons' icondata's codepoint onto the Firebase. I did so because it make my code robust, like if I need to change icons or icons shape then I simply do it by changing the codepoint of the particular icon into the Firebase.
Problem Faced
When I have updated the Flutter to 2.2 then I found that the IconData's codepoint now points to different icons. The Mapping of IconData's codepoint which have to be a some icon (let say X), now it points to different Icon (let say Y). X's codepoint shouldn't be change.
Proposal
When adding new icons to the Flutter set then it should be make sure that IconData point shouldn't be change. Like a number that identify only & only a particular icons.

@ycv005
Thanks for the report. I may be wrong but this sounds a bug to me, rather than a proposal. Upgrading to new version should have tests that checks this case.
Can you give us a practical example which highlights this issue ?

@ycv005
So are you looking to still have this as a proposal or a bug ?

I am confuse. You decide. I think it should more on proposal type.

Proposal
When adding new icons to the Flutter set then it should be make sure that IconData point shouldn't be change. Like a number that identify only & only a particular icons.

Going by the proposal requested, maybe adding a test to verify iconData's codepoint is consistent and doesn't break the linkage, would be suitable to handle these kind of scenarios.
Labeling it accordingly.

There were technical reasons for which Material icons' codepoints change every time a new font is created. I can double-check to see if those still apply.

Starting with (and including) the next update, codepoints will be stable between releases 🚀. Therefore, closing this issue.