Added the ability to change both out-of-range and in-range alpha

Renamed the Alpha and Background Alpha Sliders to Out of Range Alpha and Out of Range Background Alpha.
Added two new sliders for In Range Alpha and In Range Background Alpha

This allows the user to give the in range raid frames some transparency as well.

Sorry for the late reply. Summer vacation is nice for catching up.
The diff shows the whole file as replaced, maybe because of encoding or line breaks so that was a bit annoying. I have further simplified the options into just out of range and in range, with the background just having the same value.


[Feature Improvement] More granular Layout column controls (width, spacing, etc)

I'm on 8.5, but this is a general request not to a specific version.
I use Layouts heavily to control how content is positioned on the website, as well as how the content is presented on tablet/phone responsive layouts.
I find that layouts rather limited in their current form based on:

I can't have a zero-gap between layout columns (I wish I could do this)
I can only move column widths along a "grid" style, I can't adjust column widths in a granular regard
I can't force a gap below or above two immediately adjacent column, so when they stack on top of each other on mobile (phone) they look immediately attached and looks kinda sloppy

The grid sliding is useful at times so I don't want to get rid of it, but if we could control how granular the grid is, and/or have specific values for position (percentage? px numerical?) that would really help granular positioning.
Furthermore, sometimes I really want to have my columns touch with 0px between them. Without this I am forced to make some weird gaps.
Any chance we can have this revisited at some point please?

We have realized in the past that we've never going to be able to fully handle all the different things people are going to want to do. That's why we're introducing Containers in version 9. Layouts will stay around but if you need greater control of how area columns display or collapse you should be using containers.

What are Containers? Is there an explanation of that somewhere?

@mlocati thanks! :D


Cannot keep connection using TCP/IP

Environment

OS: PopOS
scrcpy version: 1.14
installation method: apt
device model: HUAWEI CLT-L09
Android version: 10

Describe the bug
I'm able to start the tcpip server, adb tcpip 5555
Able to connect to the phone, and start scrcpy
When I disconnect the USB cable from the phone to the computer it close the connection, with adb devices nothing show up.

This is a problem with some adb server on the device. Unplug before adb connect.

Still wont work, this is adb connect <IP_ADDRESS>:5555 output
unable to connect to <IP_ADDRESS>:5555: Connection refused

I managed to have it working, I had to enable "Allow USB debugging in charge only mode" under the developer option on my phone.


is AsciiDocFX still active?

i was wondering if this project is still active. i discovered adoc for me, but there is a huge lack of useable wysiwyg-editors in my opinion. AsciiDocFX seems to close the gap a little bit, but obviously it has a lot of problems (including images is not a strength for example) and also it has a shitload of open issues (194 right now). i downloaded 279 MB to get v1.8.5 and it's absolutely unuseable. should i be patient or should i move on? thx a lot.

I don't think you have the right to reproach. I'm developing AsciidocFX for my own needs and it's working right now. You are free to send pull requests to make it better or you may consider investing on the project.


ENH: SphericalVoronoi Input Handling

Although issue #7046 didn't actually reveal any algorithm-level bugs in SphericalVoronoi, there was a suggestion to check the input points (generators) more thoroughly with respect to the input radius, and the original problem was that the user had degenerate input (duplicate generators).
This PR drafts a possible set of checks / exceptions raised for these two user input-related issues, along with the corresponding unit tests and documentation updates for the Raises section of SphericalVoronoi.
Considerations / Questions

Voronoi handles degenerate input silently -- i.e., the user is not notified that they have duplicate points using the default arguments / Qhull flags, and Qhull appears to take care of this (probably by removing the duplicate generators). Since my solution with SphericalVoronoi is to raise an exception with degenerate input, would we consider this presenting the user with an "inconsistent interface" in scipy.spatial? I think there's something to be said for explicit notification that you have duplicates in your input, but I may just be trying to avoid the extra work involved in removing them. If we do decide to go the duplicate-removal route instead of what I've done here, I suspect that is something that we'd want to abstract outside of SphericalVoronoi--many computational geometry algorithms do not tolerate degenerate input.

An additional consideration is that the algorithm may not be able to tolerate points that are extremely close together (i.e., d = 0.000000000000001). Currently, d = 0 is required to raise the exception--do we want to carefully check the floating point limit for degeneracy / proximity and use that instead of 0 proper?

My changes introduce two identical pdist operations--I'm not sure we gain all that much by this--I was trying to avoid storing the condensed matrix in a variable in case that might alleviate space complexity issues for huge data sets, but this may actually not help at all and simply add to the calculation time? If so, we'd just switch to one pdist calculation, store the result in a variable, and take the max() and min() of the condensed distance matrix for the two input checks introduced here.

Note that the radius value check only works for cases where the generators are far enough part that the radius can't possibly be correct. The reverse determination (the radius is too big) would be more challenging since the user may only provide a subset of the points on the sphere, and we can't easily know for sure if we are i.e., just looking at points restricted to a subregion of the sphere for which the true diameter is never approached in a distance matrix.

Is this in 0.19.0?

@rpsirois no, this PR isn't even merged yet.

Cool, thanks
On Wed, Apr 5, 2017 at 2:23 PM, Ralf Gommers<EMAIL_ADDRESS>wrote:

@rpsirois https://github.com/rpsirois no, this PR isn't even merged yet.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/scipy/scipy/pull/7254#issuecomment-291985736, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABTgB_62H7LBATPF61NC6-pvj332B6Isks5rs_hTgaJpZM4MyGZy
.

--
Robert Sirois
http://universesgames.com http://www.universesgames.com

You can compute how far the points are from the surface of the sphere,
instead of looking at the distances between the points.

How does that avoid floating point issues if the input generators are just slightly off the surface?

I'm trying to point out two things:
.
(1) the pdist check does not check that the generators are on the sphere
(2) there should be a (user-defined) numerical tolerance specified, if
these checks are made

Ok, so perhaps the equation of a sphere should be satisfied for all generators:
(x-x_0)^2+(y-y_0)^2+(z-z_0)^2=R^2
with a threshold. That's probably what you're edging me toward. Possibly the same user-specified threshold may be used to check for duplicate points as well, if that makes sense.

Revised code based on comments in PR. A user-specified threshold and the equation of a sphere are now used for the input checking.

I think I addressed the latest round of revisions. I couldn't quite make the changes @pv requested verbatim and have the unit tests for the resolution of the issue pass, but with minor adjustments for the idiosyncrasies of how the class initialization happens (i.e., radius can be None), the unit tests pass (locally) along with the conceptual adjustments requested.


provide Changelog and What's New information

Solves #115 and needed for https://github.com/nextcloud/server/issues/9163
@MorrisJobke @nickvergessen are you ok with that approach? If so, don't merge yet, the example in the productive whatsnew.json file should be replaced with something reasonable first :)

Also the whatsnew.json is just a plain JS file that is requested or how does it work? Is this integrated in the XML? because then it could be that the request get's quite big.

Also the whatsnew.json is just a plain JS file that is requested or how does it work? Is this integrated in the XML? because then it could be that the request get's quite big.

Only the text relevant to the version is returned with the response.

Needs rebase

The response then looks like this:
<?xml version="1.0" encoding="UTF-8"?>
<nextcloud>
 <version><IP_ADDRESS></version>
 <versionstring>Nextcloud 13.0.2</versionstring>
 <url>https://download.nextcloud.com/server/releases/nextcloud-13.0.2.zip</url>
 <web>https://docs.nextcloud.com/server/13/admin_manual/maintenance/upgrade.html</web>
 <changelog>https://nextcloud.com/changelog/#13-0-2</changelog>
 <autoupdater>1</autoupdater>
 <eol>0</eol>
 <signature>LM7g6SaWxzArRLd++9sdk80UZw1mIzAaqEnH75YO3EBK7qF7xxVdvb7tnu9cipsr
Y5e/MoISsNOgc3FZoRygGrkKl4GVf4SZSOSusmoDxwHNT0tBSK8u0QMRXrEXLuyE
pxyvA3hHMP/gGhLn+T0/CrvI/QBy3QO1N74OUWc+nc+NnKnWSwwVP4/OITRkAtYj
zsIH95cgI4e3Eez6c63YsITKLWVwoE4Qu0ubU8HGfhHBYxqFoGbNfSWvB78gV/gf
S3QFUmoMjKoOvo1Q4s7UQv0xE5TUDC4XFIW6q1ly1Z/XRPZaywstv3br8J52L6+J
G2ZuS4ms5s9o5i2OrogYRQ==</signature>
 <whatsNew_admin>
  <item>Pollute the files failing to update l n files for pdf</item>
  <item>Emaillogin server show open graph preview in gallery removed old code</item>
  <item>Server sharee email search server log exceptions that s settings server</item>
 </whatsNew_admin>
 <whatsNew_regular>
  <item>A beautifully revamped web UI</item>
  <item>Sparkling buttons with pew-pew-sound effects when you look at them</item>
  <item>Everything is shared automatically with your mother-in-law</item>
 </whatsNew_regular>
</nextcloud>

As discussed:
I guess that adding this to the default response causes a huge amount of traffic. Thus I would love to have something like:
https://updates.nextcloud.com/changelog/server/13.0.3 with an accept header  of the user language to send over then only the changelog with only that matches those criteria. Also then a transifex integration is not too hard as well.

As discussed with @MorrisJobke today:

serve the infos from a new server instread (easier to seperate)
instead of supplying the what's new info, specify an URL to a separate endpoint
then, deliver all translations, so the Nextcloud server can present it accordingly
provide an etag over the content for proper caching (and keep traffic low)

Also:

Of course the whats new infos are optional
And admins should see the same as users. But there can be optional additional infos for admins on top.

@MorrisJobke @rullzer I updated the PR to only provide a changes field for versions >= 14.0.0.
with test data:

whether the url exists is not being checked here. Client needs to deal with that also for various other reasons.

and now even the tests pass :)


Customizable field name prefix

I've created this as an alternative to #13 and #15. It solves the problem described in #12 without breaking old code.

@knovoselic Thank you so much for this - my preference is to have this as a configuration option, and then I can change the default in the next major release. :beers: :cake: :tada:


Next Button for Add Items

Add a Next Button that will add the current item and re-prompt the user to add another item. This will be one less button the user has to press if they want to add multiple items in succession.

Also added this functionality for lists.
Commit: https://github.com/johneastman/todo/commit/5f21d67b2510a962a994878267c1d007679f636a


Improve testing documentation

Add documentation on how pytest installs MM and updates .jar files.
Outline the structure of the test folder and suggest what kinds of tests belong where.

See:
https://github.com/micro-manager/pycro-manager/pull/562#issuecomment-1460686653
https://github.com/micro-manager/pycro-manager/pull/592#issuecomment-1572736071

@henrypinkard I am planning to describe the testing infrastructure in Contributing.md.
The contributing guide is currently a bit heavy on instruction on how to use git. Do you mind if I shorten these sections a bit and instead add links to the github documentation? For example, the Keeping your branches up-to-date section can describe the purpose of syncing your fork and provide a link to https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/syncing-a-fork. This gives users more options on how to do that, and helps keep our instruction more general - for example, the current version still references a master branch, which doesn't exist anymore.

