Migrate LiveContainerUI to SwiftUI, Support for Multiple LiveContainer, SideJIT/JITStreamer Support, Better Open in App Support, Impelement #112

Switch UI to SwiftUI
I migrated most of features to an AltStore-like UI written in SwiftUI.
LiveContainerSwiftUI looks like this:

Support for Multiple LiveContainer
Free development accounts can install 3 apps, so now we can install 1 SideStore and 2 LiveContainers, so people can run 2 apps at the same time. App and their data, Keychains and most NSUserDefaults can be shared between these 2 LiveContainers. If user open a app via URL Scheme or from My Apps screen, the LiveContainer that last ran that app will be switched to.
App's data and tweaks are stored in SideStore's or AltStore's app group. If a Shared App is launched, its data will be temporarily moved to the LiveContainer's document folder to prevent crash in background because of holding a file lock in the App Group folder. It data will be moved back in last launch of LiveContainer.
Apps can't be modified when in Shared state. The second LiveContainer cannot install or manage apps.
NSUserDefaults are handled differently. Since it won't accept plists that moved to Library/Preferences after app launch, we have to manually read the plists and set it in NSUserDefaults. This solves #149
Better Open in App Support
It turns out that some apps don't rely on URL Schemes and use Universal Links instead. So in the new LiveContainerSwiftUI, the web page's apple-app-site-association will be checked and we will launch apps based on it. Then, a NSUserActivity will be created with these URLs and passed to UIActivityContinuationManager, so apps will open these URLs they support.
Impelement #112
Flutter apps share the bundle name of Runner.app, so I use bundle identifier as app bundle's name during install to avoid conflicts. Also, users can select which bundle to replace if there are multiple bundles with the same bundle identifier.

Users can now mark app as JIT needed and configure SideJITServer inside LiveContainer, so that apps can be launched with JIT more easily.
Also solved some weird permission issue by modifying the second one's main executable's UUID.

This is huge, at this point I may consider adding you to collaborator, thanks a lot.
While you’re at it, you may also implement #131

Thank you for your appreciation! I've now completed the implementation of #131. Users can now triple tap the app counter under the app list, pass the authorization and view hidden app and hide apps.
By the way, I implemented the App Clip generation, but I didn't figure out how you made SFSafariViewController to open data: urls and it will crash the app because it wants a http or https URL.  So I opt for starting a local server that serves that MDM config instead.

but I didn't figure out how you made SFSafariViewController to open data: urls and it will crash the app because it wants a http or https URL.

Here’s how I bypassed it:
https://github.com/khanhduytran0/LiveContainer/blob/d074394830bd1008771f9bcf207e648814522205/LiveContainerUI/LCAppListViewController.m#L16-L21
Furthermore, generating self-signed shortcut instead is possible too, see https://github.com/0xilis/SelfSignedShortcutDemo

Thanks a lot for your work 💪 This is a big PR 🤯
I didn't review the code but I wanted to give some feedback as a big fan of LiveContainer:

I found that the Open data folder option when long-pressing an app is missing. I found this feature quite useful to quickly open the files app and examine the contents. It would be nice if this was kept in this PR.
After upgrading the from d074394 (on main) to 901282b, running an app causes its Library/Preferences directory to be filled with preferences of other installed apps. I tried to delete plist files that are not relevant to the given app but they re-appear after running the app again. Is this expected? I didn't check if this happens also for new users who did not perform an upgrade in-place.
Each app's UUID is now less visible. I now have to hold the app and click on Change Data Folder to view the name of the data folder which is usually equal to the UUID if not yet renamed. It would be nice if the UUID was visible either directly under the app's name in the list (as before) or maybe show it under the app's context menu?
The app list does not appear to have the same style as you showed in the screenshot in the description of your PR. I am running 901282b on iOS 17.6.1. I triggered a CI build for this commit by enabling GitHub Actions for my fork. You can download the IPA under artifacts using this link. You can find a screenshot below:

After installing a new app, pressing on Run results in the app closing and opening twice, eventually returning to the main LiveContainer app. This only seem to happen after a fresh install of the app. I am able to run the app perfectly fine after that though, even when restarting LiveContainer.

I hope that helps!

I built 901282b locally and obtained the correct app list style. You can try the following IPA file:
com.kdt.livecontainer_2.1.2.zip

Thank you for your feedback! @ilian

I did forget about the open data folder button. I'll add it back soon.
It seems that the missing of Assets.car is causing the weird looking UI and missing UUID since the text color turned black and blended into the background. I presume that something went wrong when building with GitHub Actions.
Since apps' preferences are now also stored separately and we have no way to know which plist belongs to which app, all preferences will be moved to the the preferences folder of the first app launched after the update, but should not happen after. I guess the issuse you encountered is caused by killing LiveContainer from the app switcher and remove all plists before LiveContainer's next launch. Preferences are moved back upon next launch, so I think LiveContainer just moved back all plists back that it read before you launch the app. So you may try to remove these plists after you relaunch LiveContainer and such issue should not happen again.

I added the "Open Data Folder" button back, change the AppClip creation method back to data: url, fixed GitHub Actions building issue and probably fixed the issue that apps crash after install issue.
You can download the new version here.

Furthermore, generating self-signed shortcut instead is possible too, see https://github.com/0xilis/SelfSignedShortcutDemo

I see. However users have to enroll a self-signed root CA to install a shortcut, which may raise some security concerns. What't more, users still have to manually select an icon before adding the generated shortcut to Home Screen, or is there a way to automate this procedure?

@hugeBlack Thank you for your responses and for fixing things so quickly :rocket:
I was able to modify preferences in Library/Preferences and have the app read the new preferences :+1:

all preferences will be moved to the the preferences folder of the first app launched after the update, but should not happen after

For each app, I deleted all plists that belong to other apps, click on Run, kill the app.  When running the same app multiple times, I do not see any unrelated plists for that particular app. Once I start using multiple apps instead of a single one, I see unrelated plists under Library/Preferences again. It seems that LiveContainer is still keeping some internal state from previous runs instead of exclusively using the app's Library/Preferences directory as the source of truth. Are you able to reproduce this issue or do you need more detailed steps to reproduce this issue?

probably fixed the issue that apps crash after install issue

Unfortunately, I still get the same issue after installing a new app and clicking on Run. After it crashes once, I am able to run it multiple times just fine.
Regarding UX, maybe it makes more sense to have the Uninstall item in the context menu at the bottom to be consistent with other apps such as Files. Maybe it also makes sense to move Open Data Folder to the top since I think it's more commonly used than the current item at the top (Mark as JIT Needed).
For context, I am running the app with version cd2c019.

@ilian thank for your feedback again! 👍
This commit hopefully fixed the issue that app crash once after installation (I tested on 4 devices ranging from iOS 15 to iOS 18, and they all worked fine).
As for the mixed preference issue, after some testing, I found that the behavior of cfprefsd which manages NSUserDefaults is somewhat unpredictable and it is hard to find a stable way to dump and load preferences. So I will forgo this feature for now since I don't want to waste too much time on it and it is rather stable in spite of the mixed preference files.
What't more, I solved the issue (like #68 #123 #142) that file pickers cannot select files. The cause of this issue is that custom UTTypes created by guest apps have not been registered in iOS so they will become nil, which made file pickers unable to select file of any type.
I intercept the call to -[UIDocumentPickerViewController initForExportingURLs:asCopy:] and change to initForExportingURLs to @[UTTypeItem, UTTypeFolder] so any file or folder can be chosen. Tested on Delta, UTM, iTorrent.

@Wei-Winter Thank for your feedback!
I think that issue with Infuse should be fixed in the latest commit. You may download and have a try. Be sure to enable 'fix file picker' setting in app settings. Do note that files will be copied to the Inbox of guest app.


Collapse does not work

In this form.io example the collapse works when you click on a section like basic, usefields, layout. It does not work in this exhttps://formio.github.io/react-app-starterkit/#/components (builder) unless you click on another section title.

What is this an issue with? This repository or the example you linked to? The example you linked to belongs with the /formio/react-app-starterkit repository. Where as, best I can tell, what you are referring to is the example on Form.io's website here
Either way, those are both just examples and not the underlying code itself...
With the starterkit example it is not using bootstrap and has access to none of the bootstrap functionality.

I am using formio.js and wanting to have the same collapse functionality as bootstrap does by default. It seems that if I want to get the default bootstrap functionality to work I would need to add the js files that bootstrap provides and override the collapse functionality in WebformBuilder.js which has its own collapse functionality.

Agent Olga Bannikova linked Freshdesk ticket 50113 for this issue.


Slime people don't have underwear markings...

Description

Title...
Reproduction

Screenshots

Additional context

they do?

they do not...


App logs are not showed running cf logs $APP --recent when App log items are long

Issue
Loggregator version: 103.0
Loggregator-agent version: 2.0
App logs are not showed running cf logs $APP --recent when app log items are long
Scenario 1:
Run the command below to deploy a sample app which generates quite long log items
mkdir -p /tmp/testlog &&  cd /tmp/testlog && touch .testlog && cf push -i 1 testlog-2 -u process -c 'data=$(seq -s " " 1 20000); while true; do echo "$data"; sleep 0.01; done' -b https://github.com/cloudfoundry/binary-buildpack

App logs are not showed when running cf logs $APP --recent, but could be got from syslog-drain.
$ cf logs testlog-2  --recent
Retrieving logs for app testlog-2 in org $org / space $space as $someone ...

Scenario 2:
Run the command below to deploy a sample app which generates short log items
$ mkdir -p /tmp/testlog &&  cd /tmp/testlog && touch .testlog && cf push -i 1 testlog-2 -u process -c 'data=$(seq -s " " 1 20); while true; do echo "$data"; sleep 0.01; done' -b https://github.com/cloudfoundry/binary-buildpack

App logs are showed normally
P44603:testlog xuejiao.zhang$ cf logs testlog-2  --recent
Retrieving logs for app testlog-2 in org $org / space $space as $someone ...

   2018-11-12T14:13:51.95+0900 [APP/PROC/WEB/0] OUT 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
   2018-11-12T14:13:51.96+0900 [APP/PROC/WEB/0] OUT 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
...

How-to reproduce
Run the command below to deploy the sample app
mkdir -p /tmp/testlog &&  cd /tmp/testlog && touch .testlog && cf push -i 1 testlog-2 -u process -c 'data=$(seq -s " " 1 20000); while true; do echo "$data"; sleep 0.01; done' -b https://github.com/cloudfoundry/binary-buildpack

Run the command to retrieve the app logs
cf logs testlog-2  --recent

duplicates https://github.com/cloudfoundry/loggregator-release/issues/387


Support tracking text styling (e.g. color)

We could convert ANSI codes to HTML or something else
The question is if we should find a way to force the terminal to look like a TTY for auto-detection or have the user force coloring

Or effectively integrate https://lib.rs/crates/term-transcript


Responsive footer, instead of fixed footer , footer should move down with the increase of list item

comment down , will assign :)

Can I work on this?


can't distinguish between capitalized and uncapitalized scheme keys

rule:
model must be A and Model must be B
schema:
model: A
Model: B

in the generated code we cannot distinguish between model and Model
huml.appendRule("",
    new String[]{ "Model", "Model" },
    "model must be A and Model must be B",
    ( model) -> (huml.NOT_EQUALS(model.getModel(), "A") ||
           huml.NOT_EQUALS(model.getModel(), "B")),
    false
);

We can generate invalid code by having characters as json keys:
schema: { ;: ;}
rule: ; HAS ;
generated code does not compile:

huml.appendRule("",
    [";", ";"],
    "; HAS ;",
    function(model) {
        return huml.NOT_EQUALS(model.;, model.;);
    },
    false
);

Schema:
{
   model: A
   Model: B
}

is illegal. It must not have 2 attributes with the same name on the same level. an appropriate exception should be thrown
{ ;: ;}

is also illegal


LICENSE is empty

