Fixed upstream testing workflow

Closes #DNE
What's Changed
Fix upstream testing workflows showing successful when one of the steps fail

Screenshots
Before
https://github.com/nautobot/nautobot-app-ssot/actions/runs/8610217927

After
https://github.com/gsnider2195/nautobot-app-ssot-gha-test/actions/runs/8724938540

https://github.com/gsnider2195/nautobot-app-ssot-gha-test/actions/runs/8725146406

TODO

[ ] Explanation of Change(s)
[ ] Added change log fragment(s) (for more information see the documentation)
[ ] Attached Screenshots, Payload Example
[ ] Unit, Integration Tests
[ ] Documentation Updates (when adding/changing features)
[ ] Example App Updates (when adding/changing features)
[ ] Outline Remaining Work, Constraints from Design

@bryanculver do you see any issues with this? You're the expert on this workflow 😄
For reference: https://www.edwardthomson.com/blog/github_actions_6_fail_fast_matrix_workflows.html

A concern as I understand it was whether failures in repo A would cause runs in-progress in repo B to be auto-cancelled instead of running to completion. Have you been able to test that behavior?

A concern as I understand it was whether failures in repo A would cause runs in-progress in repo B to be auto-cancelled instead of running to completion. Have you been able to test that behavior?

I'm not seeing anywhere in our upstream testing where we could affect the workflows of another repository

