Platform support?

Which platforms has IrrlichtBAW worked on in production? (or in general?)

Linux and Windows, both 64bit only
On 13/09/17 22:33, Brigham Keys, Esq. wrote:

Which platforms has IrrlichtBAW worked on in production? (or in general?)

Which build target in the code blocks file works for windows?

Only the Visual Studio project.. but you could port the compiler options
and compiled files + linked libs easily.
On 14/09/17 17:55, Brigham Keys, Esq. wrote:

Which build target in the code blocks file works for windows?

Do you know what threading system the windows version uses? I am having trouble getting it out of the .vcxproj file. I got it building on Linux with the examples in my fork, but am trying to get it to cross compile with mingw for windows atm. I get the following output when I try to compile FW_Mutex.h.
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:29:3: error: 'pthread_yield' was not declared in this scope
   pthread_yield();
   ^~~~~~~~~~~~~
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:29:3: note: suggested alternative: '__gthread_yield'
   pthread_yield();
   ^~~~~~~~~~~~~
   __gthread_yield
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:35:3: error: 'nanosleep' was not declared in this scope
   nanosleep(&ts, NULL);
   ^~~~~~~~~
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:35:3: note: suggested alternative: '_sleep'
   nanosleep(&ts, NULL);
   ^~~~~~~~~
   _sleep
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h: In function 'void FW_SleepNano(const uint64_t&)':
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:61:3: error: 'pthread_yield' was not declared in this scope
   pthread_yield();
   ^~~~~~~~~~~~~
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:61:3: note: suggested alternative: '__gthread_yield'
   pthread_yield();
   ^~~~~~~~~~~~~
   __gthread_yield
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:67:3: error: 'nanosleep' was not declared in this scope
   nanosleep(&ts, NULL);
   ^~~~~~~~~
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:67:3: note: suggested alternative: '_sleep'
   nanosleep(&ts, NULL);
   ^~~~~~~~~
   _sleep
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h: In function 'uint64_t FW_GetTimestampNs()':
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:83:19: error: 'CLOCK_MONOTONIC' was not declared in this scope
     clock_gettime(CLOCK_MONOTONIC, &ts1); //maybe CLOCK_PROCESS_CPUTIME_ID?
                   ^~~~~~~~~~~~~~~
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:83:5: error: 'clock_gettime' was not declared in this scope
     clock_gettime(CLOCK_MONOTONIC, &ts1); //maybe CLOCK_PROCESS_CPUTIME_ID?
     ^~~~~~~~~~~~~
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:83:5: note: suggested alternative: '_lock_file'
     clock_gettime(CLOCK_MONOTONIC, &ts1); //maybe CLOCK_PROCESS_CPUTIME_ID?
     ^~~~~~~~~~~~~
     _lock_file
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h: In member function 'void FW_Mutex::Get()':
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:102:29: error: 'hMutex' was not declared in this scope
         pthread_mutex_lock(&hMutex);
                             ^~~~~~
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:102:29: note: suggested alternative: 'FW_Mutex'
         pthread_mutex_lock(&hMutex);
                             ^~~~~~
                             FW_Mutex
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h: In member function 'void FW_Mutex::Release()':
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:110:31: error: 'hMutex' was not declared in this scope
         pthread_mutex_unlock(&hMutex);
                               ^~~~~~
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:110:31: note: suggested alternative: 'FW_Mutex'
         pthread_mutex_unlock(&hMutex);
                               ^~~~~~
                               FW_Mutex
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h: In member function 'bool FW_Mutex::TryLock()':
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:118:39: error: 'hMutex' was not declared in this scope
         return pthread_mutex_trylock(&hMutex)==0;
                                       ^~~~~~
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:118:39: note: suggested alternative: 'FW_Mutex'
         return pthread_mutex_trylock(&hMutex)==0;
                                       ^~~~~~
                                       FW_Mutex
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h: In function 'void FW_AtomicCounterIncr(volatile int32_t&)':
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:310:13: error: 'pthread_yield' was not declared in this scope
             pthread_yield();
             ^~~~~~~~~~~~~
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:310:13: note: suggested alternative: '__gthread_yield'
             pthread_yield();
             ^~~~~~~~~~~~~
             __gthread_yield
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h: In function 'void FW_AtomicCounterBlock(volatile int32_t&)':
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:339:9: error: 'pthread_yield' was not declared in this scope
         pthread_yield();
         ^~~~~~~~~~~~~
/home/bkeys/Devel/IrrlichtBAW/source/Irrlicht/FW_Mutex.h:339:9: note: suggested alternative: '__gthread_yield'
         pthread_yield();
         ^~~~~~~~~~~~~
         __gthread_yield
make[2]: *** [CMakeFiles/IrrlichtBAW.dir/build.make:414: CMakeFiles/IrrlichtBAW.dir/source/Irrlicht/CGPUTransientBuffer.cpp.obj] Error 1
make[1]: *** [CMakeFiles/Makefile2:626: CMakeFiles/IrrlichtBAW.dir/all] Error 2
make: *** [Makefile:84: all] Error 2

I am passing in -pthread and have #include <pthread.h> included. A grep of the header file shows that these functions are indeed not in the mingw implementation which is strange. I was wondering if you had any clue about this file.

I've decided not to support mingw on windows.
We are however going to create a CMake build.


dask.bag.Bag.to_dataframe behavior change in 2024.3.0 - setting dtype to string rather than object by default

Describe the issue:
Since the last update dask bag's  to_dataframe generates data frames with a string dtype by default rather than object
Minimal Complete Verifiable Example:
>>> import dask.bag as db
>>> import pandas as pd
>>> pd.DataFrame.from_records([{"obj": range(2)}]).info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 1 entries, 0 to 0
Data columns (total 1 columns):
 #   Column  Non-Null Count  Dtype
---  ------  --------------  -----
 0   obj     1 non-null      object
dtypes: object(1)
memory usage: 140.0+ bytes
>>> db.from_sequence([{"obj": range(2)}]).to_dataframe().compute().info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 1 entries, 0 to 0
Data columns (total 1 columns):
 #   Column  Non-Null Count  Dtype
---  ------  --------------  -----
 0   obj     1 non-null      string
dtypes: string(1)
memory usage: 151.0 bytes

Anything else we need to know?:
Environment:

Dask version: 2024.3.0
Python version: 3.11.8
Operating System: MacOS 14.3.1
Install method (conda, pip, source): pip

Hi, thanks for your report. This is expected because we are now utilising an option that converts all string-like columns to PyArrow backed strings. You can disable that behaviour with
dask.config.set({'dataframe.convert-string': False})

@phofl thanks for the info on how to disable that. Any pointers to summary of expected behavior changes with the new dataframe engine?

Hopefully not too many that are actually user-facing. We now optimise queries before we submit them to the scheduler, but we aimed for as much compatibility from an end-user perspective as possible. Please let us know if you encounter something that breaks


pull in /etc/os-release hotfix on resin-ts

Connects to hotfix-production
@telphan @floion @petrosagg

SGTM


Update NeuralNet1.cpp

Added auto keyword in for loops. It will deduce the right data type on its own.

I don't know what's happened here - could be something to do with my changing the file from UTF-16 -> UTF-8

Updated outside of pull request.


new flag skipPowerOptimizationCheck is named and documented incorrect

see https://github.com/AzureAD/microsoft-authentication-library-common-for-android/blob/dev/common/src/main/java/com/microsoft/identity/common/adal/internal/net/HttpWebRequest.java
@param skipPowerOptimizationCheck : boolean to skip power optimization check
if the flag is set to true the check is done, if it is set to false it is skipped.
The behavior is correct (power_opt_check_for_network_req_enabled set to false in the msal_config.json skips the power check), its just the name and javadoc that is incorrect.

Thanks @slowcar -- we'll get this fixed in a future release

Introduced in https://github.com/AzureAD/microsoft-authentication-library-common-for-android/pull/894

Hi,
I'm facing the same issue as the author and have a lot of problems with dropped requests.
I have been looking around where I can specify this skipPowerOptimiationCheck setting but can't find it. @slowcar is talking about msal_config.json but I find no documentation about that file. Can you please provide information in how to solve this?
Thanks
Benjamin

Hi Ben,
the documentation about the json file is here: https://docs.microsoft.com/azure/active-directory/develop/msal-configuration , it is linked from the main library github (this here is the common library): https://github.com/AzureAD/microsoft-authentication-library-for-android
the documentation does not have the flag listed yet, but it works correctly.


See and SeeAlso?

I saw the options for see and seealso, but don't see the two mentioned in the docs. I can anticipate how they would be used, but am unsure of what the differences are.
Could the docs be expanded to included these. Right now I am using See to redirect for deprecated procs or similar ones.

Hi,
We're currently developing for a new major version including some additional features and pipeline support.
In our backlog we already added the features to support additional xml tags, like see, seealso and exception. We plan to support all existing xml tags from C# (see https://docs.microsoft.com/en-us/dotnet/csharp/codedoc)
Pls be a little bit patient, because we restructure our core to maintain the code for pipeline and vscode extension in one codebase.
I will use this issue to keep you updated, regarding additional xml tags.


Unable to clone default or change custom profiles when locked.

Describe the bug
The lock profile features feature is intended to protect the default profiles from changes and encourage developers to create new profiles for customization.
In 2.2.0, locking the profiles disables the buttons for View Asset and Clone.

Additionally, cloning and locking the profile renders the new, custom profile locked as well.

The underyling issues are that I was modifying a default profile after unlocking and was expecting the custom sub-profile to be modifiable which is not the design.
We need to make the View Asset and Documentation buttons always enabled and update the documentation to clarify the possible user confusion.
There is no reason why informational options are gated behind the profile lock


feat: new method for enum options