Plugin version
0.3.0
NetBox version
3.7.3
Describe the bug
The top-level LICENSE file in the netbox-circuitmaintenance repository is empty. As a result, users have no way of knowing the terms that apply to their use, redistribution, modification, or redistribution of derivative works of the code in this repository.
To Reproduce
Steps to reproduce the behavior:

Go to netbox-circuitmaintenance on GitHub
Click on 'LICENSE' in the repository code browser
See that the LICENSE file is completely empty

Expected behavior
I expect to see the text of a license of the author's choosing.
Screenshots
Not necessary
Additional context
Hey, cool plugin! Hi there, I'm the product manager for NetBox Open Source at NetBox Labs. One of our customers has expressed an interest in this plugin being considered for inclusion in a certification program soon to be announced. One of the program criteria is that candidate plugins be distributed under an OSI-approved license. If you prefer to discuss off GitHub, please DM me on NetDev Slack.

Apache 2.0 license has been added.


Add "last_updated_by" field to StockItem

"last_updated" field exists, but no idea who did the update
Needs to be recorded by form views
Needs to be recorded in the API

Further, the "user" needs to be recorded when performing a number of various stock actions:

Create a new "build output"
Receive items against a purchase order
etc etc

Might be cleaner to find an existing library that allows this in a "DRY" manner, and also integrates with the DRF API
Other models might also benefit from user "audit log" tracking...

@SchrodingersGat a great audit-log libary is https://django-auditlog.readthedocs.io/, has a minimal storage-footprint.

@matmair oh that looks really nice.
Should we be using that for https://github.com/inventree/InvenTree/pull/1642 and also potentially the existing stock-item-history-tracking?

@SchrodingersGat I like the library because it is laser-focused on a json-based, tiny audit-log. You would have to shift all the rendering/translation-logic etc. away from the modal into views and signals.
I have not tried adding anything to it already so difficult to assess the effort. I personally like your implementation for stock-item tracking and would keep that.

I think that the existing StockItemTracking model covers most of the intended functionality here, so going to close this out.


Dev

Server Upgrade
Opt nolocal
BroadcastAll
Docker

Codecov Report

Merging #4 (9a29df1) into master (4f392d6) will decrease coverage by 2.71%.
The diff coverage is 55.55%.

@@            Coverage Diff             @@
##           master       #4      +/-   ##
==========================================
- Coverage   84.45%   81.73%   -2.72%
==========================================
  Files           4        4
  Lines         193      230      +37
==========================================
+ Hits          163      188      +25
- Misses         26       38      +12
  Partials        4        4

Impacted Files
Coverage Δ

server.go
81.66% <54.28%> (-11.11%)
:arrow_down:

worker.go
94.11% <100.00%> (ø)

client.go
70.17% <0.00%> (+7.01%)
:arrow_up:

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 4f392d6...9a29df1. Read the comment docs.


Can't rip from yuki.la

Ripme version: 1.7.63
Java version: 1.8.0_181_b13
Operating system: Windows 10 Pro Ver 1803

Exact URL you were trying to rip when the problem occurred: https://yuki.la/aco/476224

Expected Behavior
it should download like any normal 4chan archive
Actual Behavior
can't find ripper for the site

no advancements on this matter? could you take at look at this plz? it would be really helpful if you could implement this ripper
thx

I've almost got it working, I just need to fix the image downloading (They currently all fail with a 301 redirect). I should be finished tomorrow or the day after and in the next release of ripme


"Web Protection" term is not entirely true....

[Enter feedback here]
MTD presently contextually defines Web Protection as "Anti-phishing, blocking unsafe network connections, and support for custom indicators" and then refers to the main MDE Web Protection article that has a different definition: "Web protection in Microsoft Defender for Endpoint is a capability made up of Web threat protection, Web content filtering, and Custom indicators. Web protection lets you secure your devices against web threats and helps you regulate unwanted content."
This is confusing and should have a note (like the iOS page does that WCF is not supported at this time).
Source pages:
MTD Defined "Web Protection" https://docs.microsoft.com/en-us/microsoft-365/security/defender-endpoint/mtd?view=o365-worldwide#key-capabilities
MDE Defined "Web Protection"
https://docs.microsoft.com/en-us/microsoft-365/security/defender-endpoint/web-protection-overview?view=o365-worldwide
Link to main MDE article defining what Web Protection is from MTD doc page (without explaining or referring to the difference)
https://docs.microsoft.com/en-us/mem/intune/protect/advanced-threat-protection-manage-android

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 81ad3b34-c76e-b70a-6b3d-5b29f4408bef
Version Independent ID: 15f316a5-d0f0-824d-b350-9dccebe784e5
Content: Configure Microsoft Defender for Endpoint on Android features
Content Source: microsoft-365/security/defender-endpoint/android-configure.md
Product: m365-security
Technology: mde
GitHub Login: @Dansimp
Microsoft Alias: dansimp

@vboyev-MSFT Thank you for your feedback. We have made changes to the document via PR#https://github.com/MicrosoftDocs/microsoft-365-docs/pull/9423
Added a statement that WCF is not supported on mobile platforms.
Once the author approves, the changes will be live.
Thanks
Sri


[BUG]ssh: handshake failed: read tcp <IP_ADDRESS>:52190-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host.

General information

OS:  Windows
Hypervisor:  Hyper-V
Did you run crc setup before starting it (Yes/No)? Yes
Running CRC on: Laptop / Baremetal-Server / VM: Laptop

CRC version
CRC version: 2.28.0+e1f42d
OpenShift version: 4.13.14
Podman version: 4.4.4
CRC status
DEBU CRC version: 2.28.0+e1f42d
DEBU OpenShift version: 4.13.14
DEBU Podman version: 4.4.4
DEBU Running 'crc status'
CRC VM:          Running
OpenShift:       Unreachable (v4.13.14)
Disk Usage:      0B of 0B (Inside the CRC VM)
Cache Usage:     22.95GB
Cache Directory: C:\Users\Admin\.crc\cache

CRC config
- consent-telemetry                     : no
- nameserver                            : <IP_ADDRESS>

Host Operating System
Host Name:                 DESKTOP-611M9PB
OS Name:                   Microsoft Windows 10 Pro
OS Version:                10.0.19045 N/A Build 19045
OS Manufacturer:           Microsoft Corporation
OS Configuration:          Standalone Workstation
OS Build Type:             Multiprocessor Free
Registered Owner:          Admin
Registered Organization:
Product ID:                00330-80000-00000-AA585
Original Install Date:     20-10-2023, 07:15:32
System Boot Time:          25-10-2023, 17:29:10
System Manufacturer:       Dell Inc.
System Model:              Vostro 3558
System Type:               x64-based PC
Processor(s):              1 Processor(s) Installed.
                           [01]: Intel64 Family 6 Model 61 Stepping 4 GenuineIntel ~1900 Mhz
