[RFC] use non-absolute paths for chroot/mount/umount and add test

[draft as this is a bit of an RFC]
We currently use the absolute path of these binaries in the
helper. This has some advantages but given that we control the
inputs for PATH in general it seems unnecessary.
We are also slightly inconsistent about this in the codebase but
favor the non absolute path version. A quick count:
$ git grep '"chroot"'|wc -l
13
$ git grep '"/usr/sbin/chroot"'|grep -v test_|wc -l
8

for mount and umount it seems this is the only place that uses
the absolute path.
It's not an important change but it has the nice property that it
allows us to use e.g. testutil.mock_command() in our tests and
it would be nice to be consistent.

This is very minor and I'm fine closing it but it would be nice to get a quick :+1: or :-1: from e.g. @achilleas-k

Took the liberty of marking it as ready myself :)

There's a failing test that checks for the abs path in the call to chroot:
 >       assert run_argv[0] == "/usr/sbin/chroot"
E       AssertionError: assert 'chroot' == '/usr/sbin/chroot'
E         - /usr/sbin/chroot
E         + chroot

Thanks, silly me! Should be fixed now.

Looks like something is going wrong on python 3.12 with locking, I'd retry it but given that it's locking I wouldn't trust the result :)

@bcl seems to be a semi-recurring issue on (various versions of) the tests.

Looks like something is going wrong on python 3.12 with locking, I'd retry it but given that it's locking I wouldn't trust the result :)

Thanks, indeed, we see this failure sometimes, I debugged this a little bit and put my findings into https://github.com/osbuild/osbuild/issues/1914


Threads are blocked forever in getting Jedis cluster connection

Using Spring-Data-Redis + Jedis to connect to a Redis Cluster, under high concurrency, threads are blocked forever in getting Jedis connection resource, even though all borrowed Jedis connections are supposed to be returned (I just used Spring CacheManager and RedisTemplate, whom I expect to manage the connection well).
This is the the project to reproduce
https://github.com/chang-chao/jedis-cluster-pool-issue
The stacktrace and jmx captures can be found in the README of the reproducing project.

@chang-chao What happens if you use Jedis 2.9.3 or 2.10.2?

@sazzad16 After upgrading to Spring Boot to 2.1.8.RELEASE, which uses Jedis 2.9.3.
And it did not happen again.
So , I think this is the same issue with https://github.com/xetorthio/jedis/issues/1945 , I will close this.


Refactor/remove lock balance logic in billing flow

Choosing between locking and distributing less frequently, or not locking and distributing more frequently could be debatable as both actions require modifications to the account balances storage, which involves computational resources.
Locking Tokens:
Each lock is recorded in the state, and removing or updating a lock involves additional state changes.
Transferring Tokens:
Each transfer results in changes to the state (balance updates) for both the sender and the receiver. Also, distributing tokens in our logic involves multiple transfers to (foundation, sales, staking pool, and service provider) accounts.
The advantages of the current flow:

Locks due amounts every hour, leading to fewer state changes during the day.

Transfers the total amount once daily, spreading the computational load.

The disadvantages:

Current locking logic is flawed
Locking logic adds complexity to the billing code

I believe that the current approach, if works correctly (which is not the case), is generally more efficient in terms of network usage. However, I propose simplifying the logic by transferring overdue amounts directly every hour. This is because the added complexity of locking brings many flaws that cannot be justified by the potential savings in network usage.
We can still benefit from both worlds by changing the billing cycle to occur every 24 hours instead of hourly, aligning it with the cultivation distribution schedule. This approach consolidates multiple transfers into fewer transactions, reducing the computational load on the network to even lower levels than what we have currently.
Additional context

https://github.com/threefoldtech/tfchain/issues/969
https://github.com/threefoldtech/home/issues/1560

We may also consider replacing locks with reserves/holds, which would simplify the flow and make it less error-prone.

Update:
Here is a sum of the changes so far

Payment state Management:
Introducing ContractPaymentState aligns with the need to track and manage contract states accurately, especially during grace periods and when handling overdue payments.

Replaced ContractLock with ContractPaymentState to track the last updated timestamp for contract payments.
Enhanced state handling for contract billing, particularly around grace periods and contract deletions.
lazy migration for contracts over a billing cycle [can be replaced with a more common migration. TBD]

improve events and error handling:

Enhanced logging and error handling to improve debuggability and ensure that billing-related issues are properly tracked and addressed.

Introduced new events and improved error handling to manage grace periods and overdraft situations effectively.

Reserve Mechanism: Uses reserves instead of locks to handle funds ensuring that the funds are earmarked for feature payments, preventing issues with liquidity.
Reserves align better with handling common billing scenarios such as partial payments, fund releases, and transfers in a more straightforward and reliable manner.

Bug fixes

Fixes included:

Contracts in the grace period can incorrectly be restored when the due amount of the last billing cycle is available, rather than the whole overdraft amount.
Canceling a rent contract while the node is on standby may leave the contract in a deleted state without proper storage cleaning.
During the grace period, contracts with public IP addresses may over-calculate the costs related to NU.
The amount tracked in the contract lock is incorrectly divergent from the lock on the user balance, leading to liquidity issues when it's time to distribute rewards.

Still WIP:

[ ] Adjust billing tests: nearly 50% of failing tests due to logic changes were adjusted.
[ ] Add/ Update Docs
[ ] a lot of testing


pom: update the URL of the project's website

So that Maven central points to the right place.
https://search.maven.org/artifact/io.rest-assured/rest-assured/4.4.0/bundle

Thank you, I fixed it manually due to merge conflict.


draft: oomkill in aks-based openshift 4.10 cluster

Bug description:
In an Azure-based openshift 4.10 cluster we observe that Cartographer's default
limits are not enough in the presence of 15k+ secrets and thousands of
serviceaccounts (carto v0.4.3).
Steps to reproduce:
TODO (/cc todd)
Expected behavior:
Have cartographer up and running despite the great number of other objects
unrelated to the necessary functionality of cartographer.
Actual behavior:
OOMKill
Logs, k8s object dumps:
TODO
Versions:
TODO

Infrastructure (kind, TKG, GKE etc.)
cartographer version
k8s version
... other versions of related software being used

Deployment info:
TODO
Additional context:

If you can avoid it, it's best not to inform with a cache on Secrets and instead look them up as needed. ServiceAccount are probably still ok as each resource is very small.

What are the goals for this issue?
Is raising the requirements acceptable?
If the goal is reducing our memory footprint, what are the parameters for that, considering we currently know we have a cache that grows linearly with the number of objects? Are we looking at reducing the overhead per object, or are we looking to constrain memory consumption to a ceiling? The former is easier, but without the latter, operators will potentially always have to manage resource limits for Cartographer, which has always felt sub-par to me.
Some activities that might help us understand where we could have impact reducing memory footprint:

Audit code to discover redundancy in cache semantics? (ie are we over caching?)
What complete objects in the cache can we reduce to hashes instead?
Can we evict more aggressively? (it's been a long time, but as far as my memory works, we don't do this because we never, ever want to redundantly re-stamp - can that be solved another way? is re-stamping really as evil?)
Can we externalize the cache (and how?)
Audit unpaginated list calls


Bug Fixes

What's New?

Bug: Discarded farm events appeared in calendar.
Bug: FarmEvent default start / end time caused validation errors on save.
Regression: FarmEvent link pointed to wrong page.
Refactor: Reset all network data when user presses "refresh" on the network connectivity page.
More tests

What's Next?

(maybe) Write more tests
Continue with auto_sync feature (on RickCarlino/auto_sync)

Coverage increased (+0.2%) to 75.161% when pulling 1354e2435416964960856600b7bd2253dcbf23ea on RickCarlino:rc1 into 50b45b0fb0ad12cc509d3658ab6cac4055808db4 on FarmBot:master.

Coverage increased (+0.2%) to 75.161% when pulling c246f6cb97b24b9a7bd9591e9fafebdb9d175d6a on RickCarlino:rc1 into 50b45b0fb0ad12cc509d3658ab6cac4055808db4 on FarmBot:master.

Coverage increased (+0.2%) to 75.413% when pulling f8fd4f201a5cbd5a4085f4c1f3bdabfaa00faf75 on RickCarlino:rc1 into ed11aec4dc07d4cb0d3a8f395597cf831722584d on FarmBot:master.

Coverage increased (+0.2%) to 75.413% when pulling 6b648e799f884ce3b91c42fcd229f5fea02d1e23 on RickCarlino:rc1 into ed11aec4dc07d4cb0d3a8f395597cf831722584d on FarmBot:master.


Unable to get MediaPipe TouchDesigner.toe working

Hey all,
Trying to get this plugin working for the first time. Here's what I see when I start it up:

I have:

Been using Touchdesigner 2023.12000, Windows 10 64bit.
Registered SpoutCam64 with my webcam setttings (1280 x 720, LifeCam HD-3000). No other program is using my webcam.
For videodevin1 I selected my webcam. This shows up fine.
Selected SpoutCam as the Webcam for my MediaPipe, heres what it shows:

Here are my SpoutCam settings:

Additionally, all components like hand tracking show errors

Lastly, I tried creating a completely separate videodevin2 for testing with the SpoutCam as the device, while the videodevin1 with my webcam is running, and that works perfectly. So that leads me to believe that SpoutCam itself must be working in some capacity!

You need to unzip all the files and toxes folders from the release.zip for the project to load properly.

Yep, totally clicked download on the wrong file. Thanks!


chore: fix license clause

Codecov Report

Merging #15 (5e5bf75) into develop (d64a367) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           develop      #15   +/-   ##
========================================
  Coverage    82.82%   82.82%
========================================
  Files            2        2
  Lines          262      262
========================================
  Hits           217      217
  Misses          45       45

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 d64a367...5e5bf75. Read the comment docs.

:tada: This PR is included in version 1.0.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


In MUI v5, automatically use Tooltip component when passing "title" prop

Many MUI components can receive a title prop, that renders a tooltip.

In order for MUI to render a MUI Tooltip, a developer has to wrap the component in the Tooltip component.

This forces developers to wrap a bunch of elements in Tooltip. I'd like to request that in MUI v5, passing a title prop directly to a MUI component automatically mounts the MUI Tooltip component. This way devs dont need to keep wrapping everything tooltip.
Meanwhile, please keep the Tooltip component, so I can wrap any div, span, or HTML element to get the same effect.
This should make library cleaner to use...and when coding large applications...the cleaner the code, the better.

@NawarA not sure it is smart to bundle the Tooltip with every component we export. You can do this on your side and provide your version of the components, that are designed based on your requirements. Your developers can import the components from different location, and those components can support the title prop that you mentioned.

@NawarA not sure it is smart to bundle the Tooltip with every component we export. You can do this on your side and provide your version of the components, that are designed based on your requirements. Your developers can import the components from different location, and those components can support the title prop that you mentioned.

