Revisiting old issues and PRs and suggestion adding probot/stale

Thanks to Hacktoberfest, there are a lot of new issues and PRs coming about. But there are also old ones that doesn't have any new updates. I have several suggestion regarding this:

Encourage contributors (especially newcomers) to revisit old issues and PRs. Either merge approved ones or close conflicting/stale ones. I'd love to do some cleanup while I have the time (read: procrastinate).
If approved, I also suggest adding probot/stale to this repository for closing abandoned issues and PRs after a period of inactivity.

cc: @mcornella

Probably going to close this issue in a week or so if there's no activity 😔

The downside to closing old issues is that some of them are still relevant, and closing them doesn't just get rid of the underlying problem.
There are though some categories of pull requests that could be closed, such as new plugins that haven't received attention and PRs introducing aliases that aren't useful to most users.
This wasn't easily discoverable before, but I made the effort to categorize them so now it's easier to point volunteers towards them.
Regarding the setup of a stale issues probot I can't yet endorse that since there are many issues that haven't received attention, and I would at least like to get to do a follow up before a bot closes them. But in the near future I do agree that having that automated is a good thing.
Thanks also for volunteering! Send me an email and I can direct you to where your efforts will be most useful.


Fix return type in DataFrame.dtypes/1 typespec (#1002)

This change uses the same type for the dtypes struct field and the dtypes function.
Resolves https://github.com/elixir-explorer/explorer/issues/1002.

:green_heart: :blue_heart: :purple_heart: :yellow_heart: :heart:


Pixel editor scrolls

At HD resolution, 1980x1080, opening the sprite editor shows scroll bars on the editor. it would be great to scale it down.

Fixed


xHyper-V does not set Fixed Memory in client Hyper-V

It's not possible to create a VM with xHyper-V in a client Hyper-V environment like Win10. Reason: In client Hyper-V 'dynamic memory' is set by default whereas in server environments this defaults to 'fixed memory'. So you cannot create a VM with fixed memory in client Hyper-V with the xHyperV resource even when minimum and maximum memory is not specified. How to solve this?
Maybe in the Set-TargetDevice function when creating the VM you should set the 'fixed memory' parameter  to true by default (currently nothing is done with this); clearing this and setting 'dynamic memory' only when minimum or maximum memory is specified.
But in addition how can I switch between these settings with a DSC configuration for an already created VM?

Any news on this topic?

I haven't come around to look at all the issues yet. Since I became maintainer for this module my top priority was / is to handle the outstanding PRs first. (just a little excuse from my side :wink:
I understand the issue, this would require some additional logic and the use of Set-VMMemory -DynamicMemoryEnabled $false in case of client SKU and only StartupMemory is defined. I think the check for client SKU can even be omitted as it won't impact the VM created on the server SKU. Am I missing / overlooking something? @iainbrighton @PlagueHO
Right now I don't have time to contribute this myself so assigning labels in the hope somebody can beat me to it (will do this eventually if nobody else picks it up)

Whilst apparently not quite the same, I always just set the startup, minimum and maximum memory to the same values, e.g. all 4GB etc to "fix" it.

@bgelens I think you're right to omit the client SKU check. But as far as I understand the code in the .psm1 file it's not enough to use Set-VMMemory. Especially in the Set-TargetResource function where you are gathering the memory properties for a call to Set-VM we should set both properties -StaticMemory  and -DynamicMemory accordingly.
If you do not have time for these changes at the moment, I offer to do this. However this would be my first try to contribute something to a public repository. What have I to do?

Fork current xHyper-V dev branch
Modify and test the code
Send a pull request back to you

Is this the right way?
@iainbrighton Your tip with setting the startup, minimum and maximum memory to the same values seems to work (I tried it with a nested Hyper-V VM and Hyper-V can be started). However the VM property DynamicMemoryEnabled of course remains $true. So this might be a workaround but not really fix the issue.

That would be awesome @GeriOnline! Go for it 👍 Please see the Contribution Guideline, Style Guideline and Best Practices to get started.

Meanwhile I signed the CLA. I plan to change the code in the following manner:

If neither MinimumMemory nor MaximumMemory is specified dynamic memory will be disabled.
If MinimumMemory and MaximumMemory are both specified and have the same value as StartupMemory then dynamic memory will also be disabled. This would be the suggestion from @iainbrighton .

Would this approach be okay?
An additional way would be to introduce a new optional property DynamicMemoryEnabled with which you can explicitly set the corresponding VM property to $true or $false. If not specified, the above method would be applied. However I would prefer solely the first way because the interface of the DSC resource remains unchanged.
I would appreciate a quick feedback. Thank you.


[SDMMC Mount] fix infinite loop when SD card is not responsive (IDFGH-9132)

Related Issue: https://github.com/espressif/esp-idf/issues/10531
When the sd card is not responsive, we need to have reasonable timeouts to prevent infinite loops.

@igrr , updated the PR with the given feedback.

@igrr , I audited all SDMMC code for potential infinite loops & added reasonable timeouts.
Please re-review.

Thanks for the review, Ivan!

sha=d7324be0348dd9f4990f4762b193427b4f8e05f2

@igrr any updates? this seemed like a good simple change

bump. Any blockers?

Hi @chipweinberger. The MR is currently in review stage needing just a few last accepts. Sorry for the wait. Hopefully it will be merged soon.

sha=d7324be0348dd9f4990f4762b193427b4f8e05f2

Just curious what does this comment mean?
People usually think this means the PR is merged internally and will be available publicly soon.
But the fact is it may take yet another months to get the fix in github. (And such long time is not a single case).
Several PRs are in "Sync-merge" state for months.

This type of a comment is a trigger for creating an internal merge request. This change is in review now, it was left unattended for a while but was recently picked up again.

The pull request was merged to master branch. Thank you for your contribution :) I will close this on GH as canceled but your commits are merged and will be shown in commit history after the GH master branch syncs with our internal master.


Cannot invoke "karate.io.netty.handler.codec.http.cookie.Cookie.name()" because "cookie" is null

Set-Cookie: detectedTimeZoneId=FLE Standard Time; Domain=stagevdr.com; Secure
v1.2.0.RC1 - failed with Cannot invoke "karate.io.netty.handler.codec.http.cookie.Cookie.name()" because "cookie" is null
1.1.0 version failed with NullPointerException
I have found the Root cause while debugging - value with WhiteSpace
It works in version 0.9.5
Repository to reproduce test - https://github.com/anplay/karate-demo
Test - https://github.com/anplay/karate-demo/blob/main/src/test/java/mock/CookieTest.java

@anplay perhaps you will be interested to contribute a PR and a couple of tests ?

It happened in netty-version=4.1.63.Final
com/intuit/karate/karate-core/1.2.0.RC1/karate-core-1.2.0.RC1.jar!/karate/io/netty
I am not sure that Karate contributors have access to Netty

@ptrthomas - Hi Peter, I can take a quick stab at it, if its still up for grab. Thank you.

@chaudharydeepak yes please go ahead

@ptrthomas Can i pick this up if it is not yet done ?

@Nishant-sehgal yes 👍

https://github.com/karatelabs/karate/pull/1782

thank you @Nishant-sehgal ! can @anplay test once if possible: https://github.com/karatelabs/karate/wiki/Developer-Guide

Hi @ptrthomas, I have tested my scenario.
It works! Thank you @Nishant-sehgal

@anplay thanks for confirming, we'll keep this open until 1.2.0 final is released 👍

@anplay thanks for confirming, we'll keep this open until 1.2.0 final is released 👍

sure, excuse me

@ptrthomas @Nishant-sehgal
Looks like LAX decoder mode also fixes this issue. Also is it good idea to skip cookie entirely if there is illegal character? Any options to add LAX/STRICT as configuration parameter?

@borzykin feel free to contribute a PR. without knowing more about your scenario, it may be possible for you to set cookie manually as a workaround etc.

Hi! I'm trying to execute my tests with v1.2.0.RC1 but the error continue.. Can I do anything else to ignore cookies or something like that?

@anplay try 1.2.0.RC3 and if that does not work we need to submit a new issue + way to replicate: https://github.com/karatelabs/karate/wiki/How-to-Submit-an-Issue

@ptrthomas it works with this version. Thanks

1.2.0 released


[Improvement] CatalogConnectorManager.java has no unit test / coverage

What would you like to be improved?
CatalogConnectorManager.java has no unit test / coverage
How should we improve?
Write unit tests to provide coverage of code.

Hello, I'm a fresh hand to this project and I'm very interested in it. I would like to try out this issue. Please assign it to me. Thank you!

@silenceland you can go ahead with a comment like "I'm working on this". Later when the PR be raised and merged, we will update the assignee. Thank you!

Hello, I noticed that this issue has been pending for some time, and the previous contributor hasn't provided updates. I would like to take over this issue and start working on it. Please let me know if I can proceed. Thank you!

@orenccl, thanks for your offer to help. I've assigned the issue to you.

Hi @justinmclean,
I've checked the project and found that tests are already implemented for this component. Would it be possible to close this issue?
Although the test coverage could potentially be optimized, this part is a bit challenging for me since unit testing in this area is complex, and I'm not fully familiar with the entire project yet. I'd like to focus on other beginner-friendly issues first.

Thanks for looking into this, as we do now have good coverage I
m closing this issue.


Need add LIBSPDM_ or libspdm_ for any external symbol or MACRO

For example, https://github.com/DMTF/libspdm/issues/222

In addition, symbols and MACROS that are currently publicly viewable but don't need to be should be moved to an internal header so that the integrator doesn't have to see them and we don't have to document them.

I will check this

Please also resolve missing camel case issue. such as:
SpdmGetEncapResponseFuncViaRequestCode
SpdmProcessEncapsulatedRequest
mSpdmGetResponseStruct
SpdmRequesterSendMessage
SpdmRequesterReceiveMessage
SpdmResponderSendMessage
SpdmResponderReceiveMessage
mSpdmRequesterGetVersionTestContext

Also remove unused SPDM_TEST_CONTEXT_FROM_SPDM_PROTOCOL and SpdmGetResponseFinish.


Milestone 0

Milestone 0 is a presentation of our team and the project that we want to develop for this subject.

Presentation prepared for Milestone 0, with the goal of giving a global vision of our project, and our team.
Milestone 0 3M1D Presentation.pdf


Unable to open pdf link using url_launcher on Android emulator (api = 23, os = 6.0)

I am using url_launcher plugin to open pdf link in Android emulator's web browser, which crashes.

The same pdf link opens properly on iOS simulator.

