Better viewer zoom/center sync with different refdata

At time of writing, https://github.com/spacetelescope/jdaviz/pull/2179 un-syncs the pan and zoom between viewers in Imviz when different reference data are selected in each viewer, and re-syncs them when the reference data are made to match.
This PR syncs the sky centroids of the FOV in each viewer, and approximately syncs the zoom level. I say the zoom sync is "approximate" because we can't uniformly assign one set of {x/y}_{min/max} for all viewers when any are allowed to have different reference data (/rotation). Instead, I compute the average width of each side of the active viewer in world coordinates, and set the zoom level in the other viewers to match the active viewer's width.
Change log entry

[ ] Is a change log needed? If yes, is it added to CHANGES.rst? If you want to avoid merge conflicts,
list the proposed change log here for review and add to CHANGES.rst before merge. If no, maintainer
should add a no-changelog-entry-needed label.

Checklist for package maintainer(s)

This checklist is meant to remind the package maintainer(s) who will review this pull request of some common things to look for. This list is not exhaustive.

[ ] Are two approvals required? Branch protection rule does not check for the second approval. If a second approval is not necessary, please apply the trivial label.
[ ] Do the proposed changes actually accomplish desired goals? Also manually run the affected example notebooks, if necessary.
[ ] Do the proposed changes follow the STScI Style Guides?
[ ] Are tests added/updated as required? If so, do they follow the STScI Style Guides?
[ ] Are docs added/updated as required? If so, do they follow the STScI Style Guides?
[ ] Did the CI pass? If not, are the failures related?
[ ] Is a milestone set? Set this to bugfix milestone if this is a bug fix and needs to be released ASAP; otherwise, set this to the next major release milestone.
[ ] After merge, any internal documentations need updating (e.g., JIRA, Innerspace)? 🐱

As I mentioned at tag-up, since this could be confusing and has confused you more than once, is it less confusing to force the other viewers to switch to the same rotation as the viewer where this button is clicked first before link pan/zoom is executed?
Would anyone sane want to link pan/zoom on data rotated differently in the sky? Usually when I do it, I expect the data to be aligned (by pixel if I am inspecting data quality flags or by sky if I am inspecting an astronomical object of interest).

@pllim The first example that comes to mind is something like: "I have two galaxies in my image. I want to make elliptical subsets for each, aligning the major axis of the ellipse with the major axis of the galaxy. I open the same image in two viewers with the correct rotation for each galaxy, and draw the elliptical subset in each viewer (so I can avoid changing subset rotation via the plugin)."

Re: https://github.com/bmorris3/jdaviz/pull/12#issuecomment-1766677109
Why would linked pan/zoom be useful in that situation?

@pllim When you load the images, in general, the pan and zoom won't be ideal for drawing your subsets, so you'll probably want to center and zoom into the region with your targets.

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

:exclamation: No coverage uploaded for pull request base (wcs-only-layers@588e459). Click here to learn what that means.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@                Coverage Diff                 @@
##             wcs-only-layers      #12   +/-   ##
==================================================
  Coverage                   ?   90.28%
==================================================
  Files                      ?      159
  Lines                      ?    19503
  Branches                   ?        0
==================================================
  Hits                       ?    17609
  Misses                     ?     1894
  Partials                   ?        0

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


Can't import the library

Hi,
I am trying to install this library with pip install. The library seemed to be successfully installed. My cython is v 0.24.1. But when I tried to import pydensecrf.densecrf, I got .../pydensecrf/densecrf.so: undefined symbol: _ZTINSt8ios_base7failureB5cxx11E error.
I would really appreciate if anyone could help me with this?

At first, this seems to be a problem with your system to me. ios_base::failure is part of the standard c++ library, and it not finding the symbol hints to a linking problem.
Maybe you have multiple compiler/linker versions or libstdc++ versions installed and are mixing them up somehow? You can use ldd densecrf.so to see what exact files are being linked and found at runtime.
I'm afraid there's not much more I can help unless I can reproduce the error myself.

Thanks! I am able to solve the problem by installing libgcc in the anaconda virtual environment.

Awesome! If you would be so kind to give me the exact command you used to fix this, I could include it in the README and it might help others getting the same error.

Cool! I Google for similar problem, and found this one  https://github.com/explosion/sense2vec/issues/19 The solution they mentioned solved my problem.
To install libgcc, I used conda install libgcc

Thank you! I'll close this issue then.


java.lang.RuntimeException: java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex

Hi, when i use this great tool in my app to try to debug the SQLLite database, i got the build error message below:
Error:Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.

java.lang.RuntimeException: java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex

Now, i post my 3 build.gradle files below:
project's build.gradle:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}

}
allprojects {
repositories {
jcenter()
maven { url 'https://maven.google.com' }
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
app's build.gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "27.0.0"
defaultConfig {
    applicationId "com.example.eddieyou.iceboxmanager"
    minSdkVersion 15
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"

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

allprojects {
    repositories {
        jcenter()
        maven { url 'https://maven.google.com' }
    }
}

}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.4.0'
implementation project(':debug-db')
debugImplementation 'com.amitshekhar.android:debug-db:1.0.3'

}
debug-db's build.gradle:
/*
*

Copyright (C) 2016 Amit Shekhar

Copyright (C) 2011 Android Open Source Project

Licensed under the Apache License, Version 2.0 (the "License");

you may not use this file except in compliance with the License.

You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software

distributed under the License is distributed on an "AS IS" BASIS,

WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

See the License for the specific language governing permissions and

limitations under the License.

*/
apply plugin: 'com.android.library'
android {
compileSdkVersion 27
buildToolsVersion '26.0.2'
defaultConfig {
    minSdkVersion 14
    targetSdkVersion 27
    versionCode 1
    versionName "1.0"

    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

    resValue("string", "PORT_NUMBER", "8080")
}

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

allprojects {
    repositories {
        jcenter()
        maven { url 'https://maven.google.com' }
    }

}

}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
    exclude group: 'com.android.support', module: 'support-annotations'
})
testCompile 'junit:junit:4.12'
compile 'com.google.code.gson:gson:2.8.0'
compile 'net.zetetic:android-database-sqlcipher:3.5.7@aar'
compile 'android.arch.persistence.room:runtime:1.0.0'

}
//apply from: 'debug-db-upload.com'
My Android Studio's version is 3.0.1 and i am wondering where the problem is to cause this error?
How to solve it?

You might have to add multiDexEnable true in app/build.gradle. https://stackoverflow.com/a/46591042/6764571

Thank you very much @ShikherVerma !
i added the "multiDexEnable true" in app/build.gradle and got the prompt that  " Error:Execution failed for task ':app:transformClassesWithMultidexlistForDebug'.

java.io.IOException: Can't write [C:\Users\EDDIEYOU\AndroidStudioProjects\IceboxManager\app\build\intermediates\multi-dex\debug\componentClasses.jar] (Can't read [C:\Users\EDDIEYOU.gradle\caches\transforms-1\files-1.1\support-core-utils-26.1.0.aar\a1cf5d5b90545078eb66cd477cf59d04\jars\classes.jar(;;;;;;**.class)] (Duplicate zip entry [classes.jar:android/support/v4/content/PermissionChecker$PermissionResult.class]))"
So i knew that the duplicate zip entry is android/support/v4.
i modified this line to "compile ('com.android.support:appcompat-v7:23.4.0'){
exclude module: 'support-v4'
}"
And everything is OK.
Now i can see the excellent web page for my Sqllite database.
Anyway, how can i post the code in this "Issues" site? i mean the normal words and code are conflicted on the above conversation that i  said since i am new to the Github site.


[BanyanDB-UI] Refactor the top level menus

Search before asking

[X] I had searched in the issues and found no similar feature requirement.

Description
The top-level menus should reflect the structure and state of banyandb. I propose the new menus should be:

Dashboard: A collection of metrics that help diagnose the server.
Stream: create, read and edit streams. Query data in a stream. (identical to the existing database page)
Measure: create, read and edit measures. Query data in a measure. (identical to the existing database page)
Property: Apply, delete and read properties.

Use case
No response
Related issues
No response
Are you willing to submit a PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Do we have ppl working on this?

Do we have ppl working on this?

The guy who worked on GSoC's related issue is glad to contribute to this.

I will implement it as soon as possible, please assign it to me.I will implement it this week.

@WuChuSheng1 has completed it.


DCT1 register initial vs. register reset values

These changes are part of the "minimize" synthesis warnings effort.
This PR is a dupe of #92, plus some minor clean ups

Closing this as the HDMI2USB-jahanzeb-firmware is no longer under development.
All active development is now on the HDMI2USB-misoc-firmware which supports both the Atlys and Opsis boards and has loads of other new features!


New OCS folder structure + 4.8 and eus-46 channels

Updated OCS operator folder structure to match current standards.
Added stable-4.8 and eus-4.6 channels.
Added the standard openshift-storage namespace to base.
Patch olm label, since the list of provided APIs is different between releases.

Looks good, one question should we be providing the annotation olm.providedAPIs pre-filled or just omitting it and letting OLM deal with it? I'm mostly going with leaving it blank and letting OLM manage it to reduce complexity but it's not a big deal.

@gnunn1 , that's a good suggestion for olm.providedAPIs, I didn't realize they would be properly filled in.  If that's the case, and I simply need the OperatorGroup, then that makes things much simpler.
I'll give it a try without the olm.providedAPIs just to make sure things work the way they should.  Thanks!

Removed the old.providedAPIs annotation and patch files.

Looks fine to me!


Better support and documentation for testing packages