This will fetch and arrange enum cases to key value pair in datatables.
Also, it help to remove custom key value pair inside your Enums.

Release on v10.7.0 🚀 Thanks!


Relay <> The Graph Integration

Overview
The idea behind this item is to enable developers to run Graph nodes against the relay endpoint and utilise subgraphs for smart contract event indexing
Features
General

[x] Being able to catch & handle events emitted from EthereumTransactions - Generally works, but is blocked by other issues https://github.com/hashgraph/hedera-json-rpc-relay/issues/417, https://github.com/hashgraph/hedera-json-rpc-relay/pull/432 and https://github.com/hashgraph/hedera-mirror-node/issues/4175 which affect the indexing of the blocks
[ ] Being able to catch & handle events emitted from ContractCall & ContractCreate - not working because of https://github.com/hashgraph/hedera-mirror-node/issues/4175
[ ] Being able to specify the start time from which the graph syncs - This uses startBlock from the subgraph.yaml. From the limited success indexing the relay it looks as it's working, but it requires that all blocks down to the startBlock has been consumed, which currently can't be well tested.
[ ] Being able to define call handlers and process them - Requires trace api implementation https://openethereum.github.io/JSONRPC-trace-module
[ ] Being able to define block handlers and process them - Requires trace api implementation https://openethereum.github.io/JSONRPC-trace-module
[ ] Being able to execute contract calls during subgraph event processing (contract calls) - https://github.com/hashgraph/hedera-json-rpc-relay/issues/437

Hedera specific

[ ] Being able to capture HTS token transfers through HTS precompile -> Should be working. Must be tested (cc @dimitrovmaksim )
[ ] Being able to capture HTS token transfers through HAPI ->  HTS token transfers from HAPI are not emitting events equivalent to ERC20 transfer. (TODO Log issue into mirror node)