Android emulator is on Marshmallow and api = 23.
Logcat:
java.lang.SecurityException: No permission to write to /storage/emulated/0/Download/QuickCarl_Terms_of_Service.pdf: Neither user 10020 nor current process has android.permission.WRITE_EXTERNAL_STORAGE.
        at android.app.ContextImpl.enforce(ContextImpl.java:1438)
        at android.app.ContextImpl.enforceCallingOrSelfPermission(ContextImpl.java:1470)
        at android.content.ContextWrapper.enforceCallingOrSelfPermission(ContextWrapper.java:675)
        at com.android.providers.downloads.DownloadProvider.checkFileUriDestination(DownloadProvider.java:724)
        at com.android.providers.downloads.DownloadProvider.insert(DownloadProvider.java:558)
        at android.content.ContentProvider$Transport.insert(ContentProvider.java:263)
        at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:163)
        at android.os.Binder.execTransact(Binder.java:453)

After googling around the issue, I came to know that for api level >= 23, we need to set WRITE_EXTERNAL_STORAGE in androidManifest which I did. But I would like to know what else need to be specified (ex : runtime permissions) in dart / flutter, in order to properly open the pdf link in the device's web browser.
Flutter Doctor:

 [✓] Flutter (Channel beta, v0.11.10, on Mac OS X 10.13.6 17G65, locale en-US)
    • Flutter version 0.11.10 at
      /Users/deeptibelsare/Documents/DarshanUdacity/Flutter/flutter
    • Framework revision c27c4a265e (9 weeks ago), 2018-11-26 17:07:24 -0500
    • Engine revision eebc6a5895
    • Dart version 2.1.0 (build 2.1.0-dev.9.4 f9ebf21297)

[!] Android toolchain - develop for Android devices (Android SDK 28.0.3)
    • Android SDK at /Users/deeptibelsare/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling
      support)
    • Platform android-28, build-tools 28.0.3
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_152-release-1024-b01)
    ✗ Android license status unknown.

[!] iOS toolchain - develop for iOS devices (Xcode 9.4.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 9.4.1, Build version 9F2000
    ✗ Verify that all connected devices have been paired with this computer in
      Xcode.
      If all devices have been paired, libimobiledevice and ideviceinstaller may
      require updating.
      To update with Brew, run:
        brew update
        brew uninstall --ignore-dependencies libimobiledevice
        brew uninstall --ignore-dependencies usbmuxd
        brew install --HEAD usbmuxd
        brew unlink usbmuxd
        brew link usbmuxd
        brew install --HEAD libimobiledevice
        brew install ideviceinstaller
    • ios-deploy 2.0.0
    • CocoaPods version 1.5.3

[✓] Android Studio (version 3.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 26.0.1
    • Dart plugin version 173.4700
    • Java version OpenJDK Runtime Environment (build
      1.8.0_152-release-1024-b01)

[✓] Connected device (2 available)
    • Android SDK built for x86 • emulator-5554                        •
      android-x86 • Android 6.0 (API 23) (emulator)
    • iPhone 8                  • FB2DF839-2E8D-44E0-90B8-CCA0F138C932 • ios
      • iOS 11.4 (simulator)

@DK15 did you solve the issue?

Issue is reproduced on

flutter doctor -v
[√] Flutter (Channel stable, v1.12.13+hotfix.8, on Microsoft Windows [Version 10.0.19041.84], locale en-US)
    • Flutter version 1.12.13+hotfix.8 at C:\Code\flutter_stable
    • Framework revision 0b8abb4724 (4 weeks ago), 2020-02-11 11:44:36 -0800
    • Engine revision e1e6ced81d
    • Dart version 2.7.0

[√] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at C:\Code\SDK
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-29, build-tools 29.0.3
    • ANDROID_HOME = C:\Code\SDK
    • Java binary at: C:\Code\android-studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
    • All Android licenses accepted.

[√] Android Studio (version 3.6)
    • Android Studio at C:\Code\android-studio
    • Flutter plugin version 44.0.2
    • Dart plugin version 192.7761
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)

[√] VS Code (version 1.43.0)
    • VS Code at C:\Users\Taha\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.8.1

[√] Connected device (1 available)
    • SM M305F • 32003c30dc19668f • android-arm64 • Android 10 (API 29)

• No issues found!

Code Sample
import 'package:flutter/material.dart';
import 'package:url_launcher/url_launcher.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Material App',
      home: Home(),
    );
  }
}

class Home extends StatefulWidget {
  @override
  _HomeState createState() => _HomeState();
}

class _HomeState extends State<Home> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: RaisedButton(
          onPressed: _launchURL,
          child: Text('Show Flutter homepage'),
        ),
      ),
    );
  }

  _launchURL() async {
    const url =
        'http://<IP_ADDRESS>/main/29000/f93497c097df03bce57ac52bdc191146/Arthur%20Israel%20Vogel%20-%20Vogel%27s%20Textbook%20Of%20Macro%20And%20SemiMicro%20Qualitative%20Inorganic%20Analysis-Longman%20%281979%29.pdf';
    if (await canLaunch(url)) {
      await launch(url);
    } else {
      throw 'Could not launch $url';
    }
  }
}

Any updates on this?

Hi @DK15,
It seems that in API 23 the browser does not automatically get access to the device's storage. I was able to fix your issue by giving the browser access to the phone's storage. To do this go to Settings -> Apps -> Browser -> Permissions and add the storage to the permissions.

Closing per @Sempakonka's comment.

Cross-linking to a later issue with related symptoms:

#105205

(The symptoms are different and these are likely separate issues, but it looks like people are sometimes finding this one when looking for that other one.)


Add replyto message option

Thanks for you contribution.
Could you add tests covering this case?
Also, add it to the dist config file.

@acelaya tests added and dist config file also. But I don't know why Scrutinizer has failed

Scrutinizer sometimes fails when travis takes too long. Don't worry, I'll rerun the build and it should work.


Add summary utility functions

Codecov Report
Attention: Patch coverage is 94.44444% with 1 lines in your changes are missing coverage. Please review.

Project coverage is 99.91%. Comparing base (dbc967c) to head (4b65e80).

Files
Patch %
Lines

src/karbonn/utils/summary/module.py
94.44%
0 Missing and 1 partial :warning:

Additional details and impacted files
@@             Coverage Diff             @@
##              main     #106      +/-   ##
===========================================
- Coverage   100.00%   99.91%   -0.09%
===========================================
  Files           60       60
  Lines         1169     1187      +18
  Branches        98      102       +4
===========================================
+ Hits          1169     1186      +17
- Partials         0        1       +1

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


Problems using the 'headers' property

Moya version: 11.0.0
First of all I would like to thank you for your amazing work! Using Moya is a pleasure 😊
I have noticed a strange behavior when adding custom header fields using the var headers: [String: String]? property.
More precisely, the following code produces a Moya.Error error 6 i.e. a NSURLErrorDomain Code=-1005 error when trying to make a request, i.e. when trying to modify the http headers:
var headers: [String: String]? {
  var httpHeaders = [
    "deviceid": SecureStorage.shared.uniqueDeviceId,
    "useragent": "iPhone"
  ]
  if let token = SecureStorage.shared.tokenWithBearer {
    httpHeaders["аuthorization"] = token
  }
  return httpHeaders
}

whilst the following code does not produce any error:
var headers: [String: String]? {
  return [
    "deviceid": SecureStorage.shared.uniqueDeviceId,
    "useragent": "iPhone",
    "authorization": SecureStorage.shared.tokenWithBearer ?? ""
  ]
}

Previously there were no issues with the first approach and appending an additional header field (like httpHeaders["аuthorization"] = token) did not cause any problems.
I would like to hear your thoughts about this strange issue. Could this be related to #1549?
Cheers,
Sasho

Hey @sasojadrovski, I don't believe this is related to #1549. That issue is only regarding using both a custom endpointClosure and PluginTypes with a MoyaProvider.
Do you have a custom endpointClosure or are you using any plugins with this provider? That modify the headers of course.
It looks like NSURLErrorDomain Code=-1005 is regarding a lost network connection. A lot of StackOverflow posts recommend restarting the simulator (if you are using one).

Hey @SD10,
Thank you very much for the prompt reply!
No, I do not have a custom endpointClosure nor any plugins. I am intentionally using the default MoyaProvider (wanted to eliminate anything that might modify the headers).
I have also tried restarting and reseting the simulator and I have also built and run the application on a device. Unfortunately that did not resolve the issue.

Hey @sasojadrovski. The only difference I see in these two snippets of code is that in the working code you always send Authorization header even if it's not there. If it's not it, then there must be something in Swift itself, because Moya just gets the dictionary of headers that is passed to Alamofire. Not sure what though, as creating dictionary by appending/initialization shouldn't have any difference. You could also check this thread on SO.

Hey @sunshinejr,
Thanks for getting back to me regarding this issue/question.
Yes, I also thought that this must be somehow related to Swift, but what was bothering me was that the code from the first example worked fine for Moya 10.
Maybe changing the snippet to something like:
var headers: [String: String]? {
  var httpHeaders: [String: String] = [:]
  httpHeaders["deviceid"] = SecureStorage.shared.uniqueDeviceId
  httpHeaders["useragent"] = "iPhone"
  httpHeaders["authorization"] = SecureStorage.shared.tokenWithBearer
  return httpHeaders
}

would overcome this issue. However, utilizing Moya's AccessTokenAuthorizable protocol for handling authorization is a much better approach than the one mentioned above, so this issue can be closed for now :)
Thank you very much for discussing this and trying to figure out an answer. I really appreciate it. Keep up the great work! 👍
Best Regards,
Sasho


Fix compilation on unix environments

A filename case mismatch caused compile errors on linux. This is fixed here (at least for menu output on TV).

Thanks @duststorm, approved!


ERROR: 403: Domain cannot use apis. - domainCannotUseApis

The issue tracker is for reporting product deficiencies. "How do I?" questions should be posted to the discussion forum at https://groups.google.com/group/google-apps-manager. When in doubt, start at the discussion forum and return here only when instructed to do so.
Please confirm the following:

I have upgraded to the latest GAM release from https://git.io/gamreleases and I still have this issue.
I am typing the command as described in the GAM Wiki at https://github.com/jay0lee/gam/wiki

both yes... Actually I am using GAM-B version 4.12.06 as official release did not work

Full steps to reproduce the issue:

pick group with lots of users and try to print the list of members(in my case 1800 users)...

command:

gam print group-members group<EMAIL_ADDRESS>membernames > user.csv

Same command works fine with just a few users in the group

Expected outcome (what are you trying to do?):
get a list of users from group
Actual outcome (what errors or bad behavior do you see instead?):
ERROR: 403: Domain cannot use apis. - domainCannotUseApis

Jan,
GAM-B is my version, not Jay's, please close this issue and post here: https://github.com/taers232c/GAM-B
Ross


feat #1333:  Enable downloading support archives from the configurati…

Closes #1333
Added new endpoint that internally combines results of multiple commands and returns them in a single object.
That object gets parsed in the frontend and is automatically downloaded as a zip-archive containing 3 separate files (config, logs, environment details).

This change is

