AFXMLParserResponseSerializer does not return nil for invalid responses when message is empty

I have a response returning a 202 with an empty body and a content type of application/octet-stream, as expected.
I'm using a compound response serializer and one of the serializers is an AFXMLParserResponseSerializer.
None of my serializers accept octet-stream, so I would expect a nil responseObject. However, in validateResponse:data:error, when the response doesn't match the acceptableContentTypes it will only set a validationError if the response data is non empty:
if ([data length] > 0 && [response URL]) { validationError=... }
Then, because the validationError is not nil, the XML serializer's responseObjectForResponse:data:error will not see the error and instead of returning nil, it will return a NSXMLParser initialized with empty data. Because the data is empty and not invalid xml, a NSXMLParser object is returned.

I believe the AFXMLParserResponseSerializer is correct to return a NSXMLParser, but it shouldn't when used in a AFCompoundSerializer.

validationError created by,
                validationError = AFErrorWithUnderlyingError([NSError errorWithDomain:AFURLResponseSerializationErrorDomain code:NSURLErrorCannotDecodeContentData userInfo:mutableUserInfo], validationError);

so the code is  NSURLErrorCannotDecodeContentData
then，
        if (!error || AFErrorOrUnderlyingErrorHasCodeInDomain(*error, NSURLErrorCannotDecodeContentData, AFURLResponseSerializationErrorDomain)) {
            return nil;
        }

it detects the error is NSURLErrorCannotDecodeContentData , so return nil.
why a NSXMLParser object is returned  in your case ?
@mozeryansky

The problem is that validationError is not created.
The content type of my response is invalid, so it should return a "unacceptable content-type" error.
However, the data in the response is zero length, so this line:
if ([data length] > 0 && [response URL]) {
is false, thus the validationError is never created and error is not set to anything new.
Because validationError is still nil, error will still be nil, and the code you referenced that should return nil will not be called. So the processing continues to the part where it creates the NSXMLParser.

@mozeryansky Would you like to create PR with a simple test demonstrating the problem and a proposed fix?
Thanks!

Sure, I'll try create PR with a test sometime soon.

@mozeryansky In your case did you have a nil NSData or an empty NSData?

I'm not even sure why we have the data length check since we are guarding against it being nil below. It looks like this check has been in there since at least 2.0.
@cnoon @jshier @kylef thoughts?

I don't have the source to the project anymore, but I believe it was an empty NSData because nil would not have crashed my application.

@kcharwood I'm not sure why there is a check like this.
I think instead we should only perform this check if there is an actual MIMEType, and adapting the previous if statement as follows:
if (response.MIMEType && self.acceptableContentTypes && ![self.acceptableContentTypes containsObject:response.MIMEType]) {

Therefore when no content-type is sent such as for an empty body it will not cause an error. If a content type is provided and we do not know about it, it will then error.
This would make the assumption that if an unknown content-type is provided, we would expect a body.

I may have thought of a case last night.
Consider a case where a client sends a "write only" command... i.e. something like https://httpbin.org/status/200. There is no body that is actually returned, and the mime type is simply text/html. I wouldnt want that to fail by default, because there is no actual content to parse. Since there is no content parse, I would expect we would down to the status code check, which is exactly what this code is doing.
Is it an "error" if there not a valid content-type and there is no response data to parse anyway, and a valid status code? Based on the scenario above, I would argue there is no error, because there is no thing to parse. The content-type can be ignored for all intensive purposes.
So what should the behavior be for responseObjectForResponse:data:error:? If there is no error, and there is no data, should we return nil instead of NSXMLParser inited with nil data? To me it seems unexpected to return a nil object and provide no error.
NSURLErrorDomain does provide a NSURLErrorZeroByteResource error, but again I don't actually think this an error to begin with, because you have a valid status code with nothing to parse.
My current viewpoint is to leave as is. Thoughts @cnoon @jshier @kylef ?

I'm with you on leaving the validation logic as is @kcharwood. We are not handling this quite right in Alamofire yet. You only want to throw a content validation error if there was actual data returned. If you don't ensure data was actually returned, you get into some weird cases. For example, if no data is returned and the server doesn't return a Content-Type header, I've seen the response.MIMEType come back as text/plain.
As for the responseObjectForResponse:data:error:, it seems it should return nil IMO if there isn't any data. I don't have all the context there, but that makes the most sense to me.


Should we clean up the leak vm after the last shell is destroyed as a default behavior?

The current leak_vm in settings.h defaults to true.
In pure Flutter apps, this doesn't matter. In "add-to-app" scenario, this default setting's advantages and disadvantages are below:

Pros: It can use for the behavior of "warming-up" the current process's Dart VM instance and leave it for the next engine, it faster than destroying the leak VM;
Cons: It leaks the VM related memory and resources.

Related issue and change:

https://github.com/flutter/flutter/issues/95903
https://github.com/flutter/engine/pull/30541

We tried flipping the switch when the flag was first added it and the pushback was strong because of the reasons you mentioned. Right now, the guidance would be to make this behavior opt-in.


Reorder ont tags

Closes #
Changes proposed in this pull request:

...

Really neat and very helpful for the future I'm sure! Maybe add an explanation to the README about the task and how to run it, or create a confluence page to log it?


Allow eventDetails within news items?

BQ mentioned at today's WG the conversation with DPP LPX and that we might need to allow a "lightweight" event representation that allows eventDetails to appear at the item level.
Feedback was that we need to think about other metadata about the event that would need to be included, eg the name of the event which doesn't exist in eventDetails.

We have adopted this in 3.0.


Add new tests to verify alert RHODS JupyterHub Probe Success Burn Rate

Signed-off-by: Jorge Garcia Oncins<EMAIL_ADDRESS>

It's being tested right now here: https://opendatascience-jenkins-csb-rhods.apps.ocp-c1.prod.psi.redhat.com/job/rhods-ci-pr-test/1088/console

Both tests passed here successfully here: https://opendatascience-jenkins-csb-rhods.apps.ocp-c1.prod.psi.redhat.com/job/rhods-ci-pr-test/1089/TestReport/


[Mod Info] Crash FM Radio Station (OLD) [Steam ID<PHONE_NUMBER>] by johnyTahn

Mod:
Crash FM Radio Station (OLD) [Steam ID<PHONE_NUMBER>] by johnyTahn
Stability:

Stable: it simply functions fine.

I use this; not had any problems.
Statuses:

Deprecated: users are discouraged to use this any longer; it won't be supported or updated.

Not acutally deprecated - author stated they were working on a new version, but I couldn't find it so still using this old one. IMO deprecated warning should be removed.

Source code: bundled with mod in Source folder

Note that CSL Music Mod music packs almost always bundle their source with the mod.
Other Information

Required mods/DLC: missing, or listed ones are not needed. Specificy which one.

Requires CSL Music mod: https://steamcommunity.com/sharedfiles/filedetails/?id=2474585115
Might also be worth noting that at least one of the songs in the mod contains profanity ("Girlfriend" by Avril Lavigne).

I missed that the new version wasn't released. I'll remove Deprecated, add SourceBundled and change it to Stable. The required mod is already included in the catalog.

Might also be worth noting that at least one of the songs in the mod contains profanity ("Girlfriend" by Avril Lavigne).

I consider this to be out-of-scope for my mod. It's more something for the mod description page, or the comments.
This will be updated in catalog 3.48.

I missed that the new version wasn't released. I'll remove Deprecated, add SourceBundled and change it to Stable. The required mod is already included in the catalog.

Might also be worth noting that at least one of the songs in the mod contains profanity ("Girlfriend" by Avril Lavigne).

I consider this to be out-of-scope for my mod. It's more something for the mod description page, or the comments.
This will be updated in catalog 3.48.


Remove: ALVR.ALVR version 19.0.0

Publisher has requested removal of package. See https://github.com/microsoft/winget-pkgs/discussions/125124
Microsoft Reviewers: Open in CodeFlow

= = = = = = PR is modifying Apps and Features Entries = = = = = =
The current version doesn't contain the upgrade code.

= = = = = = PR is modifying Apps and Features Entries = = = = = = The current version doesn't contain the upgrade code.

False alarm from your script? :D


/data on macOS is don't exist, and create it impossible

look, i try start the UmbrelOS in docker, and always get error about filesharing, i try to add it into sharing but Docker says /data is not exist, i try to create folder in / but its only for read, so create /data folder is  impossible, also try change command for /var/data (where i can create folder) but container says you set not /data folder

I am trying too on macOS and the problem is that the Umbrel tor container (and other ones) use the /data folder because it's designed to run on Linux

Why is it not possible to change the directory though?

because of the Umbrel docker images, that are designed to work with /data only


fix: should correctly resolve extends or mixins assets

Fix: #1963

We have to avoid mutating the original options because it may be used by other components as base for extends or as a mixin.
This regression was introduced by https://github.com/vuejs/vue-next/commit/a75b8a268fca800a49c7d772b4a290b4435e85b9 - I originally removed components and directives from component instance to reduce memory usage, but in this case we have to add them back. But we can create them only when the component actually has mixins or extends (see 0cb7f7f8)


[Feature request] Support analytical data that have AST like interface

vue-i18n-extract is great projects! 👍
I will be able to provide the useful command with vue-cli-plugin-i18n using the API exposed with vue-i18n-extract.
I think that we will be able to convey the report details to the user, If vue-i18n-extract provides analytical data supporting AST like interface (include line number and etc ...). 😸

Thanks @kazupon!
It won't be a problem at all.
Actually I already have the informations you mentioned.
I just have to pass them to the report.
Stay tuned :)

Hello @kazupon!
I fixed it: https://github.com/pixari/vue-i18n-extract/commit/712e7500962e5e28b761175f7895f148b16ccfd0
That's how the result will look like:

I've also update the API's documentation.
i am looking forward to hearing feedback from you. 😃

Thanks!


561 update UI when reset triggered

Description
Adds a message to the chat history when user clicks "reset level" button (no message is shown for the reset progress button)
Screenshots

Notes

added new info message type
check if any user messages in history, or any defences are activated before allowing reset request (helped with stopping multiple reset messages being added when state is empty)
changed the logic in adding a welcome message to ensure reset message appears first (was trickier as we do not add the welcome message to the chat history on backend, so need to sort the list when setting the front end messages)
also noticed resetting does not turn deactivate the sandbox so fixed that - I think we would want to deactivate the active defences but keep the configured values when we reset.

Concerns

I followed the top answer here  to style the horizontal line in the reset message, where we have a line and wrap the text in a span with white background over the top. Do you know if this would have any accessibility implications @dhinrichs-scottlogic

in the ticket we decided not to disable the reset level button if there's nothing to clear. however I've added an ableToReset function to stop the request being sent in that case (to stop spamming the button), but this is essentially the same as disabling button.. Accessibility wise - should we allow the button to be clickable (if it's having no effect), and if so do we need designs to make the disabled button visually different from the export chat button?

Checklist
Have you done the following?

[x] Linked the relevant Issue
[ ] Added tests
[x] Ensured the workflow steps are passing

I don't think there's any need disabling the button visually or functionally when there's nothing to reset, but if you want to save processing by having abeToReset, then that's cool.

A few thoughts about whether or not to disable the buttons:

disabling buttons is not generally recommended if it can be avoided
When you can click a button, you expect something to happen when you click the button, therefore if possible, can we display the "Level Progress reset" message even without sending the request to the backend?


UseExceptionHandler throws if ExceptionHandlingPath not set

Addresses #400
cc @Eilon

@jbagga,
Thanks for having already signed the Contribution License Agreement. Your agreement was validated by .NET Foundation. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot


Update fs2-core, fs2-io to 3.1.3

Updates

co.fs2:fs2-core
co.fs2:fs2-io

from 3.1.1 to 3.1.3.
GitHub Release Notes - Changelog - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Files still referring to the old version number
The following files still refer to the old version number (3.1.1).
You might want to review and update them manually.
build.sbt
modules/core/js/yarn.lock
modules/tests/js/yarn.lock

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "co.fs2" } ]

