Modified the plugin to add back the Range request header at the TS_HT…

…TP_SEND_RESPONSE_HDR_HOOK
so that custom logging of range requests works properly.

@jrushf1239k : lgtm - pls run clang format on the patch, so, I can merge it.

Sudheer,
I ran clang format and pushed it.
Thanks
John J. Rushford
IPCDN Engineering
1400 Wewatta Street, Denver Colorado 80202
<EMAIL_ADDRESS>From: sudheerv <notifications<EMAIL_ADDRESS>Reply-To: apache/trafficserver <reply<EMAIL_ADDRESS>Date: Friday, September 18, 2015 at 11:00 AM
To: apache/trafficserver <trafficserver<EMAIL_ADDRESS>Cc: John Rushford <john_rushford<EMAIL_ADDRESS>Subject: Re: [trafficserver] Modified the plugin to add back the Range request header at the TS_HT… (#297)
@jrushf1239khttps://github.com/jrushf1239k : lgtm - pls run clang format on the patch, so, I can merge it.
—
Reply to this email directly or view it on GitHubhttps://github.com/apache/trafficserver/pull/297#issuecomment-141507617.

thanks, @jrushf1239k - merging it.

thanks
Thanks
John J. Rushford
IPCDN Engineering
1400 Wewatta Street, Denver Colorado 80202
<EMAIL_ADDRESS>From: sudheerv <notifications<EMAIL_ADDRESS>Reply-To: apache/trafficserver <reply<EMAIL_ADDRESS>Date: Friday, September 18, 2015 at 11:11 AM
To: apache/trafficserver <trafficserver<EMAIL_ADDRESS>Cc: John Rushford <john_rushford<EMAIL_ADDRESS>Subject: Re: [trafficserver] Modified the plugin to add back the Range request header at the TS_HT… (#297)
thanks, @jrushf1239khttps://github.com/jrushf1239k - merging it.
—
Reply to this email directly or view it on GitHubhttps://github.com/apache/trafficserver/pull/297#issuecomment-141509823.

You should use __func__ in debug messages rather than typing the function name all the tine :)

You’re right, I should have.  Will do next time ;)
Thanks
John J. Rushford
IPCDN Engineering
1400 Wewatta Street, Denver Colorado 80202
<EMAIL_ADDRESS>From: James Peach <notifications<EMAIL_ADDRESS>Reply-To: apache/trafficserver <reply<EMAIL_ADDRESS>Date: Friday, September 18, 2015 at 12:05 PM
To: apache/trafficserver <trafficserver<EMAIL_ADDRESS>Cc: John Rushford <john_rushford<EMAIL_ADDRESS>Subject: Re: [trafficserver] Modified the plugin to add back the Range request header at the TS_HT… (#297)
You should use func in debug messages rather than typing the function name all the tine :)
—
Reply to this email directly or view it on GitHubhttps://github.com/apache/trafficserver/pull/297#issuecomment-141521724.

As a separate ticket, if you just rename the original Range header to @Range, you can remove the per-transaction data, saving yourself the copying and allocations.

@jpeach : I agree - but, one issue I could see in renaming Range to @Range, is that, it's not transparent to custom logging configuration (the operators need to know to log @Range instead of Range). Whereas,  re-adding the Range header back makes it seamlessly work for operators wanting to log Range header.

 I agree that restoring Range is the right thing.

Ah, I see - you are basically suggesting to rename Range to @Range temporarily and re-add @Range as Range. Of the top of my head, I don't know if these operations also involve a bunch of copying stuff around, but, if they don't, then yes, that's more efficient.