BIOS Version:              Dell Inc. A11, 22-11-2016
Windows Directory:         C:\Windows
System Directory:          C:\Windows\system32
Boot Device:               \Device\HarddiskVolume1
System Locale:             en-us;English (United States)
Input Locale:              00004009
Time Zone:                 (UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi
Total Physical Memory:     12,199 MB
Available Physical Memory: 6,946 MB
Virtual Memory: Max Size:  14,631 MB
Virtual Memory: Available: 8,428 MB
Virtual Memory: In Use:    6,203 MB
Page File Location(s):     C:\pagefile.sys
Domain:                    WORKGROUP
Logon Server:              \\DESKTOP-611M9PB
Hotfix(s):                 9 Hotfix(s) Installed.
                           [01]: KB5030649
                           [02]: KB5031816
                           [03]: KB5030841
                           [04]: KB5011048
                           [05]: KB5015684
                           [06]: KB5031356
                           [07]: KB5014032
                           [08]: KB5016705
                           [09]: KB5031539
Network Card(s):           6 NIC(s) Installed.
                           [01]: Intel(R) Dual Band Wireless-AC 3160
                                 Connection Name: Wi-Fi
                                 DHCP Enabled:    Yes
                                 DHCP Server:     N/A
                                 IP address(es)
                           [02]: Realtek PCIe GBE Family Controller
                                 Connection Name: Ethernet
                                 Status:          Media disconnected
                           [03]: Bluetooth Device (Personal Area Network)
                                 Connection Name: Bluetooth Network Connection
                                 Status:          Media disconnected
                           [04]: Hyper-V Virtual Ethernet Adapter
                                 Connection Name: vEthernet (Default Switch)
                                 DHCP Enabled:    No
                                 IP address(es)
                                 [01]: <IP_ADDRESS>
                                 [02]: fe80::2ebe:86b2:d92:f302
                           [05]: Microsoft Network Adapter Multiplexor Driver
                                 Connection Name: Network Bridge
                                 DHCP Enabled:    Yes
                                 DHCP Server:     N/A
                                 IP address(es)
                           [06]: Hyper-V Virtual Ethernet Adapter
                                 Connection Name: vEthernet (crc)
                                 DHCP Enabled:    Yes
                                 DHCP Server:     <IP_ADDRESS>
                                 IP address(es)
                                 [01]: <IP_ADDRESS>
                                 [02]: fe80::571d:852b:f59d:9dbf
Hyper-V Requirements:      A hypervisor has been detected. Features required for Hyper-V will not be displayed.

Steps to reproduce

Tried crc delete, crc cache delete, crc setup
Also tried to manually add entry in host file, but no luck
Not able to login to Openshift via command line
Also not able to open openshift console.

Expected
able to open openshift console and login to oc via command line
Actual
Not able to login to Openshift via command line
Also not able to open openshift console.
Before gather the logs try following if that fix your issue - Tried but same error.
$ crc delete -f
$ crc cleanup
$ crc setup
$ crc start --log-level debug

Logs
PS C:\Users\Admin> crc start --log-level debug
DEBU CRC version: 2.28.0+e1f42d
DEBU OpenShift version: 4.13.14
DEBU Podman version: 4.4.4
DEBU Running 'crc start'
DEBU Total memory of system is<PHONE_NUMBER>4 bytes
DEBU No new version available. The latest version is 2.28.0
DEBU Checking file: C:\Users\Admin\.crc\machines\crc\.crc-exist
DEBU Running 'Hyper-V\Get-VM crc | Select-Object -ExpandProperty State'
INFO Using bundle path C:\Users\Admin\.crc\cache\crc_hyperv_4.13.14_amd64.crcbundle
INFO Checking minimum RAM requirements
DEBU Total memory of system is<PHONE_NUMBER>4 bytes
INFO Checking if running in a shell with administrator rights
DEBU Running '$currentPrincipal = New-Object Security.Principal.WindowsPrincipal([Security.Principal.WindowsIdentity]::GetCurrent());$currentPrincipal.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)'
INFO Checking Windows release
DEBU Running '(Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" -Name ReleaseId).ReleaseId'
INFO Checking Windows edition
DEBU Running '(Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion").EditionID'
DEBU Running on Windows Professional edition
INFO Checking if Hyper-V is installed and operational
DEBU Running '@(Get-Wmiobject Win32_ComputerSystem).HypervisorPresent'
DEBU Running '@(Get-Service vmms).Status'
INFO Checking if Hyper-V service is enabled
DEBU Running '@(Get-Service vmms).Status'
INFO Checking if crc-users group exists
DEBU Running 'Get-LocalGroup -Name crc-users'
INFO Checking if current user is in crc-users and Hyper-V admins group
DEBU Running '(Get-LocalGroupMember -Group 'crc-users').Name'
DEBU Checking current user is in the 'crc-user' group
DEBU group members: DESKTOP-611M9PB\Admin
DEBU Running '(Get-LocalGroupMember -SID 'S-1-5-32-578').Name'
DEBU Checking current user is in the 'Hyper-v Administrators' group
DEBU group members: DESKTOP-611M9PB\Admin
INFO Checking if vsock is correctly configured
DEBU Running 'Get-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization\GuestCommunicationServices\00000400-FACB-11E6-BD58-64006A7986D3"'
INFO Checking if the daemon task powershell script is present
INFO Checking if the daemon task is installed
DEBU Running 'Get-ScheduledTask -TaskName crcDaemon'
DEBU Running '(Get-ScheduledTask -TaskName "crcDaemon").Version'
INFO Checking if the daemon task is running
DEBU Running '(Get-ScheduledTask -TaskName "crcDaemon").State'
INFO Checking admin helper service is running
DEBU Running '(Get-Service crcAdminHelper).Status'
DEBU Checking file: C:\Users\Admin\.crc\machines\crc\.crc-exist
DEBU Copying 'C:\Users\Admin\.crc\cache\crc_hyperv_4.13.14_amd64\oc.exe' to 'C:\Users\Admin\.crc\bin\oc\oc.exe'
DEBU Copying 'C:\Users\Admin\.crc\cache\crc_hyperv_4.13.14_amd64\podman.exe' to 'C:\Users\Admin\.crc\bin\oc\podman.exe'
INFO Loading bundle: crc_hyperv_4.13.14_amd64...
DEBU Checking file: C:\Users\Admin\.crc\machines\crc\.crc-exist
DEBU Running 'Hyper-V\Get-VM crc | Select-Object -ExpandProperty State'
DEBU Copying 'C:\Users\Admin\.crc\cache\crc_hyperv_4.13.14_amd64\oc.exe' to 'C:\Users\Admin\.crc\bin\oc\oc.exe'
DEBU Copying 'C:\Users\Admin\.crc\cache\crc_hyperv_4.13.14_amd64\podman.exe' to 'C:\Users\Admin\.crc\bin\oc\podman.exe'
INFO Starting CRC VM for openshift 4.13.14...
DEBU Updating CRC VM configuration
DEBU Running 'Hyper-V\Start-VM crc'
DEBU Waiting for machine to be running, this may take a few minutes...
DEBU retry loop: attempt 0
DEBU Running 'Hyper-V\Get-VM crc | Select-Object -ExpandProperty State'
DEBU Machine is up and running!
DEBU Running 'Hyper-V\Get-VM crc | Select-Object -ExpandProperty State'
INFO CRC instance is running with IP <IP_ADDRESS>
DEBU Waiting until ssh is available
DEBU retry loop: attempt 0
DEBU Running SSH command: exit 0
DEBU Using ssh private keys: [C:\Users\Admin\.crc\machines\crc\id_ecdsa C:\Users\Admin\.crc\cache\crc_hyperv_4.13.14_amd64\id_ecdsa_crc]
DEBU SSH command results: err: ssh: handshake failed: read tcp <IP_ADDRESS>:52187-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host., output:
DEBU error: Temporary error: ssh command error:
command : exit 0
err     : ssh: handshake failed: read tcp <IP_ADDRESS>:52187-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host.
 - sleeping 1s
DEBU retry loop: attempt 1
DEBU Running SSH command: exit 0
DEBU Using ssh private keys: [C:\Users\Admin\.crc\machines\crc\id_ecdsa C:\Users\Admin\.crc\cache\crc_hyperv_4.13.14_amd64\id_ecdsa_crc]
DEBU SSH command results: err: ssh: handshake failed: read tcp <IP_ADDRESS>:52188-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host., output:
DEBU error: Temporary error: ssh command error:
command : exit 0
err     : ssh: handshake failed: read tcp <IP_ADDRESS>:52188-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host.
 - sleeping 1s
DEBU retry loop: attempt 2
DEBU Running SSH command: exit 0
DEBU Using ssh private keys: [C:\Users\Admin\.crc\machines\crc\id_ecdsa C:\Users\Admin\.crc\cache\crc_hyperv_4.13.14_amd64\id_ecdsa_crc]
DEBU SSH command results: err: ssh: handshake failed: read tcp <IP_ADDRESS>:52189-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host., output:
DEBU error: Temporary error: ssh command error:
command : exit 0
err     : ssh: handshake failed: read tcp <IP_ADDRESS>:52189-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host.
 - sleeping 1s
DEBU retry loop: attempt 3
DEBU Running SSH command: exit 0
DEBU Using ssh private keys: [C:\Users\Admin\.crc\machines\crc\id_ecdsa C:\Users\Admin\.crc\cache\crc_hyperv_4.13.14_amd64\id_ecdsa_crc]
DEBU SSH command results: err: ssh: handshake failed: read tcp <IP_ADDRESS>:52190-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host., output:
DEBU error: Temporary error: ssh command error:
command : exit 0
err     : ssh: handshake failed: read tcp <IP_ADDRESS>:52190-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host.
 - sleeping 1s

Hello I have the similar kind of issues on my local , I am using Mac OS . is there have any solution for that !!

Updated log:
PS C:\Users\Admin\Downloads\crc-windows-installer> crc start -p ..\pull-secret.txt -m 9216 --log-level debug
DEBU CRC version: 2.28.0+e1f42d
DEBU OpenShift version: 4.13.14
DEBU Podman version: 4.4.4
DEBU Running 'crc start'
DEBU Total memory of system is<PHONE_NUMBER>4 bytes
DEBU No new version available. The latest version is 2.28.0
DEBU Checking file: C:\Users\Admin.crc\machines\crc.crc-exist
DEBU Running 'Hyper-V\Get-VM crc | Select-Object -ExpandProperty State'
INFO Using bundle path C:\Users\Admin.crc\cache\crc_hyperv_4.13.14_amd64.crcbundle
INFO Checking minimum RAM requirements
DEBU Total memory of system is<PHONE_NUMBER>4 bytes
INFO Checking if running in a shell with administrator rights
DEBU Running '$currentPrincipal = New-Object Security.Principal.WindowsPrincipal([Security.Principal.WindowsIdentity]::GetCurrent());$currentPrincipal.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)'
INFO Checking Windows release
DEBU Running '(Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" -Name ReleaseId).ReleaseId'
INFO Checking Windows edition
DEBU Running '(Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion").EditionID'
DEBU Running on Windows Professional edition
INFO Checking if Hyper-V is installed and operational
DEBU Running '@(Get-Wmiobject Win32_ComputerSystem).HypervisorPresent'
DEBU Running '@(Get-Service vmms).Status'
INFO Checking if Hyper-V service is enabled
DEBU Running '@(Get-Service vmms).Status'
INFO Checking if crc-users group exists
DEBU Running 'Get-LocalGroup -Name crc-users'
INFO Checking if current user is in crc-users and Hyper-V admins group
DEBU Running '(Get-LocalGroupMember -Group 'crc-users').Name'
DEBU Checking current user is in the 'crc-user' group
DEBU group members: DESKTOP-611M9PB\Admin
DEBU Running '(Get-LocalGroupMember -SID 'S-1-5-32-578').Name'
DEBU Checking current user is in the 'Hyper-v Administrators' group
DEBU group members: DESKTOP-611M9PB\Admin
INFO Checking if vsock is correctly configured
DEBU Running 'Get-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization\GuestCommunicationServices\00000400-FACB-11E6-BD58-64006A7986D3"'
INFO Checking if the daemon task powershell script is present
INFO Checking if the daemon task is installed
DEBU Running 'Get-ScheduledTask -TaskName crcDaemon'
DEBU Running '(Get-ScheduledTask -TaskName "crcDaemon").Version'
INFO Checking if the daemon task is running
DEBU Running '(Get-ScheduledTask -TaskName "crcDaemon").State'
INFO Checking admin helper service is running
DEBU Running '(Get-Service crcAdminHelper).Status'
DEBU Checking file: C:\Users\Admin.crc\machines\crc.crc-exist
DEBU Copying 'C:\Users\Admin.crc\cache\crc_hyperv_4.13.14_amd64\oc.exe' to 'C:\Users\Admin.crc\bin\oc\oc.exe'
DEBU Copying 'C:\Users\Admin.crc\cache\crc_hyperv_4.13.14_amd64\podman.exe' to 'C:\Users\Admin.crc\bin\oc\podman.exe'
INFO Loading bundle: crc_hyperv_4.13.14_amd64...
DEBU Checking file: C:\Users\Admin.crc\machines\crc.crc-exist
DEBU Running 'Hyper-V\Get-VM crc | Select-Object -ExpandProperty State'
DEBU Copying 'C:\Users\Admin.crc\cache\crc_hyperv_4.13.14_amd64\oc.exe' to 'C:\Users\Admin.crc\bin\oc\oc.exe'
DEBU Copying 'C:\Users\Admin.crc\cache\crc_hyperv_4.13.14_amd64\podman.exe' to 'C:\Users\Admin.crc\bin\oc\podman.exe'
INFO Starting CRC VM for openshift 4.13.14...
DEBU Updating CRC VM configuration
DEBU Running 'Hyper-V\Start-VM crc'
DEBU Waiting for machine to be running, this may take a few minutes...
DEBU retry loop: attempt 0
DEBU Running 'Hyper-V\Get-VM crc | Select-Object -ExpandProperty State'
DEBU Machine is up and running!
DEBU Running 'Hyper-V\Get-VM crc | Select-Object -ExpandProperty State'
INFO CRC instance is running with IP <IP_ADDRESS>
DEBU Waiting until ssh is available
DEBU retry loop: attempt 0
DEBU Running SSH command: exit 0
DEBU Using ssh private keys: [C:\Users\Admin.crc\machines\crc\id_ecdsa C:\Users\Admin.crc\cache\crc_hyperv_4.13.14_amd64\id_ecdsa_crc]
DEBU SSH command results: err: ssh: handshake failed: read tcp <IP_ADDRESS>:54458-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host., output:
DEBU error: Temporary error: ssh command error:
command : exit 0
err     : ssh: handshake failed: read tcp <IP_ADDRESS>:54458-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host.

sleeping 1s
DEBU retry loop: attempt 1
DEBU Running SSH command: exit 0
DEBU Using ssh private keys: [C:\Users\Admin.crc\machines\crc\id_ecdsa C:\Users\Admin.crc\cache\crc_hyperv_4.13.14_amd64\id_ecdsa_crc]
DEBU SSH command results: err: ssh: handshake failed: read tcp <IP_ADDRESS>:54459-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host., output:
DEBU error: Temporary error: ssh command error:
command : exit 0
err     : ssh: handshake failed: read tcp <IP_ADDRESS>:54459-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host.
sleeping 1s
DEBU retry loop: attempt 2
DEBU Running SSH command: exit 0
DEBU Using ssh private keys: [C:\Users\Admin.crc\machines\crc\id_ecdsa C:\Users\Admin.crc\cache\crc_hyperv_4.13.14_amd64\id_ecdsa_crc]
DEBU SSH command results: err: ssh: handshake failed: read tcp <IP_ADDRESS>:54460-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host., output:
DEBU error: Temporary error: ssh command error:
command : exit 0
err     : ssh: handshake failed: read tcp <IP_ADDRESS>:54460-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host.
sleeping 1s
DEBU retry loop: attempt 3
DEBU Running SSH command: exit 0
DEBU Using ssh private keys: [C:\Users\Admin.crc\machines\crc\id_ecdsa C:\Users\Admin.crc\cache\crc_hyperv_4.13.14_amd64\id_ecdsa_crc]
DEBU SSH command results: err: ssh: handshake failed: read tcp <IP_ADDRESS>:54461-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host., output:
DEBU error: Temporary error: ssh command error:
command : exit 0
err     : ssh: handshake failed: read tcp <IP_ADDRESS>:54461-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host.
sleeping 1s
DEBU retry loop: attempt 4
DEBU Running SSH command: exit 0
DEBU Using ssh private keys: [C:\Users\Admin.crc\machines\crc\id_ecdsa C:\Users\Admin.crc\cache\crc_hyperv_4.13.14_amd64\id_ecdsa_crc]
DEBU SSH command results: err: ssh: handshake failed: read tcp <IP_ADDRESS>:54462-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host., output:
DEBU error: Temporary error: ssh command error:
command : exit 0
err     : ssh: handshake failed: read tcp <IP_ADDRESS>:54462-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host.
sleeping 1s
DEBU retry loop: attempt 5
DEBU Running SSH command: exit 0
DEBU Using ssh private keys: [C:\Users\Admin.crc\machines\crc\id_ecdsa C:\Users\Admin.crc\cache\crc_hyperv_4.13.14_amd64\id_ecdsa_crc]
DEBU SSH command results: err: ssh: handshake failed: read tcp <IP_ADDRESS>:54463-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host., output:
DEBU error: Temporary error: ssh command error:
command : exit 0
err     : ssh: handshake failed: read tcp <IP_ADDRESS>:54463-><IP_ADDRESS>:2222: wsarecv: An existing connection was forcibly closed by the remote host.
sleeping 1s
DEBU retry loop: attempt 6
DEBU Running SSH command: exit 0
DEBU Using ssh private keys: [C:\Users\Admin.crc\machines\crc\id_ecdsa C:\Users\Admin.crc\cache\crc_hyperv_4.13.14_amd64\id_ecdsa_crc]
DEBU SSH command results: err: , output:
INFO CRC VM is running
DEBU Using root access: disable core user password
DEBU Running SSH command: sudo passwd --lock core
DEBU SSH command results: err: , output: Locking password for user core.
passwd: Success
DEBU Running SSH command: cat /home/core/.ssh/authorized_keys
DEBU SSH command results: err: Process exited with status 1, output:
INFO Updating authorized keys...
DEBU Creating /home/core/.ssh/authorized_keys with permissions 0644 in the CRC VM
DEBU Running SSH command:
DEBU SSH command succeeded
DEBU Running SSH command: rm /home/core/.ssh/authorized_keys.d/ignition
DEBU SSH command results: err: , output:
DEBU Using root access: Get device id
DEBU Running SSH command: sudo /usr/sbin/blkid -t TYPE=xfs -o device
DEBU SSH command results: err: , output: /dev/sda4
DEBU Using root access: Growing /dev/sda4 partition
DEBU Running SSH command: sudo /usr/bin/growpart /dev/sda 4
DEBU SSH command results: err: Process exited with status 1, output: NOCHANGE: partition 4 is size 63961055. it cannot be grown
DEBU No free space after /dev/sda4, nothing to do
DEBU Running SSH command: cat /etc/resolv.conf
DEBU SSH command results: err: , output: nameserver <IP_ADDRESS>
INFO Adding <IP_ADDRESS> as nameserver to the instance...
DEBU Running SSH command: NS=<IP_ADDRESS>; cat /etc/resolv.conf |grep -i "^nameserver $NS" || echo "nameserver $NS" | sudo tee -a /etc/resolv.conf
DEBU SSH command results: err: , output: nameserver <IP_ADDRESS>
DEBU Using root access: make root Podman socket accessible
DEBU Running SSH command: sudo chmod 777 /run/podman/ /run/podman/podman.sock
DEBU SSH command results: err: , output:
DEBU Creating /etc/resolv.conf with permissions 0644 in the CRC VM
DEBU Running SSH command:
DEBU SSH command succeeded
DEBU retry loop: attempt 0
DEBU Running SSH command: host -R 3 foo.apps-crc.testing
DEBU SSH command results: err: , output: foo.apps-crc.testing has address <IP_ADDRESS>
INFO Check internal and public DNS query...
DEBU Running SSH command: curl --head quay.io
DEBU SSH command results: err: , output: HTTP/1.1 301 Moved Permanently
Server: awselb/2.0
Date: Wed, 08 Nov 2023 09:42:53 GMT
Content-Type: text/html
Content-Length: 134
Connection: keep-alive
Location: https://quay.io:443/

INFO Check DNS query from host...
DEBU api.crc.testing resolved to [<IP_ADDRESS>]
INFO Verifying validity of the kubelet certificates...
DEBU Running SSH command: date --date="$(sudo openssl x509 -in /var/lib/kubelet/pki/kubelet-client-current.pem -noout -enddate | cut -d= -f 2)" --iso-8601=seconds
DEBU SSH command results: err: , output: 2024-10-05T05:18:52+00:00
DEBU Running SSH command: date --date="$(sudo openssl x509 -in /var/lib/kubelet/pki/kubelet-server-current.pem -noout -enddate | cut -d= -f 2)" --iso-8601=seconds
DEBU SSH command results: err: , output: 2024-10-05T05:19:08+00:00
DEBU Running SSH command: date --date="$(sudo openssl x509 -in /etc/kubernetes/static-pod-resources/kube-apiserver-certs/configmaps/aggregator-client-ca/ca-bundle.crt -noout -enddate | cut -d= -f 2)" --iso-8601=seconds
DEBU SSH command results: err: , output: 2024-10-05T05:22:30+00:00
INFO Starting kubelet service
DEBU Using root access: Executing systemctl daemon-reload command
DEBU Running SSH command: sudo systemctl daemon-reload
DEBU SSH command results: err: , output:
DEBU Using root access: Executing systemctl start kubelet
DEBU Running SSH command: sudo systemctl start kubelet
DEBU SSH command results: err: , output:
INFO Waiting for kube-apiserver availability... [takes around 2min]
DEBU retry loop: attempt 0
DEBU Running SSH command: timeout 5s oc get nodes --context admin --cluster crc --kubeconfig /opt/kubeconfig
DEBU SSH command results: err: Process exited with status 1, output:
DEBU The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port?
DEBU error: Temporary error: ssh command error:
command : timeout 5s oc get nodes --context admin --cluster crc --kubeconfig /opt/kubeconfig
err     : Process exited with status 1

sleeping 1s
DEBU retry loop: attempt 1
DEBU Running SSH command: timeout 5s oc get nodes --context admin --cluster crc --kubeconfig /opt/kubeconfig
DEBU SSH command results: err: Process exited with status 1, output:
DEBU The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port?
DEBU error: Temporary error: ssh command error:
command : timeout 5s oc get nodes --context admin --cluster crc --kubeconfig /opt/kubeconfig
err     : Process exited with status 1
sleeping 1s
DEBU retry loop: attempt 2
DEBU Running SSH command: timeout 5s oc get nodes --context admin --cluster crc --kubeconfig /opt/kubeconfig
DEBU SSH command results: err: Process exited with status 1, output:
DEBU The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port?
DEBU error: Temporary error: ssh command error:
command : timeout 5s oc get nodes --context admin --cluster crc --kubeconfig /opt/kubeconfig
err     : Process exited with status 1
sleeping 1s
DEBU retry loop: attempt 3
DEBU Running SSH command: timeout 5s oc get nodes --context admin --cluster crc --kubeconfig /opt/kubeconfig
DEBU SSH command results: err: Process exited with status 1, output:
DEBU The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port?
DEBU error: Temporary error: ssh command error:
command : timeout 5s oc get nodes --context admin --cluster crc --kubeconfig /opt/kubeconfig
err     : Process exited with status 1
sleeping 1s
DEBU retry loop: attempt 4
DEBU Running SSH command: timeout 5s oc get nodes --context admin --cluster crc --kubeconfig /opt/kubeconfig
DEBU SSH command results: err: Process exited with status 1, output:
DEBU The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port?
DEBU error: Temporary error: ssh command error:
command : timeout 5s oc get nodes --context admin --cluster crc --kubeconfig /opt/kubeconfig
err     : Process exited with status 1
sleeping 1s
DEBU retry loop: attempt 5
DEBU Running SSH command: timeout 5s oc get nodes --context admin --cluster crc --kubeconfig /opt/kubeconfig
DEBU SSH command results: err: Process exited with status 1, output:
DEBU The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port?
DEBU error: Temporary error: ssh command error:
command : timeout 5s oc get nodes --context admin --cluster crc --kubeconfig /opt/kubeconfig
err     : Process exited with status 1
sleeping 1s
DEBU retry loop: attempt 6
DEBU Running SSH command: timeout 5s oc get nodes --context admin --cluster crc --kubeconfig /opt/kubeconfig
DEBU SSH command results: err: Process exited with status 1, output:
DEBU The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port?
DEBU error: Temporary error: ssh command error:
command : timeout 5s oc get nodes --context admin --cluster crc --kubeconfig /opt/kubeconfig
err     : Process exited with status 1
sleeping 1s
DEBU retry loop: attempt 7
DEBU Running SSH command: timeout 5s oc get nodes --context admin --cluster crc --kubeconfig /opt/kubeconfig
DEBU SSH command results: err: Process exited with status 1, output:
DEBU The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port?
DEBU error: Temporary error: ssh command error:
command : timeout 5s oc get nodes --context admin --cluster crc --kubeconfig /opt/kubeconfig
err     : Process exited with status 1
sleeping 1s
DEBU retry loop: attempt 8
DEBU Running SSH command: timeout 5s oc get nodes --context admin --cluster crc --kubeconfig /opt/kubeconfig
DEBU SSH command results: err: Process exited with status 1, output:
DEBU The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port?


Malformed file(?)

Hello,
I use this dependency in my java code
 <dependency>
    <groupId>org.bouncycastle</groupId>
    <artifactId>bcpkix-jdk15on</artifactId>
    <version>1.67</version>
 </dependency>

and I'm getting this error trying to decode this file
Caused by: java.lang.IllegalArgumentException: unknown object in getInstance: org.bouncycastle.asn1.DLApplicationSpecific
at org.bouncycastle.asn1.ASN1Sequence.getInstance(ASN1Sequence.java:105)
at org.bouncycastle.asn1.cms.ContentInfo.getInstance(Unknown Source)

I tried parsing the file with openssl asn1parse but it seems to work without problem (output in the link below).
https://drive.google.com/file/d/1i81vOfRCd_c4lXEsrAMcJXERj2UwSrvL/view?usp=sharing
My code is really simple, but in this case it enters in the first catch and returns an empty array of bytes
public static byte[] getData(final byte[] p7bytes) {
        CMSSignedData cms = null;
        try {
            cms = new CMSSignedData(p7bytes);
        } catch (CMSException e) {
            log.error("Error while converting bytes to CMSSignedData : " + e.getMessage(), e);
        }
        if( cms == null || cms.getSignedContent() == null) {
            log.error("p7m signed content is null");
            return new byte[0];
        }
        return (byte[]) cms.getSignedContent().getContent();
    }

Can you tell me where is the problem?
Thanks,

Same thing also happens with different library versions, I've tried 1.52 (downgrade) and 1.68 (upgrade), same stack trace.

Same thing also happens with different library versions, I've tried 1.52 (downgrade) and 1.68 (upgrade), same stack trace.

p7bytes isn't a Base64 encoded data stream is it?

Thank you, found the problem, didn't know about that


Error handling and most.fromObservable

Hi!
While integrating most with @cycle/time, I noticed some curious behavior.
import {Observable} from 'rxjs/Rx';

function boom () {
  throw new Error('boom!');
}

const stream = most.from(Observable.of('a')).map(boom);

stream.subscribe({
  next (ev) {},

  error (err) {
    console.log('Handled error');
  },

  complete () {}
});

I would expect this code to log 'Handled error'. Instead the error is thrown when it occurs, not caught and passed into the error handler in subscribe.
If most.from(Observable.of('a')) is replaced with most.of('a') the code functions as expected.

Thanks for reporting this error @Widdershin
I've opened a possible solution this problem for others to review in #408


Add Bolt12Invoice

Adds types for Bolt 12 invoice.
PaymentRequest is now an interface that can be either a Bolt11Invoice (the old PaymentRequest) or a Bolt12Invoice.
Replaces #600

@dpad85 Added in #607


Enable HTTPS

Have a look at https://certbot.eff.org/ 🎉
I can help tomorrow if needed!

Done (using Certbot) ! 🍾


Rename packages

This PR will rename the npm packages
in the learna setup

This was already added to the feature/lerna branch.


[Bug report] Security issue in Photo Manager

Version
2.8.1
Platforms
Android
Device Model
All
flutter info
[✓] Flutter (Channel stable, 3.13.9, on macOS 14.4.1 23E224 darwin-arm64, locale
    zh-Hant-TW)
    • Flutter version 3.13.9 on channel stable at
      /Users/rdapp/fvm/versions/3.13.9
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision d211f42860 (7 個月前), 2023-10-25 13:42:25 -0700
    • Engine revision 0545f8705d
    • Dart version 3.1.5
    • DevTools version 2.25.0
    • Pub download mirror http://app-pub-pc01.pft.com:8080

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.2)
    • Android SDK at /Users/rdapp/Library/Android/sdk
    • Platform android-34, build-tools 33.0.2
    • Java binary at: /Applications/Android
      Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      17.0.10+0-17.0.10b1087.21-11572160)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15E204a
    • CocoaPods version 1.15.2