labels: library-update, semver-patch, old-version-remains

You'll need to merge #546 first.


Coverage commands not working anymore since last release

Describe the bug
I have launched VSCode this morning and it seems that the extension is not working properly anymore. It doesn't show the watch button in the status bar and when I try to launch it manually it says it doesn't find the command. Here is a screenshot:

From my little experience with VSCode extensions, it might be due to a renaming of the commands in the latest release. Indeed, a new release has been published 14 hours ago, so maybe something has been broken there that passed the tests.
To Reproduce
Steps to reproduce the behaviour:

Open VSCode palette
Type "coverage watch"
Click the watch command

Desktop (please complete the following information):

OS: macos
Extension Version: 2.10.0
VSCode Version: latest

+1. Downgrade to v2.9.1 solves this problem.

Oops

https://github.com/ryanluker/vscode-coverage-gutters/blob/0247b88cce8c4fadf972bd080a6799a791df5c68/tsconfig.json#L8
https://www.typescriptlang.org/tsconfig#importHelpers
Looks like we need to either turn off importHelpers in tsconfig.json or add the tslib package as runtime dep

@ilharp Thanks for the issue.
I wonder why this didn't appear when I tested locally (good info on why it happened for the unit / integration tests).
It might have only appeared when using the vsix or the compiled extenion...
I will take a look at the PR now and we can do another release right away, sorry for the disruption!

I will do the release in the next hour or so after I confirm the vsix locally.
Thanks again for the ticket and the PR much appreciated!
I have a ticket here where I will think on potential fixes and ways to proactively catch these kind of issues in the future.
https://github.com/ryanluker/vscode-coverage-gutters/issues/372


Possibility of firing user event in outbound direction.

Currently my test fail half-way through, but I don't think it's the issue with the changes. it says:
[ERROR] Failed to execute goal ....:autobahntestsuite-maven-plugin:0.1.3:fuzzingclient (default) on project netty-testsuite: Execution default of goal .....fuzzingclient failed: unable to find a free port

Motivation:
In a proxy application it is desirable to propagate a user event
backward, from proxy destination end-point to client end-point.
Currently the only way is to set a List attribute on
channel context and pass event object to them however benefits of
Netty's event firing (easy access to proper context, exception
handling, ...) is lost.
Modifications:
Very similar to fireUserEventTriggered() and userEventTriggered(), two
method fireUserEventTriggeredOutbound() and userEventTriggeredOutbound()
were added. in the channel handler context implementation instead of
next handler, previous handler is found and called.
Result:
It's possible to send a user event from end of pipeline to the beginning
of it. However the changes are backward-incompatible and direct implementations
of ChannelHandler and ChannelHandlerContext need to implement the
methods.

@Scottmitch @trustin @nmittler WDYT ? I think this could be useful, I just think we may need to find a better name :)

@normanmaurer - Seems reasonable to me. I haven't looked into it too much be here are a few possibilities...

Deprecate fireUserEventTriggered. Introduce fireUserEventTriggeredOutbound and fireUserEventTriggeredInbound.
Add a fireUserEventTriggered(boolean inbound) which the existing fireUserEventTriggered would call fireUserEventTriggered(true). We could also deprecate fireUserEventTriggered if we wanted to.


No device found on iPhone 6s with iOS 11

Below is the debug log from xcode:
2017-11-15 17:40:25.507969+0800 bleframework[5308:518616] scanForPeripheralsWithServices
2017-11-15 17:40:27.508815+0800 bleframework[5308:518616] Stopped Scanning
2017-11-15 17:40:27.508880+0800 bleframework[5308:518616] Known peripherals : 0
2017-11-15 17:40:27.509323+0800 bleframework[5308:518616] List of currently known peripherals :
2017-11-15 17:40:27.509351+0800 bleframework[5308:518616] No peripherals found
AppControllerBehavior: HandleOnBleDidCompletePeripheralScanErrorEvent: Error scanning for BLE peripherals: Fail: No device found
BLEFramework.Unity.BLEControllerEventHandler:OnBleDidCompletePeripheralScan(String)

I am having this same issue. Did you figure it out @kk17?

No，I use another plugin instead.

@architek1 what about you? could you make it work?

Like what's really bad it looked very promising

@giomurru Done

I think I know what is your problem. Are you sure that the RBL_SERVICE_UUID defined in BLEDefines.h is the same of your board? Please verify that you have one of these boards.

BLE Shield
BLE Mini
Blend Micro
Blend
BLE Nano
RBL nRF51822

I have BLE Mini and I tested the code on master in iOS 9 and iOS 11 and it works.
The code you want to change would cause the framework to find multiple devices different from the specific RedBearLab boards for which the framework was created (including duplicate UUIDs). Apple documentation clearly states that you should avoid this behavior to improve battery efficiency.
Read paragraphs Minimize Processing of Duplicate Device Discoveries and paragraph Only Discover Services and Characteristics You Need in the documentation https://developer.apple.com/library/content/documentation/Performance/Conceptual/EnergyGuide-iOS/BluetoothBestPractices.html.
If you want to support another board different from RedBearLab boards I suggest to change the values defined in the BLEDefines.h with those of your board and then try to adapt the code. I can not guarantee that this will work because this framework is intended for the specific boards in the list above.
I am closing the issue.


Bumping version to 2.0.1

Signed-off-by: Andriy Redko<EMAIL_ADDRESS>Description
[Describe what this change achieves]
Issues Resolved
[List any issues this PR will resolve]
Check List

[ ] New functionality includes testing.

[ ] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[X] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@peterzhuamazon just bumping version for now, version.properties to follow


Add Dev Containers in VS Code workshop

Use this template to add a workshop to this repo. Add the following items:

[x] Your workshop design document, filled in with some details about your proposed workshop including its title and the three stages in the designer delineated, using the workshop-designer.md file in the template.

[x] A README.md file that describes the steps of the workshop.

[x] Powerpoint Slides for the workshop.

[ ] The workshop's solution in the /solution folder.

[ ] An embedded Train the Trainer video.

[x] A Call to Action to enhance the workshop with a direct line to Microsoft Learn by linking to an appropriate Learn module.

A reviewer will be assigned to the workshop and will work with you to shape it for production. Thank you for your contribution!

@jlooper responded to all feedback, thank you  for reviewing :)


No pop-ups when hovering over headings in Outline pane

The plug-in works fine for links within the note, but when hovering over a heading in the Outline pane no pop-up appears (anymore?) when holding down the ⌘/ctrl key. Is that by design?

The Outline pane does not appear to be a valid hover source, even for the native page preview functionality. So, this would be a feature request to allow Outline plugin headings to be hover previewable.

I noticed that glbal search results are also hoverable, which is good. Between that and the links I don't need more so won't submit a feature request.
I'll close the issue.


Facelift of the Account OO example.

When the original version was written, bidirectional type inference didn't exist, so this new kind of pattern was simply not possible.
Now that it does, we can stop telling users to use the original typeof workaround.
The only thing that's a bit unfortunate is the cast of {} into AccountImpl, but it's a necessary evil for now until we get a few more big ticket items. When we have that, we can likely kill the cast and call it redundant.

From my own research, I came up with my own luau OOP idioms which remove the need to declare object methods in the proto-type:
local Account = {}
Account.__index = Account

type ProtoAccount = {
	name: string,
	balance: number
}

export type Account = typeof(setmetatable({}::ProtoAccount, Account))

function Account.new(name: string, balance: number)
	local self = setmetatable({}::ProtoAccount,Account)
	self.name = name
	self:Deposit(balance)
	return self
end

function Account.Deposit(self: Account, credit)
	self.balance += credit
end

local account = Account.new("Alexander", 500)

Object method declaration does have to change to use the . syntax as well as define the self type. I believe being able to skip method declaration is a benefit to users.
I don't know the specifics of luau enough to say if one is better than the other. What are your thoughts?

Yeah one thing I don't love about the new OOP example is that it re-specifies the methods. It's valuable to be able to do so, but I don't want to encourage people to do this as a default.
From this perspective, I like @spacek531's version better and it's consistent with how I've been writing OOP code in the past. The need to explicitly specify self is unfortunate (records solve this! 😉), but it still feels better than duplicating all method definitions.

Based on the fixes that landed last week, we can now:

get implicit self checking, for more detailed checking of implementation detail
strongly type generics from new/ctor, removing a common form of type erasure
hide private and static members from autocomplete for instances, giving better DX for classes with simple public API but complex privates/internals

It would be cool to document this as part of this PR :D
--!strict
export type WeakMap<K, V> = {
	-- method definitions
	get: (self: WeakMapPrivate<K, V>, K) -> V,
	set: (self: WeakMapPrivate<K, V>, K, V) -> WeakMap<K, V>,
	has: (self: WeakMapPrivate<K, V>, K) -> boolean,
}