I would suggest the same.
It's not even clear that you want our Tooltip when you pass a title because our Tooltip works quite different compared to title.
We can close this since the problem is already solved and the suggested implementation has drawbacks for bundle size.
function TooltipButton({ title, ...props }) {
  return <Tooltip title={title}><Button {...props} /></Tooltip>;
}

Almost a duplicate of #20991


Look up automatic CLI alternatives

https://github.com/ScilifelabDataCentre/dds_cli/issues/187

I believe last one needed for this would be #194.


Multi field declaration fails

should this work?
class Name extends JsProxy {
  @reflectable String first, last;
  // also not possible
  // @reflectable String first, @reflectable last;
  Name(this.first, this.last);
}

I didn't get an error message, just launching the Polymer app failed.
I don't especially need or want this, just encountered it while working on some Polymer examples.

Thanks for the report, that should definitely be supported! Marked as a bug.

The CL at https://codereview.chromium.org/1421713004/ was created with the new 'multi_field_test.dart' as a starting point, which should address any issues you may have seen with the above code snippet.

Above-mentioned CL has now been committed as 2b00afb7c57be7d6dca03f4cff7d7bbd21beb172 on https://github.com/dart-lang/reflectable. Interestingly, I did not encounter any issues with multiple declarations with the same type annotation (even though that was a case that we didn't test), but several issues with top level declarations were fixed. Please create a new ticket if any issues remain.


Runtimes specific to a language or framework version are deprecated when the version reaches end of life.

After "cdk synth", it shows the following errors, it seems there are Lambda function "nodejs" runtime version is not compatible.
[Error at /LineageStack/cdlDataLineageInput/Resource] AwsSolutions-L1:
[Error at /LineageStack/cdlDataLineageHandler/Resource] AwsSolutions-L1:
[Error at /LineageStack/cdlDataLineageTraceHandler/Resource] AwsSolutions-L1:
[Error at /TestStack/CalculatorTestLambda/Resource] AwsSolutions-L1:
[Error at /TestStack/PipelineTestLambda/Resource] AwsSolutions-L1:

Updated Lambda runtime to Python 3.12, updated AWSLambdaPowertoolsPython to fix this issue. Thank you for opening this issue.


Bug in isCrownstoneInSetupMode?

The function isCrownstoneInSetupMode doesn't seem to work.

So i've been testing a bit, and have some questions:

What lib scan backend do you use (bluepy or Aio)? I only tested with the default, Bluepy.
What parameters did you use for the call?
What bluetooth device did you use?

This is all information:
#!/usr/bin/env python3

import time
import argparse
import json

from crownstone_ble import CrownstoneBle, ScanBackends

parser = argparse.ArgumentParser(description='Search for any Crownstone and print their information')
parser.add_argument('--hciIndex', dest='hciIndex', metavar='I', type=int, nargs='?', default=0,
        help='The hci-index of the BLE chip')
parser.add_argument('keyFile',
        help='The json file with key information, expected values: admin, member, guest, basic,' +
        'serviceDataKey, localizationKey, meshApplicationKey, and meshNetworkKey')
parser.add_argument('action', type=str,
        help='The action to perform, options: setup')
parser.add_argument('macAddress', type=str,
        help='The bluetooth MAC address of the Crownstone to connect to.')
parser.add_argument('configFile',
        help='The json file with additional arguments (depends on the action)')

args = parser.parse_args()

print("===========================================\n\ncsutil\n\n===========================================")

# Initialize the Bluetooth Core.
core = CrownstoneBle(hciIndex=args.hciIndex)
core.loadSettingsFromFile(args.keyFile)

address = args.macAddress

def setup():
    print("Setup Crownstone at address:", address)

    # Does not seem to work properly
    #if not core.isCrownstoneInSetupMode(address):
    #    print("Crownstone is not in setup mode")
    #    return

    with open(args.configFile) as f:
        config = json.load(f)

    core.setupCrownstone(
        address,
        crownstoneId = config['crownstoneId'],
        sphereId = config['sphereId'],
        meshDeviceKey = config['meshDeviceKey'],
        ibeaconUUID = config['ibeaconUUID'],
        ibeaconMajor = config['ibeaconMajor'],
        ibeaconMinor = config['ibeaconMinor']
    )

    # wait for setup to finish and the crownstone to reboot
    print("Sleeping until Crownstone is in Normal mode and ready.")
    time.sleep(10)

def factory_reset():

    # reset the Crownstone back into setup mode
    print("Make a connection")
    core.connect(address)

    print("Perform factory reset")
    core.control.commandFactoryReset()
    time.sleep(1)

    print("Disconnect")
    core.control.disconnect()
    time.sleep(1)

if args.action == 'setup':
    setup()

if args.action == 'factory_reset':
    factory_reset()

# clean up all pending processes
print("Core shutdown")
core.shutDown()

That's a lot of code for me to search through. My conclusions:

You seem to use the default backend.
You don't call isCrownstoneInSetupMode at all.
I can't see your hardware setup from code.

Yes, I use everything default.
I have commented out isCrownstoneInSetupMode because it fails.
I'm using the nRF52832 dev kit, PCA10040.

Just to make sure that the bug report is complete:

The code reports the Crownstone to be not in setup mode, while the Crownstone app shows that it is in setup mode.
The code above uses a json file with keys that can be used to actually control the Crownstone. I'm not sure why I need keys to see if a Crownstone is in setup mode, but if I don't call loadSettingsFromFile, I get the following error:

Traceback (most recent call last):
  File "./is_in_setup.py", line 40, in <module>
    setup_test()
  File "./is_in_setup.py", line 32, in setup_test
    if core.isCrownstoneInSetupMode(address):
  File "/home/anne/.local/lib/python3.8/site-packages/crownstone_ble/core/CrownstoneBle.py", line 112, in isCrownstoneInSetupMode
    self.ble.startScanning(scanDuration=scanDuration)
  File "/home/anne/.local/lib/python3.8/site-packages/crownstone_ble/core/ble_modules/BleHandler.py", line 114, in startScanning
    self.scanner.process(processInterval)
  File "/home/anne/.local/lib/python3.8/site-packages/bluepy/btle.py", line 842, in process
    self.delegate.handleDiscovery(dev, (dev.updateCount <= 1), isNewData)
  File "/home/anne/.local/lib/python3.8/site-packages/crownstone_ble/core/bluetooth_delegates/ScanDelegate.py", line 21, in handleDiscovery
    self.parsePayload(dev.addr, dev.rssi, nameText, valueText)
  File "/home/anne/.local/lib/python3.8/site-packages/crownstone_ble/core/bluetooth_delegates/ScanDelegate.py", line 29, in parsePayload
    advertisement.decrypt(self.settings.serviceDataKey)
  File "/home/anne/.local/lib/python3.8/site-packages/crownstone_core/packets/Advertisement.py", line 55, in decrypt
    self.serviceData.decrypt(key)
  File "/home/anne/.local/lib/python3.8/site-packages/crownstone_core/packets/ServiceData.py", line 167, in decrypt
    if self.validData and len(self.encryptedData) == 16 and len(keyHexString) >= 16:
TypeError: object of type 'NoneType' has no len()

The given code I've called is_in_setup.py and is called with:
./is_in_setup.py keys.json C2:81:75:46:D8:F1

I tried your script, and it works fine here. Your bluetooth hardware is probably not scanning well or something, you can try with a longer scan duration.
Not being able to tell whether there was a scan at all, is the real issue here, I think.
Regarding the lib not working without keys, you can make a new issue for that. I think it's silly for the lib to crash when keys are not set.

Hi, may I ask for an option to do it with or without scanning?

Suggestion:
isCrownstoneInSetupMode(..., use_scanning = true)

However, even better:
connect(...)
# if connected
isInSetupMode()
disconnect

Then I can handle failures in connection from knowledge about setup mode. Would be awesome!

Yes, fully agree that would be a nice function to have. It would probably be used internally as well, and give you some NOT_IN_SETUP_MODE error or so for the setup() command.

Argh!!!!
 ./is_in_setup.py ~/.crownstone/keys.json C2:81:75:46:D8:F1

Search Results: {'name': 'crwn', 'address': 'c2:81:75:46:d8:f1', 'rssi': -51, 'setupMode': True, 'id': 0}
Starting setup on  c2:81:75:46:d8:f1
Is Crownstone in setup mode at address: C2:81:75:46:D8:F1
Crownstone is not in setup mode
Sleep to be easy on the lib
Core shutdown

Lower case mac address:
./is_in_setup.py ~/.crownstone/keys.json c2:81:75:46:d8:f1
Search Results: {'name': 'crwn', 'address': 'c2:81:75:46:d8:f1', 'rssi': -53, 'setupMode': True, 'id': 0}
Starting setup on  c2:81:75:46:d8:f1
Is Crownstone in setup mode at address: c2:81:75:46:d8:f1
Crownstone is in setup mode
Sleep to be easy on the lib
Core shutdown

Fix in this script is of course:
address = args.macAddress.lower()

However, it would be great to have the lib case-insensitive.

Right, so the function works :)
I wrote down some improvements for the library, which will be done later.

The case sensitivity is a bug, I'm afraid.

Let's split a few things up.
1 - the initial issue was that the isCrownstoneInSetupMode would not differentiate between "its not" and "I dont know" due to scans being missed sometimes.
2 - the case sensitivity caused it to fail even though the scanning would work. This lead to different test cases.
3 - Due to different behaviour with certain BLE drivers the library might not work at all, work partially or work normally.
@vliedel  has proposed the following improvements to the library:

Add getMode(), throw an error when there was no scan before timeout.
Add waitForMode(setup / normal / dfu), throw an error on timeout.
Make mac address case insensitive.
Make the lib work without setting keys.
Add getMode() when connected. (returns setup/dfu/normal/unknown enum)
Add Logger

This new API would cover all problems listed in this issue, as well as some others.
This issue is NOT solved at the moment and should not be closed until it is solved. We'd like to have the changes in the python library implemented within the next 2 weeks.
This issue will be closed upon the release of the new API addressing the issue.


fix(CI): codespell should ignore ro word

What type of PR is this?
/kind bug
/kind cleanup
Any specific area of the project related to this PR?
/area CI
What this PR does / why we need it:
The read-only acronym (ro)  is considered a typo by codespell, we now ignore it.
Which issue(s) this PR fixes:
Special notes for your reviewer:
Does this PR introduce a user-facing change?:
NONE

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: Andreagit97
Once this PR has been reviewed and has the lgtm label, please assign leogr for approval by writing /assign @leogr in a comment. For more information see:The Kubernetes Code Review Process.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Wow ahha great PR, thank you!

I'd also ignore hidden files, wdyt?

Great idea! i've done it :)

LGTM label has been added.  Git tree hash: 9be1a2557467474e9a7ea79b53472d54839af5d4

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, leogr
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [leogr]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/milestone 0.33.0

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, FedeDP, leogr
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP,leogr]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Type issue using index key on sitemaps