Yes, please edit as you see fit. I copied that from another project a while back so I'm not surprised its out of date


Add a button to remove/delete bike from "My Bikes"

A way to remove bikes from the My Bikes list is needed. Maybe add a "Delete" button in the "Edit" menu? Probably will require a confirmation dialogue.
Suggestion from Jasper.

I've just pushed out a version to add a delete button to the Edit menu. Enjoy!


Linux_pixel_7pro new_gallery_opengles_impeller__transition_perf is timing out sometimes

Examples:

https://ci.chromium.org/ui/p/flutter/builders/prod/Linux_pixel_7pro new_gallery_opengles_impeller__transition_perf/5379/overview
https://ci.chromium.org/ui/p/flutter/builders/prod/Linux_pixel_7pro new_gallery_opengles_impeller__transition_perf/5288/overview

spawned from https://github.com/flutter/flutter/pull/156073

It looks like the device logcat only starts recording after we attempt to launch the app. This means we're losing any potential start up crashes.


Facing 404 error while installing mmagic package

I am facing 404 error as shown below, while installing mmagic package. I am using node version v18.16.0. I tried with node version v12.22.0 but same result.
`rajatbhardwaj@Sanchays-MacBook-Pro tmp % npm i mmagic
npm ERR! code E404
npm ERR! 404 Not Found - GET https://registry.npmjs.org/mmagic - Not found
npm ERR! 404
npm ERR! 404  'mmagic@*' is not in this registry.
npm ERR! 404
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.
npm ERR!      /Users/rajatbhardwaj/.npm/_logs/2024-04-17T03_18_24_107Z-debug-0.log`

You misspelled the package name.


Add support for RxJava3 kubernetes client

This is the solution for #383
I successfully ran tests on my local machine with the minikube and the kubectl and the build was successful.
Please take a look.

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


HSEARCH-4437 Fix very long Maven download timeouts when building with GitHub Actions

https://hibernate.atlassian.net/browse/HSEARCH-4437

Actually, I don't know if changes to GH actions workflow files take effect in pull requests. I suppose I have to merge into main in order to test the fix.
I'll merge.


NFT Implementation simplification

@ailisp deleted redundant interfaces (tell me, if we need them for some reason).

Ok @ailisp ,  close it.
It will not be an issue if we will find a good way for composability.


Added normal mapping example

An example of normal mapping that allows the user to adjust the lighting of the scene, the depth layers, and the currently displayed combination of diffuse, normal, and height maps (Spiral, Toybox, Bark).
Current issues to be addressed:
Parallax Occlusion Mapping (Possibly in a later PR)
Weird Bark Height Map Behavior
Creating Generalized Way of Loading Images in Assets Folder from Helper Functions Rather Than Public
Removing unused types, interfaces, and helper functions per usual.

Ready for review. Contains some of the same utils as used in the bitonicSort shader, which can either be inlined, kept, or moved to a separate folder depending on the maintainers' preferences.

Adding video to demonstrate intended functionality.
https://github.com/webgpu/webgpu-samples/assets/62450112/116be3a4-b037-46ac-84a9-aac80b4edd0e

@greggman could you help review this PR?

I implemented most of the suggestions (although the perspective of my camera doesn't seem to match yours). However, I left in the model rotation, since I think it more effectively demonstrates how the perceptual depth changes as the surface moves in and out of light, and I wasn't sure what was meant by surprising (too visually distracting, unexpected?).

Also, I was able to fix the issue with the map mode not changing by remembering to write that value as a u32 rather than a f32.


Test AES sideload key is correctly used by AES core

Tests that keymgr AES sideloading works correctly by comparing the result of a 256-bit AES block encryption operation (using the AES sideload key) with the equivalent computation (using a C model of the AES) - issue #14141
Signed-off-by: {Ghada Dessouky}<EMAIL_ADDRESS>

Thank you! I took care of the above comments in my last commit. Please take a look and let me know how it looks.

there is a lint error. Maybe we need to put these deps in alphabet order. SW folks may know better.
 +++ /tmp/buildifier-tmp-2102921814	2022-11-18 22:34:22.904342917 +0000
@@ -68,21 +68,21 @@
         timeout = "long",
     ),
     deps = [
+        "//hw/ip/aes/data:aes_regs",
         "//hw/ip/keymgr/data:keymgr_regs",
         "//hw/ip/kmac/data:kmac_regs",
-        "//hw/ip/aes/data:aes_regs",
         "//sw/device/lib/arch:device",
         "//sw/device/lib/base:macros",
+        "//sw/device/lib/dif:aes",
         "//sw/device/lib/dif:keymgr",
         "//sw/device/lib/dif:kmac",
-        "//sw/device/lib/dif:aes",
         "//sw/device/lib/runtime:hart",
         "//sw/device/lib/runtime:log",
         "//sw/device/lib/runtime:print",
         "//sw/device/lib/testing:aes_testutils",
+        "//sw/device/lib/testing:entropy_testutils",
         "//sw/device/lib/testing:keymgr_testutils",
         "//sw/device/lib/testing:kmac_testutils",
-        "//sw/device/lib/testing:entropy_testutils",
         "//sw/device/lib/testing/test_framework:ottf_main",
     ],
 )

Also, the FPGA failure seems unrelated to this update. Perhaps rebase and rerun?

(00:06:54) [5,333 / 5,608] 135 / 275 tests, 1 failed; Testing //sw/device/tests:clkmgr_off_peri_test_fpga_cw310_rom; 8s local


[MariaDB compatibility] Update ChannelDataGrid.php

The channel datagrid is now MariaDB compatible
Issue Reference
#3

@helgvor-stoll
Thank you for your contribution. It looks like the linting and code style tests have failed. To ensure code quality, please run the following commands:

Linting and Code Style Fixes:
vendor/bin/pint

This will analyze and automatically fix any style issues in your PHP code.

Running Tests:
vendor/bin/pest

This will execute your test suite to ensure everything is working as expected.

Please let me know if you encounter any issues or need further assistance!

@helgvor-stoll
Thank you for your contribution. It looks like the linting and code style tests have failed. To ensure code quality, please run the following commands:

Linting and Code Style Fixes:
vendor/bin/pint

This will analyze and automatically fix any style issues in your PHP code.

Running Tests:
vendor/bin/pest

This will execute your test suite to ensure everything is working as expected.

Please let me know if you encounter any issues or need further assistance!

@navneetbhardwaj Normally it's ok now. I will improve my knowledges in Github for future.


A new deep learning visualization tool from baidu support MXNet!

https://github.com/PaddlePaddle/VisualDL

Thank you for your recommendation
@sandeep-krishnamurthy  please kindly add label Exploration, Discussion, and close this issue
Thanks


want config transfer precheck update

Description
Problem Description: If a customer is moving from AD to AAD during the cloud migration the CLI tool should flag this for the customer and warn them that this could cause and issue since multiple accounts could share the same AD address.
Feature Request: Want the CLI tool to display a warning that the above is not supported and could cause errors.
Impact on Customer: Causes problems in migration as it does not identify this issue so they complete the migration not knowing they will have a problem
Expected Behavior: The CLI tool would display the warning message requested above. Want to achieve this so customers know that moving to ADD from AD during a cloud migration is risky.
Steps to Reproduce: Have an on prem and SaaS set up for migration. Configure the on prem with AD and the SaaS with AAD. Run the precheck. It should not flag this situation
Environment details:
On prem- 7.47.3
SaaS - 7.64.7

so the CLI tool should note if ldap is enabled on the on prem instance and warn the customer it could cause issues down the line

Please provide some context @aroellig. It is not clear what would you like to achieve.

@yahavi during the precheck step of a migration the CLI tool should warn a customer that moving from AD to AAD could lead to issues for them if multiple accounts share the same AD address


python script, Alex Satz

Please submit a .py file. IPython notebooks cannot be merged into a codebase.


make secret update support name and id prefix

Signed-off-by: allencloud<EMAIL_ADDRESS>This PR makes daemon support update secret by receiving secret's name. name prefix, id, and id prefix.
- What I did

when updating secret in daemon, daemon gets the secret first by name,id( prefix), then update the secret.

- How I did it
- How to verify it
- Description for the changelog

- A picture of a cute animal (not mandatory but encouraged)

I think we need an IT for this.

Thanks for your feedback. @AkihiroSuda
While could I ask that what does IT mean?

"integration test" :smile:

Totally reasonable. Thanks for your advice. While when I begin to code the test case, I found that almost all the api swarm test cases are located in one file docker_api_swarm_test.go including node test, service test, swarm test, task test. The big file makes me feel difficult to write test case and I think it will definitely make it hard to maintain.
Then I hope to split the docker_api_swarm_test.go into several test files docker_api_swarm_service_test.go, docker_api_swarm_node_test.go, docker_api_swarm_secret_test.go and so on.
After that I come to continue this PR with the integration test. How about that?  @AkihiroSuda

/cc @ehazlett @thaJeztah @diogomonica

This seems fine.

ping @ehazlett @thaJeztah
Could you help review this one? ^^
thanks a lot.

Any update, my friend? ^^
ping @AkihiroSuda @vdemeester @tiborvass @thaJeztah

Could you help to review this pr once more? Thanks a lot. @AkihiroSuda @vdemeester @diogomonica @thaJeztah

Does this also apply to listing and inspecting the secret?


Add tests for webhook paths

Summary
This PR is meant to test the functionality of the OnRemoteWebhook call provided in the manifest.
Ticket Link

Codecov Report
Base: 20.89% // Head: 20.89% // No change to project coverage :thumbsup:

Coverage data is based on head (4c1929e) compared to base (5627d32).
Patch coverage: 0.00% of modified lines in pull request are covered.

:exclamation: Current head 4c1929e differs from pull request most recent head 0d3e845. Consider uploading reports for the commit 0d3e845 to get more accurate results

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #418   +/-   ##
=======================================
  Coverage   20.89%   20.89%
=======================================
  Files          80       80
  Lines        5269     5269
=======================================
  Hits         1101     1101
  Misses       4039     4039
  Partials      129      129

Impacted Files
Coverage Δ

server/proxy/invoke_webhook.go
0.00% <0.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

Will try to auto merge this PR once all tests and checks are passing. This might take up to an hour.

@mickmister not sure why automerge label did not fire; @DHaussermann this is a test-only PR, so no QA needed.


Fix/mdtest mpi

Coverage decreased (-0.04%) to 86.094% when pulling 2a0fca409f7e4a864e75f591df78b0de484059a6 on fix/mdtest-mpi into f8977c0c527866871f757af79667b6ff1b2a6477 on master.


AttributeError: module 'autogen' has no attribute 'Agent'