[✓] Android Studio (version 2023.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      17.0.10+0-17.0.10b1087.21-11572160)

How to reproduce?
Hi,
I face a Security check Alert in photo_manager android.
Here is detail:
Overwriting arbitrary files via attacker-controlled output file paths
Vulnerability Description
An attacker can write arbitrary content to an arbitrary file because the attacker controls both the content to be written and the file path. In most cases, this could lead to the manipulation of various settings, user sessions, and history. In cases where an application uses dynamic code loading, an attacker can achieve arbitrary code execution by overwriting native libraries or scripts.
https://cwe.mitre.org/data/definitions/23.html
https://cwe.mitre.org/data/definitions/73.html
https://cwe.mitre.org/data/definitions/285.html
Here is code in photo manager:
    private fun getCacheFile(context: Context, assetEntity: AssetEntity, isOrigin: Boolean): File {
        val originString = if (isOrigin) "_o" else ""
        val name = "$filenamePrefix${assetEntity.id}${originString}_${assetEntity.displayName}"
        return File(context.cacheDir, name)
    }

They say photo manager use assetEntity.displayName for file name, it maybe have risk.
Can we use other string? ex, generate GUID ?
I hope we can pass this check, otherwise, we need find other solution.
Thanks.
Logs
No response
Example code (optional)
No response
Contact
No response