Trying again after eth_getBlockByHash RPC call for block hash
0x2334e29a448fe8be0c13b0df99d0e0cef5f929e4102f595f47dae6257dfd9dc6 failed (attempt #1) with result
Err(Decoder error: Error("invalid type: null, expected a (both 0x-prefixed or not) hex string with length between (0; 64]",
line: 0, column: 0)), provider: localhost-rpc-0, component: BlockIngestor

This happens with blocks that have transactions. The the required null property by the graph node in this case is nonce, but generally there are more missing properties, probably related to this Issue https://github.com/hashgraph/hedera-json-rpc-relay/issues/417

Graph node error:
Trying again after block polling failed: Block data unavailable, block was likely uncled (block hash = 0x25dc6dd3ccb9484dc016163687462ac852c181624e6c8fb5e755acb283d91026), provider: hedera-rpc-0, component: BlockIngestor

Probable cause - mirror node timeout:
Relay:
 err: {
      "type": "Error",
      "message": "timeout of 10000ms exceeded",
      "stack":
          Error: timeout of 10000ms exceeded
              at MirrorNodeClient.handleError (.../hedera-json-rpc-relay/packages/relay/dist/lib/clients/mirrorNodeClient.js:107:27)
              at MirrorNodeClient.<anonymous> (.../hedera-json-rpc-relay/packages/relay/dist/lib/clients/mirrorNodeClient.js:95:22)
              at Generator.throw (<anonymous>)
              at rejected (.../hedera-json-rpc-relay/packages/relay/dist/lib/clients/mirrorNodeClient.js:25:65)
              at processTicksAndRejections (node:internal/process/task_queues:96:5)
    }

Graph node error - Could not find thx receipt
Probable cause:
eth_getTransactionReceipt method is mapped to getContractResult(hash)(/api/v1/contracts/results/{TransactionIdOrHash} but this endpoint returns results [only?] for CONTRACTCALL type transactions
https://testnet.mirrornode.hedera.com/api/v1/contracts/results/0x4e8e53974dee424c3ebff7e0a6ff24824f64eced01947dca97d9ea0465214e09
Not sure if this an issue for the indexing process

Blocks that return empty contractResult have 0 as timestamp.
timestamp is seto to 0 here https://github.com/hashgraph/hedera-json-rpc-relay/blob/main/packages/relay/src/lib/eth.ts#L935 and is only updated if contractResults is not empty https://github.com/hashgraph/hedera-json-rpc-relay/blob/main/packages/relay/src/lib/eth.ts#L942-L945, otherwise it remains 0 and is set as 0 to the Block response https://github.com/hashgraph/hedera-json-rpc-relay/blob/main/packages/relay/src/lib/eth.ts#L976

Managed to get the graph node to index an event after hardcoding some values in the relay
Aug 08 12:41:33.100 INFO Done processing trigger, gas_used: 164806718, data_source: EmitEvent, handler: handleTestEvent, total_ms: 14, transaction: 0xfd71…3c13, address: 0x0000…fa89, signature: TestEvent(uint256), sgd: 1, subgraph_id: QmdNoQ1s7hBxZkdHfdUu68HCqd6DX3C9jWUj8XXj8BYDqA, component: SubgraphInstanceManager

It seems this one actually breaks the processing of the triggers
Graph node error - Aug 04 15:00:22.191 INFO Trying again after block polling failed: Receipt for tx 0x67a252b497f13e3fcd263016f33fde5969de0f4ed6bca1d49bc4665336566072 unavailable, block was likely uncled (block hash = 0x10aefdc2106412ed4cc688543040d4e7152d28d3d9a04be0c85267736b6e391f), provider: testnet-rpc-0, component: BlockIngestor
Probable cause: #371 (comment)

Actually, this is due to https://github.com/hashgraph/hedera-mirror-node/issues/4175

Blocks that return empty contractResult have 0 as timestamp. timestamp is seto to 0 here https://github.com/hashgraph/hedera-json-rpc-relay/blob/main/packages/relay/src/lib/eth.ts#L935 and is only updated if contractResults is not empty https://github.com/hashgraph/hedera-json-rpc-relay/blob/main/packages/relay/src/lib/eth.ts#L942-L945, otherwise it remains 0 and is set as 0 to the Block response https://github.com/hashgraph/hedera-json-rpc-relay/blob/main/packages/relay/src/lib/eth.ts#L976

Will be fixed by #432

Trying to make contract calls from an eventHandler results in (tried agains all test nodes). Also replicated directly through the SDK, both ContractCallQuery#getCost() and ContractCallQuery#execute() yield the same error.
[2022-08-09 08:31:01.777 +0000] ERROR (...): Failed to successfully submit contractCallQuery
    err: {
      "type": "Error",
      "message": "max attempts of 10 was reached for request with last error being: BUSY",
      "stack":
          Error: max attempts of 10 was reached for request with last error being: BUSY
              at CostQuery.execute (/Users/.../Projects/hedera/hedera-json-rpc-relay/node_modules/@hashgraph/sdk/lib/Executable.cjs:715:11)
    }

Maybe not related, but the relay complains that ContractId.fromSolidityAddress() is deprecated and has to use ContractId.fromEvmAddress(), but it seem fromEvmAddress() does not produce a correct ContractId
Both ContractId.fromEvmAddress(0, 0, "0x0000000000000000000000000000000002d9fa89") and ContractId.fromEvmAddress(0, 0, "0000000000000000000000000000000002d9fa89") will return
ContractId {
  shard: Long { low: 0, high: 0, unsigned: false },
  realm: Long { low: 0, high: 0, unsigned: false },
  num: Long { low: 0, high: 0, unsigned: false },
  evmAddress: <Buffer 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 d9 fa 89>,
  _checksum: null
}```

Being able to capture HTS token transfers through HTS precompile -> Should be working. Must be tested (cc @dimitrovmaksim )

Deploy BaseHTS contract
Create token via createFungibleTokenPublic
Associate token to owner and receiver via BaseHTS associateTokenPublic
Transfer token via mock ERC20 contract's transfer(to, amount)

Event is emitted and indexed.
Note: Using hedera-local-node main branch results in the wrong event contract/token, from and to addresses being emitted, because the it uses older docker images. Later version have this fixed. Maybe create a dev branch in the hedera-local-node where the docker images are updated or uses the latest images, so it easier to test.

Related issues:
https://github.com/hashgraph/hedera-json-rpc-relay/issues/644


New Model for creation of neutron net and subnet and translating CP type.

test this please

test this please


Fixed case of cy8c6xxa target in board ID list

This fixes the is_target_supported property of pyocd json --boards for the CY8CPROTO-062-4343W.
Before:
{
  "id": "1901",
  "name": "CY8CPROTO-062-4343W",
  "target": "cy8c6xxA",
  "binary": "l1_cy8c6xxa.bin",
  "is_target_builtin": false,
  "is_target_supported": false
}

After, is_target_supported is true:
{
  "id": "1901",
  "name": "CY8CPROTO-062-4343W",
  "target": "cy8c6xxa",
  "binary": "l1_cy8c6xxa.bin",
  "is_target_builtin": true,
  "is_target_supported": true
}

@flit  @0xc0170  Can you please take a look at it? Mbed Studio started using the is_target_supported field in version 1.2.0 (released last week).

/morph test

It really should be using a case-insensitive comparison, since the comparison for the --target argument is case-insensitive.

(test failure was an intermittent gdb_test.py failure unrelated to this code.)

/morph test


[bugfix] remove en-SG.js

I'm also facing build issues as described in issue 5480 because the locale folder has both en-SG.js and en-sg.js. 2.25.0 added en-sg.js without removing en-SG.js.
This PR removes en-SG.js.

Coverage remained the same at 88.468% when pulling 135e1e518ced99924c19672d5a4aee06c8f5e1de on vor89:vor89/remove-en-SG into 36a817d94eab0f070bbcc7d8431631ee71400b89 on moment:develop.

Intentionally edited locale/*

This was fixed in 728cc23e87ca29318c7492d653168c4481500358


fix: Parse multiple label values for same key

Changes --labels and --skip-labels parsing logic to allow for multiple values for the same label key.
Fixes: #194

@embano1 thank you for the awesome contribution. At a high-level, this looks good to me. Pinging @harshanarayana for a second opinion.

Thx! There was a bit of refactoring involved, so please let me know if you're all happy with that. No prob to change...

Let me check this first thing tomorrow.

Thanks @embano1  for this great contribution. Looks good for me over all. Marking it ok for tests to be run.
/ok-to-test

@harshanarayana thx for your critical eye! How about reverting the case-insensitivity for now?

I like the reviews. I am don't feel strongly (either way) about the case sensitivity. I know @embano1 has been going back and forth due to my suggestion. Nevertheless, if the final state includes case-insensitivity then we simply could just document it. If we revert back to sensitive cases (which i think that's how it worked originally) then nothing changes.  I think this is really close to getting in.

I think this is really close to getting in.

@vladimirvivien @embano1 Let us move it back to the original format for now (case sensitive) if @embano1  doesn't mind doing that and open a different issue to track the changes required for getting the case insensitive keys for label filters ?
Other than this one thing I don;t have any change requests from my end either.

Yup, I'm also in favor of reverting and I'll create a tracking issue for the case-insensitivity.

Created a tracking issue #198 and added a test which will break once we add case-insensitive handling so we capture such changes in CI.


Option to replace shield() with another runtime validator (e.g. zod)

I have been using drizzle orm for database typing generation. I have a enum I want to expose as a function parameter. I have created the type but I'm not sure if I can pass it onto the field, as it seems like shield is expecting a certain type of typing input in order for it to work.
I know how to specify enum from shield, but is it possible to allow custom typing such as drizzle to be used instead?
Example
import { recordType } from '../../../server/drizzle/schema';

type RecordType = typeof recordType

const t = shield.type;

const hello = shield(
  [{
    recordType: t.or(
      t.const('HIDDEN'),
      t.const('PENDING'),
      t.const('CONFIRMED')
    ), <<<<---- replace it with RecordType?
    year: t.number,
    timezone: t.string
  }],

I agree it would be nice, but it's far from trivial, and not even possible if drizzle doesn't support type inference.
As for adding support for Zod, it's a consideration but so far shield() seems to be working for the (vast?) majority of use cases. Especially when following the recommendation depicted at https://telefunc.com/event-based.
Closing as I don't think it should be a priority right now: so far, I don't see the added value to be worth the effort. Feel free to object and elaborate.
Contribution or sponsoring welcome.

I agree it would be nice, but it's far from trivial, and not even possible if drizzle doesn't support type inference.
As for adding support for Zod, it's a consideration but so far shield() seems to be working for the (vast?) majority of use cases. Especially when following the recommendation depicted at https://telefunc.com/event-based.
Closing as I don't think it should be a priority right now: so far, I don't see the added value to be worth the effort. Feel free to object and elaborate.
Contribution or sponsoring welcome.

I don't know what is the right solution, I am just thinking if there is a better integration of type validation with other libraries such as drizzle or zod.

better integration [...] with other libraries such as drizzle

I agree that'd be nice. But, again, I don't know if it's possible: does Drizzle types support runtime validation like Zod does?
As for Zod, I still don't see much of an added value compared to shield(). But feel free to elaborate if you think otherwise. (I understand Zod has semantic validation such as email validation, but such semantic validation doesn't add any value regarding TypeScript runtime validation.)

I'm not against this at all. I'm just waiting for a good reason for implementing this. Labeling this as low-prio until then.

Actually, form data is a valid use case for this as explained at https://github.com/brillout/telefunc/issues/105.
Removing low-prio 🐌, but there are still other higher priorities: https://github.com/brillout/telefunc/issues?q=is%3Aissue+is%3Aopen+label%3A"high-prio+💫".
That said, contribution or sponsoring welcome.
If someone wants to contribute, we can start by having a look at how tRPC does it.

I'm thinking, maybe an alternative could be to allow users to use Telefunc's shield() independently of Telefunc. There are zillions of runtime validators, can't we just implement one that works for the vast majority of use cases? Or are there really that many use cases that justify being able to pick a validator that fits best? (As for semantic validation, the user could use a semantic validator in addition to using shield().)

shield handles basic use cases well, but it doesn't seem to allow defining more complex use cases such as array structure, nested object structure, etc. If shield can be extended with other custom validator and it works well then it would be very useful.
But the use case this post is about isn't about extensibility. I'm asking if it is possible if I can have my typescript types to be used with shield.

@pencilcheck Can you elaborate your use case for needing complex Telefunction arguments? Are you following https://telefunc.com/event-based?


Added newline to jumbotron.

OCD was flipping..

The converter preserves the original formatting, please submit this and other non-conversion related changes upstream: https://github.com/twbs/bootstrap.


Remove doubled 'context' in template parameters.

Changes in this PR:
As well as being confusing this was causing problems for template re-use, where an include was used in two places - one with the extra 'context' variable on the context, and another without. This removes the extra 'context' everywhere it's used for consistency - further refactoring to come to tidy up the views and remove duplication.

Codecov Report

Merging #825 (13fc4a3) into main (911bb01) will increase coverage by 0.09%.
The diff coverage is 94.11%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##             main     #825      +/-   ##
==========================================
+ Coverage   88.65%   88.75%   +0.09%
==========================================
  Files          37       37
  Lines        1604     1618      +14
  Branches       56       56
==========================================
+ Hits         1422     1436      +14
  Misses        168      168
  Partials       14       14

Impacted Files
Coverage Δ

judgments/tests/test_unlock.py
100.00% <ø> (ø)

judgments/views/delete.py
41.17% <0.00%> (ø)

judgments/views/results.py
42.85% <0.00%> (ø)

judgments/tests/test_judgments.py
100.00% <100.00%> (ø)

judgments/tests/tests.py
100.00% <100.00%> (ø)

judgments/views/full_text.py
76.92% <100.00%> (+0.36%)
:arrow_up:

judgments/views/index.py
83.33% <100.00%> (ø)

judgments/views/judgment_edit.py
81.00% <100.00%> (+0.38%)
:arrow_up:

judgments/views/judgment_hold.py
100.00% <100.00%> (ø)

judgments/views/judgment_publish.py
100.00% <100.00%> (ø)

... and 2 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Implement SymbolVisitors in terms of any

Going with https://github.com/crate/crate/pull/16241 instead


Docs have incorrect pointers to schema files

What are the schemas that are affected by the issue
Probably all, definitely profile (https://github.com/adobe/xdm/blob/master/docs/reference/context/profile.schema.md)
and extensibility base schema
(https://github.com/adobe/xdm/blob/master/docs/reference/common/extensible.schema.md)
The links look like this:
https://github.com/adobe/xdm/blob/master/docs/reference/context/context/profile.schema.json
and should be changed to look like this:
https://github.com/adobe/xdm/blob/master/schemas/context/profile.schema.json

@jasonboyer I would like to take this up.


SAK-32600 keyboard arrow navigation for tabs in Sites dialog

My main question for @mclare: should a right arrow key inside the tabs just move focus or should it simulate a focus() + click()?

Sorry to ask, but what's the difference?
The tab panel should be tab'able.  Yes, once any tab in the group has focus, left and right should move between them.
Naively, if the focus is set, there's no longer a need to simulate a click, as we're past that point.  Assuming there tab has no other JavaScript responsibilities.
A11y project has a good example: http://a11yproject.com/patterns.html#accordions-and-tabs and https://codepen.io/BeyondHyper/pen/xZXXzj  Works as expected with a keyboard and simulated touch.  It's only listening for clicks, not simulating them.
Does that help?

Okay, your examples all have arrow keys that select the new tab (and of course, move focus). My code here just used the arrow keys to change the selected tab (focus) while not actually clicking/selecting the new tab ....


Streaming in NodeJS

const sleep = d => new Promise(r => setTimeout(r, d * 1000));

const stream = async (hkubeApi, msgPerSec) => {
    const obj = { data: 'hello' };
    const sleepTime = (1.0 / msgPerSec);
    let resolve;
    let reject;

    console.log(`started stateful stream with ${msgPerSec} msg per second`)

    const promise = new Promise((res, rej) => {
        resolve = res;
        reject = rej;
    });

    try {
        while (active) {
            hkubeApi.sendMessage(obj);
            await sleep(sleepTime);
        }
        if (!active) {
            return resolve();
        }
    }
    catch (e) {
        return reject(e);
    }
    return promise;
}

const receive = async (hkubeApi, delay) => {
    let resolve;
    console.log(`started stateful receiver with ${delay} sec delay`)

    const promise = new Promise((res) => {
        resolve = res;
    });

    const handleMessage = async ({ payload, origin }) => {
        await sleep(delay);
    }

    hkubeApi.registerInputListener(onMessage = handleMessage)
    hkubeApi.startMessageListening();

    setInterval(() => {
        if (!active) {
            return resolve();
        }
    }, 1000);
    return promise;
}


[BUG] Installation of nerd fonts does not work

As the title suggests, nerd-fonts module does not seem to work.
I tested installing JetBrainsMono and other two but it does not work.
i.e., the fonts do not get installed
https://github.com/RVSmooth/AllBlue/actions/runs/12154254900/job/33893721674#step:2:2584
Tested on

Bluefin image
Ublue-main image

There was a recent issue with the fonts module, which was filed under the correct repo here: https://github.com/blue-build/modules/issues/371
It was also promptly fixed by fiftydinar six hours ago, and should work now.
It looks like your build is not actually running the fonts module again, but running adding a version of the layer from GitHub cache; likely one where the module failed to do anything. To invalidate the GitHub cache you can make changes to your fonts module configuration, or to anything before it in your recipe. The cache should also invalidate automatically after a while, so tomorrow's builds should have the fonts module working again.
Feel free to comment on https://github.com/blue-build/modules/issues/371 if the fonts module does not start working again.

Thanks for the reply. And sorry I couldn't think of the issues of modules being at a separate repo and created another issue.

There was a recent issue with the fonts module, which was filed under the correct repo here: blue-build/modules#371
It was also promptly fixed by fiftydinar six hours ago, and should work now.
that's really cool

It looks like your build is not actually running the fonts module again, but running adding a version of the layer from GitHub cache; likely one where the module failed to do anything. To invalidate the GitHub cache you can make changes to your fonts module configuration, or to anything before it in your recipe. The cache should also invalidate automatically after a while, so tomorrow's builds should have the fonts module working again.
Alright I will try it again.
Feel free to comment on blue-build/modules#371 if the fonts module does not start working again.


Youtube age-gated link fails even with cookies

Checklist

[x] I'm reporting a broken site support issue
[x] I've verified that I'm running youtube-dl version 2020.11.29
[x] I've checked that all provided URLs are alive and playable in a browser
[x] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[x] I've searched the bugtracker for similar bug reports including closed ones
[x] I've read bugs section in FAQ

Verbose log

**Python 2.7 log**
youtube-dl -v --cookies /Users/username/Downloads/cookies.txt -F https://www.youtube.com/watch?v=XgnwCQzjau8
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-v', u'--cookies', u'/Users/username/Downloads/cookies.txt', u'-F', u'https://www.youtube.com/watch?v=XgnwCQzjau8']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2020.11.29
[debug] Python version 2.7.16 (CPython) - Darwin-20.1.0-x86_64-i386-64bit
[debug] exe versions: none
[debug] Proxy map: {}
[youtube] XgnwCQzjau8: Downloading webpage
[youtube] XgnwCQzjau8: Downloading embed webpage
[youtube] XgnwCQzjau8: Refetching age-gated info webpage
ERROR: Watch this video on YouTube. Playback on other websites has been disabled by the video owner.
Traceback (most recent call last):
  File "./youtube-dl/youtube_dl/YoutubeDL.py", line 803, in wrapper
    return func(self, *args, **kwargs)
  File "./youtube-dl/youtube_dl/YoutubeDL.py", line 824, in __extract_info
    ie_result = ie.extract(url)
  File "./youtube-dl/youtube_dl/extractor/common.py", line 532, in extract
    ie_result = self._real_extract(url)
  File "./youtube-dl/youtube_dl/extractor/youtube.py", line 2053, in _real_extract
    raise ExtractorError(error_message, expected=True)
ExtractorError: Watch this video on YouTube. Playback on other websites has been disabled by the video owner.

**Python 3.9 log**
python3 ./youtube-dl -v --cookies /Users/username/Downloads/cookies.txt -F https://www.youtube.com/watch?v=XgnwCQzjau8
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-v', '--cookies', '/Users/username/Downloads/cookies.txt', '-F', 'https://www.youtube.com/watch?v=XgnwCQzjau8']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2020.11.29
[debug] Python version 3.9.0 (CPython) - macOS-10.16-x86_64-i386-64bit
[debug] exe versions: none
[debug] Proxy map: {}
[youtube] XgnwCQzjau8: Downloading webpage
[youtube] XgnwCQzjau8: Downloading embed webpage
[youtube] XgnwCQzjau8: Refetching age-gated info webpage
ERROR: Watch this video on YouTube. Playback on other websites has been disabled by the video owner.
Traceback (most recent call last):
  File "/Users/sy/Downloads/youtube-dl-master/./youtube-dl/youtube_dl/YoutubeDL.py", line 803, in wrapper
    return func(self, *args, **kwargs)
  File "/Users/sy/Downloads/youtube-dl-master/./youtube-dl/youtube_dl/YoutubeDL.py", line 824, in __extract_info
    ie_result = ie.extract(url)
  File "/Users/sy/Downloads/youtube-dl-master/./youtube-dl/youtube_dl/extractor/common.py", line 532, in extract
    ie_result = self._real_extract(url)
  File "/Users/sy/Downloads/youtube-dl-master/./youtube-dl/youtube_dl/extractor/youtube.py", line 2053, in _real_extract
    raise ExtractorError(error_message, expected=True)
youtube_dl.utils.ExtractorError: Watch this video on YouTube. Playback on other websites has been disabled by the video owner.

Description

Test link:
https://www.youtube.com/watch?v=XgnwCQzjau8
With and without cookies, no matter what Python version it is the output is always the same - ERROR: Watch this video on YouTube. Playback on other websites has been disabled by the video owner.
Two log for each python version above.
Is this a bug that can be fixed or am I doing something wrong?

youtube-dl will work on some age gated videos, however ones like this link - https://www.youtube.com/watch?v=XgnwCQzjau8
will work youtube-dlc with cookies and being signed into youtube.


Incorrect Jacoco version downloading

Expected Behavior
Gradle download my fork of jacoco with full name of version including dashes from certain maven repo
Current Behavior
Gradle truncate jacoco version before first dash and tries to download it from certain maven repo (thru exclusiveContent)
Context (optional)
I have my own fork of jacoco from some branch with fixes to work correctly with R8. It's uploaded to my company own nexus and it's has name "0.8.9-r8-fix".  Starting from Gradle 8.2.+ it somehow truncate it before first dash and tries to download from private nexus and obviously it's ends with fail
Steps to Reproduce

Build jacoco with your own name including dashes(ex 0.8.9-r8-fix)
Upload it to private nexus
Setup exclusiveContent to download lib from this repo
Update Gradle to 8.2.+
Set this version to version from step 1 in gradle(I'm using android so I'm setting it like android { testCoverage.jacocoVersion = "0.8.9-r8-fix" }
Enable testCoverageEnabled = true in buildType configuration (if using android gradle plugin)
Try to build with downloading it from your private nexus

Gradle version
8.2.+
Build scan URL (optional)
No response
Your Environment (optional)
No response

Sorry that you're having trouble with Gradle!
We appreciate the effort that went into filing this issue, but we must ask for more information.
As stated in our issue template, a minimal reproducible example is a must for us to be able to track down and fix your problem efficiently. Our available resources are severely limited, and we must be sure we are looking at the exact problem you are facing.
If we have a reproducer, we may be able also to suggest workarounds or ways to avoid the problem.
The ideal way to provide a reproducer is to leverage our reproducer template. You can also use Gradle Project Replicator to reproduce the structure of your project.
This issue will be closed after 7 days unless you provide more information.

It seems like there is an issue with dependency resolution. However, 8.2 release doesn't have obvious changes in this area. Could you provide a more isolated reproducer as described above, please? Is it reproducible without android plugin? Is it reproducible with other dependencies?

I gave you all information to reproduce
I cannot create sample with your private nexus
did you try to follow my steps to reproduce?

There is a lot of moving parts in your steps to reproduce. Of course, you cat use "our" private nexus, but if it is a bug and not an environment issue, then you should be able to reproduce it with mavenLocal. I'm asking you to provide an isolated reproducer using the template above so it would be easier to understand the root cause of the issue. Please, answer my questions in the previous message too.


[ci skip] adding user @mthh

Hi! This is the friendly automated conda-forge-webservice.
I've added user @mthh as instructed in #21.
Merge this PR to add the user. Please do not rerender this PR or change it in any way. It has [ci skip] in the commit message to avoid pushing a new build and so the build configuration in the feedstock should not be changed.
Please contact conda-forge/core to have this PR merged, if the maintainer is unresponsive.
Fixes #21

@conda-forge/core, do you think you can merge this PR so that I can become maintainer of this repo ?
(@nickp60, the original maintainer, hasn't been responsive on this repo the last few weeks on #19)

Hi! This is the friendly automated conda-forge-webservice.
I was asked to ping @conda-forge/core and so here I am doing that.


Materialized tests do not work

Trying to run a materialized test leads to the following error:
12:09:48  Completed with 1 error and 0 warnings:
12:09:48
12:09:48  Compilation Error in macro decodable__create_table_as (macros/materializations/table/create_table_as.sql)
12:09:48    macro 'dbt_macro__decodable__create_table_as' takes not more than 3 argument(s)
12:09:48
12:09:48    > in macro create_table_as (macros/materializations/models/table/create_table_as.sql)
12:09:48    > called by macro statement (macros/etc/statement.sql)
12:09:48    > called by macro materialize_test_as_table (macros/materializations/test/test_as_table.sql)
12:09:48    > called by macro materialization_test_decodable (macros/materializations/test/test.sql)
12:09:48    > called by macro decodable__create_table_as (macros/materializations/table/create_table_as.sql)

Looking at the code, I see that the create_table_as macro takes only 3 arguments, while the test_as_table macro tries to call it with 4

It looks like even when removing the 4th argument from the test_as_table macro, it still fails because the target stream that is created is an append stream, and the pipeline that is created produces changes events that cannot be entered into this stream.
To verify this, I manually created the target stream as a change stream and removed the code raising an error if the target stream cannot be created. This resolved the issue, but surfaced another one (see next post).

When the pipeline for a materialized test is activated, it uses starting position latest. While this is in line with the interpretation of materialized tests as continuous testing of the model, it is different from the behavior when not materializing the test and surprised me at first. In my opinion, it would be desirable to either start from earliest or at least make it configurable.


Add possibility to load config file from cjs file

[closes #6911]
Purpose
The newest NodeJS version requires indicating modules loading framework to use (CommonJS or ESM) by using extension file. .js extension is now for using ESM and .cjs for CommonJS.
Currently, from newest NodeJS, it is not possible to use CommonJS framework for TestCafe global configuration file (.testcaferc.js), because this file has to be named .testcaferc.cjs
Approach
This PR allows loading .testcaferc.cjs as TestCafe global configuration file.

@gigaga
Please fix lint errors - https://github.com/DevExpress/testcafe/actions/runs/4654867081/jobs/8236970726

miherlosev

Hi !
It's done ;)

Please fix server tests.

It's done. However, It is not possible to ensure that the whole of tests is ok because it seems not possible to be executed on local env. Isn't it?
Regards,

It's possible. I see a lot of excessive formatting changes in the current version of the commit. Please roll back these changes.

Hi,
I fixed again lint issues... :(

You still have a few ESLint errors. Please fix them.

Hi,
I'm not sure but I think that the tests are ko, it is not related to my changes.
Regards,

I'm not sure but I think that the tests are ko, it is not related to my changes.

Please run the test-server gulp task locally and fix the failed tests.

I'm not sure but I think that the tests are ko, it is not related to my changes.

Please run the test-server gulp task locally and fix the failed tests.

It is done ;)

The last issue is due to an invalid content in Docker image. Indeed, the content of const Extensions            = require('../../lib/configuration/formats'); corresponds to the old value (came from original Docker image FROM testcafe/testcafe:$tag ?):
{
  JS_CONFIGURATION_EXTENSION: '.js',
  JSON_CONFIGURATION_EXTENSION: '.json',
  CONFIGURATION_EXTENSIONS: [ '.js', '.json' ]
}

And expected should be
{
  "js": ".js",
  "json": ".json",
  "cjs": ".cjs"
}

So, the configurations made with createJsTestCafeConfigurationFile or createJSONTestCafeConfigurationFile are invalid because path is undefined.
I don't know how to fix it...

Rebase please.

Hi @miherlosev

Before rebasing, I had some tests failed as describing before (old content of Docker image of test/docker/Dockerfile)

After rebasing, the build of Docker image test/docker/Dockerfile is failed due to Error: ENOENT: no such file or directory, open './package.json'. I executed npx gulp docker-server-test-run --steps-as-tasks

Regards,

;)


Make IP address parametizable

There are scenarios were you need/have to change the port this vm is on because of conflicts and whatnot, and you can change it using vagrant but then there are static references to the IP in the repo that causes certain things to break https://github.com/concourse/concourse-lite/search?utf8=✓&q=100

There was a PR for this but it broke things, so we had to revert it: https://github.com/concourse/concourse-lite/pull/13

Moved to concourse/concourse#1144


gmail.get.localization() does not return the right result.

I've tested this issue and this particular bug seems fixed at the time of writing. Closing.


add enabled configuration for metrics

Signed-off-by: zhengyangyong<EMAIL_ADDRESS>Ⅰ. Describe what this PR did
add a new configuration enabled for metrics:
## metrics settings
metrics {
  enabled = true                                          <-------- new
  registry-type = "compact"
  # multi exporters use comma divided
  exporter-list = "prometheus"
  exporter-prometheus-port = 9898
}

Ⅱ. Does this pull request fix one issue?

Ⅲ. Why don't you add test cases (unit test/integration test)?
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

Codecov Report

Merging #1266 into develop will decrease coverage by 0.03%.
The diff coverage is 62.5%.

@@              Coverage Diff              @@
##             develop    #1266      +/-   ##
=============================================
- Coverage      49.47%   49.43%   -0.04%
  Complexity      1651     1651
=============================================
  Files            326      326
  Lines          11439    11441       +2
  Branches        1415     1416       +1
=============================================
- Hits            5659     5656       -3
- Misses          5153     5155       +2
- Partials         627      630       +3

Impacted Files
Coverage Δ
Complexity Δ

...ava/io/seata/core/constants/ConfigurationKeys.java
0% <ø> (ø)
0 <0> (ø)
:arrow_down:

...n/java/io/seata/server/metrics/MetricsManager.java
76.92% <62.5%> (-4.9%)
5 <2> (ø)

...server/store/file/FileTransactionStoreManager.java
45.99% <0%> (-1.4%)
19% <0%> (ø)

Continue to review full report at Codecov.

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


jenkins: openpower-controller.osuosl.org: Name or service not known

The following is happening about 144 times per day. Each instance generates about 50 lines of exception trace in the jenkins log so is therefore now a good proportion of the size of the logs :-)
java.net.UnknownHostException: openpower-controller.osuosl.org: Name or service not known
	at java.base/java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
	at java.base/java.net.InetAddress$PlatformNameService.lookupAllHostAddr(InetAddress.java:934)
[...]
	at org.openstack4j.connectors.okhttp.HttpExecutorServiceImpl.invoke(HttpExecutorServiceImpl.java:52)
[...]

This is the hostname referenced in the OSUOSL cloud configuration under the openstack plugin at https://ci.adoptium.net/manage/cloud/osuosl/

Node has changed to openpower-openstack.osuosl.org although the credential we're using no longer seems to be valid for that instance so I've set the credential to None for now in order to alleviate the log pollution. We'll need to decide whether to keep using this and acquire a suitable set of automation credentials, or delete the configuration. Noting that jenkins doesn't seem to provide a way to disable a particular cloud configuration, otherwise I would have done that instead.


[ENHANCEMENT] Workaround for Video Upload Date

Is your feature request related to a problem? Please describe.
No
Describe the solution you would like*
Hi, I am using this package in my project and made a simple workaround to get the video upload date in Javascript Date format.
It's not ideal, but it can replace the current text.
I made a simple example using axios. I set the default language English in the request to get only date and time text in English.
After that, a function extracts the time from the text and converts it to the Data object.
https://gist.github.com/rafaeljustinox/620a0950c1e952c7ca4587aef0ba21ea
It is just an idea that works for me because I only need the date, but when the text allows, I convert to hours and minutes as well.

This is a good idea! I will probably add this. I still need to check what are the drawbacks.

I decided to leave the uploadDate as is and let the user parse the date if needed, mostly because the parsed result is inconsistent and I don't really like it, and this also allows the user to translate the uploadDate to any language they want if needed.


examples/kubernetes: clean k8s descriptors

Clean up the k8s descriptors in particular removing non-existing fields
(namespace) for non-namespaced objects and setting the right API
Version.
Signed-off-by: André Martins<EMAIL_ADDRESS>

This change is

test-me-please

Coverage increased (+0.04%) to 42.966% when pulling 8741798aeab8de0d957e4948e8e607a1720c29f1 on pr/clean-k8s-descriptors into 70277b966fd5fcf38c86376dd0fb2aa257366803 on master.


Unable to Resolve Kotlin Lint Plugin

Description:
I'm facing an issue when trying to build my project using Gradle. The build fails with the following error message:
Plugin [id: 'org.jmailen.kotlinte', version: '3.16.0'] was not found in any of the following sources:

I have verified that my Gradle configuration is correct, and the plugin repository is accessible. However, the plugin doesn't seem to be resolving correctly. I'm using Gradle version 8.1.1 and Kotlin version 1.9.10.
Steps to Reproduce:
Expected Behavior:
The Kotlin Lint plugin should be resolved correctly, and the build should succeed.
Actual Behavior:
The build fails with the error mentioned above.
i want to mention that:
plugins {
    libs.plugins.apply {
        alias(android.application) apply false
        alias(kotlin.parcelize) apply false
        alias(android.library) apply false
        alias(kotlin.android) apply false
        alias(hilt.android) apply false
        alias(kapt) apply false
//        id("org.jmailen.kotlinter") version "3.16.0" apply false   // Works fine!
        alias(org.jmailen.kotlinter) // Build failed
        alias(libs.plugins.detekt) apply false
    }
}

Environment:
Operating System: [Windows 11]
Gradle Version: [ 8.1.1]
Kotlin Version: [1.9.10]
Additional Information:
I've checked the plugin repository availability, and my internet connection is working fine.
Please let me know if there's any additional information or steps I can provide to help resolve this issue.

The error message at least shows an 'r' missing on the end of the artifact id.

You are right, but i fixed this issue and try more and more but i got another error:
build-logic/build.gradle.kts
plugins {
    `kotlin-dsl`
}

group = "ir.buildlogic"

// Configure the build-logic plugins to target JDK 17
// This matches the JDK used to build the project, and is not related to what is running on device.
java {
    sourceCompatibility = JavaVersion.VERSION_17
    targetCompatibility = JavaVersion.VERSION_17
}

dependencies {
    compileOnly(libs.android.gradlePlugin)
    compileOnly(libs.kotlin.gradlePlugin)
    compileOnly(libs.detekt.gradlePlugin)
    compileOnly(libs.ktlint.kotlinter)  // when i add this line i got error as follows
}

gradlePlugin {
    plugins {
        register("androidApplication") {
            id = "composenews.android.application"
            implementationClass = "AndroidApplicationConventionPlugin"
        }
        register("androidApplicationCompose") {
            id = "composenews.android.application.compose"
            implementationClass = "AndroidApplicationComposeConventionPlugin"
        }

        register("androidHilt") {
            id = "composenews.android.hilt"
            implementationClass = "AndroidHiltConventionPlugin"
        }
        register("androidLibrary") {
            id = "composenews.android.library"
            implementationClass = "AndroidLibraryConventionPlugin"
        }
        register("androidLibraryCompose") {
            id = "composenews.android.library.compose"
            implementationClass = "AndroidLibraryComposeConventionPlugin"
        }
        register("androidFeature") {
            id = "composenews.android.feature"
            implementationClass = "AndroidFeatureConventionPlugin"
        }
        register("androidRoom") {
            id = "composenews.android.room"
            implementationClass = "AndroidRoomConventionPlugin"
        }
        register("androidDetekt") {
            id = "composenews.android.detekt"
            implementationClass = "AndroidDetektConventionPlugin"
        }
        register("androidKtlint") {
            id = "composenews.android.ktlint"
            implementationClass = "AndroidKtlintConventionPlugin"
        }
    }
}

ktlint-kotlinter = { group = "org.jmailen.gradle", name = "kotlinter-gradle", version = "kotlinter" }

Error :
Execution failed for task ':build-logic:convention:compileKotlin'.
> Could not resolve all files for configuration ':build-logic:convention:compileClasspath'.
   > Could not find org.jmailen.gradle:kotlinter-gradle:kotlinter.
     Searched in the following locations:
       - https://dl.google.com/dl/android/maven2/org/jmailen/gradle/kotlinter-gradle/kotlinter/kotlinter-gradle-kotlinter.pom
       - https://repo.maven.apache.org/maven2/org/jmailen/gradle/kotlinter-gradle/kotlinter/kotlinter-gradle-kotlinter.pom
       - https://plugins.gradle.org/m2/org/jmailen/gradle/kotlinter-gradle/kotlinter/kotlinter-gradle-kotlinter.pom
     Required by:
         project :build-logic:convention

Possible solution:
 - Declare repository providing the artifact, see the documentation at https://docs.gradle.org/current/userguide/declaring_repositories.html

any idea?

I believe the error you've got is fairly clear:

Could not find org.jmailen.gradle:kotlinter-gradle:kotlinter.

and based on it, I'm guessing the solution is to use proper maven coordinates, in your case:
ktlint-kotlinter = { group = "org.jmailen.gradle", name = "kotlinter-gradle", version = "3.16.0" }

or using a version reference.
ktlint-kotlinter = { group = "org.jmailen.gradle", name = "kotlinter-gradle", version.ref = "kotlinter" }


tidy the indention of html

Hi there Vicken,
I like the semantic structure you've followed as it's clear & legible.
After reading this http://www.granneman.com/webdev/coding/formatting-and-indenting-your-html/, a possible recommendation would be to indent paragraph content (see link)
:+1:


Question: React JS Component

Hi, Thank you for sharing the chart. It looks awesome.
I would like to know if is it possible to use the Chart as a React JS component that takes props (chart data)?
Otherwise could you please provide some guidance on how to transform the code into a Chart component?
Thank you

Hi @interpegasus, currently there isn't a NPM package to import the chart component into your own project. Your best bet is to copy the source code in https://github.com/tohjustin/coincharts/tree/master/src/components/Chart & make any necessary changes for your own use case...

Thank you!


Add a method where you can use the player’s balance

Currently there is no way to make Player A pay Player B depending on its balance (ex: a percentage of Player A) without causing a race condition. I would suggest having some parameter where it accepts a promise and that in the first argument it has the player A balance. Example:
$promise = function(int $balance) use($percentage){
    return $balance * $percentage / 100;
};
yield from $capital->payWithBalance(
    "SellHeads",
    $player1,
    $player2,
    $this->selector,
    $promise, //This could also be async just like `Capital::api()`
    new LabelSet(["reason" => "Claimed head"])
);

this can also be used for setBalance. Neat solution without making it easy to abuse like getMoney does.


Dependencies out of nowhere

Hi
I tried to install my own theme. It has no fishfile and no dependencies, but fisherman is still asuming some (see picture). Is this a problem with my theme or with fisherman? The theme works flawless, except for that message.

@Shadowigor Observed! I'll send a fix shortly. Thanks for reporting :)

Fixed! Thanks again.


Doki-Themed Material Icons

Description

Brought back a limited set of the Material Icons from the Legacy Doki Theme.

Directory Icons
File Icons
Limited set of PSI icons.

Motivation and Context

#189
How Has This Been Tested?

It works on: Linux, MacOS, and Windows 10.
Screenshots (if appropriate):

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] My code follows the code style of this project (lint passes clean).
[ ] I wrote tests for added functionality.
[X] I updated the version.
[X] I updated the changelog with the new functionality.


(ENG-891) Add baseMealSlug and proteinAddOn tags to recipe data retrieval

Description
The focus of this PR is to add two more recipe-level category tag values, baseMealSlug and proteinAddOn, to the return value of get_formatted_recipes_data() for label printing purposes. This PR also ensures that baseMealSlug, proteinAddOn, and all other existing recipe-level category tags are identified via their id--categoryId. Automated tests have been updated to confirm the expected behavior(s).
Test Plan
Open python interactive within galley-sdk: $ python
>>> from pprint import pprint (optional: to apply pretty print format to returned data)
>>> from galley.formatted_queries import *
>>> pprint(get_formatted_recipes_data(['cmVjaXBlOjE4Mzk4NA==']))

Expectation: A return value similar to:
[{'baseMealSlug': 'persephone-salad',
  'description': None,
  'externalName': None,
  'id': 'cmVjaXBlOjE4Mzk4NA==',
  'ingredients': [ ... ],
  'mealContainer': 'ts48'
  'mealType': 'lunch',
  'notes': None,
  'nutrition': { ... },
  'proteinAddOn': 'garbanzo-beans',
  'proteinType': 'vegan',
  'weight': 113.4}]

Run Automated Unittests
Exit python interactive and stay within the galley-sdk directory to run tests:
(galley-env) $ python3 -m unittest tests/test_formatted_queries.py
[OPTIONAL SANITY CHECK] (galley-env) $ python -m unittest tests/test_*.py
Versioning
v0.15.1 --> v0.16.0

@thunguy please resolve merge conflicts

@thunguy please resolve merge conflicts.

@dip-thistle Resolved. 😄


mayactl doesn't work for local persistent volumes.

Description

mayactl utility doesn't work for local volumes. None of the mayactl functionality is applicable for local volumes.

Expected Behavior

mayactl volume and pool utility should be working for all type of volumes.

Current Behavior

It doesn't work for local pvs.

Steps to Reproduce

Created local pv based storage class.

 apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
 annotations:
   cas.openebs.io/config: |
     - name: StorageType
       value: "hostpath"
     - name: BasePath
       value: "/var/openebs/local"
   openebs.io/cas-type: local
 creationTimestamp: 2019-05-13T04:54:31Z
 name: openebs-hostpath
 resourceVersion: "2344"
 selfLink: /apis/storage.k8s.io/v1/storageclasses/openebs-hostpath
 uid: 3202ba7c-753b-11e9-9241-42010a8001d5
provisioner: openebs.io/local
reclaimPolicy: Delete
volumeBindingMode: WaitForFirstConsumer

Created volumes using above storage class.

pvc-6329f203-753e-11e9-9241-42010a8001d5   5G         RWO            Delete           Bound    app-busybox-ns/openebs-busybox-busybox-0   openebs-hostpath            4h33m
pvc-64f1b3ed-753e-11e9-9241-42010a8001d5   5G         RWO            Delete           Bound    app-busybox-ns/openebs-busybox-busybox-1   openebs-hostpath            4h33m

The above volumes are not detected by mayactl.

bash-4.3#  curl <IP_ADDRESS>:5656/latest/volumes/
{"items":[],"metadata":{},"metalist":{}}

Details:
mayactl version
Version: 0.9.0-unreleased
Git commit: bbfe7cde5f3ac4db74a1634ef55dff459fbebe2b
GO Version: go1.11.2
GO ARCH: amd64
GO OS: linux
m-apiserver url:  http://<IP_ADDRESS>:5656
m-apiserver status:  running

mayactl is going to deprecated in upcoming releases, so this issue is no longer valida in case of local PV.
We are working on kubectl plugin called openebsctl to support all types of volumes in coming future


TagHelpers.output.cache is not updated correctly

Repro:

Create a simple app with a tag helper and RazorCompileOnBuild enabled
Build and make sure TagHelpers.output.cache contains the serialized tag helper
Delete the tag helper from the app
Build again

Expected:
TagHelper.output.cache is empty
Actual:
TagHelper.output.cache still contains the deleted tag helper but the timestamp is updated
I am adding a test that covers this as we didn't have any.
cc @pranavkm @rynowak

Hey @ajaybhargavb, how critical is this? Should this be part of preview2?

The issue here is that the test is invoking the /t:RazorGenerate target in isolation without calling compile. Razor Sdk wires itself after Build, but does not call Build itself (i.e. do a DependsOn="Build"). We have two close analogies for this behavior - XamlPrecompile and CreateSatelliteAssemblies - both of which depend on build outputs, but don't invoke build. We should follow suit and leave the behavior as is. I'll change this to an integration test that calls Build multiple times.

Great to hear there is no actual bug 👍
Will we need to change all the other tests that invoke RazorGenerate target directly? Or is this the only test that relies on Build having to run?

Well, what do you know. There's a bug. Fixing it 😄

You guys are pretty crazy.


[SUPPORT] MongoDB CDC Changes in Hudi

Tips before filing an issue

Have you gone through our FAQs? FAQ link is not working

Describe the problem you faced
I noticed that the source class for reading data from Kafka topics populated by Debezium is available for PostgreSQL and MySQL, but I couldn’t find one for MongoDB. Has anyone successfully ingested MongoDB CDC changes into a Hudi table?
Any guidance or suggestions would be greatly appreciated!
Environment Description

Hudi version : 0.15

Spark version : 3.3.4

Hive version : n/a

Hadoop version :  n/a

Storage (HDFS/S3/GCS..) : S3

Running on Docker? (yes/no) : No

Add the stacktrace of the error.

@demoaccount2015 Already discussed on slack thread - https://apache-hudi.slack.com/archives/C4D716NPQ/p1735295183318699?thread_ts=1735148770.699559&cid=C4D716NPQ
Closing the issue.


make serve-quick fails on main

I just pulled the repo for the first time.
After:
make create-env
make install
make serve-quick

make serve-quick fails on main with:
Liquid Exception: undefined method `[]' for nil:NilClass in /home/paul/git/training-material/_layouts/faq-page.html
                    ------------------------------------------------
      Jekyll 4.3.2   Please append `--trace` to the `serve` command
                     for any additional information or backtrace.
                    ------------------------------------------------
Traceback (most recent call last):
        83: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/bin/jekyll:32:in `<main>'
        82: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/bin/jekyll:32:in `load'
        81: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/exe/jekyll:15:in `<top (required)>'
        80: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/mercenary-0.4.0/lib/mercenary.rb:21:in `program'
        79: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/mercenary-0.4.0/lib/mercenary/program.rb:44:in `go'
        78: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `execute'
        77: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `each'
        76: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `block in execute'
        75: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/commands/serve.rb:86:in `block (2 levels) in init_with_program'
        74: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/command.rb:91:in `process_with_graceful_fail'
        73: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/command.rb:91:in `each'
        72: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/command.rb:91:in `block in process_with_graceful_fail'
        71: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/commands/build.rb:36:in `process'
        70: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/commands/build.rb:65:in `build'
        69: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/command.rb:28:in `process_site'
        68: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/site.rb:80:in `process'
        67: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/site.rb:211:in `render'
        66: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/site.rb:563:in `render_pages'
        65: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/site.rb:563:in `each'
        64: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/site.rb:564:in `block in render_pages'
        63: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/site.rb:572:in `render_regenerated'
        62: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/renderer.rb:63:in `run'
        61: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/renderer.rb:93:in `render_document'
        60: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/renderer.rb:161:in `place_in_layouts'
        59: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/renderer.rb:192:in `render_layout'
        58: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/renderer.rb:129:in `render_liquid'
        57: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/liquid_renderer/file.rb:36:in `render!'
        56: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/liquid_renderer/file.rb:70:in `measure_time'
        55: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/liquid_renderer/file.rb:37:in `block in render!'
        54: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/liquid_renderer/file.rb:63:in `measure_bytes'
        53: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/liquid_renderer/file.rb:38:in `block (2 levels) in render!'
        52: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/liquid_renderer/file.rb:59:in `measure_counts'
        51: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/liquid_renderer/file.rb:39:in `block (3 levels) in render!'
        50: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/template.rb:218:in `render!'
        49: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/template.rb:205:in `render'
        48: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/template.rb:240:in `with_profiling'
        47: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/template.rb:206:in `block in render'
        46: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/block_body.rb:82:in `render'
        45: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/block_body.rb:103:in `render_node_to_output'
        44: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/tags/for.rb:79:in `render'
        43: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/tags/for.rb:150:in `render_segment'
        42: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/context.rb:123:in `stack'
        41: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/tags/for.rb:158:in `block in render_segment'
        40: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/tags/for.rb:158:in `each'
        39: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/tags/for.rb:160:in `block (2 levels) in render_segment'
        38: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/block_body.rb:91:in `render'
        37: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/block_body.rb:103:in `render_node_to_output'
        36: from /home/paul/git/training-material/_plugins/snippet.rb:45:in `render'
        35: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/context.rb:123:in `stack'
        34: from /home/paul/git/training-material/_plugins/snippet.rb:47:in `block in render'
        33: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/inclusion.rb:16:in `render'
        32: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/liquid_renderer/file.rb:36:in `render!'
        31: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/liquid_renderer/file.rb:70:in `measure_time'
        30: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/liquid_renderer/file.rb:37:in `block in render!'
        29: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/liquid_renderer/file.rb:63:in `measure_bytes'
        28: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/liquid_renderer/file.rb:38:in `block (2 levels) in render!'
        27: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/liquid_renderer/file.rb:59:in `measure_counts'
        26: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/jekyll-4.3.2/lib/jekyll/liquid_renderer/file.rb:39:in `block (3 levels) in render!'
        25: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/template.rb:218:in `render!'
        24: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/template.rb:205:in `render'
        23: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/template.rb:240:in `with_profiling'
        22: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/template.rb:206:in `block in render'
        21: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/block_body.rb:91:in `render'
        20: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/block_body.rb:103:in `render_node_to_output'
        19: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/tags/assign.rb:26:in `render'
        18: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/variable.rb:82:in `render'
        17: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/variable.rb:82:in `inject'
        16: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/variable.rb:82:in `each'
        15: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/variable.rb:84:in `block in render'
        14: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/context.rb:86:in `invoke'
        13: from /home/paul/mambaforge/envs/galaxy_training_material/envs/galaxy_training_material/share/rubygems/gems/liquid-4.0.4/lib/liquid/strainer.rb:56:in `invoke'
        12: from /home/paul/git/training-material/_plugins/jekyll-topic-filter.rb:567:in `topic_filter'
        11: from /home/paul/git/training-material/_plugins/jekyll-topic-filter.rb:25:in `topic_filter'
        10: from /home/paul/git/training-material/_plugins/jekyll-topic-filter.rb:17:in `fill_cache'
         9: from /home/paul/git/training-material/_plugins/jekyll-topic-filter.rb:17:in `each'
         8: from /home/paul/git/training-material/_plugins/jekyll-topic-filter.rb:18:in `block in fill_cache'
         7: from /home/paul/git/training-material/_plugins/jekyll-topic-filter.rb:403:in `filter_by_topic'
         6: from /home/paul/git/training-material/_plugins/jekyll-topic-filter.rb:384:in `process_pages'
         5: from /home/paul/git/training-material/_plugins/jekyll-topic-filter.rb:384:in `map'
         4: from /home/paul/git/training-material/_plugins/jekyll-topic-filter.rb:384:in `each'
         3: from /home/paul/git/training-material/_plugins/jekyll-topic-filter.rb:384:in `block in process_pages'
         2: from /home/paul/git/training-material/_plugins/jekyll-topic-filter.rb:314:in `resolve_material'
         1: from /home/paul/git/training-material/_plugins/jekyll-topic-filter.rb:314:in `map'
/home/paul/git/training-material/_plugins/jekyll-topic-filter.rb:326:in `block in resolve_material': undefined method `[]' for nil:NilClass (NoMethodError)
make: *** [Makefile:75: serve-quick] Error 1

make serve however works

The commit is here https://github.com/galaxyproject/training-material/pull/3950/commits/a8ff3e70b47a3f1fd262ec10a448f32056b561ab if you want to cherry-pick it before I've got that PR merged.

Perfect! The fix is merged into main, so, future PRs should fare better :)


[WIP] Boundary Volume Hierarchy

@Rombur @aprokop
Please look at BVH::BVH(...) in packages/Kokkos/src/LinearBVH.cpp.
You will need to dive into the functions that get called in that constructor which you will find in packages/Kokkos/src/details/DTK_DetailsTreeConstruction.cpp.

Current coverage is 95.71% (diff: 100%)

No coverage report found for master at 50e1f9f.

Powered by Codecov. Last update 50e1f9f...09eac60

Rebased on top of master.

Sorry, slightly screwed up, fixing right now.

Should be properly rebased now.

Now that the current version passes all the tests, should we merge it?

OK, the patches have been cleaned up. Waiting for the tests to pass, after that anybody can merge.


Write a C++ program to print ascii value of a string

Description
Write a C++ program to print ascii value of a string
ASCII value is the numeric representation of a character. For example, the ASCII value of the character 'A' is 65. The ASCII value of the character 'a' is 97. The ASCII value of the character '0' is 48. The ASCII value of the character ' ' is 32.
Input  : ABC
Output : 65 66 67

How to contribute

Save the solution in PrintAsciiValueOfAString.cpp file
Add PrintAsciiValueOfAString.cpp file in print-ascii-value-of-a-string folder

interested. assign plz.

will solve in 5mins.

!assign


Editing title and title_alternates should also use the snapshot system

So the system doesn't lag as it's trying to calculate fingerprints, etc. Similar machinery to editing body

in actions/editor.ts:textFieldUpdated: skipUpdatingNormalizedFields is the one that's done differently for body

[ ] Rename CARD_EXTRACT_LINKS

There's one remaining TODO (in a TODO in the reducer for EDITING_PROCESS_NORMALIZED_TEXT_PROPERTIES. It's super minor, and there's a TODO in code, so it's fine to just close this.


Stray debug output

Neovim now prints the message dwqdqwwqdqw: myers on startup :)
It's due to the stray https://github.com/lewis6991/gitsigns.nvim/blob/01155f7a1d55e42a7f76f1937032bf32c6e0ce1b/lua/gitsigns/config.lua#L93