Describe the bug

Type '{ pages: { includeAppSources: true; exclude: string[]; }; index: { sitemap: string; }[]; }' is not assignable to type 'boolean | Partial<MultiSitemapEntry & IndexSitemapRemotes> | undefined'.
Type '{ pages: { includeAppSources: true; exclude: string[]; }; index: { sitemap: string; }[]; }' is not assignable to type 'Partial<MultiSitemapEntry & IndexSitemapRemotes>'.
Property 'index' is incompatible with index signature.
Type '{ sitemap: string; }[]' has no properties in common with type 'Partial'

Reproduction
No response
System / Nuxt Info
No response

Hey @harlan-zw,
I can't reproduce this behavior. Can you share the nuxt.config?

Thanks for confirming, let's close


EJS syntax highlighting bug

Using embedded javascript tags works well with the syntax highlighting, except for when EJS tags have nested HTML. (EJS syntax highlighting package is being used.)
Example, a for loop opening in one EJS tag, followed by HTML, followed by a closing curly to end the loop. See screenshot:

This screenshot taken on Mac OS X, Sublime Text 3 (Build 3103), with the following theme-specific user settings:
"color_scheme": "Packages/Predawn/predawn.tmTheme",
"theme": "predawn-DEV.sublime-theme",
"predawn_tabs_active_underline": true,
"predawn_tabs_small": true,
"predawn_sidebar_arrows": true,
"predawn_sidebar_small": true,
"predawn_findreplace_small": true,
"predawn_quick_panel_small": true,
This issue does not manifest using other themes.

Current workaround is to open a .ejs file, then navigate to View -> Syntax -> Open All With Current Extension As -> HTML


No device found with name ... using 2.218.0

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I read the Contribution Guidelines
[x] I read docs.fastlane.tools
[x] I searched for existing GitHub issues

Issue Description

The command executes successfully on 2.217.0, but fails on 2.218.0 with
No simulators found that are equal to the version of specifier (17.0.1) and greater than or equal to the version of deployment target (0)

and
No device found with name 'iPhone 15 Pro Max' with version 17.0.1

Command executed

    run_tests(
      workspace: "XYZ.xcworkspace",
      scheme: "XYZ",
      prelaunch_simulator: true,
      disable_package_automatic_updates: false,
      devices: ['iPhone 15 Pro Max (17.0.1)'],
      ensure_devices_found: true
    )

Complete output when running fastlane, including the stack trace and command used

 [REPLACE THIS WITH YOUR INFORMATION]

Environment

✅ fastlane environment ✅
Stack

Key
Value

OS
13.5.1

Ruby
3.2.2

Bundler?
true

Git
git version 2.39.3 (Apple Git-145)

Installation Source
/usr/local/lib/ruby/gems/3.2.0/bin/fastlane

Host
macOS 13.5.1 (22G90)

Ruby Lib Dir
/usr/local/Cellar/ruby/3.2.2_1/lib

OpenSSL Version
OpenSSL 3.1.1 30 May 2023

Is contained
false

Is homebrew
false

Is installed via Fabric.app
false

Xcode Path
/Applications/Xcode-15.0.1.app/Contents/Developer/

Xcode Version
15.0.1

Swift Version
5.9

System Locale

Variable
Value

LANG
en_US.UTF-8
✅

LC_ALL

LANGUAGE

fastlane files:
`./fastlane/Fastfile`
# This file contains the fastlane.tools configuration
# You can find the documentation at https://docs.fastlane.tools
#
# For a list of all available actions, check out
#
#     https://docs.fastlane.tools/actions
#
# For a list of all available plugins, check out
#
| google-apis-playcustomapp_v1    | 0.13.0       |
| google-apis-iamcredentials_v1   | 0.17.0       |
| google-apis-storage_v1          | 0.29.0       |
| google-cloud-errors             | 1.3.1        |
| google-cloud-core               | 1.6.1        |
| google-cloud-storage            | 1.45.0       |
| mini_magick                     | 4.12.0       |
| naturally                       | 2.2.1        |
| optparse                        | 0.4.0        |
| plist                           | 3.7.1        |
| rubyzip                         | 2.3.2        |
| security                        | 0.1.3        |
| simctl                          | 1.6.10       |
| terminal-notifier               | 2.0.0        |
| unicode-display_width           | 2.5.0        |
| terminal-table                  | 3.0.2        |
| tty-screen                      | 0.8.2        |
| tty-cursor                      | 0.7.1        |
| tty-spinner                     | 0.9.3        |
| word_wrap                       | 1.0.0        |
| rouge                           | 2.0.7        |
| xcpretty                        | 0.3.0        |
| xcpretty-travis-formatter       | 1.0.1        |
| http-accept                     | 1.7.0        |
| mime-types-data                 | 3.2023.1205  |
| mime-types                      | 3.5.2        |
| rest-client                     | 2.1.0        |
| fastlane-plugin-browserstack    | 0.3.2        |
| fastlane-plugin-datadog         | 0.2.0        |
| fastlane-plugin-versioning      | 0.5.2        |
</details>

*generated on:* **2024-01-02**
</details>

Hey! This might be fixed in 2.219.0 which just went out 🤞 Would you be able let me know if the newest version works for you or not? 😇

Just tried fastlane 2.219.0, but unfortunately, I'm still met with the same error. Version 2.217.0 still works.

2.217.0 not working for me unfortunately...

I finally used destination and it works on 2.219.0:
run_tests(
    project: "MyProject.xcodeproj",
    scheme: "MyScheme",
    ensure_devices_found: true,
    destination: "platform=iOS,name=My iPad",
)

@neospirit @michalsrutek
could you collect the output of the following commands?
xcrun simctl list runtimes

and
xcrun simctl list runtimes -j

Thanks.

For us it worked using Fastlane 2.219.0 and instead of iPhone 14 Pro Max (17.0.1) using the same as the Xcode simulator says: iPhone 14 Pro Max (17.0)
It will automatically match to the right simulator when running in CI

@lacostej
Running xcrun simctl list runtimes yields
== Runtimes ==
iOS 15.0 (15.0 - 19A339) - com.apple.CoreSimulator.SimRuntime.iOS-15-0
iOS 16.4 (16.4 - 20E247) - com.apple.CoreSimulator.SimRuntime.iOS-16-4
iOS 17.0 (17.0 - 21A328) - com.apple.CoreSimulator.SimRuntime.iOS-17-0
iOS 17.0 (17.0.1 - 21A342) - com.apple.CoreSimulator.SimRuntime.iOS-17-0