components/inspectit-ocelot-configurationserver-ui/src/components/views/status/StatusTable.js line 272 at r2 (raw file):
Previously, heiko-holz (Heiko Holz) wrote…
It would be great if the button is only enabled when the agent commands are enabled. Otherwise it should show on hover that the agent commands need to be enabled in order to download the support archive.
Alternately, a short popup telling the user that the agent commands need to be enabled would also work.
This can be turned into a new ticket in order to close this PR

I created an issue for this: https://github.com/inspectIT/inspectit-ocelot/issues/1495

components/inspectit-ocelot-configurationserver/src/main/java/rocks/inspectit/ocelot/agentcommunication/AgentCommandManager.java line 90 at r1 (raw file):
Previously, Napfschnecke (sbr) wrote…
Previously we checked if the Queue was empty and invalidated then.
This caused a race condition, where the check for the empty queue passed, but the queue got populated with the following command before the invalidation ran.
So it dropped the second command.
Checking for null should (and has consistently during testing) assert, that we only invalidate the command cache after all commands have been processed. Side effect is that the invalidation only occurs on the scheduled command fetch every 15sec and not immediately after processing the second command.
I am very open to any suggestion that makes this safer and more understandable :)

Sounds reasonable :)
I was just missing this context!


Plugins can be hidden when changing Page Template

django-cms 3.4.4
Plugins will often be lost or left behind when a page's template is changed, where the placeholder names are different or there are different placeholders. There's no way to see plugins that are 'in the trash can' as it where.
The work around currently is to change a page back to it's original template, cut the plugin, change the page to the new template and paste it in. Of course this isn't create user interface design.
A way to solve this (and maybe even #4512) is to have a Trash can placeholder, a bit like the clipboard placeholder, but it holds ANY plugin which doesn't have a valid placeholder for the currently page template. This means migrating sites to new templates would be possible and hiding plugins would be simply a matter of parking them in the trash can.
If the divio devs like the idea, but don't have time, I can code a patch. But a positive opinion would be useful before I do any work.

Hello @doctormo,
I've opened a topic in our developers mailing list to discuss this.


soroban-env-host: expose Token contract spec to CLI

What problem does your feature solve?
When invoking a contract, soroban-cli needs the contract's spec in order to parse the contract arguments.
With normal contracts, we just obtain the contract's wasm from the network and extract the spec prior to parsing.
However, that's not possible for the token contract, which is implicit (the token contract's ContractCode ledger entry contains a ScContractCode::Token and not a ScContractCode::Wasm(bytes) ).
For now we have pushed the responsibility of passing the token contract's wasm to the end user, which is a hack.  See https://github.com/stellar/soroban-cli/pull/212
What would you like to see?
I would like soroban-env-host (or any other library if more appropriate) to expose the Token contract spec for soroban-cli to use.
What alternatives are there?
The token contract's code could be treated normally, so that its  ContractCode ledger entry contains wasm code, just like any other contract.

This is a duplicate of https://github.com/stellar/soroban-cli/issues/172.
I also don't think we should do this in the soroban-env-host, because the host has no knowledge of contract specs.
The soroban-token-spec in the rs-sorobans-sdk repo already exports the token spec.
The naive approach would be to take the .wasm file from that repo and embed it into the CLI, however doing so would be error prone, as we have already seen when we've used the same approach elsewhere. So I'd like to not make that same mistake we've made the previous times we've tried to solve this type of problem.
The approach I'd like to use is described briefly https://github.com/stellar/soroban-cli/issues/172, however it may not be safe to import the soroban-token-spec directly into the CLI due to how Rust merges static libs.

I created the issue here because the contract seems to be defined here.


Add MesosDnsId field to Marathon App struct

Hello,
I added an additional string field MesosDnsId to marathon App struct. Marathon AppId Groups are reversed and appended with hyphens to create a DNS friendly name, similar to how Mesos DNS, Consul and some other tools operate.
Not sure if this is useful or the most efficient go, but I could not figure out how to do this simple string munging within the haproxy template file itself, so I resorted to adding a field to the Marathon App struct.  Perhaps there is a better way but I wanted to draft this Pull Request in case others had a similar need.
Example:  Marathon App ID: "/sample/group/appname" becomes "appname-group-sample" in mesos dns so I can refer to this field as $app.MesosDnsId inside the haproxy template to write ACL rules like hdr_dom(host) -i {{ $app.MesosDnsId }}.
I will make any other changes needed.
Idea came from a coworker Michael Kuriger.

By analyzing the blame information on this pull request, we identified @bluepeppers, @activars and @rasputnik to be potential reviewers

Coverage increased (+2.6%) to 38.448% when pulling cef6f49bf41991d95818acc0dd9aaf0422d5d797 on porcupie:master into 01da91b0530ac0a7d2ca4fb4af79e161c25753ea on QubitProducts:master.

Coverage increased (+4.3%) to 40.18% when pulling d825591625d6e31ab4f440cc52a0c834c7dc81ab on porcupie:master into 01da91b0530ac0a7d2ca4fb4af79e161c25753ea on QubitProducts:master.

Looks good - thanks for adding tests. I'm thinking it might be worth documenting this somewhere? Maybe in the readme?

👍

Thanks for taking a look @activars, @bluepeppers . Added some notes to README but was not sure exactly where to put it. Let me know if you'd like more/less information or edits.

Coverage increased (+4.3%) to 40.18% when pulling 8b0f970575340f2418b39563f570187b162888a3 on porcupie:master into 01da91b0530ac0a7d2ca4fb4af79e161c25753ea on QubitProducts:master.

@porcupie  thank you.


Initial add of rust files

Current dependencies on/for this PR:

main

PR #1   👈

This comment was auto-generated by Graphite.


remerge

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

12 of 14 (85.71%)  changed or added relevant lines in 8 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.02%) to 65.726%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

internal/api/resend.go
0
2
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.02%

Covered Lines:
8407

Relevant Lines:
12791

💛  - Coveralls


Use terse output setting to make Travis logs manageable

Extracting the SDK in builds such as https://travis-ci.org/servo/saltfs/jobs/118038169 was creating 2755 spurious lines of log output. This setting allows the entire build to complete in around 2.5k lines rather than overflowing Travis's 10k line limit.
r? @larsbergstrom

This change is

@bors-servo r+
This looks great, thanks! I was just waiting for some of the initial builds to finish.
Also, I wonder why we're getting intermittents on our PRs around:
[ERROR   ] Command ['apt-get', '-q', '-y', '-o', 'DPkg::Options::=--force-confold', '-o', 'DPkg::Options::=--force-confdef', 'install', 'g++-arm-linux-gnueabihf', 'g++-aarch64-linux-gnu'] failed with return code: 100

:pushpin: Commit 92173d1 has been approved by larsbergstrom

:hourglass: Testing commit 92173d1 with merge 28eef71...

:broken_heart: Test failed - travis

@bors-servo retry

@bors-servo retry

I recommend also adding state_tabular: True, which aligns the output into columns making it much easier to scan.

@bors-servo retry

@bors-servo: r=larsbergstrom
Can't retry if new commits have been pushed

:pushpin: Commit 402124d has been approved by larsbergstrom

:hourglass: Testing commit 402124d with merge 0fa680d...

:sunny: Test successful - travis


Add new $cleanmulti() function documentation

Summary
This is a…

[ ] Correction
[x] Addition
[ ] Restructuring
[ ] Minor / simple change (like a typo)
[ ] Other

Reason for the Change
New scripting function $cleanmulti() added.
Description of the Change
Add documentation for new function.
Additional Action Required
Do not merge this until https://github.com/metabrainz/picard/pull/1786 has been merged.

New function not being implemented.


CompanyBasicFinancials throws an error of undefined response type

Hey,
the client library (v1.1.2) fails when retrieving basic financial information:
	metrics, _, err := client.CompanyBasicFinancials(ctx, "AAPL", "all")
	if err != nil {
		fmt.Printf("error: %v",err)
	}

	fmt.Println(metrics)

Will print:
error: undefined response type

thank you for reporting we are on it 👍

The issue should be fixed now.

I am closing this, feel free to reopen if you still encounter the issue

I've tested it and it works now, thanks a lot guys! :tada:


MoveXY and Move: A Plea for a Consistant API

I was recently delighted to learn about the move method for incremental motion towards a target provided by various high-level footwear, which prevented me from needed to implement it myself on every level that it was useful (most of them). However, there are issues that I have with the naming conventions and parameters for move and moveXY that I think serve as an unnecessary barrier for people learning to code with this excellent game.

The fact that move refers to moving incrementally and moveXY refers to moving until a point is reached is deeply unintuitive. There's nothing about the naming of these methods that would lead one to associate one behavior with one and the other behavior with the other. What about moveTowardXY and moveToXY? It's more to type, but with the code completion facilities that the editor provides, that's not really a bit deal.

I see no good reason for these two methods to use different calling conventions. Why should move take a dict/object with x and y fields, but moveXY take two parameters? I can sort of see the logic - the fact that the name includes XY suggests an X parameter and a Y parameter - but that's completely ancillary to the actual difference in behavior of the two methods. It seems very arbitrary, and we should be showing new programmers that programming is about making abstractions clean and intuitive, not about memorizing arbitrary rules. Let them deal with messy API's when and if they have to learn OpenGL. :smile:

Even if there was a good reason for the two methods to use different calling conventions, differences between programming language idioms make the current use of a dict/object for move problematic. In Python, there are two idiomatic ways that one might represent the Javascript idiom of passing in an object literal with x and y properties:

Use named parameters, so the call would be like self.move(x = 50, y = 25)

Use an object/namedtuple, so the call would be like self.move(Pos(50, 25)). This is what we'd probably want to do here, since the reason for the use of a Javascript object literal is to stand in place of a pos object.

But passing in a dict with x and y fields in lieu of a pos object is not how things are normally done in Python, and for good reason - if the method expects an object, its fields would be accessed with dot syntax, which doesn't work with Python dicts! Sure, you could include a runtime check for whether the thing passed in is an instance of dict, and in that case use dict accessing syntax instead of object property accessing syntax… but that's pretty hacky.
In summary, my suggestions are:

Rename move to moveTowardXY and moveXY to moveToXY
Have both methods take two positional arguments, one for x and one for y.

I agree with your reasoning and vaguely remember intending to have something like moveToXY, moveToward, moveToXY, and moveToward, where the XY versions are used earlier in the game when explaining more complicated syntax would be a burden, transitioning cleanly to the one-argument versions when object literals are introduced. I either forgot to rename things like that or had some other reason I've now forgotten not to do it.
Then people persuaded me that the higher-level boots should have both move and moveXY on them instead of just move so that they don't error out when playing the earlier levels, mostly. So if we kept that idea and expanded and renamed now, we'd end up with all four versions. I guess we can get rid of moveTowardXY if we want to save one, since incremental moving is taught after object literals.
 And we do introduce the Vector class in the glacier, where the player is making her own Vectors and moving to them, so it's also less convenient to split a Vector into two arguments again just to move toward it there.