Why it seems to be an issue? All files are under the sandbox of your app.


stream: fix spurious event on termination when Debounce is used

Currently, stream.Debounce can emit a spurious event when the source stream terminates. Indeed, at that point, the items channel gets closed, and the completion error is published to a separate error channel. Depending on the (undeterministic) select unblocking order, we may first observe the items channel closure, hence emitting the default value of the object, and only afterwards propagate the termination error.
Let's fix this issue by checking whether the items channel unblocked because it had just been closed, and do not emit any item in that case. Additionally, let's also slightly adapt the corresponding test to catch this issue: we never discovered it because another event had just been emitted, and the spurious one was just queued. Adding an extra delay, instead, causes the test (without this fix) to almost always hang, because of the spurious event not being received by anyone.
Additionally, let's also prevent entering into a busy loop when the items channel gets closed, until we receive on the errors channel, by immediately setting it to nil afterwards. Thanks to David Bimmler for pointing out this issue.

/test


No-config databases or json data storage

FWIW, it would be nice to remove the need for database configuration, or an extra database, by using redis, couchbase, mongodb or other nosql databases, or better yet just store/persist the data in a json file that can be stored on a volume or NFS share.  Configs will not change often enough to justify a full database with its added complexity and overhead.

I agree with this, it becomes a bit of a pain having to launch the containers in certain order unless I'm missing something?

A possible solution that may be quicker to implement is just base this around sqlite? That way the db and db-engine can just be part of same container and generally be invisible to user.

Has this been implemented? I can't seem to find any documentation or dev versions that have this.

+1 to this. A mysql database takes up 250mb+ to store the < 2kb of data required to make nginx-proxy-manager work. Absolutely nuts.

I was about to try it out, but requiring a database for this purpose is a no-go for me.
I'll try out this one https://github.com/schenkd/nginx-ui it seems it doesn't require a database.

+1 having mariadb for storing 99% of 10kb readonly data on embed devices make this powerfull software useless.
It also add more maintenance, less robustness, more attack surface.

Most other containers that don’t need such a robust database use SQLite which exists in a single file and is pretty solid (even used by some major browsers).

@tg44 Do you know how we might be able to get a working instance using Sqlite?

Heads up to this thread; Sqlite works!
Example db config; https://github.com/tg44/nginx-proxy-manager/blob/6690b7735d494820a7c0fa243dda86157bceb282/backend/config/sqlite-test-db.json

@tg44 Great news!

My currently working compose;
version: "3"
services:
  nginx-proxy-manager:
    image: jc21/nginx-proxy-manager:github-pr-510
    restart: unless-stopped
    ports:
      # Public HTTP Port:
      - 80:80
      # Public HTTPS Port:
      - 443:443
      # Admin Web Port:
      - 81:81
    volumes:
      # Make sure this config.json file exists as per instructions above:
      - /hdd/docker/nginx-proxy-manager/config.json:/app/config/production.json
      - /hdd/docker/nginx-proxy-manager/data:/data
      - /hdd/docker/nginx-proxy-manager/letsencrypt:/etc/letsencrypt

And config json;
{
    "database": {
      "engine": "knex-native",
      "knex": {
        "client": "sqlite3",
        "connection": {
          "filename": "/data/mydb.sqlite"
        },
        "pool": {
          "min": 0,
          "max": 1,
          "createTimeoutMillis": 3000,
          "acquireTimeoutMillis": 30000,
          "idleTimeoutMillis": 30000,
          "reapIntervalMillis": 1000,
          "createRetryIntervalMillis": 100,
          "propagateCreateError": false
        },
        "migrations": {
          "tableName": "migrations",
          "stub": "src/backend/lib/migrate_template.js",
          "directory": "src/backend/migrations"
        }
      }
    }
}

I think using latest or github-develop tags should work too, and they are much safer to use than any pr tags.

@tg44 Perfect. Thanks! This work for me too.
@Daemach I think we can close this issue.

@tg44 The SQLite configuration works great, however i'm having troubles requesting an SSL certificate. It seems to fetch the certificate correctly, but there seems to be an issue with an SQL datetime conversion. (See #584)

thanks @tg44 !!! it worked for me too!

Any idea how to migrate from an existing mysql nginx-proxy-manager install?

@timdonovanuk mysql2sqlite should work well.

@tg44 awesome, thanks!


read "payload" in JS

  [RNCallKeep reportNewIncomingCall:uuid handle:handle handleType:@"generic" hasVideo:false localizedCallerName:callerName fromPushKit: YES payload:nil];

I need to get data from payload in the JS part of the app when the app is "killed"
I can get it when the app is Foregraund or Background but  I need it when the app is starting up from a VoIP
I have tried with
RNNCallKeep - didDisplayIncomingCall
but it only works when app is fore or background mode, when the app is killed it do not trigger.

Check docs here, the payload is set in Appdelegate.m: https://github.com/react-native-webrtc/react-native-callkeep#pushkit


catchNull() catches wrong exception

I see that parse() throw MissingKey when a value can't be extracted for a key. However, catchNull() only catches TypeMismatch which doesn't seem appropriate for:
/// Try to decode as T, or throw. Will return nil if the object at the keypath is NSNull.
public func => <T: Decodable>(lhs: AnyObject, rhs: String) throws -> T? {
    return try catchNull { try parse(lhs, path: rhs, decode: T.decode) }
}

Wouldn't this actually throw MissingKey if rhs is missing?

Never mind, forgot NSNull is actually an object.


[Firefox ESR compatibility]: Carbon-angular icon tooltips on an interactive button not able to be clicked or hovered over in Firefox 60.9.0esr (current ESR channel release)