type WeakMapPrivate<K, V> = WeakMap<K, V> & {

Excuse me if I've done something wrong, but the following code gives me an error:
local wm = WeakMap.new()
wm:get("sdf")

Type Error: (34,1) Type 'WeakMap<a, b>' could not be converted into 'WeakMap<a, b> & {| _weakMap: {| [a]: b |} |}'
caused by:
  Not all intersection parts are compatible. Table type 'WeakMap<a, b>' not compatible with type '{| _weakMap: {| [a]: b |} |}' because the former is missing field '_weakMap'

Because new returns a value of type WeakMap<K, V but according to type WeakMap<K,V>, get expects the first argument to be WeakMapPrivate<K, V>, which WeakMap<K, V doesn't satisfy.


[Dynatrace] Dynatrace.Observability GA Release

This checklist is used to make sure that common guidelines for a pull request are followed.
close https://github.com/Azure/azure-cli/issues/22675
Related command

General Guidelines

[ ] Have you run azdev style <YOUR_EXT> locally? (pip install azdev required)
[ ] Have you run python scripts/ci/test_index.py -q locally?

For new extensions:

[ ] My extension description/summary conforms to the Extension Summary Guidelines.

About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update src/index.json automatically.
The precondition is to put your code inside this repository and upgrade the version in the pull request but do not modify src/index.json.

Dynatrace

@kairu-ms, @necusjz, @zhoxing-ms, could you please help review this PR which is a RP for APEX onboarding?

Please update code by modify in aaz-dev-tools and regenerate code. Instead of directly change code.

Please create a PR in aaz repo as well


python3Packages.aiohttp-socks: 0.6.0 -> 0.7.1

Motivation for this change
version bump
output of nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD" (rebased on https://github.com/NixOS/nixpkgs/pull/152583)
13 packages built:
electrum electrum-ltc maigret matrix-commander mirage-im opsdroid pantalaimon pantalaimon-headless python38Packages.aiohttp-socks python38Packages.matrix-nio python39Packages.aiohttp-socks python39Packages.matrix-nio weechatScripts.weechat-matrix

ping @jonringer @fabaff
Things done

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

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

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

Duplicate of #152512

oops. sorry


Create cost matrix based on capacity

Is it possible to have a method override that can return the cost and time between the from and to of a route depending on the state of the vehicle at the time, i.e how long it has travelled or its capacity at the time?

Please use discuss.graphhopper.com for such questions.


Reduce size of minified Data Layer script

The Data layer will be provided with Lunch as part of the additional extension. This script will be included on the customer's pages so there is a business need to reduce the size of the final script as much as possible.
A similar script provided by Google (Event Driven Data Layer) has a size of 2kB.
After short verification, it seems that the main problem is Lodash dependency:

lodash.clonedeep is 8.9kB
lodash.mergewith is 9.8kB
lodash.get is 4.4kB

Data Layer script without Lodash is about 10kB.
Proposal:
https://github.com/kolodny/immutability-helper could replace clonedeep and mergewith

Lodash recommends against per-method packages (see https://lodash.com/per-method-packages):

[..] use of these packages is discouraged and they will be removed in v5.

Instead, we should import methods:

Don't worry—if you import or require methods directly, e.g. const throttle = require('lodash/throttle'), only the subset of lodash code your package uses will be bundled in projects that use your package.

One option you have that would have a decent impact on size is to not use prototypal inheritance and es6 classes, since it results in a lot of code that isn't minifiable and might not be providing much value anyway (e.g., I don't think you're leveraging polymorphism). If you were to use the revealing module pattern instead, you wouldn't have to use this.longPropertyName or that.longPropertyName references and you could use functionally-scoped variables instead, which would result in better minification. You also wouldn't have to incur the babel transpilation overhead for the es6 class support. This is the approach we took for Turbine (https://github.com/adobe/reactor-turbine) and Alloy (https://github.com/adobe/alloy) with good success.

We might also want to look at https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore.
Regarding the supported browsers, we should align with those Adobe Launch supports:

Chrome (latest)
Safari (latest)
Firefox (latest)
IE (10 and above)
Edge (latest)
iOS Safari (latest)
Android Chrome (latest)


Many duplicate routes ip, loop show?

Using linux's MTR is inconsistent with the result of this time. It should be that there is something wrong with the program, but I did not find it out.

hnm really strange. could you post the original mtr as well. its petty hard to catch such issues without reproducing them.

that is linux's MTR results.

I found the problem！！！
First:
https://github.com/tonobo/mtr/blob/cfb8cee1868883a2d2184e4da35ac1163cec518a/pkg/icmp/icmp.go#L207
The value of index should not be calculated this way. It is verified by the program that this calculation method is wrong and cannot get the correct result.Should be set: index=20。
Second:
https://github.com/tonobo/mtr/blob/cfb8cee1868883a2d2184e4da35ac1163cec518a/pkg/icmp/icmp.go#L212
Not only does the seq need to be verified here, but the ID of the icmp package also needs to be verified.If a machine executes the mtr program concurrently, an abnormal result will occur.
`
if typ, ok := x.Type.(ipv4.ICMPType); ok && typ.String() == "time exceeded" {
body := x.Body.(*icmp.TimeExceeded).Data
		x, _ := icmp.ParseMessage(ProtocolICMP, body[20:])
		switch x.Body.(type) {
		case *icmp.Echo:
			id := x.Body.(*icmp.Echo).ID
			seq := x.Body.(*icmp.Echo).Seq
			if id == needId &&  seq == needSeq {
				return peer.String(), []byte{}, nil
			}
		default:
			// ignore
		}
	}

	if typ, ok := x.Type.(ipv4.ICMPType); ok && typ.String() == "echo reply" {
		b, _ := x.Body.Marshal(ProtocolICMP)
		if string(b[4:]) != string(neededBody) {
			continue
		}
		if x.Body.(*icmp.Echo).ID != needId {
			continue
		}

		return peer.String(), b[4:], nil
	}

`
The above is the conclusion I got through the capture of the package, please check

(⊙o⊙)…
I found the same problem.

@boobieliu 问题的根源在于对icmp回传的数据包验证不足，增加id验证即可解决这个问题。在选取pid的时候需要使用goroutine的id（目的是保持并发的mtr探测所使用的pid不同）。

@ylwang1122 多谢，关于使用协程id的情况，我再请教下，一开始我以为是并发协程之间返回数据导致数据重复，但是通过打印，根据ttl看起来并不会引起冲突。

@boobieliu 可设定ttl为1，多ip地址并发发起mtr探测，可以验证结果。某一个协程可能会收到另一个协程发起的icmp数据包的返回结果，并进行解析，造成结果的混乱。因此需要对接收到的icmp返回包进行验证是否是本协程发出的，来决定丢弃处理还是解析保留。

@ylwang1122 了解，多谢


Clean up the sample flask app and PEP8ify the code to standards

Made a few updates:

General code clean up
Updated variable names to conform to Python standards
PEP8ified the code

If the changes look good, the tags will need to be updated to reflect the steps in the associated tutorial.
Includes changes to the corresponding tutorial via https://github.com/MicrosoftDocs/azure-docs/pull/14885

Hey, @cephalin This PR has been open for a few months now. Would you mind taking a look, or pointing me to the right person to review? Thank you.

Hi Nina, since we chatted at that time, we've actually changed the Python tutorial to use Django instead. It's not even using this repo anymore. If you want me to merge it I still can.

@cephalin If this example isn't being actively used in the docs, what do you think about just removing it all together?


Setting global timeout/slow via code?

Is there a way to set a global timeout/slow value from code? I want to be able to do the same thing that --timeout and --slow do, but via code running via npm test.
I'm setting up server stuff in a global before()/after() that all test files will require and was hoping to specify timeout stuff there. The tests are going to be spread out into a bunch of different projects so I can't use mocha.opts to set these values, and requiring multiple people to remember to set the CLI values is a no-go as well. I tried calling this.timeout(...) and this.slow(...) from the global before() but that just set those values for the before() itself, not all the other tests.
Is there a way to do what I want? I haven't been able to find a reference to the mocha global or anything and digging through mocha's code hasn't really helped me narrow it down either.

I think I've got a workaround but it feels super-gross. I don't love it and it seems like there has to be a better way.
This is untested on anything other than a trivial test suite.
before(function(done) {
    var suite = this.test;

     while(suite.parent) {
        suite = suite.parent;
    }

    suite.timeout(15000);
    suite.slow(5000);

    ...

    done();
});

Thought I could just walk upwards from this.test in my before(), but it turns out that timeouts are only inherited from the root suite when they're added. By the time my code was running every test/suite had its own timeouts set and ignored the root values.
So it seems like I'll have to write code to walk every suite/test & call .timeout() on them to achieve what I want?

Have you looked into running mocha programmatically? https://github.com/mochajs/mocha/wiki/Using-mocha-programmatically
When you create your instance of mocha, you can pass in a timeout: https://github.com/mochajs/mocha/blob/master/lib/mocha.js#L65

@danielstjules Yeah, but that means that if I want all the other useful mocha CLI features like --grep I have to support them my wrapper.
I've given up on this, mocha just doesn't expose the necessary APIs to achieve what I had hoped for so I'll solve it some other way.


Configure Bluetooth connectivity between car and interface

As an operator I want to be able to send and receive data from the car via Bluetooth so that I can command and analyze it.
Acceptance Criteria:
Be able to send and receive short strings from a pc.

Attempting connection using pybluez on Debian. So far no success.

There seems to be an issue with our bluetooth-module. Transmitting data from the arduino to a python server works via bluetooth. Receiving has been unsuccessful.
A connection using usb-to-serial has been created as a temporary fix until bluetooth connectivity can be provided. Testing a different bluetooth module is the next step and can only be attempted on Monday.

You can try this [app] (https://play.google.com/store/apps/details?id=project.bluetoothterminal) to test if the connection is there (provided that your code and your connections are correct).


fix: Use offset for monitors

fixes: https://github.com/DreamMaoMao/hycov/issues/3

Thank you for your pr. However,w_x,w_y means the available initial area after excluding the layer such as waybar, and should not be offset in this way. There was a problem with the value of w_y coordinate before, which has been fixed

No worries, just tried what solved the issue for me, but if that does create problem, then your solution is better.


add option to adjust log level, default to info

There's also #249 which does this plus more.

as long log-level is modifiable.


【Onnx】PyProject.toml Dependencies

error: subprocess-exited-with-error
× Building wheel for onnx (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.
full command: 'D:\PROG\Python\Python-3.9.10\python.exe' 'D:\PROG\Python\Python-3.9.10\lib\site-packages\pip_vendor\pep517\in_process_in_process.py' build_wheel 'C:\Users\ljy\AppData\Local\Temp\tmp_uyeujly'
cwd: C:\Users\ljy\AppData\Local\Temp\pip-install-rgctkca_\onnx_f97359a4dde049cab131301f74be5e50
error
ERROR: Failed building wheel for onnx
Failed to build onnx
ERROR: Could not build wheels for onnx, which is required to install pyproject.toml-based projects

I try to find a solution on the search engine, but it's been 2 days and there is no good solution
pyproject.toml

Seems you failed installing onnx, plz found solutions in official onnx repo.

好的


DNS resolver - default server addresses contain stale entries

Hi,
I think I've found an issue in the way the default set of name servers is populated, affecting Windows 10 / JDK 11. When moving a machine between networks, in some cases stale DNS servers (i.e. servers from a network the machine is no longer connected to) can be picked up by the JNDI bootstrap mechanism. If one of the stale entries is first in the list it can stop name resolution from working (or at best cause delays). Of course it is possible to work around this by passing in a set of DNS servers somehow determined higher up the stack, or changing the behaviour of the DNS resolution mechanism. However I wonder if it could be worth fixing the discovery mechanism in Netty itself? The issue is perhaps less likely to affect production systems with a fixed set of interfaces, but I guess developers are reasonably likely to encounter the issue on their development machines moving e.g. between work and home, which will still result in fixes being put into client code, startup scripts or other places where they probably shouldn't be!
One possible approach is to look at the address of each name server and see if it matches an interface address in NetworkInterface.networkInterfaces(). IPv4 addresses in private ranges that do not match an interface address, or where interface.isUp() is false, could be excluded or at least pushed down the list. Possibly slightly trickier for IPv6, but it should still be possible to prioritise servers on the local subnet without resorting to platform-specific code. There is also the super simple option of just calling isReachable for each name server, which would risk excluding temporarily unavailable servers and increase startup time, not sure if this is desirable. My gut feel is that some sort of "prioritise and filter" method could be applied to the discovered set of servers before they are decided, which might evolve to contain a few special cases.
Hope this is helpful!
Expected behavior
DefaultDnsServerAddressStreamProvider, DEFAULT_NAME_SERVER_LIST should be populated with the set of name servers in use by the system.
Actual behavior
DefaultDnsServerAddressStreamProvider, DEFAULT_NAME_SERVER_LIST can include stale name servers, assigned to network interfaces that are not currently active. These stale entries are supplied by the underlying JNDI mechanism and can lead to name resolution failure in client code.
The issue applies when a machine is moved between networks and connects using different interfaces, e.g. physical ethernet in one location and wireless in another. I have OpenJDK 11 running on Windows 10, I have not tested other configurations.
Steps to reproduce
This is not hard but slightly cumbersome! The particular case I have is moving between an office and home network. The office network has ethernet cables, someone plugged one in (probably when the machine was first set up) and it configured that interface to a private network (10.x.x.x). DNS servers were configured on the interface under that private range. Subsequently I am using the machine on a wireless networks, which configure the wireless interface but leave the ethernet interface as it is. According to ipconfig /all everything looks good, the details of the physical interface are hidden because it is not active. However the DNS entries for that interface are still being passed through the Sun JNDI bootstrap mechanism. Digging into the registry, it is possible to see they are still present under this key:
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces
The physical interface also has a DHCP domain set which matches the machine's assigned domain - I guess that could be related to why they are getting passed through even though the interface is inactive. In any event, it seems as if at least on Windows the JNDI mechanism can pass through stale DNS entries in the scenario where machines are moved between two networks using a different interface in each location, particularly moving between a physical office network and a wireless home network, which could be quite common for developers.
Minimal yet complete reproducer code (or URL to code)
I discovered this issue through the VertX container. Just calling Vertx.vertx() creates a container with the default configuration, the unreachable servers are then visible in the debugger.
Netty version
4.1.48
JVM version (e.g. java -version)
openjdk version "11.0.6" 2020-01-14
OpenJDK Runtime Environment AdoptOpenJDK (build 11.0.6+10)
Eclipse OpenJ9 VM AdoptOpenJDK (build openj9-0.18.1, JRE 11 Windows 10 amd64-64-Bit Compressed References 20200122_442 (JIT enabled, AOT enabled)
OpenJ9   - 51a5857d2
OMR      - 7a1b0239a
JCL      - da35e0c380 based on jdk-11.0.6+10)
OS version (e.g. uname -a)
Windows 10
Version 1909 (OS Build 18363.778)

@martin-traverse I happy to review a PR with a fix... I have no windows dev environment to troubleshoot this :/


Added small benefit of the hostnet/webpack bundle

I think it's good to have alternatives, but the best feature of the hostnet/webpack bundle was not listed (note that I still prefer to run it without Symfony integration at all). This is one feature that makes it really great to use but might not be the deciding factor.

Just to be sure - you're referring to ability to provide inline javascript inside twig template, which will be compiled and inserted as link to that generated file?
Personally I don't quite understand "simple splitpoints per file" term.
Just out of curiosity - what is the use case for this? Just to have styles together with markup in a single file or is there something else there?

@mariusbalcytis Basically what makes webpack powerful, is that you can define splitpoints, files that have their own entry point, which you can say "At this point, I only want to initiate this and require that": https://github.com/hostnet/webpack-bundle#more-about-the-inline-variant. You can have a page where you require an extra bit of javascript, which will only be loaded on that specific page.

Well, yeah, but it's the same as if I'd add the inlined content into a separate javascript file and require it using <script src="webpack_asset('path/to/file.js')"></script>. The resulting HTML would still have <script> tag in that place where {% webpack inline %} was defined.
Or is this somehow different?

The idea is that the inline tag extracts the javascript/css inside and extracts it to a new file registered in webpack, the src is then added to the place where the rest is included as well (small automation part).


Refactor felt252_dict libfuncs to use the BlockExt trait

See: https://github.com/lambdaclass/cairo_native/pull/518
Refactor the code implementing the libfuncs to use the trait methods from BlockExt.

@edg-l
Hi again
Hope you are doing great.
Looking forward to contributing and learning more about the project
If not assigned yet, can I get the chance to work on this issue?

Can I work on this issue? I am almost done!

Hello team @edg-l , this issue is still work to work, or what happend? Thanks!


Pass variables to the evaluate() context

Is it possible to do that ?

I've asked for so much help here, I hope I can finally be of use to someone.
.evaluate((var1, var2) => {
      // Do stuff here
    }, var1, var2)```

You have to make sure to include the variables like above after the function {}.
Let me know if that's what you're trying to accomplish.

Thanks @miles-collier, I'm going to close this for the time being with this: make sure your arguments are serializeable as this goes through a to a different runtime


Second half test

This PR is aimed to test AutoRef's actions between two half times. It relates to issue #6 .

This is this scenario's actual log:
[0000.001|0000.000] Error: Host is not correctly defined in game.json file, it should be <IP_ADDRESS> instead of <IP_ADDRESS>.
[0000.003|0000.000] Info: Real time factor is set to 0. Simulation will run as fast as possible, real time waiting times will be minimised.
[0001.067|0000.000] Info: Spawned RED_PLAYER_1 RobocupRobot on port 10001 at halfTimeStartingPose: translation (3.5 -3.06 0.24), rotation (0 0 1 1.571592653589793).
[0001.685|0000.000] Info: Spawned RED_PLAYER_2 RobocupRobot on port 10002 at halfTimeStartingPose: translation (3.5 3.06 0.24), rotation (0 0 1 4.711592653589793).
[0002.315|0000.000] Info: Spawned RED_PLAYER_3 RobocupRobot on port 10003 at halfTimeStartingPose: translation (0.75 -3.06 0.24), rotation (0 0 1 1.571592653589793).
[0002.841|0000.000] Info: Spawned RED_PLAYER_4 RobocupRobot on port 10004 at halfTimeStartingPose: translation (0.75 3.06 0.24), rotation (0 0 1 4.711592653589793).
[0003.405|0000.000] Info: Spawned BLUE_PLAYER_1 RobocupRobot on port 10021 at halfTimeStartingPose: translation (-3.5 -3.06 0.24), rotation (0 0 1 1.57).
[0003.978|0000.000] Info: Spawned BLUE_PLAYER_2 RobocupRobot on port 10022 at halfTimeStartingPose: translation (-3.5 3.06 0.24), rotation (0 0 1 -1.57).
[0004.521|0000.000] Info: Spawned BLUE_PLAYER_3 RobocupRobot on port 10023 at halfTimeStartingPose: translation (-0.75 -3.06 0.24), rotation (0 0 1 1.57).
[0004.525|0000.000] Info: Connected to GameControllerSimulator at localhost:8750.
[0004.525|0000.000] Info: Game type is KNOCKOUT.
[0004.525|0000.000] Info: Red team is Funny Dingos.
[0004.525|0000.000] Info: Blue team is Agile Lynxes.
[0004.525|0000.000] Info: Left side is blue.
[0004.525|0000.000] Info: Kickoff is red.
[0004.525|0000.000] Info: Beginning of first half.
[0004.525|0000.000] Info: Sending 1:SIDE_LEFT:2 to GameController.
[0004.525|0000.000] Info: Sending 2:KICKOFF:1 to GameController.
[0005.033|0000.248] Info: New state received from GameController: STATE_INITIAL.
[0007.564|0009.840] Info: Sending 1234:STATE:READY to GameController.
[0008.030|0012.432] Info: New state received from GameController: STATE_READY.
[0017.044|0059.272] Info: New state received from GameController: STATE_SET.
[0017.045|0059.272] Info: Sending 7414:PENALTY:1:1:INCAPABLE to GameController.
[0017.048|0059.272] Info: INCAPABLE penalty for red player 1: did not move to kickoff position. Sent to translation (3 3.11 0.24), rotation (0.0 0.0 1.0 4.713185307179587).
[0017.048|0059.272] Info: Sending 7415:PENALTY:1:2:INCAPABLE to GameController.
[0017.051|0059.272] Info: INCAPABLE penalty for red player 2: did not move to kickoff position. Sent to translation (4.2 3.11 0.24), rotation (0 0 1 4.711592653589793).
[0017.051|0059.272] Info: Sending 7416:PENALTY:1:3:INCAPABLE to GameController.
[0017.053|0059.272] Info: INCAPABLE penalty for red player 3: did not move to kickoff position. Sent to translation (3.6 3.11 0.24), rotation (0.0 0.0 1.0 4.713185307179587).
[0017.053|0059.272] Info: Sending 7417:PENALTY:1:4:INCAPABLE to GameController.
[0017.055|0059.272] Info: INCAPABLE penalty for red player 4: did not move to kickoff position. Sent to translation (2.4 3.11 0.24), rotation (0 0 1 4.711592653589793).
[0017.055|0059.272] Info: Sending 7418:PENALTY:2:1:INCAPABLE to GameController.
[0017.058|0059.272] Info: INCAPABLE penalty for blue player 1: did not move to kickoff position. Sent to translation (-3 3.11 0.24), rotation (0.0 0.0 1.0 4.711592653589793).
[0017.058|0059.272] Info: Sending 7419:PENALTY:2:2:INCAPABLE to GameController.
[0017.060|0059.272] Info: INCAPABLE penalty for blue player 2: did not move to kickoff position. Sent to translation (-4.2 3.11 0.24), rotation (0 0 1 -1.57).
[0017.060|0059.272] Info: Sending 7420:PENALTY:2:3:INCAPABLE to GameController.
[0017.062|0059.272] Info: INCAPABLE penalty for blue player 3: did not move to kickoff position. Sent to translation (-3.6 3.11 0.24), rotation (0.0 0.0 1.0 4.711592653589793).
[0020.453|0064.264] Info: Sending 8045:STATE:PLAY to GameController.
[0021.052|0066.608] Info: New state received from GameController: STATE_PLAYING.
[0023.558|0077.744] Info: Ball in play.
[0157.724|0666.776] Info: Sending 83360:STATE:FINISH to GameController.
[0157.724|0666.776] Info: End of first half.
[0157.726|0666.776] Info: red player 1 reset to halfTimeStartingPose: translation (-3.5 -3.06 0.24), rotation (0 0 1 1.57).
[0157.728|0666.776] Info: red player 2 reset to halfTimeStartingPose: translation (-3.5 3.06 0.24), rotation (0 0 1 -1.5700000000000003).
[0157.729|0666.776] Info: red player 3 reset to halfTimeStartingPose: translation (-0.75 -3.06 0.24), rotation (0 0 1 1.57).
[0157.731|0666.776] Info: red player 4 reset to halfTimeStartingPose: translation (-0.75 3.06 0.24), rotation (0 0 1 -1.5700000000000003).
[0157.732|0666.776] Info: blue player 1 reset to halfTimeStartingPose: translation (3.5 -3.06 0.24), rotation (0 0 1 1.571592653589793).
[0157.734|0666.776] Info: blue player 2 reset to halfTimeStartingPose: translation (3.5 3.06 0.24), rotation (0 0 1 4.711592653589793).
[0157.736|0666.776] Info: blue player 3 reset to halfTimeStartingPose: translation (0.75 -3.06 0.24), rotation (0 0 1 1.571592653589793).
[0158.225|0666.952] Info: New state received from GameController: STATE_FINISHED.
[0158.226|0666.952] Info: Sending 83383:STATE:SECOND-HALF to GameController.
[0158.226|0666.952] Info: Beginning of second half.
[0158.732|0667.168] Info: New state received from GameController: STATE_INITIAL.
[0159.451|0668.360] Info: Sending 83560:STATE:READY to GameController.
[0160.227|0672.224] Info: New state received from GameController: STATE_READY.
[0210.796|0720.080] Info: New state received from GameController: STATE_SET.
[0210.797|0720.080] Info: Sending 90026:PENALTY:1:1:INCAPABLE to GameController.
[0210.799|0720.080] Info: INCAPABLE penalty for red player 1: did not move to kickoff position. Sent to translation (-3 3.11 0.24), rotation (0.0 0.0 1.0 4.711592653589793).
[0210.799|0720.080] Info: Sending 90027:PENALTY:1:2:INCAPABLE to GameController.
[0210.801|0720.080] Info: INCAPABLE penalty for red player 2: did not move to kickoff position. Sent to translation (-4.2 3.11 0.24), rotation (0 0 1 -1.5700000000000003).
[0210.801|0720.080] Info: Sending 90028:PENALTY:1:3:INCAPABLE to GameController.
[0210.804|0720.080] Info: INCAPABLE penalty for red player 3: did not move to kickoff position. Sent to translation (-3.6 3.11 0.24), rotation (0.0 0.0 1.0 4.711592653589793).
[0210.804|0720.080] Info: Sending 90029:PENALTY:1:4:INCAPABLE to GameController.
[0210.806|0720.080] Info: INCAPABLE penalty for red player 4: did not move to kickoff position. Sent to translation (-2.4 3.11 0.24), rotation (0 0 1 -1.5700000000000003).
[0210.806|0720.080] Info: Sending 90030:PENALTY:2:1:INCAPABLE to GameController.
[0210.808|0720.080] Info: INCAPABLE penalty for blue player 1: did not move to kickoff position. Sent to translation (3 3.11 0.24), rotation (0.0 0.0 1.0 4.713185307179587).
[0210.808|0720.080] Info: Sending 90031:PENALTY:2:2:INCAPABLE to GameController.
[0210.810|0720.080] Info: INCAPABLE penalty for blue player 2: did not move to kickoff position. Sent to translation (4.2 3.11 0.24), rotation (0 0 1 4.711592653589793).
[0210.810|0720.080] Info: Sending 90032:PENALTY:2:3:INCAPABLE to GameController.
[0210.812|0720.080] Info: INCAPABLE penalty for blue player 3: did not move to kickoff position. Sent to translation (3.6 3.11 0.24), rotation (0.0 0.0 1.0 4.713185307179587).
[0214.150|0725.072] Info: Sending 90657:STATE:PLAY to GameController.
[0214.800|0727.968] Info: New state received from GameController: STATE_PLAYING.
[0217.309|0736.504] Info: Ball in play.


Consider merging libraries to reduce complexity

I see that the project is made up of quite a few libraries which all get referenced by the main application.
Many of these libraries:

are tiny - consisting of only 2 code files
do not encapsulate functionality reusable outside of the main application

You might consider collapsing some of these libraries into one or even into the main application. This would serve to:

condense the code in a more shallow and narrow directory structure possibly improving navigability and discoverability
reduce the number of inter-project dependencies to achieve a simpler build process
reduce startup time since fewer libraries would need loading and linking (though this is likely insignificant).

On that note, nice work on a great project! 😉 Cheers!

Hi @goldsam, thank you very much for your feedback, I am glad that you find this project useful!
Could I ask you to clone the branch refactor/77 and let me know what you think of the changes?

👍


Error when searching for * (asterisk) on production

Steps

Go to osf.io
On the navbar, click on search and type in the asterisk (*)

Expected
The search page would display several results for each category
Actual
I get a 500 error on my console and a message saying 'unable to resolve'.

@nanchen47 can you give this a look?

This problem has been fixed on production by running invoke migrate search to remove wrong data from elasticsearch database.


MMG-in-SQL model

From: MMG-based model (nested JSON)
To: MMG-in-SQL
Open questions

Via?

Option A: Azure Function
Option B: Databricks

Requests from Lyme/Arbo

View warnings alongside data elements

Option A: Put warnings as a column
Option B: Separate warning table. Arbo must JOIN for data along-side warnings

Confirmed 11/19 backlog grooming in scope for DEC


Add CPU Usage Graph

Hi all,
a graph showing the CPU Usage, next to the RAM usage would be useful.
Best,
miili

Not adding this to node-dashboard. Please use the graphana dashboard in the default docker-node-setup to see CPU usage.


crash when adding injected function

I'm getting a crash during injection, but only when injected exists in the class.  I'm working in Swift.
In IvarAccess.h, getting EXC_BAD_ACCESS here
I commented out the else if block, and injection works fine

-injected is the least reliable part of injection, particularly for Swift. You can tap into when injections occur with “INJECTION_BUNDLE_NOTIFICATION"

This may be fixed now. Can you try again?


AUI-1951 - Add attribute mode on Form Builder Pages

Just started reviewing :) :octocat: Sent from GH.


Implement ctype.h

@janeptrv would you like to review this? If not, I can just pull it, the code's pretty simple

looks fine to me


git mv hoard_test.go dep_test.go

Also,
$ rg -i hoard
analyzer.go
40:     return "hoard", v

should we fix that somehow, too? Is it enough to just return "dep", v? If so I can make a commit for that too, LMK.

appveyor is mad cuz i moved it public so ignore

LGTM

i think we can change the other thing too but @sdboyer would know for sure

should we fix that somehow, too? Is it enough to just return "dep", v? If so I can make a commit for that too, LMK.

ah yeah, please do. we had a bunch of PRs flying at once with the names changes; that must have gotten lost in the shuffle.
note that it will cause all the input hashes to change, so you'll have to update tests accordingly :(

OK I'll defer on that change then.


Better way to encode allele names in edges

Catting them together is untenable when you have more than a few alleles.

@ihodes I believe that this was sufficiently addressed by https://github.com/hammerlab/prohlatype/pull/16

@ihodes Is this fixed to your liking?

I think this is fixed.


Fixed vulnerabilities CWE-400:Uncontrolled Resource Consumption

The d3-color module provides representations for various color spaces in the browser. Versions prior to 3.1.0 are vulnerable to a Regular expression Denial of Service. This issue has been patched in version 3.1.0. There are no known workarounds.
GHSA-36jr-mh4h-2g58
CWE-400

Duplicate of #2022, unfortunately will need to do some testing first


Cerebro chart: Don't quote username or password elastic host settings begginning with ${?

Remove quotes from auth variables beginning with ${?.
This allows username or password secrets to be interpolated from the environment without needing to provide the entire config file as a custom secret. For my usecase, I have a common login for cerebro, so this allows me to inject that password in via a custom secret defined envFromSecretRef and reference it from several elastic host config sections.

could you change your commit title to be compliant with https://www.conventionalcommits.org/en/v1.0.0/#summary


Cache result of parsing TIMEDURATION property type in AccumuloConfiguration

Each time getTimeInMillis is called on AccumuloConfiguration it will parse the time duration string and convert it to millis.  The result of parsing this could be remembered in the AccumuloConfiguration obj until the config changes.  Making this change could avoid continually re-parsing a string that never changes.  The changes could also allow removing any code outside of AccumuloConfiguration that attempts to cache the result of parsing a duration on its own.
Opened this issue based on discussion on #4855

Looking at this, this seems like a problem for all properties. It looks alike all getters will always re-parse the string property value and do a conversion, such as getPort or getBoolean etc. Maybe we need a generic way to cache the computed value for all types and invalidate on update.

Maybe we need a generic way to cache the computed value for all types and invalidate on update.

The configuration does have the Deriver that can do something like this, but not sure if its the best option for this. The deriver builds on a long that is increased whenever a changed is detected.  So a solution would probably either directly use this long or use the deriver.

If this change is made, then the map added in #4855 can be removed.


EthereumSigner and local Signer

EthereumSigner provides functions to sign a message and verify a
signature using Ethereum-specific signature format. It also provides
functions for the conversion of a public key to address.
The code has been extracted from keep-core with slight modifications
that will allow it to be imported from keep-core and keep-ecdsa.
The code is being extracted to allow us decouple ethereum-specific
implementation functions we use in generic code of keep-ecdsa client,
especially in node.go.
Also extracted localSigning from keep-core as a local.Signer.
Having local Signer implementation in keep-common will let us not
duplicate the code between local chain implementations in keep-core
and keep-ecdsa.

I've compared the code that we have keep-core to the changes in this PR. Looks like we kept all the functionalities and the minor changes consist of creating a new struct and the way we initialise it. Looks good to me.
I take that we will have or already have a PR in keep-core that will use these changes from keep-common and the code around Ethereum signature will be removed from keep-core?


Fix issue where icon on RadioMenuFlyout and ToggleMenuFlyout was not being displayed

Description

Update templates to contain the icon viewbox and update visual states to update the state correctly.
Motivation and Context

Closes #4473
How Has This Been Tested?

Tested manually.
Screenshots (if appropriate):

/azp run

@chingucoding can you share pics of what the states look like now. Also, can you take a quick look at the original PR and see if we are missing any other template parts ? Thanks!

@chingucoding can you share pics of what the states look like now. Also, can you take a quick look at the original PR and see if we are missing any other template parts ? Thanks!

Screenshots:

The only thing missing in the templates are the "KeyboardAcceleratorTextBlock", however I am not sure if this was a deliberate choice removing them or not. Maybe @tashatitova knows more about this?

@chingucoding can you share pics of what the states look like now. Also, can you take a quick look at the original PR and see if we are missing any other template parts ? Thanks!

Screenshots:

The only thing missing in the templates are the "KeyboardAcceleratorTextBlock", however I am not sure if this was a deliberate choice removing them or not. Maybe @tashatitova knows more about this?

I don't think that is deliberate. We should add that back.

Readded them now @ranjeshj .

/azp run

@chingucoding can you share pics once more with the possible combinations ? @YuliKl @marksfoster  can you double check this is good ?

Sure Ranjesh, here more elaborate screenshots:

/azp run

#3958 deliberately changed the setters to objectanimations, that's why I thought that this would be the new way moving forward for these styles. So what is the correct way of doing this now? Were the changes of #3958 "incorrect" then @teaP ?

#3958 deliberately changed the setters to objectanimations, that's why I thought that this would be the new way moving forward for these styles. So what is the correct way of doing this now? Were the changes of #3958 "incorrect" then @teaP ?
Edit: Looks like that there only was a movement of code, not replacement. None the less, what is the correct way here then?

We definitely should stick with setters anywhere there's no actual animation. I should have looked at #3958 more closely :P especially since it looks like we lost some things that you're adding back now.

We definitely should stick with setters anywhere there's no actual animation. I should have looked at #3958 more closely :P especially since it looks like we lost some things that you're adding back now.

Well updated the menu flyout item styles now holistically to use setters where I was confident we can use a setter instead!
Out of curiosity, @teaP do you know why animations were used in the first place?

We definitely should stick with setters anywhere there's no actual animation. I should have looked at #3958 more closely :P especially since it looks like we lost some things that you're adding back now.

Well updated the menu flyout item styles now holistically to use setters where I was confident we can use a setter instead!
Out of curiosity, @teaP do you know why animations were used in the first place (as in why were those chosen few years ago instead of setters)?

Thanks! Animations were historically used because VisualState.Setters didn't used to exist. :) It was added in TH1.

Thanks! Animations were historically used because VisualState.Setters didn't used to exist. :) It was added in TH1.

OHhh I see, that makes sense, thank you @teaP !

Problems should be resolved now.

/azp run

/azp run


Failed to verify operator role for addons requiring additional credential requests for sts clusters

When installing the RHOAM addon, it takes several runs of the install addon command to correctly apply the addon onto a ROSA sts cluster.
Below is a sample output (aws account id has been redacted):
➜  ~ rosa install addon --cluster chfan-sts managed-api-service -y --rosa-cli-required true --cidr-range <IP_ADDRESS>/26 --notification-email<EMAIL_ADDRESS>--addon-managed-api-service 1 --addon-resource-required true -
W: Addon 'managed-api-service' needs access to resources in account '0124567910'
I: Created role 'chfan-sts-y8x4-redhat-rhoam-cloud-resources-operator-sts-credent' with ARN 'arn:aws:iam::0124567910:role/chfan-sts-y8x4-redhat-rhoam-cloud-resources-operator-sts-credent'
E: Failed to add operator role to cluster 'chfan-sts': Failed to verify operator role for cluster '20jnic2pu9seuitl5ta0frmc8evn1tc9'
➜  ~ rosa install addon --cluster chfan-sts managed-api-service -y --rosa-cli-required true --cidr-range <IP_ADDRESS>/26 --notification-email<EMAIL_ADDRESS>--addon-managed-api-service 1 --addon-resource-required true --s3-access-key-id s3-key --s3-secret-access-key s3-secret
W: Addon 'managed-api-service' needs access to resources in account '0124567910'
E: Failed to add operator role to cluster 'chfan-sts': Failed to verify operator role for cluster '20jnic2pu9seuitl5ta0frmc8evn1tc9'
➜  ~ rosa install addon --cluster chfan-sts managed-api-service -y --rosa-cli-required true --cidr-range <IP_ADDRESS>/26 --notification-email<EMAIL_ADDRESS>--addon-managed-api-service 1 --addon-resource-required true
W: Addon 'managed-api-service' needs access to resources in account '0124567910'
I: Created role 'chfan-sts-y8x4-redhat-rhoam-3scale-sts-s3-credentials' with ARN 'arn:aws:iam::0124567910:role/chfan-sts-y8x4-redhat-rhoam-3scale-sts-s3-credentials'
E: Failed to add operator role to cluster 'chfan-sts': Failed to verify operator role for cluster '20jnic2pu9seuitl5ta0frmc8evn1tc9'
➜  ~ rosa install addon --cluster chfan-sts managed-api-service -y --rosa-cli-required true --cidr-range <IP_ADDRESS>/26 --notification-email<EMAIL_ADDRESS>--addon-managed-api-service 1 --addon-resource-required true
W: Addon 'managed-api-service' needs access to resources in account '0124567910'
E: Failed to add operator role to cluster 'chfan-sts': Failed to verify operator role for cluster '20jnic2pu9seuitl5ta0frmc8evn1tc9'
➜  ~ rosa install addon --cluster chfan-sts managed-api-service -y --rosa-cli-required true --cidr-range <IP_ADDRESS>/26 --notification-email<EMAIL_ADDRESS>--addon-managed-api-service 1 --addon-resource-required true -
W: Addon 'managed-api-service' needs access to resources in account '0124567910'
I: Enabling interactive mode
? Billing Model: standard
I: Add-on 'managed-api-service' is now installing. To check the status run 'rosa list addons -c chfan-sts'
I: To install this addOn again in the future, you can run:
   rosa install addon --cluster chfan-sts managed-api-service -y --rosa-cli-required true --cidr-range <IP_ADDRESS>/26 --notification-email<EMAIL_ADDRESS>--addon-managed-api-service 1 --addon-resource-required true --billing-model standard

It seems there is a delay between adding the required addon credenital requests and being available on the cluster api which fails some sort of validation.
This occurs on even the latest rosa version - 1.2.10 (at the time of writing) and is not the best user experience since the error looks to be transient

/remove-lifecycle stale

I've faced it as well. @laurafitzgerald Did you manage to resolve it?

I've also faced this issue more then once - any updates?

I've also created this JIRA that tracks this - https://issues.redhat.com/browse/SDA-7568 and it looks like it has marked for an upcoming sprint

/reopen
/remove-lifecycle rotten
/lifecycle frozen


Getting 404 error while calling methong getTransactionInfo (APIError Code: 4040010)

I am trying to fetch transaction details and constantly getting a 404 error.
When I try to fetch details for older transactions, it works.
If it might have something to do with reading the p8 file, can you explain what readFile(filePath) function does?
I am currently passing the key as
const privateKeyPath = "/SubscriptionKey.p8";
const privateKey = fs.readFileSync(__dirname + privateKeyPath, "utf8");
const serverApi2 = new AppStoreServerAPIClient(     privateKey,     KEY_ID,     ISSUER_ID,     bundleId,     Environment.PRODUCTION   );
Stuck on this error for quite a while now.

If it works on some transactions, it is not a problem with reading the file. Is this Sandbox or Production?

It is on Production.

@abdullahjavaid86 Without more information, I am unable to diagnose what might be happening. As this seems to be an issue server-side, not as much with the library itself, please file a ticket in Feedback Assistant (http://feedbackassistant.apple.com), include the transaction id(s), time of request, appAppleId, and any other information related to the issue.

I have already done that, thanks for your response.


Add VHS

https://github.com/charmbracelet/vhs

Woah, cool tool. Might be useful for webman's readme.


6.4.2 release was not completed

👋 it looks like 6.4.2 release missed several artifacts for it (like hapi-fhir-6.4.2-cli.zip), thanks!

Looks like it got covered by 6.4.3 release, closing this issue.


Improve API documentation

Issue

Current API documentation (based on doxdox) is hard to read, some workarounds are needed.
We could use another template or switch the doc generator completly

CoS

Improved API documentation, more readable

it's ok for the moment, open for suggestions.


Backend Logs

The live logging is useful, but is there a way to get Websync to save the logs in the back end? Right now they just disappear once I refresh.
Also, is there a way to run it in a web directory (such as /var/www/html/websync) rather than on port 3000?

Saving some kind of logging on the backend would be useful and has been thought of just forgotten to create an issue for it here on github, thanks. :)
Regarding the other question, you must use node to run websync. You will not be able to host websync with apache, nginx or any other web server service. On the other hand you can change the port to what ever you want and with e.g nginx you can set up a reverse proxy with url rewrite to make the url become. websync.jack.com


Change CRUD scaffolding templates

Send an issue and you are part of this great tool :)
Please describe the scenario you stuck in:

Generating new CRUDs ends in much work to fit the general design.

What do you expect to happen?

Generated CRUDs already have the design of CRMP.

What happened instead?
(skip that for new ideas)

Symfony uses it's default templates.

This wont be done in the first version, as most is DDD now and will become CQRS.
So updating this part has only a short benefit.


TemplateNotFound('sidebar-search-bs.html')

When rendering my documentation on readTheDoc I get the following error :
Theme error:
An error happened in rendering the page index.
Reason: TemplateNotFound('sidebar-search-bs.html')

My repository is the following : https://github.com/12rambau/sepal_ui
in my requirements.txt I added :
pydata-sphinx-theme>=0.4.3

and in my conf_file :
extensions = ['sphinx.ext.napoleon', 'pydata_sphinx_theme']
html_theme = 'pydata_sphinx_theme'

Did I miss something ?

no need for extentions ....
sorry for bothering

Indeed, no need to add the theme to the list of extensions.

Sorry to ping again on this closed issue, but I have the same error (the build worked nicely a week ago). Here is my conf.py
extensions = [
    'sphinx.ext.autodoc',
    'sphinx.ext.autosummary',
    'sphinx.ext.intersphinx',
    'sphinx.ext.extlinks',
    'sphinx.ext.mathjax',
    'numpydoc',
    'sphinx.ext.ifconfig',
    'sphinx.ext.viewcode',
    'IPython.sphinxext.ipython_directive',
    'IPython.sphinxext.ipython_console_highlighting',
]

And the error message (full log):
Traceback (most recent call last):
  File "/home/docs/checkouts/readthedocs.org/user_builds/oggm-edu/conda/latest/lib/python3.9/site-packages/sphinx/cmd/build.py", line 280, in build_main
    app.build(args.force_all, filenames)
  File "/home/docs/checkouts/readthedocs.org/user_builds/oggm-edu/conda/latest/lib/python3.9/site-packages/sphinx/application.py", line 352, in build
    self.builder.build_update()
  File "/home/docs/checkouts/readthedocs.org/user_builds/oggm-edu/conda/latest/lib/python3.9/site-packages/sphinx/builders/__init__.py", line 296, in build_update
    self.build(to_build,
  File "/home/docs/checkouts/readthedocs.org/user_builds/oggm-edu/conda/latest/lib/python3.9/site-packages/sphinx/builders/__init__.py", line 360, in build
    self.write(docnames, list(updated_docnames), method)
  File "/home/docs/checkouts/readthedocs.org/user_builds/oggm-edu/conda/latest/lib/python3.9/site-packages/sphinx/builders/__init__.py", line 534, in write
    self._write_serial(sorted(docnames))
  File "/home/docs/checkouts/readthedocs.org/user_builds/oggm-edu/conda/latest/lib/python3.9/site-packages/sphinx/builders/__init__.py", line 544, in _write_serial
    self.write_doc(docname, doctree)
  File "/home/docs/checkouts/readthedocs.org/user_builds/oggm-edu/conda/latest/lib/python3.9/site-packages/sphinx/builders/html/__init__.py", line 611, in write_doc
    self.handle_page(docname, ctx, event_arg=doctree)
  File "/home/docs/checkouts/readthedocs.org/user_builds/oggm-edu/conda/latest/lib/python3.9/site-packages/sphinx/builders/html/__init__.py", line 1061, in handle_page
    raise ThemeError(__("An error happened in rendering the page %s.\nReason: %r") %
sphinx.errors.ThemeError: An error happened in rendering the page activity_sheets/as_gallery.
Reason: TemplateNotFound('sidebar-search-bs.html')

Theme error:
An error happened in rendering the page activity_sheets/as_gallery.
Reason: TemplateNotFound('sidebar-search-bs.html')

For the record, I pinned sphinx-book-theme to <0.1.0 (which pins to al older version of pydata-sphinx-theme) and it now builds properly. I think it's related to us using
html_sidebars = {
    "**": ["sidebar-search-bs.html", "sbt-sidebar-nav.html", "sbt-sidebar-footer.html"]
}

sorry for the noise.


Incorrect image reference in README.md

You may be able to blame @andyvans for this, but the second image should refer to Resources/SettingsPanel2.png - currently they're both referring to the same image 😄

Fixed in f3686acc5f2718bac4bb7dc02ef44a48dcf5d5f4


Memory growth tests

Some primitive tests to test for memory growth.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Tucker seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

From what I can tell, the tests are doing their job properly but we still have memory leaks. but at a rate significantly less than the size of the previous leaks.
The main leak is in the cleanup between using separate SMARTS instances rather than in the reset of episodes.

These tests are catching memory leaks but the root memory leaks have not been tracked down so it should not go in yet.


How do you handle un-normalized columns?

If you have an object that contains a Map of let's say himself.
Menu:

String parent_name
String parent_url
Map String, Menu

To have in HBase: parent_name, parent_url, menu1_name, menu1_url, menu2_name, menu2_url ....
Is this taken care of? Or it can be implemented?

Not taken care of. But can be implemented.


Sometimes click doesn't work

Hello,
I tried to use below code to click the second Courses on web page but some times it works fine, most of the time just throws me an error saying LookUpError.
click(find_all(Text("Courses"))[1])
I also tried to use click(S(selector="//li[@data-report='courses']/a")) but i got the same problem, the first time it works fine, but the rest times don't work. Anyone has any idea?

Why not just click("Courses")?

Or click(Text("Courses", below="Some other text"))?
The reason it doesn't work with find_all is that find_all is evaluated immediately, whereas click("some Text") waits up to 10 seconds for "some text" to appear.

because there are more than two "Courses" in the same webpage. I'm pretty sure the xpath finds the element well but just doesn't work also.

I got that. Helium's recommended way of distinguishing such ambiguous occurrences is via below=, to_right_of=, to_left_of= and above=. See here.


Files.app was crushed after write operations in LocalUser mode

SMB/CIFS app (ver. 1.2.0) can succesfully mount SMB folders for Domain Users Accounts as well as for Local Users Accounts.
In a folder which is mounted for domain user account all works fine.
If you try to delete and/or edit files in a folder  which is mounted for local user account then tose operations are completed in most cases but Files.app will crushed and Error Message will appeare:
SMB/CIFS File System
5963778: UNKNOWN

Steps to reproduce:

Mount SMB folder by local user account in SMB/CIFS app
Tap SMB folder in Files app (some errors in Files.app occur (see below) but all working fine for a user)
(On Chromebook) Create/Edit/Delete a single file. All works fine.
(On Windows Client) Create a subfolder "Images" and copy 9 images into it. All works fine but the folder did not refreshed on Chromebook.
(On Chromebook) Close Files.app and launch it again. (Images folder and their content appeared in Chromebook)
Tap  "Images" folder in Files.app (Result: see on picture 1)
Press "Trash" icon in Files.app (Result: see picture 2)
Press "Delete" button on confirmation dialog. (Result: see picture 3)
Files.app stalled after deleting 3 files only.
Error messages flashed from a SMB app.

Picture 1-3:
Top left - Files.app
Top right - SMB background console
Bottom left - Files.app front-end console
Bottom right - Files.app background console
Picture 4 (SMB error context):
Top left - Files.app
Middle left - Files.app front-end console
Bottom left - Files.app background console
Right - SMB background console scrolled up to the first error
Picture 5 - SMB "background" console is filtered by "Error" filter

Picture 1 - Images in SMB folder were shown

Picture 2 - Confirmation dialog is shown

Picture 3 - Files.app stalled after delete 3 files only

Picture 4 - SMB background console is scrolled to show fisrt error

Picture 5 - SMB background console (Full errors list)

@AndreyLavrov Well, I could reproduce this issue. I will investigate this reason and fix this.

@AndreyLavrov I just fixed this issue at https://github.com/yoichiro/chromeos-filesystem-cifs/commit/a6f1dab587580c481a81fc726aca7c448f197222. Could you check whether this issue is fixed by the diff?

Great work!
SMB ver.1.2.1 don't crush Files.app!
If a user don't look into a console then user experience is good (see picture 1).

SMB app passed "delete images test" successfully but have many errors in SMB background console as well as Files.app console (see pictures below).

@AndreyLavrov Big thanks! I will release the new version as 1.2.0 today.

@AndreyLavrov I have just released the version 1.2.0. If this issue is reproduced at 1.2.0, please reopen this issue. Thank you for this reporting!


Video upload issues

While trying to use TwitchLib for a simple console application that uploads videos to Twitch I came across a problem. When browsing through the code to find the cause for that I noticed two other things in uploadVideoParts(...) that need to be taken a look at.
1. Uploads time out on slow internet connections
My upload is a whopping 60 kBytes/second which causes the connection opened to upload a video fragment to timeout. In my opinion a customizable timeout should be presented as an option to the user to account for such slow upload speeds.
2. The entire video file is read into memory at once
https://github.com/swiftyspiffy/TwitchLib/blob/a75a218eb610d38992b1de95eca37d5bda47cd22/TwitchLib/Api/Sections/Videos.cs#L225
After checking the file size the library proceeds with loading the entire file into memory. This will be a problem for large files (remember the API limit of 10 GB). An alternative would be using a FileStream and reading segments from it.
3. The segmentation process cuts off the last 24MB of a file
https://github.com/swiftyspiffy/TwitchLib/blob/a75a218eb610d38992b1de95eca37d5bda47cd22/TwitchLib/Api/Sections/Videos.cs#L231
After examining the code used to segment the video file I noticed that the for loop misses 1 iteration. Reason for this is parts not taking the last part into account. This results in the last 24 MB of the file being cut off. I have tested this with a 35 second long 25MB big file. The resulting video on Twitch is one second long. This can be solved by adding 1 to the number.
Alternatively I imagine one could also move the code for the last part out of the loop and execute it afterwards.
Another option might be using a while loop that exits once FileStream.Read() returns 0 as per the documentation.

Good catch with these, I had not considered memory or slower connections when writing this code, so I was a bit naive in those respects. I agree with the changes. Thanks!

Merged your fixes in which I think should resolve the problem. Thanks again :)

Thanks for merging the changes. My pull request solves the segmentaton and memory problems.
It does however not affect behaviour regarding slow upload speeds. It might be useful to provide more information to the user here, for example using something like a ApiTimeoutException. Currently the exception thrown only says "A Task has been cancelled", if I remember correctly.

I will look into this, my time is a bit constrained so there's abit of a backlog to get through, but I'll definitely add this at some point.


update docker-for-data-scientists

Jeff -
I had some time to run through your tutorial, made a few updates to make it work on my systems. Let me know if you'd like me to make any changes....and feel free to merge/edit or ignore PR as you prefer.

Chris

Main changes:

fixed tensorflow examples
TensorFlow-Examples no longer in base image; added to dockerfile
use python3 & pip installed needed python packages not in base image
updated shell scripts; more reliable w/current docker /cross-platform
updated docker images to current versions
added .gitignore for downloaded data & pycharm
removed hidden for pycharm config files from git commit
tested on win 10/docker desktop

Chris,
Thanks so much for the updates! They are much appreciated!
My plan is to verify that everything works in my environment and then merge your changes. I ran into some issues with workflow-3a, which I'm debugging.  One question: what is the folder workflow-3a/Tensorflow-Examples? It looks like a git submodule, but I did not find a .gitmodules file.
Thanks,
Jeff

Jeff,
You're welcome - glad to help
Definitely verify everything, I only ran all this in Win 10 (except
workflow-3b, which will not work because Docker containers can't access GPU
through Windows Docker Decktop -- may change in 2020 win WSL2 comes out).
I did one or two quick tests on Ubuntu, but did not test everything.
Regarding TensorFlow-Examples, that is an artifact that should not have
been included in the commit.  The examples and sample data were removed
from tensorflow docker image, and is now in a separate github repo... so I
included RUN apt-get git-core and RUN git-clone TensorFlow-Examples
commands in the workflow-3a dockerfile so we can pull in the latest stuff
anytime we build a new docker image for this activity.  There is no need
for this content to be in your source repo, so if there's a better way to
do that, am glad to fix.
Chris
Christopher Brousseau
Founder & CEO
surfaceOwl.com https://www.surfaceOwl.com
On Tue, Sep 10, 2019 at 4:52 PM Jeff Fischer<EMAIL_ADDRESS>wrote:

Chris,
Thanks so much for the updates! They are much appreciated!
My plan is to verify that everything works in my environment and then
merge your changes. I ran into some issues with workflow-3a, which I'm
debugging. One question: what is the folder
workflow-3a/Tensorflow-Examples? It looks like a git submodule, but I did
not find a .gitmodules file.
Thanks,
Jeff
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/jfischer/docker-for-data-scientist-examples/pull/1?email_source=notifications&email_token=AFM7PXEB3JZSOVXI3YPNMJ3QJAXKRA5CNFSM4IVNFIJKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6M2LWI#issuecomment-530163161,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFM7PXH2EDDJFMSWN5G72B3QJAXKRANCNFSM4IVNFIJA
.


chore: Add entries to gitignore

Fixes #.
Description of the changes:

Add new entries to the .gitignore file related to macOS to prevent files from showing as changed/added.

How changes were validated:

This PR replaces the other one I did last week (https://github.com/unoplatform/calculator/pull/263)


Metasploit::Cache::Exploit::Class

MSP-12292
Pre-verification steps

[x] Merge #13

Postgres

[ ] rm Gemfile.lock
[ ] bundle install --without sqlite3
[ ] rake db:drop db:create db:migrate

Test coverage

[ ] rm -rf coverage
[ ] rake cucumber spec coverage
[ ] VERIFY no failures
[ ] VERIFY 99.68% coverage

Documentation Coverage

[ ] rake yard
[ ] VERIFY only [warn]ings are

[warn]: @param tag has unknown parameter name: module_instances
    in file `app/models/metasploit/cache/module/class.rb' near line 147
[warn]: @param tag has unknown parameter name: module_instance
    in file `app/models/metasploit/cache/module/instance.rb' near line 317
[warn]: @param tag has unknown parameter name: architecture_abbreviations
    in file `app/models/metasploit/cache/module/instance.rb' near line 336
[warn]: @param tag has unknown parameter name: architectured
    in file `app/models/metasploit/cache/module/instance.rb' near line 353
[warn]: @param tag has unknown parameter name: platforms
    in file `app/models/metasploit/cache/module/instance.rb' near line 367
[warn]: @param tag has unknown parameter name: platform_fully_qualified_names
    in file `app/models/metasploit/cache/module/instance.rb' near line 403
[warn]: @param tag has unknown parameter name: module_target
    in file `app/models/metasploit/cache/module/instance.rb' near line 420
[warn]: @param tag has unknown parameter name: module_instance
    in file `app/models/metasploit/cache/module/instance.rb' near line 434
[warn]: @param tag has unknown parameter name: module_target
    in file `app/models/metasploit/cache/module/instance.rb' near line 492

[ ] VERIFY no undocumented objects

Sqlite3

[ ] rm Gemfile.lock
[ ] bundle install --without postgresql
[ ] rake db:drop db:create db:migrate

Test coverage

[ ] rm -rf coverage
[ ] rake cucumber spec coverage
[ ] VERIFY no failures
[ ] VERIFY 99.64% coverage

Documentation coverage

[ ] rake yard
[ ] VERIFY only [warn]ings are

[warn]: @param tag has unknown parameter name: module_instances
    in file `app/models/metasploit/cache/module/class.rb' near line 147
[warn]: @param tag has unknown parameter name: module_instance
    in file `app/models/metasploit/cache/module/instance.rb' near line 317
[warn]: @param tag has unknown parameter name: architecture_abbreviations
    in file `app/models/metasploit/cache/module/instance.rb' near line 336
[warn]: @param tag has unknown parameter name: architectured
    in file `app/models/metasploit/cache/module/instance.rb' near line 353
[warn]: @param tag has unknown parameter name: platforms
    in file `app/models/metasploit/cache/module/instance.rb' near line 367
[warn]: @param tag has unknown parameter name: platform_fully_qualified_names
    in file `app/models/metasploit/cache/module/instance.rb' near line 403
[warn]: @param tag has unknown parameter name: module_target
    in file `app/models/metasploit/cache/module/instance.rb' near line 420
[warn]: @param tag has unknown parameter name: module_instance
    in file `app/models/metasploit/cache/module/instance.rb' near line 434
[warn]: @param tag has unknown parameter name: module_target
    in file `app/models/metasploit/cache/module/instance.rb' near line 492

[ ] VERIFY no undocumented objects

Post-merge Steps
Perform these steps prior to pushing to master or the build will be broken on master.
Version

[ ] Edit lib/metasploit/cache/version.rb
[ ] Remove PRERELEASE and its comment as PRERELEASE is not defined on master.

Gem build

[ ] gem build *.gemspec
[ ] VERIFY the gem has no '.pre' version suffix.

RSpec

[ ] rake spec
[ ] VERIFY version examples pass without failures

Commit & Push

[ ] git commit -a
[ ] git push origin master

Coverage increased (+0.11%) to 99.75% when pulling 8a9e51b37926864ff13b7621173b9aca06184d45 on feature/MSP-12292/exploit-class into 44513d6b8e8d04d195e5bd236a7d8fa6adae4913 on master.

Need some help knowing how best to merge master in here. I'm getting some conflicts that I think need to be resolved by accepting both versions at once, but I'm not sure.

I'll merge master to the branch and fix the conflicts myself.

Master is merged and I updated the verification steps to cover postgresql and sqlite3 with correct coverage percentages and acceptable yard warnings.


KVM: Fix plugging ip addresses to the wrong interface

Fix for KVM, where the public ip would be added to the guest network. Reason is because it used 'broadcastUrl' as an index, which turned out not to be unique in all cases and was overwritten. This resulted in the public ip address being added to the wrong interface (see screenshots).
Problem:

After patch:

The <IP_ADDRESS>/24 range is used as 'public' in this lab.

Strangely enough, I just ran into this problem yesterday.I'll pull it in. Thanks Remi!

Jenkins error says: Unable to instrument project, seems like a workspace issue or such.

This time around Jenkins is happy and Travis times out :-s
No output has been received in the last 10m0s, this potentially indicates a stalled build or something wrong with the build itself.

Force pushed a final time, else I give up on this.

@kiwiflyer Sorry but this seems to have issues. We run this in prod with Cosmic but apparently some other patch is missing here in order for this to work properly. Unfortunately I have no more time to work on this now.

this does not work for me as well.
If there are multiple public interfaces in the VR, only the last one works.


TypeError when pasting

Summary
mystbin_client.create_paste raises TypeError
Reproduction Steps

Python version: 3.10.0
mystbin.py version: 5.0.0, installed with pip install mystbin.py
OS: Windows 10

Minimal Reproducible Code
mystbin_client = mystbin.Client(session=self.bot.session)
paste = await mystbin_client.create_paste(filename="12345.txt", content="sample text", syntax="txt")

Expected Results
An exception would not be raised.
Actual Results
Traceback (most recent call last):
  File "C:\Users\chris\Documents\programming\Parhelion\venv\lib\site-packages\discord\ext\commands\core.py", line 190, in wrapped
    ret = await coro(*args, **kwargs)
  File "C:\Users\chris\Documents\programming\Parhelion\cogs\other.py", line 129, in share
    paste = await mystbin_client.create_paste(
  File "C:\Users\chris\Documents\programming\Parhelion\venv\lib\site-packages\mystbin\client.py", line 77, in create_paste
    return Paste._from_data(data)
  File "C:\Users\chris\Documents\programming\Parhelion\venv\lib\site-packages\mystbin\paste.py", line 159, in _from_data
    files = [File._from_data(data) for data in payload["files"]]
TypeError: string indices must be integers

I printed the string and got this:
payload = '{"id":"ClassicVcrDod","author_id":null,"created_at":"2022-08-29T05:50:31.375809+00:00","expires":null,"files":[{"filename":"20220829055032.txt","content":"test","loc":1,"charcount":4}],"notice":null}'

The string hadn't been converted to a dict like it should have been.
Checklist

[X] I have searched the open issues for duplicates.
[X] I have shown the entire traceback, if possible.
[ ] I have included debug logging (with my latest token remove), if applicable.

Additional Context
Looks like this is what is happening:

HTTPClient.request can return a str
. . . to HTTPClient._create_paste which then returns a str
. . . to Client.create_paste which gives the str
. . . to Paste._from_data which requires a PasteResponse (a TypedDict subclass), not a str

A simple workaround that I tested is to add this to the top of Paste._from_data:
if isinstance(payload, str):
    payload: dict = json.loads(payload)

But I'm not sure if HTTPClient.request should never return a str instead.
Thanks for all of your work on this repo!

Hey, thanks for letting me know.
I actually knew about this error already. Currently the PUT /paste request we send to mystbin's backend API does not return the application/json content type header, so when I parse the response it assume it is not JSON to avoid an error... thereby causing a fun new one.
I'm wondering if I should skip this and assume it's json for now, until we fix the backend.

This will now be fixed when https://github.com/PythonistaGuild/MystBin/commit/efc936c28da89bc95070a7b70ae91978e0337e42 is made into a release and deployed.

I got that commit and made it into a release, this should be resolved now. Feel free to re-open if not!

Awesome, it works! Thanks!


[ESP32] Added cmake script to generate the factory and esp_secure_cert partition during build time and flash in a single flash command.

Change Overview:

Added a cmake script to generate the factory partition and esp_secure_cert partition during build time and flash
the partitions along with the app in a single flash command.

Testing

Tested the lighting-app esp32 by enabling the script and flashing the app and partitions in a single command and successfully commissioned the device by enabling the appropriate config options for the partitions.

Old PR fails lint and has merge conflicts. Assuming stale and closing.


Use unminified file in bower.json "main".

The "main" field in bower.json should use the full, uncompressed JS file otherwise it's more hassle than help.

In min.js msToTimecode doesn't even accept the 2nd parameter show_ms.
I was getting the same output regardless true/false values. So I printed the msToTimecode function and found only 1 params declared.
Please update the .min.js or point to the uncompressed version of Tock.
Btw, love it!

Fixed in 1.0.11. Bower now uses tock.js.
Cheers!


lvgl: add customize compilation optimization level config

Summary
Add lvgl custom compilation optimization level to balance code size and code execution efficiency.
Impact
lvgl application.
Testing
set CONFIG_LV_OPTLEVEL=-O3

MacOS compilation error. It doesn't seem to have anything to do with my changes.
make[1]: *** [bin/lib_langinfo.o] Error 1
error: unknown warning option '-Wstack-usage='; did you mean '-Wstack-exhausted'? [-Werror,-Wunknown-warning-option]
error: unknown warning option '-Wstack-usage='; did you mean '-Wstack-exhausted'? [-Werror,-Wunknown-warning-option]
make[1]: *** [bin/lib_iconv.o] Error 1
error: unknown warning option '-Wstack-usage='; did you mean '-Wstack-exhausted'? [-Werror,-Wunknown-warning-option]
make[1]: *** [bin//lib_expl.o] Error 1
make[2]: *** [wasm_runtime_common.c.Users.runner.work.nuttx-apps.nuttx-apps.sources.apps.interpreters.wamr.o] Error 1
make[2]: Target `all' not remade because of errors.
make[1]: *** [/Users/runner/work/nuttx-apps/nuttx-apps/sources/apps/interpreters/wamr_all] Error 2
make[1]: Target `all' not remade because of errors.
make: *** [/Users/runner/work/nuttx-apps/nuttx-apps/sources/apps/libapps.a] Error 2
error: unknown warning option '-Wstack-usage='; did you mean '-Wstack-exhausted'? [-Werror,-Wunknown-warning-option]
make[1]: *** [bin/lib_maxlocale.o] Error 1
error: unknown warning option '-Wstack-usage='; did you mean '-Wstack-exhausted'? [-Werror,-Wunknown-warning-option]
make[1]: *** [bin/arch_atomic.o] Error 1
error: unknown warning option '-Wstack-usage='; did you mean '-Wstack-exhausted'? [-Werror,-Wunknown-warning-option]
error: unknown warning option '-Wstack-usage='; did you mean '-Wstack-exhausted'? [-Werror,-Wunknown-warning-option]
make[1]: *** [bin/lib_mknod.o] Error 1
make[1]: *** [bin//lib_fabsl.o] Error 1
error: unknown warning option '-Wstack-usage='; did you mean '-Wstack-exhausted'? [-Werror,-Wunknown-warning-option]
make[1]: *** [bin/lib_umask.o] Error 1
error: unknown warning option '-Wstack-usage='; did you mean '-Wstack-exhausted'? [-Werror,-Wunknown-warning-option]
make[1]: *** [bin/lib_utsname.o] Error 1
error: unknown warning option '-Wstack-usage='; did you mean '-Wstack-exhausted'? [-Werror,-Wunknown-warning-option]
error: unknown warning option '-Wstack-usage='; did you mean '-Wstack-exhausted'? [-Werror,-Wunknown-warning-option]
make[1]: *** [bin/lib_getrandom.o] Error 1


adding user=True to installing_nbext_py

I was recently trying to play around with the molecular design toolkit and was having problems related to the nbmolviz extension. I came to a similar conclusion as Issue #63 in autodesk/molecular-design-toolkit, where upon import of moldesign, an attempt to install the extension to /usr/... (somewhere in root) is denied and doesn't allow viewing of molecules.
In nbmolviz/init.py (118), when the enabling of the nbmolviz-js extension is invoked, it uses the notebook.nbextensions.install_nb_extension_python function which optionally takes in a 'user' argument which tells the app to install somewhere user has permissions. I added user=True to the arguments of this function.
I cleared out all previous install attempts of nbmolviz, and spun up a new jupyter notebook. Upon import moldesign, I received no warnings of attempted install to root, and was able to visualize molecules.
I ran what py.tests I could in both this repo and mdt, with only the same errors that I previously had appearing. This seems a bit too good to be true, but who knows.

this modification was made at the master branch but CONTRIB.md says to make PRs to dev branch. i changed the base fork to Autodesk:dev only to realize dev is quite far behind master...if you decide to merge my change in, you can update the base fork to whichever you see fit.

@avirshup closing this. it was nice meeting you and chatting! i'll (seriously) try to stop by pier 9 and visit some time, i'd love to see your guys' space.