Describe the issue
autogenstudio ui --port 8081
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.10/bin/autogenstudio", line 5, in
from autogenstudio.cli import run
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/autogenstudio/init.py", line 1, in
from .chatmanager import *
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/autogenstudio/chatmanager.py", line 6, in
from .workflowmanager import AutoGenWorkFlowManager
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/autogenstudio/workflowmanager.py", line 9, in
class AutoGenWorkFlowManager:
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/autogenstudio/workflowmanager.py", line 163, in AutoGenWorkFlowManager
def load(self, agent_spec: AgentFlowSpec) -> autogen.Agent:
AttributeError: module 'autogen' has no attribute 'Agent'
Steps to reproduce
python3 -m venv autogen-yt-demo
source autogen-yt-demo/bin/activate
export OPENAI_API_KEY=xxxxxxxx
pip install autogenstudio
autogenstudio ui --port 8081
My pyhon is 3.11.7
Screenshots and logs
No response
Additional Information
No response

Hi @hasan0336 ,
Thanks for noting this.
What version of autogen do you have?
The error suggests that autogen.Agent does not exist. However it is exported from the autogen package
Also, can you confirm your autogen version and autogenstudio version. ie share the results of

pip show pyautogen
pip show autogenstudio

I encountered a similar issue. Upon investigation, I found that both "autogen" and "pyautogen" packages were installed on my system. It turned out that "autogen" is not the official library. To resolve the issue, I removed it using the following command:
pip uninstall autogen
Then, I upgraded the "pyautogen" package with this command:
pip install --upgrade pyautogen
After these steps, the problem was resolved for me.

@2undvierzig would you like to add an FAQ entry to remind people about this? It is in website/docs/FAQ.md Much appreciated in advance.


(PDB-2309) Document historical-catalogs views in PE

This commit adds documentation for the PE only historical-catalogs
views.

Refer to this link for build results (access rights to CI server needed):
http://jenkins-enterprise.delivery.puppetlabs.net/job/enterprise_puppetdb_init-multijob_githubpr-master/372/
Test FAILed.

Disregard tests, this is a docs only change

Minor comments, other than that :+1:

@senior @mullr comments should be all addressed

Refer to this link for build results (access rights to CI server needed):
http://jenkins-enterprise.delivery.puppetlabs.net/job/enterprise_puppetdb_init-multijob_githubpr-master/396/
Test PASSed.

just one nit, lgtm otherwise

@mullr update for you comment

Refer to this link for build results (access rights to CI server needed):
http://jenkins-enterprise.delivery.puppetlabs.net/job/enterprise_puppetdb_init-multijob_githubpr-master/397/
Test FAILed.


ImageMap data issue

The ImageMap was introduced with #72.
I have discovered some required adjustments.
Steps to reproduce:

Add CMS_INPUT_IMAGEMAP to FirstSpirit template
Add a new element to LINKEDITORS/LINKEDITOR with the following properties

CMS_INPUT_TEXT as lt_headline
CMS_INPUT_DOM as lt_text
FS_REFERENCE <FILTER> <ALLOW type="picture"/> as lt_image
CMS_INPUT_LINK as lt_ctaLink

Fill the template and set any image add a link via link editor
Fill all fields of the link inclusive image

Expected behavior:

resolution.widht and resolution.height is not 0.
areas.link.data.lt_image contains the data of areas.data.lt_link with the respected id

Current behavior (data JSON):
{
  "type": "ImageMap",
  "areas": [
    {
      "areaType": "rect",
      "link": {
        "template": "labeled_image_link",
        "data": {
          "lt_ctaLink": {
            "type": "Link",
            "template": "internal_link",
            "data": {
              "lt_link": {
                "type": "Reference",
                "referenceId": "62f97fc7-baa6-4e9f-943b-3ac860e37fa5",
                "referenceType": "PageRef"
              },
              "lt_linkBehavior": {
                "fsType": "Option",
                "label": "Im neuen Tab/Fenster öffnen",
                "identifier": "_blank"
              },
              "lt_linkTitle": null,
              "lt_text": "Link"
            },
            "meta": {}
          },
          "lt_headline": "[...]",
          "lt_image": "[REFERENCED-ITEM-6f7c2425-cd34-4a87-9523-49593fe687ad]",
          "lt_text": [
            {
              "data": {},
              "content": [
                {
                  "type": "text",
                  "content": "[...]",
                  "data": {}
                }
              ],
              "type": "paragraph"
            }
          ]
        }
      },
      "data": {
        "lt_image": {
          "type": "Image",
          "id": "6f7c2425-cd34-4a87-9523-49593fe687ad",
          "previewId": "6f7c2425-cd34-4a87-9523-49593fe687ad.de_DE",
          "meta": {},
          "description": "[...]",
          "resolutions": {
            "ORIGINAL": {
              "fileSize": 24218532,
              "extension": "png",
              "mimeType": "image/png",
              "width": 6122,
              "height": 2991,
              "url": "[...]"
            },
            [...]
          }
        }
      }
    }
  ],
  "resolution": {
    "width": 0,
    "height": 0,
    "uid": "ORIGINAL"
  },
  "media": {
    "type": "Image",
    "id": "35440048-905a-4843-a69b-fdb3fe0e60a1",
    "previewId": "35440048-905a-4843-a69b-fdb3fe0e60a1.de_DE",
    "meta": {}
  }
}

I will create a bugticket in our Jira. How urgent is this topic / is there a workaround for it?

It is not the most urgent topic. A workaround would be manual mapping.

@henczi-espirit, I found an additional issue that is not ignorable. As you can see in the JSON, there is "areaType": "rect" but the data where the rect is located is missing. That makes me curious since there is a mapping for the case. https://github.com/e-Spirit/fsxa-api/blob/99fbe85d8c022a21ce4a16a3329babefb93308c0/src/modules/CaaSMapper.ts#L377

Additionally, there is a typing issue with the interface ImageMapArea when you try to access the image data of an area: Property 'data' does not exist on type 'ImageMapArea' when the structure is exposed like in the JSON above.

Additionally, there is a typing issue with the interface ImageMapArea when you try to access the image data of an area: Property 'data' does not exist on type 'ImageMapArea' when the structure is exposed like in the JSON above.

As far as I can identify this, the data property gets added in one of these to the image map
https://github.com/e-Spirit/fsxa-api/blob/68325988b6e77c1d862e6be7ab844aa76fc76b2d/src/modules/CaaSMapper.ts#L533
https://github.com/e-Spirit/fsxa-api/blob/68325988b6e77c1d862e6be7ab844aa76fc76b2d/src/modules/CaaSMapper.ts#L558

Internal Ticket id: TNG-1126


Posts as markdown

As an author, posts I make can be in markdown (commonMark is good)

https://github.com/bartTC/django-markup


ddev config and ddev config  must be executable with flags, not interactive

What happened (or feature request):
Currently, ddev config and ddev config <provider> cannot be executed without an interactive terminal session. This is contrary to our overall goals, and is blocking ddev-ui from being able to do config in an appropriate way.
Therefore it's a high-priority goal to add config flags for ddev to make it do whatever config requires (and then whatever ddev config pantheon requires. Help needs to be complete as well.
What you expected to happen:
How to reproduce this:
Version: Please include the output of ddev version, docker version and the project's .ddev/config.yaml.
Anything else do we need to know:
Related source links or issues:

This is a blocker for ddev-ui at this moment, so I made it actionable and added to current sprint.

This is probably more difficult than it appears on the surface.
It would be easy to just look at the fields for pantheon and model those at the top level, but the entire idea of provider plugins is that they can provide their own flags and configuration fields. As we add more providers, we should anticipate different fields will be needed for those providers.
There are a couple things missing from providers right now that would make this more elegant:

A way register providers so the CLI could be aware of them and make the appropriate commands. Currently, provider is just an argument to config.
A method for providers to register their fields (and thus cli flags).