The Vector solution doesn't help too much with the non-Pythonicity of using a dict, though, because we don't have time to introduce Vectors until deep into the game.
All told, we were doing it again from scratch, I'd of course want to do it differently, but the workable improvement (making moveToward, moveToXY, and moveTo) seems messy enough that I don't think it's worth the trouble of migrating everything.


Dist files include links to non-existing sourceMaps

Expected behaviour
The non-minified files, should not point to a source map.
Actual behaviour
Currently, non-minified dist files point to a non-existing file.
Steps to reproduce
Just check the last line of dist/plyr.js.
//# sourceMappingURL=plyr.js.map

You can use the following command to verify the issue:
tail -n 1 dist/plyr.js && ls dist/plyr.js.map
>>> //# sourceMappingURL=plyr.js.map
>>> ls: dist/plyr.js.map: No such file or directory

@sampotts I'd be happy to provide a patch should you be interested.


Rename internal modules to namespaces

Can I take this on? Do we want to mention the "module" keyword apart from when declaring an external module?

For now I think we should keep the internal modules topic and just have one line explaining the rename and link to the new namespaces section. Likewise the namespace section should call out clearly (not some tucked away parenthetical) that namespaces were previously called internal modules. So many existing blog posts, StackOverflow answers, etc refer to internal modules we want to make sure it's easy/clear to someone coming to our docs afterwards what has happened.

Fixed by #51.


switch GCR -> Artifact-Registry

GCR has been deprecated [0] in favour of Artifact-Registry.
Thus, change push-targets for OCI-Images:

europe-docker.pkg.dev/gardener-project/snapshots for snapshots
europe-docker.pkg.dev/gardener-project/releases for releases
europe-docker.pkg.dev/gardener-project/public for combined view of snapshots + releases

[0]
https://cloud.google.com/artifact-registry/docs/transition/transition-from-gcr
Release note:
Change OCI Image Registry from GCR (`eu.gcr.io/gardener-project`) to Artifact-Registry (`europe-docker.pkg.dev/gardener-project/releases`). Users should update their references.