Detailed Description
In an IBM internal application, adding carbon-angular icon tooltips on interactive voting buttons has rendered the buttons unable to be clicked or hovered over in the current Firefox ESR release, Firefox 60.9.0esr (https://www.mozilla.org/en-US/firefox/60.9.0/releasenotes/).  They work fine in the current Firefox RR version and in other tested browsers (Chrome, edge, safari).
Screenshots provided below should provide a better picture of what's going on.  In summary, the functionality in question is "reddit-esque" allowing users to create posts and comment on posts, and allowing other users to upvote and downvote posts and comments.
When working properly, hovering over one of the voting buttons displays a circular highlight behind the button, and also a text tool tip (Upvote or Downvote as appropriate).  Clicking the button records an upvote or downvote by the user.
Since implementing Carbon tooltips here, it seems the upvote and downvote buttons are no longer clickable for users in Firefox 60.9.0esr, which is the current ESR version of Firefox and in wide use across IBM (representing >20% of our sessions in September MTD).  Hovering over the button still displays the text Upvote or Downvote tooltip, but the highlight is not displayed and, more problematically, clicking on the button does not work.  It appears the carbon tooltip is preventing detection of the button and thereby preventing the action from being performed.
Version of the Carbon Design System we are using:
carbon/icons-angular: 10.3.2
carbon-components: 10.5.0
carbon-components-angular: 3.14.3
Offering/product we work on:
Bluemine
Pressing ship or release dates you should be aware of:
This is already in our production system and impacting users, but we are going to back the carbon tooltips out in our next release (code freeze planned ~Oct 4, 2019) if it is not fixed sooner.
Based on our analysis, approx 22% of our users in September have visited Bluemine using Firefox ESR 60.9.0 (or earlier).  So it is a significant enough portion of the IBM population (anyone using Firefox who is on the ESR update channel) that it probably warrants addressing.  We have about 100k users from all parts of IBM so our usage is usually pretty good representation of the IBM population as a whole.
Steps to reproduce the issue
Due to the confidential nature of Bluemine I would need to communicate this information privately and/or show you in a webex demo.  I've asked the developer to look into CodeSandbox for this.
UPDATE:  Kevin has put together a basic reproduction in codesandbox:
https://codesandbox.io/embed/carbon-components-angular-ho3b4?fontsize=14
Clicking on the Greet button in a compatible browser does an alert.  Clicking on the button in Firefox 60.9.0esr does not do the alert.
Additional information
In the screenshots below, the red boxes were added by me after taking the screenshot to conceal potentially sensitive information.  Otherwise, the screenshots are unaltered.
Expected Behavior: In Firefox 69.0.1, working properly -- hovering over the upvote button, button carbon tooltip and underlying circular highlight are displayed

Expected Behavior:  In Firefox 69.0.1, working properly -- after clicking the upvote button, the vote is recorded with the vote score increasing by 1 (from 4 to 5 in this case)

Bad Behavior: In Firefox 60.9.0esr, hovering over the upvote button displays the tool tip, but not the circular highlight

Bad Behavior:  In Firefox 60.9.0esr, clicking the upvote button does not record a vote.  Blue boxes appear around the button, and the tool tip "sticks" even when the mouse is moved away

Bluemine contacts
Developer:  Kevin Truong<EMAIL_ADDRESS>PM:  Brian Kulak<EMAIL_ADDRESS>

Update / added to main comment:
Kevin has put together a basic reproduction in codesandbox:
https://codesandbox.io/embed/carbon-components-angular-ho3b4?fontsize=14
Clicking on the Greet button in a compatible browser does an alert.  Clicking on the button in Firefox 60.9.0esr does not do the alert.

So, debugging a bit, and this seems to be due to the buttons nesting ... The icon tooltip component already provides a button, so nesting another button within breaks the inner buttons click event ... you should be able to bind the click to the component itself and achieve the same result :+1:

@cal-smith Kevin was able to fix this based on your feedback and suggestion -- thank you so much!
Also, I got in touch with Mozilla -- they confirmed Firefox 60.9.0esr is still the main supported firefox ESR version at the moment, but they indicated that ESR channel users will get an automatic update to 68.2.0esr in late October.  We tested this same functionality (pre-fix) in Firefox 68 and it worked fine...so if this is a browser-version-specific issue it should "take care of itself" within a month...except of course for users who refuse the automatic firefox updates or never restart their browsers.

Sounds good ... Thanks again for the super detailed issue and followups! We'll still look at updating our guidance around the icon tooltip (since nested buttons is a bit hacky) but otherwise it sounds like it should be smooth sailing going forwards.
I'll close this for now, but feel free to re-open if anything else comes up on this topic.


Add keep_linebreaks parameter to text loader

As asked in #870 and https://github.com/huggingface/transformers/issues/10269 there should be a parameter to keep the linebreaks when loading a text dataset.
cc @sgugger @jncasey

Just so I understand how it can be used in practice, do you have an example showing how to load a text dataset with this option?

Sure ! Here is an example:
from datasets import load_dataset

load_dataset("text", keep_linebreaks=True, data_files=...)

I'll update the documentation to explain this

Perfect!


Fix contribution guide and delete CONTRIBUTING.md

Summary

Depends on #429
This PR contains:

fix contribution guide on the website
delete CONTRIBUTING.md since it is on the documentation site

How to test

Checklist

[x] I submit my changes into the develop branch
[ ] I have added description of my changes into CHANGELOG
[x] I have updated the documentation accordingly
[ ] I have added tests to cover my changes
[ ] I have linked related issues

License

[x] I submit my code changes under the same MIT License that covers the project.
Feel free to contact the maintainers if that's a concern.
[ ] I have updated the license header for each file (see an example below)

# Copyright (C) 2021 Intel Corporation
#
# SPDX-License-Identifier: MIT

You marked this PR dependent, so I merged the blocker first. Please, update this PR.


Compiling error on first 'npm start'

Is this a bug report?
Yes
These 3 steps:
npm install -g create-react-app

create-react-app my-app
cd my-app/
npm start

Resulted in:

Failed to compile.
./src/index.js
Module build failed: Error: Failed to load plugin import: Cannot find module 'eslint-plugin-import'

I have not edited the directories or files at all. Simply followed the first 3 steps in the Getting Started instructions

Please follow the issue template.

Those worked for me as :
 >npm install react -g
   >npm install react-dom

   >npm install -g babel
   >npm intall -g  babel-cli

   >npm install -g webpack@latest --save-dev
   >npm insall -g webpack-server-dev --save-dev

   >npm instal -g babel-core
   >npm install -g babel-loader
   >npm install -g babel-preset-react --save-dev
   >npm insall -g babel-preset-es2015  --save-dev

   >npm install -g create-react-app
  >create-react-app my-app
  >cd my-app
  >npm start

Install latest version of npm and remove node_moudles folder and lockfile, then re-install packages, the issue can be fixed.
> npm -g update npm
> rm -rf ./node_modules && rm ./package-lock.json
> npm i

I faced the same when the first installation and fixed as followed up just at @latest for every installation done i.e. npm install _LibName_@latest  -g --save-dev

The instructions in https://github.com/facebookincubator/create-react-app/issues/3600#issuecomment-353267398 and https://github.com/facebookincubator/create-react-app/issues/3600#issuecomment-353831399 are completely incorrect and will leave your local npm setup in a broken state. Please don’t do it.
You’re not supposed to ever install these projects globally. This might “fix” one problem but will create much larger problems later.
If you have such problems most likely you’re using a buggy npm version. As rightly noted in  https://github.com/facebookincubator/create-react-app/issues/3600#issuecomment-353824943, this can usually be solved by updating npm.
If you still experience problems file a new issue and fill out the issue template. Otherwise there’s just no way we can help you because neither of you specified any details (Node, non versions, what you installed etc) or provided your projects.


Fix "Unknown method findPublishedSubpagesWithoutGuestsByPid" exception

This PR fix the "Unknown method findPublishedSubpagesWithoutGuestsByPid" exception when using this bundle with contao 5.
In MenuBuilder the PageModel::findPublishedSubpagesWithoutGuestsByPid method is used, which is deprecated since contao 4.9. This PR replaces the method with the code copied from \Contao\Module::getPublishedSubpagesByPid(), since this method is protected.
We could also go another approach with creating a proxy class for the module class making the \Contao\Module::getPublishedSubpagesByPid() accessible so we do not need to copy the code, but I don't know if you like that.

Hi @koertho, thank you!
I will merge and release this for now.
but I am wondering what the Contao Core's customnav is using now when the method was dropped?

This is the associated PR: https://github.com/contao/contao/commit/b93f7c8374d755b250c2061a01f4f7951605e2a2

Sadly this release (1.2.2) makes my submenues go away...


[dns] constant delay on reverse lookups of non-weave IPs

Reverse DNS requests to Weave DNS are very slow compared to those made against a local bind server:
Weave DNS
# time host <IP_ADDRESS> <IP_ADDRESS>
Using domain server:
Name: <IP_ADDRESS>
Address: <IP_ADDRESS>#53
Aliases:

Host <IP_ADDRESS>.in-addr.arpa. not found: 3(NXDOMAIN)

real    0m0.508s
user    0m0.007s
sys     0m0.000s

LOCAL BIND SERVER
# time host <IP_ADDRESS> <IP_ADDRESS>
Using domain server:
Name: <IP_ADDRESS>
Address: <IP_ADDRESS>#53
Aliases:

Host <IP_ADDRESS>.in-addr.arpa. not found: 3(NXDOMAIN)

real    0m0.006s
user    0m0.006s
sys     0m0.000s

Error message of weavedns during query:
DEBUG: 2015/03/19 12:26:33.692228 Reverse query: {Name:<IP_ADDRESS>.in-addr.arpa. Qtype:12 Qclass:1}
DEBUG: 2015/03/19 12:26:33.692247 [zonedb] Looking for address: [192 168 2 1]
DEBUG: 2015/03/19 12:26:33.692601 [zonedb] Looking for address: [192 168 2 1]
DEBUG: 2015/03/19 12:26:33.692617 [mdns msgid 356] No local answer for mDNS query <IP_ADDRESS>.in-addr.arpa.
DEBUG: 2015/03/19 12:26:34.192546 [dns msgid 64921] Fallback query: {Name:<IP_ADDRESS>.in-addr.arpa. Qtype:12 Qclass:1}
DEBUG: 2015/03/19 12:26:34.192875 [dns msgid 64921] Failure reported by <IP_ADDRESS> for query <IP_ADDRESS>.in-addr.arpa.
WARNING: 2015/03/19 12:26:34.192888 [dns msgid 64921] Failed lookup for external name <IP_ADDRESS>.in-addr.arpa.

The local bind server is the fallback DNS server for weavedns. It starts to ask that fallback server after waiting 0.5 seconds apparently.

I believe this is a valid description of the current implementation.
Is it causing you a problem?

Unfortunately yes. In my setup I am running a service in a docker container (connected to weave/weave DNS) which does a reverse DNS request on the destination IP with every request. Because the IP is a local one the reverse dns query will fail every time and adds a constant delay to every request. Disabling the service's behaviour is not an option. Bind answers failing reverse DNS requests without a noticable delay.

@stonemaster the delay is caused because weaveDNS does not currently cache negative local query results. Consequently each time you ask it to reverse resolve a non-weave IP we incur a delay while we multicast to other peers looking for an answer; only when this times out do we fallback to external DNS. There is some ongoing work to add caching to weaveDNS which should mitigate this problem in future.

weavedns is configured to resolve <IP_ADDRESS>/16 while the ip address I want to resolve is outside that managed range.
When weavedns is asked to resolve domains or ip addresses it does not actually manage it should fallback to the external DNS immediately without asking other weavedns instances.

Logically you are completely correct; unfortunately there are some characteristics of the implementation, driven by other important requirements, that make this less straightforward than might be expected:

Firstly, at no point is the user required to tell weave what subnet(s) are in use - they are implicit in the weave run <CIDR>  and weave attach <CIDR> commands. Furthermore, it's possible to weave attach or weave run with new subnets at any peer at any time after the network is started. This is important for the user experience - we don't want users to have to specify application subnets up front.

The weave router and weaveDNS are distributed over a number of hosts. Consequently the knowledge of which subnets are managed by weave is distributed, and for any weaveDNS instance to answer the question 'is this IP address managed by weave' it necessarily has to consult with its peers. It is this consultation (and resulting timeout) that is causing the delay you are experiencing.

There are a couple of possible ways of addressing the problem:

Introduce caching of negative replies in the consultation, as mentioned earlier in this thread. This will mean that the delay is incurred infrequently (e.g. the first time an IP is reversed on a given weaveDNS peer, or after the negative reply cache entry TTL expires). We are working on this at the moment.
Pro-actively distribute information about new subnets as they appear on the weave network, so that all weaveDNS instances have an up-to-date picture of which IP ranges weave is managing. Getting this right without affecting scalability is complex, and therefore something for the longer term. We have tentative plans to replace the mDNS part of weaveDNS with something more scalable (probably a gossip protocol similar to that used by the weave router) - we can look at this approach as part of that work.

@stonemaster

weavedns is configured to resolve <IP_ADDRESS>/16

No, it isn't. The CIDR in weave launch-dns is for the subnet used by weaveDNS only. As the docs say that CIDR is meant to specify "a subnet that is a) common to all weaveDNS containers, b) disjoint from the application subnets, and c) not in use on any of the hosts.". So that CIDR tells us nothing about application container subnets.

@rade Thanks for the hint. You indeed made me aware of configuration problem on my side
@awh Thanks for the detailed explanation! Having a negative cache for reverse lookup would definitely help in my case.

@stonemaster The latest version in the repo should mitigate this in some degree. There is a new mechanism that performs negative caching for local responses. So you should experience that delay on the first query but, if it does not belong to the local domain,_ WeaveDNS_ will remember that for 30 seconds and go straight to your fallback server...

resolved by #429.


Scene is getting dirtied every frame

I noticed I cannot Save a Scene because it's immediatly dirtied up again. I think I found the problem as UpdateActiveState is called every frame as soon as there is a gameobject with a component in the scene (except transforms or components without enabled state).
I tried to fix it and moved the SetDirty call to SetActive but I don't know if this cludders up something else as there is no differentiation between components enabled and gameobjects active state.

 Will push again


Update observe/config Module.mds

Purpose
$Subject

Merging without wating for travis since this is a doc change


Proguard Rules

I hope the developer of this library share the proguard rule that works properly with 8.7.0.

https://github.com/JakeWharton/butterknife/blob/master/butterknife/proguard-rules.txt - which are automatically added using consumerProguardFiles


Charlie Pradeep commit for open source selenium conference

Pull request to join Selenium Open Space Conference
Name     : Charlie Pradeep
LinkedIn : https://www.linkedin.com/in/charliepradeep/

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Alignment of Written Font

Is there an existing issue for this?
I have searched the existing issues
What happened?
Alignment of written, so that it provide better visual

Record
I agree to follow this project's Code of Conduct
I'm a GSSOC'24 contributor
I want to work on this issue
please assign me this under Gssoc'24 Ext, Hacktoberfest.

Assign me this task.


L2CAP method openL2CAPChannel should be available for OSX 10.14

Describe the bug
Rx Peripheral openL2CAPChannel method should be available on OSX 10.14 and above.
Expected behavior
The CoreBluetooth method is available on 10.14 but the RxBluetoothkit version is missing the proper @available annotation.
Environment:

OS: OSX 10.14
Library version 5.1.2
Swift version 5.0

Added to version 5.3.0


warning: mismatched indentations at 'end' with 'class' warnings due to use of tabs

If ruby tests are run with verbose or warnings turned on the test run will output the following warnings from coco.
/usr/local/var/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/coco-0.13.0/lib/coco/formatter/context.rb:22: warning: mismatched indentations at 'end' with 'class' at 4
/usr/local/var/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/coco-0.13.0/lib/coco/formatter/context.rb:53: warning: mismatched indentations at 'end' with 'class' at 25

This is due to the use of tabs instead of spaces (inconsistently) in a couple of files.

Good call! I don't know how this tabs ended up there :no_mouth:


Small optimizations to Monitor

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: mccoyp sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.


Compile error: unknown type name 'time_t'

During compile of the /examples/indicator_basis, the following errors occurred:
n file included from /home/fabian/Desktop/indicator/SenseCAP_Indicator_ESP32/examples/indicator_basis/main/view/indicator_view.h:4,
                 from /home/fabian/Desktop/indicator/SenseCAP_Indicator_ESP32/examples/indicator_basis/main/main.c:10:
/home/fabian/Desktop/indicator/SenseCAP_Indicator_ESP32/examples/indicator_basis/main/view_data.h:68:5: error: unknown type name 'time_t'
   68 |     time_t  time;       // use when auto_update is true
      |     ^~~~~~
/home/fabian/Desktop/indicator/SenseCAP_Indicator_ESP32/examples/indicator_basis/main/view_data.h:80:5: error: unknown type name 'time_t'
   80 |     time_t  timestamp;
      |     ^~~~~~
/home/fabian/Desktop/indicator/SenseCAP_Indicator_ESP32/examples/indicator_basis/main/view_data.h:88:5: error: unknown type name 'time_t'
   88 |     time_t  timestamp;
      |     ^~~~~~

This can be resolved by including <time.h> in the view_data.h directly.
I have not checked if the time.h is already included within an earlier include, I have checked this problem by getting the newest esp IDF (ESP-IDF v5.1.2-dirty), on an updated Linux machine.

kernel 6.6.2-arch1-1 (64-bit)

Thanks for your issue picked up.  I'll figure it out later.

I have the same issue with ESP-IDF v5.1.2 Release.
@fabianmuehlberger - thanks for the suggested change :-)