The only side-effect I can forsee (which may have arisen from testing) is that any task trying to be run after the matrix (either here or in the use of this, see: https://github.com/nautobot/nautobot-app-ssot/blob/479d77feb1ca75216f1ab41611d4211778e3e3bc/.github/workflows/upstream_testing.yml#L8-L13) would not be allowed to run.
But my memory is fuzzy on what or why this was put in so 🤷. If it wasn't documented it must not be important.

The only side-effect I can forsee (which may have arisen from testing) is that any task trying to be run after the matrix (either here or in the use of this, see: https://github.com/nautobot/nautobot-app-ssot/blob/479d77feb1ca75216f1ab41611d4211778e3e3bc/.github/workflows/upstream_testing.yml#L8-L13) would not be allowed to run.
But my memory is fuzzy on what or why this was put in so 🤷. If it wasn't documented it must not be important.

Do we know of any apps that are extending this workflow to run any additional steps?

The only side-effect I can forsee (which may have arisen from testing) is that any task trying to be run after the matrix (either here or in the use of this, see: https://github.com/nautobot/nautobot-app-ssot/blob/479d77feb1ca75216f1ab41611d4211778e3e3bc/.github/workflows/upstream_testing.yml#L8-L13) would not be allowed to run.
But my memory is fuzzy on what or why this was put in so 🤷. If it wasn't documented it must not be important.

Do we know of any apps that are extending this workflow to run any additional steps?

Not that I know of. Could have been something that came up somewhere in this lifecycle:

https://github.com/nautobot/nautobot/pull/2377
https://github.com/nautobot/nautobot-plugin-netutils/pull/2

But YAGNI probably at this point.

I happened to have a PyGithub script laying around from some research I was doing on the upstream testing workflows earlier this week so I iterated through every github actions workflow with "upstream" in the name and checked the files. The only file that didn't match was https://github.com/nautobot/nautobot-plugin-ssot-servicenow/blob/develop/.github/workflows/upstream_testing.yml and that was just whitespace differences.


Actions poetry venv refactor

Explanation
I adjusted how the venv gets setup in actions. Instead of using pyenv to setup the venv for application code, I refactored the action to mimic what is being done in docker. Only issues with this is apparently there is a bug in poetry with flake8 for python version < 3.8 which is causing the build to error out for python 3.7.9. I think we should consider simply using python 3.8 and refactoring docker to use this as well.
Rationale
I think this makes for a slightly cleaner action setup and removes the dependency on pyenv.
Tests

What testing did you do?

see relevant action build log for pushes to this branch

Flake8 is failing on the Python 3.7 code.  Looks like the package was adjusted between Python 3.7 & Python 3.8.  The naming may have changed, i.e. importlib_metadata to importlib-metadata.  Still need to do more investigation.

So attempted to adjust this to support python 3.9 but appears one of the deps doesnt support 3.9 zope.interfaces which was causing the build to fail on 3.9.


feat(locales): add estonian language

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


Gradle 7 Maven Plugin is Removed

Upgraded to 3.4.1 today, but ran into another error
Build file '/Users/username/Workspace/appname/node_modules/react-native-ultimate-config/android/build.gradle' line: 23

What went wrong:
A problem occurred evaluating project ':react-native-ultimate-config'.
Plugin with id 'maven' not found.

According to the official doc here, maven-publish plugin should be used instead.
https://docs.gradle.org/7.0/userguide/upgrading_version_6.html?_ga=2.13318143.933978241.1630988644-1794747336.1630988644#removal_of_the_legacy_maven_plugin

I manually change maven to maven-publish, but ran into another error:
FAILURE: Build failed with an exception.

Where:
Build file '/Users/username/Workspace/appname/node_modules/react-native-ultimate-config/android/build.gradle' line: 112

What went wrong:
A problem occurred configuring project ':react-native-ultimate-config'.

Configuration with name 'compile' not found.

This is the line causing the issue: classpath += files(project.getConfigurations().getByName('compile').asList())

hey, thanks for the report!
I'll try to look at this problem but I don't have a lot of capacity at the moment.
If you or somebody can open an PR - it would be great!
thanks!

@bill-dai  could you please share an example project where the problem reproduced?
what version of react native do you use by the way?

yeah, I found it's actually my issue. I opened my React Native 6.5.1 Android project in Android Studio and it asked me if I wanted to upgrade to Gradle 7, and I clicked yes and this caused the error. So I'm reverting to the 4.2.1 (6.8) Gradle Plugin right now.

cool, still good to know upcoming issues :)

Hi @maxkomarychev!
Since react-native: 0.67.3 requires Gradle version 7+ now -  it's a huge blocker for anyone who uses the latest RN version
Any suggestions?

can somebody try this fork https://github.com/maxkomarychev/react-native-ultimate-config/pull/79 and confirm if it works?

@tr3v3r  I can, but what with installArchives that mentioned in pr description?

@maxkomarychev Hi!  any thoughts?

can somebody try this fork #79 and confirm if it works?

I tested it and it's working fine. Before the application did not build on android and now the build is being done without problems.

@tr3v3r hey there, I am the guy who opened the #79 per, The installArchives section is not really relevant to react-native or npm packages, it would be relevant if @maxkomarychev uploads the package externally to a maven/gradle repo, but that is the extent of my knowledge on maven or gradle repos for that matter. The fix works, guaranteed, I use it in a couple of projects already, I mentioned the installArchives problematics in the PR because I do not know what the intention of it was, and technically speaking, my PR is "not complete" because I didn't adjust that part of the lib, so I mentioned it hoping @maxkomarychev would give me a clue about what was meant there. My fix simply imports the correct maven plugins as intended with gradle 7+, and given that fact that this lib is installed using npm, no further maven setups are really needed, but that's for the author of this lib to decide.

@samermurad  Hi! Thanks for explaining!
I'm gonna get back this library to my project

@samermurad @vagnerlandio I'm in the same spot. Can you advise how to add to yarn from PR 79? I tried:
yarn add maxkomarychev/react-native-ultimate-config#79/head
which is the 'usual' syntax for adding from a PR, but it's throwing an error.

@JeremyBradshaw7
You can just use patch-package library with this patch
diff --git a/node_modules/react-native-ultimate-config/android/build.gradle b/node_modules/react-native-ultimate-config/android/build.gradle
index dcccb07..cac1277 100644
--- a/node_modules/react-native-ultimate-config/android/build.gradle
+++ b/node_modules/react-native-ultimate-config/android/build.gradle
@@ -20,7 +20,7 @@ def safeExtGet(prop, fallback) {
 }

 apply plugin: 'com.android.library'
-apply plugin: 'maven'
+apply plugin: 'maven-publish'

 buildscript {
     // The Android Gradle plugin is only required when opening the android folder stand-alone.
@@ -39,7 +39,7 @@ buildscript {
 }

 apply plugin: 'com.android.library'
-apply plugin: 'maven'
+apply plugin: 'maven-publish'

 android {
     compileSdkVersion safeExtGet('compileSdkVersion', DEFAULT_COMPILE_SDK_VERSION)
@@ -109,8 +109,10 @@ afterEvaluate { project ->
     task androidJavadoc(type: Javadoc) {
         source = android.sourceSets.main.java.srcDirs
         classpath += files(android.bootClasspath)
-        classpath += files(project.getConfigurations().getByName('compile').asList())
+        project.getConfigurations().implementation.setCanBeResolved(true)
+        classpath += files(project.getConfigurations().getByName('implementation').asList())
         include '**/*.java'
+
     }

     task androidJavadocJar(type: Jar, dependsOn: androidJavadoc) {
@@ -140,10 +142,21 @@ afterEvaluate { project ->

     task installArchives(type: Upload) {
         configuration = configurations.archives
-        repositories.mavenDeployer {
-            // Deploy to react-native-event-bridge/maven, ready to publish to npm
-            repository url: "file://${projectDir}/../android/maven"
-            configureReactNativePom pom
+        // Honestly I have no idea maven works, it looks like the new solution should look somewhat like
+        // so, but the pom is no longer available as a global variable under this setup
+        publishing {
+            repositories {
+                maven {
+                    url "file://${projectDir}/../android/maven"
+//                    configureReactNativePom pom
+                }
+            }
         }
+//        This no longer works in
+//        repositories.mavenDeployer {
+//            // Deploy to react-native-event-bridge/maven, ready to publish to npm
+//            repository url: "file://${projectDir}/../android/maven"
+//            configureReactNativePom pom
+//        }
     }
 }
\ No newline at end of file

I have published changes from #79 as version 4.0.0.
Please try it out. I'm going to close this issue. Thank you all for participation!


Document freemarker module usage

I think the framework uses freemarker as template engine.
I wrote about freemarker dependencies of build.gradle.
I tried some pattern.
compile group: 'org.jetbrains.ktor', name: 'ktor-freemarker', version: '0.1.8'

and
compile 'org.jetbrains:ktor:0.1.8'

Why 0.1.8? I thought only 0.1.8 was available in the URL https://dl.bintray.com/kotlin/ktor/org/jetbrains/ktor-freemarker/0.1.8/
However, I can't import like below
import org.jetbrains.ktor.freemarker.*

@shinriyo you have wrong group name org.jetbrains. Should be org.jetbrains.ktor. Also note that 0.1.8 is definitely too old: you better to use latest 0.3.2

@cy6erGn0m thank you for replying.
However, I wrote below in build.gradle but I can't import
dependencies {
//    compile "org.jetbrains.ktor:ktor-freemarker:0.3.2"
    compile "org.jetbrains.ktor:freemarker:0.3.2"
}

You can find proper module names and references here: https://bintray.com/kotlin/ktor/ktor/0.3.2
E.g. for freemarker it would be
compile 'org.jetbrains.ktor:ktor-freemarker:0.3.2'

I have not found any documentation for either freemarker or kotlinx templates. The code is also not documented. The only way to find how to use them is to disassemble tests. Please provide at least a short description in wiki.

@orangy thank you for response.
I just copied and paste yours. But not work.
It's my whole build.gradle.
buildscript {
    ext.kotlin_version = '1.1.3'
    ext.ktor_version = '0.3.2'
    ext.ktor_freemarker = '0.1.8'

    repositories {
        mavenCentral()
    }

    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

apply plugin: 'kotlin'
apply plugin: 'application'

repositories {
    mavenCentral()
    maven { url "https://dl.bintray.com/kotlin/kotlinx" }
    maven { url "https://dl.bintray.com/kotlin/ktor" }
}

dependencies {
    compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
    runtime "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
    compile "org.jetbrains.ktor:ktor-netty:$ktor_version"
    compile 'org.jetbrains.ktor:ktor-freemarker:0.3.2'

    testCompile 'junit:junit:4.11'
    testCompile "org.jetbrains.kotlin:kotlin-test-junit:$kotlin_version"
}

sourceSets {
    main.kotlin.srcDirs += 'src/main/kotlin'
    main.java.srcDirs += 'src/main/java'
}

@altavir Yes. I want minimum document.

I created a wee little bit of documentation in ktor-wiki #12: https://github.com/dinomite/ktor-wiki/blob/master/Feature-FreeMarker-Templates.md

Integrated PR into upcoming doc site


GGP_SDK?

Hi I am trying to profile an program on a linux server remotely.
It seems with the ggp version remote debugging over ssh is possible?
However I am missing GGP_SDK and am getting zero results on what it is or where to get it.

Hi @tpet93!
GGP_SDK is the SDK required to develop games on Stadia (and not publicly available). Orbit is currently only targeting Stadia as its platform. We have plans to support Linux in general (and also Windows) at some point in the future, but we don't know yet when these versions are available.
However, with some work, you should be able to get it to work remotely on a Linux server.

Take a look at run_service_ssh.sh (or run_service_ssh.ps on Windows) how the ssh connection with port forwarding is established (it should be enough to adapt the last two lines to your needs).
Run OrbitService on the Linux system you want to profile.
Run the UI (either on Linux on Windows) with the --local flag (as we are using port forwarding).

Mentioning @antonrohr, who can help in case I missed something or if there are more questions.
Let us know if you run into issues!

Thanks


Deployment fails via powershell

I keep getting this error....
Updating app secret...
az : WARNING: This command or command group has been migrated to Microsoft Graph API. Please carefully review all breaking changes introduced during this migration: https://docs.microsoft.com/cli/azure/microsoft-graph-migration
At C:\microsoft-teams-apps-icebreaker-main\Deployment\deploy.ps1:232 char:26

... appSecret = az ad app credential reset --id $app.appId --append | Con ...

            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : NotSpecified: (WARNING: This c...graph-migration:String) [], RemoteException
FullyQualifiedErrorId : NativeCommandError

ERROR: argument --id: expected one argument
Examples from AI knowledge base:
az ad app credential reset --id 00000000-0000-0000-0000-000000000000
append or overwrite an application's password or certificate credentials (autogenerated)
az ad app credential reset --id 00000000-0000-0000-0000-000000000000 --cert<EMAIL_ADDRESS>Append a certificate to the application with the certificate file.
https://docs.microsoft.com/en-US/cli/azure/ad/app/credential#az_ad_app_credential_reset
Read more about the command in reference docs
Azure AD App: IceBreakerRN registered successfully.
Failed to create or update the app in Azure Active Directory. Exiting...

Hi @fy-cahill, thank you for raising the issue, we're looking into it.

Hi @fy-cahill, we validated from our side and the deployment works fine, please check if you've given all the necessary fields correctly, you can also try the manual deployment and see if that works for you. Let us know if you still face any problems.

Closing the issue since we already provided the response, if you still face any issues, kindly open a new issue


BF+ENH/RF(TST): more of binding fixups, enhance testing setup

grr, the 2nd run on travis errors in the first test on passing args to docker:
https://travis-ci.org/github/ReproNim/containers/jobs/750269398#L1558

with "/usr/local/bin/docker: unhandled command line:"
/usr/local/bin/docker: unhandled command line:

    $1 = <run>

    $2 = <--privileged>

    $3 = <--rm>

    $4 = <-e>

    $5 = <UID=501>

    $6 = <-e>

    $7 = <GID=20>

    $8 = <-v>

    $9 = </var/folders/nz/vv4_9tw56nv9k3tkvyszvwg80000gn/T:/var/folders/nz/vv4_9tw56nv9k3tkvyszvwg80000gn/T>

    $10 = <-v>

    $11 = </Users/travis/build/ReproNim/containers:/Users/travis/build/ReproNim/containers>

    $12 = <-v>

    $13 = </Users/travis/build/ReproNim/containers:/Users/travis/build/ReproNim/containers>

    $14 = <-v>

    $15 = </Users/travis/build/ReproNim/containers/binds/HOME:/Users/travis/build/ReproNim/containers/binds/HOME>

    $16 = <-w>

    $17 = </Users/travis/build/ReproNim/containers>

    $18 = <-v>

    $19 = </etc/localtime>

    $20 = <repronim/containers:latest>

    $21 = <exec>

    $22 = <-B>

    $23 = </var/folders/nz/vv4_9tw56nv9k3tkvyszvwg80000gn/T/singtmp.XXXXXX.BeoJHasi/tmp:/tmp>

    $24 = <-B>

    $25 = </var/folders/nz/vv4_9tw56nv9k3tkvyszvwg80000gn/T/singtmp.XXXXXX.BeoJHasi/var/tmp:/var/tmp>

    $26 = <-e>

    $27 = <-B>

    $28 = </Users/travis/build/ReproNim/containers>

    $29 = <-H>

    $30 = </Users/travis/build/ReproNim/containers/binds/HOME>

    $31 = <--pwd>

    $32 = </Users/travis/build/ReproNim/containers>

    $33 = </Users/travis/build/ReproNim/containers/scripts/tests/arg-test.simg>

    $34 = </singularity>

    $35 = <foo bar>

    $36 = <blah>

    $37 = <45.5>

    $38 = </dir>

    $39 = <bar;>

    $40 = <foo&>

    $41 = <${foo}>

FAIL: Arguments are not equal.

 #1=<<1>>

 #2=<<0>>

not ok 1 verifying arguments passed to singularity_cmd Docker shim

# (from function `myrun' in file scripts/tests/test_helpers.bash, line 28,

#  in test file scripts/tests/test_singularity_cmd.bats, line 30)

#   `myrun scripts/singularity_cmd \' failed

# latest: Pulling from repronim/containers

# Digest: sha256:e906fda34b081178b0fbf89818da3509f958fcb7e6d36bd69204665fb7675d5d

# Status: Image is up to date for repronim/containers:latest

# docker.io/repronim/containers:latest

# > Running "scripts/singularity_cmd exec /Users/travis/build/ReproNim/containers/scripts/tests/arg-test.simg /singularity foo bar blah 45.5 /dir bar; foo& ${foo}"

which is "correct to fail" since we did add a new bind mount option to docker to bind mount /tmp itself.  So I just wonder why it has not failed locally... will dig in again, uff

ah, right -- that travis dummy one is one of ours! ;)
travis/install.sh:    sudo cp travis/dummy_docker /usr/local/bin/docker

fixed up, pushed

out of patience -- what was failing now doesn't.  linux run of travis is yet to happen, so will proceed and merge


Clarify how RegExp routing matches

Library Affected:
sw-routing, sw-lib
There's been some confusion about how the RegExp is applied when matching against URLs for routing. The docs should be explicit that the match doesn't have to apply to the whole URL, and that the new RegExp(string) syntax tends to be cleaner when including URL paths, since otherwise the / characters need to be escaped.
E.g. if we wanted to match all requests made for any resource on https://example.com, like https://example.com/page1, https://example.com/page2, a good RegExp to use would be new RegExp('^https://example.com/'). This ensures that the match is made at the start of the URL (via the ^ character) and it's not necessary to include any sort of .* wildcard, since that RegExp will match both 'https://example.com/page1' and 'https://example.com/page2' as-is.

The docs should be explicit that the match doesn't have to apply to the whole URL

My interpretation is that it would have to apply to the entirity of the URL so 👍 to being more clear on  what the exact behavior is.

One thing to call out is that generic regular expressions could cause issues.
For example:
/\/(.*\/)?.*\.(png|jpg|jpeg|gif)/

Would catch any image regardless of origin.

So this is valid?
RegExp('^https://example.com/')
Out of curiosity, what other regex implementations behave like this?

@jpmedley, RegExp('^https://example.com/') is a valid regular expression that will match any string which starts with 'https://example.com/'. It could be useful within the context of routing if your goal is to match URLs that have that prefix.

Out of curiosity, what other regex implementations behave like this?

I don't understand what you're asking here.

I'm going to change the RegExpRoute behavior to match what seems to be the ideal behavior described at https://github.com/GoogleChrome/sw-helpers/issues/281#issuecomment-285130355
I'll include updates to the docs to reflect that behavior in the PR.

Cool.
Joe Medley | Technical Writer, Chrome DevRel |<EMAIL_ADDRESS>|
816-678-7195
If an API's not documented it doesn't exist.
On Fri, Mar 24, 2017 at 1:11 PM, Jeffrey Posnick<EMAIL_ADDRESS>wrote:

I'm going to change the RegExpRoute behavior to match what seems to be
the ideal behavior described at #281 (comment)
https://github.com/GoogleChrome/sw-helpers/issues/281#issuecomment-285130355
I'll include updates to the docs to reflect that behavior in the PR.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/GoogleChrome/sw-helpers/issues/237#issuecomment-289131056,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AH0vi9_O_c0prUeYPSR4yeIvXMfjquEDks5rpCNYgaJpZM4MKd3M
.


The wrong scaling is usually used on high-resolution monitors.

It often happens that the wrong scaling is used. But sometimes it works.
The logs when it works:

[LOG]   | got iface: wl_shm v1
[LOG]   | got iface: wl_drm v2
[LOG]   | got iface: zwp_linux_dmabuf_v1 v4
[LOG]    > Bound to zwp_linux_dmabuf_v1 v4
[LOG]   | got iface: wl_compositor v6
[LOG]    > Bound to wl_compositor v6
[LOG]   | got iface: wl_subcompositor v1
[LOG]   | got iface: wl_data_device_manager v3
[LOG]   | got iface: zwlr_export_dmabuf_manager_v1 v1
[LOG]   | got iface: zwlr_data_control_manager_v1 v2
[LOG]   | got iface: zwp_primary_selection_device_manager_v1 v1
[LOG]   | got iface: wp_viewporter v1
[LOG]    > Bound to wp_viewporter v1
[LOG]   | got iface: zwlr_gamma_control_manager_v1 v1
[LOG]   | got iface: zwlr_output_power_manager_v1 v1
[LOG]   | got iface: xdg_wm_base v6
[LOG]   | got iface: wl_seat v9
[LOG]    > Bound to wl_seat v9
[LOG]   | got iface: wp_presentation v1
[LOG]   | got iface: ext_idle_notifier_v1 v1
[LOG]   | got iface: zwlr_layer_shell_v1 v4
[LOG]   | got iface: org_kde_kwin_server_decoration_manager v1
[LOG]   | got iface: zxdg_decoration_manager_v1 v1
[LOG]   | got iface: zwlr_output_manager_v1 v4
[LOG]   | got iface: zwp_keyboard_shortcuts_inhibit_manager_v1 v1
[LOG]   | got iface: zwp_pointer_constraints_v1 v1
[LOG]   | got iface: zwp_relative_pointer_manager_v1 v1
[LOG]   | got iface: zwp_virtual_keyboard_manager_v1 v1
[LOG]   | got iface: zwlr_virtual_pointer_manager_v1 v2
[LOG]   | got iface: zwlr_foreign_toplevel_manager_v1 v3
[LOG]   | got iface: wp_drm_lease_device_v1 v1
[LOG]   | got iface: zwp_tablet_manager_v2 v1
[LOG]   | got iface: zwp_idle_inhibit_manager_v1 v1
[LOG]   | got iface: zxdg_exporter_v1 v1
[LOG]   | got iface: zxdg_importer_v1 v1
[LOG]   | got iface: zxdg_exporter_v2 v1
[LOG]   | got iface: zxdg_importer_v2 v1
[LOG]   | got iface: zwp_pointer_gestures_v1 v3
[LOG]   | got iface: zwp_text_input_manager_v3 v1
[LOG]   | got iface: zwp_input_method_manager_v2 v1
[LOG]   | got iface: xdg_activation_v1 v1
[LOG]   | got iface: ext_session_lock_manager_v1 v1
[LOG]    > Bound to ext_session_lock_manager_v1 v1
[LOG]   | got iface: wp_cursor_shape_manager_v1 v1
[LOG]    > Bound to wp_cursor_shape_manager_v1 v1
[LOG]   | got iface: wp_tearing_control_manager_v1 v1
[LOG]   | got iface: wp_single_pixel_buffer_manager_v1 v1
[LOG]   | got iface: xwayland_shell_v1 v1
[LOG]   | got iface: hyprland_toplevel_export_manager_v1 v2
[LOG]   | got iface: wp_fractional_scale_manager_v1 v1
[LOG]    > Bound to wp_fractional_scale_manager_v1 v1
[LOG]   | got iface: zwp_text_input_manager_v1 v1
[LOG]   | got iface: hyprland_global_shortcuts_manager_v1 v1
[LOG]   | got iface: zwlr_screencopy_manager_v1 v3
[LOG]    > Bound to zwlr_screencopy_manager_v1 v3
[LOG]   | got iface: zxdg_output_manager_v1 v3
[LOG]   | got iface: wl_output v4
[LOG]    > Bound to wl_output v4
[LOG] [core] dmabufFeedbackMainDevice
[LOG] output 49 make Samsung Display Corp. model 0x4154
[LOG] output 49 name eDP-1
[LOG] output 49 description Samsung Display Corp. 0x4154 (eDP-1)
[LOG] output 49 done
[LOG] Locking session
[LOG] onLockLocked called
[LOG] got fractional 2
[LOG] configure with serial 9092
[LOG] Configuring surface for logical [Vector2D: x: 1440, y: 900] and pixel [Vector2D: x: 2880, y: 1800]
[LOG] Framebuffer created, status 36053
[LOG] Framebuffer created, status 36053
[LOG] Framebuffer created, status 36053
[LOG] Authenticating
[LOG] Unlocking session
[LOG] Unlocked, exiting!
[LOG] Reached the end, exiting

When it does not work:
[LOG]   | got iface: wl_shm v1
[LOG]   | got iface: wl_drm v2
[LOG]   | got iface: zwp_linux_dmabuf_v1 v4
[LOG]    > Bound to zwp_linux_dmabuf_v1 v4
[LOG]   | got iface: wl_compositor v6
[LOG]    > Bound to wl_compositor v6
[LOG]   | got iface: wl_subcompositor v1
[LOG]   | got iface: wl_data_device_manager v3
[LOG]   | got iface: zwlr_export_dmabuf_manager_v1 v1
[LOG]   | got iface: zwlr_data_control_manager_v1 v2
[LOG]   | got iface: zwp_primary_selection_device_manager_v1 v1
[LOG]   | got iface: wp_viewporter v1
[LOG]    > Bound to wp_viewporter v1
[LOG]   | got iface: zwlr_gamma_control_manager_v1 v1
[LOG]   | got iface: zwlr_output_power_manager_v1 v1
[LOG]   | got iface: xdg_wm_base v6
[LOG]   | got iface: wl_seat v9
[LOG]    > Bound to wl_seat v9
[LOG]   | got iface: wp_presentation v1
[LOG]   | got iface: ext_idle_notifier_v1 v1
[LOG]   | got iface: zwlr_layer_shell_v1 v4
[LOG]   | got iface: org_kde_kwin_server_decoration_manager v1
[LOG]   | got iface: zxdg_decoration_manager_v1 v1
[LOG]   | got iface: zwlr_output_manager_v1 v4
[LOG]   | got iface: zwp_keyboard_shortcuts_inhibit_manager_v1 v1
[LOG]   | got iface: zwp_pointer_constraints_v1 v1
[LOG]   | got iface: zwp_relative_pointer_manager_v1 v1
[LOG]   | got iface: zwp_virtual_keyboard_manager_v1 v1
[LOG]   | got iface: zwlr_virtual_pointer_manager_v1 v2
[LOG]   | got iface: zwlr_foreign_toplevel_manager_v1 v3
[LOG]   | got iface: wp_drm_lease_device_v1 v1
[LOG]   | got iface: zwp_tablet_manager_v2 v1
[LOG]   | got iface: zwp_idle_inhibit_manager_v1 v1
[LOG]   | got iface: zxdg_exporter_v1 v1
[LOG]   | got iface: zxdg_importer_v1 v1
[LOG]   | got iface: zxdg_exporter_v2 v1
[LOG]   | got iface: zxdg_importer_v2 v1
[LOG]   | got iface: zwp_pointer_gestures_v1 v3
[LOG]   | got iface: zwp_text_input_manager_v3 v1
[LOG]   | got iface: zwp_input_method_manager_v2 v1
[LOG]   | got iface: xdg_activation_v1 v1
[LOG]   | got iface: ext_session_lock_manager_v1 v1
[LOG]    > Bound to ext_session_lock_manager_v1 v1
[LOG]   | got iface: wp_cursor_shape_manager_v1 v1
[LOG]    > Bound to wp_cursor_shape_manager_v1 v1
[LOG]   | got iface: wp_tearing_control_manager_v1 v1
[LOG]   | got iface: wp_single_pixel_buffer_manager_v1 v1
[LOG]   | got iface: xwayland_shell_v1 v1
[LOG]   | got iface: hyprland_toplevel_export_manager_v1 v2
[LOG]   | got iface: wp_fractional_scale_manager_v1 v1
[LOG]    > Bound to wp_fractional_scale_manager_v1 v1
[LOG]   | got iface: zwp_text_input_manager_v1 v1
[LOG]   | got iface: hyprland_global_shortcuts_manager_v1 v1
[LOG]   | got iface: zwlr_screencopy_manager_v1 v3
[LOG]    > Bound to zwlr_screencopy_manager_v1 v3
[LOG]   | got iface: zxdg_output_manager_v1 v3
[LOG]   | got iface: wl_output v4
[LOG]    > Bound to wl_output v4
[LOG] [core] dmabufFeedbackMainDevice
[LOG] output 49 make Samsung Display Corp. model 0x4154
[LOG] output 49 name eDP-1
[LOG] output 49 description Samsung Display Corp. 0x4154 (eDP-1)
[LOG] output 49 done
[LOG] Locking session
[LOG] onLockLocked called
[LOG] got fractional 1
[LOG] configure with serial 4102
[LOG] Configuring surface for logical [Vector2D: x: 1440, y: 900] and pixel [Vector2D: x: 1440, y: 900]
[LOG] Framebuffer created, status 36053
[LOG] Framebuffer created, status 36053
[LOG] Framebuffer created, status 36053
[LOG] Authenticating
[LOG] Unlocking session
[LOG] Unlocked, exiting!
[LOG] Reached the end, exiting

hyprland issue

@no8f Did you manage to fix the issue?

I recompiled the whole thing, after which the problem no longer occurred


[typeless-sample-bot] Exit code 1 when no TypeScript files found

When the typeless-sample-bot doesn't find any TypeScript files, it exits with code 1. That will cause builds to fail if check=True when running via the synthtool shell.run() command.  I do think it's worth flagging as a warning, but I think that only errors in the process should lead to an exit code 1 outcome.

Yep, agreed.


better support both Events API and Webhook events in PushEventCommit

Fixes #370.
Change-Id: I0a8567ae352bd2e9e973ac73383894d2b4cdfb9d

This looks good as far as adding the missing fields and resolving #370.
But I want to ask, Glenn, have you vetted the rest of the common fields? There are some of them that I think are Webhook-only as well, because they're not mentioned in Events API payload, but are included in the Webhook payload example.
As far as I can see, these common PushEventCommit  fields are Webhook-only as well:

Committer
Added
Removed
Modified

If you prefer to consider that out of scope for this PR, I have no objections to that. This PR indeed resolves the task in #370. LGTM.

@shurcooL - as far as I can tell, the Events API payload appears exactly as described, so you are correct that those fields are Webhook-only as well.
We should go ahead and clean those up too in this PR while we are discussing it.
It turns out that I had also missed timestamp, so I'm adding it.
PTAL.

We should go ahead and clean those up too in this PR while we are discussing it.

Great, thanks!
Nice catch on timestamp, I missed that one.
LGTM. I left one trivial optional comment.


project.issues.git

Provide functionality similar to project.wiki.git for issues as well.
Make project.issues.git a stand alone repo to easy pull and manage issues.

With each issue in a seperate folder with markdown files for comments and such?

@a7hybnj2 It's difficult to do that since all issues are stored in database.

I'm setting this as won't fix because of current architecture I don't see how this could be implemented via git protocol


Better redirect message for parser-prism

I noticed on https://github.com/kddnewton/parser-prism

⚠ Deprecated: Please use prism directly.

I think this can be easily misinterpreted as "parser-prism is deprecated, use prism directly instead".
Which sounds like the translator from Prism to parser gem AST would be deprecated when it's not the case.
The functionality of getting a parser AST from a Prism AST is not deprecated, it just moved to the main prism gem.
So I would suggest to change that to:

⚠ Moved: This functionality moved to the prism gem as Prism::Translation::Parser.

Or even clearer:

⚠ Moved: The translation from Prism AST to parser gem AST moved to the prism gem as Prism::Translation::Parser.

I'd make a PR but AFAIK that's not possible to an archived repo.

Done


updating vendor bump go-open-service-broker-client to master branch

needed to pull in new constants for platform field in
OriginatingIdentity.

FAIL	github.com/pmorie/osb-broker-lib/vendor/github.com/prometheus/procfs/sysfs	0.003s
It appears that we testing vendor. I don't know what the correct behavior is for this should be.

0.0.5 is released now

Will let @pmorie have the final look and merge it, as he had some comments before.

Superceded by #26


[rocksplicator] enable participant to register to multiple state models

Currently, Participant can only register to 1 state model (e.g. MasterSlave or OnlineOffline). Change the logic to support register to multiple state models.
Example: pass the "stateModelType" as "MasterSlave;Task", the cluster will register to "MasterSlave" and "Task".  This prepare Rocksplicator support both db management (by MasterSlave state model) and Backup/Restore (by Task state model).
Other usage, register to "MasterSlave;OnlineOffline" is also allowed, but not recommended since better practice to separate realtime mode (ie. MasterSlave) from batch mode (ie OnlineOffline).

Can we just add a new "else if" section for "MasterSlave;Task"? This can avoid misuse and minimize changes to other models.

Two new combinations will be used for now:

MasterSlave;Task.   // to support db management and backup/restore
Task.      // support export (dedup). This cluster will only use "Task" framework from helix.

I can change to 2 new elseif to support these?

Sounds good to me to have 2 new elseif.
On Thu, Mar 26, 2020 at 9:11 PM Kangnan Li<EMAIL_ADDRESS>wrote:

Can we just add a new "else if" section for "MasterSlave;Task"? This can
avoid misuse and minimize changes to other models.
Two new combinations will be used for now:

MasterSlave;Task. // to support db management and backup/restore
Task. // support export (dedup). This cluster will only use "Task"
framework from helix.

I can change to 2 new elseif to support these?
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/pinterest/rocksplicator/pull/354#issuecomment-604804941,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAQM5NSWRIDZ65DPSFG7OHLRJQRQRANCNFSM4LUWN4BA
.


Added Draco support to point clouds

Adds support for reading Draco encoded pnts files.
Merge https://github.com/AnalyticalGraphicsInc/cesium/pull/6558 first - one of the tests here fails without that fix.
To-do:

[x] Host sample draco point cloud on ion
[x] Add IE support back once https://github.com/AnalyticalGraphicsInc/cesium/issues/6404 is done
[x] Open PR for spec changes into 3d-tiles (post-1.0)

@lilleyse, thanks for the pull request! Maintainers, we have a signed CLA from @lilleyse, so you can review this at any time.
:warning: I noticed that CHANGES.md has not been updated. If this change updates the public API in any way, fixes a bug, or makes any non-trivial update, please add a bullet point to CHANGES.md and comment on this pull request so we know it was updated. For more info, see the Pull Request Guidelines.
:warning: I noticed that a file in one of our ThirdParty folders (ThirdParty/, Source/ThirdParty/) has been added or modified. Please verify that it has a section in LICENSE.md and that its license information is up to date with this new version. Once you do, please confirm by commenting on this pull request.

I am a bot who helps you make Cesium awesome! Contributions to my configuration are welcome.
:earth_africa: :earth_americas: :earth_asia:

@ggetz updated so that point clouds and models use the same worker.
There is a failing test but it should get fixed once https://github.com/AnalyticalGraphicsInc/cesium/pull/6558 is merged.

This is ready now. It could change slightly based on tweaks in https://github.com/AnalyticalGraphicsInc/3d-tiles/pull/310, but overall is ready to review again.

Also same story in IE - slow but it works.

By the way I don't think there is any rush to get this in the June 1 release so it should be fine to merge this after.

Are there enough unit tests to cover all the new branches?

I ran code coverage to check and it seems like everything is covered except one validation check. Writing a test for it might be more trouble than it's worth though.
if (!defined(dracoFeatureTableProperties) || !defined(dracoByteOffset) || !defined(dracoByteLength)) {
    throw new RuntimeError('Draco properties, byteOffset, and byteLength must be defined');
}

The file itself has 98% coverage.

I ran code coverage to check and it seems like everything is covered except one validation check. Writing a test for it might be more trouble than it's worth though.

Gotcha.

@ggetz after the release today would you be able to review the latest updates here?

As part of this, should we also finish up https://github.com/AnalyticalGraphicsInc/3d-tiles/pull/310 ?

I think there may be something wrong with the boundingSphere for draco compressed models now. This is the view that viewer zooms to:

As part of this, should we also finish up AnalyticalGraphicsInc/3d-tiles#310 ?

Yes! I need to get back to that.

I think there may be something wrong with the boundingSphere for draco compressed models now. This is the view that viewer zooms to:

This happens in master too.

At a glance the bounding volumes look correct but it's almost like it's using the wrong one for the zoom. I'm not sure if it's a model problem or a decode problem, but I don't think it's related to this PR. Maybe we should open a separate issue to investigate it?

Only the wasm decoder file was updated? Does the fallback js module also need an update?

Good point, and I think there has been another Draco release since then. I'll update the files tonight.

Opened a 3d-tiles-tools PR for the sample tilesets: https://github.com/AnalyticalGraphicsInc/3d-tiles-tools/pull/150

@ggetz updated the Draco files to 1.3.3.

I'm not sure if it's a model problem or a decode problem, but I don't think it's related to this PR. Maybe we should open a separate issue to investigate it?

Yeah we should open an issue if it's happening master.

@lilleyse besides those two comments, this looks looks good, thanks!

Opened #6784 for the zooming bug.
Updated.

Thanks @lilleyse ! Looks good.
Is https://github.com/AnalyticalGraphicsInc/cesium/pull/6721 up to date with this branch and ready to be reviewed?

Is #6721 up to date with this branch and ready to be reviewed?

Yup, should be ready to review now.


Various enhancements

Added support for:

Documenting HA configuration
FortiGuard (under FortiCare) subscription status
Split out Interfaces by interface type (inc including relevant info for each type)

Cosmetic changes

Added additional fields for use in style/coverpage
Added removal of blank columns from system and firewall tables

Hi @msoukhomlinov
Look great, i need to make some real try for look change !
May be better a PR by change i think !

@msoukhomlinov can you split change on multiple PR ? it will be more easy to review and merge ?

@msoukhomlinov i merge majority of change (expect for split interface stuf and remove unused column)
i will look after to add split interface


add how to transfer WorkChain to WorkGraph

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 73.62%. Comparing base (3b91f57) to head (fcc2d13).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #103      +/-   ##
==========================================
- Coverage   73.68%   73.62%   -0.06%
==========================================
  Files          63       63
  Lines        3921     3921
==========================================
- Hits         2889     2887       -2
- Misses       1032     1034       +2

Flag
Coverage Δ

python-3.11
73.62% <ø> (ø)

python-3.9
?

Flags with carried forward coverage won't be shown. Click here to find out more.

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


Mods Creation

What needs to be documented?
There doesn't seem to be a page explaining how to make different mods appear in the "Mods" menu. Because yes, you can drop the data, songs, images, etc on the mods folder, but I couldn't find a page explaining how to use the "pack.json" file to make them appear in the "Mods" menu.

Their most likely busy fixing stuff for the 0.5 release currently. It will come.
But how to use the pack.json file is extremely simple, make a new folder named "YourModNameHere" and then drop any data/songs/images folders inside that one and then put the pack.json in the root of the "YourModNameHere" and configure it by entering a name and description.
And boom you're done, so it's basically the same thing as before but with an extra folder+json to hold everything in one place.

thanks a lot for explaining how to use the new mods system, i hope they add it into the wiki soon.


Notice test failures that accompany hangs

Consider a case where a mutation causes a hang, but is also detected by a test:
pub struct Iter(u32);
impl Iterator for Iter {
    type Item = u32;
    fn next(&mut self) -> Option<u32> {
        if self.0 == 0 {
            None
        } else {
            self.0 -= 1;
            Some(self.0)
        }
    }
}

#[test]
fn t1() {
    assert_eq!(Iter(10).next(), Some(9));
}

#[test]
fn t2() {
    for _ in Iter(10) {}
}

In this case, mutations of Iter::next() may cause t1 to fail and t2 to hang. This is counted as a timeout, but could be detected rapidly as a caught mutant, and this might make cargo-mutants more useful on codebases that have a lot of this kind of code (stopping conditions that can be trivially mutated into running forever).
Detecting this case would require parsing the test harness output which could sometimes be corrupted (stray logging to real stderr) or arbitrary (custom test harnesses), so it should be optional.
(In the example case above, it would arguably be wise for t2 to have its own maximum-iterations guard condition, but in the general case, the loop may be part of code that is not test code and cannot predict the maximum number of iterations.)

Yep, https://github.com/sourcefrog/cargo-mutants/issues/194 has some other related ideas. I think the heart of it is: the standard Rust test framework does not exit early when one test fails, but at least for the cargo mutants use case it would be better if it did.


MAINT: add issue template for bug reports

It may be worthwhile to add an issue template to guide people on what information is useful to include in bug reports, especially in trying to push them to include self-contained test cases.

Non-blocking comment: maybe try crafting some friendlier language. These things tend to look like government forms, and thus might scare off less experienced first-time reporters.
+1 from me regardless.

especially in trying to push them to include self-contained test cases.

+1
Other items are probably less necessary, e.g. OS and compilers are not often needed. So maybe leave those out or explicitly say they're optional?

I particularly liked the spyder version just to give another example

The spyder is a bit different as it's interactive application. In the
case of Scipy, the steps to reproduce are better substituted by the code
example imho.
.
I agree it's important the template is short, because of tl;dr.
.
We can perhaps scrap the expected/actual behavior parts, as those are
usually remembered. The OS can often be inferred, so maybe that can go too.
.
This would leave error code example, error message, and version. I think
it's useful to emphasize the full error message, as sometimes people
just paste the last line and you are left guessing.
.
If you know how you want to adjust the language, please go ahead and do
it (to me it reads matter-of-fact but OTOH not native english speaker).

I think the language is fine as written, and I'm also +1 for removing expected/actual behavior sections.
It might be worthwhile to manually line-wrap the longer lines, as I'm not sure if the new issue UI does it automatically.

I think the UI linewraps.

Updated, maybe merge? If you want to adjust the language, please push changes directly to the branch (or merge and send a new PR).

+1 for merge from me


dotnet publish inside docker buildx failing since update to Docker 24.0.5

dotnetpublish now failing since update to Docker 24.0.5:
[publish 1/1] RUN dotnet publish "Blahblah.csproj" -c Release -o /app/publish
#19 ERROR: failed to prepare azirp0wp7qd8ea9ujnn3hjs4a: invalid argument

Hmmm. Some more context? Are you depending on something particular in the image?
I saw that the docker base image underwent some significant changes also visible in the image size.

Pretty basic dockerfile:
FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base
WORKDIR /app
EXPOSE 80

FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build
WORKDIR /src
COPY ["./backend/Blah.Api", "Blah.Api/"]
COPY ["./backend/Blah.Domain", "Blah.Domain/"]
COPY ["./backend/Blah.Infrastructure", "Blah.Infrastructure/"]
RUN dotnet restore "Blah.Api/Blah.Api.csproj"
COPY . .
WORKDIR "/src/Blah.Api"
RUN dotnet build "Blah.Api.csproj" -c Release -o /app/build

FROM build AS publish
RUN dotnet publish "Blah.Api.csproj" -c Release -o /app/publish

FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "Blah.Api.dll"]

If I peg my .gitlab-ci.yml to bentolor/docker-dind-awscli:2.8.13 then everything is fine.
Here is some more context from the build log in Gitlab:
...
#18 7.830 Build succeeded.
#18 7.831     0 Warning(s)
#18 7.831     0 Error(s)
#18 7.832
#18 7.832 Time Elapsed 00:00:06.79
#18 DONE 11.2s
#6 [build 1/9] FROM mcr.microsoft.com/dotnet/sdk:6.0@sha256:894872a219bfa6d186453ce5cdfac8269f4b45b410dd356a5dd9df8ad48f4d83
#6 ...
#19 [publish 1/1] RUN dotnet publish "Blah.Api.csproj" -c Release -o /app/publish
#19 ERROR: failed to prepare azirp0wp7qd8ea9ujnn3hjs4a: invalid argument
#6 [build 1/9] FROM mcr.microsoft.com/dotnet/sdk:6.0@sha256:894872a219bfa6d186453ce5cdfac8269f4b45b410dd356a5dd9df8ad48f4d83
------
 > [publish 1/1] RUN dotnet publish "Blah.Api.csproj" -c Release -o /app/publish:
------
WARNING: buildx: git was not found in the system. Current commit information was not captured by the build
ERROR: failed to solve: failed to solve with frontend dockerfile.v0: failed to build LLB: failed to prepare azirp0wp7qd8ea9ujnn3hjs4a: invalid argument

So to sum up:
Your docker buildx as part of your .gitlab-ci.yml executes successfully in older docker:stable now fails in current docker stable?
That's strange. Seems to be in issue of the upstream image.

Can you verify this by running your docker buildx directly in docker:latest?
If yes, report upstream please
Increasing log level might help to understand better where buildx fails

There is a similar issues at https://github.com/docker-library/docker/issues/434 reporting a similar, suddenly failing build starting with docker:24.0.4.
I just published an updated docker-dind-awscli:latest and ``docker-dind-awscli:2.13.4-docker-24.0.3 which downgrades todocker:24.0.3`.
Does this solve this issue, @FacioRatio ? In that case it's clearly an upstream issue and I'd suggest to chip in on the upstream project. It seems their latest update breaks a few more things for others as well.

As no activities happened on this issue I assume it has resolved or is stale. Closing, as this seems to be an upstream issue.

Never found anything upstream. Never resolved. Just pegging to 2.8.13. Problem for whenever things break again in the unknown future.


Package request: Lilipod (a very simple container and image manager)

Package request: Lilipod (a very simple container and image manager)
https://github.com/89luca89/lilipod
Lilipod is also a nice fallback for Distrobox when no container-manager is found, or when it's not possible to install one. Being a fully self-contained binary that lives in one directory (LILIPOD_HOME) it makes it easy to install and remove without package managers.
Check:
https://github.com/89luca89/distrobox/blob/main/docs/compatibility.md#supported-container-managers

In case anyone needs this shortcut, I already made a package in my NUR repo.
https://github.com/nikp123/nur-packages/blob/master/pkgs/lilipod/default.nix


-fix added regions/continent m49 codes

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


[Fix] Simplify the process to persist metadata changes to avoid data loss

Fixes #26
Heads up: this PR was built on top of PR #28 (which has to land first)
Description of the change
Due to the way kytos-ng/topology was doing the persistency of metadata changes/user-requests, it can leads to lost of information when kytos shutdown right after returning a success status code to the user (see Issue #26).
To fix this eventual undesired behavior, I've removed the KytosEvent kytos/topology.{entities}.metadata.{action} and added calls to self.save_metadata_on_store() directly. Indeed, the Kytos event kytos/topology.{entities}.metadata.{action} was just used internally by kytos-ng/topology and there was no benefit on keep using it.
Unit and integration tests were updated to reflect this new metadata persistency route.
End-to-end tests were run using this new approach and no failure was reported in a 400 repetitions test.
Release notes

Removed KytosEvent kytos/topology.{entities}.metadata.{action} used to persist metadata information, and using direct calls instead. The change improved reliability of metadata persistency.

@italovalcy looks good to me. Great to have the improvements and more deterministic exec.
I've just realized that we haven't using the link metadata events on pathfinder yet, and currently it only subscribes to "kytos.topology.updated", but it could also benefit from listening to links medadata events since they're used to build the graph, otherwise they could diverge slightly in some cases, although this is already a potential issue that we currently live with. Should we map this and implement on both topology and pathfinder? I suppose as mef_eline starts using more the constraints when finding a path that's when it would be more valuable to have that in place.

Good point, @viniarck. Very much appreciated your review. I'm glad this was caught before getting merged. Indeed, the kytos/topolog.*.metadata.* can be useful for some clients and should be preserved. I've just pushed the revert of previous changed and included the persistency of metadata right before generating the Kytos event. Please could you review again?

@italovalcy looks good to me. Great to have the improvements and more deterministic exec.
I've just realized that we haven't using the link metadata events on pathfinder yet, and currently it only subscribes to "kytos.topology.updated", but it could also benefit from listening to links medadata events since they're used to build the graph, otherwise they could diverge slightly in some cases, although this is already a potential issue that we currently live with. Should we map this and implement on both topology and pathfinder? I suppose as mef_eline starts using more the constraints when finding a path that's when it would be more valuable to have that in place.

Good point, @viniarck. Very much appreciated your review. I'm glad this was caught before getting merged. Indeed, the kytos/topolog.*.metadata.* can be useful for some clients and should be preserved. I've just pushed the revert of previous changed and included the persistency of metadata right before generating the Kytos event. Please could you review again?

@italovalcy I've just done a second pass review, looks great to me (and I've mapped on flow_manager an issue for this requirement, just we have on our radar).
This hasn't changed on this PR, but save_metadata_on_store call being called in the request response threaded cycle still has margin to not complete the event in some shutdown corner cases, one day when we can replace this is a transnational DB call it'd be great, trying to fix with a busy wait callback loop might not be worth it though.

@italovalcy looks good to me. Great to have the improvements and more deterministic exec.
I've just realized that we haven't using the link metadata events on pathfinder yet, and currently it only subscribes to "kytos.topology.updated", but it could also benefit from listening to links medadata events since they're used to build the graph, otherwise they could diverge slightly in some cases, although this is already a potential issue that we currently live with. Should we map this and implement on both topology and pathfinder? I suppose as mef_eline starts using more the constraints when finding a path that's when it would be more valuable to have that in place.

Good point, @viniarck. Very much appreciated your review. I'm glad this was caught before getting merged. Indeed, the kytos/topolog.*.metadata.* can be useful for some clients and should be preserved. I've just pushed the revert of previous changed and included the persistency of metadata right before generating the Kytos event. Please could you review again?

@italovalcy I've just done a second pass review, looks great to me (and I've mapped on pathfinder an issue for this requirement, just we have on our radar).
The save_metadata_on_store being called in the request response threaded cycle still has margin to not complete the event in some shutdown corner cases, one day when we can replace this is a transnational DB call it'd be great, trying to fix with a busy wait callback loop might not be worth it though, maybe we can consider this as a task once we prioritize the new NoSQL DB?

That is true, @viniarck. I've decided not handle this for now, because - as you mentioned - our current backend would require a busy wait to guarantee data was persisted before return to the user. Which means that if we force kytos kill, or if kytos crash right after putting the storehouse save event, data can potentially be lost. Let's pursuit a better backend to handle those corner cases.


Node delivers only 0 values

Hello,
due to problems with the login at alphaess I have now installed version 1.6.0. I use the backup data because I always received 0 values for real-time data. In the new version 1.6.0 the backup data are now also all 0.
Thank you very much,
Greetings Jürgen

@Joehne that sounds very strange. I cannot see anything not working here. Can you enable verbose logging in node-red and post a log here? Maybe we find out what's going on...

I have set the level to"debug" in the settings file.
The Output istonly:
9 Oct 18:04:51 - [debug] [alphaess-monitoring:Alpha S5] Fetching realtime data (backup path)...
9 Oct 18:04:52 - [debug] [alphaess-monitoring:Alpha S5] Processing data...
9 Oct 18:05:03 - [debug] [alphaess-monitoring:Alpha S5] Fetching realtime data (backup path)...
9 Oct 18:05:04 - [debug] [alphaess-monitoring:Alpha S5] Processing data...

Strange. Can you untick backup path checkbox and publish flow? Afterwards re-tick it and publish flow again? Does this change sth.?

here the log without backup
9 Oct 18:34:29 - [debug] [alphaess-monitoring:Alpha S5] Fetching realtime data...
9 Oct 18:34:29 - [warn] [alphaess-monitoring:Alpha S5] There was an error fetching realtime data for AK1510120700115: Malformed or empty response!
9 Oct 18:34:29 - [debug] [alphaess-monitoring:Alpha S5] Processing data...
9 Oct 18:34:29 - [error] [function:prepare] TypeError: Cannot read property 'toFixed' of undefined
9 Oct 18:34:41 - [debug] [alphaess-monitoring:Alpha S5] Fetching realtime data...
9 Oct 18:34:41 - [warn] [alphaess-monitoring:Alpha S5] There was an error fetching realtime data for AK1510120700115: Malformed or empty response!
9 Oct 18:34:41 - [debug] [alphaess-monitoring:Alpha S5] Processing data...
9 Oct 18:34:41 - [error] [function:prepare] TypeError: Cannot read property 'toFixed' of undefined
by the way: See a PM at Storion4you

now I just see that I no longer see any current data on the Alpha Portal either. In this respect, I assume for the time being that the node is working properly.
Alpha-Ess is the problem :(

However, the battery state of charge is still displayed. The value would be enough for me.

Strange.
Now the display in the portal is ok again, but the node still delivers 0 values.

I would like you to send me some test credentials to your system to dehsgr at-sign outlook dot com. So I could check this from my site. Alpha ESS seems to update/change sth. at their servers.

have sent the link for guest access.

Thank you very much. The web portal function (this is the one I use to query the data) gives me only zero values too. There must be sth. wrong on Alpha ESS system site. I'm not able to do sth. from my site here. :-(

Unsure if it's the same, but in the last 24-48 hours i'm also facing issues. Log from node shows this:
There was an error during login operation into Alpha ESS monitoring portal: SyntaxError: Unexpected token  in JSON at position 0
We got the following unprocessable body:
�ER�r�0|��8h��6��<ƀ@7"��q���;�����������o��v5�&$mJ����P4Y+,��%Ih�	7B�ca�&�f�km��VN̤��G(:��*����ci���-5�D�TuDڞ�(�D����.Bb˶ up$���R_Q�+H�8H�2��)�nO�#<��iS;a�<�p���GGj{#X����V;��#ou� E�K��ť/����)M��
��Wl��׊b�}��d�����.�W�g;F΅Ls��}#�e�أ�q?ڟ::���Z���3>p�������Τ��r��ݕ��4\�,���c�@��z@�9������=�91���͞�[��
�H�D�7ct��;��Ij����)#�{w�CEWŮ4$��ǝ�s|��?�Y����Կ�������Z��u�N�=2؀[���Ʃ���	����6벅/yՍ+�ջ�Bc��g���Dy����ny+��mN4>S��yW	Hҝ�/������R���.��z>�<сsAB�{%����>h�y���R�)��	����7�

@Joehne I recently published another fix reflecting backup path. You might get values again now. Would be happy for your feedback.

I opened a ticket with Alpha on 9 October. After some discussions, Alpha actually managed to display the data in the portal again. I can now access the data directly and also via the backup path. This happened two days ago and I only noticed the correction yesterday. I am still using version 1.7.0.
Upgrade to 1.7.1:
Again, the original and backup path works.
Thank you for the info and for your work!


Additional commands

Only the very bare minimum functionality is included at the moment, so extra commands are needed:

[x] #2
[x] #3
[x] #4
[x] #5

Closed by 4db5201.


Help doesn't short circuit

Probably related to #75, the --help option doesn't short circuit unless you're accessing an option via the array access interface.

As stated in #75 the options don't have their values set until the argument tokens are parsed. The parse function is not run until the array access is used for the first time.
Because of this, validation of the arguments will not occur until you access the options through the array accessor, or you manually call the parse function.


Not usable on Node.js 12

Truffle and its sub-packages (truffle-contract) are unusable on Node.js 12 (trufflesuite/truffle#2070). Because of that, this package is also unusable on Node.js 12.

@filips123 thanks for opening this! As you noted, we'll need to keep an eye on truffle and upgrade once they add support.

Bumping this issue to a bug, we really would love to use node 12... especially because it is a requirement for https://github.com/panva/jose

@OR13 This will probably be fixed in next version of Web3.

This has been fixed on truffle/web3 https://github.com/ethereum/web3.js/issues/2913

Looks like this is still blocked because of another dependency of @truffle/hdwallet-provider
See: https://github.com/trufflesuite/truffle/issues/2070#issuecomment-554140180
https://github.com/ethereumjs/ethereumjs-wallet/pull/91

sadness... thanks for pinging those issues.

Most features seem to be working in node 12 but a couple of tests are failing, mmmh. Looks like it's related to the truffle wallet
https://travis-ci.org/decentralized-identity/element/builds/612247263


⚠ ClamAV has degraded performance

In edec560, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 68 ms

Resolved: ClamAV performance has improved in 22b5008.


fix(ModalContent): [TOP-3334] proper bottom edge detection for scrolling shades

TOP-3334
Description
On some screen sizes el.scrollTop is rounder in wrong direction which results in shade not disappearing even though user scrolled to the very bottom of the content. This definitely reproduces on Chrome/Windows. This PR aims to fix this.
How to test

Ensure scrolling shade at the bottom properly disappears once you scroll to the end of the container
Temploy link

Screenshots
https://github.com/toptal/picasso/assets/903437/9be16563-d0f9-4405-9ca7-44b8f9b17a1c
Development checks

[x] Add changeset according to guidelines (if needed)
[x] Read CONTRIBUTING.md and Component API principles
[x] Make sure that additions and changes on design follow Toptal's BASE design, and it's been already discussed with designers at #-base-core
~Annotate all props in component with documentation~
~Create examples for component~
[x] Ensure that deployed demo has expected results and good examples
[x] Ensure the changed/created components have not caused accessibility issues. How to use accessibility plugin in storybook.
[x] Self reviewed
~Covered with tests~

Breaking change

~codemod is created and showcased in the changeset~
~test alpha package of Picasso in StaffPortal~

All development checks should be done and set checked to pass the
GitHub Bot: TODOLess action

PR commands

List of available commands:

@toptal-bot run package:alpha-release - Release alpha version
@toptal-anvil ping reviewers - Ping FX team for review

PR Review Guidelines

When to approve? ✅
You are OK with merging this PR and

You have no extra requests.
You have optional requests.

Add nit: to your comment. (ex. nit: I'd rename this variable from makeCircle to getCircle)

When to request changes? ❌
You are not OK with merging this PR because

Something is broken after the changes.
Acceptance criteria is not reached.
Code is dirty.

When to comment (neither ✅ nor ❌)
You want your comments to be addressed before merging this PR in cases like:

There are leftovers like unnecessary logs, comments, etc.
You have an opinionated comment regarding the code that requires a discussion.
You have questions.

How to handle the comments?

An owner of a comment is the only one who can resolve it.
An owner of a comment must resolve it when it's addressed.
A PR owner must reply with ✅ when a comment is addressed.

@toptal-anvil ping reviewers


chore: update dependencies

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)

Update dependencies to pass the yarn audit

@nytamin This has broken the tests as the ts compiler/linter is being more strict about the tests and mocks.
Before I or anyone fixes that all up, is this desired or is that something we want to suppress?
Some examples of the errors (its a very long list but I can only see a couple of types):
jest.diagnostics` option):
    src/devices/__tests__/abstract.spec.ts:90:41 - error TS2493: Tuple type '[]' of length '0' has no element at index '1'.

    90  	expect(commandReceiver0.mock.calls[0][1]).toMatchObject(

    src/__mocks__/atem-connection.ts:123:41 - error TS6133: 'key' is declared but its value is never read.

    123  setDownstreamKeyOnAir (onAir: boolean, key?: number): Promise<any> {

    src/devices/__tests__/casparcg.spec.ts:473:10 - error TS2532: Object is possibly 'undefined'.

    473  	expect(commandReceiver0.mock.calls[4][1].name).toEqual('ScheduleSetCommand')


Avoid redundant GetObject API queries in s3.Reader

Motivation
Fixes #494
As documented in #494, simple uses of open with an S3 resource result in two redundant (and billable) GetObject calls instead of one. For example, this uses two API calls:
open("s3://my-bucket/my-object").read()
The first query is used solely to populate Reader._content_length.
This PR avoids the redundant queries by making Reader._content_length a @property provided by Reader._raw_reader._content_length, which is in turn populated by _raw_reader._load_body().
There are two user-visible changes:

open("s3://my-bucket/my-object")._content_length will return None until .seek() or .read() is called.
open("s3://my-bucket/nonexistent-object") will not throw KeyNotFound until .seek() or .read() is called.

Both changes could be avoided by calling seek(0) inside __init__, which would still avoid redundant API queries in most cases. However, that would result in a redundant API query if the file is opened and seek is immediately called by the user.
This PR also includes a change to the s3 unit tests so that tests can assert what API queries were called. I only added those assertions for SeekableBufferedInputBaseTest, but it would probably make sense to add them to the other tests in test_s3.py as well.
Checklist
Before you create the PR, please make sure you have:

[x] Picked a concise, informative and complete title
[x] Clearly explained the motivation behind the PR
[x] Linked to any existing issues that your PR will be solving
[x] Included tests for any new functionality
[x] Checked that all unit tests pass

Additional API thoughts:
_content_length could raise an AttributeError if it is accessed before length is available, which might avoid some subtle bugs when its value is None.
open() could have new seek=0, seek_whence=constants.WHENCE_START parameters, and then __init__ could do
    if seek is not None:
        self.seek(seek, seek_whence)

This way the current behavior is preserved by default, without the redundant API calls, but you can also efficiently handle a seek-before-read. Probably it would be a good idea to implement that for all backends if implementing it at all, though.

@mpenkov, this is ready for review.
There's also still an outstanding design question from my previous comment about whether to add a seek(0) to Reader.__init__, optionally controlled by new parameters to open().

@mpenkov I believe this is ready for review. This 3rd version includes a proposed API where seek(0) is called by default during open(), but can be skipped with defer_seek=True. This means there is no user-visible change from the current behavior.

Can you please fix the flake8 issue?

I fixed the flake8 issue specific to this PR, but left the flake8 issue that is already failing on the develop branch, as that's arising from a file not implicated by this PR.

@jcushman can you rebase off of develop? We fixed the flake8 issue in another PR and merged it

Thank you for your contribution and your patience @jcushman ! And congrats on your first PR to smart_open 🥇 !


ARROW-12743 [R] Add DESCRIPTION fields for dev dependencies

@jonkeane @nealrichardson @thisisnic draft 1: am I missing dependencies?
~Having them separately means we need to run 2 lines of code:~
r> install_deps(dependencies = "Config/Needs/website")
r> install_deps(dependencies = "Config/Needs/dev")

I have tested both calls locally and they do what is expected. The first one installs {pkgdown} from CRAN and the second one installs {roxygen2}, {lintr} and {styler} from the r-lib GitHub.
I should probably add a paragraph to the workflow docs indicating how to install the workflow dependencies.
=========
Correction: the dependencies can be specified as a character vector of length longer than 1.
install_deps(dependencies = c("Config/Needs/dev", "Config/Needs/website"))

Bumped into this by accident, after installing the dev version of {roxygen2} with the above command.

This seems fine, would you mind also changing / adding to the developer docs to reflect what this change would mean? Same for the make file: could you add in what would need to change there?
You also should look through the repo and see if there are other places (i.e. in our CI) that could benefit from this (presumably, one of the benefits is that we can control what versions / where from those are installed from one place now rather than needing to do it in a bunch of different places?)

Not sure what to recommend in the developer docs. I ran
install_deps(".", dependencies = c("soft", "Config/Needs/1", "Config/Needs/2"))

and 40+ minutes later my R session was still busy installing (mostly binary) packages. dependencies = "soft" is the equivalent of dependencies = TRUE but something is not right with this picture.
I'd be tempted to suggest using pak as that uses a separate process and is much faster.

40+ minutes later my R session was still busy installing (mostly binary) packages

Indeed, something sounds not quite right about that or not the behavior we would ultimately want here.
As for what to recommend in the developer docs I like to approach it from the questions of: Who is our audience there? What do they need to accomplish with these docs? What skills are they coming in with? (there almost certainly are multiple answers here, so we'll likely need to thread that needle between the different groups) Sometimes I find that writing out what the docs are (or what are the commands that I would run to do this task and what do those look like? Here those are the docs cause we're not writing a new function here, but the principle is the same) helps figure out if the UX feels right or if something is missing there

@thisisnic & @jonkeane would you mind having a look? 🙏🏻

There is a new GHA workflow for installing dependencies. Do we want to make use of it or should I aim to close this issue and then open a follow-up Jira for later? It looks like it allows us to control how Config/Needs are installed, via:
needs: |
      website
      coverage

There is a new(ish) GHA workflow for installing dependencies. Do we want to make use of it or should I aim to close this issue and then open a follow-up Jira for later? It looks like it allows us to control how Config/Needs are installed, via:
needs: |
      website
      coverage

I'd be inclined to look at it in a follow-up ticket, to keep things a bit simpler on the ticket and PR discussion

@github-actions crossbow submit test-ubuntu-default-docs

@github-actions crossbow submit test-ubuntu-default-docs

I think I am on the right track as the documentation job is failing with a code 3 which indicates we are on the correct branch of the conditional statement in r_deps.sh
elif [ ${R_DEV_DEPS} = "website" ]; then
  exit 3
  ${R_BIN} -e "remotes::install_deps(dependencies = 'Config/Needs/website')"

@github-actions crossbow submit test-ubuntu-default-docs

I think the docs might be failing due to remotes::install_deps(dependencies = c("Config/Needs/webiste")) only installing pkgdown and not it's dependencies, one of which is fs.

Given the results of the little investigation into the dependencies argument for remotes::install_deps() (reproduced below). What direction should we take this PR in?
Options:

do nothing - leave things as they are (i.e. not use the Config/Needs/... fields in DESCRIPTION -> close this PR without merging any of the proposed changes
do something - cherry pick the PR and mostly keep the parts that improve a bit the documentation
still make use of the Config/Needs/... fields as it allows us to keep some "workflow" dependencies closer to the code - keep the PR as is (maybe supplement calls with dependencies = c("hard", "Config/Needs/website") with dependencies = TRUE.
do something else.

What do you think? @jonkeane @nealrichardson @thisisnic @paleolimbot @ianmcook and others 😄 .
=====================
Investigation results:
What we would need is a combination between dependencies = TRUE and dependencies = "Config/Needs/website". I ran the experiment and the results are below:

test
description
number of packages installed

1
dependencies = TRUE
64

2
dependencies = 'hard'
12

3
dependencies = c('hard', 'Config/Needs/website')
61

4
dependencies = 'soft'
1819

5
dependencies = c('soft', 'Config/Needs/website')
1819

6
dependencies = c('Config/Needs/website')
1

I excluded dependencies = "soft" & combinations of "soft" since they are too recursive and end up installing an excessive number of packages.
dependencies = "hard" & dependencies = "Config/Needs/website" are too narrow.
I compared dependencies = TRUE to dependencies = c("hard", "Config/Needs/website"). While the overall number of installed packages looks promising (64 vs 61), there isn't complete overlap.

indicator
value

packages exclusive to test 1
21

packages exclusive to test 3
18

packages in common
43

We can safely conclude that dependencies = c("hard", "Config/Needs/website") is not equal to dependencies = TRUE + dependencies = c("Config/Needs/website").
We definitely need "Config/Needs/website" - in our case pkgdown and its dependencies, but in combination with dependencies = "hard" it is too narrow in scope, while with dependencies = "soft" it is much too wide.
How I got there?

I removed all installed packages from the system library (with the exception of "base" and "recommended"packages)
I installed remotes and rstudioapi in the system library
each test installed packages to its own folder (configured via the R_LIBS_USER environment variable) with the R session being restarted for each run
I then compared the contents of the 6 libraries

Discussed yesterday with @jonkeane to keep only the documentation improvement bits of this PR.

Thanks. I'd be keen to merge this as-is if that's ok.


MatButton: Link to Non-Blazor-Uris

<MatButton Link="/Identity/Account/Login">Login</MatButton>
=> doesn't work, because Identity is not within the component route-space
Workaround:
<MatButton Dense="true" OnClick="@( p => UriHelper.NavigateTo("/Identity/Account/Login", true))">Login</MatButton>
Solution could be a property LinkForceLoad.
Ryan Nowak had the same problem:
https://github.com/aspnet/AspNetCore/issues/11099

This should be fairly simple to fix, just need to install VS 2019 Preview and i will do a pull request for a fix for this, can simple add ForceLoad option to the button and iconbutton.


Before using EVP_PKEY_free, I want to clear sensitive memory information

I use PEM_read_bio_PrivateKey to return EVP_PKEY.
Before using EVP_PKEY_free, I want to clear sensitive memory information.
However, other operations are performed before OPENSSL_free in EVP_PKEY_free.
Can OpenSSL do what I want to do now?
void EVP_PKEY_free(EVP_PKEY *x)
{
    int i;

    if (x == NULL)
        return;

    CRYPTO_DOWN_REF(&x->references, &i, x->lock);
    REF_PRINT_COUNT("EVP_PKEY", x);
    if (i > 0)
        return;
    REF_ASSERT_ISNT(i < 0);
    EVP_PKEY_free_it(x);
    CRYPTO_THREAD_lock_free(x->lock);
    sk_X509_ATTRIBUTE_pop_free(x->attributes, X509_ATTRIBUTE_free);
    OPENSSL_free(x);
}

Hmmm, the routines that are called should do a memory cleanse of the key material, I assume that's what you mean.

Hmmm, the routines that are called should do a memory cleanse of the key material, I assume that's what you mean.

@levitte
like the private key is key information，I want to clear the key information in the memory before calling EVP_PKEY_free.
Does OpenSSL not encapsulate this interface?

@levitte
When I call EVP_PKEY_free, do you clear key information in the memory, such as the private key.
I call EVP_PKEY_get1_RSA and then RSA_free.

The EVP_PKEY_free is going to clear the key information in the memory before it deallocates the memory occupied by the key.

If you are able to use the secure memory arena, then all private key information is stored there.  This is done at the BIGNUM layer.

ok thanks!


[Question] aws ses setup

Question
Hi, I cannot send emails. It appears to be that the mail from address is getting its value from the username
In my setup with aws ses I have
mail:
  username: <access_key_id>
  password: <secret_access_key>

Thus I'm getting an error because I cannot set another value to a mail from address like<EMAIL_ADDRESS>

hi, first you need config the mail server - where send the email.

And then config the receiver email in Notification

Then config which alarms message you would like to receive.


Redesign main interface

The main interface is currently in MVP with only two buttons. Redesign it.

Use a nice background image / gradient and buttons with transparency.


Slow boot - can it be improved? (would love to contribute)

Basically, I want to sort of bump up this issue: https://github.com/facebook/create-react-app/issues/2536
Some of the web apps I work on regularly take 30s to 60+s to boot. While this is considered "perfectly" normal, I really think we should try and improve this. I am not aware of create-react-app's internals, but I would really love to understand what's happening and what is the main bottleneck of why the start-up takes so much time, and if possible would love to contribute. Could someone point me in the right direction here? That is, what are the known bottlenecks, what has been tried to improve, what can be done but is yet in backlog, any information that helps, really.
Thanks, and cheers for the amazing work! :)
P. S. I've posted this on Spectrum Chat a few days back as suggested in the pinned issues, but it seems like most posts don't get activity over there. Is it looked at actively? If not, maybe it's a good idea to update the pinned issue. Else, I'm happy to close this and move the discussion there.

Its difficult to tell anything about your case given that we don't know anything about your app.
Webpack 5 is currently in beta and adds  persistent caching between builds which might be something you will have use for once it's stable and lands in CRA.
https://github.com/webpack/changelog-v5

I don’t think there’s a whole lot of low hanging fruit, so I’m not sure if anyone can point you to a certain place and say “here make this faster”. That is to say, any performance work will probably be novel.
Probably the best place to help would be in answering the question you asked: profiling and finding places that are unnecessarily slow. You may be able to dig through the issue tracker and find people who have already done work like this as a starting point.
Most of CRA is just wrapping other tools like webpack and babel, so a lot of performance work happens in those respective projects.

Thanks for wanting to help, but like @heyimalex mentioned most of the work is done by tools like webpack and babel. If you do find anything that can be improved on the side of create-react-app feel free to open a PR!


Tests fail

Hi,
It seems like testItSaysHello() fails for me on timeout. Actually, all the methods do. Do you have any idea what could be the problem here? I installed everything needed, at least I believe so.
Thanks!

@poksi592 If your test execution takes a long time, then yes, it may timeout. You can increase the timeout like this:
animalMockService!.run(timeout: 60) { (testComplete) -> Void in
      animalServiceClient!.getAlligator { (alligator) in
        expect(alligator.name).to(equal("Mary"))
        testComplete()
      }
    }

Also ensure that you are calling the testComplete() callback from the mock service.  What test framework are you using? If you can provide a sample of the test you have written, that will help in debugging the problem.

@andrewspinks For whatever reason, the service wasn't started from Pre-build script...
When I started it manually, it worked. :)
Thanks!

@poksi592 A helpful command for your Scheme's Test Pre-actions and Post-actions that will help you debug any issues with running and stopping pact server on every test run:
exec > ${PROJECT_DIR}/pre-build.log 2>&1
PATH=/absolute/path/to/your/.rvm/rubies/ruby-2.3.1/bin:$PATH
"$SRCROOT"/scripts/start_server.sh


refactor: switch Option and Result to @sapphire/result

This PR switches the local basic implementation of Option<T> and Result<T, E> to @sapphire/result's, which is a high-performance package that ships the two with almost full API coverage from the Rust types, including nightly features.

Note: I need to tweak the types a little, it seems implements (which the classes use to implement IOption and IResult respectively) removes the type union's type safety, it is unknown to me why this happens, but I'll investigate in the following days. Worst case scenario, I'll have to drop the interfaces and copy the documentation.

Also dropped the ESM exports because TSC generates exports.*, which is ESM-compatible, I tested it locally and seems to work as always.
Finally, I refactored the code and removed some utilities that are extraneous with the advanced APIs, and exported Option and Result, which give access to Option.from, Option.fromAsync, Option.is, between others, including the Result derivatives.

Also dropped the ESM exports because TSC generates exports.*, which is ESM-compatible, I tested it locally and seems to work as always.

Should use gen-esm-wrapper instead, safest bet in the event ESM decides to have a moment (would also mean compatibility with Node16 module if you add a types property to the exports)


Julia error messages not displayed in output because our renderer only takes Stack Trace into account

Originally filed here https://github.com/julia-vscode/julia-vscode/issues/2326
We might want to re-visit this renderer, it has the potential to break in a number of other situations.
I think we might want to consider the renderer architecture or have a custom error mime type so that we can render this in a special way for Interactive window (e.g. instead of using VSCodes error type, use a custom mime, this way it will work in Notebooks for Python, Julia, .NET, etc)
Right now its not useful for Julia notebooks as error message is not displayed.

@rebornix /cc

E.g thers no handling of ASCII in the custom renderer but VS Codes built in renderer has it.

we used import ansiToHtml from 'ansi-to-html'; to convert ASCII, which is how we did in webview impl interactive window. Do we know what we are missing. cc @rchiodo @joyceerhl

@DonJayamanne can you show an example of what's going wrong? I'm not 100% sure I understand the problem.

ng wrong? I'm not 100% sure I understand the problem.

We're not displayin the error message anymore.
Errors have error message, name & stack.
With our custom renderer we only display the stack trace & not the error message & name.

convert ASCII, which is how we did in webview impl int

Sorry, I missed that bit. Updated the message

So would the fix be to display the error message, name, and stack?
I agree it would be ideal if this only happened in the interactive window, but seems easier to just add the two extra items.

We're not displayin the error message anymore.
Errors have error message, name & stack.
With our custom renderer we only display the stack trace & not the error message & name.

Thanks for the details. We should do the same as the core, it's an oversight. PR: https://github.com/microsoft/vscode-jupyter/pull/6931

Related to https://github.com/microsoft/vscode/issues/125876


Terrform apply crashes when creating buildkite_team

I just started exploring terraform for buildkite to create team members and assign users to it, but looks like when I try and apply code it crashes with below error.
I have tried using TF version 0.13.5 and latest too: v1.0.9 but it crashes in both the cases
Provider I am using
terraform {
required_providers {
buildkite = {
source = "buildkite/buildkite"
version = "0.5.0"
}
}
}
provider "buildkite" {
api_token = "" # can also be set from env: BUILDKITE_API_TOKEN
organization = "B1x" # can also be set from env: BUILDKITE_ORGANIZATION
}
Plan looks good though
plan:
buildkite_team.non_prod_deployers will be created

resource "buildkite_team" "non_prod_deployers" {

default_member_role = "MEMBER"
default_team        = true
description         = "creating_via_TF"
id                  = (known after apply)
name                = "Non_Prod_Deployers"
privacy             = "VISIBLE"
slug                = (known after apply)
uuid                = (known after apply)
}

error:
buildkite_team.non_prod_deployers: Creating...
╷
│ Error: Plugin did not respond
│
│   with buildkite_team.non_prod_deployers,
│   on main.tf line 1, in resource "buildkite_team" "non_prod_deployers":
│    1: resource "buildkite_team" "non_prod_deployers" {
│
│ The plugin encountered an error, and failed to respond to the plugin.(*GRPCProvider).ApplyResourceChange call. The plugin
│ logs may contain more details.
╵
Stack trace from the terraform-provider-buildkite_v0.5.0 plugin:
panic: interface conversion: graphql.ID is nil, not string
goroutine 70 [running]:
github.com/buildkite/terraform-provider-buildkite/buildkite.GetOrganizationID(0xc00051e079, 0x3, 0xc0005102d0, 0x0, 0xc000536f10, 0x1820208, 0xc0005656f8)
github.com/buildkite/terraform-provider-buildkite/buildkite/util.go:27 +0x1bf
github.com/buildkite/terraform-provider-buildkite/buildkite.CreateTeam(0x18d1128, 0xc000536f00, 0xc000197d80, 0x170b6a0, 0xc00053a220, 0xc00057acb0, 0x1412dea, 0xc00053a8e0)
github.com/buildkite/terraform-provider-buildkite/buildkite/resource_team.go:101 +0x6f
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*Resource).create(0xc0000a88f0, 0x18d10b8, 0xc000554e00, 0xc000197d80, 0x170b6a0, 0xc00053a220, 0x0, 0x0, 0x0)
github.com/hashicorp/terraform-plugin-sdk/v2@v2.0.3/helper/schema/resource.go:276 +0x1ed
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*Resource).Apply(0xc0000a88f0, 0x18d10b8, 0xc000554e00, 0xc00054f180, 0xc00053a8e0, 0x170b6a0, 0xc00053a220, 0x0, 0x0, 0x0, ...)
github.com/hashicorp/terraform-plugin-sdk/v2@v2.0.3/helper/schema/resource.go:387 +0x674
github.com/hashicorp/terraform-plugin-sdk/v2/internal/helper/plugin.(*GRPCProviderServer).ApplyResourceChange(0xc00000c0f0, 0x18d10b8, 0xc000554e00, 0xc00054ef50, 0xc00000c0f0, 0xc00000c100, 0x1820208)
github.com/hashicorp/terraform-plugin-sdk/v2@v2.0.3/internal/helper/plugin/grpc_provider.go:952 +0x8ef
github.com/hashicorp/terraform-plugin-sdk/v2/internal/tfplugin5._Provider_ApplyResourceChange_Handler.func1(0x18d10b8, 0xc000554e00, 0x17b6600, 0xc00054ef50, 0xc000554e00, 0x17411a0, 0xc000574601, 0xc000511170)
github.com/hashicorp/terraform-plugin-sdk/v2@v2.0.3/internal/tfplugin5/tfplugin5.pb.go:3312 +0x89
github.com/hashicorp/terraform-plugin-sdk/v2/plugin.Serve.func3.1(0x18d1160, 0xc000574690, 0x17b6600, 0xc00054ef50, 0xc00053a780, 0xc000511170, 0xc0005b7ba0, 0x10a3e26, 0x1790360, 0xc000574690)
github.com/hashicorp/terraform-plugin-sdk/v2@v2.0.3/plugin/serve.go:76 +0x87
github.com/hashicorp/terraform-plugin-sdk/v2/internal/tfplugin5._Provider_ApplyResourceChange_Handler(0x17c3e00, 0xc00000c0f0, 0x18d1160, 0xc000574690, 0xc000536a20, 0xc000304060, 0x18d1160, 0xc000574690, 0xc000556180, 0x17c)
github.com/hashicorp/terraform-plugin-sdk/v2@v2.0.3/internal/tfplugin5/tfplugin5.pb.go:3314 +0x150
google.golang.org/grpc.(*Server).processUnaryRPC(0xc0000e0540, 0x18d7a98, 0xc000103380, 0xc000538200, 0xc0000a0d20, 0x1cade40, 0x0, 0x0, 0x0)
google.golang.org/grpc@v1.30.0/server.go:1171 +0x52b
google.golang.org/grpc.(*Server).handleStream(0xc0000e0540, 0x18d7a98, 0xc000103380, 0xc000538200, 0x0)
google.golang.org/grpc@v1.30.0/server.go:1494 +0xccf
google.golang.org/grpc.(*Server).serveStreams.func1.2(0xc00012e3e0, 0xc0000e0540, 0x18d7a98, 0xc000103380, 0xc000538200)
google.golang.org/grpc@v1.30.0/server.go:834 +0xab
created by google.golang.org/grpc.(*Server).serveStreams.func1
google.golang.org/grpc@v1.30.0/server.go:832 +0x1fd
Error: The terraform-provider-buildkite_v0.5.0 plugin crashed!
This is always indicative of a bug within the plugin. It would be immensely
helpful if you could report the crash with the plugin's maintainers so that it
can be fixed. The output above should help diagnose the issue.
Refering: https://registry.terraform.io/providers/buildkite/buildkite/latest/docs/resources/team#default_team

Hi @blockoneheera thanks for reaching out. I believe the issue is that the organisation slug you are using is incorrect. It should be b1x (all lowercase).
The provider should certainly not crash in this case but hopefully that can get you on your way. I'll create another issue to improve the error messaging and handling for this

Thanks, you are right, I was using an uppercase letter. Sorry for the
confusion.
Regards
Heera
On Tue, Nov 2, 2021 at 12:28 PM Jarryd Tilbrook @.***>
wrote:

[External Email: Use caution with links and attachments]
Hi @blockoneheera
https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_blockoneheera&d=DwMCaQ&c=sSVGO1PAPMGyxGLZsRfH-A&r=11LCe0iE94V6m42Fifo43eYxbhxC_pSVTkNigmnAwyg&m=IzZjHAEU5fCB4TWxyE1GIlq03XrsaPM3oK0W-fuYD2B9o3wbBifcoCfSVWSgsvtC&s=O4_IM8g9GXumwp7ZXyVF2eGRw6zJDvF07ldyDOB8-7k&e=
thanks for reaching out. I believe the issue is that the organisation slug
you are using is incorrect. It should be b1x (all lowercase).
The provider should certainly not crash in this case but hopefully that
can get you on your way. I'll create another issue to improve the error
messaging and handling for this
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_buildkite_terraform-2Dprovider-2Dbuildkite_issues_167-23issuecomment-2D957093229&d=DwMCaQ&c=sSVGO1PAPMGyxGLZsRfH-A&r=11LCe0iE94V6m42Fifo43eYxbhxC_pSVTkNigmnAwyg&m=IzZjHAEU5fCB4TWxyE1GIlq03XrsaPM3oK0W-fuYD2B9o3wbBifcoCfSVWSgsvtC&s=gKwh6t5HdmP6Qz_SfDxSwT94KChHKaWv1_0A7nUB_b4&e=,
or unsubscribe
https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AVQG2EA6GKBS6LEB35JU3ALUJ5SG3ANCNFSM5GZPWTSQ&d=DwMCaQ&c=sSVGO1PAPMGyxGLZsRfH-A&r=11LCe0iE94V6m42Fifo43eYxbhxC_pSVTkNigmnAwyg&m=IzZjHAEU5fCB4TWxyE1GIlq03XrsaPM3oK0W-fuYD2B9o3wbBifcoCfSVWSgsvtC&s=cl1-XztOy7kFDVSn-xf5Ex1cS0ju4CU2ypmwfLQbjbI&e=
.
Triage notifications on the go with GitHub Mobile for iOS
https://urldefense.proofpoint.com/v2/url?u=https-3A__apps.apple.com_app_apple-2Dstore_id1477376905-3Fct-3Dnotification-2Demail-26mt-3D8-26pt-3D524675&d=DwMCaQ&c=sSVGO1PAPMGyxGLZsRfH-A&r=11LCe0iE94V6m42Fifo43eYxbhxC_pSVTkNigmnAwyg&m=IzZjHAEU5fCB4TWxyE1GIlq03XrsaPM3oK0W-fuYD2B9o3wbBifcoCfSVWSgsvtC&s=yeZ9BKl89k01sTJfC97e3ijcWi--2eqL2Vm8zJtXOwE&e=
or Android
https://urldefense.proofpoint.com/v2/url?u=https-3A__play.google.com_store_apps_details-3Fid-3Dcom.github.android-26referrer-3Dutm-5Fcampaign-253Dnotification-2Demail-2526utm-5Fmedium-253Demail-2526utm-5Fsource-253Dgithub&d=DwMCaQ&c=sSVGO1PAPMGyxGLZsRfH-A&r=11LCe0iE94V6m42Fifo43eYxbhxC_pSVTkNigmnAwyg&m=IzZjHAEU5fCB4TWxyE1GIlq03XrsaPM3oK0W-fuYD2B9o3wbBifcoCfSVWSgsvtC&s=dIz-z0xtKYc5Llog1f2OlGp3J2FO8XAuYxKgT9lK3Fo&e=.

--
Heera Singh
Senior Engineer, DevOps, SGP, Exchange Infrastructure
@.***
www.bullish.com
The information contained in this email is confidential together with any
information contained in any attachments to this email. You should not
disclose, give or copy the information to anyone other than the person(s)
who are named or referenced above. The law may also protect the information
as a legally privileged document and/or as a copyright work. If you have
received this email and you are not the person named or referenced above,
please let the sender know and delete the email from your computer (and, if
applicable, your computer system(s) and server(s)). Investment in crypto
assets involves risks. Please refer to our warning statement in relation to
any related marketing materials or communications here
https://bullish.com/privacy-notice/.


Add some tests and a small changes...

load_test.go was failing because we updated the schemas but we didn't update Thema to its latests version. Since we don't have CI yet that verify changes in the schemas it could happen...
kindscats.cue was splitted in kindcat_core.cue that have the Core schema and kindscats.cue that have the common information between schemas.
It adds a small set of tests to verify our current schemas. They aren't enough but its a start.

@spinillos i'm good with this, too, as a first step - is there any more you want to do here e.g. with the txtar?

@sdboyer I only wanted to split the different schemas and add a few tests to verify that its working as expected. So changing thema or/and other things or/and dependencies, at least have something to verify in the CI.
Something that it could be nice to have is a common txtar framework for all projects. I have the feeling that I'm copy/paste everything when I work with thema, cuetsy and kindsys.


Create an intro

Add an intro about myself. who am I, what is my strength, why am I here.

Add an intro about myself. who am I, what is my strength, why am I here.


When staging files are not deleted, functional tests do not report the failed test name

When a functional test fails because a file was not deleted afterwards, an exception is thrown before we print a summary, thus the test name is not reported at the end of the console. Furthermore, the exception is thrown in afterEachTest() which does not report the test name as well.
This makes it hard to pin down which test failed, but it is not impossible; the console output would need to be searched in order to track down the failed tests.
Reason: Reduces effort to analyze test failures

Changing to Low priority, as it is related only to testing.


3D fields

To be clear - this is not a wish for this project. Its a ahem blue sky ahem idea for project X in the future.
Is there any scope for rendering 3D fields of data in the browser using notebooks and holo-view? I made a browser based 3D volume rendered version of atmospheric data a few months ago. I've always dreamed of being able to look at animated 3D fields of data.
Demo: http://demo.3dvis.informaticslab.co.uk/ng-3d-vis/apps/desktop/
Blog post about it: http://www.informaticslab.co.uk/technical/2015/11/27/projectone-retrospective.html

That's a really cool demo and is definitely worth looking into. Could you comment a bit on what libraries you're using to render that plot?
I've looked into this a little bit myself and the only thing which I think could easily be adapted as a HoloViews backend is the CesiumJS library, which also has Python bindings. Shouldn't be too hard to get a prototype running but you'd have to tell us whether that's within the scope of the project.

Yes, that is a really neat demo!
This sort of visualization is definitely within the scope of HoloViews and we have prototyped interactive 3D visualizations using HoloViews in the past. In general we find that 3D functionality often has a lot of domain specific requirements making it hard to come up with a general approach that keeps everyone happy.
I would say something like this would require a lot of effort to implement and polish but it certainly wouldn't be out of scope for a possible HoloViews extension in future.

I've looked at some of the source code now and it looks like you're just using ThreeJS, which is something we've actually played with for another project in the past. Writing a small HoloViews backend that works by generating some HTML+JS to render ThreeJS plots should be fairly straightforward to prototype, but as Jean-Luc points out might take a considerable amount of time to polish.

Hi guys - sorry for being lax and not replying sooner. Yup - three.js is the bottom line. When we made this it required a surprising about of bespoke shader code but I hope three.js will fold this kind of functionality in natively at some point.
Ultimately, all the rendering knows is that its plotting a regularly spaced orthogonal 3D array (of course, that spatial atmospheric fields are non of these things so there is quite a lot of processing to get to something that represents physical space). But obviously this could three (+animation) dimensions which are physical space. Something to tackle in the future, maybe.


Question Item Details

Hi,
Sorry for having to seek advice this way, I can't see any method on here for contacting you regarding a potentially simple question (apologies if this comes across as noob)
Do you have any examples for the Product Info [price] by any chance? if I could have asked directly then no problem paypal gifting something over.
I am trying to get to grips with obtaining pricing info of an ASIN, I can request the data and the function works, but unable to pull out specific values, if I print_r the variable then it does show the details amongst many other values.
Thanks in advance
Chris

Could you please show the example of getting full product data?
I tried this:
    require('../includes/classes.php'); //autoload classes, not needed if composer is being used
    try {
        $amz = new AmazonProductInfo("myStore");
        $amz->setASINs(array("B07H1W7XF1"));
        $amz->fetchCategories();
        return $amz->getProduct(0)->getdata();
    } catch (Exception $ex) {
        echo 'There was a problem with the Amazon library. Error: '.$ex->getMessage();
    }

and  as expected I have got data about categories ONLY.
How can I get the full product data? I cant find the fetch-method about that..
Please help =)

@kossmokvin This issue is nearly four years old and is only tangentially related to your question. I will answer it this time, but if you have more questions or need further help, please make a new issue for it.
You will need to use the Reports API to get detailed product listing data, as the Products API only gives out limited, specific information. Check out the AmazonReportRequest class for a list of available reports. Keep in mind that this library does not read the contents of reports, so you will have to parse the XML/TSV data yourself.


[combobox] Fix accessibility issues

[x] aria-current is not supposed to be used in combination with the option role (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current#associated_roles)
[ ] VoiceOver says "Dialog not selected, selected, current item (8 of 35)"; figure out why it says "not selected, selected"
[ ] Check if keyboard navigation can be improved; feedback: "So when you navigate into the input, you can press backspace and you land on the last tag. Seen with the focus here. When it’s focused, you can press backspace and delete. Or you can use arrow keys to navigate to one of the other items."
[x] The popover is too small in Safari; only the first option is visible
[ ] "You are currently on a selectable (null), inside a list box."

I have another possible issue when using the virtual list.
Steps:

add items
Shift-TAB to land on item
Press ENTER when X has focus
Notice how remaining item is now no longer in the tab order.

https://github.com/user-attachments/assets/fb827144-8c9a-48cf-986b-64570e89bf81

Related (?) issue seen in combobox-multiple-basis:
In Safari (v18.1.1) on macOS 15.1.1:

Add two items
Remove first item

Observe both items be removed.
https://github.com/user-attachments/assets/7403e912-82c2-4c7b-a0d8-20c92fd78f53

Additional issue observed in Safari 18.1 and 18.2 (release 208):
VO reads the item in the list when you navigate up and down on first load.
Then do the following:

navigate and select one item, hear VO read items as you navigate
continue to navigate the list, hear VO not read anything

Selection works fine. And you can type and press Enter to select as well. But VO doesn't read anything from that list after that first selection.