Interesting that the ddev config pantheon absolutely requires a site that has the same name as the directory of the git clone.
I suspect that we'll have to make another command to grab pantheon info for ddev, to make it available to ddev-ui, so it can offer choices. That shouldn't be too hard in the end.  What would we need if we wanted to do this right now @beeradb, just a command to list the available sites (to verify that we're in a directory of the same name)? Is that all it would take? I note that it's prompting for environment, but that's a fixed list right?

Interesting that the ddev config pantheon absolutely requires a site that has the same name as the directory of the git clone.

yep! that was definitely a decision we made to reduce the original scope. There's nothing that forces this, but it does make it easier and a bit less awkward. Trying to explain the difference between two site names in the same config to end-users might be difficult.

What would we need if we wanted to do this right now @beeradb

The easiest way at this point would probably be to load the correct provider struct and then send the results to the GUI as JSON. That would be pretty much the same process as loading any config (provider is automatically loaded alongside the main config).

I note that it's prompting for environment, but that's a fixed list right?

Production, staging, and dev are a fixed list. You'll have more in the list if the site is running multidev.


Add new CharacterCasing keys

Describe the changes you have made to improve this project
Add new CharacterCasing keys:

MahApps.CharacterCasing.Button
MahApps.CharacterCasing.Button.Square
MahApps.CharacterCasing.Button.Dialogs
MahApps.CharacterCasing.Button.Dialogs.Accent
MahApps.CharacterCasing.Button.Dialogs.AccentHighlight
MahApps.CharacterCasing.DataGridColumnHeader
MahApps.CharacterCasing.Expander
MahApps.CharacterCasing.Expander.VisualStudio
MahApps.CharacterCasing.GroupBox
MahApps.CharacterCasing.GroupBox.VisualStudio
MahApps.CharacterCasing.GridViewColumnHeader
MahApps.CharacterCasing.ColorEyeDropper
MahApps.CharacterCasing.ColorPalette
MahApps.CharacterCasing.HotKeyBox
MahApps.CharacterCasing.WindowCommands
MahApps.CharacterCasing.WindowCommands.Clean

Closed Issues

Closes #4126

What will be the typical use to disable the forced upper case (docs?)?
Issue #4126 was specifically to make it easier and NOT define settings for every possible control.

@FroggieFrog You can now override these casing in your App.xaml
<CharacterCasing x:Key="MahApps.CharacterCasing.Button">Normal</CharacterCasing>
<CharacterCasing x:Key="MahApps.CharacterCasing.Button.Square">Normal</CharacterCasing>
<CharacterCasing x:Key="MahApps.CharacterCasing.Button.Dialogs">Normal</CharacterCasing>
<CharacterCasing x:Key="MahApps.CharacterCasing.Button.Dialogs.Accent">Normal</CharacterCasing>
<CharacterCasing x:Key="MahApps.CharacterCasing.Button.Dialogs.AccentHighlight">Normal</CharacterCasing>
<CharacterCasing x:Key="MahApps.CharacterCasing.DataGridColumnHeader">Normal</CharacterCasing>
<CharacterCasing x:Key="MahApps.CharacterCasing.Expander">Normal</CharacterCasing>
<CharacterCasing x:Key="MahApps.CharacterCasing.Expander.VisualStudio">Normal</CharacterCasing>
<CharacterCasing x:Key="MahApps.CharacterCasing.GroupBox">Normal</CharacterCasing>
<CharacterCasing x:Key="MahApps.CharacterCasing.GroupBox.VisualStudio">Normal</CharacterCasing>
<CharacterCasing x:Key="MahApps.CharacterCasing.GridViewColumnHeader">Normal</CharacterCasing>
<CharacterCasing x:Key="MahApps.CharacterCasing.ColorEyeDropper">Normal</CharacterCasing>
<CharacterCasing x:Key="MahApps.CharacterCasing.ColorPalette">Normal</CharacterCasing>
<CharacterCasing x:Key="MahApps.CharacterCasing.HotKeyBox">Normal</CharacterCasing>
<CharacterCasing x:Key="MahApps.CharacterCasing.WindowCommands">Normal</CharacterCasing>
<CharacterCasing x:Key="MahApps.CharacterCasing.WindowCommands.Clean">Normal</CharacterCasing>

@FroggieFrog No need to override any style anymore.

It is an improvement (thanks for that), but has to be done several times.
Is it possible to provide a one-liner to the user?

@FroggieFrog  tbh I don't see a oneliner here. I think this is the way WPF and XAML works. But I know that you sometimes have good ideas, so if you see a oneliner feel free to share with us.
P.S.: Maybe one can do a three-liner if one iterates over all Resources in code behind and change it for each CharacterCasing-Key. I didn't test it yet.
Happy coding
Tim


Bundle Rancher (Manager) w/ Elemental

Describe the solution you'd like:
RancherOS v2 supported bundling Rancher (Manager) into the ISO so that a device could be flashed, and already have a Rancher interface running that could be used to control the local cluster: https://rancher.github.io/os2/#use-cases
Is this something Elemental is considering as well?

While this is entirely possible from an architecture pov, it's not our current goal.
The initial target market for Elemental is edge, with a hosted Rancher Manager as the management cluster.

This is very easy to do on your own BTW, see this branch for a POC that I just did: https://github.com/Itxaka/elemental/tree/watson which creates an iso that auto installs the system, and on reboot installs k3s+rancher automatically.
Of course its not very configurable nor it has any config or anything, but running the iso under qemu makes you get a nice sle micro rancher node.

Is this now planned or still out of scope?
It would be nice to have e.g. an Elemental RKE2+Rancher ISO/Installer or an Elemental ISO where you can install RKE2+Rancher manually on bare metal systems.

It's not on the short-term backlog, I'm afraid.

See #911


feat: gcd and coprime sub

I'm not super sure about the naming.
I also considered if this was a good addition to std, but I think this is the better place for it.

What is the reason to introduce the lemmas that deal with subtraction and then switch the inputs to gcd?  I would have thought that there should be the simp lemma that removes the subtraction, but I am not sure about also swapping the arguments.

What is the reason to introduce the lemmas that deal with subtraction and then switch the inputs to gcd? I would have thought that there should be the simp lemma that removes the subtraction, but I am not sure about also swapping the arguments.

The reason I added both versions was to try to be in sync with what is done for the add lemmas above. Let's see:
1: gcd m (n + m) = gcd m n
2: gcd (m + n) n = gcd m n
3: gcd (m + n) m = gcd n m
4: gcd m (m + n) = gcd m n

exchanging m and n on the righthand side to always be gcd m n, we then have
1: gcd m (n + m)
2: gcd (m + n) n
3: gcd (n + m) n
4: gcd m (m + n)

by analogy we replace the + by the -
1: gcd m (n - m)
2: gcd (m - n) n
3: gcd (n - m) n
4: gcd m (m - n)

I suppose you are right, there are only 4 lemmas needed. That's what I did now...

Yes, my reasoning was: the argument that does not have add/sub stays what it is and does not swap places with the other.  The simp lemma just undoes one operation in one coordinate, but does not also swap coordinates.
Of course, e.g. in the Euclidean algorithm, you alternate subtracting and swapping, but I think that the simp lemma should not be trying to do that.

bors retry


Ctrl, Shift or Alt + Click on a channel

I confirm (by marking "x" in the [ ] below):

[x] This is not a troubleshooting question. Troubleshooting questions go here: http://www.mattermost.org/troubleshoot/.
[x] This doesn't reproduce on web browsers (such as in Chrome). If it does, issue reports go to the Mattermost Server repository.
[x] I have read contributing guidelines.

Summary
A child window is opened when I click on channel with holding on Crtl/Shift/Alt.

Steps to reproduce

Just hold on pushing one key of Ctrl, Shift and Alt.
Click on any channel

Expected behavior
I'm not sure what is the expected behavior... it seems not a designed.
In a case, my customer like this behavior to show many channels in a view.
And I like to use this when I open admin console
Observed behavior
Channel is opened as a new child window.
As a child of child is also possible.
Grandchild window is destroyed when its parent is destroyed.

The behavior is not by design, new windows should not appear. In this case, some functionality added by the desktop app would be lost (e.g. unread count, context menu, etc).

While I agree the current behaviour isn't correct, propose we take a moment to consider what would a webapp user expect to happen if they hold any of the three keys (CTRL, SHIFT or ALT) and click on a link (whether a URL in a message or a channel on left-hand sidebar).
Similarly, what would a desktop app user on Slack, Skype or HipChat expect?

After looking at the webapp experience and the experience in other desktop apps, it would make sense not to open a new window, I agree. I would just expect it to open the channel on the window itself.
There were cases (e.g. Slack) where holding down the CTRL key and clicking on a channel name opened a new browser tab for it, but I didn't find that obvious as it brings the user away from the desktop app.
By the way, I just tried this on the test build in #415, and holding down CTRL, SHIFT or ALT and clicking on a channel name does nothing. So I'm not sure if the issue has been resolved.

In a case, my customer like this behavior to show many channels in a view. And I like to use this when I open admin console

That's something we can consider looking at in the future, which is multiple views of the desktop app. But as @yuya-oc mentions this loses some functionality like unread indicators, so it's better not to do so for now.

Before we implement this --
I've heard many people would actually like to have multiple Mattermost windows open, so they can have several conversations simultaneously.
So I'm not sure if we should turn this into a "feature" where you can have multiple windows open. We'd of course need to design the user experience carefully so that it makes sense, and also fix issues where you lose functionality on the child pages.

Here's a uservoice request actually: https://mattermost.uservoice.com/forums/306457-general/suggestions/17521477-open-channels-and-direct-messages-in-different-win

I've moved this to Unscheduled milestone for now --> we're getting lots of feedback where people would like to have multiple Mattermost windows open.
So we'll want to revisit the design here and carefully evaluate what we want to do here

We've been getting an increasing interest towards a Windows docking/tiling system, where you can have multiple chats open within the same app window.
The idea is similar to a tiling window manager

I've looked into it a little more and found that there used to be a dockable framework based on Electron, but it had to be closed sourced due to copyright and licensing issues: https://discuss.atom.io/t/my-dockable-framework-based-on-electron/16459
There is a second tiling system for Electron, but it's an unfinished project: https://github.com/rhysd/Tilectron
Would be curious if anyone knew of an existing framework for Electron that allowed a tiling window manager?

I wondered something like Chrome's tab system. I feel Docking panel is appropriate when there is many kind of panels. But we have only one kind.
Anyway we would need a little complex management in code. :)

@yuya-oc Would this be feasible with the current framework, and if so, how much work would you estimate it would be?
We would probably only need to support four tiles at first, equal sized. We can get more fancy later.
PS: Of course, design work will also be needed, e.g. how do you switch between channels (or teams) in the panel view.

@jasonblais Does "this" mean docking tiles? or tab system?
For docking tiles:
Especially we need to change the way to layout webview. (I will do that as a prior work for #457)
Currently it assumes only one panel and is not applicable for four tiles.
For tab system:
Currently no because almost of codes assumes only one main window. I feel we need following works:

Expand the code base to consider multiple main windows.
Add drag&drop events to control tabs between windows.

Thanks @yuya-oc
I think a docking tile system would be a good start, similar to a windows tiling manager: https://en.wikipedia.org/wiki/Tiling_window_manager
It sounds like this could be feasible to look into after some of the prior work for #457

You can add tabs with multiple servers or teams to a single window which makes managing them much easier. This can be achieved (at least in Windows and OSX) by going to File>Settings>Add new server. Copy the team url to the new server and give it a descriptive name. Tada!

Thanks @arkayy for participating in the discussion! Much appreciated :)

@yuya-oc Server changes have been made to hide the URL on internal links. In particular, channels on the left-hand sidebar are now considered as buttons on the desktop app (you can try it out on pre-release.mattermost.com).
As a result, clicking CTRL/ALT/SHIFT and a channel on the sidebar no longer opens a new app window. Hence, closing this issue as resolved.
We can later open a new ticket for a Windows docking/tiling system, but this is beyond the scope of the original ticket.


Can I remove headers and footers when parsing a PDF?

They should be removed from the markdown already. If it's not the case, please re-open this issue with an example (PDF or JobID).


FilesystemAdapter exception message not expressive

Laravel Version: 5.4.x
PHP Version: 7.1
Database Driver & Version: -

Description:
Exceptions require a message and a path is not a message - it's a path. Any system that only shows the exception message without the exception class will confuse the people. I had to run debugging to find that the path/to/unknown/file is a exception message for a ContractFileNotFoundException.
https://github.com/laravel/framework/blob/5.5/src/Illuminate/Filesystem/FilesystemAdapter.php#L107
Proposal: sprintf('%s not found', $path)
Steps To Reproduce:
Storage::disk('any')->get('unknown/path');

This repo is for bug tracking. This isn't a bug so you can open a proposal in the laravel/internals repo


Support per-Cell FQDN.

Relevant Issue:https://github.com/personium/personium-core/issues/223

Released v1.4.11.


Consistent initial conditions

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
Attention: Patch coverage is 94.24460% with 8 lines in your changes missing coverage. Please review.

Project coverage is 85.07%. Comparing base (8f32886) to head (1e11f5e).
Report is 1 commits behind head on main.

Files
Patch %
Lines

...e/_dae/tests/test_consistent_initial_conditions.py
90.58%
8 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #24      +/-   ##
==========================================
+ Coverage   77.56%   85.07%   +7.51%
==========================================
  Files           9       10       +1
  Lines        1092     1193     +101
==========================================
+ Hits          847     1015     +168
+ Misses        245      178      -67

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


Updating example code for README

Updating README file fixing example code

Thanks! Hope you find this useful.


Support sub aggregation in filter rewrite optimization

Follow up task of #9310
Currently sub aggregation is not supported in filter rewrite optimization, only single date histogram is supported.
This makes the applicable scenarios very limited. It would be great we can find a way to support sub aggregation while applying the filter rewrite optimization.
I notice one possible path when applying the optimization to composite aggregation previously. There's a established pattern to defer the sub aggregation collection. The idea is to do the aggregation collection in 2 pass, in our case, 1st pass to get the docIdSet per bucket for each segment, 2nd pass to run the collection of the sub aggregation on these docs per bucket for each segment.
https://github.com/opensearch-project/OpenSearch/blob/246557c4b5ee71187f2dc98ebfa93409a187037e/server/src/main/java/org/opensearch/search/aggregations/bucket/composite/CompositeAggregator.java#L648-L673
Theoretically, the performance improvement still comes from using index structure instead of iteration to get the matching docs to collect at date histogram. Sub aggregation collection on these matching docs would at same speed. And there would be some memory cost of saving the matching docs per segment.