Same issue

#42 Done


Add Date directly to sample

Its implemented in the models already, but it should be possible to set the date (or add a date) for a sample independent of the layer of origin. Especially, since we sometimes have direct OSL dates of the sediment samples

[ ] download of samples working (layer age and sample age 2 distinct columns)
[ ] upload of dates by csv working (for layers)
[ ] upload of dates by csv working (for samples)
[ ] display dates in timeline that are only linked to sample


doc: net: Enhance DHCPv4 documentation

Add short overview for DHCPv4. Do not add dhcpv4 library internal
state in the documentation.
Signed-off-by: Jukka Rissanen<EMAIL_ADDRESS>

Codecov Report

Merging #13507 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master   #13507   +/-   ##
=======================================
  Coverage    52.5%    52.5%
=======================================
  Files         318      318
  Lines       46529    46529
  Branches    10755    10755
=======================================
  Hits        24431    24431
  Misses      17199    17199
  Partials     4899     4899

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 996c252...51e704d. Read the comment docs.

Updated according to comments.


Prompt expansion feature

Add functionality to obtain variants of prompts in order to better explore the input space.
Can potentially be linked to #82 for "chaining" prompto runs but for this idea rather than creating a new experiment after an initial run, we are maybe doing an initial "expansion" run to obtain a larger number of prompts to send.

Starting point, reading this recent NAACL student workshop paper: https://aclanthology.org/2024.naacl-srw.2.pdf

To start, an early version of a rephrasals pipeline could look something like the one that creates and runs a LLM-as-a-judge evaluation:

Rephrasal templates are provided (potentially as a .json file of an array of strings?) - unlike the judge, we probably have several rephrasal templates?
Rephrasal "settings" are provided (i.e. the API and model to send those rephrasals to)

To implement:

A specific command (prompto_run_rephrasal?) which produces an rephrased input file - it will send the prompts to the same API/model provided in the original input file

We can try this out for a bit before implementing this into prompto_run_experiment

Are we expecting that the rephrasal script would generate a new file where for each line you have the rephrased prompt or that you will have the original prompt and in the following line the rephrased one? I think the second one would be more useful for our work, but maybe for general applications the first one is better?

Is the only difference whether or not the original prompt is included in the new file? We can make that a flag in the command whether or not its duplicated to the new file, with the default option being that it is there


[Question] using DSU with locked bootloader