Testing packages is already possible creating a test-app that has a reference to the package (Example: https://github.com/Sanjo/meteor-jasmine/tree/master/test-app).

[ ] Can this be improved?
[ ] Document how it's done in the wiki

Clarification: if I have a package and want to run jasmine tests on the package, currently the only way is to make a test-app that uses the package and running tests on that?

Yes. Better support for testing packages is planned in the near future.
Am 16.01.2015 00:57 schrieb "Mark Wheeler"<EMAIL_ADDRESS>
Clarification: if I have a package and want to run jasmine tests on the
package, currently the only way is to make a test-app that uses the package
and running tests on that?
—
Reply to this email directly or view it on GitHub.

Testing packages is now support in the same way as it works with tinytest. See https://github.com/Sanjo/meteor-jasmine#testing-a-package


ultimatevocalremovergui in Google Colab (testing v5 beta 1 and 2 44100 models)

Just for your info
You can try to run the tool remotely in Google Colab:
https://colab.research.google.com/drive/1aFpsQGPK5ayfzg8lS6dtpoavg3Dt5wvy?usp=sharing
Just paste to your Google Drive root directory:
https://github.com/Anjok07/ultimatevocalremovergui/releases/tag/5.0.0

"ultimatevocalremovergui-5.0.0" (extracted sources.zip)
models (to models directory) (V5-UVR-Beta-Model-Pack.rar)

It's based on https://youtu.be/xyQgsWeihQM
I've tested 44100 beta 1 and 2 from V5 version of UVR, and it's worse than in model "baseline.pth" 51,8MB attached in the package with voice-removal above on my testing track. Beta 2 removes vocal a bit better, but in cost of overall sound quality. And baseline doesn't have any cut off while betas have on 20,5kHz.

Just for your info
You can try to run the tool remotely in Google Colab:
https://colab.research.google.com/drive/1aFpsQGPK5ayfzg8lS6dtpoavg3Dt5wvy?usp=sharing
Just paste to your Google Drive root directory:
https://github.com/Anjok07/ultimatevocalremovergui/releases/tag/5.0.0

"ultimatevocalremovergui-5.0.0" (extracted sources.zip)
models (to models directory) (V5-UVR-Beta-Model-Pack.rar)

It's based on https://youtu.be/xyQgsWeihQM
I've tested 44100 beta 1 and 2 from V5 version of UVR, and it's worse than in model "baseline.pth" 51,8MB attached in the package with voice-removal above on my testing track. Beta 2 removes vocal a bit better, but in cost of overall sound quality. And baseline doesn't have any cut off while betas have on 20,5kHz.

Using the scripts from the master branch or tsurumeso's original code to run the v5 models will result in terrible performance. You must use the scripts provided here - https://github.com/Anjok07/ultimatevocalremovergui/tree/v5-beta-cml
Please review the Readme on that branch for more information and instructions. The code used in the Colab link is out of date.

Thank you for your support!
Actually it takes like 11 minutes to process one song, but before I messed
something in the code it was like 40 seconds. Or maybe just Google
decreased computing performance when I was using the sheet. Actually at one
point it showed that GPU acceleration will be disabled and somehow then it
started to work slowly, but I doubt the acceleration was even used.
sob., 17 kwi 2021, 08:33 użytkownik Anjok07 @.***>
napisał:

Just for your info
You can try to run the tool remotely in Google Colab:
https://colab.research.google.com/drive/1aFpsQGPK5ayfzg8lS6dtpoavg3Dt5wvy?usp=sharing
Just paste to your Google Drive root directory:
https://github.com/Anjok07/ultimatevocalremovergui/releases/tag/5.0.0

"ultimatevocalremovergui-5.0.0" (extracted sources.zip)
models (to models directory) (V5-UVR-Beta-Model-Pack.rar)

It's based on https://youtu.be/xyQgsWeihQM
I've tested 44100 beta 1 and 2 from V5 version of UVR, and it's worse than
in model "baseline.pth" 51,8MB attached in the package with voice-removal
above on my testing track. Beta 2 removes vocal a bit better, but in cost
of overall sound quality. And baseline doesn't have any cut off while betas
have on 20,5kHz.
Using the scripts from the master branch or tsurumeso's original code to
run the v5 models will result in terrible performance. You must use the
scripts provided here -
https://github.com/Anjok07/ultimatevocalremovergui/tree/v5-beta-cml
Please review the Readme on that branch for more information and
instructions. The code used in the Colab link is out of date.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Anjok07/ultimatevocalremovergui/issues/61#issuecomment-821776316,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIJ3EHHMILL2G2K5I2RBR7LTJETSPANCNFSM43CH5TWA
.

In this case, performance does not mean inference speed, but separation quality. The newer models are definitely better than the old ones. However, I admit that Colab may not work correctly.
Please send an example file here: https://discord.com/channels/708579735583588363/708912741980569691 This will help solve the problem better.

Both result files have the same checksums.
Thank you for your link!
sob., 17 kwi 2021, 14:05 użytkownik aufr33 @.***>
napisał:

In this case, performance does not mean inference speed, but separation
quality. The newer models are definitely better than the old ones.
However, I admit that Colab may not work correctly.
Please send an example file here:
https://discord.com/channels/708579735583588363/708912741980569691 This
will help solve the problem better.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Anjok07/ultimatevocalremovergui/issues/61#issuecomment-821812527,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIJ3EHHGNBWTPUKYRLQDTQLTJF2RBANCNFSM43CH5TWA
.

I'm sorry, but this is not valid Discord invitation link.

I'm sorry, but this is not valid Discord invitation link
Oh! Here is the correct link: https://discord.gg/C79G7CrB


update prom policy due to upgrade ACM to 2.5

Signed-off-by: Song Song Li<EMAIL_ADDRESS>

let me close this PR. we use another PR to upgrade the ACM. this PR changes the base manifest, and it will impacts the prod env.


Glide 4.12.0

Glide updates - version bump

CI is failing with the following error that it makes no sense.
This is an Android project and it show's a Xcode error lol
Error: Error(s) occurred when compiling build script:
XamarinComponents/Android/Glide/build.cake(85,35): error CS1503: Argument 2: cannot convert from 'bool' to 'Cake.Common.IO.DeleteDirectorySettings'
XamarinComponents/common.cake(44,4): error CS0103: The name 'XCodeBuild' does not exist in the current context
XamarinComponents/common.cake(44,19): error CS0246: The type or namespace name 'XCodeBuildSettings' could not be found (are you missing a using directive or an assembly reference?)
XamarinComponents/common.cake(91,4): error CS0103: The name 'XCodeBuild' does not exist in the current context
XamarinComponents/common.cake(91,19): error CS0246: The type or namespace name 'XCodeBuildSettings' could not be found (are you missing a using directive or an assembly reference?)
XamarinComponents/common.cake(136,4): error CS0103: The name 'XCodeBuild' does not exist in the current context
XamarinComponents/common.cake(136,19): error CS0246: The type or namespace name 'XCodeBuildSettings' could not be found (are you missing a using directive or an assembly reference?)
XamarinComponents/common.cake(179,4): error CS0103: The name 'XCodeBuild' does not exist in the current context
XamarinComponents/common.cake(179,20): error CS0246: The type or namespace name 'XCodeBuildSettings' could not be found (are you missing a using directive or an assembly reference?)
XamarinComponents/common.cake(241,4): error CS0103: The name 'XCodeBuild' does not exist in the current context
XamarinComponents/common.cake(241,20): error CS0246: The type or namespace name 'XCodeBuildSettings' could not be found (are you missing a using directive or an assembly reference?)


Setup Circle-CI jobs that can be started by a PR comment

🙋 Feature Request

In particular, we want the ability to kick off our Typescript Diffing tool. Since it takes so long to run though, we don't want to run it on every commit. Instead, we want to run it when we deem it necessary.
🤔 Expected Behavior

Comment a specific phrase on PR's and the Typescript diff tool should run.

no longer relevant


fix frozen columns issues

[ ] headerer renderer doesn't support multiple rankings
[ ] html body renderer has general frozen column issues (overlapping)
[ ] svg body renderer doesn't support multiple rankings

see #276 and #263


Initial File System

[x] File Permissions

r/o and r/w files are kept in separate directories with the appropriate preopen permissions.

[ ] Live Update

[x] Implementation
[ ] Testing

[x] Golem manifest

[x] Initial File System contents parsingfiles:
- sourcePath: "~/my_files/readonly"
  targetPath: "/ro/"
  permission: readOnly

[x] File packaging (local and web)

Deflate (can be changed easily if needed) zip files

[x] REST integration

[x] Update golem-openapi-client-generator to support requests with either multipart or non-multipart definitions

[ ] Full manifest usage(?)

The implementation takes a --manifest argument for create/update and only uses the files section.

[x] REST API

[x] Component API

[x] Create

Read-only and read-write files are packaged separately as multipart properties files_ro and files_rw. No separate permission parameter is needed.

[x] Update

[x] Worker API
[ ] API Definition API

[x] Theoretically implemented
[ ] Testing
[ ] Spawn worker if no name is provided

[x] Worker Gateway

[x] file-server binding type
[x] Shorthand Rib result handling
[x] mime type inference

[x] Component Service

[x] Store file archives in blob storage alongside component binaries
[x] Cache files

r/o cache is an Option<Arc<TempDir>> of a folder with the extracted files
r/w cache is an in-memory archive
Current cache is not ideal, since archive size is not taken into account, and a component with no files still takes a spot in the cache

[x] Worker Executor

[x] Read filesystem implementation
[x] gRPC API
[x] Preopen

For my implementation I packaged the read-only and read-write files separately, and store them both as archives in blob store alongside the component wasm. The component service caches a TempDir handle to a folder with the extracted read-only files to be used by all instances. The read-write files are extracted to the worker instance temp dir during creation.
This change also relies on a few changes to golem-openapi-client-generator to support mixed response types, etc. needed for backwards-compatible CreateComponent/UpdateComponent. Let me know if I should open a pull request on that repo.
Mounting multiple preopens to the same path does not seem to work properly (it seems like only the first applicable preopen is tried), so read-only files use a dedicated path (/static/) for now. Note that paths with the r/o directly work as expected, but it will not show up when doing a directory listing on /. Maybe in the future automatically create a symlink for each read-only file, or at least one to the r/o folder?
/claim #1004

@colinjneville Congratulations on submitting your solution for our Bounty-to-Hire challenge (#1004)!
We have reviewed your pull request and believe that it is very promising. While not yet satisfying all of the requirements of #1004, we believe there is a short and well-defined path to get there, and so we are delighted to announce that you are a finalist in our Bounty-to-Hire event!
Next steps:

You are guaranteed an interview based on your work thus far.
Should you continue to work on this pull request, and get it into a state that can be merged to satisfy all requirements, you stand a reasonable chance of winning the bounty.

If you no longer wish to work on this pull request, please close it, and we will reach out about the interview. On the other hand, if you wish to continue pushing this pull request forward, then please let us know here and continue your work.
Congratulations again on being a finalist for Bounty-to-Hire!

@colinjneville
We have reached November 4th, which is the day we must announce the winner of the Bounty-to-Hire program!
Given the scope of the challenge, it's incredibly impressive that we have had not one, but THREE finalists, who each demonstrated high competence and skill in tackling a problem that would stump most engineers on the planet.
However, ultimately, there can be only ONE WINNER to the Bounty-to-Hire challenge. So after MUCH analysis by Golem engineers, thoughtful consideration, and spirited discussion, we have decided to pick a winner.
That winner will be announced on our LIVE STREAM event TODAY at 12 NOON ET:
https://www.youtube.com/watch?v=at8EPqLWIRE
Without question, all three finalists are highly qualified Rust engineers and we look forward to interviewing and getting to each of them, with the intention of making at least one job offer to fill our recently opened position.
While you await the announcement of the WINNER, please shoot an email to<EMAIL_ADDRESS>to schedule your interview!
Stay tuned for more.

@colinjneville If you plan to join for the Live stream today, please do send me a message on Discord (you can find me on the Golem Discord), or an email at<EMAIL_ADDRESS>Thank you!


use latest rsconnect in Dockerfile

https://community.rstudio.com/t/notice-posit-cloud-shinyapps-io-dropping-support-for-rsconnect-1-0-1/172078


copr_plugin: Disable coprocessor plugin if the plugin folder is not explictly sepcified in config

Feature Request
Currently, TiKV loads all plugins from ./coprocessors if the plugin folder is not explicitly specified in config, which may not be a good thing for security. And as stated in config:
https://github.com/tikv/tikv/blob/19e4d00ad7965681b5139cd71c7eaf8290cc22ce/etc/config-template.toml#L445-L450
Whether specifying the plugin folder or not enables or disenables the auto-loading, which seems puzzling. So I suggest changing the config as so:
[coprocessor-v2]
# Path to the directory where compiled coprocessor plugins are located.
# Plugins in this directory will be automatically loaded by TiKV.
# If the config value is not set, the coprocessor plugin will be disabled.
coprocessor-plugin-directory = "./coprocessors"

/assign


Partitial update to 1.10.2

The only thing to do for you would be to add a model for the polar bear.

Note: A 1.8 branch exists.

Yeah I still don't get why that is the case.
Isn't it better to have the most recent version on master and a branch of 1.7/1.8?

fe1a178d2d844f62f43a1d7a8b57d83e2e51b2a2 (Updated to 1.9.4, but also compatible with 1.10.2)


Update EmailValidator.cs

Updated email validator for c#

Thank you for your contribution, @pk-95 ! @all-contributors please add @pk-95 for code.

Thanks! :)


Suggestion: Retain original values for mapped values, dealing with int representations

Hi,
I'm currently testing if your fine tool fits my needs to interact with my PV inverter. I'm not breaking this up into individual issues but I  have 2  thoughts for now:
1.) It would be nice to (maybe optionally) have  the original value for a mapped value in the JSON as well
2.) My inverter uses individual bytes of 16 bit or 32 bit registers to represent multiple values. It also uses bitfields. I was wondering if it  would make sense to split values in the JSON representation for these cases to not have to handle dissection of these values after JSON parsing.