Woops, sorry about that.

No problem, it just looked funny :) Thanks for the quick fix!


A page named "Language": not able to edit modules

Description of bug
A page with the name "Language" is pretty much unusable as you cannot edit any module or edit the module settings.
In that case the page stays empty when you try to edit anything.
Steps to reproduce
List the precise steps to reproduce the bug:

Create a page, name it "language" (can be a root or child page)
Place the HTML module on the page
Try to edit the module content or module settings
The edit page is "empty"

Current behavior
See above
Expected behavior
One should be able to create a page named "language" and use it or DNN should not allow the creation of a page with that name..
Additional context
I do realize there's a chance this will not get fixed, but I still want to log this so someone with the same issue might find this issue and save him/herself the time I sent on this ;-)
Affected version

[ ] 10.00.00 alpha build
[ ] 09.11.00 release candidate
[x] 09.10.02 release candidate
[x] 09.10.01 latest supported release

I can't find it at the moment, but this sounds like a reserved word. I remember having similar issues a few years ago when the client wanted their page named, "Providers" and even when we forced it, we had problems with modules and other on page functionality. If I remember and find some reference to an issue or the discussion, I will post it. But also, it might NOT be related to this. :)

Yes, we have also has a similar issue with a page named "login" which was used to redirect a user to an external login, while DNN was the "public site". Even with a custom login page that does not work.
IMO it would be good if DNN would not allow the creation of pages with there names