Hi,
I know, that your sideloader is needing an open bootloader. But on my ViVo with A13, I can't unlock the bootloader. Do you now any way to run my GSI with DSU sideloader ?
The stupid thing is, the ViVo OS doesn't have standard DSU in developer options :(
Would be great if you could help me.
(I have tried, but the installed GSI is not booting. After OEM logo, the screen is getting black and then it is reboot into OEM firmware?

When you start your device on locked bootloader, verified boot will verify what OS is booting, if that OS isn't considered trusted, it will refuse to boot, fortunately/unfortunately, in most cases, the only OS considered trusted, are the ones signed by OEM, so, i guess if you can sign a GSI using OEM private keys, you might me able to boot it with locked bootloader? anyway, obtaining that is almost impossible for most of us, so not a practical option :\
Some doc links:
https://source.android.com/docs/security/features/verifiedboot/device-state#root-of-trust
https://source.android.com/docs/security/features/verifiedboot/boot-flow
Unfortunately, i think unlocking the bootloader is the unique viable option, in some cases, there are some alternative ways to unlock bootloader, like mtkclient (can unlock some MTK devices), PotatoNV (can unlock some Huawei/Honor), CVE-2022-38694 (should be able to unlock some Unisoc SoC devices).

Thx for answer / clarification. The Problem is, that there is no way to unlock bootloader on newer ViVo devices :/


[DNM] check promotable() in MsgTimeoutNow handling

#1283
If MsgTimeoutNow arrived after a node was removed, the node could start and win an election, then panic in becomeLeader

PTAL @siddontang @BusyJay

Seems that this should be supported after PreVote.

Why not merge now?

Should port the comment https://github.com/coreos/etcd/pull/6815/files#diff-a8629a0eb6da1c6c3805111f1f1af85eR1055 too.
But the comment contains PreVote which we don't support now.

This can be resolved when PreVote is merged. There should be conflict changes.


run fails complaining that a puppet:/// file resource cannot be found

When running the gem or git version of the tool, it fails when it encounters a file resource with a source => puppet:/// construct.
My setup had 2 module dirs : modules/ and site/ site/ comes from git and modules/ is setup during bootstrap downloading modules using r10k.
The puppetcode is working nicely in production, the file is actually there in git, I doublechecked.
You probably need more info, but I'm not sure what, so please advise.

Command used and debugging output

vagrant@ptester:/vagrant/environments/octocatalog-diff$ /vagrant/octocatalog-diff/bin/octocatalog-diff -f production -t fea-puppetv4 -n [REDACTED] --fact-file /vagrant/puppetdb_facts/[REDACTED].yaml --to-fact-override vagrant_puppetrole=nagiosserver --from-fact-override vagrant_puppetrole=nagiosserver --bootstrap-script repo-bootstrap.sh -d --suppress-absent-file-details
D, [2016-11-03T03:48:52.976966 #28239] DEBUG -- : Running octocatalog-diff 0.5.3 with ruby 2.3.1
D, [2016-11-03T03:48:52.977280 #28239] DEBUG -- : Command line arguments: ["-f", "production", "-t", "fea-puppetv4", "-n", "[REDACTED]", "--fact-file", "/vagrant/puppetdb_facts/[REDACTED].yaml", "--to-fact-override", "vagrant_puppetrole=nagiosserver", "--from-fact-override", "vagrant_puppetrole=nagiosserver", "--bootstrap-script", "repo-bootstrap.sh", "-d", "--suppress-absent-file-details"]
D, [2016-11-03T03:48:52.977567 #28239] DEBUG -- : Running on host ptester.localdomain (x86_64-linux-gnu)
D, [2016-11-03T03:48:52.978009 #28239] DEBUG -- : Initialized OctocatalogDiff::Catalog::Computed for from-catalog
D, [2016-11-03T03:48:52.978284 #28239] DEBUG -- : Initialized OctocatalogDiff::Catalog::Computed for to-catalog
D, [2016-11-03T03:48:52.978495 #28239] DEBUG -- : Initialized parallel task result array: size=2
D, [2016-11-03T03:48:52.980954 #28241] DEBUG -- : Begin build_catalog for production
D, [2016-11-03T03:48:52.981330 #28241] DEBUG -- : Setting up Puppet catalog build for production
D, [2016-11-03T03:48:52.981614 #28241] DEBUG -- : Catalog for production will be built with OctocatalogDiff::Catalog::Computed
D, [2016-11-03T03:48:52.981999 #28241] DEBUG -- : Calling build for object OctocatalogDiff::Catalog::Computed
D, [2016-11-03T03:48:52.982377 #28241] DEBUG -- : Start retrieving facts for [REDACTED] from OctocatalogDiff::Catalog::Computed
D, [2016-11-03T03:48:52.982664 #28241] DEBUG -- : Success retrieving facts for [REDACTED] from OctocatalogDiff::Catalog::Computed
D, [2016-11-03T03:48:52.983370 #28241] DEBUG -- : Begin git checkout /vagrant/environments/octocatalog-diff:production -> /tmp/d20161103-28241-1tett3x
D, [2016-11-03T03:48:52.984352 #28241] DEBUG -- : Begin git archive /vagrant/environments/octocatalog-diff:production -> /tmp/d20161103-28241-1tett3x
D, [2016-11-03T03:48:53.076234 #28241] DEBUG -- : Success git archive /vagrant/environments/octocatalog-diff:production
D, [2016-11-03T03:48:53.076551 #28241] DEBUG -- : Success git checkout /vagrant/environments/octocatalog-diff:production -> /tmp/d20161103-28241-1tett3x
D, [2016-11-03T03:48:53.076953 #28241] DEBUG -- : Begin install bootstrap script in target directory
D, [2016-11-03T03:48:53.080222 #28241] DEBUG -- : Success: copied /vagrant/environments/octocatalog-diff/repo-bootstrap.sh to /tmp/d20161103-28241-1tett3x/repo-bootstrap.sh
D, [2016-11-03T03:48:53.080379 #28241] DEBUG -- : Begin bootstrap with 'repo-bootstrap.sh' in /tmp/d20161103-28241-1tett3x
D, [2016-11-03T03:50:10.720551 #28241] DEBUG -- : Success bootstrap in /tmp/d20161103-28241-1tett3x
D, [2016-11-03T03:50:10.721492 #28241] DEBUG -- : Symlinked /tmp/d20161103-28241-148qf2a/environments/production -> /tmp/d20161103-28241-1tett3x
D, [2016-11-03T03:50:10.723933 #28241] DEBUG -- : Installed hiera.yaml from /tmp/d20161103-28241-148qf2a/environments/production/hiera.yaml to /tmp/d20161103-28241-148qf2a/hiera.yaml
D, [2016-11-03T03:50:10.724408 #28241] DEBUG -- : Override vagrant_puppetrole from nil to "nagiosserver"
D, [2016-11-03T03:50:10.729859 #28241] DEBUG -- : Installed fact file at /tmp/d20161103-28241-148qf2a/var/yaml/facts/[REDACTED]l.yaml
D, [2016-11-03T03:50:10.730572 #28241] DEBUG -- : Installed SSL client certificate in /tmp/d20161103-28241-148qf2a/var/ssl/certs/ptester.localdomain.pem
D, [2016-11-03T03:50:10.730932 #28241] DEBUG -- : Installed SSL client key in /tmp/d20161103-28241-148qf2a/var/ssl/private_keys/ptester.localdomain.pem
D, [2016-11-03T03:50:10.733681 #28241] DEBUG -- : Installed CA certificate in /tmp/d20161103-28241-148qf2a/var/ssl/certs/ca.pem
D, [2016-11-03T03:50:11.208200 #28241] DEBUG -- : (from) Try 1 executing Puppet 3.8.5: /usr/bin/puppet master --compile [REDACTED] --no-storeconfigs --factpath=/tmp/d20161103-28241-148qf2a/var/yaml/facts --facts_terminus=yaml --no-daemonize --no-ca --color=false --config_version="/bin/echo catalogscript" --environment=production --hiera_config=/tmp/d20161103-28241-148qf2a/hiera.yaml --environmentpath=/tmp/d20161103-28241-148qf2a/environments --vardir=/tmp/d20161103-28241-148qf2a/var --logdir=/tmp/d20161103-28241-148qf2a/var --ssldir=/tmp/d20161103-28241-148qf2a/var/ssl --confdir=/tmp/d20161103-28241-148qf2a
D, [2016-11-03T03:50:12.796125 #28241] DEBUG -- : (from) Catalog succeeded on try 1 in 2.062129317 seconds
D, [2016-11-03T03:50:12.796739 #28241] DEBUG -- : Catalog for production successfully built with OctocatalogDiff::Catalog::Computed in 79.814747402 seconds retries = 0
D, [2016-11-03T03:50:12.796928 #28241] DEBUG -- : Success build_catalog for production
D, [2016-11-03T03:50:12.798665 #28239] DEBUG -- : Success build_catalog for production
D, [2016-11-03T03:50:12.799050 #28241] DEBUG -- : Begin build_catalog for fea-puppetv4
D, [2016-11-03T03:50:12.799277 #28241] DEBUG -- : Setting up Puppet catalog build for fea-puppetv4
D, [2016-11-03T03:50:12.799466 #28241] DEBUG -- : Catalog for fea-puppetv4 will be built with OctocatalogDiff::Catalog::Computed
D, [2016-11-03T03:50:12.799704 #28241] DEBUG -- : Calling build for object OctocatalogDiff::Catalog::Computed
D, [2016-11-03T03:50:12.799913 #28241] DEBUG -- : Start retrieving facts for [REDACTED] from OctocatalogDiff::Catalog::Computed
D, [2016-11-03T03:50:12.800138 #28241] DEBUG -- : Success retrieving facts for [REDACTED] from OctocatalogDiff::Catalog::Computed
D, [2016-11-03T03:50:12.800470 #28241] DEBUG -- : Begin git checkout /vagrant/environments/octocatalog-diff:fea-puppetv4 -> /tmp/d20161103-28241-722vfw
D, [2016-11-03T03:50:12.801073 #28241] DEBUG -- : Begin git archive /vagrant/environments/octocatalog-diff:fea-puppetv4 -> /tmp/d20161103-28241-722vfw
D, [2016-11-03T03:50:12.984256 #28241] DEBUG -- : Success git archive /vagrant/environments/octocatalog-diff:fea-puppetv4
D, [2016-11-03T03:50:12.984651 #28241] DEBUG -- : Success git checkout /vagrant/environments/octocatalog-diff:fea-puppetv4 -> /tmp/d20161103-28241-722vfw
D, [2016-11-03T03:50:12.985055 #28241] DEBUG -- : Begin install bootstrap script in target directory
D, [2016-11-03T03:50:12.987851 #28241] DEBUG -- : Success: copied /vagrant/environments/octocatalog-diff/repo-bootstrap.sh to /tmp/d20161103-28241-722vfw/repo-bootstrap.sh
D, [2016-11-03T03:50:12.988135 #28241] DEBUG -- : Begin bootstrap with 'repo-bootstrap.sh' in /tmp/d20161103-28241-722vfw
D, [2016-11-03T03:51:30.402657 #28241] DEBUG -- : Success bootstrap in /tmp/d20161103-28241-722vfw
D, [2016-11-03T03:51:30.403468 #28241] DEBUG -- : Symlinked /tmp/d20161103-28241-12v50sb/environments/production -> /tmp/d20161103-28241-722vfw
D, [2016-11-03T03:51:30.406119 #28241] DEBUG -- : Installed hiera.yaml from /tmp/d20161103-28241-12v50sb/environments/production/hiera.yaml to /tmp/d20161103-28241-12v50sb/hiera.yaml
D, [2016-11-03T03:51:30.406909 #28241] DEBUG -- : Override vagrant_puppetrole from nil to "nagiosserver"
D, [2016-11-03T03:51:30.413732 #28241] DEBUG -- : Installed fact file at /tmp/d20161103-28241-12v50sb/var/yaml/facts/[REDACTED].yaml
D, [2016-11-03T03:51:30.416047 #28241] DEBUG -- : Installed SSL client certificate in /tmp/d20161103-28241-12v50sb/var/ssl/certs/ptester.localdomain.pem
D, [2016-11-03T03:51:30.416411 #28241] DEBUG -- : Installed SSL client key in /tmp/d20161103-28241-12v50sb/var/ssl/private_keys/ptester.localdomain.pem
D, [2016-11-03T03:51:30.418888 #28241] DEBUG -- : Installed CA certificate in /tmp/d20161103-28241-12v50sb/var/ssl/certs/ca.pem
D, [2016-11-03T03:51:30.892639 #28241] DEBUG -- : (to) Try 1 executing Puppet 3.8.5: /usr/bin/puppet master --compile [REDACTED] --no-storeconfigs --factpath=/tmp/d20161103-28241-12v50sb/var/yaml/facts --facts_terminus=yaml --no-daemonize --no-ca --color=false --config_version="/bin/echo catalogscript" --environment=production --hiera_config=/tmp/d20161103-28241-12v50sb/hiera.yaml --environmentpath=/tmp/d20161103-28241-12v50sb/environments --vardir=/tmp/d20161103-28241-12v50sb/var --logdir=/tmp/d20161103-28241-12v50sb/var --ssldir=/tmp/d20161103-28241-12v50sb/var/ssl --confdir=/tmp/d20161103-28241-12v50sb
D, [2016-11-03T03:51:34.123775 #28241] DEBUG -- : (to) Catalog succeeded on try 1 in 3.704408344 seconds
D, [2016-11-03T03:51:34.136377 #28241] DEBUG -- : Failed build_catalog for fea-puppetv4: Errno::ENOENT No such file or directory - Unable to find 'puppet:///modules/mitbackup/duplicity_0.7.10.deb' at /tmp/d20161103-28241-12v50sb/environments/production/modules/mitbackup/files/duplicity_0.7.10.deb!
D, [2016-11-03T03:51:34.163328 #28241] DEBUG -- : Cleaning up temporary directory /tmp/d20161103-28241-722vfw
D, [2016-11-03T03:51:34.399600 #28241] DEBUG -- : Cleaning up temporary directory /tmp/d20161103-28241-1tett3x
/vagrant/octocatalog-diff/lib/octocatalog-diff/catalog-diff/cli/catalogs.rb:209:in add_parallel_result': Catalog for 'to' (fea-puppetv4) failed to compile with Errno::ENOENT: No such file or directory - Unable to find 'puppet:///modules/mitbackup/duplicity_0.7.10.deb' at /tmp/d20161103-28241-12v50sb/environments/production/modules/mitbackup/files/duplicity_0.7.10.deb! (OctocatalogDiff::CatalogDiff::Cli::Catalogs::CatalogError)    /vagrant/octocatalog-diff/lib/octocatalog-diff/catalog-util/fileresources.rb:63:in block in _convert_file_resources'
/vagrant/octocatalog-diff/lib/octocatalog-diff/catalog-util/fileresources.rb:43:in map!'    /vagrant/octocatalog-diff/lib/octocatalog-diff/catalog-util/fileresources.rb:43:in _convert_file_resources'
/vagrant/octocatalog-diff/lib/octocatalog-diff/catalog-util/fileresources.rb:16:in convert_file_resources'    /vagrant/octocatalog-diff/lib/octocatalog-diff/catalog.rb:74:in build'
/vagrant/octocatalog-diff/lib/octocatalog-diff/catalog-diff/cli/catalogs.rb:221:in build_catalog'    /vagrant/octocatalog-diff/lib/octocatalog-diff/util/parallel.rb:26:in call'
/vagrant/octocatalog-diff/lib/octocatalog-diff/util/parallel.rb:26:in execute'    /vagrant/octocatalog-diff/lib/octocatalog-diff/util/parallel.rb:114:in block in run_tasks_parallel'
/var/lib/gems/2.3.0/gems/parallel-1.9.0/lib/parallel.rb:451:in call_with_index'    /var/lib/gems/2.3.0/gems/parallel-1.9.0/lib/parallel.rb:422:in process_incoming_jobs'
/var/lib/gems/2.3.0/gems/parallel-1.9.0/lib/parallel.rb:404:in block in worker'    /var/lib/gems/2.3.0/gems/parallel-1.9.0/lib/parallel.rb:395:in fork'
/var/lib/gems/2.3.0/gems/parallel-1.9.0/lib/parallel.rb:395:in worker'    /var/lib/gems/2.3.0/gems/parallel-1.9.0/lib/parallel.rb:386:in block in create_workers'
/var/lib/gems/2.3.0/gems/parallel-1.9.0/lib/parallel.rb:385:in each'    /var/lib/gems/2.3.0/gems/parallel-1.9.0/lib/parallel.rb:385:in each_with_index'
/var/lib/gems/2.3.0/gems/parallel-1.9.0/lib/parallel.rb:385:in create_workers'    /var/lib/gems/2.3.0/gems/parallel-1.9.0/lib/parallel.rb:327:in work_in_processes'
/var/lib/gems/2.3.0/gems/parallel-1.9.0/lib/parallel.rb:241:in map'    /var/lib/gems/2.3.0/gems/parallel-1.9.0/lib/parallel.rb:203:in each'
/vagrant/octocatalog-diff/lib/octocatalog-diff/util/parallel.rb:90:in run_tasks_parallel'    /vagrant/octocatalog-diff/lib/octocatalog-diff/util/parallel.rb:72:in run_tasks'
/vagrant/octocatalog-diff/lib/octocatalog-diff/catalog-diff/cli/catalogs.rb:98:in build_catalog_parallelizer'    /vagrant/octocatalog-diff/lib/octocatalog-diff/catalog-diff/cli/catalogs.rb:32:in catalogs'
/vagrant/octocatalog-diff/lib/octocatalog-diff/catalog-diff/cli.rb:104:in cli'    /vagrant/octocatalog-diff/bin/octocatalog-diff:74:in '
from /vagrant/octocatalog-diff/lib/octocatalog-diff/catalog-diff/cli/catalogs.rb:118:in block in build_catalog_parallelizer' 	from /vagrant/octocatalog-diff/lib/octocatalog-diff/catalog-diff/cli/catalogs.rb:112:in each'
from /vagrant/octocatalog-diff/lib/octocatalog-diff/catalog-diff/cli/catalogs.rb:112:in build_catalog_parallelizer' 	from /vagrant/octocatalog-diff/lib/octocatalog-diff/catalog-diff/cli/catalogs.rb:32:in catalogs'
from /vagrant/octocatalog-diff/lib/octocatalog-diff/catalog-diff/cli.rb:104:in cli' 	from /vagrant/octocatalog-diff/bin/octocatalog-diff:74:in '

Platform and version information

Your OS: Ubuntu 16.04
Your Ruby version: 2.3.1
Your version of Puppet: OS 3.8.7
Your version of octocatalog-diff: 0.5.3

Do the tests pass from a clean checkout?
No, see https://github.com/github/octocatalog-diff/issues/11

Anything else to add that you think will be helpful?

As a workaround I symlink away in my bootstrap :
r10k puppetfile install Puppetfile
for i in site/*; do BLA=echo $i |sed -e 's#site/##'; ln -s ../site/$BLA modules/$BLA; done

At some point thinks worked OK when I applied the fix above and the parameter  --suppress-absent-file-details. Without the (unrelated?) parameter the run would fail.
Now that I've just merged my working branch in to 'production/master' branch  the issue seems to have disappeared. So it may have been some missing config in the ' master / production' branch that I recently added to my 'current' branch to get this tool to work. I've added a hiera.yaml, bootstrap script and .octocatalog-diff.cfg.rb to the git repo.

You could use --no-compare-file-text as well, to stop the comparison of the text of files.
Could you let me know what the directory structure of your repository looks like -- do you have all of your modules under site or do you have them split between site and modules, etc.? We could probably get this working without the symlink by allowing you to specify your own module directory for octocatalog-diff, because right now this is hard-coded to "modules".

Our puppet uses the environment.conf file to set the modulepath for the puppet server. I guess it would make sense to let octocatalog-diff read the file too.
$ more environment.conf
modulepath = site:modules:$basemodulepath

We use a 'site/' or 'site_modules/'  modules directory for site specific modules that are all contained in the puppet control repository together with hieradata. r10k managed modules end up in the 'modules/' dir.

I guess it would make sense to let octocatalog-diff read the file too.

Seems like a reasonable approach. I'll see what I can do... 😸


Added restart to certain tasks

Please review.

LGTM.  I assume those handlers already exist?

LGTM

@jordmoz Yes they do.