Thank you for your feedback.
I've had not the need for that so I will think about it.

Which inverter is it ? and is there documentation available on it to let me see how I could approach it.

I'm starting a feature branch for that. It will be implemented like the map key in the definition dictionary  , it will be a bitmapValues key eg.:
            {
                "address": 1,
                "modbustype": "holding",
                "modbusaccess": "read",
                "valuetype": "int16",
                "mqtt": "visible",
                "interval": 10,
                "topic": "ambient/errornumber",
                "title": "Ambient Error Number",
                "bitmapValues" : {
                    "0-1": { "name" : "foo", "mqttPath" : "pathfoo" },
                    "2-5": { "name" : "bar", "mqttPath" : "pathbar" },
                    "6" :  { "name" : "baz", "mqttPath" : "pathbaz" }
                }
            }

Ok the first version of the featurebranch works now.
A Modbusvalue with ModbusValue(address: 1, value: .uint32(0b1111111))
will now be sent as:
{
    "address": 1,
    "bitmapValues": {
        "bar": 15,
        "baz": true,
        "foo": 3
    },
    "title": "Ambient Error Number",
    "value": 127
}```

changed to sue bits instead of bitmapValues  in the current development branch


Use conda-env-lock

I want to make conda-env-lock open source and need an open-source example repo. How about datajudge?

@jonashaag Thank you for the work!

Hmm, two problems:

ibm_db is not compatible with 3.12. We could go back to 3.10
There are bunch of extra dependencies for the DB-specific CI steps. Those aren't part of the environment.yml that's used by conda-env-lock. Conda-env-lock also doesn't currently have any feature to add additional dependencies (nor is that planned). While adding the extra dependencies in the workflow works for most environments, it does not work for Snowflake due to a conflict with the pre-solved and locked dependencies. Maybe conda-env-lock is not a good tool for this CI pipeline.

Hmm, two problems:
* ibm_db is not compatible with 3.12. We could go back to 3.10

You upgraded the CI to 3.12  :P

* There are bunch of extra dependencies for the DB-specific CI steps. Those aren't part of the `environment.yml` that's used by conda-env-lock. Conda-env-lock also doesn't currently have any feature to add additional dependencies (nor is that planned). While adding the extra dependencies in the workflow works for most environments, it does not work for Snowflake due to a conflict with the pre-solved and locked dependencies. Maybe conda-env-lock is not a good tool for this CI pipeline.

Yes, it's a somewhat complex CI. From my point of view, I Guess we could create a different environment for each DB specific CI job. From my understanding of conda-env-lock we should be able to do multiple lockfiles.

should be able to do multiple lockfiles

Yes but you'd need multiple environment.yml files :(

should be able to do multiple lockfiles

Yes but you'd need multiple environment.yml files :(

That compared to the situation where we magically add dependencies at runtime for testing in CI sounds like a fair tradeoff for reproducibility and sane debugging.

Actually something I'm happy to add to conda-env-lock is to use multiple environment.yml files as input, so you could have a file that contains only ibm_db as a dependency

🚀

I started implementing this but not sure if we actually want that in conda-env-lock: https://github.com/Quantco/conda-env-lock/issues/109
Maybe we should just auto-generate the derivative environment.ymls in this repo via a pre-commit hook.

I'm giving up on this for now. Datajudge's CI uses a lot of environments:

6x unit test
12x Postgres
3x DB2
6x MSSQL
1x Snowflake, Impala, BigQuery

In conda-env-lock since there is no "templating" of lock file definitions, that would require 30 [[tool.conda-env-lock.variants]] sections. Which would be a huge mess. And another 30 sections if we wanted to add macOS lock files for local development.
IMO not a good fit for conda-env-lock at the moment.

@jonashaag Thanks for looking into this!
I think we're very open to suggestions if you have some ideas on how to streamline our CI environment setup in the future.

I don't have any good ideas, you're not doing anything wrong. The only thing that would simplify things is to test fewer combinations. For example I wonder if it doesn't suffice to test "oldest SA and Python" and "newest SA and Python" as opposed to all combinations. OTOH machine labor is cheap and human labor is expensive so maybe it makes sense to keep all those tests

@jonashaag will take the liberty to close this for now - feel free to reopen at any point in time. :)


Issue in global setup in typescript path mapping

🐛 Bug Report
Error: Jest: Got error running globalSetup - /Users/master/WebProjects/fa_online_dms/server/tests/global.setup.ts, reason: Cannot find module '~/db/dbConnector'
Here is my jest.config.ts
// jest.config.ts
import type {InitialOptionsTsJest} from "ts-jest/dist/types";

const config: InitialOptionsTsJest = {
  // testEnvironment: "./tests/my-environment.ts",
  rootDir: "./",
  preset: "ts-jest",
  verbose: true,
  silent: true,
  testPathIgnorePatterns: ["dist"],
  globalSetup: "./tests/global.setup.ts",
  globalTeardown: "./tests/global.teardown.ts",
  testTimeout: 30000,
  globals: {
    "ts-jest": {
      tsconfig: "tsconfig.json",
    },
  },
  moduleNameMapper: {
    "~/*": ["./src/*"],
    "@/*": ["./src/*"],
  },
};
export default config;

Excerpt of my global.setup.ts
import { initDbConnection } from "~/db/dbConnector";
import request from "supertest";
import app from "../src/app/app";
....

Expected behavior

Link to repo (highly encouraged)

Debug log:

# content of ts-jest.log :

envinfo
System:
    OS:
    Node version:

Npm packages:
    jest:
    ts-jest:
    typescript:
    babel(optional):

ok, this is a bug with Jest that jest-resolve doesn't run on globalSetup which explains why it throws cannot find module error.
You can use ts-jest AST transformer path-mapping to fix this issue by doing this
// jest.config.js
globals: {
    'ts-jest': {
      astTransformers: {
        before: [
          'ts-jest/dist/transformers/path-mapping'
        ]
      }
    }
  },

ok, this is a bug with Jest that jest-resolve doesn't run on globalSetup which explains why it throws cannot find module error.
You can use ts-jest AST transformer path-mapping to fix this issue by doing this
// jest.config.js
globals: {
    'ts-jest': {
      astTransformers: {
        before: [
          'ts-jest/dist/transformers/path-mapping'
        ]
      }
    }
  },

Doing this I get a warning message:
path-mapping AST transformer is deprecated and will be removed in `ts-jest` v28. Please use an alternative one, like https://github.com/LeDDGroup/typescript-transform-paths instead

and it fails to compile the typescript.
Not sure exactly how to use typescript-transform-paths because it doesn't have any transformer compatible with ts-jest AFAIK

You don’t have to use AST transformer with only ts-jest. TS AST transformer can be used by any 3rd tools which use TS API. In the case of the example mentioned in the warning log, that repo uses similar approach as ts-node.


New topic for accessing time in Sui Move

Description
New topic on accessing time in Move. Navigation entry in future PR.
Test Plan
Local

If your changes are not user-facing and not a breaking change, you can skip the following section. Otherwise, please indicate what changed, and then add to the Release Notes section as highlighted during the release process.
Type of Change (Check all that apply)

[ ] user-visible impact
[ ] breaking change for a client SDKs
[ ] breaking change for FNs (FN binary must upgrade)
[ ] breaking change for validators or node operators (must upgrade binaries)
[ ] breaking change for on-chain data layout
[ ] necessitate either a data wipe or data migration

Release notes

No issues!  Will generally leave it up to you for where the best home for the content is.


Local subs not working

Current Behavior
The subtitles aren't showing up with this code
<ReactPlayer
            url="http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/ElephantsDream.mp4"
            config={{
              file: {
                attributes: {
                  crossOrigin: "anonymous",
                },
                tracks: [
                  {
                    kind: "subtitles",
                    src: "subs.vtt",
                    srcLang: "en",
                    label: "subs",
                    default: true,
                  },
                ],
              },
            }}

Expected Behavior
Subs should show up. What I've tried -

Have a local vid file with url="ElephantsDream.mp4". This doesn't load the video at all, getting some unsupported MIME type error
Load the file using a button and getting the url like "blob:http://localhost:3000/4e978751-35e7-4357-90bb-5a227f9c5440"

      let files = e.target.files;
      let file = files[0];
      let urlString = URL.createObjectURL(file);

which makes the video work, but subs still don't work.

Tried the same approach to upload the local subtitle file, but no luck.

Environment

URL attempting to play: "http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/ElephantsDream.mp4"
or local file in project directory "ElephantsDream.mp4" or like "blob:http://localhost:3000/4e978751-35e7-4357-90bb-5a227f9c5440"
Browser: Firefox and Chrome
Operating system: Win 10 with WSL2

Other Information
That's all. Great work, thanks :)

Sounds like you are having problems with the sample video file which is probably confusing things.
Hopefully this jsFiddle from #443 helps: https://jsfiddle.net/1ma6kdrL/
If not, please reopen the issue with a jsFiddle or example repo to demonstrate the problem.


Enhance testing of missing assemblies

Closes #90 by disproving it: the added tests show that in fact VS-MEF does recover from ReflectionTypeLoadException during discovery.

Codecov Report

Merging #96 into v15.6 will increase coverage by 0.12%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##            v15.6      #96      +/-   ##
==========================================
+ Coverage   81.84%   81.97%   +0.12%
==========================================
  Files          72       72
  Lines        5691     5691
  Branches      879      879
==========================================
+ Hits         4658     4665       +7
  Misses        799      799
+ Partials      234      227       -7

Impacted Files
Coverage Δ

...icrosoft.VisualStudio.Composition/PartDiscovery.cs
85.66% <0%> (+2.38%)
:arrow_up:

Continue to review full report at Codecov.

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


Don't close PRs for different branches

This shouldn't have been closed given it targets master https://github.com/JuliaLang/julia/pull/48091#event-8162689988

Note to self: I think when we get the PR from the GitHub API, it should already include the target branch name somewhere in the JSON struct, so it should be sufficient to just check that, and skip closing the PR if the target branch of the PR is not equal to the desired target branch provided by the user.


missing hex_diffusion.pkl file

This repository is interesting, but when i try to run the code it shows file not found 'hex_diffusion.pkl'.
Please update me in this regard.

Thanks for reaching out. Those files are large (Github has restrictions for files of >25MB). As an alternative, we provide the pre-processed (large) files via Onedrive, which is available at here.

sorry to bother you, can i have your email address please!?


Railway.md link not valid

Hey, In your railway.md the template is invalid the real link is, https://railway.app/new/template/code-server
Thanks!

I was searching for this, thank you!


Avoid redirecting to non-accessible assets

It's possible to replace a public asset with a draft asset. Normal replacement behaviour is to redirect from the old to the new asset; but we shouldn't redirect requests for the public asset in this instance as it'll mean we send the user to an asset they don't have permission to view. Note that we do redirect if the user requested the public asset from the draft-assets host as it means they're authenticated and therefore authorised (barring any additional access-limiting) to view draft assets.
This change follows a similar problem in Whitehall where we were inadvertently redirecting a subset of Attachments to a non-accessible draft version. See https://github.com/alphagov/whitehall/pull/3894 for some more information.

Note that I've added some integration tests to Whitehall in https://github.com/alphagov/whitehall/pull/3900 which serve to illustrate the dependency on this new Asset Manager behaviour.

Thanks @floehopper. I've improved the test names as you've suggested.

Also I think it might be worth explaining a bit more about the "access-limited" scenario in the commit note / PR description. I think I'm right in saying that given that the parent document would be access-limited, a user without access wouldn't even be able to see the parent document and therefore neither would they be able to see the links to the attachments. So a replacement redirect resulting in a 403 Forbidden would be a very unlikely scenario and in any case the result would be perfectly sensible.

You're quite right when thinking about this in terms of Whitehall's use of Asset Manager, but there's nothing in Asset Manager itself that prevents you from replacing a non access-limited asset with one that is access-limited, so I'm happy enough with the description as it stands.


Poll: Add ss prefix to all extensions

While adding the SS prefix to all extensions will make them less readable, it could bring more compatibility with 3rd party libraries
Example:
[1, 2, 3].ssRandomItem
// or
[1, 2, 3].ss.randomItem

instead of:
[1, 2, 3].randomItem

Despite this could be convenient to find quickly some extensions, it remove a lot of fluency which is one of the best thing in this repo !

I'm opposed to this. Most 3rd party libraries keep their extensions used to build the library internal so we won't have any conflicts there.
The problem comes with using a library that solves the same problem SwifterSwift does.
e.g) using SwifterSwift Date extensions and another Date library
In this scenario, the user should really only import the extended SwifterSwift types on a type by type basis. I could probably add a section to the README explaining this.
CocoaPods subspecs could help but only slightly. The real benefit of CocoaPods subspecs is reducing the dependency and binary size.

Community voted not to add this feature


Build error while installing terraformer-geostore-leveldb

Terraformer looks great. Unfortunately, with "terraformer-geostore-leveldb": "~1.1.1" included in my package.json dependencies I get the following native build error when running npm install:
leveldown.target.mk:121: recipe for target 'Release/obj.target/leveldown/src/batch.o' failed
make: *** [Release/obj.target/leveldown/src/batch.o] Error 1
make: Leaving directory '/home/dbeers/Dev/DrivelineScripts/orderedlanes/node_modules/leveldown/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/home/dbeers/.nvm/versions/node/v11.9.0/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:262:23)
gyp ERR! stack     at ChildProcess.emit (events.js:197:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:254:12)
gyp ERR! System Linux 4.15.0-50-generic
gyp ERR! command "/home/dbeers/.nvm/versions/node/v11.9.0/bin/node" "/home/dbeers/.nvm/versions/node/v11.9.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/dbeers/Dev/DrivelineScripts/orderedlanes/node_modules/leveldown
gyp ERR! node -v v11.9.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok

Build environment:
Ubuntu 18.04.2 LTS
node v11.9.0
node-gyp v3.8.0

Wait... is LevelStore even supported?  I see docs for it on terraformer.io here but there's an open issue in terraformer-geostore-memory (from 2014!) that states that LevelStore is no more: https://github.com/Esri/terraformer-geostore-memory/issues/3

Terraformer hasn't really been under active development for several years. the original maintainers all have their hands full with other fun stuff these days.
because of this, i proposed awhile back that the scope of the project be whittled down to just the parsers and spatial predicates.
https://github.com/Esri/terraformer/issues/268
that said, you can find https://github.com/JerrySievert/terraformer-geostore-leveldb here, and pull requests are welcome in any terraformer repository.
if you're hoping you can log a bug and have it resolved by someone else, i wouldn't hold your breath. 😄

ps: you'd probably have more luck compiling on a (far) older version of Node.js


Add align measure pass

Summary
This pass fixes the strange behavior of IBM Quantum backends when a circuit with length not multiple of 16 is provided. This behavior has been reported multiple times so far, especially some experiments requiring arbitrary delay between instructions, such as inversion recovery or Ramsey experiment.
This malfunction is caused by the misalignment of acquire instruction from the clock boundary of 16dt, which causes a phase error in measurement channels, yielding the drift of blob position in the measurement IQ plane (you can check this behavior with level1 measurement).
Fix #6666
Details and comments
Instead of fixing the rotation error, this PR adds a pass that shift the start time of measurement instruction to match with the 16dt clocks. This number will be provided by backend as alignment. The pass is currently called by the transpiler, but we can call this also from the IBMQ backend object via run method (in this case legacy backend can still cause the error).
This needs https://github.com/Qiskit/qiskit-ibmq-provider/pull/983
from qiskit import IBMQ, circuit, transpile

IBMQ.load_account()
backend = IBMQ.get_provider(hub='ibm-q', group='open', project='main').get_backend('ibmq_armonk')

qc = circuit.QuantumCircuit(1, 1)
qc.x(0)
qc.delay(110, 0, unit="dt")
qc.measure(0, 0)

qc.draw()  #

     ┌───┐┌────────────────┐┌─┐
q_0: ┤ X ├┤ Delay(110[dt]) ├┤M├
     └───┘└────────────────┘└╥┘
c: 1/════════════════════════╩═
                             0

qct = transpile(qc, backend)

qct.draw()  #

     ┌───┐┌────────────────┐┌─┐
q_0: ┤ X ├┤ Delay(112[dt]) ├┤M├
     └───┘└────────────────┘└╥┘
c: 1/════════════════════════╩═
                             0

TODO

[ ] decide from where we call this pass
[x] add reno

This is the result of integration test
from qiskit import IBMQ, circuit, transpile
import matplotlib.pyplot as plt
import numpy as np

IBMQ.load_account()
backend = IBMQ.get_provider(hub='ibm-q', group='open', project='main').get_backend("ibmq_armonk")

p_delay = circuit.Parameter("Δt")
delays = np.linspace(0, 100, 20)

qc = circuit.QuantumCircuit(1, 1)
qc.x(0)
qc.delay(p_delay, 0, unit="us")
qc.measure(0, 0)

qc.draw()  #

     ┌───┐┌───────────────┐┌─┐
q_0: ┤ X ├┤ Delay(Δt[us]) ├┤M├
     └───┘└───────────────┘└╥┘
c: 1/═══════════════════════╩═
                            0

exp_qcs = [qc.assign_parameters({p_delay: delay}, inplace=False) for delay in delays]
result = backend.run(transpile(exp_qcs, backend), shots=256).result()

plt.plot(delays, [count.get("1", 0)/256 for count in result.get_counts()])
plt.xlabel("delay, us")

Thanks for the quick review. I updated the code according to your comments. The major changes are

Update the logic of pass execution judgement. Just minimized the risk of unnecessarily executing the heavy pass.
Added example of pulse gate alignment execution https://github.com/Qiskit/qiskit-terra/pull/6673/commits/72821a3881f8bef53262880a301872907c1ccc2e. This can be moved to another PR, but in this way we can guarantee only delays can cause misalignment. Actually this is necessary validation. We haven't had this before and we used to get backend error after long queuing time.

The logic is almost the copy of ASAPScheduling pass. This is slightly modified to avoid inserting consecutive delay, such as delay(100dt)-delay(12dt)-measure. To isolate the context of alignment from other passes, the ASAPSchedule pass is kept as-is.

The logic is almost the copy of ASAPScheduling pass.

Instead of copying ASAPScheduling, isn't it easier to just iterate over all Measure nodes, take their earliest predecessor Delay, and increase it by some amount? If not Delay predecessor node is found, create one.

just iterate over all Measure nodes

Yes this is what I wanted to implement, however we cannot do this because DAGNode doesn't have information of t0 even after scheduled. Perhaps we need to allow a node to have t0 after this release.

In addition, if we have a mid measurement, the insertion of delay in front of the measurement affects the start times of the following gates globally, suggesting local changes on measurements would not work for circuits with mid measurements.


This is amazing

Hi there,
I am writing this issue just to let you know that this is amazing. Thanks for making it

Really appreciate you saying that!


"Meișoare", "Valea Largă", "Vârfureni" are listed in the drop-down menu

Description:
When user writes ”Meișoare”, "Valea Largă" and "Vârfureni" the locations appear in the drop-down menu next to the comune and the county which is a part according to the law.
Precondition:
The website is up an running.

Step 1
Write in the search bar "Meișoare"

Expected results
The location appears in the drop-down menu as "Sat Meișoare, DÂMBOVIȚA (Pucheni)".

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Write in the search bar "Valea Largă"

Expected results
The location appears in the drop-down menu as "Sat Valea Largă, DÂMBOVIȚA (Pucheni)".

Step 4
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 5
Write in the search bar "Vârfureni"

Expected results
The location appears in the drop-down menu as "Sat Vârfureni, DÂMBOVIȚA (Pucheni)".


Instruct reloading nix shell after changes

At least in my case, adding https://github.com/nrdxp/nixflk/pull/74/files required leaving and re-entering (nix develop) the nix shell for the override to take effect.
Maybe there is a better way to alert & inform the user. It seems to be always necesary to reload.
Or alternatively: maybe best solution would be to do the required re-instantiation directly within flk command, since re-entering the nix shell is a bit awkward UX

I believe I've run into this a few times already. At least for direnv setups, we could easily solve this with something like watch_file **/*.nix, so that the shell reinitializes after any nix file changes.
In the general case though, I'm not sure what the best solution is. I didn't notice this problem until we switched to using mkDevShell, so I'm wondering if that is somehow the source of the issue.

I believe I've run into this a few times already. At least for direnv setups, we could easily solve this with something like watch_file **/*.nix, so that the shell reinitializes after any nix file changes.
In the general case though, I'm not sure what the best solution is. I didn't notice this problem until we switched to using mkDevShell, so I'm wondering if that is somehow the source of the issue.

I could imagine the "culprit" is https://github.com/nrdxp/nixflk/blob/e67cd3701aa2a2081d0c261ccc12b47f743c0866/shell.nix#L10
where ./. might be the store path representation of the source tree.
  configs = builtins.trace "${toString ./.}#nixosConfigurations" "${toString ./.}#nixosConfigurations";

yields
trace: /nix/store/55y5c9rj4fiv7jvxr9mpvk6prlyg8rl2-source#nixosConfigurations

Which doesn't get updated until upon rebuild.
Not sure what to do here. Maybe we could use DEVSHELL_ROOT env variable here?

I could imagine the "culprit" is https://github.com/nrdxp/nixflk/blob/e67cd3701aa2a2081d0c261ccc12b47f743c0866/shell.nix#L10
where ./. might be the store path representation of the source tree.
  configs = builtins.trace "${toString ./.}#nixosConfigurations" "${toString ./.}#nixosConfigurations";

yields
trace: /nix/store/55y5c9rj4fiv7jvxr9mpvk6prlyg8rl2-source#nixosConfigurations

Which doesn't get updated until upon rebuild.
Not sure what to do here. Maybe we could use DEVSHELL_ROOT env variable here?

Superseded by #87

Superseded by #87


Set-DbcConfig Could not update configuration

I get this error when trying to set some config options, like this:
PS C:\PowerShell> Set-DbcConfig -Name skip.diffbackuptest -Value True
WARNING: [13:18:59][Set-PSFConfig] Could not update configuration: dbachecks.skip.diffbackuptest

And the immediate value returned shows that the config was not set.
dbachecks=1.1.173
PSFramework=1.0.2
Pester=4.8.1
All tools were installed just today so should be latest stable versions.

HI @blitzd
That error is because there is no config called skip.diffbackuptest
You can find the configurations using
Get-DbcConfig
and you can get the checks and the config associated with them using
 Get-DbcCheck
You can see the code from my demos here https://github.com/SQLDBAWithABeard/Presentations/blob/master/2019/dbachecks/02 -Demo.ps1
I think that you are wanting to exclude the differential backups.
You can exclude any check or group of checks by adding it to the command.invokedbccheck.excludecheck configuration with
Set-DbcConfig -Name command.invokedbccheck.excludecheck -Value Backup -Append
for example

Hi Rob,
This is the relevant output of Get-DbcConfig:

Apologies, Beard in rushing back from work and not checking properly
You need a $true for that
Set-DbcConfig -Name skip.diffbackuptest -Value $true


Add Bazel 0.9.0 to the Travis build matrix.

Good news:

0.9.0 passes without any changes
0.8.1 and 0.9.0 are faster to run the rules_scala tests than 0.7.0 (~18-25 minutes vs. ~33-35 minutes).

Bad news:

Adding a third Bazel build to the build matrix increases the overall wall-clock time from ~56 minutes to to ~85 minutes.
It might be too soon to drop 0.7.0 support?

Thanks! I’d rather keep 0.7 until we see an incompatibility. Not everyone upgrades bazel quickly but might still want bug fixes.
I think we should merge this when green.

Why not drop 0.8.1? I think we aimed at having lowest and highest at all times

@johnynek any objections to replacing 0.8.1 with 0.9?

No that seems good.
On Thu, Dec 28, 2017 at 18:42 Ittai Zeidman<EMAIL_ADDRESS>wrote:

@johnynek https://github.com/johnynek any objections to replacing 0.8.1
with 0.9?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/bazelbuild/rules_scala/pull/375#issuecomment-354397172,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAEJdqcufFLsMIww8zNvqgqADQGnuIWMks5tFG2agaJpZM4RNsvr
.

--
P. Oscar Boykin, Ph.D. | http://twitter.com/posco | http://pobox.com/~boykin


[spi_device] Widen TPM WrFIFO to 32-bit

Related Issue #13816
Widen WrFIFO width requires logic change in SPI_TPM. The idea is tabled for future release.

Triaged for spi_device. IIUC, widening the TPM Write FIFO would allow SW running on OT to empty it in fewer clock cycles. Since that FIFO can already store a full TPM transaction (64 B), however, I don't think this is necessary for this release and it's thus correctly labeled https://github.com/lowRISC/opentitan/labels/Type%3AFutureRelease.

CC @a-will


Need Max value for left slider and min value for right slider

I need to have a value that the left slider can't pass and use that same value that the right slider can't pass. Is that a feature yet?

Nope there is not such a feature at the moment. There are the min/maxLimit that are non visible limits and min/maxRange that specify the min/max difference between low and high handles at the moment.

Closing as there was no answers for more than 10 days. Comment to re-open 😉


Fix should_content not correctly matching pdnsutil output

This fixes two bugs when comparing zone contents to pdnsutil output, which triggers the continual re-import of managed zones:

an extraneous \n after $ORIGIN . which causes \n\n to be added to the resultant zone after record sort;
rname values being included in a case-sensitive manner, when records are always returned as downcase, which means that uppercase characters in rname parameters cause zones to always be re-imported.

Changing the relevant lines in should_content ensures that affected zones are only re-imported when records actually differ.
No test changes are included as powerdns_zone contents do not currently have any tests running against them.

Okay now I can't trigger the bug with the old code, so something else has changed.

Reopening this because a) the \n change, while apparently not actually fixing anything in terms of re-importing, is still technically correct, and b) the case sensitivity change definitely does fix a re-import issue.

With no changes to zone, but uppercase records present:
existing code:
root@dns01:~# puppet agent --test --pidfile /var/run/puppetlabs/collector.pid --agent_catalog_run_lockfile /opt/puppetlabs/puppet/cache/state/collector.lock --tags powerdns_zone_private,powerdns_zone,powerdns_record,profile::powerdns::reversezone --skip_tags null
Info: Using environment 'production'
Info: Retrieving pluginfacts
Info: Retrieving plugin
Notice: /File[/opt/puppetlabs/puppet/cache/lib/puppet/type/powerdns_zone.rb]/content:
--- /opt/puppetlabs/puppet/cache/lib/puppet/type/powerdns_zone.rb       2024-04-24 15:58:25.547955583 +0100
+++ /tmp/puppet-file20240424-2804593-rclwmr     2024-04-24 16:02:21.498453862 +0100
@@ -136,7 +136,7 @@
       if r[:rname] == '.'
         content.push([r[:target_zone], r[:rttl], r[:rclass], r[:rtype], r[:rcontent]].join("\t"))
       else
-        content.push([(r[:rname] + '.' + r[:target_zone]).downcase, r[:rttl], r[:rclass], r[:rtype], r[:rcontent]].join("\t"))
+        content.push([r[:rname] + '.' + r[:target_zone], r[:rttl], r[:rclass], r[:rtype], r[:rcontent]].join("\t"))
       end
       # rubocop:enable Style/StringConcatenation
     end

Notice: /File[/opt/puppetlabs/puppet/cache/lib/puppet/type/powerdns_zone.rb]/content: content changed '{sha256}cf1f49d965abd0dcd8b4da359c0185aed98c42bcfd6e90dd547e034c93ac0f1b' to '{sha256}73c4de974051989bec1a9846106675128a2d148224b68d4ed08c616ea4250fac'
Info: Loading facts
Notice: Requesting catalog from puppet:8140
Info: Applying configuration version '1713970968'
Notice: /Stage[main]/Profile::Powerdns::Domains/Powerdns_zone_private[example.com]/content: content changed {md5}f9053db25088ee6897bacd0dafcac5d7 to {md5}66f8af72b6e0feab8b886255b48ea3da

#   Zone should not have been re-imported, but was

Info: Class[Profile::Powerdns::Domains]: Unscheduling all events on Class[Profile::Powerdns::Domains]
Notice: Applied catalog in 71.31 seconds

changed code:
root@dns01:~# puppet agent --test --pidfile /var/run/puppetlabs/collector.pid --agent_catalog_run_lockfile /opt/puppetlabs/puppet/cache/state/collector.lock --tags powerdns_zone_private,powerdns_zone,powerdns_record,profile::powerdns::reversezone --skip_tags null
Info: Using environment 'production'
Info: Retrieving pluginfacts
Info: Retrieving plugin
Notice: /File[/opt/puppetlabs/puppet/cache/lib/puppet/type/powerdns_zone.rb]/content:
--- /opt/puppetlabs/puppet/cache/lib/puppet/type/powerdns_zone.rb       2024-04-24 15:57:06.635119987 +0100
+++ /tmp/puppet-file20240424-2803416-c0j3tp     2024-04-24 15:58:25.471954777 +0100
@@ -136,7 +136,7 @@
       if r[:rname] == '.'
         content.push([r[:target_zone], r[:rttl], r[:rclass], r[:rtype], r[:rcontent]].join("\t"))
       else
-        content.push([r[:rname] + '.' + r[:target_zone], r[:rttl], r[:rclass], r[:rtype], r[:rcontent]].join("\t"))
+        content.push([(r[:rname] + '.' + r[:target_zone]).downcase, r[:rttl], r[:rclass], r[:rtype], r[:rcontent]].join("\t"))
       end
       # rubocop:enable Style/StringConcatenation
     end

Notice: /File[/opt/puppetlabs/puppet/cache/lib/puppet/type/powerdns_zone.rb]/content: content changed '{sha256}73c4de974051989bec1a9846106675128a2d148224b68d4ed08c616ea4250fac' to '{sha256}cf1f49d965abd0dcd8b4da359c0185aed98c42bcfd6e90dd547e034c93ac0f1b'
Info: Loading facts
Notice: Requesting catalog from puppet:8140
Info: Applying configuration version '1713970714'

#   No changes

Notice: Applied catalog in 65.91 seconds

You know the more I think about this, the more I don't like this solution anyway. I'm gonna close it for now.


rkt image list --fields=name is broken

Environment
Replace this with the output of:
rkt Version: 1.18.0+git8a11377
appc Version: 0.8.8
Go Version: go1.7.3
Go OS/Arch: linux/amd64
Features: -TPM +SDJOURNAL
--
Linux 4.8.6-1-ARCH x86_64
--
NAME="Arch Linux"
ID=arch
PRETTY_NAME="Arch Linux"
ANSI_COLOR="0;36"
HOME_URL="https://www.archlinux.org/"
SUPPORT_URL="https://bbs.archlinux.org/"
BUG_REPORT_URL="https://bugs.archlinux.org/"
--
systemd 231
+PAM -AUDIT -SELINUX -IMA -APPARMOR +SMACK -SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD +IDN

What did you do?
./build-rkt-1.18.0+git/target/bin/rkt image list --fields=name

What did you expect to see?
An output filtered showing only the NAME field
$ rkt image list --fields=name
NAME
coreos.com/rkt/stage1-host:1.18.0
coreos.com/rkt/builder:1.1.1
coreos.com/rkt/builder:1.1.0
quay.io/coreos/bootcfg:latest
...

What did you see instead?
An output showing all fields
NAME
sha512-b982a45dd5a6	coreos.com/rkt/stage1-host:1.18.0		152MiB	6 days ago	6 days ago
sha512-0e6615fb61be	coreos.com/rkt/builder:1.1.1			1.2GiB	6 days ago	6 days ago
sha512-7b1e1a77f0b6	coreos.com/rkt/builder:1.1.0			1.6GiB	5 days ago	5 days ago
...

It smells like a regression introduced by #3334.

What did you expect to see?
An output filtered showing only the NAME field

$ rkt image list --fields=name
NAME
coreos.com/rkt/stage1-host:1.18.0
coreos.com/rkt/builder:1.1.1
...

is this right? surely

coreos.com/rkt/stage1-host
coreos.com/rkt/builder
?

I'll take a look later today.

@lucasallan No worries, I've already submitted https://github.com/coreos/rkt/pull/3361 in order to not introduce a regression in a stable release (happening tomorrow). Feel free to have a look there in case I missed anything!


Check if the logging directory exists before training

In the original reinforcement training program, the monitor is set to the logging directory without checking whether it exists or not.
Still, the directory is checked and created in the callback, but it only happens after the monitor is set.
Therefore, a typical "no such file or directory" error occurs when users first try to run it after cloning the repo.
The program now will try to create the directory, errors are expected to occur only when the creation fails.

Since now the logging directory is created before the monitor is set, and it happens before the callback can take place, there is no need to do that again in the callback, thus removed.
Moreover, during the process, there is nothing in the directories created when a better model shows up. The model is saved as a zip file, so there is no need to create new directories for that.


Clean up the mappers used by V2Flag

The entire thing is confusing and seems confused. It needs a good cleanup.

Mappers themself have been rewritten and work as well as any other. I've verified the algorithm in Flag.cpp and after fixing a few kinks it's now producing correct colonial, custom and regular flags. Trouble is it's divorced from naming mappers (because country mappers use one set of inputs and this uses actual flags on disk as source), which makes it appear confusing, but it's solid for now.
Replacing targa with something that can chew on UTF8 filepaths is another issue entirely and not really a fault of V2Flag.


Adding missing header for std::set

This PR adds a missing header for the usage of std::set in the constraint manager. The lack of the header was responsible for compilation errors in some machines.

@nim65s it seems one of the jobs is using std::shared pointers for FCL geometry.
Can you advise us on what to do?

for those types, we shouldn't explicit std or boost, but rely on exposed types by hpp-fcl or pinocchio

for those types, we shouldn't explicit std or boost, but rely on exposed types by hpp-fcl or pinocchio

std::set is not supported by either dependency. At least, I couldn't see any use of it in those repositories.
Additionally, we are already including set in other parts of Crocoddyl, e.g., https://github.com/loco-3d/crocoddyl/blob/devel/include/crocoddyl/core/costs/cost-sum.hpp#L15, which didn't trigger any issue in past. Would this triggers an issue now? If so, it should be a deprecation procedure developed in the above mentioned dependencies; this might affect many other packages.
@Sergim96 could you test this PR with a docker? @nim65s could you share these dockers with him?
Given all these details, @nim65s what is your suggestion for sorting out this PR?

I believe it's about not hard-coding the return type to be boost::shared_ptr but use the Pinocchio specified ptr-type as for CollisionGeometryPtr:

I.e. in cost.cpp try the CollisionGeometryPtr type as the return object. Or use auto

Closing this issue due to inactivity.


[9.x] add enum support to collection

REF #42043 #42031
when doing groupBy or keyBy with enum field that casted from a model sometimes it returns an enum instance. it will cause an error array_key_exists(): Argument #1 ($key) must be a valid array offset type.
for example like below
enum CustomerStatus: string
{
    case Bussines = 'bussines';
    case Private = 'private';
}

class Customer  extends Model {
    protected $casts = [
        'status' => CustomerStatus::class,
    ];
}

then when we do
Customer::all()->groupBy('status')

it will cause an error
array_key_exists(): Argument #1 ($key) must be a valid array offset type

we need to workaround with enum for example Customer::all()->groupBy('status.value')
this PR will make accessing value of an enum directly like Customer::all()->groupBy('status')

When can we expect this issue to be fixed please? Maybe I'm missing something, but I'm still getting an error array_key_exists(): Argument #1 ($key) must be a valid array offset type. I'm not sure if modifing only the groupBy method is the solution because for example working with mapToGroups method is also not working (Illegal offset type) with enum field that casted from a model.
Thanks in advance for a reply.


Manual common-files update with lint fix.

Please provide a description of this PR:
Manual common-files update with lint fix.
Replaces: https://github.com/istio/istio/pull/39090

@ericvn: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-security-multicluster_istio
5d256ef33808ecac892fa514571e3a5e8487de52
link
true
/test integ-security-multicluster_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test integ-security-multicluster_istio

#39090 merged so this isn't needed.


HF1.12.1 - drop-if-minutes-in-range, max: 5

to update the mobile app-config

We confirmed that this is the correct change. But let's hold back the PR until everything else is finalized


fix tikui styles broken by inter.css

Fix #11382

After some research, I found the reason why the inter font-family changed the sun (☀) emoji color to grey only on Chrome and not on Firefox.
Firefox:

Chrome:

According to the documentation, the Inter font has a specific behavior with certain emojis due to a specific glyph (U+20E3) that interferes with the rendering of special characters in Chrome[1]. This issue occurs because Chrome has difficulty resolving characters when the Inter font is present, causing some specific emojis not to render correctly[1].
The problem doesn't affect all emojis, only specific characters, as it depends on how Chrome discovers and resolves these special characters when it finds the Inter font in its font stack[1]. When Inter is present, Chrome cannot properly fall back to the system's emoji font in some specific cases[1].
Unfortunately, I can't explain why the moon emoji (🌙) didn't turn grey and only the sun emoji (☀). However, the technical behavior described explains why some emojis are affected while others continue to work normally.
Citations:
[1] https://github.com/tailwindlabs/tailwindcss/issues/2499
[2] https://rsms.me/inter/
[3] https://github.com/rsms/inter/issues/371
[4] https://forum.obsidian.md/t/the-sun-emoji-is-displayed-as-a-monochrome-glyph/47751
Use the sun and moon here:

ok, but strangely I don't reproduce on the main branch (on Chrome, maybe new version of Chrome fixes that)

I used an old version of Chrome in my wsl2 Ubuntu.

ok, but strangely I don't reproduce on the main branch (on Chrome, maybe new version of Chrome fixes that)

@qmonmert : I tested in Vivaldi browser which is based in chromium like google chrome and the sun is grey:

And the moon is yellow:

👍


[Improvement] improvement Python client lib according Apache specification

What would you like to be improved?
This needs some updates to comply with https://incubator.apache.org/guides/distribution.html#pypi
How should we improve?

Rename library to apache-gravitino
Added Apache licenses
Added ASF Incubator disclaimer
Added project links

Also, note the ASF release policy (and the above guidelines) and that only releases voted on by the IPMC/PPMC can be listed or clearly marked.

See also https://www.apache.org/legal/release-policy.html#publication

There is still some more that needs to be done here ASF-wise, do you want me to fix it?

Sure, please go ahead.


Translation of effect names

Hi! Excellent module! For the purpose of translating the module, it would be great if it were possible to configure the name of the effects created by it. Are there any intentions to provide this in future versions? Thanks!

Thanks! I did set it up to support languages, but I've only filled out the en.json file. I'd love any help in getting other languages set up.

I'm a native Brazilian Portuguese speaker, I'll provide translation into my language later this week!

Thanks, I'll get this in the next release. I realized I didn't put the "Umbral Sight" label in the language file, would that be "Visão Umbral"?

Yes!

It's in v2.2.0.


hypnotix: 3.5 -> 3.6

Description of changes
https://github.com/linuxmint/hypnotix/compare/3.5...3.6
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

@ofborg build hypnotix


Anyway to filter by tag and difficulty simultaneously?

💬 Questions and Help
Hello, is there anyway to filter the problems by tag and difficulty simultaneously? For example, if I wanted to only see Array problems with Medium difficulty is there anyway to do this?
Thanks,
Parker

Hi @parkershamblin,
I'm sorry it not supported yet. Not sure if VS Code has the APIs to let extensions provide a filter to the tree view. (as far as I know, it does not have).
Anyway, we can definitely revisit this issue once there is such a API to do this.
Thanks


Clarifying the interface between the image layer and data

🚀 Feature
(This is a follow-up to discussions that occurred offline, and on zulip)
Currently there is a lot of logic in the image layer for handling different types of data, e.g. arrays that represent grayscale data (the default), arrays that represent RGB data, and image pyramids (lists of arrays). Accordingly, the image layer has rgb and is_pyramid properties, which the image layer uses when figuring out how get images from the user-supplied data, e.g. in Image._set_view_slice.
There are several standing issues that might further complicate the data wrangling in the image layer, namely adding functionality for lazy loading of planar views (https://github.com/napari/napari/issues/318) and adding support for a physical coordinate model (https://github.com/napari/napari/issues/763). I think these issues might be simpler to resolve if there's a cleaner separation of concerns between the image layer and the source of the data that the image layer is displaying. I know @jni's blood pressure shoots up when he hears the O word, but I want to use this issue to explore the advantages and disadvantages of making an object (tentatively called a datasource) to take a lot of data logic out of the image layer class.
Schematically, I'm a imagining what life would be like if the image layer had a datasource object which could act like a locus for data properties and access methods, e.g.

dimensional information / units (e.g., how the data grid maps to world coordinates)
min and max values of the data (which are not the same as the layer's contrast limits)
whether the data has changed (maybe important for streaming camera data)
whether the data is RGB or not
a method that takes some spatial parameters and returns a view of the data corresponding to those parameters. By making this a method call and not just using array_like.__getitem__, it becomes a lot easier to pass in arrays of (eventually) floats for resampling data off-grid.

I'm still not super sure what exactly this object should look like, or what it should do. But I think adding a little bit of abstraction in this area could make solving some current issues a lot easier.
To help with https://github.com/napari/napari/issues/763, a datasource object could totally encapsulate the mapping from the data grid to a grid in the viewer space. That information (e.g., an affine matrix and a transform method) needs to live somewhere; a datasource-like object seems like a good fit for it.
To help with https://github.com/napari/napari/issues/318, a datasource object, when generating views of a lazy array like a dask array, could return to the layer an array of NaNs and schedule a reader thread that progressively fills in missing values of that array. Especially for testing & development, it seems more natural for this tiled loading functionality to be encapsulated in an object with a relatively restricted interface, as opposed to bolting it on to the image layer, which has lots of visualization-specific concerns (colormaps, etc).
Unfortunately I don't have any code yet, these are just ideas... I'm spending a lot of time staring at code, thinking about what structure is right.

Thanks for making this issue @d-v-b! I have a couple comments.

For #763 our coordinate system is going to have to work for all our different layer types, so if a lot of the conversions live in this new datasource object for images, we either have to re-use that object for Shapes Points Vectors, etc. or maybe the way you want to do the transforms are different if you're dealing with coordinate-like data instead of image-array-like data and it makes sense to treat these things slightly separately and we can just re-use parts of the code. We'll have to see, and I'm sure we can figure this out, but I just wanted to flag.

I guess for #318 and #471 I'm still not sure how having that array of NaNs is going to interact with our vispy code. It really is quite a different rendering paradigm then the Big Data Viewer one, and I'm not sure how to make it work. Figuring that out seems like the most important thing. @royerloic do you have ideas here? If we pass vispy a huge array where there are lots of NaN do we we know what happens? Does it ignore those pixels and is it lightning fast? That would be nice, but I don't think it does. Otherwise instead of having one visual in lazy-rendering mode we could have a grid of visuals (say n x n) that we call set_data on when data was ready in a first-come-first-serve non-blocking way and used the vispy scene graph to put each one in the right place, but this feels brittle, and I worry that having so many visuals will make things like pan and zoom slow as I think there is some overhead each time you add a visual. A final option is that we always have just one visual and data fills in that visual say from the top left corner moving in chunks row by row. Or maybe from the center out in a spiral. Here at each moment in time we know how much data we've gotten (and which data we've gotten) and we can use the scenegraph to put it in the right place. This stuff would also be non-blocking, but depends on us getting data in a certain order. We might also have to do some NaN padding when the received data is not exactly rectangular.

What do you make of those ideas @d-v-b?
I think for now I'd probably focus on a minimal grayscale example that is not a pyramid, say a nice big 16_000 x 16_000 image, which I think was one of your motivating examples in #318, and try and mock something up in a napari-independent vispy-only way, as if we can get that working then figuring out the integration will be much easier.

A few points:
o) I think all the data properties belong to the layer model -- that's what it is for. There seems to be some properties that the model layer does not 'remember' -- the data is transformed but its original specification is forgotten. We should avoid this. Whatever the user provides at layer construction should be explicitly modeled, how this then translates to a view is the view's job.
i) The info for the physical coordinates should live in the layer model base class, and some extra details can live in each layer model...
ii) Lazy loading requires a quadtree/octree image layer model -- possibly together with a compound vispy visual node made of several image nodesthat handles the vispy machinery to render the model on screen (see Tulip chat for details on async and where that should be)
iii) Having said that, it could make sure to have an image_data_source object, but this should live in the model, be completely internal, and should be introduced after the basic are set up.

@constantinpape you might be interested in weighing in here, particularly given what you've done here - https://github.com/constantinpape/heimdall/blob/master/heimdall/sources.py
We're likely going to be improving our physical coordinate systems soon - see #763 - and so now might be a good time to integrate any big data features you are interested in into napari directly

Just noticed that I did not weigh in on @sofroniewn question on 'NaNs': "... how having that array of NaNs is going to interact with our vispy code".
For sure this won't work -- NaNs are not interpreted by OpenGL -- unless we do something just before we sent the data to the driver. The right approach as suggested is to use a tilling approach. I think this is clear by now, but just wanted to have stated clearly here since the question was asked :-)

@constantinpape you might be interested in weighing in here, particularly given what you've done here - https://github.com/constantinpape/heimdall/blob/master/heimdall/sources.py
We're likely going to be improving our physical coordinate systems soon - see #763 - and so now might be a good time to integrate any big data features you are interested in into napari directly

Thanks for bringing this up @sofroniewn. Regarding my big data features, I think the discussion here is bringing up the most important points:

tiled rendering
non-blocking rendering (tiling is prob. a prerequisite for this)
physical coordinate system to support multiple views / affine transformations

As far as I understand, the points @d-v-b raised here were mostly about separating the data model from the layer model. Indeed, what I did here https://github.com/constantinpape/heimdall/blob/master/heimdall/sources.py goes along these lines, but so far I haven't added much functionality beyond some IO helpers to bring multi-scale HDF5 or zarr/n5 data into a napari friendly layout.
In general, I think an advantage of adding a data model would be that it allows to easily add some meta data about preferred access (due to chunking) or to add caching layers.

I wonder how much of this stuff we could get for free by using xarray. "rgbness" of an xarray can be represented by assigning the name "rgb" to the axis corresponding to the color channel; the coords property of an xarray naturally describes the position of the data in physical space. It should also be simple to use xarrays for making lazy pyramids, since they have a coarsen method... I'll see what this looks like in code form.

I wonder how much of this stuff we could get for free by using xarray.

Yes, it would be really good to explore this


Contrasting Flutter and SwiftUI code

SwiftUI is terse, which is initially very positive. It has lots of sane defaults. Compare and contrast this code, which produces identical results:

SwiftUI
What I like about this is that it puts the focus on the image itself; the modifiers describe how the view is to be presented.
image
    .clipShape(Circle())
    .overlay {
        Circle().stroke(.white, lineWidth: 4)
    }
    .shadow(radius: 7)

Flutter
By contrast, the Flutter code requires understanding of a number of unrelated concepts and the image itself is hidden in the widget. Code completion can't find a BoxDecoration or ClipOval for me from the Image widget, since it's a parent of the widget itself. I have more control, but I need to know about a number of unrelated widgets to assemble this.
    return Container(
      decoration: BoxDecoration(
        shape: BoxShape.circle,
        border: Border.all(color: CupertinoColors.white, width: 4),
        boxShadow: const [
          BoxShadow(blurRadius: 7, color: CupertinoColors.systemGrey)
        ],
      ),
      child: FractionallySizedBox(
        widthFactor: 0.6,
        child: ClipOval(
          child: Image.asset(image),
        ),
      ),
    );

+1. SwiftUI seems to do a better job at matching visually prominent elements on the screen with visually prominent elements in code.


Use .env

Description
Adds python-dotenv as a dependency to make contributing a little easier.
Feel free to just close this PR if you don't want to add the dependency, but I find it easier to use a .env file for setting env variables in development.
Checklist

[ ] Add tests for these changes
[x] Test coverage is not decreased
[x] Entire test suite passes

Codecov Report

Merging #125 into master will decrease coverage by 0.00%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #125      +/-   ##
==========================================
- Coverage   97.17%   97.16%   -0.01%
==========================================
  Files          21       21
  Lines        1309     1306       -3
  Branches      215      215
==========================================
- Hits         1272     1269       -3
  Misses         21       21
  Partials       16       16

Impacted Files
Coverage Δ

src/spellbot/__init__.py
95.60% <100.00%> (+0.01%)
:arrow_up:

src/spellbot/data.py
100.00% <0.00%> (ø)

Continue to review full report at Codecov.

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

Nice, I like it!


Upgrade to Django 1.9

Coverage increased (+0.01%) to 91.433% when pulling 61688db63e33a4e2f90c787c023171d619a99fe3 on django19 into 0cf308c9a75df5ca3d1c8410f0398c9b428c5ca5 on master.


[Call for Contribution] Image augmenter operators

Goal
Fuse operations like (x - mean)/std into a single operator in backend to speed up IO.
References

https://github.com/pytorch/vision/blob/master/torchvision/transforms/transforms.py
https://github.com/apache/incubator-mxnet/blob/master/python/mxnet/image/image.py
https://github.com/huangzehao/incubator-mxnet-bk/blob/master/src/io/image_aug_default.cc#L240
https://www.tensorflow.org/api_guides/python/image#Image_Adjustments

Operators
mx.nd/sym/image.resized_crop(data, box, size, interp) -> out

data: H x W x C uint8 tensor
box: tuple of 4 integers (y, x, h, w)
size: size integer or (height, width) tuple
interp: default bilinear
out: cropped image tensor

mx.nd/sym.image.random_flip(data, axis) -> out

data: H x W x C uint8 tensor
axis: 0 or 1, axis along which to flip
out: C x H x W tensor
Note: needs to support inplace operation.

mx.nd/sym.image.to_tensor(data) -> out

data: H x W x C uint8 tensor
out: C x H x W float32 tensor

mx.nd/sym.image.normalize(data, mean, std) -> out

data: C x H x W tensor
mean: tuple of 1 or 3 floats
std: tuple of 1 or 3 floats

mx.nd/sym.image.random_brightness(data, max_brightness) -> out

data: C x H x W tensor
max_brightness: float

mx.nd/sym.image.random_contrast(data, max_contrast) -> out

data: C x H x W tensor
max_contrast: float

mx.nd/sym.image.random_saturation(data, max_saturation) -> out

data: C x H x W tensor
max_saturation: float

mx.nd/sym.image.random_hue(data, max_hue) -> out

data: C x H x W tensor
max_hue: float

mx.nd/sym.image.random_color_jitter(data, max_brightness, max_contrast, max_saturation, max_hue) -> out
Apply 4 augs in random order
mx.nd/sym.image.random_lighting(data, alphastd, eig) -> out

data: C x H x W tensor
alphastd: float
eig: tuple of 9 floats (might be better to use ndarray? not sure...)

Additional
Also support deterministic versions, e.g. flip, adjust_brightness, etc.

@javelinjs @yajiedesign

I've checked again the APIs in torchvision.
The input to all the random augmentation ops (like random_color_jitter) should be a uint8 tensor with (H, W, C) shape.

I like the idea how it is done in pytorch - composing a sequence of transforms.
also: random_crop is a useful idea not mentioned here.
same: a random rotation by 90degrees ... if you are in problems with imaging of small sample size rotation symmetric data.
one point to check is: that iterators should be able to work with variable size input images if a resize or crop operator is used ... bcs the output will then have fixed size again, so it would fit into an ndarray.


Analyze compatibility of check identities across sodacl and contracts

I think we should discuss this so we can show how we are going to become better at syncing with other tools (like was the case for Atlan).  And how we will make it more transparent when checks can preserve their history.
Currently, in the translation to SodaCL, check identities are explicit in contracts are a consistent hash of

data source name
database name
schema name
dataset name

Analyse and describe how identities will work in the future so others can comment.
Consider if these identity properties themselves have to be passed to Soda Cloud as well.

SAS-3793

Moved https://sodadata.slite.com/api/s/dqaEPsDsk4TUg1/Check-identities-compatabillity-across-SodaCL-and-Contracts


Fixed issue #1187 UI Bug: on back pressed in map opens last fragment/…

Fixed issue #1187
changes:
on Back Pressed in map now returns to session activity instead going to last activity/fragment

@Rishabhk07 Can you squash all these commits into one? :)

@the-dagger Please review :)


[bug] Moon detects .git repositories and node_modules inside of a project folder as separate projects.

When using moonrepo with workspaces the folders inside the main project folder also get detected as projects. Such folders include .git, etc.
projects:
    - "app/**"

This is the logfile
✔ Successfully synced 22 projects
pass SetupToolchain (skipped)
pass SyncSystemProject(playform) (0s)
pass SyncSystemProject(info) (0s)
pass SyncSystemProject(objects) (0s)
pass SyncSystemProject(pages) (0s)
pass SyncSystemProject(remotes) (0s)
pass SyncSystemProject(pack) (0s)
pass SyncSystemProject(public) (0s)
pass SyncSystemProject(origin) (0s)
pass SyncSystemProject(workflows) (0s)
pass SyncNodeProject(blank-web-starter) (skipped)
pass SyncSystemProject(scripts) (0s)
pass SyncSystemProject(tags) (0s)
pass SyncSystemProject(refs) (0s)
pass SyncSystemProject(git) (0s)
pass SyncSystemProject(styles) (0s)
pass SyncSystemProject(layouts) (0s)
pass SyncSystemProject(logs) (0s)
pass SyncSystemProject(heads) (0s)
pass SyncSystemProject(app) (0s)
pass SyncSystemProject(src) (0s)
pass SyncSystemProject(hooks) (0s)
pass SyncSystemProject(github) (0s)

@NikolaRHristov I can add some safe guards, but you should probably avoid using ** and just use apps/*.

Thanks for the report, this will be fixed here: https://github.com/moonrepo/moon/pull/259

This is fixed in v0.11.


chore: add svg-react-loader & node-loader example

Related issue (if exists)
related to https://github.com/web-infra-dev/rspack/discussions/3027 fixes #3039

Summary

🤖 Generated by Copilot at 7e2abe2
This pull request adds support for using SVG icons as React components in the loader-compat example app. It installs the svg-react-loader package and configures it in the rspack.config.js file. It also modifies the index.js file to import and render an SVG icon.

Walkthrough

Thank you @hardfist and @hyf0 🙌🏻 💪🏻

blocked by #3042


Allows panning beyond edges of container

I'm not sure if this is a bug or if I have the wrong styles applied, but as you can see by my example, panning is being allowed beyond the container's edges, even when zoomed out. Obviously, you should be able to pan while zoomed in, but only to the edges of the container. The green background in my example should not be visible at any time. I am using the latest version (v2.0.0).

import React from 'react'
import { Dimensions, View, Image } from 'react-native'
import { ReactNativeZoomableView } from '@openspacelabs/react-native-zoomable-view'

const width = Dimensions.get('window').width
const height = Dimensions.get('window').height

export default class ZoomPhoto extends React.PureComponent {
  render() {
    return (
      <View style={{
        flex: 1,
        alignItems: 'center',
        justifyContent: 'center',
        backgroundColor: 'green',
      }}>
        <ReactNativeZoomableView
          style={{
            width: width,
            height: height,
            backgroundColor: 'red',
          }}
          initialZoom={1}
          minZoom={1}
          maxZoom={3}
          contentWidth={width}
          contentHeight={height}
          bindToBorders={true}
        >
          <Image
            source={{ uri: this.props.image_url }}
            style={{ width: '100%', height: '100%', resizeMode: 'contain' }}
          />
        </ReactNativeZoomableView>
      </View>
    )
  }
}

@andrewhavens I think that you set incorrect values for contentWidth and contentHeight, try to set your original image dimensions

@professorkolik Thanks for your reply. Unfortunately, your suggestion does not work. I can set the contentWidth to 100 or 10000, or don't specify it at all, and the behavior stays the same.

@andrewhavens I believe this is behaving as intended. It works a bit like "over-scroll", and the idea is that you can zoom in on details at the edge of your image by bringing the edge of the image toward the centre of the viewport. I think this is a more common effect on iOS than on Android.
The intent is that your finger stays in the same place on the image while you're padding, even if you get to the edge of the viewport.

@elliottkember That behavior makes sense when you're zoomed in, but in this example, I am zoomed all the way out. I can fling the photo so far out of the viewport that I would have a hard time finding it again. It does not spring back to center. It allows me to endlessly pan the photo out of view.

I am experiencing a similar issue. In addition to being able to endlessly pan away the image, when I try to zoom on my photo it also appears to focus on the bottom-right corner, as if that's where I'm pinching.
It very much seems like a bug, rather than an intended feature and I strongly believe these 2 issues are connected. Anyone have any input on this?

Your configurations look correct except for contentWidth and contentHeight. You're passing in the window's width and height, which causes the pan boundaries to be much larger than the actual content. You'll need to pass in the RENDERED size of the image.

@thomasttvo thank you so much for clarifying that the contentWidth and contentHeight have to be scaled down values that fit into the viewport. I basically had the same problem as OP and apparently did not understand the explanation from the readme correctly until i read your comment.

Thanks @alexhochreiter for letting me know about the confusion, we'll take a look at the readme again and improve its verbiage in later versions.

I am having the same issue as OP. I tried setting the contentWidth and contentHeight to different values but it always has the over scroll animation when panning. Also tried tried not including panBoundaryPadding and tried setting it to a few numeric values including 0. That still did not get rid of the over scroll.
I found an older version of the ReactNativeZoomableView package worked as I am looking for. I tried copying the example but it no longer works. When a user pans the image, it stops at the image border while the image is zoomed it. It also does not allow panning when the image is at the initial zoom level. Is there a way to get this component to work exactly as in the example below?
https://snack.expo.dev/@ivandjl/react-native-zoomable-view?platform=android

I am having the same issue as OP. I tried setting the contentWidth and contentHeight to different values but it always has the over scroll animation when panning. Also tried not including panBoundaryPadding and tried setting it to a few numeric values including 0. That still did not get rid of the over scroll.
I found an older version of the ReactNativeZoomableView package worked as I am looking for. I tried copying the example but it no longer works. When a user pans the image, it stops at the image border while the image is zoomed it. It also does not allow panning when the image is at the initial zoom level. Is there a way to get this component to not have the over scroll feature at all as in the example below?
https://snack.expo.dev/@ivandjl/react-native-zoomable-view?platform=android

is there any way to disable panning beyond edges also when zooming ? I am using disablePanOnInitialZoom but I want this behavior also when I zoom and get to edge of image.

I am experiencing a similar issue. In addition to being able to endlessly pan away the image, when I try to zoom on my photo it also appears to focus on the bottom-right corner, as if that's where I'm pinching.
It very much seems like a bug, rather than an intended feature and I strongly believe these 2 issues are connected. Anyone have any input on this?
Edit: After additional experimentation the error appears to start happening inside views you navigate to through react-native-router. Meaning, the ReactNativeZoomableView on a main/initial page works no problem, but on a details page it starts exhibiting all these issues, namely that Zooming doesn't focus on the pinched area and panning can go beyond edges of the container.

@bjarke-uptime
have you managed to fix this issue ? I am also facing this issue with using react-native-router-flux, when I render the zoomable view in the main screen it is working correctly an not allowing panning beyond edges, I have to use routing and I'm stuck on this foe few days, help please !

@Adrian-Jablonski @manarfalah do you guys have a repo where you can reproduce the issue?

@thomasttvo  actually no I am facing this issue on my work project repository, but you can try to open new react-native project and install react-native-router-flux, add the example app of zoomable view as a new screen and add it as a scene in router. this is how you can reproduce the issue.

@Adrian-Jablonski @manarfalah do you guys have a repo where you can reproduce the issue?

@thomasttvo Did you manage to reproduce the issue ? still stuck on trying to fix it.

An old issue, but here is my way of fixing this :
`<ReactNativeZoomableView
maxZoom={...}
minZoom={...}
initialZoom={...}
contentWidth={1600}
contentHeight={1800}