running xcrun simctl list runtimes -j yields
Long output >>>
{
  "runtimes" : [
    {
      "bundlePath" : "\/Library\/Developer\/CoreSimulator\/Profiles\/Runtimes\/iOS 15.0.simruntime",
      "buildversion" : "19A339",
      "platform" : "iOS",
      "runtimeRoot" : "\/Library\/Developer\/CoreSimulator\/Profiles\/Runtimes\/iOS 15.0.simruntime\/Contents\/Resources\/RuntimeRoot",
      "identifier" : "com.apple.CoreSimulator.SimRuntime.iOS-15-0",
      "version" : "15.0",
      "isInternal" : false,
      "isAvailable" : true,
      "name" : "iOS 15.0",
      "supportedDeviceTypes" : [
        {
          "bundlePath" : "\/Applications\/Xcode-15.0.1.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone 6s.simdevicetype",
          "name" : "iPhone 6s",
          "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-6s",
          "productFamily" : "iPhone"
        },
        {
          "bundlePath" : "\/Applications\/Xcode-15.0.1.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone 6s Plus.simdevicetype",
          "name" : "iPhone 6s Plus",
          "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-6s-Plus",
          "productFamily" : "iPhone"
        },
        {
          "bundlePath" : "\/Applications\/Xcode-15.0.1.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone SE (1st generation).simdevicetype",
          "name" : "iPhone SE (1st generation)",
          "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-SE",
          "productFamily" : "iPhone"
        },
        {
          "bundlePath" : "\/Applications\/Xcode-15.0.1.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone 7.simdevicetype",
          "name" : "iPhone 7",
          "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-7",
          "productFamily" : "iPhone"
        },
        {
          "bundlePath" : "\/Applications\/Xcode-15.0.1.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone 7 Plus.simdevicetype",
          "name" : "iPhone 7 Plus",
          "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-7-Plus",
          "productFamily" : "iPhone"
        },
        {
          "bundlePath" : "\/Applications\/Xcode-15.0.1.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone 8.simdevicetype",
          "name" : "iPhone 8",
        {
          "bundlePath" : "\/Applications\/Xcode-15.0.1.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/DeviceTypes\/iPad (9th generation).simdevicetype",
          "name" : "iPad (9th generation)",
          "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-9th-generation",
          "productFamily" : "iPad"
        },
        {
          "bundlePath" : "\/Applications\/Xcode-15.0.1.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/DeviceTypes\/iPad Air (4th generation).simdevicetype",
          "name" : "iPad Air (4th generation)",
          "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-Air--4th-generation-",
          "productFamily" : "iPad"
        },
        {
          "bundlePath" : "\/Applications\/Xcode-15.0.1.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/DeviceTypes\/iPad Pro (11-inch) (3rd generation).simdevicetype",
          "name" : "iPad Pro (11-inch) (3rd generation)",
          "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-Pro-11-inch-3rd-generation",
          "productFamily" : "iPad"
        },
        {
          "bundlePath" : "\/Applications\/Xcode-15.0.1.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/DeviceTypes\/iPad Pro (12.9-inch) (5th generation).simdevicetype",
          "name" : "iPad Pro (12.9-inch) (5th generation)",
          "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-Pro-12-9-inch-5th-generation",
          "productFamily" : "iPad"
        },
        {
          "bundlePath" : "\/Applications\/Xcode-15.0.1.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/DeviceTypes\/iPad Air (5th generation).simdevicetype",
          "name" : "iPad Air (5th generation)",
          "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-Air-5th-generation",
          "productFamily" : "iPad"
        },
        {
          "bundlePath" : "\/Applications\/Xcode-15.0.1.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/DeviceTypes\/iPad (10th generation).simdevicetype",
          "name" : "iPad (10th generation)",
          "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-10th-generation",
          "productFamily" : "iPad"
        },
        {
          "bundlePath" : "\/Applications\/Xcode-15.0.1.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/DeviceTypes\/iPad mini (6th generation).simdevicetype",
          "name" : "iPad mini (6th generation)",
          "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-mini-6th-generation",
          "productFamily" : "iPad"
        },
        {
          "bundlePath" : "\/Applications\/Xcode-15.0.1.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/DeviceTypes\/iPad Pro (11-inch) (4th generation).simdevicetype",
          "name" : "iPad Pro (11-inch) (4th generation)",
          "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-Pro-11-inch-4th-generation-8GB",
          "productFamily" : "iPad"
        },
        {
          "bundlePath" : "\/Applications\/Xcode-15.0.1.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/DeviceTypes\/iPad Pro (11-inch) (4th generation) (16GB).simdevicetype",
          "name" : "iPad Pro (11-inch) (4th generation) (16GB)",
          "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-Pro-11-inch-4th-generation-16GB",
          "productFamily" : "iPad"
        },
        {
          "bundlePath" : "\/Applications\/Xcode-15.0.1.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/DeviceTypes\/iPad Pro (12.9-inch) (6th generation).simdevicetype",
          "name" : "iPad Pro (12.9-inch) (6th generation)",
          "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-Pro-12-9-inch-6th-generation-8GB",
          "productFamily" : "iPad"
        },
        {
          "bundlePath" : "\/Applications\/Xcode-15.0.1.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/DeviceTypes\/iPad Pro (12.9-inch) (6th generation) (16GB).simdevicetype",
          "name" : "iPad Pro (12.9-inch) (6th generation) (16GB)",
          "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-Pro-12-9-inch-6th-generation-16GB",
          "productFamily" : "iPad"
        }
      ]
    }
  ]
}

@GHMarcus Thanks, your solution works.
Closing, but It still feels like this is a breaking change. cc @joshdholtz @lacostej

@michalsrutek
I feel the same, but good my solution helped you too. Furthermore it is a little inconsistant, for run_tests it helps to use the cut off version. For snapshots it will not find any simulators. So at the end I updated everything to iOS 17.2 where everything works fine again.


Parameterized tests are non-functional when using the pre-processor

When using the preprocessor on Ceedling files, it breaks parameterized tests (stripping away the TEST_CASE declarations before the runner generator can get ahold of them). In most cases, this is alright, but let's say I want to run the following test:
#include <stdint.h>

#define MY_CONSTANT 1000

void setUp(void)
{
    myModule_Init(MY_CONSTANT);
}

TEST_CASE(0)
TEST_CASE(MY_CONSTANT - 1)
void test_does_something_when_below_threshold(uint32_t val)
{
    TEST_ASSERT_FALSE(myModule_doThing(val));
}

TEST_CASE(MY_CONSTANT + 1)
TEST_CASE(MY_CONSTANT)
TEST_CASE(UINT32_MAX)
void test_does_something_else_when_above_threshold(uint32_t val)
{
    TEST_ASSERT(myModule_doThing(val));
}

This will fail to ever compile -- if the preprocessor is used, the TEST_CASEs disappear. If it's not, the MY_CONSTANT definition will be blindly copied into the test runner, where that macro is undefined.
There should be a way to cleanly handle this, especially for people (like me) who habitually keep :use_test_preprocessor: TRUE.
If the current semantics need to stay the same, the TEST_CASE macro could be made to expand not to nothing, but to some construct which won't affect compilation but will still be visible after pre-processing. I'm honestly not sure what that should be, though.
Otherwise, maybe there could be a different way of defining these sorts of parametrized tests.

One final comment. With the above solution, something like
TEST_VALUE(UINT32_MAX)

expands to

TEST_VALUE(

(4294967295U)

)

which confuses the test generator.

This mechanism usesvariadic macros and it seems that it is not applicable with compilers that do not support variadic macros.


bin/setup issue

hi, i tried to follow the steps to setup the env, but bin/setup kept giving out this error:
ruby 3.2.0 (2022-12-25 revision a528908271) [x86_64-linux]
Docker version 20.10.12, build 20.10.12-0ubuntu4
error:
/rails7-startkit$ bin/setup
Docker version 20.10.12, build 20.10.12-0ubuntu4

Launching PgSQL container
unknown shorthand flag: 'f' in -f
See 'docker --help'.

Usage:  docker [OPTIONS] COMMAND
A self-sufficient runtime for containers
Options:
--config string      Location of client config files (default "/home/cmb/.docker")
-c, --context string     Name of the context to use to connect to the daemon (overrides DOCKER_HOST env var and default context set with "docker context use")
-D, --debug              Enable debug mode
-H, --host list          Daemon socket(s) to connect to
-l, --log-level string   Set the logging level ("debug"|"info"|"warn"|"error"|"fatal") (default "info")
--tls                Use TLS; implied by --tlsverify
--tlscacert string   Trust certs signed only by this CA (default "/home/cmb/.docker/ca.pem")
--tlscert string     Path to TLS certificate file (default "/home/cmb/.docker/cert.pem")
--tlskey string      Path to TLS key file (default "/home/cmb/.docker/key.pem")
--tlsverify          Use TLS and verify the remote
-v, --version            Print version information and quit

Hey @gkeepa ! Thank you for your report!
There must  be executed docker compose command, not docker
Launching PgSQL container
unknown shorthand flag: 'f' in -f
See 'docker --help'.

Can you please check wha the following commands give you.
$ docker --help

$ docker compose --help

On my laptop I have the following:
$ docker --version
Docker version 20.10.21

$ docker --help

Usage:  docker [OPTIONS] COMMAND

A self-sufficient runtime for containers

Options:
      --config string      Location of client config files (default "/Users/the-teacher/.docker")
  -c, --context string     Name of the context to use to connect to the daemon (overrides DOCKER_HOST env var and
                           default context set with "docker context use")
  -D, --debug              Enable debug mode
  -H, --host list          Daemon socket(s) to connect to
  -l, --log-level string   Set the logging level ("debug"|"info"|"warn"|"error"|"fatal") (default "info")
      --tls                Use TLS; implied by --tlsverify
      --tlscacert string   Trust certs signed only by this CA (default "/Users/the-teacher/.docker/ca.pem")
      --tlscert string     Path to TLS certificate file (default "/Users/the-teacher/.docker/cert.pem")
      --tlskey string      Path to TLS key file (default "/Users/the-teacher/.docker/key.pem")
      --tlsverify          Use TLS and verify the remote
  -v, --version            Print version information and quit

$ docker compose --help

Usage:  docker compose [OPTIONS] COMMAND

Docker Compose

Options:
    --ansi string                Control when to print ANSI control characters ("never"|"always"|"auto") (default "auto")
    --compatibility              Run compose in backward compatibility mode
    --env-file string            Specify an alternate environment file.
-f, --file stringArray           Compose configuration files
    --profile stringArray        Specify a profile to enable
    --project-directory string   Specify an alternate working directory
                                 (default: the path of the, first specified, Compose file)
-p, --project-name string        Project name

thanks.  what's your docker compose version, mine doesnt have the -f, -d option, my docker version is 20.10.12:
$ docker compose -help
unknown shorthand flag: 'e' in -elp
See 'docker --help'.
Usage:  docker [OPTIONS] COMMAND
A self-sufficient runtime for containers
Options:
--config string      Location of client config files (default "/home/cmb/.docker")
-c, --context string     Name of the context to use to connect to the daemon (overrides DOCKER_HOST env var and default context set with "docker context use")
-D, --debug              Enable debug mode
-H, --host list          Daemon socket(s) to connect to
-l, --log-level string   Set the logging level ("debug"|"info"|"warn"|"error"|"fatal") (default "info")
--tls                Use TLS; implied by --tlsverify
--tlscacert string   Trust certs signed only by this CA (default "/home/cmb/.docker/ca.pem")
--tlscert string     Path to TLS certificate file (default "/home/cmb/.docker/cert.pem")
--tlskey string      Path to TLS key file (default "/home/cmb/.docker/key.pem")
--tlsverify          Use TLS and verify the remote
-v, --version            Print version information and quit

@gkeepa hello again!
$ docker compose -help
unknown shorthand flag: 'e' in -elp

unknown shorthand flag: 'e' in -elp
Looks like you mistype the command and got help information for docker not for docker compose
Can you please try one more time and let me know about your results.
docker compose --help

Thank you!

On my side
$ docker-compose --version
Docker Compose version v2.13.0

and
$ docker compose

Usage:  docker compose [OPTIONS] COMMAND

Docker Compose

Options:
      --ansi string                Control when to print ANSI control characters ("never"|"always"|"auto") (default "auto")
      --compatibility              Run compose in backward compatibility mode
      --env-file string            Specify an alternate environment file.
  -f, --file stringArray           Compose configuration files
      --profile stringArray        Specify a profile to enable
      --project-directory string   Specify an alternate working directory
                                   (default: the path of the, first specified, Compose file)
  -p, --project-name string        Project name

hi, i typed 'docker compose --help', it still showing the same help:
$ docker compose --help
Usage:  docker [OPTIONS] COMMAND
A self-sufficient runtime for containers
Options:
--config string      Location of client config files (default "/home/cmb/.docker")
-c, --context string     Name of the context to use to connect to the daemon (overrides DOCKER_HOST env var and default context set with "docker context use")
-D, --debug              Enable debug mode
-H, --host list          Daemon socket(s) to connect to
-l, --log-level string   Set the logging level ("debug"|"info"|"warn"|"error"|"fatal") (default "info")
--tls                Use TLS; implied by --tlsverify
--tlscacert string   Trust certs signed only by this CA (default "/home/cmb/.docker/ca.pem")
--tlscert string     Path to TLS certificate file (default "/home/cmb/.docker/cert.pem")
--tlskey string      Path to TLS key file (default "/home/cmb/.docker/key.pem")
--tlsverify          Use TLS and verify the remote
-v, --version            Print version information and quit
however, i tried to use 'docker-compose  --help'  i can see the '-f' option, but still no '-d' option:
$ docker-compose --version
docker-compose version 1.29.2, build unknown
$ docker-compose --help
Define and run multi-container applications with Docker.
Usage:
docker-compose [-f ...] [--profile ...] [options] [--] [COMMAND] [ARGS...]
docker-compose -h|--help
Options:
-f, --file FILE             Specify an alternate compose file
(default: docker-compose.yml)
-p, --project-name NAME     Specify an alternate project name
(default: directory name)
--profile NAME              Specify a profile to enable
-c, --context NAME          Specify a context name
--verbose                   Show more output
--log-level LEVEL           Set log level (DEBUG, INFO, WARNING, ERROR, CRITICAL)
--ansi (never|always|auto)  Control when to print ANSI control characters
--no-ansi                   Do not print ANSI control characters (DEPRECATED)
-v, --version               Print version and exit
-H, --host HOST             Daemon socket to connect to
--tls                       Use TLS; implied by --tlsverify
--tlscacert CA_PATH         Trust certs signed only by this CA
--tlscert CLIENT_CERT_PATH  Path to TLS certificate file
--tlskey TLS_KEY_PATH       Path to TLS key file
--tlsverify                 Use TLS and verify the remote
--skip-hostname-check       Don't check the daemon's hostname against the
name specified in the client certificate
--project-directory PATH    Specify an alternate working directory
(default: the path of the Compose file)
--compatibility             If set, Compose will attempt to convert keys
in v3 files to their non-Swarm equivalent (DEPRECATED)
--env-file PATH             Specify an alternate environment file

@gkeepa thank you a lot!
The case is clear!
On linux we have only docker-compose (with minus in between), on MacOS there is stand alone command docker compose.
Ok. I need to think what to do.
Great investigation and help. Thank you for your efforts!

@gkeepa
Looks like on Linux you use an old version of Docker compose.
For sure it is possible to use even it. But maybe you can try to follow steps from this article to install Docker Compose v2?
https://www.rockyourcode.com/how-to-install-docker-compose-v2-on-linux-2021/

This is the reason of the issue.
$ docker-compose --version
docker-compose version 1.29.2, build unknown

My project is using command docker compose (without hyphen). It is 2nd version.
On Mac I have
$ docker compose version
Docker Compose version v2.13.0

Btw, on my Debian server it also shows 2nd version
# docker compose version
Docker Compose version v2.12.2

On mac I can run docker-compose and docker compose
On Debian server I have only docker compose

thanks.  i just installed docker-compose v2.15.1, but still getting the same issue:
$docker-compose --version
Docker Compose version v2.15.1
i think the prob is that linux is treating docker and docker-compose as 2 separate components:
i dont know much about docker and docker compose(want to learn through this project), according to the help text, docker supports '-d' and docker-compose supports '-f', so the command below in the setup script will keep giving me problems, unless it can be translated into linux command:
step_info "Launching PgSQL container"
system('docker compose -f docker/docker-compose.yml up psql -d')

based on your feedback I will try to make a workaround. Thank you a lot for your help and feedback!
I will let you know about any results ASAP.

i think i found a solution: my current docker was installed by sudo apt-get install docker, i uninstalled it and followed the following steps and was able to run the script now.
https://docs.docker.com/desktop/install/ubuntu/

however, im now getting this error after running bin/setup:
bin/setup
Docker version 20.10.23, build 7155243

Launching PgSQL container
[+] Running 1/0
⠿ Container rails7app-psql-1  Running                                                                                0.0s
Waiting 3 seconds to initialize PgSQL database
touch db/PGSQL/.keep
/home/cmb/.rvm/rubies/ruby-3.2.0/lib/ruby/3.2.0/fileutils.rb:2028:in utime': Permission denied @ apply2files - db/PGSQL/.keep (Errno::EACCES)  from /home/cmb/.rvm/rubies/ruby-3.2.0/lib/ruby/3.2.0/fileutils.rb:2028:in block in touch'
from /home/cmb/.rvm/rubies/ruby-3.2.0/lib/ruby/3.2.0/fileutils.rb:2025:in each'  from /home/cmb/.rvm/rubies/ruby-3.2.0/lib/ruby/3.2.0/fileutils.rb:2025:in touch'
from bin/setup:18:in block in <main>'  from /home/cmb/.rvm/rubies/ruby-3.2.0/lib/ruby/3.2.0/fileutils.rb:244:in chdir'
from /home/cmb/.rvm/rubies/ruby-3.2.0/lib/ruby/3.2.0/fileutils.rb:244:in cd'  from bin/setup:8:in '


Migrate GitHub Issues to 1.0.0-preview

Migrated the project to Ml.Net 1.0.0-preview

Thanks for identifying. I fixed the spelling. Can you check once

Nice work, @prathyusha12345!

@cjgronlund - Do you explicitly approve this PR for BUILD ask mode?

Approve.


ffi (1.9.10) Error

After using bundle install  i got an error:

An error occurred while installing ffi (1.9.10), and Bundler cannot continue.
Make sure that gem install ffi -v '1.9.10' succeeds before bundling.

I fixed this error with this solution on Ubuntu:
apt-get install libmysqlclient-dev ruby-dev
maybe install it as root


Web Interface

Do you have a web interface for package-size?
I have a similar tool called Package Phobia which shows a single package's history over time.
There's also Bundle Phobia which shows the bundle size over time.
However I haven't added any comparison views yet.

If I'm understanding everything correctly, package-size is most analogous to bundlephobia.
Are there any important differences between the two that are worth pointing out?
I only ask because I'm definitely getting slightly different size outputs between the two when AFAIK they should be calculating roughly the same thing.
For example:
$ bundle-phobia ow
ow (0.4.0) has 0 dependencies for a weight of 56661B (15233B gzipped)

$ package-size ow
  package   size       minified  gzipped
<EMAIL_ADDRESS>119.31 KB  65.69 KB  17.5 KB

Thanks!

Possibly answering my own question.. is it just due to slightly different webpack configs and babel-preset-env options?


[SPARK-43115][CONNECT][PS][TESTS] Split pyspark-pandas-connect from pyspark-connect module

What changes were proposed in this pull request?
Splits pyspark-pandas-connect from pyspark-connect module.
Why are the changes needed?
Now that we have pandas API on Spark Connect, the tests for pyspark-connect module take long time:

before pandas API: about 40 mins
after pandas API: about 2-3 hours

so we should split pyspark-pandas-connect from pyspark-connect module.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
Existing tests.

+1

merged to master


[Cinder CSI] ExpandVolume will eventyally change Microversion to 3.42

What happened:
As all CSI calls can be called simultaneously by multiple threads you should never modify global objects like os.blockstorage. As eventually some thread will fetch the temporary change as initial and then save it later. So then the "temporary" change will become permanent.
If special client is needed it should be created for that call so that parallel calls would not mess up each others.
Anything else we need to know?:
It was implement in https://github.com/kubernetes/cloud-provider-openstack/pull/620
and "fixed" in https://github.com/kubernetes/cloud-provider-openstack/pull/786
/kind bug

@mape90 I'm confused , as per issue description , it already says fixed in #786 , so what else is expected ?

@ramineni it is "fixed" because the fix do not actually fix anything. It fixes the problem when you only execute one resize action at time. However in real environments you will eventually have multiple simultaneous resize actions and each thread will modify the same object and that cause race condition where the temporary value is stored as initial. That fix just isn't thread safe.
Also as it changes global object it will have affect to all other actions that are done during that resize action. It could be fixed by just adding lock so that only one thread can access it by any time. However this defeats the purpose of having multiple threads.
So if that micro version change is needed it is safer to do it in own client object. It will have small performance hit as you need to reauthenticate  against the API but it would not them mess up any other actions that would be simultaneously be made.

@mape90 Thanks for detail info. Got it.

@mape90 thanks for the bug report, I totally missed this case.
from my point of view there can be at least four kinds of fix:

set permanent minimal microversion during the initialization
create a deep copy of the client during the resize action
create a client from the global authed provider client for each resize action (NewBlockStorageV3)
modify gophercloud to support calls with a microversion as a parameter

each of the solution have pros and cons. @ramineni , @mape90 do you have other suggestions?

@kayrus how the version is set initially for the client? Is just gophercloud hardcoded thing or is it determined during authentication?
Also is is common that you can resize with this microversion, but then other calls will fail using this microversion?
If it just everything works or nothing works then global override flag is best option as then behavior is deterministic. Then we could just check the microversion and report that resize isn't supported.
If openstack allows certain operations with this microversion and fails with others then separate global object is good option.

@mape90 initially microversion is not set, because most of the standard operations don't require it. However it must be set for live resize operations. Also you have to remember that some later microversions can remove functionality, which was supported in earlier microversions.
Supported microversions can be checked during the client initialization, but unfortunately this feature is supported only for limited resource types in gophercloud.


stop the commit of id_rsa private key used for git deployment

Is it good practice to commit the id_rsa private key up to github?

Yes, the SSH keys are included in the backup, but no, that is not an issue because the repository we push to is private.


dynamically load blog teaser

Please always provide the GitHub issue(s) your PR is for, as well as test URLs where your change can be observed (before and after):
Fix #22
Test URLs:

Before: https://main--24petchwatch--hlxsites.hlx.page/
After: https://dynamic-blog-teaser--24petchwatch--hlxsites.hlx.page/

CORs issue is fixed from the server end and this is ready to merge.


bugfix/metadata-source

this PR addresses an issue where the metadata used by the unit test was different from the snippet generation one. This would create disparities on the changes introduced by the metadata cleanup process.

@zengin switching to this version of the metadata is more accurate but we have 20+ unit tests failing now, do you want to take on resolving the metadata issues/unit tests?

@zengin switching to this version of the metadata is more accurate but we have 20+ unit tests failing now, do you want to take on resolving the metadata issues/unit tests?

@baywet the failure is happening on the broken Beta metadata, which breaks all the tests as the initialization is happening at the beginning for all the tests. I removed the interdependency for V1 tests by delaying the initialization of the edm model.

@baywet the failure is happening on the broken Beta metadata, which breaks all the tests as the initialization is happening at the beginning for all the tests. I removed the interdependency for V1 tests by delaying the initialization of the edm model.

Yeah I thought about moving to lazies from a perf perspective but I was lazy myself... Thanks for doing this!

Yeah I thought about moving to lazies from a perf perspective but I was lazy myself... Thanks for doing this!

For reference I'm guessing we're still waiting on https://github.com/microsoftgraph/msgraph-metadata/pull/48

For reference I'm guessing we're still waiting on https://github.com/microsoftgraph/msgraph-metadata/pull/48

@baywet, thanks for linking the metadata PR. Tests are passing locally if I update the github endpoint to @MIchaelMainer's metadata branch, but for merging I will wait on getting the green here for PR validation.

@baywet, thanks for linking the metadata PR. Tests are passing locally if I update the github endpoint to @MIchaelMainer's metadata branch, but for merging I will wait on getting the green here for PR validation.


Enable cleaning up of hosted cluster cloud resources on destroy

What this PR does / why we need it:
Enables the removal of cloud resources created during the lifetime of a
guest cluster. These include:

registry storage
ingress load balancer and dns records
load balancer services
persistent volumes

Removal of these resources will occur when the following annotation is
present:
hypershift.openshift.io/cleanup-cloud-resources: "true"
The CLI adds this annotation to a HostedCluster when invoking the
destroy command with the 'destroy-cloud-resources' flag:
hypershift destroy cluster aws --destroy-cloud-resources
Which issue(s) this PR fixes:
Fixes #HOSTEDCP-486
Checklist

[x] Subject and description added to both, commit and PR.
[x] Relevant issues have been referenced.
[x] This change includes docs.
[x] This change includes unit tests.

@csrwng also, can we enable this for the e2e tests?

@alvaroaleman addressed your comments. Also made it the default for e2e clusters.

@alvaroaleman addressed your latest comments

/retest-required


Bluetooth Crash - Bluetooth Share has stopped

Hello everybody,
I'm using the Estimote SDK with an Android device to scan nearby beacons, but for no reason It started to give an error "Blueortooth Share has stopped", the Bluetooth crashes and I can't scan beacons. Shutting down the phone and uninstalling the app didn't work.
Looking in the web I found out that there was a bug for Android 4.3 and 4.4, for which there is a solution, and also there is a second bug in Android 5 and 6 solved in the release of March 2016. The difference is that while those bugs completely block the bluetooth, in my case this affects only the apps using the Estimote SDK.
I tried to use the Estimote App and the error appears, the first time that I use Proximity Demo or Distance Demo it works, then if I exit and enter again I get the error, than if I exit and enter again it works again and if I exit and enter again I get the error again.
In my app the bluetooth never works, maybe because I'm monitoring 15 differents regions (all of them only with UUID).
The app works in other devices, so I'd say that there is some internal status that went wrong and only affects the Estimote SDK, probably the BeaconService.
So, how can I fix and prevent this issue?
The given error is a NoSuchElementException in the BluetoothScanManager, I also got a DeadObjectException, but I think that the first one is the problem. I add the logcat from my app and from the Estimote App, since is probably an internal error I added the whole log that is really long, I tried to color the logs and make the most important bold. For the Estimote App Log there is the full log and at the bottom a second try with only Warning and Error.
Logcat - Error Unfortunately Bluetooth Share has stopped.docx
Logcat Estimote App - Error Unfortunately Bluetooth Share has stopped.docx
This problem in previous version was caused by a great number of MAC address received, in particular the beacons Gimbal (which I use) change MAC every 0.8 seconds and they cause this error.
The device I'm using is an Asus Zenfone 2 with Android API 21.
I know that is really hard to find a solution, since is an internal setting that got errors, but this problem completely destroy my app and any other app using your SDK.
Thanks for your help

Hello, I figured out the problem, it's the number of scanned regions.
As said in this post, there is a bug in Android 5 that makes the bluetooth crashes if there are too many ScanFilter, by reducing the regions from 15 to 5 the  crash doesn't happen.
The bug appeared after updating to build LRX21V.WW-ASUS_Z00A-<IP_ADDRESS>_20160504_4658_user_044030427_201501060109 (the only page I found about this release is this, they say "Update Bluetooth FW").
I suppose that the Estimote App too has a good amount of ScanFilter, but still I don't know if there is a reason why only the apps using the Estimote SDK were affected.
Hope this helps

Hello @scailbc !
Sorry for the delay. I appreciate your contribution :) Yes, the problem is with too many ScanFilters. If you need to turn off this feature, we have a super secret flag (Just kiddin, not that super secret, but this is not the official way for doing things - rather for debuging):
<meta-data android:name="disable_hardware_filtering" android:value="true" />
to your Manifest file inside application content. It may help with such problems. Anyway, you should update your Android system, because this error was fixed some time ago, as far as I know :)
Have a nice day!