#1247 added a check for Login and Register in DNN 8.0.1. (This check is called before AddTab in the Persona Bar and a couple of other places, so depending on how the page is created, it is possible to bypass it).
https://github.com/dnnsoftware/Dnn.Platform/blob/a2a0c6ec7e7cd2cd1dc32b9a6e118569f840e529/DNN Platform/Library/Entities/Tabs/TabController.cs#L50-L51
At the same time (DNN 8.0.1), #1342 also added a check the ensure that the page didn't match the Do Not Rewrite URL Regular Expression, which includes /Providers/ (I wonder whether the slashes mean that it doesn't actually match…).
https://github.com/dnnsoftware/Dnn.Platform/blob/a2a0c6ec7e7cd2cd1dc32b9a6e118569f840e529/DNN Platform/Library/Entities/Tabs/TabController.cs#L1017-L1028
If it makes sense, we can add Language to the list of unavailable page names. It would be better if we could figure out a way to have that page not broken, but it may not be a clean fix.

@bdukes ok sounds good, but is "language" still used as a QS parameter or is that legacy?

I think the typical path creates language-specific portal aliases, instead of the language QS parameter, but it's possible to use the  QS parameter


pick a naming convention ehossack!

The library was originally written with camelCase in mind, but then in an attempt to standardize with b2 it includes options with snake_case. And some config is kebab-case.
Now it's just annoying to see the mix. But it's purely aesthetic not functional, but we should address this in some future release...