This PR proposes changes that would break the pipeline definition:
vpn2-gcr-to-ar: Traceback (most recent call last):
  File "/usr/lib/python3.11/site-packages/concourse/replicator.py", line 141, in render
    definition_descriptor = self._render(definition_descriptor)
                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/concourse/replicator.py", line 225, in _render
    raise RuntimeError(
RuntimeError: An exception occured when rendering pipeline 'vpn2-gcr-to-ar':

Traceback (most recent call last):
  File "/usr/lib/python3.11/site-packages/concourse/replicator.py", line 217, in _render
    definition_descriptor.pipeline = template.render(
  File "/usr/lib/python3.11/site-packages/mako/template.py", line 438, in render
    return runtime._render(self, self.callable_, args, data)
  File "/usr/lib/python3.11/site-packages/mako/runtime.py", line 874, in _render
    _render_context(
  File "/usr/lib/python3.11/site-packages/mako/runtime.py", line 916, in _render_context
    _exec_template(inherit, lclcontext, args=args, kwargs=kwargs)
  File "/usr/lib/python3.11/site-packages/mako/runtime.py", line 943, in _exec_template
    callable_(context, *args, **kwargs)
  File "memory:0x7f25f0cc0690", line 666, in render_body
    ${job(variant)}
  File "memory:0x7f25f0cc0690", line 0, in job

  File "memory:0x7f25f0cc0690", line 654, in render_job
    ${step(4, job_variant, job_variant.step(step_name))}
  File "memory:0x7f25f0cc0690", line 619, in step
    <%def name="job(job_variant)">
  File "memory:0x7f25f0cc0690", line 600, in render_step
    ${execute(2, job_step, job_variant, source_repo, source_repo_github_cfg_name)}
  File "memory:0x7f25f0cc0690", line 567, in execute
    <%def name="step(indent, job_variant, job_step)" filter="indent_func(indent),trim">
  File "memory:0x7f25f0cc0690", line 526, in render_execute
    ${component_descriptor_step(job_step=job_step, job_variant=job_variant, output_image_descriptors=image_descriptors_for_variant, indent=8)}
  File "/usr/lib/python3.11/site-packages/mako/template.py", line 438, in render
    return runtime._render(self, self.callable_, args, data)
  File "/usr/lib/python3.11/site-packages/mako/runtime.py", line 874, in _render
    _render_context(
  File "/usr/lib/python3.11/site-packages/mako/runtime.py", line 920, in _render_context
    _exec_template(callable_, context, args=args, kwargs=kwargs)
  File "/usr/lib/python3.11/site-packages/mako/runtime.py", line 943, in _exec_template
    callable_(context, *args, **kwargs)
  File "/usr/lib/python3.11/site-packages/concourse/steps/component_descriptor.mako", line 20, in render_component_descriptor_step
    ocm_repository_mappings = descriptor_trait.ocm_repository_mappings()
  File "/usr/lib/python3.11/site-packages/concourse/model/traits/component_descriptor.py", line 405, in ocm_repository_mappings
    repo_url = mapping['repository']
TypeError: string indices must be integers, not 'str'

This PR proposes changes that would break the pipeline definition:
<invalid YAML>: sequence entries are not allowed here
  in "<unicode string>", line 53, column 25:
                repository: - europe-docker.pkg.dev/gardener ...
                            ^

The pipeline-definition has been fixed.


Show a link to the commit in the result details

Checklist

[x] I tested all changes and all related features with different users (student, tutor, editor, instructor, admin) on the test server https://artemistest.ase.in.tum.de.
[x] Client: I followed the coding and design guidelines.
[x] Client: I added multiple integration tests (Jest) related to the features (with a high test coverage), while following the test guidelines.
[x] Client: I added authorities to all new routes and check the course groups for displaying navigation elements (links, buttons)
[x] Client: I documented the TypeScript code using JSDoc style.
[x] Client: I added multiple screenshots/screencasts of my UI changes
[x] Client: I translated all newly inserted strings into English and German.
[x] Language: I followed the guidelines for inclusive, diversity-sensitive, and appreciative language.

Motivation and Context
Currently, students cannot see what result belongs to which commit, especially in the code editor or exercise details. Usually, this is just the latest commit in the project, but it can be the case that either a corresponding result is not visible for them or has not been generated, see #3976.
Description
Add a link to the top of the result details modal in case of programming exercises. We reuse the logic from the participation submission component here, and moved the commit link creation logic into the programming exercise utilities to avoid duplication.
In case the exercise is not available, we just show the commit in plain text. If the submission is not available, we do not display the note about the linked commit at all, as it is not possible then.
Steps for Testing

Work with programming exercises: commit and wait for results. Some suggestions: try template, solution and test repository commits as well as regular student working in the code editor. It is also OK to use old results here.
Open the result details (click the result string)
You should see a message at the top of the feedback modal that links to a commit as shown in the screenshot.
Check that the link works.

It might also be useful to test different locations where results can appear. It does currently not work for the assessment code editor.
You can also do a quick check that it does not appear for other exercise results.
Review Progress

Code Review

[ ] Review 1
[ ] Review 2

Manual Tests

[ ] Test 1
[ ] Test 2

Test Coverage

result-detail.component.ts 95.36%

programming-exercise.utils.ts → full branch coverage of createCommitUrl

Screenshots

The commit hash should always be a clickable link, which is not the case when being opened from the problem statement and not the code editor.
<< IMAGE >>
This Screencast visualizes the description:
<< SCREEN RECORDING >>
(Tested it on ts1 with an existing exercise but new participation.)

Should be fixed with adc1605 now.

@julian-christl I now moved one test and added many more tests for that specific function. I left one in each component to have the function there covered as well and check that it works.

Should be ready to merge, both result PRs also work well in combination:


pip library not updated to latest

Platform/operating system (i.e. Raspberry Pi with Raspbian operating system,
Windows 32-bit, Windows 64-bit, Mac OSX 64-bit, etc.):
Raspbian: Linux ##### 4.9.61-v7+ #1049 SMP Fri Nov 10 15:32:51 GMT 2017 armv7l GNU/Linux
Distributor ID: Raspbian
Description:    Raspbian GNU/Linux 9.1 (stretch)
Release:        9.1
Codename:       stretch

Python version (run python -version or python3 -version):
pip: 9.0.1
python: 2.7.13

Error message you are receiving, including any Python exception traces:
Traceback (most recent call last):
File "stats.py", line 29, in
disp = Adafruit_SSD1306.SSD1306_128_32(rst=RST)
File "/usr/local/lib/python2.7/dist-packages/Adafruit_SSD1306/SSD1306.py", line 285, in init
gpio, spi, i2c_bus, i2c_address, i2c)
File "/usr/local/lib/python2.7/dist-packages/Adafruit_SSD1306/SSD1306.py", line 88, in init
self._gpio.setup(self._rst, GPIO.OUT)
File "/usr/local/lib/python2.7/dist-packages/Adafruit_GPIO/GPIO.py", line 188, in setup
pull_up_down=self._pud_mapping[pull_up_down])
ValueError: Channel must be an integer or list/tuple of integers

List the steps to reproduce the problem below (if possible attach code or commands
to run):

pip install Adafruit-GPIO Adafruit-SSD1306
apt-get install python-pilkit
apt-get install python-imaging
Run the script below and you will get the error message. I replaced the SSD1306.py script with the one from this repo and everything works. It appears the pip repo is out of date from this repo.
****************************************** CODE *****************************************
import time
import Adafruit_GPIO.SPI as SPI
import Adafruit_SSD1306
import subprocess
import signal
import sys
from PIL import Image
from PIL import ImageDraw
from PIL import ImageFont
def signal_term_handler(signal, frame):
disp.command(Adafruit_SSD1306.SSD1306_DISPLAYOFF)
sys.exit(0)
#Setup Signal Handler
signal.signal(signal.SIGTERM, signal_term_handler)
Raspberry Pi pin configuration:
RST = None     # on the PiOLED this pin isnt used
Note the following are only used with SPI:
DC = 23
SPI_PORT = 0
SPI_DEVICE = 0
128x32 display with hardware I2C:
disp = Adafruit_SSD1306.SSD1306_128_32(rst=RST)
Initialize library.
disp.begin()
Clear display.
disp.clear()
disp.display()
Create blank image for drawing.
width = disp.width
height = disp.height
image = Image.new('1', (width, height))
Get drawing object to draw on image.
draw = ImageDraw.Draw(image)
Draw a black filled box to clear the image.
draw.rectangle((0,0,width,height), outline=0, fill=0)
Draw some shapes.
padding = -2
top = padding
bottom = height-padding
x = 0
Load default font.
font = ImageFont.load_default()
try:
while True:
    # Draw a black filled box to clear the image.
    draw.rectangle((0,0,width,height), outline=0, fill=0)

    # Shell scripts for system monitoring from here : https://unix.stackexchange.com/questions/119126/command-to-display-memory-usage-disk-usage-and-cpu-load
    cmd = "hostname -I | cut -d\' \' -f1"
    IP = subprocess.check_output(cmd, shell = True )

    cmd = "top -bn1 | grep load | awk '{printf \"Load:%.2f\", $(NF-2)}'"
    CPU = subprocess.check_output(cmd, shell = True )

    cmd = " echo $(($(cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq)/1000))"
    Freq = subprocess.check_output(cmd, shell = True )

    cmd = "free -m | awk 'NR==2{printf \"Mem: %s/%sMB %.2f%%\", $3,$2,$3*100/$2 }'"
    MemUsage = subprocess.check_output(cmd, shell = True )

    cmd = "cat /sys/class/thermal/thermal_zone0/temp"
    CPUTemp = subprocess.check_output(cmd, shell = True )
    CPUTemp = int(CPUTemp)/1000
    CPUTemp = str(9.0/5.0 * CPUTemp + 32) + "F"

    cmd = "vcgencmd measure_temp | sed 's/temp=//g'"
    GPUTemp = subprocess.check_output(cmd, shell = True )
    GPUTemp = str(GPUTemp).replace("temp=","").replace("'C","")
    GPUTemp = str(9.0/5.0 * float(GPUTemp) + 32) + "F"

    draw.text((x, top),       "IP: " + str(IP),  font=font, fill=255)
    draw.text((x, top+8),     str(CPU) + "  Freq:" + str(Freq), font=font, fill=255)
    draw.text((x, top+16),    str(MemUsage),  font=font, fill=255)
    draw.text((x, top+25),    "CPU:" + str(CPUTemp) + " GPU:" + str(GPUTemp),  font=font, fill=255)

    # Display image
    disp.image(image)
    disp.display()
    time.sleep(.5)

except KeyboardInterrupt:
disp.command(Adafruit_SSD1306.SSD1306_DISPLAYOFF)

also hit this issue...
thanks for reporting it ow i would still be stuck.
after replacing /usr/local/lib/python3.5/dist-packages/Adafruit_SSD1306/SSD1306.py with the git version i was up and running.
Please update your pip package so your users have a clean experience.

hiya, this library is being deprecated - we have a similar library that works with Python3 and modern linux computers. please check out this guide for more info
https://learn.adafruit.com/monochrome-oled-breakouts/python-wiring


Is there a similar example in python for "Using the Microsoft.Azure.Services.AppAuthentication library for .NET"

Is there similar example for python as in .net

"Using the Microsoft.Azure.Services.AppAuthentication library for .NET"

without any secrets?

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

ID: f57d3177-ce9e-ebfa-03a7-45beb8ca3212
Version Independent ID: a59df23d-f3ac-9809-61d3-5741e31f020a
Content: Managed identities overview - Azure App Service
Content Source: articles/app-service/overview-managed-identity.md
Service: app-service
GitHub Login: @mattchenderson
Microsoft Alias: mahender

@svangeti , Thanks for reaching out to us. We will investigate it further and update you shortly.

I am not aware of any such library for Python. If that existed, I'd expect it to be a part of the Azure SDK for Python. Scanning their docs, I don't see anything now. It may be worth opening an issue against them.
For now, I'd rely on the REST protocol for the token service. There is a Python example there.

@svangeti , I hope that @mattchenderson has answered your question and I hope that resolves your issue.
We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


Invalid code generated from typedef function pointers

Brief Description
Hello,
I am trying to wrap an API written in C. In the API there are functions that take a typedef function pointer as an argument, like so:
PJ_DEF(pj_status_t) pjsip_register_uri_parser( char *scheme, 					       pjsip_parse_uri_func *func)
with the following typedef:
typedef void* (pjsip_parse_uri_func)(pj_scanner *scanner, pj_pool_t *pool, 				     pj_bool_t parse_params);
From this CppSharp generates the following incompilable C#-Code:
public static int PjsipRegisterUriParser(sbyte* scheme, Func<global::System.IntPtr, global::pjsua.PjScanner scanner, global::pjsua.PjPoolT pool, int parse_params> func) {...}
The way I see it the typeparameters in the C#-Delegate should not have the identifiers left over. Is this a bug or am I simply using CppSharp wrongly?
OS: Windows, using the CppSharp NuGet package version 0.8.13 with Visual Studio 2017
Target: MSVC

Looks like a bug, should be easy to get fixed.

If possible I would like to take a crack at fixing this.
I have a question though: Do you think the problem lies with the parser or the generator component? After debugging the issue and looking through the codebase I noticed that the superfluous identifiers for the type parameters are already present in the parsed abstract syntax tree. Is it necessary to prevent this from happening or should the code generator just ignore the identifiers when generating the output?
Any tips would be much appreciated, thanks in advance.

@Hirnschwamm thank you for your offer. I have to leave now but I can help you get started. You need to debug CSharpSources.GenerateFunction, FormatMethodParameters in particular. You could paste your function in one of our tests and debug from there - after you've followed our build instructions and generated your solution, paste the function in Common.h along with any dependencies to ensure it compiles, then set Common.Gen as your start-up project, run and debug.

Hey @Hirnschwamm, any progress on fixing the bug?

Hi, sorry I haven't been following up on the issue. I haven't had the time recently. If this is a pressing matter I would propose a more experienced developer fixes this since I can not promise to deliver a fix immediately.


Improve Immediate mode Fallback

Implements (30) from #410

Updates the core of the library.
Opens path for integration of MLP classifier
Adds very basic GetWti() for 3x3 Winograd only.

Basically, this is NFC, except:

Better Aux Wall time in FAST_FIND mode for unseen 3x3 configs
Performance of Immediate Mode Fallback improved (for unseen 3x3 cases)

Performance of unseen configs can be further improved by adding GetWti() for dynamic solvers and for GEMM.
:warning: For detailed understanding of this code, I recommend reviewing each commit individually. Each commit has clear description, so the reviewer has luxury to skip what he or she is not interested in (for ex. refactors).
Summary of code changes

Added GetWti() to SolverBase and to AnySolver.
Implemented generic machinery that uses GetWti() in Immediate Mode Fallback.
Implemented very basic ConvBinWinograd3x3U::GetWti().
Got rid of special semantics of negative solution.time values.
Got rid of (now unnecessary) FAST_FIND trick that avoids Immediate Mode fallback when IsWinograd3x3SupportedAndFast().

By-products
These are useful regardless of Immediate Mode Fallback improvements:

Fixes:

Fixed GWSS for FFT to return 0 when FFT is disabled.
Added missing direction checks in all existing Solvers.

Refactors:

Factored out and fixed some log messages
Reworked GetSolutions() on Immediate Mode Fallback path.
Reworked GWSS on Immediate Mode Fallback path.
Reworked GetSolutionCount() on Immediate Mode Fallback path.
Refined code related to workaround 1430.
Factored out SortWrapper helper class.

:cyclone: Local performance & correctness testing

Radeon VII, ROCm 3.5.
93 known FP32 + 93 known FP16 convolution configs
Normal Find mode + Immediate mode
OCL backend (FP32 configs only) + HIP backend
Develop baseline (1db8b1ad3) vs this PR (862f57b0e)

No regressions. Detailed description of the test is available upon request.
:cyclone: Evaluation of Initial Iteration Time impact

Radeon VII, ROCm 3.5.
93 unknown FP32 convolution configs
HIP backend
This PR (862f57b0e)

Find Mode
Wall time acceleration
GPU_perf_drop
Linux real time, sec
Linux real time acceleration

NORMAL
1.00
0%
920
1

FAST
32.60
52%
269
3.42

HYBRID
0.99
0%
920
1

FAST_HYBRID
1.55
1%
646
1.42

DYNAMIC_HYBRID
5.11
20%
331
2.78

The FAST Find mode of this PR shows better Wall time vs. d2f9ecb38 (see #417). The gain is about ~25% on average. Other Find modes are on par with #417. This matches my expectations.
Detailed description of the test is available upon request.

"Evaluation of Initial Iteration Time impact" added to the description.

"Local performance & correctness testing" added to the description.

Detailed description of code changes added. All tests passed. Ready to go!

@Kirpich30000 @shurale-nkn You are not required to review but I will be happy if you do.

Ping

@JehandadKhan Please review. The OP up top says this:

Opens path for integration of MLP classifier

Does this PR do this?

Guys, let's review. This is base for further improvements of initial iteration time.

@DrizztDoUrden Thank you for your time!

All CI checks passed.

@JehandadKhan Please have a look over before I merge this.

Ready for next review round.

@DrizztDoUrden  Please review so we can merge this

@JehandadKhan @DrizztDoUrden already approved this (but this was dismissed due to merged from develop) so we are safe to merge as soon as CI tests done.

@JehandadKhan @DrizztDoUrden Tip of develop merged, conflicts resolved, please put your green marks. Thanks.

@atamazov more conflicts

@JehandadKhan Resolved.

Merge errors found.

All fixed & re-tested, please re-approve.

This PR, as such, has middle value, but it blocks other important improvements.

@daniellowell CI testing passed, ready to merge!

Someone has restarted the CI tests multiple times, but this is not necessary because run 46 has already succeeded.


[PE-D][Tester D] Long inputs get cut off

Users probably would not have the need to key in such long inputs in most cases, but this problem will also occur if the user resizes the window width to be smaller. Could consider restricting input length or using ellipsis?

Labels: type.FeatureFlaw severity.VeryLow
original: ruiqi7/ped#12

Not allowed to change UI during 1.4


Can it support tailing log files, too?

Just tried stern and it was pretty awesome, thank you for your work!
In our case though, sometimes some logs are not being printed as stdout/stderr. Some logs are being generated as just files.
So I thought it would be great if stern can support tailing some files in containers, too!

same question as above.. the equivalent of kubectl logs -f     (ie tail -f) which is what most people want to do when looking at an app in realtime (after the fact - we can just look at centralized logging or figure it out some other way)


Support topic-based encryption for Kafka buffer

Is your feature request related to a problem? Please describe.
For some situations, we want to encrypt each Kafka topic with a different encryption key.
Describe the solution you'd like
Update Data Prepper's Kafka buffer to support an optional encryption key.
buffer:
  kafka:
    topics:
      - name: MyTopic
         encryption_key: gEa68HffrNhFtJkNoY0UsD6D6W4w8KUFtYJTnte+eiY=

Additionally, this key could be encrypted by Amazon KMS so that we can support envelope encryption.
buffer:
  kafka:
    topics:
      - name: MyTopic
        encryption_key: AQIDAHhBQ4iH7RP28kWDRU1yN2K73qYEE2d8i06EBly7HoDSIwFXoO+oiW+HOlam8lfIUFwLAAAAfjB8BgkqhkiG9w0BBwagbzBtAgEAMGgGCSqGSIb3DQEHATAeBglghkgBZQMEAS4wEQQM/j9Uf9cxYv/poV0FAgEQgDuVG9jfls3Ys7dR/cRKmdkcYDJw/XzR/ZEnZwcT9e+XB1T+SxC0YHLtc33lRwoD/UV0Ot+y8oUBqMvaXg==
        kms_key_id: alias/ExampleAlias

Data Prepper initialization
When Data Prepper starts, it reads the pipeline configuration file. If the user provided a KMS key in the configuration, the Kafka Buffer decrypts the data encryption key using KMS.
Data Prepper holds the decrypted data key in memory for future processing.

Receiving data and writing to Kafka
As users provider their data to a Data Prepper source, that source writes to the Kafka buffer. The Kafka Buffer encrypts each record using the decrypted data key; this is the same key decrypted during initialization. The Kafka Buffer sends the encrypted record to the Kafka topic.

Processing data and reading from Kafka
As Data Prepper runs, the Pipeline Worker reads from the Kafka Buffer. The Kafka Buffer polls the Kafka topic for data. Each Kafka ConsumerRecord is already encrypted as described above. Thus, the Kafka Buffer decrypts this data using the same data encryption key it loaded at initialization.

Describe alternatives you've considered (Optional)**
N/A
Additional context
This builds on the work being done for #3322. The design could be extended for generic sink and source as well.

I updated the description to show the actual format. As with the serialization format, the encryption is now configured on the topic.


ignore .ignore is not a function

VSCode Version: 1.0.0
OS Version: Ubuntu 15.10

Steps to Reproduce:

I try edit any .js file
When i try save file, i take a error:

Editor clean without any extensions.

@bpasero starting with you since it is save. I search for Ignore function but wasn't successful.
@T0toro do you have any additional plugins installed?

@T0toro do you have any additional plugins installed?

no.

The only place I found a ".ignore" is in https://github.com/Microsoft/vscode/blob/master/src/vs/editor/contrib/comment/common/lineCommentCommand.ts#L139
Moving to @alexandrudima thereby, though I am not sure if this is really being hit.
@T0toro
Can you try to run VS Code without extensions? From the command line, execute: code --disable-extensions

@T0toro
Can you try to run VS Code without extensions? From the command line, execute: code --disable-extensions
i try but in not help.

@T0toro From your screenshot, I see at the bottom you might be using a vim emulation extension.
Since our codebase does not contain any invocation for a function called "Ignore" I believe it is an extension you have installed that throws this error.
Can you please share with us the list of extensions you have installed: F1 > Extensions: Show installed extensions

No info => closing


SSR bundle includes css regardless of its usage

Describe the bug
When building the server entry for SSR, the bundle includes all CSS in the application despite it not being needed for server-side usage at all. The obvious downside is that the bundle size grows proportional to the total size of all css included. Building speed is also very noticeably reduced when importing css files that include base64 encoded fonts.

Reproduction

Create a regular app
Add styling to a component, in this case App.vue

<style>
   #app {
      color: blue;
   }
</style>

Build SSR entry

vite build --outDir dist/server --ssr src/entry-server.js

Check output in dist/server/entry-server.js. It will produce a variable like:

var App_vue_vue_type_style_index_0_lang = = "\n#app {\n    color: blue;\n}\n"

System Info
  System:
    OS: macOS 11.4
    CPU: (8) arm64 Apple M1
    Memory: 936.45 MB / 16.00 GB
    Shell: 5.8 - /bin/zsh
  Binaries:
    Node: 16.1.0 - /opt/homebrew/bin/node
    npm: 7.14.0 - /opt/homebrew/bin/npm
  Browsers:
    Chrome: 91.0.4472.77
    Firefox: 89.0
    Safari: 14.1.1
  npmPackages:
    @vitejs/plugin-vue: ^1.2.3 => 1.2.3
    vite: ^2.3.6 => 2.3.6

Used package manager: npm

This is now fixed since Vite 2.8.6. The output is now:
var App_vue_vue_type_style_index_0_lang = "";


delete 'R/' while keep 'src/R/'

https://github.com/miniatureseal/dsci-310-group-10-GCC/pull/105

I revamped the general structure to be more clean. We now only have an R folder for the source code to keep the project hierarchy more flat


[FLINK-13352][hive] Using hive connector with hive-1.2.1 needs libfb3…

…03 jar

What is the purpose of the change
To document that libfb303 is needed when using hive connector  with hive-1.2.1.
Brief change log

Updated the dependencies part for hive-1.2.1.

Verifying this change
Trivial doc change
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: no
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? no
If yes, how is the feature documented? NA

cc @xuefuz @zjuwangg
I also find the hierarchy about the HiveCatalog is a little strange -- we have 2 HiveCatalog headings. Not sure if we can use this PR to fix that as well.


feat: resolve logic bin index

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


matNativeControl shows value that does not match model when options are changed, makes displayed option unselectable

Reproduction
https://stackblitz.com/edit/angular-native-select-option
Steps to reproduce:

Press Options 1 or Options 2, which changes the options displayed by both the native select and the mat-select.
Observe that the underlying control's value is null, but the native select shows the first option out of its options as the selected item.
Attempt to select the displayed value in the native dropdown. It appears selected,
Change focus away from the native control. The required validator will fire and the control will be invalid.

Expected Behavior
No option should be displayed as no option was selected, as per the mat-select behaviour.
Actual Behavior
The native control displays a value that does not match its model. Further, the option that is displayed can't actually be selected without selecting another option first.
Environment

Angular: 7.2.15
CDK/Material: 7.3.7
Browser(s): Firefox 68 64 bit, Chrome 75.0.3770.100 64 bit
Operating System (e.g. Windows, macOS, Ubuntu): Windows 10 1903 18362.207

I am able to reproduce this still in Angular 8.2.10 & Material 8.2.3.


navbars add-ons not working

So I've been using the plugin for a responsive site I'm building (great plugin by the way!), and wanted to add some nav headers and nav footers on to the navigation. I followed on adding the navbars object into the mmenu to a tee, just like how it's shown in the example, but nothing shows up. I tried adding a navbar  header to your advanced.html demo and it didn't work as well. Do you know if it's a conflict between features?

The advanced demo already has a navbar header. So I'm not sure what you're trying to accomplish.

Opps, looks like I may have altered the advanced.html. I downloaded the latest version and long and behold, the header is there. Sorry for the trouble and thank you!


"Does Teleport handle teleporting?"
"Wat?"

Hmm, point taken but I'm not renaming the project.
Suggested solution: Use namespacing? :)


JsonWebKeyECTypes.P512 doesn't correspond to a standardized named curve

P512 is likely a typo, as there's no such curve in the DSS spec: http://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-4.pdf
Instead, it should be named P521 and the constant value should be P-521. Since the existing values are invalid, I'd recommend removing them in the next version.
https://tools.ietf.org/html/rfc7518#section-<IP_ADDRESS>
/cc @brentschmaltz @polita

Fixed.


Add compact blocks faq

@instagibbs this looks really good, thank you!
I see a few places where we could probably expand on some of the terms used so that the article would be more accessible to people less familiar with networking.  I'll send you a PR with suggestions in a few hours (or, if this gets merged before then, I'll open the PR here).  Thanks again!