Thanks, it worked. In my manifest I added
<application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme">
        <meta-data android:name="disable_hardware_filtering" android:value="true" />
Just to know, there are reasons to not add this? Any drawbacks?

I'm glad it worked :)
In general, hardware filtering allows your phone to apply filtering on hardware level. It means, if your phone is in deep sleep (e.x Doze mode), it can filter all results and notify your system only when it has valuable data. Strictly saying, by using this flag you cause some devices (generally with android 5.0+) to drain more battery. But in fact this is the only one drawback, so don't worry - no errors will arise :)


Error/exception reporting system

Detailed Description
Allow users to submit private exception logs if they choose to. This feature could also be potentially turned off in settings, being also off by default.

Closed via https://github.com/LN-Zap/zap-desktop/pull/2754


Navigation links are invalid

All navigation links from https://github.com/webpack/webpack.js.org/blob/master/src/components/Navigation/Links.json get a / prepended in https://github.com/webpack/webpack.js.org/blob/master/src/components/Navigation/Navigation.jsx#L33 and https://github.com/webpack/webpack.js.org/blob/master/src/components/Navigation/Navigation.jsx#L87
Since some Urls in the json are protocol relative links (eg. //medium.com/webpack), the resulting href in the anchors have three slashes in the beginning. This is not a valid url.

hey can i work on this issue ?


Add SwiftLint action file

Note: It's okay for the SwiftLint action to fail for now. It will succeed once #151 is merged

The gh action from norio-nomura is quite old. Can we use this fork instead: https://github.com/sinoru/actions-swiftlint


Org Summary shows wrong space count after deleting a space

Entity Service fails to emit changes to the org enity after the org-space reducer edit's the org's space list
The service only emits changes to the entity after the entity's request state changes

private getEntityObservable = (
    entityMonitor: EntityMonitor<T>,
    actionDispatch: Function
  ): Observable<EntityInfo> => {
    return entityMonitor.entityRequest$
      .withLatestFrom(entityMonitor.entity$)

I don't think we should blindly change this to combineLatest. Could try and put an updated timestamp in the request object update section?

If you delete from the space page itself then it works as expected. Deleting from the space card on the org summary does not update the count.


Add quotes to URL in covid_cleaning_exploration

This is needed because I use the fish shell, which has trouble parsing URLs
Sorry for being the sole weird person using fish :)

No worries, I also got issues with zsh and I forgot to push changes upstream


Command line Recount throws error and ReactionCounter always showing 0

Hi, this is the first time I open an issue on GitHub, so forgive me if I am missing some conventions. First of all, thank you for this package.
When running "php artisan:love recount" in the command prompt, I get this error:

Symfony\Component\Debug\Exception\FatalThrowableError  : Call to undefined method Cog\Laravel\Love\Reactant\ReactionTotal\Models\NullReactionTotal::update()
at /var/www/theproject/vendor/cybercog/laravel-love/src/Console/Commands/Recount.php:166
162|         }
163|
164|         /** @var \Cog\Laravel\Love\Reactant\ReactionTotal\Models\ReactionTotal $total */
165|         $total = $reactant->getReactionTotal();
166|         $total->update([
167|             'count' => $totalCount,
168|             'weight' => $totalWeight,
169|         ]);
170|     }