A follow up task of this task:
If the sub aggregation also supports filter rewrite optimization, can we combine the filters from these 2 levels of aggregation to get the result of them?

Picking up this issue.


61-example/gitlab asg part 1

Purpose
To address issue #61 first part
Work done

Updated the Makefile so all steps properly work
Automated several steps using jl
Clearly documented all steps
List remaining to-dos for this issue

Achieved Goal
Given the state of the example, it was necessary to make several changes to get it to work at all. The opportunity was used to improve documention and automate steps where possible making it clearer and easier to use.
@ketzacoatl

@borsboom made change to README as per your request

Rather than push over this PR, I have created a new PR based on this one - see #159 for that. The primary reason for a new PR was to extract the commits from the various branch merges and squash them down to something smaller in the history. The new branch is nearly identical with the old one save for:
diff --git a/tests/gitlab-asg/cert-config.json b/tests/gitlab-asg/cert-config.json
deleted file mode 100644
index f8a9902..0000000
--- a/tests/gitlab-asg/cert-config.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
-  "signing": {
-    "default": {
-      "expiry": "8760h",
-      "usages": [
-        "signing",
-        "key encipherment",
-        "server auth",
-        "client auth"
-      ]
-    }
-  }
-}


Scale mismatch between camera positions and exported pointcloud

I visualized the cameras and the exported pointcloud via open3d but I found there is a scale mismatch between them. The extent of camera positions (extracted from transforms.json) is much bigger than the pcd. All parameters were the default setting of nerfstudio. I am wondering if there is a scale factor that I missed or something else is wrong

I think this is because Nerfstudio normalizes the extent of the cameras to -1 to 1

I was wrong, and I also noticed that the exported pcd was slightly rotated.

Do you have camera optimization enabled?

Thanks for your hint! I added '--pipeline.datamanager.camera-optimizer.mode', 'off','nerfstudio-data','--orientation-method', 'none', '--center-method', 'none', '--auto-scale-poses', 'False' and the scaler and rotation are gone! However, I found the Nerf may not converge when I set '--auto-scale-poses' to False, even if the extent of the camera locations have been normalized into (-1,-1,-1) to (1,1,1)

@qiyang77 Use the exported pcd with exported camera pose rather than camera poses from tranform.json, doing so you will have both exported camera pose and pcd in nerfstudion coordinate frame and hence it should resolve your issue. While exporting camera pose you need to note that current implementation doesnt export optimized camera pose. for optimized camea pose check https://github.com/nerfstudio-project/nerfstudio/pull/1191#issuecomment-1766034335


[ 1.12 ] Refactoring Mechanical Power for Future Plans

To create the discussed plans for Mechanical Power the Block interfaces and any form of power information saved in BlockState likely need to go. This can simplify all of the mechanical power work to a capability attachment through a tileentity.
Most of these tileentities will just be to store the power level will not need to tick at all, most of it can
just be handled on neighbor update in the block.
A list of blocks that need refactored to use Capabilities:
Italic ones do not currently have a tile entity.

[x] BlockMechMachine
[x] BlockSaw
[x] BlockBellows
[x] BlockGearBox
* We might be able to replace this with "Advanced Gearboxes" entirely.
[x] BlockCrank
[x] BlockMillGenerator (Windmill and Waterwheel)
[x] BlockCreativeGenerator
[ ] BlockGearBoostedRail
[x] BlockPump

Additionally the interface IOverpowered should be used to dictate how a block is overpowered.

Is this change going to break old worlds?

Yes, it will break any mechanical power system.

They may be recoverable, I am unsure. Best case senario it just removes all the old blocks and you can put them back, worst case it corrupts the whole world :P

forge has a config option for deleting erroring blocks

I would like to just chime in here that you can, in fact, load worlds made in 1.3.4 using 2.0.2 without modifying the world save in any way, and without changing settings in Forge. Because the block IDs appear to be changed, Forge will in fact remove them for you, and simply ask for an /fml confirm on the server side in order to boot. The blocks will still have to be replaced, but this is great(ish) news for server admins who would like to upgrade but dread finding every player's creation. It simply nukes them automatically.

That's awesome, glad that it worked out!


(Proposal) Reduce amount of repositories for testing

Currently there are two repositories/projects you actually need for testing this project.

this repository
data within https://gitlab.com/firecow/gitlab-ci-local-includes for include testing

Generally this is a fine approach but it has some downsides?

if your change is also inflicting the 2 repo you have to merge requests, which need to be somehow in sync.
the refs might get deleted on the testing repository, which are needed for the test, and how do you know which one you should use.
the test-data-repository might be out of sync for a certain period of time, due to different branches with different changes in repo 1

Proposal
instead of an own project, we could fork this repository to GitLab with an automatic mirror. This way we can have test-data and project code within the same repository. Additionally test changing data from maintainers could use the same ref for the includes and load the test data out of the same branch, just from gitlab.
Downsides is, that the includes might add additional paths, as we do not want to have this includes on the root level.
Additional thoughts
This is just a proposal, which might improve the ability for externals to contribute. Additionally we could also provide a special test overwrite, where we load the file from the filesystem if there is no CI environment variable. This way we would also reduce the initial dependency to gitlab for local development.

I think mocking the curl/git archive requests would be an even better way to get around this issue. @aepfli

I'm renaming this issue and making it a Feature @aepfli

I do however think that mocking the curl/git archive requests would be a better way to get around them.

actually the best idea :D sometimes you cannot see the wood for the trees - lets see if i get some time during the austrian lockdown :)

@aepfli No rush :smile: The tests are working with a little local setup.

    const downloadIncludeProjectFile = jest.spyOn(ParserIncludes, "downloadIncludeProjectFile");
    when(downloadIncludeProjectFile)
        .calledWith(expect.any(String), expect.any(String), expect.any(String), expect.any(String), expect.any(GitData))
        .mockImplementation((cwd: string, project: string, ref: string, file: string, gitData: GitData) =>  {
            const remote = gitData.remote;
            const target = `.gitlab-ci-local/includes/${remote.host}/${project}/${ref}/`
            fs.ensureDirSync(target);
            const normalizedFile = file.replace(/^\/+/, "");
            return fs.copyFile(`${cwd}/../../includes/${project}/${normalizedFile}`, `${cwd}/${target}/${normalizedFile}`);
        });

looks like the correct mock for downloading the one source - if i mock the whole function - but i will dig deeper into mocking the utils spawn within the parser-includes :) - i just persist this here for now :)


fix: extend the required terraform version to < 1.7

/run pipeline

/run pipeline

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


Missing simpler examples/documentation

I'm trying to understand this library to see if it would be suitable for drawing into a softbuffer buffer. The problem is, I can only find full-featured SVG-drawing examples, when all I want to do is draw simple primitives for UI elements. Additionally, I can't find any helpful info in the documentation.

    // Construct squirrel scene stroke and fill
    let squirrel_scene = Scene::group(vec![
        Scene::fill(
            squirrel_path.clone(),
            Arc::new("#d65d0e".parse::<LinColor>()?),
            FillRule::default(),
        ),
        Scene::stroke(
            squirrel_path,
            Arc::new("#af3a03".parse::<LinColor>()?),
            StrokeStyle {
                width: 0.3,
                line_join: LineJoin::default(),
                line_cap: LineCap::Round,
            },
        ),
    ])
    // fit it into 200x200 box with 10 pixel margin
    .transform(Transform::fit_bbox(
        squirrel_bbox,
        BBox::new((10.0, 10.0), (190.0, 190.0)),
        Align::Mid,
    ));

    // Construct frame around squirrel
    let frame_scene = Scene::stroke(
        Path::builder()
            .move_to((5.0, 5.0))
            .rbox((190.0, 190.0), (15.0, 15.0))
            .build()
            .into(),
        Arc::new("#98971a".parse::<LinColor>()?),
        StrokeStyle {
            width: 2.0,
            line_join: LineJoin::default(),
            line_cap: LineCap::Round,
        },
    );

    // Construct full scene
    let scene =
        Scene::group(vec![frame_scene, squirrel_scene]).transform(Transform::new_scale(2.0, 2.0));

    // Render image
    let image = scene.render(
        &ActiveEdgeRasterizer::default(),
        Transform::identity(),
        Some(BBox::new((0.0, 0.0), (400.0, 400.0))),
        Some("#fbf1c7".parse()?),
    );

    // Write file
    //
    // Image pixels can also be iterated with
    // `for pixel in image.iter().map(Color::to_rgb) { ... }`
    let mut output = BufWriter::new(File::create("squirrel.bmp")?);
    image.write_bmp(&mut output)?;

    Ok(())
}

And here is the result:

I will add this to examples. Please let me know if you have any more questions.

What is a "scene"? Is it a filled shape / area?

Path is what can be filled (squirrel path is filled with orange color) or stroked (and also stroked with dark orange color) and represents shape. The easiest way to construct it is to use Path::builder() ... .build() or parse from an existing SVG Path with "...".parse::<Path>(). You can think of a scene as something that represents an image but it has not been rendered yet. You can group different scenes with Scene::group it can also be transformed (scaled, translated, rotated etc) with Scene::transform, it also supports clipping with Scene::clip (restrict a scene as if it can only be drawn inside a particular path). You can also fill/stroke shape with a radial/linear gradient. In general the model of this crate is similar to the SVG model.

You can think of a scene as something that represents an image but it has not been rendered yet.

So a scene is like a command buffer?

Sort of but I would describe it as a tree of shapes with additional details required for rendering, that can be converted to something like command buffer, it is traversed in the depth first when rendered.

One thing to note Path can represent more than one shape that all rendered at once. For example data/material-big.path represents thousands of shapes that are represented as single path.

OK, thank you! :)


FancyZones: I cannot choose a different fancy zone. #11521

Microsoft PowerToys version
0.37.2
Running as admin

[X] Yes

Area(s) with issue?
FancyZones, FancyZones Editor
Steps to reproduce

✔ Expected Behavior
Fancy Zones should allow me to apply a different pattern.
❌ Actual Behavior
I choose a different pattern but it is always applied a 3 separated columns.
A pop up is shown when I click on "Launch layout editor" ->Match not found (0,0,3840,2160)
Please help me to solve this...I really enjoy this program because it really increases my productivity.
Congratulations for such an excellent tool you have created! God bless all the team!
Other Software
No response

I'm experiencing the same issue as of version 0.37.2, but I don't get the Match not found popup.
It's impossible to change the layout from the default pattern.

@ SeraphimaZ assuming #11717 handles this?

I'm experiencing the same issue as of version 0.37.2, but I don't get the Match not found popup.
It's impossible to change the layout from the default pattern.

Exactly, better described impossible: "It's impossible to change the layout from the default pattern."

@vintersommar / @juliansniff  can you do a "Report Bug" and include the logs via

@vintersommar / @juliansniff can you do a "Report Bug" and include the logs via