Config will have to support both for backwards compatibility.


refactor(app): Refactor and Simplify Screen, Replace jotai state with a context, add Toasts

Description
Pretty much completely stripped down the Screen abstraction to the bare essentials, removed all confusing state patterns, deleted unused components, and eliminated anything that isn't being currently used in Folio. There could be things I'm missing here, but I went through every screen and surprised myself again and again at what a simple flex component can do, when compared with everything else that was there before.
Flow:

Created new Screen2 folder
Created a new Screen2.Whatever component, and referred to Screen.Whatever
Picked out only UI aspects from each component, the bare essentials, no state or any behavior at all
Swapped out Screen.Whatever with Screen2.Whatever
Does it look good? Yep
Repeat for every component in the Screen directory
For anything that relied on shared state to render certain UI elements, I removed and rewrote so that it would behave statically
Aside from triggering the animation in the header, no state is necessary (at all) and i'm very unsure what was going on there.
After checking everything, deleted components/Screen, and then renamed components/Screen2 to Screen so that we could keep the git log
Following this flow, all complexity could be removed and unless i'm missing something obvious, it behaves in the exact same way as before 🤔 🤔

Also, search pills stuff was rewritten to remove Jotai state, and adds the ability to search through albums by cross-referencing returned artwork internalIDs, and checking if said ids are in any albums; if so, return the result.
And cleaned up some other random UX inconsistencies along the way.
Toast support was added:
https://user-images.githubusercontent.com/236943/225456869-2737321e-2abd-4cb3-abc7-128fbed030a7.mp4
Lastly, all patch-packages were removed.
There's one last jotai state piece being used, in the fileManager; will remove in a follow-up PR.
cc @artsy/mobile-platform
PR Checklist