I also have an issue with reaction count in general, it seems the database tables for counters are empty, even when there are reactions.
I have some reactions as can been seen below. The reactions are added through for example $reacterFacade->reactTo($likable, $likestatus); and enter the love_reactions table as expected as seen below.
mysql> select * from love_reactions;
+-----+-------------+------------+------------------+---------------------+---------------------+
| id  | reactant_id | reacter_id | reaction_type_id | created_at          | updated_at          |
+-----+-------------+------------+------------------+---------------------+---------------------+
| 146 |           2 |          2 |                2 | 2019-07-16 03:24:20 | 2019-07-16 03:24:20 |
| 147 |           4 |          2 |                1 | 2019-07-16 03:24:22 | 2019-07-16 03:24:22 |
| 152 |           3 |          2 |                1 | 2019-07-16 03:25:04 | 2019-07-16 03:25:04 |
+-----+-------------+------------+------------------+---------------------+---------------------+

But the counters/totals tables are still empty.
mysql> select * from love_reactant_reaction_counters;
Empty set (0.00 sec)

mysql> select * from love_reactant_reaction_totals;
Empty set (0.00 sec)

Something like $reactantFacade->getReactionCounterOfType('Like')->getCount() also returns 0.
As far as I can tell I have set up my models as per the installation instructions and have an App\User as the Reacterable and an App\Review as Reactable.
Any advise is much appreciated.

Okay, so I have now realized that queues are being used for the Event Listeners.
Cog\Laravel\Love\Reactant\Listeners\IncrementAggregates
Cog\Laravel\Love\Reactant\Listeners\DecrementAggregates
I did not have my queue driver properly set up so these jobs were never executed.
I believe the issue can be closed.

Hi, @NicklasT! Thank you for the feedback. We should highlight this in documentation.
You are right, those 2 listeners are waiting for ReactionHasBeenRemoved or ReactionHasBeenAdded events being fired and updates aggregates values in database.
If you have QUEUE_CONNECTION=sync defined in .env file - aggregates update will be done synchronously. To prevent long wait time and browser hanging connection just setup queue connection in your application and updates will be executed on background. This happens because both listeners implements Illuminate\Contracts\Queue\ShouldQueue interface.

I've added Aggregation Queue to documentation.