Hi Julian :) I do not understand what you want...

Right click on the system tray icon for PowerToys, do a "report bug" and drag the zip file it generates here on github.

Hi Crutkas :) I had done that before. That is why the subject of this report has two numbers #11521 and  #11730--> "FancyZones: I cannot choose a different fancy zone. #11521 #11730. Apparently, nobody solves the problem, only it is going around hehe."

Ok, i'm duping this then against #11521 and i believe #11717 will correct this.


Getting text tracks immediately after selecting text tracks returns the wrong active track

Call player.selectTextTrack(id) where id is not the currently active track
Immediately call player.getTextTracks()

The result is that in the returned array the track that is set to active=true is the original text track and not the track you tried to set to. NOTE: the text tracks are displaying and switching fine. But it looks like because the text_stream switching function is promise based, it's not guaranteed that right after you select a track it will show as active when you retrieve the array of tracks. This is fine but it doesn't look to me like there is any check you can do to determine that the text_stream.switch() has resolved (no promise is returned and no adaptation event is fired) so you can't be sure when you call getTextTracks it will be accurate.

There are definitely some improvements that we can make here. Perhaps one way of going about it is

As audio and video tracks become active before an AdaptationEvent is fired, we could instead make audio and video tracks active immediately before firing an AdaptationEvent (or some type of TrackSwitchedEvent).
We could fire some type of TrackSwitchedEvent immediately before a new text track becomes active.

I think this would make things consistent (i.e., Adaptation/TrackSwitched events would only be fired once that track begins presenting) and also enable applications to detect when a new text track begins presenting. I'm open to other options though; any concerns with this approach?

I actually tested this scenario a while back, we had a good reason why we thought the behavior was expected (sorry I cannot remember it now) and that is why delay was added to these tests.
With that having said, I like your suggestion. If you implement that, please add/update integration test for the scenario.

I'm not quite clear on (1).
(2) sounds good. I'm not convinced there is reason to add another event unless there is a specific reason why you don't want to fire adaptation events when text tracks switch. So the simplest might be to just fire adaptation events on text track switching as well as audio and video. But maybe I'm missing something here.

With regards to (1), audio and video tracks are considered active once their metadata is fetched, and although this is asynchronous, it's nearly instantaneous since the metadata will have already been fetched from StreamVideoSource. However, an AdaptationEvent is not fired until Stream.onUpdate_() is called, which may occur a little after the track becomes active. So, I think we can make this more consistent by syncing up track activation and AdaptationEvent firing.
With regards to (2), I was thinking that AdaptationEvent is becoming a bit of a misnomer, since switching audio languages or subtitle tracks isn't necessarily adapting to a different bit-rate. However, on second thought, it's probably best that we don't change the event name/type yet. We can just fire an AdaptationEvent from TextStream as you suggested.

O, ic. Yes it is becoming a misnomer. I'm still of the mind though that only one event is needed. Perhaps it could be called something like TrackUpdateEvent. And its fired when any changes happen to any of the tracks for whatever reason. Perhaps that's too blunt, I'm not sure, and more fined grained control could be required.

Hi @tdrews, I'm just wondering if you are planning to move forward with the suggestions mentioned above? If so, is it possible to assign and set a milestone, assuming you have one in mind? (We have an outstanding issue on our side that I'm attempting to organize.)
Also, is there any suggested workaround in the meantime? Thanks.

We'll do this for v1.5.0.

Note: we are considering track activation timing consistency as a separate issue but have not decided yet how we want to address it.

Okay, thanks for the heads up. For now I am going to recommend avoiding calling getTextTracks() immediately after selecting a new track and instead, syncing on adaptation events.


Replicate privateUsers -> private_users table

Self-explanatory. Uses RLS for reads. I plan to get reads migrated over and then probably instead of using RLS for writes, I will make API endpoints for writing to private_users from the client.

Yay! First PR in a long while.


Live Preview Suddenly Stopped Working

It was working fine and suddenly I started getting the attached "Connecting to Browser" errors and Chrome launches 'file:///C:/Program%20Files%20(x86)/Brackets/www/LiveDevelopment/launch.html' that hangs at "Waiting".
I have uninstalled and reinstalled Brackets and every folder related to it.
I have rebooted my PC several times.
The live preview base URL is http://localhost/Getting%Started/.
I am running Brackets Release 1.4 build 1.4.0-16380 (release 273804eb3).
I am running Chrome Version 44.0.2403.157 m.
I have read the Troubleshooting page and, frankly, it doesn't help me much. The instructions are, at best, ambiguous.
Please help!

@ysbordain

I have read the Troubleshooting page and, frankly, it doesn't help me much. The instructions are, at best, ambiguous.

Thank you for finding and going through the Troubleshooting page. Many people don't even make it that far before asking for help.
Live Preview is a complex feature and many contributors (including myself) have put a lot of time trying to put all of our knowledge in the Troubleshooting page, so please don't dismiss it so quickly. Please list any particular items in the Troubleshooting page that you don't understand and we'll try to help you (and improve the doc).
Also, search through Brackets Closed Issues for many discussions on the same topic.
Note that you'll may get more responses in brackets-dev forum.

Thank you for your fast response.
Would you like me to list the links that I have gone to and what I did?