That’s why I added it back as ‘Range’, so that it would be seamless for those using custom logs.  Otherwise they’d have to read the source code and/or it’s documentation to know to use @Range.
Thanks
John J. Rushford
IPCDN Engineering
1400 Wewatta Street, Denver Colorado 80202
<EMAIL_ADDRESS>From: sudheerv <notifications<EMAIL_ADDRESS>Reply-To: apache/trafficserver <reply<EMAIL_ADDRESS>Date: Friday, September 18, 2015 at 12:23 PM
To: apache/trafficserver <trafficserver<EMAIL_ADDRESS>Cc: John Rushford <john_rushford<EMAIL_ADDRESS>Subject: Re: [trafficserver] Modified the plugin to add back the Range request header at the TS_HT… (#297)
@jpeachhttps://github.com/jpeach : I agree - but, one issue I could see in renaming Range to @Rangehttps://github.com/Range, is that, it's not transparent to custom logging configuration (the operators need to know to log @Rangehttps://github.com/Range instead of Range). Whereas, re-adding the Range header back makes it seamlessly work for operators wanting to log Range header.
—
Reply to this email directly or view it on GitHubhttps://github.com/apache/trafficserver/pull/297#issuecomment-141525465.


ElementaryOS: Luna - Failed to load session Gnome

Got XRDP 0.7.0 with X11R7.6 to compile on ElementaryOS, tried modifying the startwm.sh script to accept a pantheon-session and no dice, on rdp7.1->xrdp connection it states, "Failed to Load Session Gnome." Is this an xrdp issue or a pantheon issue? xrdp process is running just fine like in any other Debian-based distro. I wonder if it's an issue with the desktop manager. ElementaryOS utilizes a gnome2 fork known as Pantheon.

It seems to be solved.

Elementary OS 6.1?
Anybody?


As a user, I have access to the current Address object from the Account object.

Much like we have on Contact, this request is for a similar lookup on Account.  This allows easy creation of formula fields on the object to pull in Address fields.  https://powerofus.force.com/0D58000001twLfh

**lurch: attach W-007242

Tracking W-007242


Fix false positives inside lifecycle methods

This will prevent triggering on any member expression inside a lifecycle
method. Instead, it will do the naive checking of the node names for
props, nextProps, and prevProps which is already done here.
Resolves #2094. Resolves #2095.

Hi! Thanks so much for your work on this plugin.
We're running into this issue at badges/shields#2609. Could this be released?


The currency converter does not work

Description
The feature "currency converter" available under the Utilities section does not.
Steps to reproduce
Utilities>Currency Converter
What the current behaviour is?
The converter does not convert the value provided in the desired currency. Eg. If we convert Rs.1 to bitcoin it is showing value to be 00001375, 0.000001462 etc. and the actual value is much higher to about 764586.5
What the behaviour should?
The converter should work.
Would you like to work on this issue?
Yes

@ShivangiSingh17 Sure

Is someone taking over this ?

No @lelmedda
You want to take up this issue?

Can I work on this if this is not taken up yet?
Also, are there any developer credentials which I can use. There seems to be an issue with creating a new account. I will raise an issue about that

Yes, you can. @nasreekar
you can use these credentials:
email<EMAIL_ADDRESS>password: Test@123

@Swati4star  Looks like the API is not working.
Not receiving any value from the API call.
Response{protocol=http/1.1, code=503, message=Service Unavailable, url=https://project-travel-mate.herokuapp.com/api/get-currency-conversion-rate/USD/INR}

@nasreekar Yes, there seems to be some issue with this service. @prabhakar267 will look into this.

let me know once it is fixed so that I can pick it up.  :)
Also, an enhancement suggestion.
If there is an error with the converter, it is showing an animation but then clicking on the back button is dismissing the whole activity and navigating the user to utilities fragment. It would be great if the user is navigated to the currency converter activity instead of utilities so that the user doesn't have to do it again from the beginning.

Sure @nasreekar
Also, can you open up another issue for the suggestion you mentioned? If you want, you can start working on that too.


Input inputProps errors when data attribute is provided

Area
UI Components
The problem
When passing 'data-testid' in inputProps. In satl-ds it gives TS error

TS2353: Object literal may only specify known properties, and '['data-testid']' does not exist in type 'InputHTMLAttributes'.

The solution
?
Whether TypeScript / React itself has types we can use
Alternatives and examples
MUI supports it by
// Accommodate arbitrary additional props coming from the `inputProps` prop
[arbitrary: string]: any;

Are you a JPMorgan Chase & Co. employee?

[X] I am an employee of JPMorgan Chase & Co.

Goal: Dev to pick this up if we have capacity

Aug 16 - no capacity, add 1 more sprint

Espresso Goal to be reviewed and merged by EOS


No apk for F-Droid reproducible build

1.0.1 apk is not uploaded so F-Droid reproducible build failed. Could you please upload it?

I instantly deleted the 1.0.1 release because it had some issues, so it needs some fixes (I realized my mistake after making the new release).
Quick question to F-Droid, all I need to do is bump the version in pubspec.yml, upload files to GitHub, run the Action and apks that were built upload as a new release, and wait for F-Droid?

Yes, F-Droid will pick new versions automatically.

Yes, F-Droid will pick new versions automatically.

Hey @linsui , my app got on F-Droid "Need updating" list. I don't know why, don't know what I did wrong... Could you help me?

https://github.com/GeorgeYT9769/cardabase-app/blob/v1.1.0/pubspec.yaml#L19 The version name and version code are not bumped so 1.1.0 is not picked up. Could you please bump them and release a new version?

Yeah, thanks.

We find that there is a DependencyInfoBlock in your APK.
It's a Frosting block in the signing block.
It's added by AGP and encrypted with the Google public key so it can't be read by anyone else except Google. You can read more about it here and here.
While this was added a while ago, we were only enforcing it for new apps, and recently we started scanning updates too.
Could you please disable it with the following code?
android {
    dependenciesInfo {
        // Disables dependency metadata when building APKs.
        includeInApk = false
        // Disables dependency metadata when building Android App Bundles.
        includeInBundle = false
    }
}

Thanks!

Sure! Thanks @linsui for help! 😁

The app is still on the list, even after 2 updates. I bumped the version, turned off the google metadata thing... @linsui

@GeorgeYT9769 did you read  https://gitlab.com/fdroid/wiki/-/wikis/FAQ#how-long-does-it-take-for-my-app-to-show-up-on-website-and-client yet?

Yes, new release was published 3 days ago and the list was updated a day ago. But I'll wait longer.

Yes, hence a cycle started one day ago, see the monitor for its progress.

The build server is just at your app now: https://monitor.f-droid.org/builds/running :)

Ohhh, thanks guys! You are the best! I was so confused 😅...


[6.0] Sema: Relax feature check for non-escapable types in swiftinterfaces

Explanation: there's a way in which Escapable is escaping into interfaces without having been written source. That may be a bug on its own, but regardless we should not enforce the feature flag restriction when checking interfaces. Checking for the presence of a feature flag in order to allow syntax tends to result in condfails when applied to .swiftinterfaces, since older compilers that have this restriction may be used to compile newer interfaces where the restriction has been lifted. Remove this restriction for non-escapable types when typechecking an interface.
Scope: Affects libraries with library evolution enabled that contain extensions on some standard library types.
Issue/Radar: rdar://128577611
Original PR: https://github.com/apple/swift/pull/73898
Risk: Low. This just relaxes a diagnostic to accept more .swiftinterfaces. The restriction on Escapable types is a policy regarding use of experimental features, rather than a fundamental restriction.
Testing: Added regression tests.

@swift-ci please test

@swift-ci please test macOS

@swift-ci please test


Code Coverage not reported for instrumented tests (Android library module) on AGP 7.0

Hi I'm trying this on my test multi-module project before trying this on the other project I'm working on. I've followed the steps and run ./gradlew rootCoveragePlugin but got this report:

--
com.raquezha.heograpiya.splash is 0% but when I run it in Android Studio local coverage it recognize the tests:

--
here's the file structure
as you can see Android Studio recognizes the local code coverage of splash module and says its 100% lines covered

here's my top-level build.gradle
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    apply from: rootProject.file('dependencies.gradle')

    repositories {
        google()
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:7.0.0-alpha15'
        classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.0'
        classpath 'com.google.gms:google-services:4.3.5'
        classpath 'nl.neotech.plugin:android-root-coverage-plugin:1.4.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

plugins {
    id "nl.neotech.plugin.rootcoverage" version "1.4.0"
}

apply plugin: 'nl.neotech.plugin.rootcoverage'

jacoco {
    toolVersion = "0.8.7"
}

tasks.withType(Test) {
    useJUnitPlatform()
    testLogging {
        exceptionFormat "full"
        events "started", "skipped", "passed", "failed"
        showStandardStreams true
    }
}

subprojects {
    afterEvaluate { project ->
        if (project.hasProperty('android')) {
            android {
                compileSdk 30
                buildToolsVersion "30.0.3"

                defaultConfig {
                    minSdk 26
                    targetSdk 30
                    versionCode 1
                    versionName "1.0"

                    testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
                }

                buildTypes {
                    release {
                        minifyEnabled false
                        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
                    }

                    debug {
                        testCoverageEnabled true
                    }
                }

                compileOptions {
                    sourceCompatibility JavaVersion.VERSION_1_8
                    targetCompatibility JavaVersion.VERSION_1_8
                }

                kotlinOptions {
                    jvmTarget = '1.8'
                }

                buildFeatures {
                    viewBinding true
                }

                sourceSets {
                    main {
                        java.srcDirs = ['src/main/kotlin']
                    }
                    androidTest {
                        java.srcDirs = ['src/androidTest/kotlin']
                    }
                    test {
                        java.srcDirs = ['src/test/kotlin']
                    }
                }
            }
        }
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

here's the splash module build.gradle:
plugins {
    id 'com.android.library'
    id 'kotlin-android'
}

dependencies {
    implementation _libs.lottie

    implementation project(':shared')

    testImplementation project(path: ':shared', configuration: 'testDependencies')
    androidTestImplementation project(path: ':shared', configuration: 'androidTestDependencies')
}

tasks.withType(Test) {
    useJUnitPlatform()
    testLogging {
        exceptionFormat "full"
        events "started", "skipped", "passed", "failed"
        showStandardStreams true
    }
}

I'm using:

Android Studio Arctic Fox | 2020.3.1 Canary 15
Gradle JDK: AdoptOpenj9-11
gradle-wrapper: distributionUrl=https://services.gradle.org/distributions/gradle-7.0-bin.zip

I'm using canary because this is only a test project I want to test new stuff

I'm not exactly sure what causes this, but I suspect it has something to do with using:
subprojects {
    afterEvaluate { project ->
        // Modifying srcDirs here
    }
}

It could be that the plugin gets configured before you configure the new srcDirs, meaning that the plugin will not see these? But this is just me guessing. Can you share this project with me so I can do some testing?

Hi thanks for helping! you can check the project here: https://github.com/raquezha/heograpiya

I've tried applying the apply block after subProjects{ } block but it did not work still 0%

Hi @raquezha took me a while to take a look at this, but I found a few things:
Looking at the report that is generated, it is missing all execution data, which is needed to calculate coverage. You can check this for your self by going to the sessions part of the report:

This can have multiple causes, but in this case this happens because the Android Gradle Plugin updated where these files are located since version 7.0. This means the Plugin needs a small update.
However I also spotted this, which will also prevent coverage (even if I update the plugin):

In the root project build.gradle file you have this line:
getExecutionData().setFrom(fileTree(buildDir).include("/jacoco/*.exec"))
This basically overrides any of the default set execution data location's with the location you provided. Your location only looks at the buildDir of the root project, but normally execution data is generated in all the different module buildDir's, so this will definitely not work if you ask me.

TLDR: This plugin needs an update due to changes in the Android Gradle Plugin 7.0. I'm going to take care of this.

Thank you! looking forward for the fix, If you need someone to test, I'll gladly help!

Update:
I've done some work on making the plugin work with AGP 7.0. The integration test for this plugin now succeeds (which it didn't before because some coverage was missing).
However, on your specific project, there is still coverage missing. So I'm investigating what exactly causes that.

Update 2:
Kotlin 1.5 is the issue?
Did some more testing and I found that even though there is a small change in AGP 7.0 (they moved the location of the .exec for unit tests to a different location). After fixing that there is still no unit-test coverage (instrumented unit-tests work fine).
I found that the generated .exec file for unit-tests is basically empty, which is weird.
When I downgrade Kotlin to version 1.4.x everything works as expected, the ` In other words, it seems this is not specifically a AGP 7.0 issue, but more likely a JaCoCo or Kotlin issue. On the other hand AGP 7.0 itself depends on Kotlin 1.4, so maybe that is what's causing the issue?
I also tried upgrading to Gradle 7.1, JaCoCo 8.8 (snapshot), Kotlin 1.5.10. But that didn't work.
For now I only know that downgrading to Kotlin 1.4, seems to work (as a workaround).
Coverage in Android Studio
Now the reason you are seeing coverage in Android Studio is because you are probably running the Intellij code coverage runner, and not the Jacoco coverage runner. If you switch to Jacoco you will notice that Android Studio will not report any coverage.

I will try to search further but as of now I don't have any idea's left. Maybe I should file a bug? But where? JaCoCo? Kotlin?

hi, is there any progress on the kotlin 1.5 coverage issue? if help is needed let me know.

@kherink I could use some help here in finding out which tool actually causes the missing coverage. I'm currently working on a bare-minimal example that reproduces this (without my Plugin being involved), it's work in progress but at least I'm able to reproduce it*.
*Although it is already reproducible by running code coverage via Android Studio (IntelliJ) using JaCoCo, thus skipping this plugin, the Gradle JaCoCo plugin and Android Gradle plugin.

@Rolf-Smit I will have a look and let you know what I find.

@kherink I could use some help here in finding out which tool actually causes the missing coverage. I'm currently working on a bare-minimal example that reproduces this (without my Plugin being involved), it's work in progress but at least I'm able to reproduce it*.
*Although it is already reproducible by running code coverage via Android Studio (IntelliJ) using JaCoCo, thus skipping this plugin, the Gradle JaCoCo plugin and Android Gradle plugin.

@Rolf-Smit hi, you can reproduce it by this example.
Wrong coverage after update Kotlin to 1.5.10

@Rolf-Smit i'll look at it this weekend

Hi I don't use this plugin.. But I came across this issue when finding the same problem with code coverage with my own custom script after upgrading to AGP 7+ and Kotlin 1.5+.
After extensive messing around with my script and other configurations, I found that this line seemed to be the culprit...
testCoverageEnabled true
in here:
android {
    buildTypes {
        debug {
            testCoverageEnabled true
        }
    }
}

Coverage now seems to now work for me, by omitting this line. Not sure what has changed in AGP, and if this effects anything else, but I thought i'd share here anyway, just it case it helps someone, or helps progress the investigation further.

This library needs testCoverageEnabled true  in order to work. But thanks anyway, this can be useful for someone who encounter problem same as yours.

@AshMosahebTAB
Thanks for taking the time to add this comment here! I also noticed this but figured it was a bug, since you would expect that when this property is true it would actually instrument the classes, omitting it would make me think it would not instrument the classes.
Anyhow, this library indeed uses the testCoverageEnabled property to see which modules to include in the combined coverage report. If removing this property works I can rework the library to no longer use that property, possibly introducing a different method to tell the plugin which modules to use for the combined report.

Hi @Rolf-Smit Does the testCoverageEnabled mean to run coverage for JUnit test (/test), or Instrumented test (/androidTest), or both?

It's worth noting, that this bug has been raised here https://issuetracker.google.com/issues/195860510

@AshMosahebTAB thanks for sharing that here. I'm at this point 100% sure that this is not something I can fix, but this is something that needs fixing on the Android (Google) side of things.

@anticafe

Hi @Rolf-Smit Does the testCoverageEnabled mean to run coverage for JUnit test (/test - both pure Java/Kotlin & Android unit test), or Instrumented test (/androidTest), or both?

This library does not introduce testCoverageEnabled is is a property that is part of the Android Gradle Plugin, this library just looks at that property to determinate whether or not to create coverage report tasks for a certain library. This property does not dictate whether or not certain tests run.
In the README you can find information on how to configure this library in such a way that it either executes instrumented tests (test that run on an Android device) or pure Java unit tests (tests that run on your machine): https://github.com/NeoTech-Software/Android-Root-Coverage-Plugin#3-configuration

Update:
It seems Google finally stepped in and fixed the issue in AGP version 7.2.0: https://issuetracker.google.com/issues/195860510#comment12
Unfortunately the fix will not be released this month, they expect to release a beta version of AGP 7.2.0 that includes this fix around December 13th.

A SNAPSHOT release is now available that supports Android Gradle Plugin version 7.2.0-alpha06.
Since this SNAPSHOT is only available in Maven Central (Gradle Plugin Portal does not support SNAPSHOT releases), you cannot use this release using the normal id block, instead you will need to add it using an older method:
apply plugin: 'nl.neotech.plugin.rootcoverage'

buildscript {
    repositories {
        // ...
        mavenCentral()
    }
   dependencies {
      classpath 'nl.neotech.plugin:android-root-coverage-plugin:1.5.0-SNAPSHOT'
   }
}

Once there is a stable 7.2. release I will release a stable 1.5 release (or when Google decides to fix this on top of 7.0.4 or 7.1-beta I will create a special release for those).

@Rolf-Smit
I tried to switch from 1.4.0 to 1.5.0-SNAPSHOT using the same code you provided above, but Gradle reports an error Could not find nl.neotech.plugin:android-root-coverage-plugin:1.5.0-SNAPSHOT., while it has no problems with 1.4.0 using the same method.
Searched in the following locations:
  - https://repo.maven.apache.org/maven2/nl/neotech/plugin/android-root-coverage-plugin/1.5.0-SNAPSHOT/maven-metadata.xml
  - https://repo.maven.apache.org/maven2/nl/neotech/plugin/android-root-coverage-plugin/1.5.0-SNAPSHOT/android-root-coverage-plugin-1.5.0-SNAPSHOT.pom

I am not familiar with snapshot versions. Do I have to add a specific maven (snapshot) repository for the 1.5.0-SNAPSHOT to work?

@jernej7
You indeed need to use a special repository, the snapshot repository from Maven Central:
maven {
    url 'https://s01.oss.sonatype.org/content/repositories/snapshots/'
}

You must add this reposiotry to your plugin repository section. Also, since this is not a Gradle plugin repository, you might also need to map the plugin ID to an actual maven module (only needed for SNAPSHOTS, or when not using the official Gradle Plugin Repository):
settings.gradle (top of the file):
pluginManagement {
    resolutionStrategy {
        eachPlugin {
            if (requested.id.id == 'nl.neotech.plugin.rootcoverage') {
                useModule("nl.neotech.plugin:android-root-coverage-plugin:${requested.version}")
            }
        }
    }
    repositories {
        mavenCentral()
        maven {
            url 'https://s01.oss.sonatype.org/content/repositories/snapshots/'
        }
        gradlePluginPortal()
    }
}

Edit:
I might have been stupid and never published a special Gradle Plugin Marker artifact to maven central, without a Marker artifact Gradle cannot map the plugin ID to a maven module.
For SNAPSHOTS this is now fixed (I just published a new one), so you no longer need this to use SNAPSHOTS:
    resolutionStrategy {
        eachPlugin {
            if (requested.id.id == 'nl.neotech.plugin.rootcoverage') {
                useModule("nl.neotech.plugin:android-root-coverage-plugin:${requested.version}")
            }
        }
    }


Create a new filehash based CodeDriver to replace GitCodeDriver

[x] implement the abstract CodeDriver class using a filehash based approach
[x] refactor code to use filehash for all entities

Currently on PR #163

Merged with PR #163 . The new class is called FileCodeDriver and is the new default. git dependency has been removed


Heroku push on push to github

Push the repo to Heroku when a push (or other event) to github is received.

I think that giving your git remote multiple urls is probably the best approach here.

Probably, but it would be useful for things such as pushing from something else (service), or the web editor.
On Feb 5, 2012, at 12:39 PM, Kenneth Reitz wrote:

I think that giving your git remote multiple urls is probably the best approach here.

Reply to this email directly or view it on GitHub:
https://github.com/github/github-services/issues/237#issuecomment-3820014

Hooks don't have access to your repo, so this isn't really possible.  Heroku (or any 3rd party service) would have to pull the data from us.


Change license to Apache v2

Letting this sit for a bit, so people can think about it.
To two main benefits are:
A) It would allow nvidia/Megatron to merge our changes
B) Having two licences is unnecessarily complicated

@StellaAthena I've standardised the headers. If you happy lets merge


HTML conversion clears image alt text and original image filename

Converting to HTML clears any indication of the original image filename. Renamed images also don't correspond to the "image0, image1, etc" convention used when exporting to HTML from Google Docs, so there isn't a clean way to figure out which image file goes with which broken element.
ex, with a Google Docs filename starting with "Deploying":

The HTML export directly from Google Docs contains the alt text:
<img alt="object_id.png" src="images/image3.png" ...
Unless I'm overlooking something, preserving the alt attribute seems necessary for fixing an exported file.

Ahh, I hadn't considered using the HTML download to export the images. I can change so that the image markup would be:

so that it would match up with the files in the zipped image directory.
Thanks for filing the bug! I'll try to get to this reasonably soon.

Hi Ed and nvillahermosa, I'm mostly a silent lurker on this repo, but I
learnt something cool tonight about image markup and wanted to say thanks!
Kudos to you both and your work.
On Tue., 31 Oct. 2017, 20:37 Ed Bacher<EMAIL_ADDRESS>wrote:

Ahh, I hadn't considered using the HTML download to export the images. I
can change so that the image markup would be:

so that it would match up with the files in the zipped image directory.
Thanks for filing the bug! I'll try to get to this reasonably soon.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/evbacher/gd2md-html/issues/10#issuecomment-340946397,
or mute the thread
https://github.com/notifications/unsubscribe-auth/Ad7HBq79DtHeKURGiP80A5sBaT0Pdm6jks5sx71XgaJpZM4QNPCP
.

nvillahermosa,
Apparently, when you download a Doc as a zipped web page (along with images), Docs assigns a filename to each image and drawing to create it and put it in the images/ dir of the zip file.
Unfortunately, when we're converting a Doc to Markdown or HTML, the images and drawings do not have any file name assigned -- getAltTitle() and getAltDescription() generally return null. I'll investigate some more, but it's not going to be as easy as I had hoped :(

Well nuts! I know the default "convert" operation assigns alt text based on the original image file name, but it's unfortunate that the information isn't in there under the covers already. Thanks for taking the time to look into this, the script is a huge help.

Note that issue 49 (https://github.com/evbacher/gd2md-html/issues/49) also addresses this problem with images and the image path.

As of today's update (1.0β25), the image path is now in the form images/image1.png, images/image2.jpg, etc. However, beware that the exported zip file from Google Docs does not always have the images in the same order, so you'll still need to check that the images are referenced in the correct place in your converted doc. There does not seem to be any rhyme nor reason about the order in the exported zip file that you get from Download > Web Page.


preset-typescript ignoring tsconfig file completely

I can't make preset-typescript load our tsconfig.json file. Duplicating the setup shown in README has no effect, and I've tried even intentionally breaking the tsconfig file to be bad JSON so I would at least get an exception during parse if it's being loaded, but the entire thing is being ignored.
Any ideas in which direction I should be looking to troubleshoot this?

I had a similar issue a while ago. The reason is preset-typescript use babel-loader instead of ts-loader since v3.0.
So I went with manual setup instead of using preset: https://storybook.js.org/docs/configurations/typescript-config/#setting-up-typescript-with-ts-loader
P.S: Here is PR with README changes, hope it'll be merged soon: https://github.com/storybookjs/presets/pull/139.

The manual setup crashes for me with TS18002: The 'files' list in config file 'tsconfig.json' is empty..
It seems that the v3 has tsconfig path hardcoded now.

It seems that the preset started ignoring forkTsCheckerWebpackPluginOptions for all frameworks but vue, but it is still used under the hood.


Fix url parsing in Dragonfly::Job::FetchUrl

This fixes an edge case when retreiving files behind certain redirects. redirect_url returns a URI object which is passed to parse_url, which calls URI.parse(url). This crashes when url is not a string, but that crash is caught and url is run through Addressable::URI.parse(url). This removes percent-encoding from the url, e.g. http://example.com?q=http%3A%2F%2Fexample.org becomes http://example.com?q=http://example.org. If the webserver is not configured to treat these two urls the same the fetch will fail.
Note that it is impossible to test for this edge case with webmock since it parses urls with Addressable::URI.

If someone else happens to hit this issue before (if) this is merged, here's a monkeypatch:
module Dragonfly
  class Job
    class FetchUrl < Step
      alias_method :parse_url_orig, :parse_url

      private

      def parse_url(url)
        parse_url_orig(url.to_s)
      end
    end
  end
end

cheers 👍

cheers 👍


Dapr Reminders not firing

We are currently Dapr Actors where each actor represents a device, and when a device becomes inactive, we want to get notified.
We were looking at the docs and found out about the Dapr reminders.
Based on what we understood from the documentation here, https://docs.dapr.io/developing-applications/building-blocks/actors/howto-actors/#actor-timers-and-reminders. Reminders would get triggered in any circumstance.
We implemented this solution and this does, work, but only to a certain level. When the dueTime of the reminder is one hour or more we don't get a notification.
We do notice a delete in our monitoring after running for 50 or so minutes without any interaction. We think that might be the reason, but don't know how we entered this behavior.

Even after this "DELETE", the state in the state store is still present...
So my question is:

Are there settings to this behavior we overlooked?
Could there be another reason why reminders are not firing?
How can we fix this?

Thank you in advance!

I found the reason, it seems there was a runtime mismatch. On the k8s cluster v1.4.0 was installed. We were using SDK v1.5.0. After aligning, it seems to work!


Icc rankings scraper added

Description
Added a script for scraping ICC and getting the rankings of players as well as teams.
Fixes #2338
Type of change
Please delete options that are not relevant.

[x] New feature (non-breaking change which adds functionality)

Checklist:

[x] My code follows the style guidelines(Clean Code) of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have created a helpful and easy to understand README.md
[x] My documentation follows Template for README.md
[x] I have added the project meta data in the PR template.

Project Metadata
Example: If no requirements.txt needed/present, then type none in Requirments.
Category:

[ ] Calculators
[ ] AI/ML
[x] Scrappers
[ ] Social_Media
[ ] PDF
[ ] Image_Processing
[ ] Video_Processing
[ ] Games
[ ] Networking
[ ] OS_Utilities
[ ] Automation
[ ] Cryptography
[ ] Computer_Vision
[ ] Fun
[ ] Others

Title: ICC rankings scrapper
Folder: Amazing-Python-Scripts/Icc_ranking_scraper
Requirements: None
Script:rankings.py
Contributor:alwenpy
Description: Using this script you can get the ICC rankings of teams and players of different formats.

@avinashkranjan please review


Opening a file dialog does nothing half of the time in Windows

I'm using rfd in a larger project. In a thread separate from the main one, I'm showing a file dialog to either open or save a file when the user clicks a button. Sometimes the file dialog shows, and I can interact with it properly. But about half of the time, the dialogs don't open at all. Here's the link to the line that sometimes fails. I'll try to come up with a MWE later today or tomorrow.
I had previously tried using native-dialog, which had a similar behavior, except that instead of silently failing, it crashed with an ImplementationError("CoInitializeEx") error.
I haven't been able to test this on Linux, and this fails on MacOS due to the issue of me running this outside of the main thread in the first place.

Thanks for report.
I will investigate it when I have time, but in the meantime:
and this fails on MacOS due to the issue of me running this outside of the main thread in the first place.
This sounds like a bug, rfd supports spawning dialogs from any thread as long as there is NSApp running in your program (winit starts one for sure).

Is it really a new bug? I thought it was just the documented behavior about Sync dialogs in MacOS. Quoting from the readme:

Macos Sync dialog freezes when used with winit (same way as nfd).
I haven't tried making this an async dialog, maybe that will fix this issue. I'll report back once I get it to work.

Oh ok, I understand now.
due to the issue of me running this outside of the main thread
I just thought that you are talking about thread-safety related problems (I believe that all of them are fixed by now)
Winit bug in sync dialogs is not related to threading, it happens no meter how you spawn your dialog.
Async one should work as expected.
Sorry for misunderstanding

So, should I just never use sync dialogs? Or what are the conditions that make them trigger this winit bug, and how can I avoid it?

As far as I know, there is no way to avoid it without editing winit codebase, but I'm not winit dev, so I don't recomend this way. That's why I wrote Async dialog api

Don't know if this helps at all, but I had the same issue with native-dialog on Windows as you do, and oddly enough the solution I found was to deactivate Bevy's audio plugin.

Don't know if this helps at all, but I had the same issue with native-dialog on Windows as you do, and oddly enough the solution I found was to deactivate Bevy's audio plugin.

Huh, this seems to have fixed it. So, what's the underlying issue here? Libraries interfering with one another? Some bug in the underlying framework?

My guess is that multiple libs are trying to initialize COM at the same time.
Oh, so my initial guess was right. It's related to COM init, cpal uses multi threaded COM, and cpal is used by rodio and rodio is used by bevy to output audio.
probably it's this one:
https://github.com/RustAudio/cpal/blob/1b2469d0c1175250e1c7944b51e53f613671e987/src/host/wasapi/com.rs#L13

This would be the fix to the issue: https://github.com/rust-windowing/winit/pull/1524

This would be the fix to the issue: https://github.com/rust-windowing/winit/pull/1524

In this case the problem originates from cpal not from winit, but yeah drag and drop in winit can also trigger it.
Relevant cpal issue:
https://github.com/RustAudio/cpal/issues/572

I have a great news:
https://github.com/RustAudio/cpal/pull/597
Got merged!


Add profile to example list

Description

First of all: Thank you so much for such an amazing project. Just the other day when I was working on my github profile I wanted exactly this. Sadly that day I didn't come across this amazing project and so went through the hassle of recording a typing animation -> converting it to a gif -> uploading it to my repo -> and then finally linking it in my readme. This project makes it so much easier.
This PR adds my profile to the example list, now that I switched to use this project instead of my manually created gif. You can see two occurrences of the typing animation on my profile.
Lastly I want to ask if you (@DenverCoder1)  already have plans to work on this margin-bottom that is present within the generated svg. The generated text is not vertically aligned and even when reducing the total height of the svg, first the text exits the frame at the top before the space at the bottom is reduced. This made proper positioning my readme a little more stressful and I would be interested in looking into vertically aligning the text or creating the feature to control the vertical spacing around the text.
Type of change

[ ] Bug fix (added a non-breaking change which fixes an issue)
[ ] New feature (added a non-breaking change which adds functionality)
[x] Updated documentation (updated the readme, templates, or other repo files)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

How Has This Been Tested?
No test because just documentation update

[ ] Ran tests with composer test
[ ] Added or updated test cases to test new features

Checklist:

[x] I have checked to make sure no other pull requests are open for this issue
[x] The code is properly formatted and is consistent with the existing code style
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings

Screenshots
Because of the typing animation not really showing in a screenshot, I'm omitting a screenshot. Please have a look yourself to verify that I'm using this project in my readme: https://github.com/8BitJonny

Nice profile, and thanks for contributing! :tada:
Currently we have dominant-baseline="middle" when center is set to "true" and dominant-baseline="auto" when its not.
Maybe using dominant-baseline="middle" for both would make more sense so it's always centered vertically?

Interesting 🤔  I didn't notice that when playing around with it.
I mean, with dominant-baseline="auto" you almost have like an <h1>, <h2> kinda vibe because like them, the text doesn't have much margin-top but a lot more margin-bottom. And that makes sense. A great deal of people would use this text animation for headlines and then a general spacing to the following content makes sense.
But in my readme I already had that spacing and I think there are more of these use cases where you want to have equal margin on the top and bottom.
Maybe expose dominant-baseline="auto" as a query param and control it like valign=top or valign=center ?


Parallelisation of CreateRecalibrationTable

Hello,
Since I saw this step uses only on core on my 20 core system, I searched on GATK forum and found this:
https://gatkforums.broadinstitute.org/gatk/discussion/23453/gatk4-baserecalibrator-multithreading-not-spark

Do you think it could be something you could implement?

That does seems interesting.
I'll look into it.

You can try https://github.com/MaxUlysse/Sarek/tree/ParallelizeMore
That should be a good start in improving all that

Done on nf-core/sarek


Fix broken link

I noticed the Jetzig link in the readme was leading to a 404. I've updated it to the correct link

@DannyJJK Thanks a lot for this ! That's the old repository, it's private now since we moved to the jetzig-framework organisation.
Appreciate you taking the time to make the PR. :pray:


Update is not transparent enough

When I update Atom, what happens is the Update option turns into an "Updating" message and stays like that indefinitely. I have no way of knowing if the update is actually working, if it is done, or anything else of the sort. It is not until I close and restart Atom that it tells me I am using a new version.
A significant improvement to this would be to do one of the following:

Emulate how GitHub for Windows works--silently download the update and prompt the user to install it at their convenience

Keep the manual update process but give more information during the process such as % downloaded, % installed, prompt to reopen when done (if necessary), etc.

Include Atom updates within the package/theme update system so that you are automatically notified of an update and are provided some GUI information

My vote would probably go with option 1. It's automated and non-intrusive.

If the update is being done with squirrel then you are pretty much out of
luck.  Squirrel refuses to do anything like give progress reports.  They
say to just make the load instantaneous (LOL).  I posted an issue
for squirrel.
On Fri, Feb 13, 2015 at 2:26 PM, Landon Manning<EMAIL_ADDRESS>wrote:

When I update Atom, what happens is the Update option turns into an
"Updating" message and stays like that indefinitely. I have no way of
knowing if the update is actually working, if it is done, or anything else
of the sort. It is not until I close and restart Atom that it tells me I am
using a new version.
A significant improvement to this would be to do one of the following:

Emulate how GitHub for Windows works--silently download the update and
prompt the user to install it at their convenience

Keep the manual update process but give more information during the
process such as % downloaded, % installed, prompt to reopen when done (if
necessary), etc.

Include Atom updates within the package/theme update system so that you
are automatically notified of an update and are provided some GUI
information

My vote would probably go with option 1. It's automated and non-intrusive.
—
Reply to this email directly or view it on GitHub
https://github.com/atom/atom/issues/5554.

Well then it sounds like squirrel is a pile of expletive and should be thrown out for a competent solution. Giving users information is the most basic thing you can do. Installing Atom from scratch is annoying because it just shows an animated splash image and tells me to trust that it's actually working instead of showing me something simple like a progress bar. The progress bar doesn't even have to be very accurate, something as simple as FILES_PROCESSED / TOTAL_FILES * 100 would be enough to show that things are moving along and gives you a reasonable estimate of time.

it just shows an animated splash image and tells me to trust that it's
actually working

That is all squirrel.  I assume it's to late to ditch squirrel and use a
real installer.  I also assume there are some internal features of squirrel
that attracted the core developers.
On Fri, Feb 13, 2015 at 2:37 PM, Landon Manning<EMAIL_ADDRESS>wrote:

Well then it sounds like squirrel is a pile of expletive and should be
thrown out for a competent solution. Giving users information is the most
basic thing you can do. Installing Atom from scratch is annoying because it
just shows an animated splash image and tells me to trust that it's
actually working instead of showing me something simple like a progress
bar. The progress bar doesn't even have to be very accurate, something as
simple as FILES_PROCESSED / TOTAL_FILES * 100 would be enough to show
that things are moving along and gives you a reasonable estimate of time.
—
Reply to this email directly or view it on GitHub
https://github.com/atom/atom/issues/5554#issuecomment-74339616.

It's never too late, it just may take some serious overhauls which, in my opinion, are necessary. GitHub for Windows has a fantastic update setup and I am very surprised there is this sort of fragmentation within GitHub's own software.

This was discussed before in Squirrel/Squirrel.Windows#137 which got closed with none of the suggestions implemented (with the reason being, as @mark-hahn noted, that adding said suggestions would "inform the user just how much we suck" and the proper way to go forward was to make Atom install faster).
Also, I believe Atom is doing 1) right now.  It silently downloads the update in the background and automatically applies it when all Atom processes get closed (or when the Restart and Update button is clicked).

Whoa whoa whoa, I think we're conflating two things - most of this thread is talking about the initial install, but the initial question was about updates.
Squirrel on Windows does provide progress for updates (in the form of percentages written to stdout), but Atom doesn't do anything with this value currently. It certainly could though.

Emulate how GitHub for Windows works--silently download the update and prompt the user to install it at their convenience

This isn't how GitHub for Windows works, the update will be installed regardless of whether you choose to install it the next time the app starts. In reality, the only thing that "Install update" button in GH4W is restart the app.

GitHub for Windows has a fantastic update setup and I am very surprised there is this sort of fragmentation within GitHub's own software.

Spoiler alert: I wrote both Atom for Windows's installer, and the logic / UI interaction in GitHub for Windows.

There should be no particular difference between initial install and updates, I should be given progress data for both.
If Squirrel supports this data and Atom does not utilize it, then my issue still stands in that Atom needs to be more transparent.
I feel like silent updates are great. GitHub for Windows and Chrome both silently update and give you prompt to finalize the install, which is great for keeping up to date without forcing the user to stop what they are doing (cough, Windows Update, cough). I am totally okay with that functionality as it only makes the process faster for the user.
I am even more confused now that I know the same person wrote both systems that seem to act quite differently.

This isn't how GitHub for Windows works, the update will be installed regardless of whether you choose to install it the next time the app starts. In reality, the only thing that "Install update" button in GH4W is restart the app.

Why aren't we doing this sort of auto update-in-the-background workflow for atom? Just a "will be done later" thing?

Why aren't we doing this sort of auto update-in-the-background workflow for atom? Just a "will be done later" thing?

This is exactly what Atom does on both Mac and Windows

Atom does have background updates just like Github for Windows.
Fake edit: Beaten by Paul ;P.

I have a hard time believing that. Atom never seems to update unless I manually trigger it, and when I do so it never seems to do anything except consume a whole bunch of CPU. It just sits there and says "Updating" indefinitely without any sort of notification that it is done and needs to be restarted.

It just sits there and says "Updating"

I started using the command line a long time ago because of this kind of
annoyance.  It is a much better experience.
On Fri, Feb 13, 2015 at 3:23 PM, Landon Manning<EMAIL_ADDRESS>wrote:

I have a hard time believing that. Atom never seems to update unless I
manually trigger it, and when I do so it never seems to do anything except
consume a whole bunch of CPU. It just sits there and says "Updating"
indefinitely without any sort of notification that it is done and needs to
be restarted.
—
Reply to this email directly or view it on GitHub
https://github.com/atom/atom/issues/5554#issuecomment-74345061.

Regarding install, I would like to see the progress data shown in some way.
Regarding updates, clicking update tells me 0.182 is the latest one, which is not true as of an hour ago.

clicking update tells me 0.182 is the latest one

The delay can be up to a day or two.
On Wed, Feb 25, 2015 at 11:36 AM, Zireael07<EMAIL_ADDRESS>wrote:

Regarding install, I would like to see the progress data shown in some way.
Regarding updates, clicking update tells me 0.182 is the latest one, which
is not true as of an hour ago.
—
Reply to this email directly or view it on GitHub
https://github.com/atom/atom/issues/5554#issuecomment-76038239.

+1

Closing in favor of https://github.com/atom/atom/issues/9164


move fields to omit to config

Current behavior

in core\modules\catalog\helpers\variant\omitSelectedVariantFields.ts
two fields are hard coded to omit (just cost me 1h to figure this out^^)
  const fieldsToOmit = ['name', 'visibility']
Expected behavior

in my opinion this should be moved to config
Steps to reproduce the issue

Repository

Can you handle fixing this bug by yourself?

[ ] YES
[ ] NO

Which Release Cycle state this refers to? Info for developer.
Pick one option.

[ ] This is a bug report for test version on https://test.storefrontcloud.io - In this case Developer should create branch from develop branch and create Pull Request 2. Feature / Improvement back to develop.
[ ] This is a bug report for current Release Candidate version on https://next.storefrontcloud.io - In this case Developer should create branch from release branch and create Pull Request 3. Stabilisation fix back to release.
[ ] This is a bug report for current Stable version on https://demo.storefrontcloud.io and should be placed in next stable version hotfix - In this case Developer should create branch from hotfix or master branch and create Pull Request 4. Hotfix back to hotfix.

Environment details

Browser:
OS:
Node:
Code Version:

Additional information

Created a conifig 'omitVariantFields' inside config.products and used that instead of hard coded values.
https://github.com/DivanteLtd/vue-storefront/pull/4679/files


Updated the message shown for deactivated account

Summary

Improve styling of deactivated user DM channel footer
Ticket Link

https://mattermost.atlassian.net/browse/MM-25886
Related Pull Requests

Has server changes (please link here)
Has redux changes (please link here)
Has mobile changes (please link here)

Screenshots

@esethna Have a look at attached screenshots & let me know :)

Thank you @Vars-07
Styling looks good on the main channel view
Seeing some issues

Close Channel button is not closing the DM and returning user to previously viewed channel.
Reply thread view styling, boldface text not rendering correctly  **deactivated user**

@jgilliam17 Have fixed the RHS thread issue, for the first issue Close Channel is not working as expected, it is existing issue in master, have filed an issue for it https://github.com/mattermost/mattermost-server/issues/14968, will fix it as part of this!
Let me know :)

@sudheerDev @calebroseland, Please have a look!  :)

@calebroseland , have a look :)


Debugging AWS out-of-cluster configuration

Hi there, I'm really enjoying the project so far, thank you for having a reasonable public offering!
I'm trying to integrate AWS out-of-cluster pricing. I have gone through the steps outlined in http://docs.kubecost.com/aws-out-of-cluster.html, but it isn't being picked up (gave it a week to be sure) and I have no idea where the breakdown is. This ticket is twofold, a question and suggestion:

question - what should I be looking at to see why the costs aren't being picked up? I've gone through the steps in the link above, and I've filled in the AWS account ID, service key name, and service key secret in the "out of cluster configuration" section of the settings. I assume the other fields are default overrides (but was confused about this so it could use some explanation).
suggestion - it would help greatly if there was something similar to the "prometheus status" that gives feedback on what I am not doing / have not configured correctly.

Thanks in advance for any help you can provide!

Thanks for reporting this, James! Greatly appreciate the feedback.
When you load the Allocation page, you should see cost data available for External Costs when this integration is completed successfully. When it's not, you should see a Developer Console log like the example below.
Out of cluster cost not loaded: bigquery: dialing: google: error getting credentials using GOOGLE_APPLICATION_CREDENTIALS environment variable: open /var/configs/key.json: no such file or directory

Another helpful step is to confirm that your S3 bucket is correctly receiving data.
I completely agree that more insights/tests would be beneficial here. We'll start scoping out this work.
Let me know if you have any immediate questions around logs. Anecdotally, we've seen a number of users leave off the S3 protocol, e.g. s3://aws-athena-query-results... from their bucket name. Hope this helps.

Appreciate the quick response @dwbrown2. That got me closer (the config I left off the settings page was indeed needed), but its now silently failing. It logs nothing but External Costs still show as 0. I purposely messed up the credentials and it is the same situation. No worries, I'm going to hold off for a bit on this piece until there is maybe a more robust solution in place for setting it up.
Again, I appreciate the current offering, so please just take this as a +1 when deciding what to work next amongst your team. If you have any ideas/pointers on giving a PR for this, I'd be open to looking at it as time permits.

Of course, we'll start investigating diagnostic/reporting improvements now.
As a favor, would you be able to share output from your outOfClusterCosts API request on the Allocation page? The api request would look something like this:
http://<you-service-address>/model/outOfClusterCosts?start=2019-11-3&end=2019-11-4&aggregator=namespace

Also, this data is cached for up to 5m so your bad configuration may not actually be failing silently.

Good point, I just came to the same conclusion : )
Got this working! Had to debug manually through AWS athena dashboard to read each failed query message (turns out AWS creds were right all along) and address issues as they came up. The ultimate issue ended up being that I had the wrong Athena table name and had to create an additional bucket (the csv output bucket, aka aws-athena-query-results-*), which its not clear to me when I would have done so when following the instructions.
So a couple takeaways:

Out of config updates should bust the cache and/or reload (from top right of UI) should ignore cache
Being able to surface the errors shown when viewing the Athena query history in the kubecost UI would be immensely helpful. I'm not sure if this is possible or not with the AWS api.
I think the out-of-cluster instructions or the code are missing something regarding creating the s3 bucket aws-athena-query-results. The IAM role definition says it can create the bucket (so I assume it would "just work" without manual bucket creation), but looking through the code it doesn't appear to try to do so, so I manually created it. Should the end user create it or should the go service do so?
As already stated, something similar to the really useful prometheus status would go a long way to narrowing down what remains to be fixed when setting this up.

Hope this helps your team / anyone else going through the process.

James, this is incredibly helpful. Thanks so much for sharing.

Completely agree -- work to change this is underway
Also agree -- we're investigating what's possible now
We'll clarify that manual bucket creation is needed
Great idea -- we'll see what we can get from 2) and look to create something here.

All this feedback feels spot on to me -- thanks again! Anything else we can get you while we start making progress on this?

Haha, no you've been more than helpful. My out-of-cluster is all set now so I'm good, just hope to alleviate issues for future users / future me. Appreciate the responsiveness!

Many of these issues have been addressed on GCP but we're working on support for AWS. @J-Swift
Anything else we can get you here?

When using the kubecost cost-model pod, I am able to perform AWS out of cluster cost queries via the http API but they do not run automatically? should the pod not run the AWS out of cluster queries automatically on startup (like it does for RI's) and then export them as prom metrics? Cheers, apologies if this is the wrong place to ask

@natefear I know this occurs in the free version of available http://docs.kubecost.com/install, but I'm not sure about open source. Want to email<EMAIL_ADDRESS>and we can help find the right solution?

cheers @dwbrown2 I've contacted the kubecost support slack channel :)

Visiting "/diagnostics.html" should give a good idea about AWS configuration now.


Getting “Bad id ” when selecting a class, even after adding remote site settings

I am getting the bad id error on different lines. I added the remote site and also compiled all the classes.

I am still looking for the solution.


improve readme

The readme currently features a lot of benchmark pictures but no code example.
Adding a separate benchmark file (linked in the readme) and scaling down to one picture plus one or two typical use case examples in the readme would make the library easier to use.

I definitely agree. I will probably work on making the README more useful later today. I will split the benchmarks into their own markdown file.

Going to do this now. Ended up being more busy yesterday than expected.

I ended up not only improving the README, but I also just made floats much faster due to SIMD impls and also added some fixed size floating point impls as well for completeness and ease-of-use. That makes the examples tidy.


Can I run this image locally without lambda?

I want to test my project locally before pushing it to lambda.
This seems to be running on lambda but not when running locally.
Is it possible to run this image locally?

How about this?
https://github.com/umihico/docker-selenium-lambda/issues/44#issuecomment-1036001209


Move CI to Apache infrastructure

Move the currently used Gitlab CI setup to Jenkins or Github Actions to make CI work in the Apache infrastructure
Imported from Jira STREAMPIPES-18. Original Jira may contain additional context.
Reported by: riemer.

Closing the issue as it is inadvertently in "open" status due to migration from JIRA.


determine line endpoints for arc between two circle segments

that means: divide circle segments into n positions

equivalent to finding the points on a circle with given center and angle...
described with the parametric equation of the circle:
http://www.mathopenref.com/coordparamcircle.html


Remove TSLint as an option

What problem does this feature solve?
TSLint is now deprecated
What does the proposed API look like?

We should remove code associated with TSLint
We should close all issues related to TSLint

Query with all open TSLint issues and pull requests:
https://github.com/vuejs/vue-cli/issues?utf8=✓&q=is%3Aopen+tslint


feat(RDGRS-752): Chisel update

Jira Issue
RDGRS-752

I will provide more evidences that its ok then I request the review


TCP connection reuse in building new wavefrontreporter

This request accommodate changes to build a new wavefrontreporter with existing wavefront connection. (There are chances that tcp connection might be exhausted while sending multiple metrics to server with change in reporter level point tags and building a new client everytime. This code will take care of reusing existing connection while building a new wavefront reporter.)

@panghy Please review it .

@panghy I have accommodated your comments in last commit !

Thank you for quick response @panghy


Are there examples for SageMaker Studio?

The example scripts here seem to all be out of date for SageMaker Studio. For example, the $HOME directory is /home/sagemaker-user in Studio.
I'm trying to follow https://aws.amazon.com/premiumsupport/knowledge-center/sagemaker-python-package-conda/ in order to create a persistent, custom conda environment that I can select.
Can anyone suggest the proper script?

+1 on this issue.
The start up script support for sagemaker studio is very bad. The how-to guide is only meant for sage maker instances.
There is no clear documentation on how to even add a start-up script to sage maker studio instances.... as the lifecycle scripts for sagemaker instances do NOT show up.
AWS really needs to support studio more with basic features. Why is it so complexto even create a virtual env for datascience? Make it a UI rather than make us jump through 10 hoops and start up linux scripts.......

This repo is specific for SageMaker Notebook Instance, for Lifecycle config examples on SageMaker Studio check out https://github.com/aws-samples/sagemaker-studio-lifecycle-config-examples


Environment variable consolidation

At the moment we have tons of redundant environment variables that do not make sense IMHO.
For example we configure  OCIS_LOG_LEVEL, OCIS_LOG_PRETTY, OCIS_LOG_COLOR, OCIS_LOG_FILE for every service.
It would be sufficient to define three of them (OCIS_LOG_PRETTY, OCIS_LOG_COLOR and OCIS_LOG_FILE) globally and just define a log level per service. This also applies to other variables and variable groups (e.g. Debug, RevaGateway etc.).

/cc @micbar && @mmattel

The reason for different prefixes is to allow changing the configuration of individual services when running in a single process.
We shoud phase out as many service specific variables as soon as possible. But they will need to stay in for backwards compatability.
I'm looking at the ServiceAccountsID env var which is another special case as every service should use a dedicated service account id. but then the settings service needs to know all accounts...

The reason for different prefixes is to allow changing the configuration of individual services when running in a single process.
We shoud phase out as many service specific variables as soon as possible. But they will need to stay in for backwards compatability.

Already possible, using our deprecation system, it would be awesome if we could get rid of that with 6.0. It would be desirable to have only one variable per annotation and move global vars to ocis-pkg

I'm looking at the ServiceAccountsID env var which is another special case as every service should use a dedicated service account id. but then the settings service needs to know all accounts...

:+1:

And we need to clarify how config parsing works in the docs https://owncloud.dev/ocis/config/

UP


Update Windows build.cmd script with .NET Core / .NETStandard build and test targets

Implemented with last wave of commits merged with #117


MapEngine should be split into MapEngine and MapViewer

The MapEngine class could use some slicing up into two smaller classes - one to do map processing staticly and another to show the map in any kind of context.

some difficulties come up with static-vs-non-static things so i'm opting out of that.


(SP:2) Implement "GetLessonById" endpoint

Description
The objective of this task is to implement an endpoint that retrieves a single lesson by its unique identifier (ID). This endpoint is crucial for enabling users to view detailed information about a lesson. It involves creating the route, controller logic, service logic, writing tests for the endpoint, and documenting it in Swagger.
Requirements:

Route:

Create a GET route /lessons/:id that extracts a lesson's ID from the route parameter and retrieves the corresponding lesson details.

Service Layer:

Develop a service function that takes a lesson ID, validates it, checks for the existence of the lesson in the database, and returns the lesson details. If the lesson does not exist, an appropriate error should be thrown.

Controller:

Implement a controller function that captures the lesson ID from the route parameters and invokes a service function to retrieve the lesson data. This function must appropriately handle and respond to errors, including not found errors, with the correct HTTP status codes.

Tests:

Write tests to cover successful lesson retrieval, retrieval of a non-existent lesson, and handling of invalid lesson IDs. Ensure the tests validate the response structure and HTTP status codes.

Swagger Documentation:

Update the Swagger documentation to include the "GetLessonById" endpoint, detailing the request path, expected parameters, response codes, and a description of the response body.

Error Handling:

Implement comprehensive error handling to manage database errors, non-existent lessons, and invalid ID formats, providing clear and appropriate feedback to the client.

Security and Permissions:

Verify that any necessary authentication or authorization checks are in place to ensure that lesson details are only disclosed to authorized users.

done


Checksum calculation different since 4.25.1

Search first

[X] I searched and no similar issues were found

Description
This change set worked from 2018 with versions up to 4.25.1. From4.26.0 the checksum calculation changed.
        <changeSet id="example-1" author="example" contextFilter="schema-set-name">
		<comment>Example</comment>
		<sqlFile path="example.sql" relativeToChangelogFile="true"/>

		<modifySql>
			<regExpReplace replace="(\s)${schemaname}\b" with="$1${schemaname}"/>
		</modifySql>
	</changeSet>

example.sql
CREATE FUNCTION ${schemaname}.example(...)
     RETURNS TABLE
     (...) AS $$ .... $$

Before the checksum was calculated over the change set and every schema had the same checksum.
I looks like that after 4 .25.1 the property values are replaced in  or  with the value and then the checksums are calculated. Which results in a different checksum for every database schema.
To fix this. A <validCheckSum> needs to be added for every schema. Or the checksum needs to be removed from the databasechangelog table for these change sets in every schema.
Steps To Reproduce
Run the changeset where the propertie ${schemaname} is filled with the datbase schema name for multiple schemas with 4.25.1 and then rerun with 4.26.0 and it will fail on validation because the checksum is different for every schema.
And example.sql is some CREATE FUNCTION ${schemaname}.example() AS $$ .... $$
        <changeSet id="example-1" author="example" contextFilter="schema-set-name">
		<comment>Example</comment>
		<sqlFile path="example.sql" relativeToChangelogFile="true"/>

		<modifySql>
			<regExpReplace replace="(\s)${schemaname}\b" with="$1${schemaname}"/>
		</modifySql>
	</changeSet>

Expected/Desired Behavior
Liquibase should do a checksum upgrade when the method of calculation changes
Liquibase Version
4.26.0
Database Vendor & Version
PostgreSQL 16
Liquibase Integration
Spring
Liquibase Extensions
No response
OS and/or Infrastructure Type/Provider
No response
Additional Context
We extend SpringLiquibase to set the schemaname based on the contextFilter. For some context the change set would run multiple times every time for a different schema
Are you willing to submit a PR?

[ ] I'm willing to submit a PR (Thank you!)

Hi @erik-meuwese-topicus, thank you for reporting this issue.
I need some more information in order to test it more effectively.

What version(s) of Spring are you using?
Could you share the portion of code where you're setting the schema name based on the context filter?

Thank you,
Tatiana


[LandLord] Master command ticket

I and a fellow player CptCovenant have found some bugs and command issues with the LandLord Plugin. The issues so far are:

/t demote player (can not demote players)
/plot create open (so outsiders can claim plots)
/outpost list (only shows one page of outposts. If you have a bigger town with more outposts you cant view them)

please Dm me on discord for more information
Kind regards,
Nuking_Lizards

when i try to bring up the outpost list i get this error code. the rest of the town have this problem as well.

when i try to bring up the outpost list i get this error code. the rest of the town have this problem as well.

https://github.com/ObliqueNET/Server/issues/944
Kicking offline (uncached) player. Will need to test the error in console first. Closing linked ticket in favour of masterticket.

https://github.com/ObliqueNET/Server/issues/944
Kicking offline (uncached) player. Will need to test the error in console first. Closing linked ticket in favour of masterticket.

For the plot create bug, the price is meant to come before the "open" option. Not a bug, just misunderstanding the command

For the plot create bug, the price is meant to come before the "open" option. Not a bug, just misunderstanding the command

For the plot create bug, the price is meant to come before the "open" option. Not a bug, just misunderstanding the command

Seems to work please update command list:
https://github.com/ObliqueNET/Server/wiki/Landlord-Commands
/plot create open (price) - Creates a plot for the anyone, even outsiders from a town, to purchase.

For the plot create bug, the price is meant to come before the "open" option. Not a bug, just misunderstanding the command

Seems to work please update command list:
https://github.com/ObliqueNET/Server/wiki/Landlord-Commands
/plot create open (price) - Creates a plot for the anyone, even outsiders from a town, to purchase.

I've fixed the documentation error, thank you

I've fixed the documentation error, thank you

Cannot use multiple outposts cause of no second page when we have the ability to make more

Closing this, as all of this has been patched as far as I'm aware.


Update repo references to documentation, issue_tracker in manifest.json

Current version of custom_components/egauge/manifest.json points to a repo that doesn't exist.  HASS users get a 404 error when clicking on documentation and issues.
{
"domain": "egauge",
"name": "eGauge",
"codeowners": ["@neggert"],
"config_flow": true,
"dependencies": [],
"documentation": "https://github.com/neggert/egauge",
"iot_class": "local_polling",
"issue_tracker": "https://github.com/neggert/egauge/issues",
"requirements": ["egauge-async==0.1.2"],
"version": "0.4.1"
}
Should be updated to:
{
...
"documentation": "https://github.com/neggert/hass-egauge",
...
"issue_tracker": "https://github.com/neggert/hass-egauge/issues",
...
}

This should be resolved with the 0.5.0 release. Let me know if you're still seeing any issues after updating.


UniFi device tracker restore clients

Breaking Change:

Description:
If HASS is restarted and a client isn't a part of the active clients list (~30 minutes offline from network) an entity will not be created until it is a part of the active clients list.
Related issue (if applicable): fixes #
Pull request with documentation for home-assistant.io (if applicable): home-assistant/home-assistant.io#<home-assistant.io PR number goes here>
Example entry for configuration.yaml (if applicable):

Checklist:

[ ] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.
[x] I have followed the development checklist

If user exposed functionality or configuration variables are added/changed:

[ ] Documentation added/updated in home-assistant.io

If the code communicates with devices, web services, or third-party tools:

[x] The manifest file has all fields filled out correctly. Update and include derived files by running python3 -m script.hassfest.
[x] New or updated dependencies have been added to requirements_all.txt by running python3 -m script.gen_requirements_all.
[x] Untested files have been added to .coveragerc.

If the code does not interact with devices:

[x] Tests have been added to verify that the new code works.

@MartinHjelmare other thoughts?

Ok when tests pass?


Document nastring parameter of writetable

We have docs in two places, with the original being the directory with rst files that you updated. We also have a newer Markdown version where the recent documentation updates have been made. It'd be best to add your change (also or instead of) in the following file:
https://github.com/JuliaStats/DataFrames.jl/blob/master/docs/io.md
It's also be nice to put some or all of the detail in that part of the docs into docstrings for readtable and writetable.

Thanks! The Travis CI failure on Julia nightlies is unrelated.


Custom Enemy Draw Priority's / Draw behind tiles

Sometimes i want an enemy to always be behind another have a priority or layer system would be great.
Also it would be great if their was a way to make enemies appear behind tiles.

Currently draw priority uses age, so it's possible to keep them in order pretty predictably. However, a more precise system would be useful too. Typically you can use scissors to mimic appearing behind tiles, but sometimes that doesn't cut it.


IPython warning

Issue Description
Is there any reason why the IPython warning could not be lazily imported into the function that requires it? This isn't a bug, more of an annoyance to see the warning when the function that requires it isn't used.
File: shap/plots/_image.py
Function: image_to_text
Minimal Reproducible Example
import shap

Expected Behavior
No IPython could not be loaded warning in the terminal.
Bug report checklist

[X] I have checked that this issue has not already been reported.
[X] I have confirmed this bug exists on the latest release of shap.
[X] I have confirmed this bug exists on the master branch of shap.
[X] I'd be interested in making a PR to fix this bug

Installed Versions
0.42

Thanks for the issue! I made a draft PR to explore how we could fix this.
Apologies, I just noticed you ticked the "I'd be interested in making a PR to fix this bug" checkbox. Happy to leave it to you if you would like to raise your own PR. Or, I'd be grateful for a code review on my draft.

Thanks for the issue! I made a draft PR to explore how we could fix this.
Apologies, I just noticed you ticked the "I'd be interested in making a PR to fix this bug" checkbox. Happy to leave it to you if you would like to raise your own PR. Or, I'd be grateful for a code review on my draft.

No worries. All good, will go have a look!


How to get the jar file?

Gradle import and compilation is giving a lot of problems, please can you provide the jar file. Thanks

I just extended yesterday the README to let you configure your project using this library through Maven and by downloading the aar directly for non-Gradle users.
Note this is an .aar and not a .jar file in order to package Android resources files in it.
Please kindly let me know if you managed to get your project working.

Hi StephenVinouze, I am not using maven, I am using normal gradle given in Android Studio.
I added dependency in my gradle file as
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:23.0.0'
compile 'biz.kasual:materialnumberpicker:1.1.0'
}
As for as I know Gradle would pull the library from the artifact. But its not pulling for some reason. Is the artifact down?? Please help!

I just tried it on a dump project and it worked...
Can you give you the stack error?
Also do you have at least this configuration in your root build.gradle file :
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.3.0'
    }
}

allprojects {
    repositories {
        jcenter()
    }
}
```

There is no stack error, it is building and compiling again. But when I try to import it in my files, its showing as empty
import biz.kasual.materialnumberpicker.MaterialNumberPicker;
In the above import it says that cannot resolve 'MaterialNumberPicker'

And yes my build.gradle has the above code you mentioned

Hey I tried it on sample project and it worked their. There is something wrong in my project configuration it seems!!

I don't know what causes this error. Can you check if at least the dependency has been downloaded in your external dependencies panel? If it is present then there is some misconfiguration in your project unrelated to the library.

Ok then just let me know when you find what caused your problem so that I can clause this issue

I dont know the problem. Basically my android studio was not resolving any dependency at all for some reason. So its a very specific issue related to my system. I reinstalled android studio and its working now. Thanks for all the responses and help!


Use overriden storm process in console commands

Depends on https://github.com/wintercms/storm/pull/175
Use our overriden Process class that will warn users when open_basedir restrictions are in effect, and let the process be created without TTY mode enabled.

Fixed upstream in Symfony/Process


Error when uploading text file through multipart request

I've setup my route to accept file uploads
@app.Route("/private/file", methods: const [app.POST], allowMultipartRequest: true)
@Encode()
Future<IdResp> newFile(@app.Attr() MongoDb dbConn, @app.Body(app.FORM) Map form) async

and it works fine for most file types except "text" files like .txt or .xml. I specifically need to upload an xml as a normal file to store it in GridFS so my clients can download the file later. I am getting this error
type 'String' is not a subtype of type 'List' of 'content'.

package:redstone/src/http_body_parser.dart 12:60     HttpBodyFileUpload.HttpBodyFileUpload
package:redstone/src/http_body_parser.dart 71:26     _parseRequestBody.asFormData..
dart:async                                           _StreamController.close
package:mime/src/bound_multipart_stream.dart 308:42  BoundMultipartStream._parse
package:mime/src/bound_multipart_stream.dart 109:24  BoundMultipartStream.BoundMultipartStream..
dart:isolate                                         _RawReceivePortImpl._handleMessage

It seems that its interpreting the file as a String.

If the form element was read as a String, then the request is not multipart, or the corresponding form element is a text input, not a file input. Check if the form used to upload the file has the enctype='multipart/form-data' attribute, and the corresponding element is a file input.

@luizmineo Sadly enctype is multipart/form-data and the input is of type file. Somewhere along the way its converting text files to string.
<form class="panel" enctype="multipart/form-data">
    <input name="file" type="file"><br>
    <button class="button tiny radius" ng-click="uploadModel (info, 'xml', $event)">
        Upload
    </button>
</form>

I am doing something like this to send the form
HttpRequest.request
(
    path,
    method: method,
    sendData: new dom.FormData (form)
)

where form is the FormElement.

You are right. text files are being converted to strings. To keep compatibility with the http_server package, I've changed HttpBodyFileUpload.content to dynamic. This fix is available in Redstone v0.5.21

Hadn't seen this. Thanks a lot!!! I'd been creating extensionless files as a fix. Will test right now :)

@luizmineo The .content problem was solved, but now I am getting a similar problem when trying to upload an xml
type 'String' is not a subtype of type 'List' of 'data'.

Now .data is the problem.

Can you try this in v0.6.0-beta.1?

@luizmineo Ok, I'll get that version. Any braking changes?

Yes. Check the changelog for details


.transition is undefined

Steps to reproduce

Use Nucleus Dark UI
Enable tablr

Expected
Tablr should load successfully.
Actual
Error compiling Less stylesheet: /Users/kaplund/.atom/packages/tablr/styles/tablr.less
Line number: 75
.transition is undefined

.transition is undefined in /Users/kaplund/.atom/packages/nucleus-dark-ui/styles/buttons.less:75:2

LessError: .transition is undefined
  at /Users/kaplund/.atom/packages/nucleus-dark-ui/styles/buttons.less:75:2

See also #50, which Atom mistakenly thinks is the same issue. ("The error was thrown from the tablr package. This issue has already been reported.")

This issue seems to come from the fact that I relied on the buttons.less file from the theme. It appears the version from nucleus-dark-ui relies on the fact that the mixins it requires are imported beforehand, which is not the case when I import it. I'll remove the import and use the .btn class directly in the markup instead.


Non fixed pixel widths for slide out padding

Looks like the current options only allow for a 'px' based width on the menu?
A superior way to handle this would be to allow for other units like 'vw' so we could do something like:
padding: 80vw
As of now we're stuck with the same menu with on all devices.

It's not the prettiest solution, but you could use something like
var slideout = new Slideout({
    'panel': document.getElementById('panel'),
    'menu': document.getElementById('menu'),
    'padding': Math.floor(window.innerWidth * 0.8),
    'tolerance': 70
});


fix: The month-end cronbackup cannot be edited

Signed-off-by: Liucw<EMAIL_ADDRESS>
What type of PR is this?
/kind feature

What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes https://github.com/kubeclipper/kubeclipper/issues/365
Special notes for reviewers:

Does this PR introduced a user-facing change?

None

Additional documentation, usage docs, etc.:

@zhuzhenfan @x893675

/lgtm

/approve

/cherrypick release-1.3


[FEATURE] add a deck to the game.

🚀 Feature
a deck of 40 (there are 50 cards in the Spanish deck but TRUCO uses 10 less, leaving out Jokers, 9s and 8s) cards from which the player can draw cards.
Motivation
the player needs to draw new cards to play the game.
Implementation
The cards should be randomly assigned to the players from a list of all 40 cards

(edited), original issue:
🚀 Feature

(Write your description here)
a deck of 50 cards from wich the player can draw cards.
Motivation

(Outline your motivation here)
the player needs to draw new cards to play the game.
Implementation

Additional context
Add any other context or screenshots about the feature request here.


Fix duplicate entry in bors.toml

Also, sort the entries alphabetically, since that's how Github displays
them.

Let's see if bors tries to use the bors.toml from this PR or from the master branch.
bors r+


feat: able to use a custom resolver

closes #13

Codecov Report

Merging #26 into master will increase coverage by 0.07%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #26      +/-   ##
==========================================
+ Coverage   98.75%   98.82%   +0.07%
==========================================
  Files           1        2       +1
  Lines          80       85       +5
==========================================
+ Hits           79       84       +5
  Misses          1        1

Impacted Files
Coverage Δ

src/get-resolver.js
100% <100%> (ø)

src/index.js
98.76% <100%> (+0.01%)
:arrow_up:

Continue to review full report at Codecov.

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


update meta for ansible galaxy

Closes: https://github.com/ceph/ceph-ansible/issues/1637
Signed-off-by: Sébastien Han<EMAIL_ADDRESS>

@alfredodeza @andrewschoen do you think Ansible 2.3 is too strict? I just blindly put the version we test in the CI.

@andrewschoen thanks!


Determine what changes need to be made in uniswap's merkle distributor scripts and contract

This is an initial spike, though as implementation is carried out, more changes may be brought to light.
Ideally no changes need to be made to the smart contract.
The scripts involve taking a json of addresses mapped to balances (in our case rewards) and converting that into a merkle tree. Not included in this repo is the scripts to scrape chain data. Those will need to be written from scratch.

@asaj Determined no work to be done


Ember Client keeps half-closed connection after server sends FIN-ACK through an idle connection

See the analysis in #4798 (which shows that ember exhibits the same problematic behaviour as blaze)

Closed by #5064


[Agreements] Add Back NI.ni-packagemanager

@denelon @stephengillie
Microsoft Reviewers: Open in CodeFlow

This manifest contains a term that is blocked:

Trenly wants to merge 1 commit into microsoft:master from Trenly:NIPMEula    Silent: --quiet --accept-eulas   SilentWithProgress: --quiet --accept-eulas   - AgreementLabel: End User License Agreement (EULA)

(Automated response - build 763.)


Clear or preserve logs

Would be nice if we had the option to clear or preserve the logs (this is already implemented) when a user navigates to another page.

This will be available in the next release.


What does a force of 1 mean in matter.js?

I mean is it 1 pixel per millisecond or what. When I apply a force of "1" to a shape it moves so fast that it disappears from the canvas! Even if it hits a static shape like a floor, it seems to penetrate through. I always have to use decimals with Matter.Body.applyForce. But now I need to create a functionality where enough vertical force is calculated and applied so that the shape reaches the same height from its current position as my cursor so I really need this.

Yeah, the context of these values in the documentation is something I've struggled with.
Most things seem to expect a value of 0 to 1, though what "1" means is kind of ambiguous.

Applying a force is not the same as just setting velocity, the result depends on:

magnitude of the force
direction of the force
position the force is applied
duration the force is applied (e.g. for a single step or multiple since acceleration takes time)
mass and position of the body
scale of rendering

Most things seem to expect a value of 0 to 1, though what "1" means is kind of ambiguous.

Not sure what you mean, this isn't the case with any functions I can think of?

Matter.Body.applyForce() is kind of vague on what sort of values it expects as a vector. Like, right now, I try to apply it to a Matter.Bodies.circle() with a radius of 15 in a Matter.World with 0 gravity, and every frame of a game I'm applying a vector of (0.0005, 0.0005) if a gamepad is pressing a direction button to move it. And I'm not really sure what that means to be honest? But it takes that small amount of force to just move it at a rate of I dunno, something like 100 pixels a second. If I applied a force anywhere close to (1, 1) on that object, it would fly off screen immediately. So I'm not sure what "1" means in that scenario, I have no baseline.
As for other ranges of 0 to 1, well, I was using Matter.Composites.chain() and it took me ages to figure out what the offset parameters are. It seems like 1 corresponds to the absolute height or width of the composite's bounding boxes? I gave up using it and made a chain myself because it took so long to figure out and didn't fit my use case.
A constraint stiffness appears to max out at 1, but that's not too crazy. Though if it doesn't max out at 1, I'm not sure what over 1 would imply.
I was using Matter.Bodies.trapezoid() and it appeared the "slope" argument maxed out at 1 before exhibiting weird behaviour (side note: it's really annoying how adjusting the slope argument messes up the height).
Looking at the demo page, a few other values max out at 1 on the sliders, like restitution, friction, x and y gravity. Some of the other values there max out at weird values like 0.001, 0.01, 0.1, and 10 (?), with no context, so it's hard to conceptualize what they mean. And since most of those values are under 1, and values over 1 usually cause odd behaviour, I just started assuming that was a normal pattern? Is it not?

It just takes a vector of any magnitude, the result of the force depends on the mass of the body you apply it to (among the other things above). Note that the signature is Matter.Body.applyForce(body, position, force) too where the position is in world-space. In your case it sounds like you should use the body centre of mass e.g. Matter.Body.applyForce(body, body.position, force) which means there will be no rotation too.
I think if you want to make the force seem 'constant' for all bodies (like gravity) then you should multiply it by the body's mass first e.g. Matter.Body.applyForce(body, body.position, Vector.multiply(force, body.mass)). Either way, often forces are not the best solution and instead you should directly control velocity instead like in the body manipulation example.

As for other ranges of 0 to 1, well, I was using Matter.Composites.chain() and it took me ages to figure out what the offset parameters are.

Yeah the docs are lacking here, but you're right that's how it works.

A constraint stiffness appears to max out at 1, but that's not too crazy. Though if it doesn't max out at 1, I'm not sure what over 1 would imply.

Sort of. It's possible to use values over 1 but it will quickly become more unstable. The reasons why are not straightforward to explain though!

Looking at the demo page, a few other values max out at 1 on the sliders, like restitution, friction, x and y gravity. Some of the other values there max out at weird values like 0.001, 0.01, 0.1, and 10 (?),

These are really just chosen as 'sane' values through trial and error. That's really what it comes down to in many cases because there are so many variables combined with limited stability ranges. Also some concepts can be a bit counter-intuitive by nature, especially when it comes to friction. Game engines usually do a lot of work to make these things easier to use!

The reason this happens is because the force calculation uses deltaTime which is in milliseconds rather than seconds. So https://github.com/liabru/matter-js/blob/master/src/body/Body.js#L639 is multiplying by milliseconds squared rather than seconds squared. In order to correct for this, you should divide by 1,000,000


Adding new SlideMenuOptions bools to allow disabling of pan or tap gestures

This is an updated version of PR #201 now that swift3 release is out.
In my current project I have many viewControllers where I do not want the left menu accessible, or viewControllers that use a map or other UI that need left/right swiping. Rather than having to individually remember to removeLeftGestures() in each viewController (and loose the tap to dismiss gesture in the process) – it made far more sense for me to have a boolean in the options to just globally prevent the pan gesture from being init'd. Net result is that I can rest assured the pan wont cause my users problems, and I still get to keep the tap to dismiss which I very much still wanted. On the chance that some other developer was interested in disabling the tap gesture (or both), I went ahead and added a boolean for the tap gestures as well. Options defaults are of course set to enabled/true so no impact to anyone already using this, but the options are now there for those who are interested in them.

It is good :octocat:


Logging correct params from ApplyFeatureTable catch

Expected Behavior
No biggie: Logging correct project name and table name order when ApplyFeatureTable request is wrong.
core_1  | 2021-02-23 17:54:55.355 ERROR 001d9c591f60 --- [ault-executor-6] f.c.g.CoreServiceImpl: ApplyFeatureTable: Invalid apply Feature Table Request: (name: default, project: Driver Statistics)

Current Behavior
The table name is printed in the place of the project name, here and here
Steps to reproduce
Specifications

Version: gcr.io/kf-feast/feast-core:develop
Platform: docker

Possible Solution

Thanks @amommendes!


switching vagrant to use cli remote mode

On windows using vagrant can't create soft links to the windows filesystem.
Making deployment use remote CLI download
Closes #3649
Description
Related issue and scope

[x] I opened an issue to propose and discuss this change (#3649)

My changes affect the following components

[ ] API
[ ] Controller
[ ] Message Bus (e.g., Kafka)
[ ] Loadbalancer
[ ] Invoker
[ ] Intrinsic actions (e.g., sequences, conductors)
[ ] Data stores (e.g., CouchDB)
[ ] Tests
[x] Deployment
[ ] CLI
[ ] General tooling
[ ] Documentation

Types of changes

[x] Bug fix (generally a non-breaking change which closes an issue).
[ ] Enhancement or new feature (adds new functionality).
[ ] Breaking change (a bug fix or enhancement which changes existing behavior).

Checklist:

[x] I signed an Apache CLA.
[ ] I reviewed the style guides and followed the recommendations (Travis CI will check :).
[ ] I added tests to cover my changes.
[ ] My changes require further changes to the documentation.
[ ] I updated the documentation where necessary.

Codecov Report

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

@@           Coverage Diff           @@
##           master    #3651   +/-   ##
=======================================
  Coverage   74.49%   74.49%
=======================================
  Files         126      126
  Lines        5990     5990
  Branches      390      390
=======================================
  Hits         4462     4462
  Misses       1528     1528

Continue to review full report at Codecov.

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


Direct file downloads in folder interface upgrade

On the pre-folder interface deployment it was possible to hover over a file download button and see the URL at the bottom of the browser and right click to  copy link location to build direct URL's to files in resources.  This functionality I used in building a web page for my class that used direct links to students work - see http://hydrology.usu.edu/dtarb/giswr/2016/students.html.  In the new folder interface currently deployed on beta (and scheduled for roll out next week) this functionality is no longer there.  One has to right click on a file to download, but cannot see what the direct download link is or copy the link location using browser functionality.  The links to direct fiels still work.  There is just no way to discover this capability.  I would prefer a simpler download button or link to click that retained this standard browser copy link and showing the URL functionality.

@dtarb, how about a right click menu item "Copy file URL"

I am OK with that, but it does seem that there used to be a more common web approach that handled things naturally as html links the way browsers commonly work.  Now you are rewriting some of this to work differently.  If either the icon used to show the file, or its name was just made into html hyperlink text with the URL linked you would not have to do the work of building a new right click item.

@dtarb - If there is a right click required already to get the URL, I'm not sure how this is really different. When I hover over the download link in the pre-folder version (the little circle with the down arrow), I do see the URL at the bottom of my browser. That would be the only thing that has been lost. You have to right click on the download button to get the link anyway.
I think if we added a "Copy Link" or "Copy file URL" on the right click on a file it would actually be better on the new interface because the right click would be on the file icon rather than the download button.

I am OK with either of these as a solution.  I do worry though that this is functionality that the browser used to do and now we are taking on the burden of having to do it ourselves for all browsers we support.

Checked on beta.


about openpose?

Can openpose produce 3d keypoints from single RGB video?

OpenPose supports single-person 3D key-point detection if your RGB video is of good quality.


parquet-compression for lgbm

initial try for a parquet compression implementation
this is a draft!
core idea:

create dataframe / table-like structure from tree information
encode with a custom pyarrow schema
write arrow Table into parquet-File, piggybacking (🐷 ) off of pyarrow/parquet's compression tools and efficient data format
instead of writing to a file, write into bytes object that then gets put into the pickle

todos:

[x] implement dumping
[x] implement loading
[ ] remove pandas inter-dependency
[ ] fix tests
[ ] validate effect of compression on the table (i.e. not on the pickle, though that should help as well)
[ ] speeeeeeed

As discussed with @pavelzw today, how about splitting the non-Parquet parts into a separate PR? It's annoying that Parquet doesn't improve the compression ratio despite the effort that you have put into this @YYYasin19. But let's make the best out of it by keeping the other parts!