[x] I have tested my changes on iOS and Android.
[x] I have included screenshots or videos, or I have not changed the UI.
[x] I have added tests, or my changes don't require any.
[x] I added an [app state migration], or my changes do not require one.
[X] I have documented any follow-up work that this PR will require, or it does not require any.

@brainbicycle pulled this down and gave it a spin, looked good except header animation. That's been fixed so gonna merge and send out beta and can deal with any fallout from there 👍


assets npm package, repacking viewer

Last task of https://github.com/BabylonJS/Babylon.js/issues/4339

Viewer's npm package is now the compiled js files with their corresponding ts declaration files.
new npm package for the babylon viewer assets.

babylon tests file for some reason?

No worry you can merge

I just want to run a few test locally. Will merge afterwards

the viewer package will include both a bundled umd version (main) and compiled commonjs sources.


Feat: Add to the event handlers base options the ability to use categories

The title says it all. Would be easier when refactoring games, and in the future, it would be helpful.

Not just games; it's pretty much essential for @group as that also filters by category name atm. I will have a look at it on friday.


improving methods that clean doi for consolidation

As mentioned in https://github.com/kermitt2/biblio-glutton/issues/55
When I wrote the test I realised that the result of substring(), aiming at removing the prefix, was not used.
This should:

remove diactric (not sure is needed)
remove characther that combined with others
fix substring(4) using the