@antonkomarev I also just got this error. In my opinion the error should be caught and a more descriptive error should be shown.. the Call to undefined method Cog\Laravel\Love\Reactant\ReactionTotal\Models\NullReactionTotal::update() being caused by queues not being active is quite confusing
Also, it would be nice if the love:recount command had an optional parameter so it can be executed on the sync queue without having to change the queue settings in the .env file
My queue driver is set to redis but I have many jobs which I can run on sync when executed manually from the command line by doing something like this:
    public function __construct(QueueManager $queueManager)
    {
        $this->queueManager = $queueManager;

        parent::__construct();
    }

    public function handle()
    {
        ini_set('max_execution_time', 9999);
        ini_set('memory_limit', '2048M');

        $this->queueManager->setDefaultDriver('sync');

        ...

@antonkomarev I just made sure that my queues are working now, I can see that Laravel Horizon is up and running, yet I am still getting the same error when I try to run love:recount
Is there something more I need to do in order to make this work with Horizon?

Actually now I'm trying with the QUEUE_CONNECTION=sync and still getting the same error.. hrmm..


🐛 BUG: Creating a new typescript project fails with an error

Which Cloudflare product(s) does this pertain to?
C3 (npm create cloudflare), Wrangler
What version(s) of the tool(s) are you using?
Wrangler 3.60.3
What version of Node are you using?
22.10.0
What operating system and version are you using?
CFLinux
Describe the Bug
Observed behavior
Creating a new project using typescript preset fails to install dependencies and fails with an "Error" with no error message. And it doesn't add the workers-types dependency.
Expected behavior
We should be able to create a new project without any issues.
Steps to reproduce
Run the following commands:

npx wrangler init
Select: hello world example > hello world worker > typescript

The installation fails with "Error" without enabling Warp or any proxy.

Go to the newly created project
Run npm install (succeeds)
Run npm run dev (or node --run dev)

Fails with
Error: Cannot find module 'rollup-plugin-node-polyfills/polyfills/empty.js'

Remove node_modules folder
Run pnpm install
Run node --run dev and it succeeds.

Please provide a link to a minimal reproduction
No response
Please provide any relevant error logs
No response

Wrangler 3.60.3

Is that right? (wrangler is now 3.87.0)
Also npx wrangler init is deprecated, you should use npx create-cloudflare@latest.
Can you try with an up to date version of wrangler?
Thanks!

npx create-cloudflare@latest still fails.
❯ npx create-cloudflare@latest
Need to install the following packages:
<EMAIL_ADDRESS>Ok to proceed? (y) y

──────────────────────────────────────────────────────────────────────────────────────────────────────────
👋 Welcome to create-cloudflare v2.32.1!
🧡 Let's get started.
📊 Cloudflare collects telemetry about your usage of Create-Cloudflare.

Learn more at: https://github.com/cloudflare/workers-sdk/blob/main/packages/create-cloudflare/telemetry.md
──────────────────────────────────────────────────────────────────────────────────────────────────────────

╭ Create an application with Cloudflare Step 1 of 3
│
├ In which directory do you want to create your application?
│ dir ./test-worker
│
├ What would you like to start with?
│ category Hello World example
│
├ Which template would you like to use?
│ type Hello World Worker
│
├ Which language do you want to use?
│ lang TypeScript
│
├ Copying template files
│ files copied to project directory
│
├ Updating name in `package.json`
│ updated `package.json`
│
╰  ERROR  Error

The newly created project still doesn't have @cloudflare/worker-types dependency, which is used inside tsconfig.json
~/coding/test-worker via ⬢ v22.10.0
❯ cat package.json
{
  "name": "test-worker",
  "version": "0.0.0",
  "private": true,
  "scripts": {
    "deploy": "wrangler deploy",
    "dev": "wrangler dev",
    "start": "wrangler dev",
    "test": "vitest",
    "cf-typegen": "wrangler types"
  },
  "devDependencies": {
    "@cloudflare/vitest-pool-workers": "^0.5.2",
    "typescript": "^5.5.2",
    "vitest": "2.0.5",
    "wrangler": "^3.60.3"
  }
}%

@anonrig This is where your install error:
├ Updating name in `package.json`
│ updated `package.json`
│
╰  ERROR  Error

What I have on MacOS, with the same c3 version:
├ Updating name in `package.json`
│ updated `package.json`
│
├ Installing dependencies
│ installed via `npm install`
│
╰ Application created

╭ Configuring your application for Cloudflare Step 2 of 3
│
├ Installing @cloudflare/workers-types
│ installed via npm
│
├ Adding latest types to `tsconfig.json`
│ added @cloudflare/workers-types/2023-07-01
│
├ Retrieving current workerd compatibility date
│ compatibility date 2024-11-12

Any chance you have more logs?
If not, what happens if you:
cd test-worker
npm i

I don't have any new logs at the moment. v23 on linux is the best bet.

v23

What do you mean

I meant: I reproduced this on Node.js v23 on linux.


CI tests not run

The tests job in CI workflow just does not run.  Tried this, but it is apparently not even sufficient.  Baffled that Github does not even give any warning about that situation.
Quite annoying, master build has been broken by the incomplete Ultramarine PR :frowning_face:

I'm aware of the issue, but thanks for reminding me about it. I will really try to fix everything next week.

Should be fixed by https://github.com/stanislav-tkach/os_info/pull/366.


dx_pttrn excludes COVID-19 codes

Thanks for the great package! We have a large DB of codes and DRGs assigned at a large regional hospital system and we've been looking at cases where this library disagrees with the billed DRGs. One high volume case is patients with a primary DX of U071 COVID-19. The CMS files show that these patients should be assigned DRG 177-179 but drgpy returns DRG 000. This seems to be due to dx_pttrn excluding these codes on line 6 of _mdcsrdr.py. I looked through the history and couldn't figure out why the code was written this way. Obviously this code was written before COVID-19. Is there a reason to exclude 'U' codes from this library? If not, may I submit a pull request to fix this?
Thanks!

@mdbecker sorry for this long overdue reply. I just pushed a fix on this. Thanks so much!


[RD - Tech Debt] Refactor RD2 tests so they are not re-run in builds

Critical Changes
Changes
Issues Closed
Community Ideas Delivered
New Metadata
Deleted Metadata

Attached to W-8071518


Customize mxapp deployment

Documents Operator's advanced resource configuration features, how to modify them, briefly introducing first what these resources mean.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.4 out of 5 committers have signed the CLA.:white_check_mark: ConnorLand:white_check_mark: MarkvanMents:white_check_mark: MariaShaposhnikova:white_check_mark: oscarpfernandez:x: ilagordhanilagordhan seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

@oscarpfernandez - can I publish this?

@MarkvanMents Yes, please proceed with the publishing. Thanks.
(Apologies for the late reply, but this account is linked to a non-corporate email, so some notification go under the radar)

Merging.
OK - I'll try to remember to let you know on Slack if I'm waiting for something.
Thanks
Mark


Grouping (Image planes)

Only images from same field of view should appear in same group.
Here an image from Coronal series appears alongside images from sagittal series in group1.

Fixed in the latest version 0.4


Dependency on linux-headers-generic

Required Info

Camera Model
D400

Firmware Version
5.10.3-<IP_ADDRESS>

Operating System & Version
Linux (Ubuntu 18.04)

Kernel Version (Linux Only)
4.15 lowlatency

Platform
PC

SDK Version
Most recent

Language
C++

Segment
Robot

Issue Description
By inspecting the dependencies listed in the librealsense package.xml file [see link], I have found that it lists linux-headers-generic. This is a valid rosdep key [source], which means that under normal circumstances it should be installed by the rosdep tool.
Now, my questions:

Why is this package listed as a dependency? I think it reduces compatibility with systems that have a different type of kernel (realtime, lowlatency, etc), and can inadvertedly trigger the installation of unexpected depends.

Would it be possible to remove it? If affirmative, I could submit a PR as soon as possible.

Thank you.

Are the Linux generic packages actually used during build?

@YoshuaNava ,
Your notes sound valid and it could be that this depend is an overkill and can be replaced.
package.xml is part of the ROS installation and librealsense package is still not available as a ROS debian package.
That in mind, it would help to validate your notes if you could please describe the operations that triggered reading the file package.xml?

Hi doronhi,
I'm currently generating Debian packages of librealsense and realsense2_camera. While running  rosdep to install all the pkg depends, prior to generating debians, I observed that it tried to install Linux image generic.
I tried removing it locally, and it didn't seem to cause any issues.

@YoshuaNava Any other questions about this? Looking forward to your update. Thanks!

No more questions at the moment.
Thank you.


Resolve errors

JIRA Ticket(s) if any

MOB-8076

Description

We have changed package dependency to resolve errors.

Confirmed the errors are gone. Cut a ticket to come back and address the use of any.


clarify docs on validation and strict type checking

Change Summary
Clarify docs about Pydantic's support for custom validation and strict type checking, despite that pydantic is primarily a parsing library.
Content is based on comments by @cknoll [link] and @PyAntony [link) 1
Related issue number
#578
Checklist

[n/a] Unit tests for the changes exist
[n/a] Tests pass on CI and coverage remains at 100%
[x] Documentation reflects the changes where applicable
[x] changes/<pull request or issue id>-<github username>.md file added describing change
[x] My PR is ready to review, please add a comment including the phrase "please review" to assign reviewers

1: I'd need your email / GitHub-provided no-reply email if you'd like GitHub to recognize you as co-authors of the commit.

Please review @PrettyWood

Please update and rebase/merge with master. Thanks!

Please review.


How to set the max_grad_norm with AdamOptimizer?

New to the TensorFlow.
I am working closed with RNN. To avoid overfitting, I am trying to control the max_grad_norm when the gradient passes through.
Here is the code I worked with.
    # Define optimizer with norm limitation
cost = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(pred_y, y)) # Softmax loss
tvars = tf.trainable_variables()
grads, _ = tf.clip_by_global_norm(tf.gradients(cost, tvars), max_grad_norm)
optimizer = tf.train.AdamOptimizer(learning_rate=learning_rate) # Adam Optimizer
optimizer.apply_gradients(zip(grads, tvars))

I kept receiving the error that
TypeError: Fetch argument <tensorflow.python.training.adam.AdamOptimizer object at 0x7f0f02b1ce50> of <tensorflow.python.training.adam.AdamOptimizer object at 0x7f0f02b1ce50> has invalid type <class 'tensorflow.python.training.adam.AdamOptimizer'>, must be a string or Tensor. (Can not convert a AdamOptimizer into a Tensor or Operation.)
All suggestions are more than welcome.
Thanks

I have figured out by myself.
Once we configure the optimizer, it is always better to assign the optimizer to a new op. Then in the session, we need to change the sess.run on the new op. So the code should be
train_op = optimizer.apply_gradients(zip(grads, tvars))
And in the Session
sess.run(train_op, feed_dict={x: batch_xs, y: batch_ys_one_hot,
istate_fw: np.zeros((train_batch_size, 2n_hidden)),
istate_bw: np.zeros((train_batch_size, 2n_hidden))})
Thanks for your attentions. I learned a lot!


If page title includes emojis insertion fails

PHP Fatal error:  Uncaught PDOException: SQLSTATE[22007]: Invalid datetime format: 1366 Incorrect string value: '\xF0\x9F\x92\x99\xF0\x9F...' for column DB_NAME.yourls_url.title at row 1 in /home/XXX/public_html/includes/vendor/aura/sql/src/ExtendedPdo.php:748
Original page title like this: 💙🥀 🖤🥀

Likely related to the same problem and https://github.com/YOURLS/YOURLS/issues/2687#issuecomment-704700731 — though I never found out if that helped.
My link there was wrong, though. I must have meant to point at https://stackoverflow.com/a/53072533/5991 instead. tl;dr is check your database charset & collation, making sure it's not using latin1 or something silly. You probably want utf8mb4 or adjacent.

Likely related to the same problem and #2687 (comment) — though I never found out if that helped.
My link there was wrong, though. I must have meant to point at https://stackoverflow.com/a/53072533/5991 instead. tl;dr is check your database charset & collation, making sure it's not using latin1 or something silly. You probably want utf8mb4 or adjacent.

I set "yourls_url.title" and "yourls_url" collation utf8mb4_unicode_ci but the issue still occurs.

Charset too?
If you did, or that doesn't help either, I guess wait for the EU contingent to see this. For me it's way past bedtime, and I was hoping this would be a quick fix just by tweaking the DB. 😅

Charset too?
If you did, or that doesn't help either, I guess wait for the EU contingent to see this. For me it's way past bedtime, and I was hoping this would be a quick fix just by tweaking the DB. 😅

Yes, charset too. I think the issue related to PDO driver.

What YOURLS version ? Jesus it would be so much easier if people actually used the issue template.
I'm guessing YOURLS 1.7.9 and I'm guessing this works on 1.7.10

What YOURLS version ? Jesus it would be so much easier if people actually used the issue template.
I'm guessing YOURLS 1.7.9 and I'm guessing this works on 1.7.10

Yes, 1.7.9 which is the latest release.

When will 1.7.10 be released?

What YOURLS version ? Jesus it would be so much easier if people actually used the issue template.
I'm guessing YOURLS 1.7.9 and I'm guessing this works on 1.7.10

When will 1.7.10 be released?

As always: when it's done, no ETA


Separate upgrades pages

[ ] Bug fix #…?
[ ] New feature?
[ ] BC breaks?
[ ] Tests added?
[x] Docs added?

Proposal for separating pages about upgrades.

Unforcentally this can be done as Google already indexed UPGRADE page. So let's not change URL.


Add support for SameSite cookie attribute

https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie/SameSite

Added in bf2f430, forgot to tag it.