<View style={{    flex: 1, alignSelf: 'center', justifyContent: 'center',}}>
<MySvgContent style={{width: 1600, height: 1800}}/>

`
My logic here was the equalize the zoomable view's width and height with Content's width and height, which are 1600x1800 in my example. A possible variable is that I'm using a huge svg image, so let the community know if this solution doesn't work

@andrewhavens were you able to find any workaround to prevent pan while zoomed in ? I am struggling with the same issue you mentioned.

Ive noticed that occasionally, zoomable view loses the plot.  Panning will be confined to the edges of the contentWidth/Height most of the time, but then something will happen, and panning beyond the contentWidht/Height will become infinite.  Accompanying this behaviour will be if you try to zoom, it will always zoom as if you are zooming from the bottom right of the content.
Once in this broken mode, it persists across all instances of using zoomable view, as if some static/global data has been corrupted until the app is restarted.


Add layer-wise filesystem information to the analysis json file

Add layer-wise filesystem information to the analysis which is written to a json file while running dive with -j or --json flag.

I'd love to see this feature in dive too. Are there any plans on merging this @wagoodman ? Thanks!

Sorry! I didn't mean to close this, I renamed the master branch to main... I should have switched the target here first.

NP. I have re-opened the PR against the main branch.

Thanks @Akash-Nayak , sorry for the extra work

No problem. Please review the new PR when you are free. :)


Update reset-the-audio-conferencing-pin-in-teams.md

Removing a deprecated behavior

@JohanFreelancer9 Copy editing is needed for this PR. Thanks.

@JohanFreelancer9 Copy editing is needed for this PR. Thanks.

@ruizoscar Following up here.