Hi.
Perhaps these errors in "Show Developer Tools" will help?
Error watching project root:  C:/Program Files (x86)/Brackets/samples/root/Getting Started/ Max connection attempts reached/project/ProjectManager.js:751 (anonymous function)
/./ims/IMSProxy.js:30 Max connection attempts reached/./ims/IMSProxy.js:30 (anonymous function)
/utils/NodeConnection.js:89 WebSocket connection to 'ws://localhost:64488/' failed: Error in connection establishment: net::ERR_CONNECTION_TIMED_OUT
http://<IP_ADDRESS>:9222/json Failed to load resource: net::ERR_CONNECTION_TIMED_OUT
/utils/NodeConnection.js:89 WebSocket connection to 'ws://localhost:64488/' failed: Error in connection establishment: net::ERR_CONNECTION_TIMED_OUT
http://<IP_ADDRESS>:9222/json Failed to load resource: net::ERR_CONNECTION_TIMED_OUT
/utils/NodeConnection.js:89 WebSocket connection to 'ws://localhost:64488/' failed: Error in connection establishment: net::ERR_CONNECTION_TIMED_OUT
http://<IP_ADDRESS>:9222/json Failed to load resource: net::ERR_CONNECTION_TIMED_OUT
2/utils/NodeConnection.js:89 WebSocket connection to 'ws://localhost:64488/' failed: Error in connection establishment: net::ERR_CONNECTION_TIMED_OUT
http://<IP_ADDRESS>:9222/json Failed to load resource: net::ERR_CONNECTION_TIMED_OUT
/utils/NodeConnection.js:89 WebSocket connection to 'ws://localhost:64488/' failed: Error in connection establishment: net::ERR_CONNECTION_TIMED_OUT
http://<IP_ADDRESS>:9222/json Failed to load resource: net::ERR_CONNECTION_TIMED_OUT
/utils/NodeConnection.js:89 WebSocket connection to 'ws://localhost:64488/' failed: Error in connection establishment: net::ERR_CONNECTION_TIMED_OUT
73/utils/NodeConnection.js:89 WebSocket connection to 'ws://localhost:64488/' failed: WebSocket opening handshake timed out
/LiveDevelopment/LiveDevelopment.js:1180 Uncaught TypeError: Cannot read property 'reject' of null
http://<IP_ADDRESS>:9222/json Failed to load resource: net::ERR_CONNECTION_TIMED_OUT
3http://<IP_ADDRESS>:9222/json Failed to load resource: net::ERR_CONNECTION_REFUSED
http://<IP_ADDRESS>:9222/json Failed to load resource: net::ERR_CONNECTION_TIMED_OUT
/LiveDevelopment/LiveDevelopment.js:1180 Uncaught TypeError: Cannot read property 'reject' of null
5http://<IP_ADDRESS>:9222/json Failed to load resource: net::ERR_CONNECTION_TIMED_OUT
/LiveDevelopment/LiveDevelopment.js:1180 Uncaught TypeError: Cannot read property 'reject' of null
5http://<IP_ADDRESS>:9222/json Failed to load resource: net::ERR_CONNECTION_TIMED_OUT
/LiveDevelopment/LiveDevelopment.js:1180 Uncaught TypeError: Cannot read property 'reject' of null
5http://<IP_ADDRESS>:9222/json Failed to load resource: net::ERR_CONNECTION_TIMED_OUT
/LiveDevelopment/LiveDevelopment.js:1373 Uncaught TypeError: Cannot read property 'promise' of null
/project/ProjectModel.js:500 Unhandled exception in getAllFiles handler: TypeError: Cannot read property 'done' of null TypeError: Cannot read property 'done' of null
at _doLaunchAfterServerReady (/LiveDevelopment/LiveDevelopment.js:1248:22)
at Object.eval (/LiveDevelopment/LiveDevelopment.js:1366:21)
at j (file:///C:/Program%20Files%20(x86)/Brackets/www/thirdparty/thirdparty.min.js:559:26911)
at Object.k.add [as done] (file:///C:/Program%20Files%20(x86)/Brackets/www/thirdparty/thirdparty.min.js:559:27220)
at Object.eval (/LiveDevelopment/LiveDevelopment.js:1365:18)
at j (file:///C:/Program%20Files%20(x86)/Brackets/www/thirdparty/thirdparty.min.js:559:26911)
at Object.k.fireWith [as resolveWith] (file:///C:/Program%20Files%20(x86)/Brackets/www/thirdparty/thirdparty.min.js:559:27724)
at Object.e.(anonymous function) (file:///C:/Program%20Files%20(x86)/Brackets/www/thirdparty/thirdparty.min.js:559:28704)
at Object. (file:///C:/Program%20Files%20(x86)/Brackets/www/thirdparty/thirdparty.min.js:559:28280)
at j (file:///C:/Program%20Files%20(x86)/Brackets/www/thirdparty/thirdparty.min.js:559:26911)
2http://<IP_ADDRESS>:9222/json Failed to load resource: net::ERR_CONNECTION_TIMED_OUT
/LiveDevelopment/Inspector/Inspector.js:264 GET http://<IP_ADDRESS>:9222/json net::ERR_CONNECTION_TIMED_OUT
/LiveDevelopment/Inspector/Inspector.js:264 GET http://<IP_ADDRESS>:9222/json net::ERR_CONNECTION_TIMED_OUT

Would you like me to list the links that I have gone to and what I did?

Start with the item that you thought were "ambiguous".

Error watching project root: C:/Program Files (x86)/Brackets/samples/root/Getting Started ...

I'm not sure why you can't watch the root of the Getting Started project. Maybe because you are not an admin? Use File > Open Folder... to select the root folder of one of your own projects and see if Live Preview works there. If you don't have a project handy, try copying the Getting Started folder to somewhere that you have access.

List of what I have tried:

Uncheck the "Continue running background apps when Google Chrome is closed" setting

From https://groups.google.com/forum/#!topic/brackets-dev/fcKT12m1xLU

Go to command prompt. Run chrome with this command
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe --args --enable-remote-debugger --remote-debugging-port=9222"

From https://github.com/adobe/brackets/issues/9188

If you specified a "Base URL," make sure your local server is already running - Brackets will not start it for you.

From https://github.com/adobe/brackets/issues/9990
In my case, I am not using a local server (at least I don't think so―how do I verify?). The base server is blank.

Created a new .html file in the directory C:\Users\ycbordai\js\Bootstrap. Got the following errors:
Failed to load resource: net::ERR_CONNECTION_TIMED_OUT
/filesystem/FileSystem.js:896 Failed to watch root:  C:/Program Files (x86)/Brackets/samples/root/Getting Started/ Max connection attempts reached
/project/ProjectManager.js:751 Error watching project root:  C:/Program Files (x86)/Brackets/samples/root/Getting Started/ Max connection attempts reached/project/ProjectManager.js:751 (anonymous function)
/./ims/IMSProxy.js:30 Max connection attempts reached
/utils/NodeConnection.js:89 WebSocket connection to 'ws://localhost:50204/' failed: Error in connection establishment: net::ERR_CONNECTION_TIMED_OUT
http://<IP_ADDRESS>:9222/json Failed to load resource: net::ERR_CONNECTION_TIMED_OUT
/utils/NodeConnection.js:89 WebSocket connection to 'ws://localhost:50204/' failed: Error in connection establishment: net::ERR_CONNECTION_TIMED_OUT
http://<IP_ADDRESS>:9222/json Failed to load resource: net::ERR_CONNECTION_TIMED_OUT
5/utils/NodeConnection.js:89 WebSocket connection to 'ws://localhost:50204/' failed: Error in connection establishment: net::ERR_CONNECTION_TIMED_OUT
73/utils/NodeConnection.js:89 WebSocket connection to 'ws://localhost:50204/' failed: WebSocket opening handshake timed out
/LiveDevelopment/LiveDevelopment.js:1180 Uncaught TypeError: Cannot read property 'reject' of null
5http://<IP_ADDRESS>:9222/json Failed to load resource: net::ERR_CONNECTION_TIMED_OUT
/LiveDevelopment/LiveDevelopment.js:1180 Uncaught TypeError: Cannot read property 'reject' of null

Regarding Ambiguity―please keep in mind that I am a newbie. If this troubleshooting doc is written for experienced developers, then there is probably no problem at all.

Files should be in Current Project
You can use File > Open to open any file on your computer, but Brackets' definition of a project are the files in the folder opened using File > Open Folder.... Some (but not all) Live Development features require a node server, which means being in the current project, so make sure the files that you want to use with Live Development are in the current project.

From https://github.com/adobe/brackets/wiki/Troubleshooting#live-edit
I get it. Make a folder, save all files in that folder. Ensure that when I open folder, it is pointed to that folder. But node server??? What does this have to do with keeping the files in the same folder and making sure that Open Folder points to the working folder? Can you give an example or send a hyperlink that gives me a quick understanding of what this means in case my error is due to this 'node server'?

HTML File should be in Working Set
There is a known issue (which is fixed in release 0.43) that if HTML file is in project tree (i.e. not in Working Set), then element highlighting stops working after switching to a CSS (or other?) file and then back to the HTML file. The workaround is to double-click HTML file so it's added to the Working Set.

From https://github.com/adobe/brackets/wiki/Troubleshooting#live-edit
Project tree vs working set…??? I can understand the project tree (I think). Working set?

Updating CSS in Live Preview does not seem to work if  has type="text/css", so try removing it.
Known issues:
•	Bug #7935: Live CSS does not update if page contains an iframe (including injected iframes such as ads or social media buttons).

From https://github.com/adobe/brackets/wiki/Troubleshooting#live-edit
What link? How do I find the link in order to make sure that type does not equal "text/css"?
4.	Live Preview Page not loading
•	If you specified a "Base URL," make sure your local server is already running - Brackets will not start it for you.
How do I specify a "base URL"? How do I find this information?
•	Make sure you are not running firewall, network security, or antivirus software that is blocking the connection (try disabling it temporarily to check)
•	Make sure you haven't modified your hosts file to remap localhost or <IP_ADDRESS>
Ummm, thanks for the Wikipedia page and no pointer to what info is important there… I guess.  Where do I modify the host file?
•	Try shutting down background apps in Chrome. In Chrome, go to Settings > Advanced Settings and then uncheck the "Continue running background apps when Google Chrome is closed" setting.
This was helpful. Why? There were clear directions, unlike the rest of the instructions above.
From https://github.com/adobe/brackets/wiki/Troubleshooting#-live-preview-page-not-loading

Live Preview Chrome Issues
Stable Chrome
Brackets is verified with the current stable Chrome. If chrome is not configured to automatically update to the latest version, then be sure to check for updates. It usually works with current beta, dev, or canary versions of Chrome, but if you are having a problem switch back to stable Chrome before opening an issue.

From https://github.com/adobe/brackets/wiki/Troubleshooting#-live-preview-page-not-loading
I spent 25 minutes trying to figure out whether my version of Chrome was beta, dev, or stable (canary). How to switch to another version? I still have no idea.

In my case, I am not using a local server (at least I don't think so―how do I verify?). The base server is blank.

Correct. Set base server to blank to use internal node server.

Regarding Ambiguity―please keep in mind that I am a newbie. If this troubleshooting doc is written for experienced developers, then there is probably no problem at all.

Goal is for doc to be helpful to everyone.

I get it. Make a folder, save all files in that folder. Ensure that when I open folder, it is pointed to that folder. But node server??? What does this have to do with keeping the files in the same folder and making sure that Open Folder points to the working folder? Can you give an example or send a hyperlink that gives me a quick understanding of what this means in case my error is due to this 'node server'?

Builtin (internal) server uses node. It can only access files under project root. Using File > Open Folder... sets the project root.

Project tree vs working set…??? I can understand the project tree (I think). Working set?

Project tree is displayed on left. Working set is list of files at top of left column. This list of files is analogous to tabs you see across the top of some editors.
Note that you can use File > Open... or drag/drop to open a file in Brackets that is outside of current project. This is handy for viewing files outside of your project, but these files do not work in Live Preview.

What link? How do I find the link in order to make sure that type does not equal "text/css"?

This is referring to type attribute of <link> tag in your HTML.

How do I specify a "base URL"? How do I find this information?

File > Project Settings... This is same as "base server" you referred to above.

Ummm, thanks for the Wikipedia page and no pointer to what info is important there… I guess. Where do I modify the host file?

Look at "Location in the file system" section to find location on your OS.

This was helpful. Why? There were clear directions, unlike the rest of the instructions above.

A background app caused a bug in the past. We're not sure of the exact cause, so this is simply suggested as something to "try".

I spent 25 minutes trying to figure out whether my version of Chrome was beta, dev, or stable (canary). How to switch to another version? I still have no idea.

I agree that Google does not make this clear or easy to switch. The only reliable way I have found to do it is to remove all Chrome apps from your system. If you are using Mac, then also Empty Trash because file associations are not removed when something is moved to Trash. Then re-install Chrome stable.

Still not working but their also seems to be no help provided.
I switched to a different PC and set a restore point before downloading Bootstrap in case this problem occurs. It works fine on a different PC.


Sensor theThingsNetwork storage integration only returns the oldest value and not the newest

@fabaff. I have noticed that the integration against TTN storage (https://home-assistant.io/components/sensor.thethingsnetwork/) only returns the oldest data from the TTN storage and not the newest. I suppose that this is due to how the data is returned in line 158 in "home-assistant/homeassistant/components/sensor/thethingsnetwork.py".
This line says:
"self.data = data[0]"
Maybe this can be changed so it returns the newest data instead of the oldest data by changing this row to:
"self.data = data[len(data) - 1]"
Also, everytime the TTN storage gets queried, it is queried for all data and all data is returned. This is in my case a lot of info when the actual py script the only returns one entry. Maybe it would be possible to add a part to the TTN YAML configuration where we can specify for how long back we want to return dat?
Lets say that i know that im only am interested in the last 300 seconds, then we can have a config in the YAML file that is used when polling TTN storage since TTN API has support for it. Currently i think that it polls the data for the last 7 days.

I also noticed that the homepage icon display value sticks to the initial value.
However when you start recording the data and graph it you see the values change.
Then also the homepage icon shows the latest value!

Please re-open. The issue still exists.


TaylorDiff derivative() does not support GPU types

Hello everyone! I hope this is not a simple mistake on my part, but it appears as though TaylorDiff doesn't like GPU types. I haven't worked with cuarrays for a year or two, but it looks like CuArray types now have some additional information attached to them that doesn't make them look like a vanilla array. Please see the below MWE.
using Flux
using TaylorDiff

# works
testinput = rand(3)
derivative_direction = [1e0,0e0,0e0]
model = Dense(3=>1,sin)
model(testinput) # works
derivative(modelinput -> model(modelinput)[1], testinput, derivative_direction, 2) # works

# doesn't work
testinput_gpu = gpu(rand(3))
derivative_direction_gpu = gpu([1e0,0e0,0e0])
model_gpu = Dense(3=>1,sin)
model_gpu = gpu(model)
model_gpu(testinput_gpu) # works, output is still on the gpu
derivative(modelinput -> model(modelinput)[1], testinput_gpu, derivative_direction_gpu, 2) # breaks here

and the resulting error is
ERROR: MethodError: no method matching derivative(::var"#27#28", ::CUDA.CuArray{Float32, 1, CUDA.Mem.DeviceBuffer}, ::CUDA.CuArray{Float32, 1, CUDA.Mem.DeviceBuffer}, ::Int64)
Closest candidates are:
  derivative(::Any, ::Vector{T}, ::Vector{T}, ::Int64) where T<:Number at C:\Users\bachs\.julia\packages\TaylorDiff\zNnz2\src\derivative.jl:21
  derivative(::Any, ::T, ::Int64) where T<:Number at C:\Users\bachs\.julia\packages\TaylorDiff\zNnz2\src\derivative.jl:17
  derivative(::Any, ::T, ::Val{N}) where {T<:Number, N} at C:\Users\bachs\.julia\packages\TaylorDiff\zNnz2\src\derivative.jl:26
  ...

I think that the type of the CuArray is causing the issue since it has multiple fields.
typeof(testinput_gpu) # CUDA.CuArray{Float32, 1, CUDA.Mem.DeviceBuffer}

If anyone could help, I would greatly appreciate it! I'm very busy but I am willing to contribute to help fix this issue.
Thanks in advance!

Yes this is obviously closed. I came across this old post, sorry for not responding.


feat: view code

closes #5

Hey @MendyLanda - Thanks for your contribution! We are currently developing this functionality for our new website, and we adopted a slightly different UX approach. I will keep this pull request open for now to monitor the progress. Thanks anyway for thinking about this!

@pasqualevitiello  Would it be possible to merge this PR while the new website is in development? Being able to preview what we're copying is really helpful for our workflow.
Regardless, thank you for building and maintaining this project - it fills a significant gap in the shadcn ecosystem!


Better management of operator configuration changes

Describe the feature request
Some of our configurations have been moved around while we don't offer any error to operators who is deploying IOP into Istio.  This has caused some issues for some users because the IOP isn't functioning properly as it appears to function.
One example is our team was using the following config to set outbound traffic policy defaults:
    global:
      outboundTrafficPolicy:
        mode: "ALLOW_ANY"

And it has been working fine in 1.5 + 1.6, e.g. https://github.com/istio/istio/blob/release-1.6/manifests/charts/global.yaml#L421
However, this field is no longer in global.yaml in 1.7 code base.  We learned this via a very hard way that this is moved and hard to update the config to:
  meshConfig:
    outboundTrafficPolicy: "ALLOW_ANY"

Trying to think how we can provide a better experience to our users (mainly operators role here):

Note these types of configuration moves in update notice or release note.
when a field is no longer supported, operator currently ignores the old configure we had (under global.outboundTrafficPolicy).  It would be so much better if we warn or even fail the IOP (for new apply) so users would know right away.

[ ] Docs
[x ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Extensions and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Additional context

cc @kramvan1 @rvennam @sdake @ostromart @costinm @howardjohn

I am a bit confused. Not only does it work, we do have a deprecation notice - on both 1.6 and 1.7:
$ ~/istio/istio-1.7.0/bin/istioctl manifest generate --set values.global.outboundTrafficPolicy.mode=REGISTRY_ONLY | rg REGI
! values.global.outboundTrafficPolicy is deprecated; use meshConfig.outboundTrafficPolicy instead
                    - REGISTRY_ONLY
                    - REGISTRY_ONLY
          "mode": "REGISTRY_ONLY"
$ ~/istio/istio-1.6.8/bin/istioctl manifest generate --set values.global.outboundTrafficPolicy.mode=REGISTRY_ONLY | rg REGI
! global.outboundTrafficPolicy is deprecated; use meshConfig.outboundTrafficPolicy instead
                  - REGISTRY_ONLY
      mode: REGISTRY_ONLY
          "mode": "REGISTRY_ONLY"

And in master, it fails fast as requested:
$ istioctl manifest generate --set values.global.outboundTrafficPolicy.mode=REGISTRY_ONLY -d manifests
Run the command with the --force flag if you want to ignore the validation error and proceed.
Error: unknown field "outboundTrafficPolicy" in v1alpha1.GlobalConfig

Perhaps its a difference in istioctl vs in cluster operator?

@howard yes we are using the controller operator with an IOP resource.    I don't recall seeing deprecation messages in the operator logs, it just seems to ignore it and no errors.
I wonder if the istioctl manifest install --dry-run -f iop.yaml  would show this error?
When I get a chance, I will try that.

Even with the lack of messages though, it should still be in 1.7 as far as I can tell from above? Are you running master?

This was for 1.7.0+ releases, and the global side of this stopped working/had no effect.  Only the new meshConfig field would take effect.

With istioctl 1.7.2:
! values.global.outboundTrafficPolicy is deprecated; use meshConfig.outboundTrafficPolicy instead
                    - REGISTRY_ONLY
                    - REGISTRY_ONLY
sdake@scale-cp:~$ ./istioctl manifest generate --set values.global.outboundTrafficPolicy.mode=ALLOW_ANY | grep ALLOW
! values.global.outboundTrafficPolicy is deprecated; use meshConfig.outboundTrafficPolicy instead
                - ALLOW
                    - ALLOW_ANY
                    - ALLOW_ANY
          "mode": "ALLOW_ANY"

THe bug report lists "allow_any" in lowercase. Perhaps that is the issue as allow_any is not an enum in the operator.

This didn't work in 1.7.0:
  meshConfig:
    accessLogFile: /dev/stdout
    enablePrometheusMerge: true
    protocolDetectionTimeout: 0s
  profile: default
  values:
    global:
      logging:
        level: default:info
      outboundTrafficPolicy:
        mode: REGISTRY_ONLY

Ah ok - my grep was wrong. So 1.7 it gives a soft deprecation warning and does nothing. In master it fails hard. In 1.6 it works and has a deprecation warning.
Desired behavior here is in 1.7 it fails hard

Yes, just tried with istioctl 1.7.0 with a simple yaml from https://github.com/istio/istio/issues/27494#issuecomment-698032348... it did give a soft warning which is very easy to be ignored... I think the warning is wrong, should be the warning for 1.6... 1.7 is not deprecated, it is removed so should fail hard.
$ istioctl manifest generate -f test-iop.yaml
! values.global.outboundTrafficPolicy is deprecated; use meshConfig.outboundTrafficPolicy instead
kind: CustomResourceDefinition
apiVersion: apiextensions.k8s.io/v1

Probably worthwhile to see what other config options are like this and cherry pick some fail-hard fixes from master to 1.7 for options we no longer support.

With istioctl 1.7.2:
sdake@scale-cp:~$ ./istioctl manifest generate --set values.global.outboundTrafficPolicy.mode=allow_any | grep allow
Run the command with the --force flag if you want to ignore the validation error and proceed.
Error: unknown value "allow_any" for enum v1alpha1.OutboundTrafficPolicyConfig_Mode

sdake@scale-cp:~$ ./istioctl manifest generate --set values.global.outboundTrafficPolicy.mode=ALLOW_ANY | grep ALLOW
! values.global.outboundTrafficPolicy is deprecated; use meshConfig.outboundTrafficPolicy instead
                - ALLOW
                    - ALLOW_ANY
                    - ALLOW_ANY
          "mode": "ALLOW_ANY"

THe bug report lists "allow_any" in lowercase. Perhaps that is the issue as allow_any is not an enum in the operator.

Sorry that was just a typo.  Use REGISTRY_ONLY can see the prob fast.

cc @houshengbo

Tried with in-cluster operator, same behavior with istioctl:

for 1.7, it doesn't block the installation with global.outboundTrafficPolicy.mode. REGISTRY_ONLY in iop, the difference is that no warning message in operator logs.
for 1.8, it will show error message unknown field "outboundTrafficPolicy" in v1alpha1.GlobalConfig and will not install istio.

The root cause is that we removed outboundTrafficPolicy from values proto(https://github.com/istio/istio/blob/master/operator/pkg/apis/istio/v1alpha1/values_types.proto) after 1.7.x. So the unmarshal will failed with unknown field.
If we really the same behavior in 1.7.x, we should remove the field outboundTrafficPolicy from values proto(https://github.com/istio/istio/blob/release-1.7/operator/pkg/apis/istio/v1alpha1/values_types.proto).

Thank you @morvencao for digging into this!   I think fail is the right behavior for outboundTrafficPolicy defined in values in 1.7 because it won't work anyway.
Do you mind submitting the PRs?  If not, I'll get to it when I have time.

@linsun Raised PR to remove outboundTrafficPolicy field from global values proto: https://github.com/istio/istio/pull/27572


Validate ai configuration while update

Validate ai configuration while update, fixes #1080

Codecov Report

Merging #1081 into develop will increase coverage by 0.02%.
The diff coverage is 40.00%.

@@              Coverage Diff              @@
##             develop    #1081      +/-   ##
=============================================
+ Coverage      36.10%   36.12%   +0.02%
- Complexity       541      542       +1
=============================================
  Files            103      103
  Lines           4479     4482       +3
  Branches         694      694
=============================================
+ Hits            1617     1619       +2
- Misses          2716     2717       +1
  Partials         146      146

Impacted Files
Coverage Δ
Complexity Δ

...com/microsoft/azure/maven/function/DeployMojo.java
37.25% <40.00%> (+0.58%)
20.00 <2.00> (+1.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 6f3148d...21e53bd. Read the comment docs.


[Feature]: skipna parameter for averager

Is your feature request related to a problem?
skipna=None parameter is being used in xarray's mean function to allow user to decide whether skip NaN values in averaging (thus average will be calculated using non-NaN values) or just return NaN for average when there are any NaN values used.
https://docs.xarray.dev/en/stable/generated/xarray.DataArray.mean.html
Describe the solution you'd like
Convey skipna key to here:
https://github.com/xCDAT/xcdat/blob/623814821a748bd2e2acc52971b359550c31913b/xcdat/spatial.py#L737
Similar to temporal average functions when .mean being used.
Describe alternatives you've considered
No response
Additional context
It would be even more helpful if users could set some criteria. For example, letting the user decide the fraction of NaN values.
Let's say, I have 10 values, which include 2 NaNs. I want to get an average with skipna=True. But when having 3 NaN values, I want to average to be NaN.
This is going to help the obs4MIPs process when handling with time-varying NaN values due to missed observation points.

Thanks for this feature suggestion Jiwoo. I agree, we should have a skipna flag to replicate what Xarray offers.

Additional context
It would be even more helpful if users could set some criteria. For example, letting the user decide the fraction of NaN values.
Let's say, I have 10 values, which include 2 NaNs. I want to get an average with skipna=True. But when having 3 NaN values, I want to average to be NaN.
This is going to help the obs4MIPs process when handling with time-varying NaN values due to missed observation points.

This sounds similar to the weight_threshold feature mentioned here https://github.com/xCDAT/xcdat/issues/531.
Can you provide some pseudo-code? Better yet, a prototype Python implementation would be great.

I think an alternative solution to skipna is for the user to drop nan values before calculating the average. @pochedls any thoughts for this specific enhancement?

I'm wondering if this would work. If we were dealing with time series:
ds.time = ["2010-01-01", "2010-02-01", "2010-03-01", "2010-04-01"]
ds.ts = [1, 2, np.nan, 4]

I think dropping the NaN would also drop the time point, which would create problems for a lot of applications. If I instead had a [lat, lon] matrix:
ts = [[1, 2, 3],
      [4, 5, 6],
      [7, np.nan, 9]]

I'm not sure how this would work. What would the ts matrix shape be – it would no longer be a [lat, lon] grid?
Or am I thinking about this the wrong way?

@tomvothecoder @pochedls sorry that I haven't fully followed this, but just wondering if there to be any chance to follow upon this as Celine reached out for the same issue -- she wants to operate a spatial average while the data has NaN included.

@lee1043 – I don't think I can work on this soon. This could be an easy PR (or "dev day" issue) depending on the complexity of the implementation. There might also be work arounds using get_weights (and the computing the mean yourself).

@tomvothecoder @pochedls sorry that I haven't fully followed this, but just wondering if there to be any chance to follow upon this as Celine reached out for the same issue -- she wants to operate a spatial average while the data has NaN included.

If you or somebody else can provide pseudo-code or a prototype Python implementation it can help speed up the implementation process for whenever @pochedls or I (or somebody else) has time. My dev time for new xCDAT features will be limited for the next few months because of conferences and other priorities.


[feat] CLI

Feature description
A CLI is a must-have, we should focus on adding one.
Affected component/components
No response
Additional Context
https://github.com/shadcn-ui/ui/tree/main/packages/cli
Before submitting

[X] I've made research efforts and searched the documentation
[X] I've searched for existing issues and PRs

This will need refactoring into a monorepo architecture