About diactricts: https://memorynotfound.com/remove-accents-diacritics-from-string/

Coverage increased (+0.03%) to 38.991% when pulling 730b54ce766c8c7c62ce3177be36b9c06ae9b6df on bugfix/improved-doi-clean into a5f46ba80f47d140313ac6dfcef00db96d1b3030 on master.

I see that there are actually two different cleanDOI methods:
https://github.com/kermitt2/grobid/blob/master/grobid-core/src/main/java/org/grobid/core/data/BiblioItem.java#L1007
and
https://github.com/kermitt2/grobid/blob/master/grobid-core/src/main/java/org/grobid/core/utilities/Consolidation.java#L615
(the one modified here)
The second one is not really more specific to CrossRef and both actually normalizes the prefix, so I think we could move everything to BiblioItem.java ?

Sure!
I consolidated the method within BiblioItem.java. I also simplified the code and added some tests.

Thanks for the changes, code improvement and the new tests !!

BTW would we need something like that in biblio-glutton too?

Not sure, in principle any UTF-8 characters are allowed in the suffix of a DOI, so the composed characters like that too. Obviously it's a character composition mistake error here, but we might have more common diacritics in a DOI.
It might be more an issue to open in pdfalto, because the character composition should not happen there in principle.

One possible interesting exercise could be to check in biblio-glutton all the existing DOI and see how many have non-ASCII characters and how many of these are "composed" ones (diacritics).

Sure!
BTW my idea was to have this method called for the DOI supplied to the API. Not at loading time.

BTW my idea was to have this method called for the DOI supplied to the API. Not at loading time.

This is how I understand it too, at loading time it would make no sense because it's the valid content that we want to support. The problem is that this PR could break something, when valid diacritics are present in a DOI and cause false negative - so it's interesting to see if such diacritics are actually present or not in CrossRef.

Ahh I see 👍


res.sendFile should respect content type when set

Is your feature request related to a problem? Please describe.
res.sendFile does not get the content type correct 100% of the time and yet it does not respect content type when it is set on the response.
Describe the solution you'd like
res.sendFile should respect content type when it is set on the response.
Describe alternatives you've considered
I currently read the files locally and set the content. This is more code and I would rather not maintain it.
Additional context
Firefox gives XML errors when content types don't match its expectations - even if those expectations are wrong. It would be nice to be able to set the content-type as described here to avoid such noise.
https://stackoverflow.com/questions/51000009/i-keep-getting-this-error-xml-parsing-error-syntax-error-but-still-the-website

Could you please submit a PR with the bug fix?

Hey @talentlessguy, if nobody is looking into this, is it okay if I give it a shot?
But I am wondering, is it known under which circumstances it doesn't get the correct content-type? Ex. specific file types, etc.

@rokaicker sure
I don't know myself but it needs checking


[Suggestion]: Add player count catch for "1 players"

Explain your idea
Tiny QoL to add say "player" when only a single player is online. Also possibly to remove the player count completely when no one is online.
If this is platform-dependant, which platform is this about?
Platform Agnostic

This is probably better suited in https://github.com/ErdbeerbaerLP/DiscordIntegration-Core instead

Implementing this in 3.0.0


.NET Rearchitecture Post

Summary

Use Cases

Checklist

[ ] I have viewed, signed, and submitted the Contributor License Agreement.
[ ] I have added an integration test, if necessary.

Also, @kvedurmu any thoughts on what the picture at the top of the post should be?

TODO: Add a link to the buildpack on the registry: http://registry.buildpacks.io/buildpacks/paketo-buildpacks/dotnet-core

Also, @kvedurmu any thoughts on what the picture at the top of the post should be?

I think a generic .NET logo could work. Or maybe some generic GIF of a "breeze" at the end of the intro that ends with "containerizing your .NET apps a breeze" 😄


ARROW-5888: [C++][Parquet][Python] Restore timezone metadata when original Arrow schema has been stored in Parquet metadata

We can preserve the original timezone now that we're serializing the schema in the Parquet Thrift metadata

cc @fjetter @xhochy

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@721e6f9). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master    #5138   +/-   ##
=========================================
  Coverage          ?   75.25%
=========================================
  Files             ?       57
  Lines             ?     3617
  Branches          ?        0
=========================================
  Hits              ?     2722
  Misses            ?      895
  Partials          ?        0

Continue to review full report at Codecov.

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


bugs:$state.go not located on the top floor [v1.21]

it's worked normally with v1.1,  but when update to v1.2
use $state.go  like that
: var objpara = { imgurl: data };
$state.go("capture", objpara);
it noting to happend ,but when i use back button, i found
the activity 'capture' is behind the current activity

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

Hello! Thanks for opening an issue with us, we just need a little more info from you so that we can better help you with your issue. Would you mind posting a code sample, plunkr or codepen that we can use to reproduce your issue? Also, would you mind running ionic info and posting the output? Thanks again!

Hello! Thanks for opening an issue with us! Since it has been a little while since there was any activity on this issue i will be closing it, but feel free to respond back if your still having the issue! Thanks again!