@harding there are more suggestions rolling in over IRC, so you're safe for a few hours at least. I would like to merge by tomorrow morning if possible.

@instagibbs I opened a PR to your branch here: https://github.com/instagibbs/bitcoincore.org/pull/1
Hopefully you find the changes useful; please feel free to reject any you don't.
@btcdrak In the PR above, I added the post to the FAQ menu.  That's a separate commit, so it can be easily dropped if you don't want that.

Updated the text and squashed with a big thanks to @harding .

@harding good catch on the menu navigation.

https://github.com/bitcoin-core/bitcoincore.org/commit/9f4e00b65c7907bc3d1ac8eb293a1358449bf3a7 makes the phrasing changes suggested by @sipa and fixes the typo found by @achow101 (thanks!)


[Bug] Forcing .net 7 when .net 6 is in LTS

Hi
Thanks for the package. Qhy have you not build in .net 6 LTS?
System.Diagnostics.DiagnosticSource .net 7 is renowned for giving net 6 issues.
https://github.com/temporalio/sdk-dotnet/blob/b64dd6def30060ca29aabd3bfec70848ac36d052/src/Temporalio.Extensions.OpenTelemetry/Temporalio.Extensions.OpenTelemetry.csproj#L16
https://github.com/temporalio/sdk-dotnet/blob/b64dd6def30060ca29aabd3bfec70848ac36d052/src/Temporalio.Extensions.Hosting/Temporalio.Extensions.Hosting.csproj#L15
Can we build net6 packages? I can make the csproj spit it all out :-)

System.Diagnostics.DiagnosticSource .net 7 is renowned for giving net 6 issues.

Can you clarify the issues? The .NET version is unrelated to that dependency version. We support many versions for this extension, see https://www.nuget.org/packages/Temporalio.Extensions.Hosting#supportedframeworks-body-tab. And that dependency supports .NET 6 and many others, see https://www.nuget.org/packages/System.Diagnostics.DiagnosticSource#supportedframeworks-body-tab.

It does give a lot of issues with AF Funcs.
When on net 6, it is best to keep everything on .net6. Trust me, you think this ddl and that dll are safe, then it ends up using something else, and no longer safe.

It does give a lot of issues with AF Funcs.

What are AF Funcs? Can you show an example of such an issue? Our unit tests are all on .NET 6 using these 7.x libraries. A unit test on .NET 6 that would break here would help us know if we need to downgrade.

(closing pending response, but feel free to update if there is more info or a standalone replication)


OpenJDK 12 and maven 3.6.1 failing to build the projects

Running
mvn clean install

On the root of the repository fails with:
Exception in thread "main" java.lang.reflect.InvocationTargetException
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:567)
	at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:513)
	at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:525)
Caused by: java.lang.RuntimeException: Class java/util/UUID could not be instrumented.
	at org.jacoco.agent.rt.internal_8ff85ea.core.runtime.ModifiedSystemClassRuntime.createFor(ModifiedSystemClassRuntime.java:140)
	at org.jacoco.agent.rt.internal_8ff85ea.core.runtime.ModifiedSystemClassRuntime.createFor(ModifiedSystemClassRuntime.java:101)
	at org.jacoco.agent.rt.internal_8ff85ea.PreMain.createRuntime(PreMain.java:55)
	at org.jacoco.agent.rt.internal_8ff85ea.PreMain.premain(PreMain.java:47)
	... 6 more
Caused by: java.lang.NoSuchFieldException: $jacocoAccess
	at java.base/java.lang.Class.getField(Class.java:2004)
	at org.jacoco.agent.rt.internal_8ff85ea.core.runtime.ModifiedSystemClassRuntime.createFor(ModifiedSystemClassRuntime.java:138)
	... 9 more
