WIP: Add scalar op vector operations.

Add support for multiplying a vector image by a constant scalar. This
patch changes the itk filter instantiated for all filters which use
the BinaryFunctorFilter template, from just the same binary type
for both images and scalars, to using a "ValueType" scalar image and
image type. This is the same as the pixel type for scalar images. For
VectorImages it is the same as the component type and for complex
images it is the same as the value_type.
WIP:  This has caused some problems for the complex pixel type with
the pow and add image filters. Specifically, the Add functor type use
the NumericTraits::AccumulatorType for std::complex this is
std::complex, but complex+complex is not
supported!!!
WIP: This now instantiates the BinaryOperator filters with the
combination of ScalarImages and VectorImages. The creates bigger
object files and libraries. But it does not exposed being able to
multiply scalar images with vector images.
Restores features that were provided by the MultipleByConstanst and
similarly named filters, before they were deprecated and removed.
Change-Id: I68143cf2a03d160136c030d5c7781d1f4db47308

@hjmjohnson This is what I have do far on this. I was working on getting the CircleCi working before this ( that is almost there ). Please let me know if this would meet your needs.

@blowekamp I won't be able to test until next week.  I'm preparing for a very heavy teaching load this fall right now, and I have no free time to investigate this.
I do GREATLY appreciate all you assistance with this and the other requests.
Hans

Do: check


feat() init routing protocol

@Hermann-Core  and @IngridPuppet  this is the up to date version of the issue here