JDK 12 build is failing

According to the build farm of JDK12 this build has been failing since April 16.
I'd like to help out, but I need some assistance getting started.

Current steps taken:

I've forked the repo into my own GitHub account
Cloned the forked repo in my own GitHub account

 cd git-hg
 bash ./mercurialToGit.sh jdk-updates/jdk12u

The script fails withCloning into 'jdk12u'...
Warning: Permanently added the RSA host key for IP address '<IP_ADDRESS>' to the list of known hosts.
<EMAIL_ADDRESS>Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
+ exit 1

Reason: line 61 has a hardcoded repo I don't have access to
 git clone git@github.com:AdoptOpenJDK/openjdk-"$GITHUB_REPO".git "$GITHUB_REPO" || exit 1

To be able to work on this, please add this repo as an environment variable instead of hardcoding it.

added the -r/--repo argument to the script

#1089 will land shortly

Reopening this as there were quality concerns over the merge, which blocked "#1089 will land shortly".

Closing on johno's recommendation.


adding missing terms

Updating terms according to our environments.

Thanks for adding those @alegrm ! I also wanted to add "nsg:NeuronMorphology" to the context. Maybe you could modify your PR to include it?

Thanks for adding those @alegrm ! I also wanted to add "nsg:NeuronMorphology" to the context. Maybe you could modify your PR to include it?

welcome 👍 sure I can add nsg:NeuronMorphology besides nsg:NeuronMorphologyReconstruction right?

Yes, besides that one!

I think @MFSY wanted to generate this file automatically, right?


Please add a screen shot

I'd like to add this to awesome-zsh-plugins, but I prefer to add themes with screen shots so that users can see what they look like without having to install them.
Thanks!

Hi, i added a screenshot. Thank you very much for adding me to the list. I am pleased about that :)


I don't want ID auto increment, do I have an API to cancel it?

Background

I'm using Postgresql and Snowflake ID
I used to use Django ORM, it doesn't generate sequence in db if I overwrite the id field

id = models.BigIntegerField(primary_key=True, help_text='雪花 ID')

However, I overwrite the id field in ent, I still got useless generated sequence in db

return []ent.Field{
    field.Int64("id").Unique().Immutable().DefaultFunc(func() int64 {
        return tools.GenSnowflakeID()
    }),
}

Question

May I cancel auto increment in go file, instead of delete it in db

Hi @StarkSim, can you try disable it via the annotation?
	incrementalEnabled := false
	return []ent.Field{
		field.Int64("id").
			Unique().Immutable().
			Annotations(entsql.Annotation{
				Incremental: &incrementalEnabled,
			}).
			DefaultFunc(func() int64 {
				return tools.GenSnowflakeID()
			}),

The SchemaType option should also help here. Check this out and let us know if you still have troubles with it. See: https://entgo.io/docs/schema-fields/#database-type

Thank you! They both worked. 👍
It can't remove the existing sequence, but it's good enough since this is an initial work.


Add 'promise' versions of EventLoopFuture.{and,when}All{succeed,complete}

Motivation:
Most NIO APIs have two versions: one accepting a promise (often
optional) and another which returns a future. Many applications and
frameworks built on top of NIO also use this pattern. To maximise
composability we should try to provide both versions where possible.
Modifications:
Add versions of andAllSucceed, andAllComplete, whenAllSucceed
and whenAllComplete which accept an EventLoopPromise in place of
an EventLoop and defer the implementation of the future versions to
the promise versions.
Result:

Better composability.
Fewer allocations if the caller already has a promise.

but I'd still argue that we should have at least one test case that uses the API. Just that we have direct test callers into everything that's API.

What's the benefit?
I couldn't see any given they are already covered via tests for the other API but happy to add them if you have a reason to.

What's the benefit?

Two reasons really:

it's easier to spot if we change API accidentally (should be covered by the API breakage checker)
if (for any reason) we reimplement the others with another implementation, we'd be left without tests for the methods you just introduced.

What's the benefit?

Two reasons really:

it's easier to spot if we change API accidentally (should be covered by the API breakage checker)
if (for any reason) we reimplement the others with another implementation, we'd be left without tests for the methods you just introduced.

I don't buy into the first one for the reason you pointed out: the API breakage checker for us.
Second seems reasonable enough though, I'll add some tests. It'd be neat if we could check that in CI, i.e. determine when lines previously covered by tests stop being covered.


Adding New Project : Resume Builder

Is your feature request related to a problem? Please describe.
Nowadays, everyone, ranging from a student to a working professional, needs a well-built resume to apply to companies for jobs and internships. A resume not only reflects their skills but also reflects their personality and character. Companies believe much on first impression, and a good resume is what impresses them. But, the applicants either become unsuccesful to create a good resume or it takes a lot of time finding a good template for resume, and edit it.
Describe the solution you'd like.

The Resume Builder JS Extension would make the resume building process a cakewalk!
Just enter the details like, name, personal details, academic details, work experience, skills, etc and boom, the resume will be ready in just a click!
Also, the user will be able to update the details dynamically, including adding or removing sections, update personal information, or update new skills that they've learnt.
More interestingly, the users will also be able to download their generated resume as PDF.

Describe alternatives you've considered.

None -

Add any other context or screenshots about the feature request here.
The Resume Builder project should seamlessly run in any browser and should be able to meet the user's requirements. Also, a clean UI is a must for providing a great User Experience.

@Sambit-Mondal Come up with some new and unique idea where some interesting JS concepts are used.


Added new item "baby pigeon"

The new item can be found in the pigeon house. It's a baby pigeon which only makes 'gurrr!'.

@l4nz8 pull request ready to be merged!

Perfect


Feature : List environments

Goal :

Port the following feature of Gator using Conda Store : List environments

Acceptance :

The feature works with mamba/conda and Conda Store

Other notes :
Also check the reload button works

Merged: https://github.com/mamba-org/gator/pull/155


Add documentation for server configuration

The reference documentation is missing the section on server configuration.

This has been fixed in the interim: https://cloe.readthedocs.io/en/latest/reference/config.html
Commit: e5e7e5489930828da271cb2dca82a6c1e9d5a4b9


Enablement of IBM VPC backend to create VMs dynamically in runtime

Developer's Certificate of Origin 1.1
   By making a contribution to this project, I certify that:

   (a) The contribution was created in whole or in part by me and I
       have the right to submit it under the Apache License 2.0; or

   (b) The contribution is based upon previous work that, to the best
       of my knowledge, is covered under an appropriate open source
       license and I have the right under that license to submit that
       work with modifications, whether created in whole or in part
       by me, under the same open source license (unless I am
       permitted to submit under a different license), as indicated
       in the file; or

   (c) The contribution was provided directly to me by some other
       person who certified (a), (b) or (c) and I have not modified
       it.

   (d) I understand and agree that this project and the contribution
       are public and that a record of the contribution (including all
       personal information I submit with it, including my sign-off) is
       maintained indefinitely and may be redistributed consistent with
       this project or the open source license(s) involved.

from time to time getting error
 [WARNING] lithops.util.ssh_client -- E: Could not open file /var/lib/apt/lists/security.ubuntu.com_ubuntu_dists_focal-security_restricted_binary-amd64_Packages - open (2: No such file or directory)
E: Problem opening /var/lib/apt/lists/security.ubuntu.com_ubuntu_dists_focal-security_restricted_binary-amd64_Packages
E: The package lists or status file could not be parsed or opened.
debconf: unable to initialize frontend: Dialog
debconf: (TERM is not set, so the dialog frontend is not usable.)
debconf: falling back to frontend: Readline
debconf: unable to initialize frontend: Readline

in this case create VM fails.  Might be relevant here  and here

@kpavel FYI

@kpavel FYI

It is stable enough...i am merging it. Further changes will go into separate PR

It is stable enough...i am merging it. Further changes will go into separate PR


PHP: Added SSH2 and msgpack extensions.

Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[x] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Hi, do you want to maintain these packages as well as the PHP team? If so you need to make a separate commit to the maintainer list, instructions are in the top of the file.
Also, you cleared out the PR template that contains things like checkboxes describing what's been done. That's never a good practice until your request really doesn't match the template, which it does in this case.
For instance the commit messages doesn't follow the CONTRIBUTING guidelines.
They should be formatted for example:
phpExtensions.ssh2: init at 1.2 and phpExtensions.msgpack: init at 2.1.2
Is it built on Linux? Is it built on Darwin? Just to know where to start testing this.
@ofborg build php73Extensions.ssh2 php73Extensions.msgpack php74Extensions.ssh2 php74Extensions.msgpack php80Extensions.ssh2 php80Extensions.msgpack

I've done some local builds.
The following builds on x86_64-linux:

php73Extensions.ssh2
php73Extensions.msgpack
php74Extensions.ssh2
php74Extensions.msgpack
php80Extensions.msgpack

The following doesn't build on x86_64-linux:

php80Extensions.ssh2

Maybe there's some newer version or patch that make it work with PHP 8.0? If not it should be marked as broken on PHP 8.0.

@ofborg build php73Extensions.ssh2 php73Extensions.msgpack php74Extensions.ssh2 php74Extensions.msgpack  php80Extensions.msgpack

Hi. Thanks for quick response. That's my first PR here. Actually I didn't clear the template. What happened is that for some reason PR when I submitted the PR I got an error that PR already exist. And when I reload the page I saw that PR actually was created. I didn't notice that template was gone. My bad. I'll return the template.

I'm not a PHP developer myself and added support for the missing extensions we use at work. I'm in frontend team. So I don't see myself maintaining it unless there is a need for me. Hope that's ok.

I'll do more testing and comeback with new commits. @etu would you like me to rename commits and force push them with correct names?

I'll do more testing and comeback with new commits. @etu would you like me to rename commits and force push them with correct names?

That would be great! Thank you in advance :)

what's the status of this ?

what's the status of this ?

Merge conflict and rebase with an update of commit messages to confirm to the https://github.com/NixOS/nixpkgs/blob/master/.github/CONTRIBUTING.md guidelines for how the commit messages should be formatted.

@akoppela Are you going to take care of this?

This was superseeded by #220814


MaintainerProfileClient: GetSecretValue() isn't caching secrets plus we need to cache as environment variables

[x] BUG: MaintainerClient.GetSecretValue() is not currently caching secret values like the other methods do.

[x] The new neonkube-release tool really needs to be able to cache secrets across the current process and any sub-processes because this may take a few hours to complete and neon-assistant may sign-out automatically before this completes, leaving subsequent processes and scripts to fail due to not being able to obtain secrets.
We're going to use environment variables for caching across processes.

FIXED/DONE


snap query the conversion factors from the SortedOracles contract

Refer to this conversation
https://github.com/celo-org/gas-snap/pull/16#discussion_r1206764199

Looks like this was accidentally moved to done but the PR is still open
https://github.com/celo-org/gas-snap/pull/19