FATAL ERROR in native method: processing of -javaagent failed
/bin/sh: line 1: 43604 Abort trap: 6           /Library/Java/JavaVirtualMachines/adoptopenjdk-12.0.2.jdk/Contents/Home/bin/java -javaagent:/Users/salaboy/.m2/repository/org/jacoco/org.jacoco.agent/0.7.9/org.jacoco.agent-0.7.9-runtime.jar=destfile=/Users/salaboy/code/myforks/spring-zeebe/util/target/jacoco.exec -jar /Users/salaboy/code/myforks/spring-zeebe/util/target/surefire/surefirebooter12013810647460814714.jar /Users/salaboy/code/myforks/spring-zeebe/util/target/surefire/surefire6410680655165531208tmp /Users/salaboy/code/myforks/spring-zeebe/util/target/surefire/surefire_015604287260760055526tmp

Results :

Tests run: 0, Failures: 0, Errors: 0, Skipped: 0

[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary for pom/spring-zeebe 0.7.0-SNAPSHOT:
[INFO]
[INFO] pom/spring-zeebe ................................... SUCCESS [  0.913 s]
[INFO] test/spring-zeebe-test ............................. SUCCESS [  0.871 s]
[INFO] lib/spring-zeebe-util .............................. FAILURE [  1.548 s]

I am using the following versions, which seems to be the defaults for maven and OpenJDK while using brew in Mac
Apache Maven 3.6.1 (d66c9c0b3152b2e69ee9bac180bb8fcc8e6af555; 2019-04-04T21:00:29+02:00)
Maven home: /usr/local/Cellar/maven/3.6.1/libexec
Java version: 12.0.2, vendor: AdoptOpenJDK, runtime: /Library/Java/JavaVirtualMachines/adoptopenjdk-12.0.2.jdk/Contents/Home
Default locale: en_GB, platform encoding: UTF-8
OS name: "mac os x", version: "10.14.6", arch: "x86_64", family: "mac"

It definitely seems to be related to the jococo version used in the root pom:
<plugin>
        <groupId>org.jacoco</groupId>
        <artifactId>jacoco-maven-plugin</artifactId>
        <version>0.7.9</version>
        <executions>
          <execution>
            <goals>
              <goal>prepare-agent</goal>
            </goals>
          </execution>
          <execution>
            <id>report</id>
            <phase>test</phase>
            <goals>
              <goal>report</goal>
            </goals>
          </execution>
        </executions>

Version 0.8.4 is already available in maven central: https://search.maven.org/artifact/org.jacoco/jacoco-maven-plugin/0.8.4/maven-plugin

Hey @salaboy we saw lately some problems with AdoptOpenJDK for example: https://forum.zeebe.io/t/timeout-on-zeebe-deploy-command/623/10?u=zelldon and https://github.com/zeebe-io/zeebe/issues/2961
Could you please verify if you have the same issues with a different vendor?
Greets
Chris

It looks like the same problem.. I am with AdoptOpenJDK as well. Java version: 12.0.2, vendor: AdoptOpenJDK, I am happy to close if you already have another issue to track it down

I am closing this issue as I managed to run it in the end


On the future development of this plugin

Hi @sonots.
First, thanks for developing such a great plugin!
We are @fluent-plugins-nursery team who try to maintain orphaned Fluentd plugins and keep them updated.
It seems that the development of this plugin has been stagnating for a while.
Since this plugin is embedded in td-agent, we want to adopt this plugin.
So the question is: is it possible to transfer the ownership of this project to fluent-plugins-nursery?
If you can, we'd continue developing this work as part of our program to sustain the ecosystem.
We are looking forward to hearing back from you!

Thanks so much for transferring many repositories, including this repository.
We have confirmed that all transfers have been completed successfully.
Thanks so much again!


Path

ADB is not installed or PATH is not Configured

@MHaddi1 check if adb is installed prop6in your system.

@aakash-pamnani It gives an error, Previously worked after I restarted vscode, but it does not work now even after restarting.
https://github.com/aakash-pamnani/ADB-QR/assets/49232863/ebbb2460-7d3e-4931-8223-14783277be5c

@mufaddalhamidofficial can please open the console (vscode > help > open debugging tools) then perform same actions and share the logs.

Hey @aakash-pamnani, I tried to connect adb using Android Studio and it did not work either, so I restarted my PC and the extension then worked.
It is probably not an issue with your repo but I think it is an issue with your error message handling

@mufaddalhamidofficial thanks for the reply.
But. I can't know what was the error to add the error message 🥹.
Closing the issue.


[FEATURE] Changing Drifty GUI to a JavaFX interface

Description
We talked briefly about the Drifty GUI interface in #225 so I wanted to open this one up specifically for this PR that I WANT to submit, but I've run into some issues that have been difficult to figure out. I've invested way too many hours into this to just toss it out the window so I'm hoping some collaboration will help me get this interface completed.
I have a lot of questions, so I'll try to stick to what's more relevant...
I'm new to yt-dlp or any of the forks from the original. It has enormous capability, but of course, leveraging all of that capability within a wrapper program can be very overwhelming. I noticed in the code, that you seem to have broken down capabilities offered to your users in generally three "categories" which are Youtube downloads, Instagram downloads, and "everything else"...
I've been focusing my efforts on just the youtube feature of the code. But when I thought it would be simple enough to just use the same method calls that you use in the Swing code which seems straightforward, but there are functions even in the Swing code that aren't quite working right, such as filename detection, etc. You also seem to rely heavily on the MessageBroker class for passing information around in the program which I think might also be connected to logging somehow. I haven't studied that area of the code in any depth because it looks a little intimidating at first glance.
I was able to get filename detection working using these command switches in yt-dlp
--write-info-json --skip-download -P /path urlLink

That writes a very thorough JSON file that I then use to grab the filename. And as it turns out, when your link is a list of youtube videos, it creates one JSON file for each video in the list which also includes the URL for each file, making it easy to create batch jobs from links like that.
Could you help me understand the messaging framework a little better? Whats the intent there, how should it be utilized etc.?  Also what the primary goal has been for the project given the abilities of yt-dlp.... has your scope just been youtube and Instagram mainly?
Additional information
No response

Yeah sure @EasyG0ing1!
Why MessageBroker class is required
The MessageBroker class is used to send messages from the Backend classes (Like FileDownloader, Drifty, etc.) to the frontend classes (like Drifty_CLI and Drifty_GUI). Now, the Drifty CLI has the console/terminal as the default output stream, but, the Drifty GUI has multiple output areas (Like text areas in the swing GUI interface). So, to reduce repetitions, the message broker helps to pass the message to the required areas along with logging them in the log file and setting the respective colors for INFO, WARN and ERROR message categories.
A look into the Code
For Drifty CLI, the terminal is the output area. So, the System.out stream is passed in the consoleOutput field in the below code. The applicationType is CLI.
public MessageBroker(String applicationType, PrintStream consoleOutput){
        appType = applicationType;
        output = consoleOutput;
        logger = Logger.getInstance("CLI");
    }

For Drifty GUI, there are different text areas for the messages to be shown based on their category (Like about the download process, or Link Validation process, or FileName related messages, etc.), so, the object of the JLabel classes are passed to this constructor (see the below code). The applicationType is GUI.
public MessageBroker(String applicationType, JLabel link, JLabel dir, JLabel download, JLabel fileName){
        appType = applicationType;
        this.link = link;
        this.dir = dir;
        this.download = download;
        this.fileName = fileName;
        logger = Logger.getInstance("GUI");
    }

How does the sendMessage method works
The sendMessage method, at first, checks if the application from which the message is coming is CLI or GUI (It gets the info from the object variable applicationType set at the object creation time). Then, it checks for the category of the message (Like only log [for only logging the message], download [for messages regarding downloading the file], link [for link validation related messages], directory [for directory validation related messages], filename [for fileName related messages]).
If the application type is GUI (When Drifty GUI initiates the message Broker class), then it checks for the message type (Like ERROR, WARN, and INFO) and sets the color of the message accordingly.
public void sendMessage(String message, String messageType, String messageCategory){
        if (appType.equals("CLI")){
            if (!messageCategory.equalsIgnoreCase("only log")) {
                output.println(message);
            }
            logger.log(messageType, message);
        } else if (appType.equals("GUI")){
            Color color = Color.BLACK;
            switch (messageType) {
                case DriftyConstants.LOGGER_INFO -> color = Color.GREEN;
                case DriftyConstants.LOGGER_ERROR -> color = Color.RED;
                case DriftyConstants.LOGGER_WARN -> color = Color.YELLOW;
                default -> logger.log(DriftyConstants.LOGGER_ERROR, "Invalid message type provided to message broker!");
            }
            switch (messageCategory) {
                case "link" -> {
                    link.setText(message);
                    link.setForeground(color);
                    logger.log(messageType, message);
                }
                case "directory" -> {
                    dir.setText(message);
                    dir.setForeground(color);
                    logger.log(messageType, message);
                }
                case "download" -> {
                    download.setText(message);
                    download.setForeground(color);
                    logger.log(messageType, message);
                }
                case "Filename" -> {
                    fileName.setText(message);
                    fileName.setForeground(color);
                    logger.log(messageType, message);
                }
                case "only log" -> logger.log(messageType, message);
                default ->
                        logger.log(DriftyConstants.LOGGER_ERROR, "Invalid message category provided to message broker!");
            }
        } else {
            logger.log(DriftyConstants.LOGGER_ERROR, "Invalid application type provided to message broker!");
        }
    }

@EasyG0ing1 yt-dlp provides support for downloading YouTube and Instagram videos, so, it has been kept as a part of the Drifty program.

When I replaced Swing objects with FX objects, I did see the hooks into the message class for the AWT objects and I provided the StringProperty of the Label class for that purpose.
I also thought it a bit strange that every time a download happens, it checks for an update. I used the Preferences class to store (among other things) the current system time stamp so if the copy method finds that the file already exists in the destination, it doesn't re-copy it and the timestamp gets checked when the code runs to do the update task and If it has not yet been 24 hours, then the update code doesn't run. So in effect, it only runs once every day.
How much liberty do I have to deviate from the code in the download class specifically? Would you be OK relegating that code to the CLI and using a different method for the GUI? Or maybe even a different class?
When I was trying to get the CLI working at all on MacOS, which, by the way, the code as it is now in the repository doesn't work on MacOS "out of the box" ... first issue is the command wont copy out of the resources folder but then kept erroring out when I tried a download. I had to change this:
"-f", "[height<=" + height + "][width<=" + width + "]"

to this
 "-f", "mp4"

To get it to work which begs the question ... does it work in Windows and Linux? When I tried running the command in BASH using that -f option with the resolution dimensions it just threw an error... those really puzzle me cause I don't see anything in the yt-dlp documentation about using that nomenclature for that switch.
This code is puzzling too ...
        if (outputFileName.equals("%(title)s.%(ext)s")) {
            fileDownloadMessagePart = "the YouTube Video";
        }
        else {
            fileDownloadMessagePart = outputFileName;
        }

When would the outputFileName ever be equal to %(title)s.%(ext)s ?

When I replaced Swing objects with FX objects, I did see the hooks into the message class for the AWT objects and I provided the StringProperty of the Label class for that purpose.
I also thought it a bit strange that every time a download happens, it checks for an update. I used the Preferences class to store (among other things) the current system time stamp so if the copy method finds that the file already exists in the destination, it doesn't re-copy it and the timestamp gets checked when the code runs to do the update task and If it has not yet been 24 hours, then the update code doesn't run. So in effect, it only runs once every day.

Yeah @EasyG0ing1, it would be great if Drifty checks for yt-dlp update once in a day.

How much liberty do I have to deviate from the code in the download class specifically? Would you be OK relegating that code to the CLI and using a different method for the GUI? Or maybe even a different class?

Let me know how you are going to change the download class, and how would the GUI handle the download process. I need to think on this based on your ideas :bulb:.

When I was trying to get the CLI working at all on MacOS, which, by the way, the code as it is now in the repository doesn't work on MacOS "out of the box" ... first issue is the command wont copy out of the resources folder but then kept erroring out when I tried a download. I had to change this:
"-f", "[height<=" + height + "][width<=" + width + "]"

to this
"-f", "mp4"

To get it to work which begs the question ... does it work in Windows and Linux? When I tried running the command in BASH using that -f option with the resolution dimensions it just threw an error... those really puzzle me cause I don't see anything in the yt-dlp documentation about using that nomenclature for that switch.

Please remove the -f option from the commands passed to yt-dlp as it is no more required. Let me know if -f option has any use cases for MacOS. Also, for windows and linux OS, yt-dlp runs well with / without -f  "mp4".

This code is puzzling too ...
if (outputFileName.equals("%(title)s.%(ext)s")) {
    fileDownloadMessagePart = "the YouTube Video";
}
else {
   fileDownloadMessagePart = outputFileName;
}

When would the outputFileName ever be equal to %(title)s.%(ext)s ?

@EasyG0ing1 The outputFileName will be equal to this yt-dlp specific regex pattern %(title)s.%(ext)s when the user wants to keep the video title as the file name.
If you are successful in extracting the name of the YouTube / Instagram video, then you need to replace "the YouTube Video" with the video title.

@EasyG0ing1 Have you understood? Let me know if you have faced any errors.

@SaptarshiSarkar12 Yes, I understand ... with the -f option removed, this might make things simpler. The other problem Ive been seeing is that yt-dlp does not run the same in different Process classes. For example, in my efforts to capture the download progress, I tried using the library called jproc and what is interesting about that library is that it works fine when I run yt-dlp for name extraction but for actually downloading a video, it just hangs and will never download the video. It's as if yt-dlp switches to another process or program between resolving the URL and actually downloading the file where ProcessBuilder seems to handle the transition, but it loses connection to the output from the command. But with that whole program being written in Python, this doesn't surprise me - though I would think they could write it somehow so that it remains in a single thread or process but I don't know enough about it or Python to find out if my assumptions are correct.

@SaptarshiSarkar12 Talk to me about the class: Backend.ProgressBarThread' - I haven't even looked at it since we can't get download progress from yt-dlp` in the first place. Was this an attempt to gain that functionality for the GUI? Can I remove it from the program?

@SaptarshiSarkar12 - I wanted to mention this before I forget but the whole reason how I found this project in the first place was from an issue you opened on the JavaPackager project ... which I've been using for a while to package my projects, but after studying the POM file in this project, I learned a lot about how to use JavaPackager that I didn't previously know. Like how you can use dot notation in the XML references when referring to a file in a folder instead of slashes ... and also how to create Windows and Linux executables without needing to package the project in those operating systems ... that is a HUGE time saver!

Yeah @EasyG0ing1, I  have also tried to get yt-dlp progress but all in vain. It does not work.
A better idea (if can be implemented) is that creating a console area in the GUI, where the yt-dlp will redirect its output.

@SaptarshiSarkar12 Talk to me about the class: Backend.ProgressBarThread - I haven't even looked at it since we can't get download progress from yt-dlp in the first place. Was this an attempt to gain that functionality for the GUI? Can I remove it from the program?

No, the ProgressBar class is used to generate a progress bar for downloading files from sources other than YouTube and Instagram. Removing it would cause problem in Drifty CLI.

@SaptarshiSarkar12 - I wanted to mention this before I forget but the whole reason how I found this project in the first place was from an issue you opened on the JavaPackager project ... which I've been using for a while to package my projects, but after studying the POM file in this project, I learned a lot about how to use JavaPackager that I didn't previously know. Like how you can use dot notation in the XML references when referring to a file in a folder instead of slashes ... and also how to create Windows and Linux executables without needing to package the project in those operating systems ... that is a HUGE time saver!

@EasyG0ing1 Thank you for checking out the project and bringing such good ideas! I appreciate your help and concern :grinning:!

@EasyG0ing1 I have successfully got the process ID of yt-dlp but I don't know how to get the progress using the process ID.
I have used the below code just after starting the process :
System.out.println(yt_dlp.pid());

and it prints the PID.

@SaptarshiSarkar12 In case you havent seen this yet on Discord

@SaptarshiSarkar12 In case you havent seen this yet on Discord

Yeah @EasyG0ing1 , I have seen that. It's pretty awesome UI. Great Work :clap: ! Please share a video for batch download also.


Bundled Oclif CLI with PKG is failing to initialize Package.json and Plugins

https://github.com/oclif/core/blob/a9c92867e7cafbff7f6e2339fe0aacb5c648203c/src/util/fs.ts#L13C11-L13C17
It seems it is not working as expected with a cli bundled with PKG.
When going through the Root Plugin initialization, and trying to read Package.json, the fs:promise access function throws with
[Error: ENOENT: no such file or directory, access '/snapshot/mycli/package.json'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'access',
  path: '/snapshot/mycli/package.json'
}

I have debugged the content hosted by pkg:
------------------------------- virtual file system
/snapshot
  mycli                                63381336
    run.js                                     533
    package.json                              2356
    oclif.manifest.json                       1965
    dist                                     13275
      index.js                                 238
      commands                                7641
        hello                                  7403
          index.js                            1300
      utils                                   8421
        some                                    780
          index.js                             780

When replacing that line with using readFile or open (instead of access, as suggested by https://nodejs.org/api/fs.html#fsaccesspath-mode-callback), everything works as expected.
Probably a permission error in the virtualized system?

@cdbkr Thanks for posting this. Are you able to provide more details about how to replicate this? I'm not familiar with pkg
Either way, after reading through the node docs you posted I agree that there's a better way to check for the existence of a file. I can make a PR to adjust that and we can see if that resolves your issue.

@cdbkr I published a dev release (3.0.5-dev.0) from my PR #816. Can you try using that version and see if it resolves your issue? Thanks!

@cdbkr I published a dev release (3.0.5-dev.0) from my PR #816. Can you try using that version and see if it resolves your issue? Thanks!

thank you very much @mdonnalley for your prompt response and PR! I have tried the changes and it is actually working as expected, and stat looks way better than readFile and open.
If that PR gets merged, this issue could be closed

@cdbkr Thanks for posting this. Are you able to provide more details about how to replicate this? I'm not familiar with pkg
Either way, after reading through the node docs you posted I agree that there's a better way to check for the existence of a file. I can make a PR to adjust that and we can see if that resolves your issue.

I have created a repo to reproduce https://github.com/cdbkr/oclif-core-pkg-rep
These are the lines to configure and buildpkg
https://github.com/cdbkr/oclif-core-pkg-rep/blob/main/package.json#L67-L80
Then just running
./dist-bin/mycli

It should fail with the error mentioned.
Applying the featured version at the same repo
npm install --save<EMAIL_ADDRESS>
and rebuilding, fixes the issue

@cdbkr looks like you've taken the repo down. Is there any chance you can restore it? I can't seem to get it working with pkg with workspaces

Hey @mdonnalley , sorry to ping in an old issue, please let me know if you would prefer we create a new one.
Following is-wsl being bumped to ^3 in version 4.0.26 we believe we are experiencing a similar issue due to pkg conflicting with is-wsl being ESM-only and the way it is-wsl being imported.
ERR_MODULE_NOT_FOUND: Cannot find package 'is-wsl' imported from<EMAIL_ADDRESS>Did you mean to import is-wsl/index.js?


Updated script tag version numbers for Firebase and Angular

Coverage remained the same at 94.42% when pulling ef94871d5339eb060943cf6c485aa23de025dd47 on jw-update-script-tags into 65ae34a2c71ec6cfb3c965801266aa862a61d311 on master.


CAMEL-9876 - fix IndexOutOfBounds exception when MSH-18 isn't in message

Thanks for the PR it has been merged. Do you mind closing this?


Tag for binary release

We should decide for a point when we want to make a binary release. Before, we should decide on #17 and merge #3. Then, we should tag and release a first version. I would aim for Foxy and galactic, as for Rolling, we might want to wait for #16, first. Any opinions on that @destogl?
Target distributions

Galactic
Rolling
Humble

Merge / decide open PRs

[x] #3
[x] #17
[x] #16
[x] #20
[x] #21

I think this is a good strategy. Although, we should consider also merging #16 since I back ported the FakeSystem functionality for it to galactic (ros-controls/ros2_control#634). This is not released yet, but it should be with the next galacic.
So, I would try to go for the release. Maybe we should try all three of them immediately. Before that we should probably make changes for galactic. There is one more change for rolling that will not be back ported to galactic and this is initial_value parameter (see comments in: ros-controls/ros2_control#635).
As of foxy, we should probably not release this but then rather from the other repository. Although, TBH I would skip foxy because any direction we choose it will be complicated and will need a lot of work, but I believe that the impact is limited there, especially because of new LTS coming out very soon. I would rather focus our effort to get better driver for Humble then spend time on code management to release to foxy.

Thanks for the heads-up!
I agree on Foxy, removed it from the list but added rolling and humble instead. Then, we merge #16, fork out for galactic and remove the initial_value from that?

Release triggered

Closing as release is done since a while


Changes aren't causing the feed to be rebuilt on jbmorley.co.uk

We should add an explicit test for this behaviour, see if we can reproduce, and ideally fix the issue.

It seems like the query tracker is not used for queries made on site object directly, which the JSON feed uses. Once we figure out a way to do this, it should start working.

See #85.


accessory missing from home app

Homebridge-config-ui-x shows the WLED accessory, but not the home app.  other accessories show up fine.  What do?

EDIT:  figures I find the solution after I post.  I had to manually add it in the home app.