Support {{#form-for item}} in {{#each item}}

Hey,
needed to add this to make the submit button usable in an {{#each}} loop. Not sure it's the right implementation, but doesn't seem to be too hackish either ...
Pretty sure you want me to write a test for this (if you like it all), any hint how to implement that?
Best regards,
Dominik

Thank you for submitting this PR, but it's not necessary anymore.
Most of the code of the library was rewritten to be compatible with Ember 1.13, and this is already fixed in the most recent version.
You can get the most recent version of ember-easy-form on the branch 1-0-stable or as an ember-addon here.


Double Elimination save option

Hey there,
I'm using the saveFn function to save results to the database. The problem i'm having is that this doesn't work with Double Elimination since detecting whether or not it's double elimination depends on the data itself. Is there a flag i can use to force it to double elimination?

Is there a flag i can use to force it to double elimination?
No there isn't. You can force the double elimination by initializing with empty data structure that has room for loser bracket and final data.

That doesn't work. The saving process makes it into a single elimination tournament:
http://fiddle.jshell.net/7er6y8j7/3/

Fiddling with the save demo at http://www.aropupu.fi/bracket/#save. The output seems to contain empty data for double elimination results when saved (name/score edited). It just doesn't seem to trigger if bracket size or type is changed from the buttons.
Didn't try importing the empty data created by the bracket, but if the data import worked, then the fix would probably be triggering saveFn on size and type change to avoid confusion.

Hey teijo,
can you check this line ? https://github.com/teijo/jquery-bracket/blob/master/src/jquery.bracket.ts#L1109
i could create a PR to make this an optional setting, would that work?

PR made: https://github.com/teijo/jquery-bracket/pull/38

tl;dr Bracket type still depends on initialization data, and it should. Unfortunately the double elimination initialization data is ugly if backwards compatibility is concerned: [[[[]]], [], []].
I went through the input handling and found what the problem is. From https://github.com/teijo/jquery-bracket/blob/3a4210cb8bca6b44f2789d12197c5f5815491a42/src/jquery.bracket.ts#L1103
    var r = data.results

    /* wrap data to into necessary arrays */
    r = wrap(r, 4 - depth(r))
    data.results = r

    var isSingleElimination = (r.length <= 1)

The results data is normalized with the wrap(). It nests arrays until they are 4 deep, that is:

list of brackets
list of rounds in bracket
list of matches in round
a match

If nesting is missing, it will wrap the data until 4 levels exist, therefore giving just [1, 2] as result would convert it as result of first match of first round in single bracket -> [[[[1, 2]]]].
The bracket type is determined by the number of bracket lists (top level) in the normalized result input. 1 for single bracket, greater than 1 for double elimination. Example above in double elimination would be [[[[1, 2]]], [], []]
Closing this issue as the data can define the bracket type. As the bracket edit mode output by saveFn will output normalized data which, when read in init, will result into correct behaviour, no additional option for double elimination output is needed.
Improvement to the API would be to discard the normalization and enforce exact input format from the beginning. However, that will not be backwards compatible and therefore not desirable at this point.


Track user's organisation in the Audit Tool

In order to better understand the data we are receiving from Google Tag
Manager (GTM), we would like to know the organisation of the user. This
will help us to filter out "noise" from users at Government Digital
Service (GDS). It will also help us to see how organisations work when
using the tool.
In order to track the user's organisation, this change introduces a
<script> tag on the Audit Tool only (ie not the Content Performance
Manager). This <script> tag is populated with JSON by a Rails template,
which fetches information from a helper method, where we have access to
the user's organisation from Signon.
Since we are in full control of the JSON, and it is all rendered server-
side, this method is considered safe.
inject the JSON onto the page in this way.

 GTM tracking - Push the 'organisation' of an auditor to the data layer


Install on Debian

Using the next Debian 12.
# untar to some place, like /tmp
sudo mv /tmp/yubikey-touch-detector-1.10.0-linux64/yubikey-touch-detector /usr/bin/yubikey-touch-detector
mv /tmp/yubikey-touch-detector-1.10.0-linux64/yubikey-touch-detector.service ~/.config/systemd/user/yubikey-touch-detector.service
mv /tmp/yubikey-touch-detector-1.10.0-linux64/yubikey-touch-detector.socket ~/.config/systemd/user/yubikey-touch-detector.socket

# Config
# See: https://superuser.com/a/365918/609233
mkdir -v ${XDG_CONFIG_HOME:-$HOME/.config}/yubikey-touch-detector/
nano ${XDG_CONFIG_HOME:-$HOME/.config}/yubikey-touch-detector/service.conf
# Enable desktop notifications: https://github.com/maximbaz/yubikey-touch-detector#configuring-the-app

# Register service and start it
systemctl --user daemon-reload
systemctl --user enable --now yubikey-touch-detector.service
# Check running
systemctl --user status yubikey-touch-detector.service
# Cleanup
rm -r /tmp/yubikey-touch-detector-1.10.0-linux64/

You can add this to the README

Thanks for sharing. This looks quite similar to how you install any application on Linux, may I ask what was the most unintuitive part of the installation?

Thanks for sharing. This looks quite similar to how you install any application on Linux, may I ask what was the most unintuitive part of the installation?

the part where I had to research where to put service files and what value XDG_CONFIG_HOME was ^^
also, the notification has no icon, it's a bit ugly

I think this belongs to wiki, as location of systemd files and XDG environment variables aren't really something this project decides 😊 Feel free to create a page on wiki though, it's fully editable by anyone!
The notification is a demo, and you'll see both in other closed issues and maybe on wiki that the preferred approach is to build your own notification mechanism - it's very easy!

I think this belongs to wiki, as location of systemd files and XDG environment variables aren't really something this project decides blush Feel free to create a page on wiki though, it's fully editable by anyone!
The notification is a demo, and you'll see both in other closed issues and maybe on wiki that the preferred approach is to build your own notification mechanism - it's very easy!

Hi @maximbaz
Thank you for your nice comment !
I am currently crowded with work, so it's best if you can create the wiki page and I can review and do adjustments if needed
Keeping this open so it's done one day by myself or somebody :)

I should make an article on my blog 😄
Totally forgot about this issue.
FYI: I did open a MR to update the package on Alpine Linux.
See: https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/59741
Are you aware that some platforms do not build ?
arch="all !armhf !armv7 !x86"  # fails to build

Edit: the new version seems to build on all arches 🎉
See: https://gitlab.alpinelinux.org/williamdes/aports/-/pipelines/210110

I'll close the ticket since it seems like there's no pending action - as for the wiki, it's open for anyone, so whoever wants to write something, do not hesitate :wink:


Unable to see marker (TypeError: Cannot read property 'addObject' of null)

I am not able to see the marker on the map:
<div class="col-md-6">
          <ng-map center="{{latLng}}" zoom="11"></ng-map>
          <marker position="{{latLng}}"></marker>
</div>

I get the following error in the console:
TypeError: Cannot read property 'addObject' of null
I could't find a reason or a solution here or anywhere else.

marker must be inside ng-map


Using Visual Code Touch Bar to debug Mac Book Pro

Issue Type
Feature Request
Description
When Im debugging using Mac Book Pro Touch Bar pressing Step Into button, sometimes code needs to wait to be processed and the button, in THE SAME POSITION come to be STOP! So, if you are not aware you would loose your processing.
Feature Request: Move the STOP Button (in the Touch Bar) from the same position STEP INTO!

VS Code Info
VS Code version: Code 1.20.1 (f88bbf9137d24d36d968ea6b2911786bfe103002, 2018-02-13T15:23:28.607Z)
OS version: Darwin x64 17.5.0

fyi @bpasero

Dup of https://github.com/Microsoft/vscode/issues/54084


Inform users of --help command, improve cli help

When running the ludwig command, the following info is displayed:

I suggest changing it to the same message that is displayed when running ludwig --help albeit with a few small tweaks orienting themselves at the help command of the pip package manager:
OLD

NEW
ludwig -h and ludwig show the same message:
Usage:
    ludwig <command> [options]

Commands:
   experiment            Runs a full experiment training a model and testing it
   train                 Trains a model
   predict               Predicts using a pretrained model
   serve                 Serves a pretrained model
   test                  Tests a pretrained model
   visualize             Visualizes experimental results
   collect_weights       Collects tensors containing a pretrained model weights
   collect_activations   Collects tensors for each datapoint using a pretrained model

Description:
   ludwig cli runner

General Options:
  -h, --help                  Show contextual help.

Now each command then just as now has its separate help including a Description and a contextual options list. Which should separate required arguments, e.g. for train model_definition_file or model_definition from optional arguments.

I don't think ludwig and ludwig -h should have the same output. In the first case it is correct to show an error for the missing command, in the second case it is not. Will keep things as the they are.

Would you support adding information about the -h command when just running ludwig? I for one was not aware that it existed.


Unable to add collatoral for HW.

It's disabled, because you can't interact with smart contracts anyway at this point in time. We have to wait for HW software updates.

Hi thanks for the clarification. Didn't know this.


Change Log Link not working

The link here to the change log is not working. It ends with a ',' (comma) and this messes up the URL.
Thanks for the fine extension! 🧡

closing to clear my list of open topics, since I cannot do anything about this and after more than two years it is either not worth fixing or outdated.


Task/view dashboard capturista

What's this PR do?
     Its creates the template, view and url for the capturista's dashboard

Where should the reviewer start?
    captura/views.py
    captura/test_views.py
    captura/urls.py
    jp2_online/templates/captura/dashboard_capturista.html

How should this be manually tested?
    python manage.py test captura

Any background context you want to provide?
    Is the same template for the admin dashboard, but only shown the socio-economic studies under review and the buttons to add a new study and edit one specific socio-economic study or view the feedback provided for the admin.

This template was adapted ~stolen~ from Quickleft/Sprint.ly

Codecov Report

:exclamation: No coverage uploaded for pull request base (develop@e9ab6ef). Click here to learn what that means.
The diff coverage is 100%.

@@            Coverage Diff             @@
##             develop      #41   +/-   ##
==========================================
  Coverage           ?   95.15%
==========================================
  Files              ?       84
  Lines              ?     1176
  Branches           ?        0
==========================================
  Hits               ?     1119
  Misses             ?       57
  Partials           ?        0

Impacted Files
Coverage Δ

jp2_online/urls.py
100% <ø> (ø)

captura/test_views.py
100% <100%> (ø)

captura/urls.py
100% <100%> (ø)

captura/views.py
100% <100%> (ø)

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 e9ab6ef...3ebb14d. Read the comment docs.


mstpd: bump version to 0.1.0

Since we are targeting the 0.1.0 release tag, I think we should rename the recipe to have an actual version instead of just _git


PRO-3123 Make bill status code script triggerable by cronjob and wire in rails apis

Why
In previous work, we set up a new EC2 instance to clone this repository (Prolegis/congress). We also introduced a script, generate_bill_status_codes.sh, which leverages UnitedStatesIO’s scripts to calculate bill status codes and upload them to S3.
To finalize this setup, the following tasks are needed:

Update the script so it can be executed by a cron job.
Use the Rails API to fetch the current Congress dynamically, rather than hardcoding it as 118.
Enable the bill status code importer for staging, demo, and production environments.

How
To enable the script to run via cron, I added the following line to ensure the correct directory is used:
cd ~/congress || exit
This is necessary because cron jobs use a single configuration file for the entire EC2 instance. There is no separate configuration file specifically for the congress repository, so we need to guarantee the script runs from the appropriate directory, whether manually or through the cron job.
Additionally, I updated the script to fetch the current Congress programmatically from the Rails API, eliminating the need for hardcoding. Finally, I added cURL commands to trigger the bill status code importer across staging, demo, and production environments.

Hi Harish! Thanks for the great questions. I dug into the concerns you raised, and I’ve implemented some changes that I think address the points you mentioned, specifically adding logging, error handling, and considering failure scenarios such as the EC2 instance going down or requests to Prolegis failing.
I’ve created a new PR with the proposed changes. Since the changes were quite significant, I decided to branch off of this feature branch for testing and experimenting purposes. Once everything is stable, we can merge these changes back into this feature branch.
New Endpoints:
I introduced two new Rails endpoints in the approach to improve logging and validation:

POST /api/congress_repo/log_message: This allows us to log various events and errors during the import process.
GET /api/congress_repo/validate_key: This endpoint helps us validate API keys for each environment (production, staging, and demo) to ensure they're working before proceeding with the script.

We would need to add these in before add this script in.
Here’s an example of how these controllers would look in our Rails app:
class Api::CongressRepo::LogMessageController < Api::CongressRepo::BaseController
  def create
    message = params[:message]
    level = params[:level] || "info" # Default log level is "info"
    Log.log(message, level: level, tag: self.class.name)
    head :ok
  end
end

class Api::CongressRepo::ValidateKeyController < Api::CongressRepo::BaseController
  def index
    head :ok
  end
end

The validate_key endpoint ensures that the API keys we are using on the EC2 instance are valid. If not, the script will halt and log an error.
Script Changes
In the script, I added logic to validate the API keys before proceeding with the import. If the validation fails, we log an error and stop the process to prevent any further issues. Additionally, the script now logs both the start and completion of the import, as well as any errors that may occur (e.g., cloning the repo, AWS S3 copy failure).
Here’s the modified script:
#!/bin/bash

log_file="bill_status_codes_import_log.txt" # Log file
echo "Bill Status Codes Import started at $(date '+%Y-%m-%d %H:%M:%S')" >> $log_file

# Validate Production Key
response=$(curl -s -o /dev/null -w "%{http_code}" -H "Authorization: $API_KEY_PRODUCTION" https://www.prolegis.com/api/congress_repo/validate_key)
if [ "$response" -ne 200 ]; then
  echo "Production key is invalid. HTTP status: $response" >> $log_file
  exit 1
fi

# Validate Staging Key
response=$(curl -s -o /dev/null -w "%{http_code}" -H "Authorization: $API_KEY_STAGING" https://stg.prolegis.com/api/congress_repo/validate_key)
if [ "$response" -ne 200 ]; then
  echo "Staging key is invalid. HTTP status: $response" >> $log_file
  exit 1
fi

# Validate Demo Key
response=$(curl -s -o /dev/null -w "%{http_code}" -H "Authorization: $API_KEY_DEMO" https://demo.prolegis.com/api/congress_repo/validate_key)
if [ "$response" -ne 200 ]; then
  echo "Demo key is invalid. HTTP status: $response" >> $log_file
  exit 1
fi

# Send a log message that the import has started
response=$(curl -s -o /dev/null -w "%{http_code}" -X POST https://www.prolegis.com/api/congress_repo/log_message \
-H "Authorization: $API_KEY_PRODUCTION" \
-H "Content-Type: application/json" \
-d "{\"message\": \"Bill Status Codes Import started at $(date '+%Y-%m-%d %H:%M:%S')\", \"level\": \"info\"}")

if [ "$response" -ne 200 ]; then
  echo "Failed to log start of import. HTTP status: $response" >> $log_file
  exit 1
fi

# Clone from GitHub if not already cloned
git clone<EMAIL_ADDRESS>if [ $? -ne 0 ]; then
  echo "Git clone failed, logging the error." >> $log_file
  curl -X POST https://www.prolegis.com/api/congress_repo/log_message \
  -H "Authorization: $API_KEY_PRODUCTION" \
  -H "Content-Type: application/json" \
  -d "{\"message\": \"Git clone failed for the congress repository\", \"level\": \"error\"}"
  exit 1
fi

cd congress
git pull

output_file="bill_status_codes.json" # Output JSON file
echo "Bill Status Codes Import started at $(date '+%Y-%m-%d %H:%M:%S')" >> $log_file

# Fetch the current congress from Rails API
CURRENT_CONGRESS=$(curl -s -H "Authorization: $API_KEY_PRODUCTION" https://www.prolegis.com/api/congress_repo/current_congress | jq -r '.current_congress')

# Proceed with the rest of the import process...

Summary
These changes improve the reliability of the script by:

Adding API key validation to ensure we’re operating with valid credentials.
Logging the start and completion of the import, as well as any errors, to both a log file and via an API endpoint.
Enhancing error handling for critical steps like the Git clone operation.

Let me know what you think about this approach, and we can iterate further as needed. Thanks! :D


No Account settings option in gear icon

I am not able to associate AAD with my dev center account. The link sends me to partner.microsoft.com. I am logged in through the email id by which I created dev center account. But there's no account settings option in gear icon

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

ID: 262768e8-ad91-7af3-1541-4f2d2f9de5ba
Version Independent ID: cc035cc8-ce25-57c4-2d2d-389451442d98
Content: Associate Azure Active Directory with your Dev Center account - UWP app developer
Content Source: windows-apps-src/publish/associate-azure-ad-with-dev-center.md
Product: windows
GitHub Login: @JnHs
Microsoft Alias: wdg-dev-content

Nope, none of those options are there. It doesn't seem like UI is working as per instructions laid out in this doc

Thanks for letting us know. I'll try to confirm the behavior and make any needed updates. In the meantime I'd recommend opening a support request so that you can access the functionality.


Create SKMP.cpp

Added the solution for the CodeChef problem Smallest KMP.

@dixitt5 Can you have a look at this PR?


'replenishRate' and 'burstCapacity' don't work at all,please help me

my code as this:
public class TsspRateLocator implements RouteLocator{
private static final Log log = LogFactory.getLog(TsspRateLocator.class);
@Autowired
private TsspServiceApi tsspServiceApiService;
@Autowired
private RouteLocatorBuilder routeLocatorBuilder;

@Autowired
private ApplicationContext context;

@Override
public Flux<Route> getRoutes() {

	Builder routes = routeLocatorBuilder.routes();

	List<TsspRoute> routesList = this.tsspServiceApiService.queryAllRoutes();

	routesList.forEach(rs -> routes.route(rs.getId().toString(),r -> r.order(rs.getId())
				.path(rs.getServicePath()+rs.getEnvPath()+"/**")
				.filters(f -> f.requestRateLimiter(c -> c.setRateLimiter(redisRateLimiter(rs.getId().toString())).setKeyResolver(appkeyResolver()))
						.prefixPath("Path="+rs.getServicePath()+rs.getEnvPath()+"/**")
						.stripPrefix(2))
				.uri(rs.getUri())
				)
			);

	RouteLocator routeLocator = routes.build();

	return routeLocator.getRoutes();
}

@Bean
RedisRateLimiter redisRateLimiter(String routeId) {
	RedisRateLimiter redisRateLimiter = new RedisRateLimiter(1,0);
	redisRateLimiter.setApplicationContext(context);
	return redisRateLimiter;
}

@Bean
public AppkeyResolver appkeyResolver(){
	return new AppkeyResolver();
}

}
then 'replenishRate' and 'burstCapacity' don't work at all,  something i dont understand ?

Please stop spamming multiple issues

To be exact, I found when 'burstCapacity=0',tokensRemaining always == -1,I don't know if that makes sense

burstCapacity=0 means deny all. It should be greater than 0


[Async] Introduce a Sink - an object to receive a Stream of values

In the Futures library we define a Future as an asynchronous computation and a Promise as an object into which a value may be sent either as a result of a Future computation or by manually fulfilling a promise with a value.
In addition to the Future, a Stream represents an asynchornous iterator, however we do not have yet an object into which we can send multiple values asynchronously.


Enhance perspectives to allow style customizations beyond descriptions

Description
As discussed on Slack, it would be wonderful to allow style customization in perspectives. Unlike the DSL you previewed there, it would be more natural to me to use tags that are defined on the elements, because the perspective value is intended for descriptions, the [value==bla bla bla] syntax could get awkward.
So instead of what you proposed:
model {
  softwareSystem "A" {
    perspectives {
      "Technical Debt" "1"
    }
  }

views {
  styles {
    element "Perspective:Technical Debt[value==1]" {
      background green
      color white
  }
}

I propose using tags, maybe like this:
model {
  softwareSystem "A" {
    tags "High"
    perspectives {
      "Technical Debt" "The tech debt of the A system."
    }
  }

views {
  styles {
    element "Perspective:Technical Debt:High" {
      background green
      color white
  }
}

I can see this being very useful in visualizing many different things like security, privacy, organizational units, and more.
Priority
Medium
Resolution
I'm willing to pay for this feature (add details below)
More information
I cannot promise payment, but let's discuss on Slack. If you give me a quote I can certainly discuss with my manager. I've just introduced Structurizr and there are many happy people around. So the timing is good 😃

So my plan with this is to add a value property to perspectives, which can then be used in those element style expressions ... admittedly that's currently not the case with the POC, and the description is used instead.
Feel free to use the donation link if you'd like to support the project financially.

Admittedly, I am biased by my current workflow, but I thought about it some more and to me there are two good reasons for using tags:

Tags are familiar, whereas a value property introduces completely new syntax.
Tags can be flexibly (and programmatically) added to elements.

To illustrate point 2: I currently parse system information from ServiceNow. It is straight forward at that point to add further tags to a system based on properties in ServiceNow, such as GDPR, Decommissioned, Organizational Unit responsible. I then define the views in the workspace manually.
I could easily define perspectives styling them based on those tags. Defining the values in the perspectives either forces me to do this manually (meaning I will probably miss updates to the data being done on ServiceNow), or force me to define the views automatically, which I'd rather avoid since it excludes contributors who can't code but can handle the DSL.

Perspectives can also programmatically be added to elements via the addPerspective method -> https://github.com/structurizr/java/blob/master/structurizr-core/src/com/structurizr/model/ModelItem.java#L196 (this would be enhanced to also allow a value property.
The problem with tags is that they can ambiguous when combined with perspectives. To add to your example:
model {
  softwareSystem "A" {
    tags "Low"
    tags "High"
    perspectives {
      "Technical Debt" "High - The tech debt of the A system."
      "Cost" "Low - The cost of the A system."
    }
  }

  softwareSystem "B" {
    tags "Low"
    tags "High"
    perspectives {
      "Technical Debt" "Low - The tech debt of the B system."
      "Cost" "High - The cost of the B system."
    }
  }
}

views {
  styles {
    element "Perspective:Technical Debt:High" {
      background green
      color white
    }
  }
}

I see your point. Probably in this scenario the tags should be named "Tech Debt Low" and "Cost High", so that the auto-generated legend also makes sense for viewers. Otherwise they'd ask, "what is high?", "what is low?"
I concur that pre-generating the perspectives on systems but not the views would probably be the best way to go in my use-case.
Thank you!

For what it is worth, I don't like the idea of using the tags on the element in this way. As Simon describes, the ambiguity across different perspectives in the same diagram (say security alongside tech-debt) then that 'high' tag is unlikely to apply properly to both of them.
So I much prefer the option of adding values to a perspective which allows me to vary the styles I show per perspective more easily and in a more structured form.
I wonder if there might be a slightly nicer syntax to use in the style, but I don't have any ideas on that right now I'm afraid.

Hello Simon!
Thanks for this very nice tool, I love it!
I'm having the same need as asos-alexwhite in this comment: I would like to style the relationship the same way we can with elements for perspectives.
Do you plan on adding this feature too by any chance?
(I'm adding this request here since you mentionned it in this comment)
Thanks!


Support version 4 of presets

Brief Issue Summary
We need to support new features added in version 4 of presets.

include elements
${fileDir} macro
resolvePackageReferences

CMake Tools Diagnostics
No response
Debug Log
No response
Additional Information
No response

@elahehrashedi I can try to contribute this. Feel free to assign me to this issue.

Recent versions of Conan now generate CMakeUserPresets.json with schema version 4 (they include other files in it). It would be great to be able to open those files with VSCode.

Recent versions of Conan now generate CMakeUserPresets.json with schema version 4 (they include other files in it). It would be great to be able to open those files with VSCode.

Yes, that's exactly why I contributed an implementation in #2544, still pending in review though. :) It works well for me with the files generated by Conan.

We plan to review the v4 PR next week.  We were trying to finish up the last planned PR for 1.11, but had to switch over to cpptools to fix a few things for that release which set us back a little on CMake Tools.  @chausner's PR will be reviewed shortly after and will be available in 1.12 pre-release.  We're sorry for the delay on it.

This feature is available in version 1.12.3 (pre-release). Thank you @chausner for submitting the PR!


Add remove_includes method

Summary of changes
Add a remove_includes method to replace qBraid-SDK's remove_include_statements

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:
:loudspeaker: Thoughts on this report? Let us know!


Projected version support Implementation

Should be as simple as move to TCGC 0.41.4+

Fixed by https://github.com/Azure/autorest.python/pull/2540


crash after upfate

Microsoft PowerToys version
0.70.0
Installation method
WinGet
Running as admin
Yes
Area(s) with issue?
General
Steps to reproduce
1 install power tools
2 attempt to open it
✔ Expected Behavior
the power toys menu opens and you can do things
❌ Actual Behavior
a window briefly appears then closes
Other Software
No response

/bugreport

PowerToysReport_2023-05-25-22-51-08.zip
it also was not crashing after I restarted my computer


NavigationViewItem in PaneFooter

Is there a NavigationViewItem inside the PaneFooter in the screenshot? The documentation of PaneFooter is explicitly states that you cannot place NavigationViewItems in NavigationView.PaneFooter. Will this change in future version because this is a Preview version of the documentation?

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

ID: 745ab6c5-cfbe-a56f-dccd-ab55123f9223
Version Independent ID: 54455a9f-a92f-e462-558d-78fb696dba8c
Content: Navigation view - UWP app developer
Content Source: windows-apps-src/design/controls-and-patterns/navigationview.md
Product: windows
GitHub Login: @serenaz
Microsoft Alias: sezhen

@Ullmie02 Thank you for reaching out. You found an error in the documentation that we have since corrected. You may place any content into PaneFooter, including a NavigationViewItem. But keep in mind that NVIs in the PaneFooter won't have all the built-in behaviors of NVIs inside the MenuItems list. For example, the selection indicator's animation won't work, and the parent NavigationView will not raise its ItemInvoked event when users click on a NVI in the PaneFooter.


Upgrade to rails 7 and ruby 3+ in oc-id

[  ] Upgrade to ruby (3+)
[  ]  Upgrade to rails 7
[  ] Test the new Build
[  ] Test the build-kite Pipeline

https://github.com/chef/chef-server/issues/2936

https://chefio.atlassian.net/browse/INFS-9


New update 0.6.3 problem

My G810 rgb not showing after version 0.6.3 update.
In bitmap and in app preview works fine but my keyboard not showing any light.
2018-09-19 17.57.44.log

Your issue is due to a temporary problem with the updater downloading the ghub version of aurora. It is now fixed, you just need to reinstall Aurora with the lgs version. https://github.com/antonpup/Aurora/releases/tag/v0.6.3


Generate types cannot handle a blocks field with empty blocks array

Bug Report

When using a field like this
{
  type: 'blocks',
  name: 'blocks',
  blocks: [],
},

I get this error upon running payload generate:types:
SyntaxError: '=>' expected. (69:11)
  67 | id?: string
  68 | }[]
> 69 | blocks: ()[]
     |           ^
  70 | }
  71 | /**
  72 |  * This interface was referenced by `Config`'s
JSON-Schema

Solution
To generate the blocks property type, use never as base. E.g., (never | {blockType: ...} | {...})[]

Hey @adiba — a blocks field actually should not be valid unless it has blocks within it. So we're instead going to add validation to prevent having a blocks field from having an empty array of blocks, so that you'll never even hit that TS issue.
Can I ask what you were trying to do with a blocks field with no blocks?

@jmikrut Thank you for your reply!
It's very likely that I would want to test a schema/config during development, which might be incomplete.
The same reason applies to anything (e.g., globals) having no fields, which is currently a valid option as well.
(One other reason in my view would be mathematical consistency..)
I don't really mind your choice though -- feel free to add the validation and I'll comment out my blocks field :)


Support build on RHEL 5 Linux

I have been able to build Abseil on RHEL 5 and tests passing.
It has lower glibc version when specified minimal.
Also Futexes are not fully supported. I put a check to swtich them off.

https://abseil.io/about/compatibility
RHEL 5 is outside of our compatibility guidelines. While it may be possible to support, it has an engineering cost to ensure support, so we'd rather simply not support it.
RHEL 5 was released in 2007 and didn't even ship a C++11 compiler. In fact, according to distrowatch, neither did RHEL 6. You've clearly upgraded from the default compiler, maybe you could upgrade the glibc and kernel as well, or maybe you could do the easier thing and just upgrade the whole OS?

I understand your point. Unfortunately in my work I cannot throw away RHEL 5 right now.
My patches does not put any obligation to the library to support. I don't change the compatibility text.
Patches only add precision to futexes when they become useful. I mean no additional support for you and less patch support for me.


[ChatGPT] ...

Extension
https://www.raycast.com/abielzulio/chatgpt
Description
Conversations are cleared with unnotified, it's all deleted and cleared without permission.
Steps To Reproduce
I don't know how to reproduce it
Current Behaviour
No response
Expected Behaviour
No response

Please let me know how to restore the conversations


Create SelfAssumeRole.sql

new example query for self assume role events
Issue #, if available:
Description of changes:
Adding new example query for roles that self assume
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Adding query for self assuming roles.


Convert oremda label values to native types

This allows us to avoid converting their types later while we are
reading the label values.
We can wait to merge this until #18 is merged since there will likely be some small conflicts.

I think this approach is mostly unnecessary if we leverage pydantic as I have started doing in #18
For example, in the following snippet, the json payload not only will be casted to the desired types, but it will also be checked for sanity.
from pydantic import BaseModel, Field

class SomeObject(BaseModel):
    foo: bool = Field(...)
    bar: int = Field(...)
    baz: float = Field(...)

o = SomeObject(**{
    'foo': 'true',
    'bar': '2',
    'baz': '3.1'
})

print(o.dict())

# >>> {'foo': True, 'bar': 2, 'baz': 3.1}

Sure. Would you like to implement this in a separate PR?


µQR: introduce uqr js library, use for QR codes

original idea by @Ansuel in #7069
FAO also: @jow- @feckert @hnyman
µQR is ~13K, providing a light-weight option, outputting to only SVG for at least luci-proto-wireguard (example included).
Original library here.
I investigated doing this via ucode RPC calls to avoid a require, but this adds a conversion step from js to ucode, so no go. Depending on the 13K lib is acceptable.
@Ansuel also suggests QR codes for wifi. I could add those also.
Compare: On X86_64 23.05.3, to produce QR codes requires a lib and binary weighing ~ 70K today (>500% bigger).
root@OpenWrt:/# cat /etc/openwrt_release
DISTRIB_ID='OpenWrt'
DISTRIB_RELEASE='23.05.3'
DISTRIB_REVISION='r23809-234f1a2efa'
DISTRIB_TARGET='x86/64'
DISTRIB_ARCH='x86_64'
DISTRIB_DESCRIPTION='OpenWrt 23.05.3 r23809-234f1a2efa'
DISTRIB_TAINTS=''
root@OpenWrt:/# du -h /usr/lib/libqrencode.so* /usr/bin/qrencode
0	/usr/lib/libqrencode.so
0	/usr/lib/libqrencode.so.4
40.0K	/usr/lib/libqrencode.so.4.1.1
28.0K	/usr/bin/qrencode

On ath79 23.05.3, to produce QR codes requires a lib and binary weighing ~ 129K today (~1000% bigger).
root@OpenWrt:~# cat /etc/openwrt_release
DISTRIB_ID='OpenWrt'
DISTRIB_RELEASE='23.05.3'
DISTRIB_REVISION='r23809-234f1a2efa'
DISTRIB_TARGET='ath79/generic'
DISTRIB_ARCH='mips_24kc'
DISTRIB_DESCRIPTION='OpenWrt 23.05.3 r23809-234f1a2efa'
DISTRIB_TAINTS=''
root@OpenWrt:~# du -h /usr/lib/libqrencode.so* /usr/bin/qrencode
0	/usr/lib/libqrencode.so
0	/usr/lib/libqrencode.so.4
64.5K	/usr/lib/libqrencode.so.4.1.1
64.5K	/usr/bin/qrencode

qrencode is a decent tool and can output to a number of formats largely unused on openwrt.

[X] This PR is not from my main or master branch :poop:, but a separate branch :white_check_mark:
[X] Each commit has a valid :black_nib: Signed-off-by<EMAIL_ADDRESS>row (via git commit --signoff)
[X] Each commit and PR title has a valid :memo: <package name>: title first line subject for packages
[X] Incremented :up: any PKG_VERSION in the Makefile
[X] Tested on: (architecture, openwrt version, browser) :white_check_mark:
[X] Description: (describe the changes proposed in this PR)

If there are no comments on this - esp from @Ansuel - I will merge and liberate wg from qr-encode dep.

@systemcrash: Nice!
@Ansuel: What do you think?
Note: There is Free OTP which is very used on mobile phones (open source not like Google/MS applications):

https://github.com/freeotp


Default destination resolver in DeadLetterPublishingRecoverer issue when DLT partitions are less than original topic partitions

The default destination resolver in the DeadLetterPublishingRecoverer routes the records to a topic partition with the same name as the incoming consumer record + the suffix ".DLT", and the same partition as the incoming consumer record.
DEFAULT_DESTINATION_RESOLVER = (cr, e) -> new TopicPartition(cr.topic() + ".DLT", cr.partition());
This is a problem as this logic assumes that the number of partitions for the DLT is the same as the number of partitions of the original topic, which is not necessarily true.
In case the partitions for the DLT are less, this result in exceptions, as the destination partitions do not exist. Likewise in the (unlikely) case the DTL has more partitions than the original topic, some of them will be idle.
The solution I have successfully used is to set the destination partition to -1, which will delegate the choice of the destination partition within the DLT to Kafka.
DEFAULT_DESTINATION_RESOLVER = (cr, e) -> new TopicPartition(cr.topic() + ".DLT", -1);
Will submit a PR with a test to prove the case. I think this should be the default mechanism.

As I said on the PR; we can't just change the default like that; we will make the documentation more visible,

On reflection, I think we could inspect the DLT (if we have permissions) and log a WARN if the resolved partition doesn't exist.
That will satisfy your request, and prevent a breaking behavior change.


Decorator classes for listbox controller

All these reactive accessor pairs are just fine the way they are, but i'm just floating the option to write a decorator for class fields instead
Originally posted by @bennypowers in https://github.com/patternfly/patternfly-elements/pull/2570#discussion_r1354367678

Closing since this is a very low priority. if anyone wants to pick up such a refactor in the future, have at 'em, but it's not something we need to focus on


Request: Add a mode that can more accurately recreated dnd5e line of sight

Using the existing line of sight it isn’t possible to see a lot of tokens that you would be able to target with cover or even some tokens you would have no cover at all. You should be able to see them at least so that you can target them.
In the rules you can see something if you can trace a line from the corner of any square you occupy to the corner of any square the other token occupies. In theory, this means that you calculate line of sight from every corner of every square that you occupy and then combine the area of all of that LOS together. I believe that would slow down the game too much with all the extra calculations. I think that you could likely do it practically with only 5 points: Middle and the four corners of the creature's token. Or maybe every outside corner plus the middle for larger creatures.
As an example, in the following case the tokens should only have half cover to each other, making them completely visible to each other, but using the core line of sight they can't see each other at all. I have highlighted the area in green that should be visible according to the rules but isn't:

In this second picture the token at the bottom should be able to see the medium sized token above entirely with nothing being covered. The large token should be barely visible.

Added in v0.5.4. It is doing the calculations for each corner-to-corner if you select that option. I think performance is fine, because it is just intersection tests for the lines in the line of sight test; it is not redrawing the vision polygon.


Add an async/poll

On install gitlab takes a while and ssh connections can time out in some network environments. This adds a poll to the install command to try and ensure things don't time out during initial install

LGTM, this does sometimes take a while.


Fetching performance problem with PG wire protocol (probably 4.4 related)

CrateDB version:
4.4.2
Environment description:
CrateDB Cloud  + various JDBC clients (using Postgres JDBC driver)

Problem description:
I recently experienced performance problems when selecting data using the pg wire protocol and JDBC (using both Postgres and CrateDB JDBC driver). The query performance seems to really bad taking >30s for very simple queries, though digging deeper showed, that is isn't the query execution after all, but the actual fetching of the data.
query example
SELECT p, v, r, s, MIN(m), MAX(m)
FROM p.c
WHERE v >=4 and s >= 500
GROUP BY 1,3,2,4
ORDER By v,r,s;

Output from datagrip (using CrateDB JDBC Driver)
500 rows retrieved starting from 1 in 2 m 41 s 940 ms (execution: 284 ms, fetching: 2 m 41 s 656 ms)

same with looker (using Postgres JDBC Driver)
62 rows · 29.4s

the same query instantly work using the AdminUI (http-endpoint based)

Experienced that behaviour for a while, but wasn't sure about he exact cause

Steps to reproduce:

Still hard to tell the exact mechanics.
tested with different tools and different CrateDB instances.
CREATE TABLE "nyc_taxi" ("congestion_surcharge" REAL, "dolocationid" INTEGER, "extra" REAL, "fare_amount" REAL, "improvement_surcharge" REAL, "mta_tax" REAL, "passenger_count" INTEGER, "payment_type" INTEGER, "pickup_datetime" TIMESTAMP WITH TIME ZONE, "pulocationid" INTEGER, "ratecodeid" INTEGER, "store_and_fwd_flag" TEXT, "tip_amount" REAL, "tolls_amount" REAL, "total_amount" REAL, "trip_distance" REAL, "vendorid" INTEGER) WITH ("column_policy" = 'dynamic', "number_of_replicas" = '0', "refresh_interval" = 10000);

SELECT vendorid, min(congestion_surcharge), max(congestion_surcharge)
FROM nyc_taxi
GROUP BY vendorid, dolocationid LIMIT 100;

Datagrip
500 rows retrieved starting from 1 in 2 m 41 s 940 ms (execution: 284 ms, fetching: 2 m 41 s 656 ms)

Looker
100 rows · 72.8s

AdminUI
SELECT OK, 100 rows in set (0.632 sec)

Tested with 4.2.1
100 rows retrieved starting from 1 in 694 ms (execution: 677 ms, fetching: 17 ms)

Thank you for the detailed report.
Could you test again on 4.4.2 with logging set to trace on the following two packages?
set global 'logger.io.crate.action.sql' = 'TRACE';
set global 'logger.io.crate.protocols.postgres' = 'TRACE';

And then post the output?

I'm not really sure what's going on.  But to me it seems as if the client behavior is not correct.

 Ordinary columns are numbered from 1 up. System columns, such as ctid, have (arbitrary) negative numbers.

https://www.postgresql.org/docs/13/catalog-pg-attribute.html

what is strange ist the 0 AS attnum

Yes, we've cases where we don't know the column ordinal. But before 4.4.0 we always returned 0 and bases on your tests back then it didn't have the delay.
See https://github.com/crate/crate/commit/0aa110e1baeb739448fa2118c22680c0c208b5df#diff-c6c87b42c88c54675f8ca239e2da30e854c4503fd570aa6ac28dd10ea3cbf794L396

just questioning how and why they add it to the query 🤷♀
I don't see a 0 getting fetched in the first place

It is part of the JDBC driver:
Here [1] the 0gets inserted.
Somwere the posititionInTable must be 0 for some field, but not for others.
[1]https://github.com/pgjdbc/pgjdbc/blob/66b1e0200c07447f8fad2e442462bb206d61be71/pgjdbc/src/main/java/org/postgresql/jdbc/PgResultSetMetaData.java#L231

Seems like the problem is a combination of all three:

Datagrip and Looker make use of some metadata methods that trigger the fetching of field meta data in PostgreSQL JDBC
CrateDB returns table oid and column attr_num values that lead to an empty result when querying some pg_catalog tables using these values.
Because of this empty result, JDBC doesn't cache the result - so each metadata access leads to another query. E.g. each metaData.isAutoIncrement(1) call results in an additional query.

Will see what we can do about that.


HTTP Body Tests

This PR addresses two remaining issues from https://github.com/AliSoftware/OHHTTPStubs/pull/166.

Renames file and category to improve consistency and avoid misunderstandings
Adds two test cases:

using the new method, the http body should be accessibly
using the native method, the http body should not be accessible (else we didn't need the changes after all)

The renamed file isn't explicitly mentioned in the Podspec, so there's no change in that file. I assume users who have not enabled modules in their project/target will have to import NSURLRequest+HTTPBodyTesting.h (or the umbrella header) manually, or is there any other place to put it?

As NSURLRequest+HTTPBodyTesting.h is already in OHHTTPStubsUmbrella.h it seems, I don't think there is any other place to add it. It's mentioned in the wiki page as well so we should be good!

5.1.0 is out, including this change!


Test and benchmark downloading

This adds a test (based on an in-memory filesystem) and a few benchmarks (based on synthetic files created in a temp dir, and one real file in GCS).

This looks good to me, lets merge and we'll iterate on it as needed. It's good to have a benchmark to start.


Error: Request Failed.

Hello,
I am trying to geocode this city but getting an error:
openGeocoder().geocode('Montréal, Québec, Canada').end(async (error, data) => {

console.log(error) //Error: Request Failed.

})

Fixed it with the npm install latinize , it convert accented characters to a string.

No worries mate, but I fixed with v4
Thanks


ML.NET samples fixes

Companion PR for https://github.com/dotnet/docs/pull/5333

@JRAlexander I think this is ready for a final review.


Update nf-d3d12-id3d12graphicscommandlist-copyresource.md

After further internal discussion, the previous PR was incorrect. CopyResource can be used for format re-interpterion. We have reverted and expanded the language here to clarify handling of copies to and from Block-compressed resources.

@nadavgevaAMD : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@stevewhims : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Peer to peer code review

Peer to peer code review.
Great work . Your code is working well, no issue found

Thank you @kidde60 and @juanmanuelbyc for your feedback, I have updated the changes as requested and made the fixes we discussed Link here


Multi-Cluster/Multi-Network - kind eastwest-gateways

Im trying to get communication between two clusters. I'm using kubernetes kind and MetalLb on each cluster.
Install Multi-Primary on different networks - https://istio.io/v1.8/docs/setup/install/multicluster/multi-primary_multi-network/
The guide above is the one i followed. Everything seems to be ok until the "verify the installation part", where i expect cluster1 to use the service in cluster2.
Identification of the istioctl proxy-config endpoint for the sleep pod in cluster1:
istioctl -n sample proxy-config endpoint "$(kubectl get pod -n sample -l app=sleep -o jsonpath='{.items[0].metadata.name}')" | grep helloworld
<IP_ADDRESS>:5000                  HEALTHY     OK                outbound|5000||helloworld.sample.svc.cluster.local
And when i call the helloworld service:
while true; do kubectl exec --context="${CTX_CLUSTER1}" -n sample -c sleep     "$(kubectl get pod --context="${CTX_CLUSTER1}" -n sample -l \     app=sleep -o jsonpath='{.items[0].metadata.name}')"     -- curl -s helloworld.sample:5000/hello; done
Hello version: v1, instance: helloworld-v1-776f57d5f6-lbnwh
Hello version: v1, instance: helloworld-v1-776f57d5f6-lbnwh
Hello version: v1, instance: helloworld-v1-776f57d5f6-lbnwh
Hello version: v1, instance: helloworld-v1-776f57d5f6-lbnwh
Hello version: v1, instance: helloworld-v1-776f57d5f6-lbnwh
Hello version: v1, instance: helloworld-v1-776f57d5f6-lbnwh
Hello version: v1, instance: helloworld-v1-776f57d5f6-lbnwh
Hello version: v1, instance: helloworld-v1-776f57d5f6-lbnwh
Here i was expected to get the a response from the service in cluster2 also. Any suggestion what i can try?

Can you try the steps here and see if anything solves the problem: https://preliminary.istio.io/latest/docs/ops/diagnostic-tools/multicluster/

I'm not sure if i suppose to test the "Locality load balancing", the trust configuration is ok . However at this step from the link i see that something is wrong compared to my output:
istioctl --context $CTX_CLUSTER1 proxy-config endpoint sleep-dd98b5f48-djwdw.sample | grep helloworld <IP_ADDRESS>:5000                   HEALTHY     OK                outbound|5000||helloworld.sample.svc.cluster.local <IP_ADDRESS>:5000                   HEALTHY     OK                outbound|5000||helloworld.sample.svc.cluster.local
The above is from the example.
From my terminal:
istioctl --context $CTX_CLUSTER1 proxy-config endpoint sleep-854565cb79-8phxb.sample | grep helloworld <IP_ADDRESS>:5000                  HEALTHY     OK                outbound|5000||helloworld.sample.svc.cluster.local
I guess i should see the endpoints from both services here?

You should see an endpoint for the Pod in cluster 1 and the gateway in cluster 2. This means the gateway might not have a LoadBalancer address.
You can check if it has an external IP by running kubectl get services -n istio-system against cluster 2. If that doesn't succeed, you'll need to check your MetalLB install, or find a way to customize your installation so that easy west gateway is a NodePort service.

I have the same situation under different settings. In my case,

on-prem cluster (no LB, NodePort and manually entered externalIP)
aws cluster (classic LB)
and multi cluster/multi network

When I check istioctl proxy-config endpoint on two clusters, AWS cluster works well, but on-prem cluster does not catch AWS's helloworld service. I checked everything on the below diagnostic on two clusters and looks fine to me. What should I check more for this issue?

Can you try the steps here and see if anything solves the problem: https://preliminary.istio.io/latest/docs/ops/diagnostic-tools/multicluster/

I resolved my issue through https://github.com/istio/istio/issues/29359#issuecomment-739258089
It turns out I mis-configured 'meshNetworks' fields, and after I confirmed meshNetwork configuration logs of the istiod, it works well.

You should see an endpoint for the Pod in cluster 1 and the gateway in cluster 2. This means the gateway might not have a LoadBalancer address.
You can check if it has an external IP by running kubectl get services -n istio-system against cluster 2. If that doesn't succeed, you'll need to check your MetalLB install, or find a way to customize your installation so that easy west gateway is a NodePort service.

I have an external IP for cluster2:
kubectl get services -n istio-system
NAME                    TYPE           CLUSTER-IP      EXTERNAL-IP    PORT(S)                                                                      AGE
istio-eastwestgateway   LoadBalancer   <IP_ADDRESS>   <IP_ADDRESS>   15021:32376/TCP,15443:31620/TCP,15012:32033/TCP,15017:30317/TCP              103m
istio-ingressgateway    LoadBalancer   <IP_ADDRESS>    <IP_ADDRESS>   15021:32253/TCP,80:31131/TCP,443:31755/TCP,15012:31228/TCP,15443:31940/TCP   110m
istiod                  ClusterIP      <IP_ADDRESS>              15010/TCP,15012/TCP,443/TCP,15014/TCP                                        112m
I got this message when i install metallb on my cluster:
kubectl apply -f - -n kube-system
Warning: resource configmaps/kube-proxy is missing the kubectl.kubernetes.io/last-applied-configuration annotation which is required by kubectl apply. kubectl apply should only be used on resources created declaratively by either kubectl create --save-config or kubectl apply. The missing annotation will be patched automatically.

If you're running KinD, check that the kubeconfig in your remote secrets doesn't use <IP_ADDRESS> or localhost. Accessing the kubeapi server from within docker needs to use the container IP:
# Kind currently supports getting a kubeconfig for internal or external usage. To simplify our tests,
    # its much simpler if we have a single kubeconfig that can be used internally and externally.
    # To do this, we can replace the server with the IP address of the docker container
    # https://github.com/kubernetes-sigs/kind/issues/1558 tracks this upstream
    CONTAINER_IP=$(docker inspect "${CLUSTER_NAME}-control-plane" --format "{{ .NetworkSettings.Networks.kind.IPAddress }}")
    kind get kubeconfig --name "${CLUSTER_NAME}" --internal | \
      sed "s/${CLUSTER_NAME}-control-plane/${CONTAINER_IP}/g" > "${CLUSTER_KUBECONFIG}"

If you're running KinD, check that the kubeconfig in your remote secrets doesn't use <IP_ADDRESS> or localhost. Accessing the kubeapi server from within docker needs to use the container IP:
# Kind currently supports getting a kubeconfig for internal or external usage. To simplify our tests,
    # its much simpler if we have a single kubeconfig that can be used internally and externally.
    # To do this, we can replace the server with the IP address of the docker container
    # https://github.com/kubernetes-sigs/kind/issues/1558 tracks this upstream
    CONTAINER_IP=$(docker inspect "${CLUSTER_NAME}-control-plane" --format "{{ .NetworkSettings.Networks.kind.IPAddress }}")
    kind get kubeconfig --name "${CLUSTER_NAME}" --internal | \
      sed "s/${CLUSTER_NAME}-control-plane/${CONTAINER_IP}/g" > "${CLUSTER_KUBECONFIG}"

I'm not sure about the last part "> "${CLUSTER_KUBECONFIG}", what should i fill in there?
When i run following command:
    CONTAINER_IP=$(docker inspect "${CLUSTER_NAME}-control-plane" --format "{{ .NetworkSettings.Networks.kind.IPAddress }}")     kind get kubeconfig --name "${CLUSTER_NAME}" --internal | \       sed "s/${CLUSTER_NAME}-control-plane/${CONTAINER_IP}/g"
I get the following, where the ip is the for the container:
`    server: https://<IP_ADDRESS>:6443
name: kind-cluster1
contexts:

context:
cluster: kind-cluster1
user: kind-cluster1
name: kind-cluster1
current-context: kind-cluster1
kind: Config
preferences: {}
users:
name: kind-cluster1
`

and when i run "kubectl config view":
`apiVersion: v1
clusters:

cluster:
certificate-authority-data: DATA+OMITTED
server: https://<IP_ADDRESS>:35553
name: kind-cluster1
cluster:
certificate-authority-data: DATA+OMITTED
server: https://<IP_ADDRESS>:35229
name: kind-cluster2
contexts:
context:
cluster: kind-cluster1
user: kind-cluster1
name: kind-cluster1
context:
cluster: kind-cluster2
user: kind-cluster2
name: kind-cluster2
current-context: kind-cluster1
kind: Config
preferences: {}
users:
name: kind-cluster1
user:
client-certificate-data: REDACTED
client-key-data: REDACTED
name: kind-cluster2
user:
client-certificate-data: REDACTED
client-key-data: REDACTED
`

I found one of the ways to solve the dialing issue is with providing kubernetes api ip directly: istioctl x create-remote-secret --context=... --name=... --server=https://docker-ip:6443 which you can get with docker inpect kind
And even better is that when I do: istioctl -n sample --context=${CTX_CLUSTER2} proxy-config endpoint "$(kubectl get pod --context="${CTX_CLUSTER2}" -n sample -l app=sleep -o jsonpath='{.items[0].metadata.name}')" | grep helloworld
I get:
<IP_ADDRESS>:5000                  HEALTHY     OK                outbound|5000||helloworld.sample.svc.cluster.local
<IP_ADDRESS>:15443                HEALTHY     OK                outbound|5000||helloworld.sample.svc.cluster.local

Assuming that second ip being eastwest's gateway ip with tls port is correct.
Still however, when I send request from sample app, it only ever sends requests to local pod.

I found one of the ways to solve the dialing issue is with providing kubernetes api ip directly: istioctl x create-remote-secret --context=... --name=... --server=https://IP:6443 which you can get with docker inpect kind
Also after adding certs if it's best to literally restart everything (if you are not paying attention to order or operations)


Ideas regarding "nu"

Mutation as the name for "nu"
Data prototype has a concept of nu for performing data-to-data transforms.
Firstly, this name is not descriptive at all, and while it makes sense in the context of a pure math description, programmers are unlikely to have that context.
A more descriptive name is preferable.

"Transforms" (and by extension, probably other "trans-" prefixed words) are confusing because mpl already uses this term to mean something specific.
"converters" is used by mpl to mean specifically "unit converters", so potentially falls into a similar boat

OTOH, unit conversion is a specific case of this system, so potentially an option
That said, its not directly the converter, it is rather some level of adaptation needed

Thus I propose the term "mutator", though certainly open to other options.
The term "mutate", while used in a few docstrings, tests, and variable names in mpl, is not really used in any type names or public signatures outside of Transforms.mutated[xy]? which return booleans.
Also has the advantage of using the same vowel sound as nu, so may help those who are familiar with the mathematical framing connect the concept.
Kinds of Mutators
compute
{'x': A} -> {'x': B}

Using the same variable name but achieving a (potentially) different value.
Identity is a subset of this.
spelling on current main:
nu={"x": lambda x: x+1}

rename
{'x': A} -> {'y': A}

Actually somewhat redundant to reuse + delete
spelling on current main:
nu={"y": lambda x: x}

reuse
{'x': A} -> {'x': A, 'y': A}

e.g. "color" expanding to "facecolor" and "edgecolor"
spelling on current main:
nu={"y": lambda x: x, "x": lambda x: x}

(or including "x" in expected/required keys, but including the y lambda)
combine
{'x': A, 'y': B} -> {'z': Z}

spelling on current main:
nu={"z": lambda x, y: x+y}

spelling with #17:
mutual mutation
{'x': A, 'y': B} -> {'x': C, 'y': D}

Importantly, the computation for C and D both depend on the values from A and B.
Potentially has some performance concerns as often perhaps they can actually be computed together, but some frameworks may require computing C and D separately.
spelling on current main:
nu={"x": lambda x, y: x+y, "y": lambda x, y: x-y}

spelling with #17:
NOT POSSIBLE.
While in most cases, #17 will upcast a single function to a list containg only that one function (plus units, if applicable), unlike main, it does operations sequentially.
Thus the value of x gets overridden by the first process, and it is not the same when processing y
If x=1, y=2, then main with the nu spefcified above will give an output of x=3, y=-1. #17 will give an output of x=3, y=1.
deletion
{'x': A} -> {}

spelling on current main:
Neither provide a nu for "x" nor include in required/expected keys (as those include a default identity)
chaining
{'x': A} -> {'y': B} -> {'z': C}

Importantly may include more complex operations as each step
spelling on current main:
NOT POSSIBLE, at least not in an elegant/composable way
nu={"z": lambda x: (lambda y: y+1)(x) + 1}

Is kind of the idea, but doesn't allow inspection or mutation of the internal structure.
Nor does it provide a way to e.g. add units in automatically aside from strictly before or strictly after.
If you also want to keep "y" in the final, you need to pass (and compute) it separately
spelling with #17:
nu={"x": [lambda x: x+1, lambda x: x+1], "z": lambda x: x}

(which will necessarily keep both x and z, set to the same value)
or
nu={"y": lambda x: x+1, "z": lambda y: y+1}

(which will necessarily keep both y and z, with different values)
While chaining was the purpose of #17, it's implementation is less elegant than I would like.
It works reasonably well when chaining things with the same name, but falls apart rather quickly when trying to change names as in this example.
The deeply ingrained order dependence feels awkward and likely to do things that are not intended.
E.g. in the last example, did the user intend for y in the computation of z to be the newly modified version (perhaps not, but maybe).
If you flip the y and z it looks the same, but is actually different on that branch.
But I think having intermediate values is useful.
A proposal
The behavior on main has advantages including order independence of nu and relatively easily doing computations with multiple inputs and outputs
The behavior on #17 allows treating units as just another nu function, i.e. separating individual transforms into single logical functions.
It also has the advantage of being able to use intermediate calculations, though with a significant drawback of order dependence and not being the most understandable system.
#17 introduces a list of functions for each variable to accomplish its goals.
The proposal then is to invert that a bit and instead of having a list of functions for each variable, to have a list of "mutation stages", each of which act as the behavior on main today.
Thus if you want precisely the behavior of main, it is identical to just having a list of one stage.
But if you want intermediate values (and units behavior), you add separate stages.
I've not yet written code for this, but I don't think it'll be that hard to do so.
I think I would lean towards separate objects to manage the interactions, rather than relying on a pure list of dictionaries.
This would allow us to give stages names, which in turn allows a (relatively) ergonomic way of saying: [MyStagePreUnits("pre units", ...), "units", MyStage("post units", ...)]
Mutation stages could each have "expected/required" keys, rather than just an overall. (with the default being to pass every key input plus every nu).
More radical ideas/fallout that may be enabled (but I haven't thought through completely)

Doing the caching at the stage level

if so, do containers actually just become a MutationStage?

That may be a bridge too far, and keeping a divide may be more useful, even if it could collapse

Do FuncContainers actually cease to exist, even if not all containers do?

The container would be the arguments to the func rather than the functions themselves. functions become a Mutation Stage.

Does the behavior that reaches into axes to get the transform/size become an optional MutationStage?

Would decouple the majority of the stack from matplotlib specific code, potentially making this idea viable for other plotting/data analysis libraries.
Only FuncContainer even uses it at this time (other than passing)
How does the renderer/axes info get introduced if it does become optional?

perhaps the "core" gets implemented independent of this, but a mpl-specific wrapper introduces this and mpl units behavior?

Does argument parsing/defaulting just become a "MutationStage"?

These Ideas may fall a little far into "I have a hammer so everything looks like a nail", but I could see a path where each of these make sense.

"mutator" is not a great name because it implies in place which I do not think we want.  Agree it is unfortunate that we already use the words "conversions" and "transform" in the code base.
I think than both the unit conversion and what we currently call "transforms" are part of this stack is the specialized post-unit x,y -> x, y (as are the norm + colormap) so I think trying to re-claim one of those names

While in most cases, #17 will upcast a single function to a list containg only that one function (plus units, if applicable), unlike main, it does operations sequentially.
Thus the value of x gets overridden by the first process, and it is not the same when processing y

Couldn't we solve this by changing it to start each of the lists with the initial data and then merge the results at the end?
I would also have the expectation that for
nu={"x": [lambda x: x+1, lambda x: x+1], "z": lambda x: x}

and {'x': 1} to get back {'x': 3, 'z': 1} as the order in which we chose to evaluate 'x' and 'z' for the output should not matter (yes with dictionary and kwarg stability it could matter and it would be well defined / stable / etc but I think it is too surprising).
We have a bunch of short-cuts where we push the affine part of transformations down into the renderer (e.g. this is why https://github.com/matplotlib/matplotlib/blob/1e8821dff3aeebf0654ec66d5ebf97080768ed09/lib/matplotlib/backend_bases.py#L195-L197 takes a trans argument).  If we do go with an object rather than just dictionaries then in principle it should be possible for those things to describe them selves well enough to participate in the affine transformation and for these objects to detect if they have been handed one of our mtransforms.TransformNode instances and be able to merge with its neighbors.
as an aside even though we do push the affine transforms down, we still pre-compute what those transforms are based on the current view limits so if we tried to push it to a GPU you could do loupe  style zooming / panning / rotation (well maybe not on text) because you could stick the same transform on the outside of what ever linear transform we passed in (I think), but can not e.g. change the limits because that would require re-computing the transforms and we do not currently have a way to pass how to do that to the backend.
It is probably worth your time @ksunden to read and fully understand how the matplotlib.transforms deal with both affine/non-affine merged transforms and separable/non-separable (x,y) computations (e.g. (linear, linear) is separable, any map transforms are not).


Fixed the issues encountered when trying to capture Dilan frames

After these changes, I'm now able to capture Dilan frames succesfully

Thanks, that looks good now. There are still a few formatting issues highlighted on travis to fix, and then if you could squash the multiple commits together it will be ready to merge.
If you'd prefer that I squash the git commits together just let me know.

I'm relatively new to Git (we use P4 at work). How do you squash the commits? I tried 'git rebase -i' but afte that (before I tried to push), Git asked me to pull first.

I fixed the last formatting issue, and then I do 'git commit --amend && git push'.  But then my push was rejected because Git says my branch is behind its remote counterpart. I'm wondering what should be correct workflow in my situation. Thanks

In this case you need to specify git push --force to allow git to overwrite the previous contents of the branch.

I've squashed the commits and merged this in manually as ad0678a8868c7fcd82f32ec912eee93c60055a4f. Thanks for the fix!


tests, coldcard: cleanup backup files

The Coldcard backup test produces a backup file which just sits in the test directory. Remove it after the test so it stops polluting the directory.

ledger signmessage test timed out, kicked


(0) Invalid argument:  Key: joints.  Can't parse serialized Example.

I created a custom keypoint dataset with MS COCO format and then created tfrecords and then change yaml files, but when training I faced the following error:

Running on single GPU  /device:GPU:0
Number of accelerators:  1
Training hrnet_w32_256x192 (28.59M / 7.65G) on GPU/CPU for 200 epochs
Traceback (most recent call last):
File "train.py", line 188, in
model, meta_data = train(strategy, cfg)
File "train.py", line 121, in train
train_step(train_iterator)
File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/eager/def_function.py", line 780, in call
result = self._call(*args, **kwds)
File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/eager/def_function.py", line 840, in _call
return self._stateless_fn(*args, **kwds)
File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/eager/function.py", line 2829, in call
return graph_function._filtered_call(args, kwargs)  # pylint: disable=protected-access
File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/eager/function.py", line 1848, in _filtered_call
cancellation_manager=cancellation_manager)
File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/eager/function.py", line 1924, in _call_flat
ctx, args, cancellation_manager=cancellation_manager))
File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/eager/function.py", line 550, in call
ctx=ctx)
File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/eager/execute.py", line 60, in quick_execute
inputs, attrs, num_outputs)
tensorflow.python.framework.errors_impl.InvalidArgumentError: 3 root error(s) found.
(0) Invalid argument:  Key: joints.  Can't parse serialized Example.
[[{{node ParseSingleExample/ParseExample/ParseExampleV2}}]]
[[IteratorGetNext]]
[[StatefulPartitionedCall/hrnet/s3/m0/b11/relu1/Relu/_902]]
(1) Invalid argument:  Key: joints.  Can't parse serialized Example.
[[{{node ParseSingleExample/ParseExample/ParseExampleV2}}]]
[[IteratorGetNext]]
(2) Invalid argument:  Key: joints.  Can't parse serialized Example.
[[{{node ParseSingleExample/ParseExample/ParseExampleV2}}]]
[[IteratorGetNext]]
[[ConstantFolding/PartitionedCall/gradients/hrnet/s1/m0/b01/conv3/Conv2D_grad/ShapeN-matshapes-1/_10708]]
0 successful operations.
0 derived errors ignored. [Op:__inference_train_step_133797]
Function call stack:
train_step -> train_step -> train_step

for this issue I changed the input shape to (1920,1088) but it turned to the following error

Running on single GPU

/device:GPU:0
Number of accelerators:  1
Traceback (most recent call last):
File "train.py", line 188, in
model, meta_data = train(strategy, cfg)
File "train.py", line 74, in train
model = EvoPose(cfg)
File "/content/drive/My Drive/evopose2d/nets/evopose2d.py", line 188, in EvoPose
**args)
File "/content/drive/My Drive/evopose2d/nets/evopose2d.py", line 250, in block
name=name + 'expand_conv')(inputs)
File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/keras/engine/base_layer.py", line 926, in call
input_list)
File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/keras/engine/base_layer.py", line 1095, in _functional_construction_call
with graph.as_default(), backend.name_scope(self._name_scope()):
File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/ops.py", line 6631, in enter
scope_name = scope.enter()
File "/usr/lib/python3.7/contextlib.py", line 112, in enter
return next(self.gen)
File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/ops.py", line 4190, in name_scope
raise ValueError("'%s' is not a valid scope name" % name)
ValueError: 'block2{_expand_conv/' is not a valid scope name

It appears scaling the network to that input size causes issues with layer naming. In your config file, try setting MODEL.DEPTH_COEFFICIENT and MODEL.WIDTH_COEFFICIENT to something like 0.5 or 0.25.


Big Sur: Tear Down being called after /session is received

On anything but Big Sur this works just fine (I do not see the Tear Down line).
On Big Sur, while testing I notice that right after a /session is received I see a "Tear Down" show up in the Driver's stdout. This does not happen on non-Big Sur OS Versions.
[21:10:34.173]: Send request to driver at <IP_ADDRESS>:10100 with options: {"uri":"/session/477AD6D0-968E-4934-864E-01F0483D924C/source?format=xml","method":"get"}
[21:10:34.174]: [driver][application][stdout]     t =    61.46s Tear Down
[21:10:34.175]: [driver][application][stdout]     t =    61.48s Find the Application 'com.facebook.archon.developerID'
[21:10:34.421]: Got app source:
[21:10:34.421]: <?xml version="1.0" encoding="UTF-8"?>

It seems to be an XCTest issue, which only Apple could fix

What do you mean by that?

I mean that mac2 driver is just a simply wrapper over Apple's XCTest framework. And only Apple itself could fix their bugs

What makes you think it's their bug?

the fact that it was working properly in previous OS versions and stopped working now while mac2 source is still the same
The attached log where Tear Down is called without any visible reason (maybe there was something that triggered it before, but it was not provided though)


Added the VocabHunter tech blog

This adds that VocabHunter tech blog that includes articles such as the following:

Installable Java Apps with jpackage
Building a JavaFX Search Bar
Dependency Injection in JavaFX
User Interface Testing with TestFX

Thank you for your contribution.
Every person needs a photo. (named photo.jpeg in the same folder as the readme)
In the meantime, I will make sure the validation is executed on future pull requests.

Thanks @FlorianKirmaier .  I've added the missing photo.  Let me know if you need anything else.

I've now fixed the data validation!
If you merge with staging, every commit should be verified for certain criterias.
The checks are now also properly triggered by pull requests.
If you look into the other blogs, you see 3 images. Your blog will need similar images.
This is no also properly verified if you merge with staging.

Hi @FlorianKirmaier .  I've added the missing files.  The tests all seem fine with the exception of a test that is also failing in staging.  It's DataRepositoryTest and the problem is unrelated to my contribution:
checking url: https://github.com/kordamp/ikonli/releases/download/early-access/ikonli-browser-early-access-linux.zip
response: 404

Than you ! (Build was green, because I've removed the downloads in the meantime ...)
I'm merging now and updating the website.

Great!  And well done on this interesting JavaFX initiative.  It's cool to see people's work being shared like this.


.htaccess

If using apache make sure the .htaccess file has exists beside index.php

no, the .htaccess file does not exist.
What should I put in it?

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)\?*$ index.php/$1 [L,QSA]

Copy .htaccess from source


Support for scala 2.12

I've been using my own for of spark-cassandra-connector with scala-2.12 from the day one and it works without any problems. This PR brings back cross-version build and adds scala-2.12 to it.
sbt test and sbt assembly succeed for both version of scala.
If it looks good then documentation should be tweaked as well.
One problem that I faced: when I try to load the project into Intellij or run integration tests it tries to pull 'spark-1.4.0' for some reason:

[error] (cassandra-server/*:coursierResolutions) coursier.ResolutionException: Encountered 1 error(s) in dependency resolution:
[error]     org.apache.spark:spark-core_2.12:1.4.0:

Not sure where it comes from. Is 'cassandra-server' project still relevant?

Sorry, missed the existing PR. Closing this one.


support nested abstract clafers

abstract Component
    abstract Port

now, Port can be extended as:
Example 1:
WinController : Component
    cmd : Port
    abstract ExceptionPort : Port

NOTE: the compiler also allows declaring ExceptionPort at the top-level but only for abstract clafers like this
WinController : Component
    powerOut : ExceptionPort

abstract ExceptionPort : Port

however, in the IR, ExceptionPort is physically moved as a sibling of Port as in the Example 1.
Relevant test cases are:

nestedInheritanceWithReference
NestedInheritanceAndReference2
gi67-extending-nested-abstract

Implemented abstract clafers nested under abstract clafers.
TODO: abstract clafers nested under concrete clafers.


kafka logMessage messages appear encrypted

When I run cf nozzle --debug I can see logMessage messages, however, through Kafdrop, I see the following as an example:
{ "origin": "rep", "eventType": 5, "timestamp":<PHONE_NUMBER>070602200, "deployment": "cf", "job": "diego_cell", "index": "63eee8ae-6215-48de-93eb-e70d6f43b622", "ip": "<IP_ADDRESS>", "tags": { "source_id": "9486d561-550c-46d0-910f-4f9ba01b3e2d" }, "logMessage": { "message": "V0FSTnxbMjAxOS0wMS0wNyAyMzo1MDowMl18by5hLmsuYy5jLmkuQ29uc3VtZXJDb29yZGluYXRvcnxbY29udGV4dD1kZWZhdWx0XSBbdGhyZWFkPXBvb2wtMS10aHJlYWQtMV18IFtDb25zdW1lciBjbGllbnRJZD1jb25zdW1lci01LCBncm91cElkPXN1YnNjcmlwdGlvbl0gQXN5bmNocm9ub3VzIGF1dG8tY29tbWl0IG9mIG9mZnNldHMge2hhbGxtYXJrX2FsZXJ0X291dC0wPU9mZnNldEFuZE1ldGFkYXRhe29mZnNldD0wLCBtZXRhZGF0YT0nJ319IGZhaWxlZDogQ29tbWl0IGNhbm5vdCBiZSBjb21wbGV0ZWQgc2luY2UgdGhlIGdyb3VwIGhhcyBhbHJlYWR5IHJlYmFsYW5jZWQgYW5kIGFzc2lnbmVkIHRoZSBwYXJ0aXRpb25zIHRvIGFub3RoZXIgbWVtYmVyLiBUaGlzIG1lYW5zIHRoYXQgdGhlIHRpbWUgYmV0d2VlbiBzdWJzZXF1ZW50IGNhbGxzIHRvIHBvbGwoKSB3YXMgbG9uZ2VyIHRoYW4gdGhlIGNvbmZpZ3VyZWQgbWF4LnBvbGwuaW50ZXJ2YWwubXMsIHdoaWNoIHR5cGljYWxseSBpbXBsaWVzIHRoYXQgdGhlIHBvbGwgbG9vcCBpcyBzcGVuZGluZyB0b28gbXVjaCB0aW1lIG1lc3NhZ2UgcHJvY2Vzc2luZy4gWW91IGNhbiBhZGRyZXNzIHRoaXMgZWl0aGVyIGJ5IGluY3JlYXNpbmcgdGhlIHNlc3Npb24gdGltZW91dCBvciBieSByZWR1Y2luZyB0aGUgbWF4aW11bSBzaXplIG9mIGJhdGNoZXMgcmV0dXJuZWQgaW4gcG9sbCgpIHdpdGggbWF4LnBvbGwucmVjb3Jkcy4=", "message_type": 1, "timestamp":<PHONE_NUMBER>070602200, "app_id": "9486d561-550c-46d0-910f-4f9ba01b3e2d", "source_type": "APP/PROC/WEB", "source_instance": "0" } }
Is the nozzle encrypting the message by any chance? Want to rule it out as the culprit. Thanks in advance.

I ran into this as well. I wanted to set up filters in Kafka based on fields within the log message but since it was base64 encoded I couldn't and so I also needed to disable base64 encoding. Doing that caused other problems however since the data could include invalid JSON characters such as non-printables or a double-quote character. To get around this I had to write my own method to cleanse the data (which I can share if desired). So just beware if taking this approach.


Don't have add-in in Apps for Office/Shared Folder after Sideload Office Add-ins

I finish all step of this guide. Create folder Manifest, set  Catalog Url:  \\PCNAME\Manifest and restart application but nothing show up in  Apps for Office>Shared Folder. Does anybody know this issue?

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

ID: 0ddce0bd-5c66-c2cb-0640-ee4d5bd401c5
Version Independent ID: b5d4bc26-a43e-4a85-e7d5-fe4fc4ec3d0d
Content: Sideload Office Add-ins for testing
Content Source: docs/testing/create-a-network-shared-folder-catalog-for-task-pane-and-content-add-ins.md
Product: office 365
GitHub Login: @o365devx
Microsoft Alias: o365devx

Hi @salingun. What's the version & build number of your version of Office? Have you added the <Requirements> element to your manifest file? See here for more information.

Thanks your reply. I go to Setting/Account/About Project and see version is 15.0.4420.1017, I try to add  to manifest file but issue still there, nothing show up in shared folder

I I just created a project in VS 2015 and when start it, it catch error message: "None of the apps in your project can be activated in the target. The manifest file of one or more apps contain API sets or Office applications that are not supported by the target Office client. To debug those apps, update manifest files to exclude any unsupported API sets or Office applications, and then start the project again. Alternatively, you can debug your apps by using Office 365 as a target."

I'm trying to install the service pack as this guide https://docs.microsoft.com/vi-vn/office/dev/add-ins/develop/update-your-javascript-api-for-office-and-manifest-schema-version. I'm not sure it can be fixed, but I think I need to do something with it

Thanks for replying @salingun. Can you try removing the <Requirements> element from your manifest file? After doing that, close and re-open Project. Thanks!

I tried removing, close and re-open Project many time but shared folder is still the same. The office version 15.0.4420.1017 is fine to run and test add-in? I think the problem is related to the error that appears when running App for office project on VS "None of the apps in your project can be activated in the target. The manifest file of one or more apps contain API sets or Office applications that are not supported by the target Office client. To debug those apps, update manifest files to exclude any unsupported API sets or Office applications, and then start the project again. Alternatively, you can debug your apps by using Office 365 as a target."

Hi @salingun, is it possible to share the content of your manifest file with us? You can anonymize urls or other private information as needed. Thanks!

Hi @salingun, I've confirmed that the version of Project that you listed above does not support the Web add-in model.

I've updated the docs with the version support information here

Thanks for replying @Reezaali , I will update version of Project to run it again, I will get back to you for result. Thanks!

Hi @Reezaali , to day I update ms office & ms project in my pc. It don't have 15.1 version, I found some topic remind update sp1 of office and project, I did it . After that, ms office and project updated to 15.0.4569.1506, and my add-in can work normally. Here I pick the link to download sp1 package if someone need it later. Thanks for your support @Reezaali
SP1 Office: https://www.microsoft.com/en-US/download/details.aspx?id=42006
SP1 Project: https://www.microsoft.com/en-us/download/details.aspx?id=42020

Hello @salingun , I have Office 365 (Version 16.0.12228) and I am unable to see the add ins in shared folder.Updating is the only change you made for your add in to show up? Thank you!


Won't work with Erlang 18

Erlang 18 introduces changes to the :public_key library which break the key_utils module.

Will you fix the issue? I wonder if this elixir library is reliable and still maintained (Elixir is actually becoming more popular)

I fixed this on my fork "https://github.com/philosodad/bitpay-elixir/commit/7569d25ce61c3176450b6cbed0e0766bea6a70fb" but I'm no longer a committer on this project.

Thank you for sharing!
Sad however that this repo looks virtually unmaintained.


Fix progress bar when using filter and specs

Make the correct calculation when filtering on minitest/spec and using the progress reporter

When running with minitest/spec style tests and using filtering on class part, the tests are correctly executed, but the progress bar reporter doesn't. The total count of tests is at 0, and the output is the following :
  0/0: [===================================] 100% Time: 00:00:00, Time: 00:00:00
WARNING: Your progress bar is currently at 0 out of 0 and cannot be incremented. In v2.0.0 this will become a ProgressBar::InvalidProgressError.
  0/0: [===================================] 100% Time: 00:00:01, Time: 00:00:01

This patch ensures the right count is done and as such the output is correct.

Hello, @kern @os97673 ?

Hi @os97673, I applied the changes, is it ok?

The changes looks clean now but I have a question (wrote it in the code)

Could you please add test for restrictive pattern we discussed (such as /^pattern$/) to make sure we will not break this functionality again.

Thank you for the contribution, patience and the tests :)


[SPARK-26955][CORE] Align Spark's TimSort to jdk11 implementation

What changes were proposed in this pull request?
Spark's TimSort deviates from JDK 11 TimSort in a couple places:

stackLen was increased in jdk
additional cases for break in mergeCollapse: n < 0

In the PR, I propose to align Spark TimSort to jdk implementation.
How was this patch tested?
By existing test suites, in particular, SorterSuite.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/8134/
Test PASSed.

Test build #102582 has started for PR 23858 at commit 0bd8075.

Can one of the admins verify this patch?

Test build #102582 has finished for PR 23858 at commit 0bd8075.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/102582/
Test FAILed.

jenkins, retest this, please

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/8154/
Test PASSed.

Test build #102603 has started for PR 23858 at commit 0bd8075.

Test build #102603 has finished for PR 23858 at commit 0bd8075.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/102603/
Test PASSed.

Merged to master


L.tileLayer error when zoomReverse and detectRetina set true

When zoomReverse and detectRetina set true at the same time, tileLayer occur error.
This is my code:
L.tileLayer("http://gis.sinica.edu.tw/googlemap/AM50K_1944/{z}/{x}/IMG_{x}_{y}_{z}.png", {             zoomReverse: true,             detectRetina: true,             zoomOffset: -1  }).addTo(map);
demo
I think the adjusted zoomOffset may be wrong.
However, it would work when I modified the lines to the initialize function (as the following).
https://github.com/Leaflet/Leaflet/blob/master/src/layer/tile/TileLayer.js#L90
!options.zoomReverse && options.zoomOffset++;

Which Leaflet version are you using?
Seems to be working with latest master: http://playground-leaflet.rhcloud.com/xoz/edit?html,output

I am using latest master version Leaflet.js, Chrome49.0.2623.110 (64-bit), os x el capitan.
If detectRetina don't set true:http://playground-leaflet.rhcloud.com/boz/1/edit?html,output

When zoomReverse and detectRetina set true at the same time:http://playground-leaflet.rhcloud.com/tih/edit?html,output
It occurs error.

However, it would work when I modified the lines to the initialize function:http://playground-leaflet.rhcloud.com/seca/edit?html,output


Frontend Rewrite

This is the front end rewriting PR as we have discussed on August 2nd, 2017.
It mainly includes:

Renaming almost everything in the front end;
Add worker pool infrastructure and its test cases;
Change the state machine's routine of NetworkConnection(previously known as LibeventSocket) to avoid race conditions
Define clear protocol handler hierarchy as well as related class interfaces to enhance extendability.

Coverage decreased (-72.5%) to 0.0% when pulling e58524aedaab909c8e7059fcc59ac96a60c8d46a on Peloton-MultiThread:frontend_rewrite into 1ac48311dca16978f6cf47687b0b4c57d1e24380 on cmu-db:master.


Aspire.Hosting.Dcp.dcpctrl.ExecutableReconciler[0] - failed to set output writers to capture stdout/stderr

Issue from the .NET Evolution Discord:

Hey everyone, did replicas break in the new release? Apphost is breaking with the following error:
Aspire.Hosting.Dcp.dcpctrl.ExecutableReconciler[0]
     failed to set output writers to capture stdout/stderr     {"Executable": {"name":"api-b0ldos8"}, "Reconciliation": 3, "error": "target writer already set"}

Code is:
var builder = DistributedApplication.CreateBuilder(args);

var db = builder
    .AddSqlServer("db")
    .AddDatabase("dbdata");

builder
    .AddProject<Projects.Api>("api")
    .WithReference(db)
    .WithHttpsEndpoint(65001)
    .WithReplicas(3);

builder.Build().Run();

To repro the issue, run the attached AppHost project: AppHost1.zip

From looking at the Aspire orchestrator sources (haven't tried with Rider/plugin yet, sorry), this error occurs most likely because the plugin returns the same run ID for two different executions of the same project/replica.


Embeds of packages is incorrect for non-cloud projects

Expected Behaviour
If my aemVersion != "cloud", then the embeds in the all project should be /etc/packages/, since /apps/-packages/<application|content>/install is supported only in AEM Cloud version.
Actual Behaviour
For all types of AEM version, its currently creating the embeds in /apps/-packages/<application|content>/install. Non cloud version doesn't install the package from /apps location.
Reproduce Scenario (including but not limited to)
Steps to Reproduce

Create a sample project with aemVersion=6.5.0
Build the project and manually uplooad only the "appId.all-.zip" package to AEM
Install the package. This will not install all the embedded projects

Platform and Version
AEM 6.5.x

Even in AEM <= 6.5.x packages should be installed via the OSGi installer from /apps/.../install! To debug this issue further please check the osgi-installer log for the embedded packages at /system/console/osgi-installer

you are right @kwin. I didn't realize the /apps/../install. Thank you!


Verify CUDA environment variables

Currently enroot trusts CUDA environment variables and calls nvidia-container-cli without checking if drivers are install and whether shared libraries are present, e.g. libnvidia-ml.so.1.
This is problematic on Slurm cluster with a mix of CPU and GPU nodes. Slurm copies environment variables from the head node and there is little control over those. So a user with CUDA environment bars set in their shell on a login node cannot run job on CPU nodes, as enroot will error out as it fails to find libnvidia-ml.so.1.
$ NVIDIA_VISIBLE_DEVICES=all srun --container-image=centos grep PRETTY /etc/os-release
slurmstepd: error: pyxis: container start failed with error code: 1
slurmstepd: error: pyxis: printing enroot log file:
slurmstepd: error: pyxis:     [WARN] Kernel module nvidia_uvm is not loaded. Make sure the NVIDIA device driver is installed and loaded.
slurmstepd: error: pyxis:     nvidia-container-cli: initialization error: load library failed: libnvidia-ml.so.1: cannot open shared object file: no such file or directory
slurmstepd: error: pyxis:     [ERROR] /etc/enroot/hooks.d/98-nvidia.sh exited with return code 1
slurmstepd: error: pyxis: couldn't start container
slurmstepd: error: spank: required plugin spank_pyxis.so: task_init() failed with rc=-1
slurmstepd: error: Failed to invoke spank plugin stack

We had that recenlty on our cluster, but I would suggest that this is nothing enroot needs fixing for.
If you environment says "Use GPUs", and Slurm proagates that fact, it is not enroot's failure to act as if there are GPUs (my opinion).
I suggested to my users to
export NVIDIA_VISIBLE_DEVICES=void

and
srun … --container-env=NVIDIA_VISIBLE_DEVICES …

when using pyxis.

It would say that ‘98-nvidia.sh’ could just use a few simple preflight
checks, e.g. if libraries are available, something like
‘nvidia-container-cli --version’ might suffice. Or perhaps devfs could be
checked. The other script, ‘99-mallanox.sh’ has a few extra checks,
including sysfs.

There is a "preflight check": https://github.com/NVIDIA/enroot/blob/master/conf/hooks/98-nvidia.sh#L33
If the Env var is unset or void, it silently stops.
This is sane and useful behavior.
If you do  not want GPU behavior, do not set these Env vars.

There is a "preflight check": https://github.com/NVIDIA/enroot/blob/master/conf/hooks/98-nvidia.sh#L33
If the Env var is unset or void, it silently stops.

Yes, I have seen this, however the rest of the code blindly assumes that nvidia-container-cli will be able to startup, but it's not when GPU driver is missing and it cannot load libnvidia-ml.so.1.
What I'm suggesting is a more concrete test that tries to run nvidia-container-cli --version or some other simple command like that, and/or checks if libnvidia-ml.so.1 exists etc.
I am speaking of additional verification, see how 99-mellanox.sh is actually a lot more thorough and doesn't assume all env vars are correct.
https://github.com/NVIDIA/enroot/blob/09ae4b2c18a18ed5ab34b7697006aa18697c4cec/conf/hooks/99-mellanox.sh#L42-L63
One big issue with env vars in general, is that users cannot always control them and may be unaware of what environment variable they have. So any applications that relies on environment variables for configuration, should ideally take additional steps to verify them.

Or you could remove 98-nvidia.sh on the machines w/o GPUs…

Or you could remove 98-nvidia.sh on the machines w/o GPUs…

Yes, that's a workaround I've arrived at, just hoping maintainers might be willing to find a better solution.

Ultimately, it's up to you which hook you deploy; if these "hooks" were integral part of enroot, the devs would probably not have them externalised into hook.
But again, that's just my opinion :)

Or add the following on your CPU nodes:
# /etc/enroot/environ.d/50-cpu.env
NVIDIA_VISIBLE_DEVICES="void"

You can also write your own hook which sets this conditionally if you're using GRES.

Or add the following on your CPU nodes:
# /etc/enroot/environ.d/50-cpu.env
NVIDIA_VISIBLE_DEVICES="void"

I am pretty sure we have tried this and it didn't work, are you sure this would be loaded before hooks?

You can also write your own hook which sets this conditionally if you're using GRES.

Any pointers? I don't see much docs around the hooks and from reading '98-nvidia.sh' and '99-mellanox.sh', I am not sure I can tell how these are meant to work. First one does an 'exec', while the second would run after that, but how is that meant to happen if there was an 'exec'?

I am pretty sure we have tried this and it didn't work, are you sure this would be loaded before hooks?

That's what we use on our clusters, it should work fine.


Retry transactions in filesystem test.

Also change test to use the short invocation of the testserver

This change is

circleci will most likely fail until https://github.com/cockroachdb/cockroach-go/pull/8 is merged.

LGTM


[HUDI-5544] Improve log msgs during bulk insert

Change Logs
Currently a log msg that says "Creating new file for partition path" is generated every time the current partition changes, even when no new file is being created (which is confusing).
Also if you have data flowing from multiple topics, with even a slight lag between them, you can wind up with current partition bouncing back and forth when the event time is close to the partition boundary. This in turn generates (in our case) upwards of 1M messages, given our data rate is between 5 and 20M records/second.
Impact
N/A
Risk level (write none, low medium or high below)
low
Documentation Update
N/A
Contributor's checklist

[X] Read through contributor's guide
[X] Change Logs and Impact were stated clearly
[X] Adequate tests were added if applicable
[ ] CI passed

Thanks @danny0405


fixed

here ya go!

You can merge this entire thing feel free to test any of this before merging using my bot that should be on over night. Remember to create a new collection before pushing to prod.

Thank you for the help with this and sorry for the slow responses :)


LinearizedEuler3D

Thanks @lchristm ! I slightly adjusted the wall example, the rest I left untouched.

IMO, this is ready to go - any mergers @andrewwinters5000 @jlchan @ranocha @sloede ?

Note: EOC numbers to confirm expected convergence can be found here:
https://github.com/trixi-framework/Trixi.jl/pull/1903#discussion_r1565415218