Add feathers-google-maps

Adds feathers-google-maps.
I wasn't sure where this service would fit into any of the categories already defined, so I defined a new one Google. I noticed there were no other brand/company specific categories so I wasn't sure if that is OK? It also leaves room for other things like feathers-google-calendar, etc.

Seems fine to me, especially since there is a chance for other Google related plugins coming up. Thanks!


Refactor/rename data writer options

To be merged after #1899
rename :

write_showers → write_dl2
write_parameters → write_dl1_parameters
write_images → write_dl1_images
write_raw_waveforms → write_r0_waveforms
write_waveforms → write_r1_waveforms

Moved to #2520


Using with glide ?

Can any one using it with glide ? Ex i want to show badge to image icon but load by Glide first ?

You can provide your own Target<Drawable> and implement onResourceReady() to call Badget.sett().


Implement JSON Query Save Button

Should include short explanation, and alternative copy-able curl command version

The state of the app is now saved in the URL of the app. If the user is interested in grabbing the request body, this information can be found in the browser console. For example on FF:

{"annotationSource":{"resourceSource":{"name":"name"}},"textDateAnnotations":[{"dateFormat":"MM/DD/YYYY","length":10,"start":42,"text":"10/26/2020"},{"dateFormat":"MM/DD/YYYY","length":10,"start":42,"text":"10/26/2020"}],"textPersonNameAnnotations":[{"length":11,"start":42,"text":"Chloe Price"},{"length":11,"start":42,"text":"Chloe Price"}],"textPhysicalAddressAnnotations":[{"addressType":"city","length":11,"start":42,"text":"Seattle"},{"addressType":"city","length":11,"start":42,"text":"Seattle"}]}

The state of the app is now saved in the URL of the app. If the user is interested in grabbing the request body, this information can be found in the browser console. For example on FF:

{"annotationSource":{"resourceSource":{"name":"name"}},"textDateAnnotations":[{"dateFormat":"MM/DD/YYYY","length":10,"start":42,"text":"10/26/2020"},{"dateFormat":"MM/DD/YYYY","length":10,"start":42,"text":"10/26/2020"}],"textPersonNameAnnotations":[{"length":11,"start":42,"text":"Chloe Price"},{"length":11,"start":42,"text":"Chloe Price"}],"textPhysicalAddressAnnotations":[{"addressType":"city","length":11,"start":42,"text":"Seattle"},{"addressType":"city","length":11,"start":42,"text":"Seattle"}]}


Annie/apikey

updated unit tests to test for api_key instead of username and passwords. Added a way to set cloud and api_key once at begining of code. Still need to update readme, Should get to that after lunch.
@madisonmay would be great if I got a code review, but no rush at all; still have plenty to work on in the mean time.

Most tests are currently commented out because they won't pass until the backend supports api_key authentication.

Also need to add an environment variable to codeship.

Awesome, I'll take a look!

Fixed! Also updated the readme and codeship. Glance over when you get the chance!

LGTM!  Let's collapse this down once more.

Ok just finished looking things over, only small things to change.  I think we're now just waiting on apiv2.indico.io to go up.


Segfault in renderFrame when using OBJMaterial with scivis

My program crashes when trying to render a Geometry with an OBJMaterial assigned to it. This only occurs with the scivis renderer. The docs say that OBJMaterials work with scivis, so I don't know why this is occurring.
Here is a basic example using SDL2 for display.
The crash occurs in renderFrame only when setMaterial is used. I'm using v1.5.0.
Any help would be appreciated.
#include <limits.h>
#include <stdint.h>
#include <stdlib.h>

#include <ospray/ospray_cpp.h>
#include <SDL2/SDL.h>

int main(int argc, const char **argv)
{
	SDL_Init(SDL_INIT_VIDEO);
	ospInit(&argc, argv);
	SDL_Window *window = SDL_CreateWindow("", 100, 100, 400, 400, 0);
	SDL_Renderer *renderer = SDL_CreateRenderer(window, -1, SDL_RENDERER_ACCELERATED);
	SDL_Rect viewport = {.x = 0, .y = 0, .w = 400, .h = 400};

	// Set up geometry, a square composed of two triangles.
	const float vertices[] = {
		0.0f, 0.0f, 1.0f, 0.f,
		2.0f,  0.0f, 1.0f, 0.f,
		2.0f, 2.0f, 1.0f, 0.f,
		0.0f,  2.0f, 1.0f, 0.f
	};
	const float colours[] = {
		1.0f, 0.0f, 0.0f, 1.0f,
		1.0f, 0.0f, 0.0f, 1.0f,
		1.0f, 0.0f, 0.0f, 1.0f,
		0.0f, 1.0f, 0.0f, 1.0f
	};
	const int32_t indices[] = {
		0, 1, 2,
		0, 2, 3
	};

	OSPMaterial material = ospNewMaterial2("scivis", "OBJMaterial");

	ospray::cpp::Model world;
	ospray::cpp::Geometry mesh("triangles");
	mesh.setMaterial(material); // XXX Here is the problem line
	OSPData data = ospNewData(4, OSP_FLOAT3A, vertices, 0);
	ospCommit(data);
	mesh.set("vertex", data);
	ospRelease(data);
	data = ospNewData(4, OSP_FLOAT4, colours, 0);
	ospCommit(data);
	mesh.set("vertex.color", data);
	ospRelease(data);
	data = ospNewData(2, OSP_INT3, indices, 0);
	ospCommit(data);
	mesh.set("index", data);
	ospRelease(data);
	mesh.commit();
	world.addGeometry(mesh);
	mesh.release();
	world.commit();

	// Set up light
	OSPLight light = ospNewLight2("scivis", "ambient");
	ospCommit(light);
	OSPData lights = ospNewData(1, OSP_LIGHT, &light, 0);
	ospCommit(lights);

	// Set up camera
	const float CAMERA_POSITION[] = {1, 1, -2};
	const float CAMERA_UP_VECTOR[] = {0.f, 1.f, 0.f};
	const float CAMERA_DIRECTION[3] = {0, 0, 1};
	ospcommon::vec2i imageDimensions = {400, 400};
	OSPCamera camera = ospNewCamera("perspective");
	ospSetf(camera, "aspect", imageDimensions.x / (float) imageDimensions.y);
	ospSet3fv(camera, "pos", CAMERA_POSITION);
	ospSet3fv(camera, "dir", CAMERA_DIRECTION);
	ospSet3fv(camera, "up",  CAMERA_UP_VECTOR);
	ospCommit(camera);

	// Set up renderer
	ospray::cpp::Renderer rayTracer("scivis");
	rayTracer.set("aoSamples", 1);
	rayTracer.set("bgColor", ospcommon::vec4f{1, 1, 1, 1});
	rayTracer.set("model",  world);
	rayTracer.set("camera", camera);
	rayTracer.set("lights", lights);
	rayTracer.commit();

	ospray::cpp::FrameBuffer frameBuffer(imageDimensions,
		OSP_FB_RGBA8, OSP_FB_COLOR | OSP_FB_ACCUM);

	bool running = true;
	while (running) {
		SDL_Event event;
		while (SDL_PollEvent(&event)) {
			switch (event.type) {
			case SDL_QUIT:
				running = false;
				break;
			}
		}

		// Render and display image
		frameBuffer.clear(OSP_FB_COLOR | OSP_FB_ACCUM);
		rayTracer.renderFrame(frameBuffer, OSP_FB_COLOR | OSP_FB_ACCUM);
		SDL_RenderClear(renderer);
		uint32_t *const colourBuffer = (uint32_t *) frameBuffer.map(OSP_FB_COLOR);
		SDL_Surface *surface = SDL_CreateRGBSurfaceWithFormatFrom(colourBuffer,
			imageDimensions.x, imageDimensions.y, CHAR_BIT * sizeof(uint32_t),
			imageDimensions.x * sizeof(uint32_t), SDL_PIXELFORMAT_ABGR8888);
		SDL_Texture *texture = SDL_CreateTextureFromSurface(renderer, surface);
		frameBuffer.unmap(colourBuffer);
		SDL_RenderCopyEx(renderer, texture, NULL, &viewport, 0, NULL,
			(SDL_RendererFlip) (SDL_FLIP_VERTICAL | SDL_FLIP_HORIZONTAL));
		SDL_DestroyTexture(texture);
		SDL_FreeSurface(surface);
		SDL_RenderPresent(renderer);
	}

	SDL_DestroyRenderer(renderer);
	SDL_DestroyWindow(window);
	SDL_Quit();
	return EXIT_SUCCESS;
}

hello,
make sure to commit the material and see if that fixes the crash.

Hi, that's fixed the problem. Thanks!
I didn't think commit() would be necessary after just calling a constructor (thought it was just for after set()s). Perhaps this could be mentioned in the docs? Might prevent someone else making the same mistake.
Btw, please feel free to reuse the above SDL sample in another example app etc.

Thanks for the SDL template. For documentation of ospCommit, please have a look at chapter Objects.


Set docs folder as output for Eleventy as requested by GitHub Pages

Change default output folder in Eleventy to docs/ folder which is the one searched for static resources by GitHub Pages.

Completed with commit 4b131c71891cc780f653c2d45e9897a972934f44.


Unit tests for RecoverStaleVolume Controller

Describe your changes
Issue ticket number and link
Checklist before requesting a review

[x] I have performed a self-review of my code
[x] If it is a core feature, I have added thorough tests.
NA
[x] I have made sure existing UTs are not impacted
[x] I have executed all necessary linter and made sure internal pipeline/travis is not broken
https://v3.travis.ibm.com/github/alchemy-containers/ibm-object-csi-driver/jobs/21450000


GEODE-1740: Potential region inconsistency with concurrent clear during commit processing

It was observed that region operations performed within a transaction were not

acquiring region modification locks during commit processing. This lock is used to ensure region
consistency during CLEAR processing.

The fix for GEODE-1740 was to acquire cache modification locks for regions involved during commit
processing. A read lock is taken for each region involved thus allowing concurrent region
operations while preventing CLEAR from being able to acquire the write lock and thus waiting
until transaction processing is complete.

Closed as incomplete


firefox: shim offerToReceive*: false

which changed behaviour with RTCRtpTransceivers

@jan-ivar could you PTAL?

I'd rather fix this on Firefox, in https://bugzilla.mozilla.org/show_bug.cgi?id=1425618

SGTM. Ltes keep this open until you land. It will also be interesting to see if anyone complains even though I doubt people test properly in Nightly

actually closing it is easier ;-)


Fixed style activator not publishing changes, causing animations not to start/stop

What does the pull request do?
This PR ensures that StyleActivatorBase.ReevaluateIsActive() publishes changes that may have happened in GetIsActive().
A test has been added.
What is the current behavior?
StyleActivatorBase.GetIsActive() has a side effect and may change its _value. When this happens, the next call to ReevaluateIsActive() doesn't publish the updated value since it hasn't changed from its point of view.
This is not theoretical, this happens in two places currently:

ValueStore.ReevaluateEffectiveValues(): calls frame.IsActive
ValueStore.ReevaluateEffectiveValue(): calls frame.TryGetEntryIfActive()

In our case, the frame is a StyleInstance subscribed to the activator to know when to start or stop its animations. This results in animations never stopping or never starting. See #11803 for reproduction code, or the added unit test.
What is the updated/expected behavior with this PR?
StyleActivatorBase.ReevaluateIsActive() correctly publishes changes.
How was the solution implemented (if it's not obvious)?
GetIsActive() doesn't have any side effect anymore: the value isn't changed when this method is called, making it easier to reason about and debug. The exception being the very first call, used for initialization purposes, since ReevaluateIsActive must only publish changes happening after the initial value.
This change solved the problem, and all tests passed except Style_Can_Use_NthChild_Selector_With_ItemsRepeater. It turns out that the activator fix exposed a bug in NthChildActivator. When ItemsRepeater.OnElementClearing clears an element, it triggers a ChildIndexChanged event with an index of -1. But -1 is already a special value in that activator meaning "I don't know what the index is, ask the container". Except that since the element is being cleared, -1 in this case is really "I don't have an index anymore", and asking the container returns a wrong index since the repeater is in the middle of clearing the items.
This is fixed by treating -1 as itself (effectively never matching the selector) and using null for unknown index.
Fixed issues
Fixes #11803

You can test this PR using the following package version. 11.0.999-cibuild0036723-beta. (feed url: https://nuget-feed-all.avaloniaui.net/v3/index.json) [PRBUILDID]


Restart topology on uncaught exception

A mechanism to start over the topology when the topology crashes.
If a Quarks thread abruptly terminates due to an uncaught exception the runtime shuts down.  There are several alternatives for preventing the Quarks application from becoming unavailable:

Restart the failed oplet. In the ETIAO runtime, a source and all downstream oplet invocations (up to an Isolate) will execute in the same thread, so the runtime needs to restart the failed path.

Have a monitor service which resubmits the topology in case it is shut down.

Any thoughts or comments?

It might be simpler to stop & restart the whole topology.
Restarting the sequence of oplets is tempting, but may run into issues when the oplet is fed by mutliple threads, e.g. a join.

Moved to https://issues.apache.org/jira/browse/QUARKS-8


Redundant customizations of the culture in the CultureInfoManager class after updating to .NET 8 in the BlazorDual project template

After updating to .NET 8 a lot of changes applied to the culture in the CustomizeCultureInfoForFaCulture method of the CultureInfoManager.cs file is redundant.
the only lines of code that is required now are shown in the following image:

the rest of the method body should be completely removed.
this method starts at this line:
https://github.com/bitfoundation/bitplatform/blob/fcb83f2c6da2a1b42c792497b39f977426e96917/src/Templates/BlazorDual/Bit.BlazorDual/src/BlazorDual.Shared/Infra/CultureInfoManager.cs#L54

resolved!


text are getting messed up after convert into canvas

I am using some HINDI Lenguage text and when i convert these text into canvas the dashed circles are appearing.

Is this still an issue with v1.0.0? If so, could you please share an example on jsfiddle.


Is Extra.forbid necessary?

Hello!
First of all, thank you for opening such an excellent code! I am truly excited and want to contribute somehow.
Now I try to read codes regarding openai.py and found that Extra.forbid at here.
However, I can initialize it like the code below.
OpenAI(temperatures=0, hey = "hey", hello = "how are you?")

The reason is OpenAI class sets all extras inputs as model_args at here
I assume this validation was added to accommodate future changes in the GPT API parameter, but I think it is likely to cause confusion for the reader.
Therefore my suggestion is simply to delete one of the following part

the part of Extra.forbid at line 58
Or delete the validation part, which starts from line 60, and add a document like if you want to set more parameter of GPT API, please add parameter in model_args.

please tell me how you feel about my suggestion.
thank you.
Yongtae

good point. you are correct in all your assumptions.
i think in order to provide flexiblity for the user, id prefer to do suggestion 1. maybe at the same time, we can add a logger.warning when extra model_args are provided?
did you want to take a stab at this? if not, im happy to - lmk

Hi @hwchase17
thank you for your kind response!
can I handle this issue?
after a fix, I will contact you.

@hwchase17 I have short question.
I notice that you didn't define logger.
so can I make 2 pr below?

define logger

If you are particular about the logger setup, you may do it.

delete  the part of Extra.forbid at line 58

@Yongtae723 that sounds good for me
for logger, lets just use the default python logger, eg
import logging
logger = logging.getLogger(__name__)
....
logger.warning(..)

@hwchase17
I Created PR for adding a logger. If this PR is merged, I will make a new pr for removing Extra into main.
Thank you.

@Yongtae723 merged it in!

Thank you @hwchase17 !
I send the second PR!
thank you!
Yongtae

@hwchase17 Thank you for giving me the opportunity to make a contribution.

thank you :)


navigator: always make sure that we set target lat/lon for fixed wing

Executing commander takoeff in SITL lead to the vehicle performing a nice flyaway as there was no lat or longitude set in the position setpoint triplet.
I assume that flighttask is handling this case for multirotor takeoff but fixed wing was broken.
This seems like the best fix to me but maybe there are other suggestions for other hackeries.

@Antiheavy I figured this out when I was trying to see figure out what the fixed wing behavior is in Takeoff mode.

@hamishwillee FYI

Wow thanks!  What is the expected vehicle  Behavior with this change?  Does it set the target point immediately at takeoff to be its own location? Or does it wait until exiting takeoff mode (by altitude params) and then immediately make the setpoint?

@Antiheavy What it does now is that it sets the takeoff location as target position for the takeoff. I was worried about that this could result in takeoff at high roll angles but the position controller actually limits roll angle to 15 degrees for this reason. So the vehicle will takeoff and then will eventually loiter around the takeoff location. Was thinking about using home as well...

@dagar

I was wondering about handling this in the position controller the same way so that a runway takeoff or hand launch could always do the right thing, but that probably isn't a quick fix.

Also sounds plausible. Would need to look into it but might not be that hard.

@RomanBapst Awesome. So is it using the climbout diff param as the target altitude?
Perhaps a silly question, but can we test for this breaking again?


Why use SetTruncationCorrection in RTK has no performance?

Not an issue, please use the mailing list to clarify your question


Issues with firefox?

Hello!
Thanks for the great script!
I'm having issues with running it in Firefox. I've tried it in version 24 and 10 (downloaded from Firefox) on Mac OSX 10.9.5 (and QA team has tried it on windows), and I can't get it to show.  I've tried both the script provided, and the ng-browser-update (https://github.com/tinesoft/ng-browser-update); and both fail.  With the ng-browser-update if I set ' always-show-bar="true" ', the bar can be seen in Firefox. This leads me to believe the script does work, but isn't being trigger by FF properly. Any ideas?
Thanks!
Mike

Hi,
I think it's an issue that you have the cookie set. Delete the browser-update.org cookie and it should show again!
Best,
Thomas


Consumption only updates 1 sonoff POW out of 2

I have 2 sonoff POW R2 devices on the same firmware and when I run the sonoff.update_consumption service it only updates 1 of them, the same one each time.

Please show logs https://youtu.be/Lt5fT4N5Pm8

sonofflan_debug_4.txt
consumption update is at the end of the log

I think too frequent requests to the cloud bother it.
Please share both pow to my acc<EMAIL_ADDRESS>

I got your devices and remember about you. I haven’t had time to do yet.

Fixed https://github.com/AlexxIT/SonoffLAN/releases/tag/v2.1.1
Please feedback

It is working great now.  Thanks.

Hi. Could moneso explain me how do I call sonoff.update_consumption servide?

Hi. Could someone explain me how do I call sonoff.update_consumption servide?

hello, how do i call sonoff.update_consumption? thanks

To do it manually In Home Assistant go to developer options, services and select sonoff.update_consumption from the list then click CALL SERVICE.
Or you can setup an automation to call the service at a preset time and/or when home assistant starts up:

id: '1591190008529'
alias: Sonoff update consumption
description: ''
trigger:

at: 05:00:00
platform: time
event: start
platform: homeassistant
condition: []
action:
delay: 00:02:00
data: {}
service: sonoff.update_consumption

Fixed https://github.com/AlexxIT/SonoffLAN/releases/tag/v2.1.2
Please feedback

How do I implement this?


[TKNECO 23] PYTHON S2I Task.

The S2I Python task is similar to the S2I-Golang task and is working as expected.

Closing this PR in favor of https://github.com/openshift-pipelines/task-containers/pull/17.


Added pretty diff ternaryline option - Issue 524

Added ternaryline option from pretty diff and corresponding documentation.

Sorry for the delay.  I am reviewing your pull request right now.  I see that both JS Beautify and Pretty Diff are supported beautifiers for this option, but only the prettydiff.coffee file was modified to support this feature.
Does JS Beautify support this feature and if so does any additional code need to be changed to make this feature available to JS Beautify?  If JS Beautify does not support this enhancement it might be better to remove that beautifier from supporting this feature until they are ready.

This is great! Do you know when this will be released? Thank you.

Published to v0.28.23

Thanks that's now working (using "preserve_ternary_lines" in my .jsbeautifyrc file). I'm now having some other problems, but I'll open a separate issue for that.

Thanks for the work on this, sorry i hadn't had a chance to respond to earlier messages.


Move readme examples into Example functions

Suggested by @alecthomas. Beneficial bc examples are runnable and changes to api surface will cause examples to break which will cause builds to fail.
Tried to use them 2ish weeks ago but they weren't rendering where I wanted them to. I Think I was being too nit picky tho

How would this fit into the codebase? I'll throw out my non-thoughtful ideas...

[ ] examples/ package with comprehensive examples (dunno what "comprehensive" means?)
[ ] Add instructions in README to inform user to go to examples/ rather than expect them inline in the README
[ ] Ensure the examples are included in the build phase (to ensure breaking changes are fixed)
[ ] ...how to me them "runnable" (from the description, "Beneficial bc examples are runnable")? Or is this even necessary?

In Go examples are part of the test framework, so they go in *_test.go files, and are tested as part of the normal testing process. They'll also show up directly as runnable examples in the Go docs on pkg.go.dev
Here's a good article on them.


Update with latest generator and swagger

generator version 2.1.119
specs commit bc2b1356222a0bda2b5d9fd7fbad7483bfe1ec08

Can one of the admins verify this patch?

https://github.com/vladbarosan/azure-sdk-for-go/blob/addDocs/README.md#tracing-and-metrics for pretty


[Bug] Dataset files missing from "pip install dcmri"

Example use case python scripts do not run if using just pip install dcmri

Error: dataset file does not exist

Problem:

There are no .pkl files at the location ".venv\Lib\site-packages\dcmri\datafiles" which was created by pip install
These  .pkl files are present in the GitHub repo and are available if create a fork or download .zip and install dcmri from source

This was missing a MANIFEST file. Fixed now hopefully


[video_player] Video Player crashing in Android.

The video player plugin for flutter is crashing in Android when we click on Assets in the Example app. The app is working fine in iOS. The bug we are getting is as follows:
E/flutter (29732): [ERROR:flutter/lib/ui/ui_dart_state.cc(209)] Unhandled Exception: PlatformException(NullPointerException, java.lang.NullPointerException: Attempt to invoke virtual method 'void io.flutter.plugins.videoplayer.VideoPlayer.seekTo(int)' on a null object reference, null, null)
E/flutter (29732): #0      VideoPlayerApi.seekTo
package:video_player_platform_interface/messages.dart:365
E/flutter (29732): <asynchronous suspension>
E/flutter (29732): #1      VideoPlayerController.seekTo
package:video_player/video_player.dart:502
E/flutter (29732): <asynchronous suspension>
E/flutter (29732): #2      VideoPlayerController.play
package:video_player/video_player.dart:398
E/flutter (29732): <asynchronous suspension>
E/flutter (29732):

The flutter doctor output is
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel master, 2.5.0-2.0.pre.113, on macOS 11.4 20F71 darwin-x64,
    locale en-IN)
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
[✓] Xcode - develop for iOS and macOS
[✓] Chrome - develop for the web
[✓] Android Studio (version 4.2)
[✓] VS Code (version 1.58.2)
[✓] Connected device (2 available)

• No issues found!

Please help me in solving this issue for the video_player plugin. I have to release my app for Android and getting this issue suddenly. The plugin was working beautifully previously but suddenly this issue has cropped in. I tried changing the plugin version but the same issue is occurring.
Regards,
Abu Saad Papa

I am facing the same issue.

Same here.

@abusaadp  thanks for filing the issue could you please share the output of flutter doctor -v.

The plugin was working beautifully previously

And possibly the flutter and the plugin version that was working fine previously.
Thank you

Same here

@luccasmaso @swapnens,  I ran this code sample on the latest stable channel and it seems to be working fine without any crash. Let me know if I am missing anything.

flutter doctor -v
[✓] Flutter (Channel stable, 2.2.3, on macOS 11.4 20F71 darwin-arm, locale en-GB)
    • Flutter version 2.2.3 at /Users/mahesh/Documents/flutter
    • Framework revision f4abaa0735 (4 weeks ago), 2021-07-01 12:46:11 -0700
    • Engine revision 241c87ad80
    • Dart version 2.13.4

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Users/mahesh/Library/Android/sdk
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = /Users/mahesh/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.4, Build version 12D4e
    • CocoaPods version 1.10.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)

[✓] IntelliJ IDEA Community Edition (version 2021.1.2)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 57.0.5
    • Dart plugin version 211.7233

[✓] VS Code (version 1.58.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.24.0

[✓] Connected device (4 available)
    • Redmi K20 Pro (mobile)     • <IP_ADDRESS>:5555                     • android-arm64  • Android 11 (API 30)
    • iPhone 12 Pro Max (mobile) • 6A434744-B348-4FB3-AB10-131292174456 • ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-4 (simulator)
    • macOS (desktop)            • macos                                • darwin-arm64   • macOS 11.4 20F71 darwin-arm
    • Chrome (web)               • chrome                               • web-javascript • Google Chrome 92.0.4515.107

• No issues found!

Thank you.

Same here. On Flutter stable and beta both, same issue.

I was able to resolve the issue by ensuring that the video player was fully initialized before play() is called.
`
VideoPlayerController _controller;
@override
void initState() {
super.initState();
_controller.initialize();
}
WidgetsBinding.instance.addPostFrameCallback((_) {
// This
_controller.addListener(initVideoPlayListener);
...
}
void initVideoPlayListener() {
if (_controller.value.isInitialized && !_controller.value.isPlaying) {
_controller.play();
_controller.removeListener(initVideoPlayListener);
}
}
`
This post was helpful: https://dingdong.today/flutter/flutter/issues/86255

For anyone who is trying to play the video after initialization, Rather than playing the postframe you should use .then syntax
@override
  void initState() {
    super.initState();
       _controller = VideoPlayerController.asset('assets/chromecast.mp4')
      ..initialize().then((_) {
        setState(() {
          _controller.play();
        });
      });

For anyone who is trying to play the video after initialization, Rather than playing the postframe you should use .then syntax
@override
  void initState() {
    super.initState();
       _controller = VideoPlayerController.asset('assets/chromecast.mp4')
      ..initialize().then((_) {
        setState(() {
          _controller.play();
        });
      });

This worked too and is more correct. Thanks.


Option for no leading asterisk

Hi there,
Is there a configuration option for creating the template docs without the leading asterisk? I couldn’t seem to find one..
For example:
function method(arg1, arg2) {}

Generates the following:
/**
  [method description]
  @param  {[type]} arg1 [description]
  @param  {[type]} arg2 [description]
  @return {[type]}      [description]
 */
function method(arg1, arg2) {}

The main reason for this is that it allows for easier copying/pasting of code snippets within the comments.

+1

+1

+1


Cheat-sheets

Hey, I was wondering if the cheat sheets feature is currently working.
I cannot get it to display an image.
for example:
[general]
enable=1
type=images
image search=static
activation=hold
[UI]
scale=1
position=2,2
[image search]
last coordinates=1406,973,110,37

When pressing the checkbox to enable/disable the cheatsheet it'll remain checked, might be a clue in fixing

I've tried different omi-keys, default, END, L, different modifies nothing seems to show the image.

Calibration / Test seems to work fine.
Static / Dynamic screen checks don't seem to make a difference
Hold / toggle activation doesn't seem to make a difference
The manage image file buttons Paste, Snip, Show and Delete work fine, and show is able to show an image.

Could anyone let me know if it's working for them in 1.54.4?

Tested it right now, and it seems to be working:

Hm not sure what fixed it but it's working now, maybe switching to the unicode version of ahk fixed the issue.


docs: add noname0310 as a contributor for code

What kind of change does this PR introduce? (check at least one)

[ ] Bugfix
[ ] Feature
[ ] Code style update
[ ] Refactor
[ ] Build-related changes
[x] Other, please describe: add contributors

Does this PR introduce a breaking change? (check one)

[ ] Yes
[x] No

If yes, please describe the impact and migration path for existing applications:
The PR fulfills these requirements:

[x] It's submitted to the dev branch, not the main branch
[ ] When resolving a specific issue, it's referenced in the PR's title (e.g. fix #xxx[,#xxx], where "xxx" is the issue number)
[ ] All tests are passing
[ ] New/updated tests are included

If adding a new feature, the PR's description includes:

[ ] A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

Other information:

Coverage remained the same at 100.0% when pulling 24661000c59e36fa601a5f985bfff18a9c71065a on main into 785f47a6618cbe62b20514e062c77cfeb084f620 on dev.


Update to pyright==1.1.335

Change Summary
Had to fetch new typeshed changes in #6563, and some unrelated errors got catched by latest pyright.
Not really satisfied with issues with Self (ideally return types should be Self | FieldInfo, but well..)
Checklist

[ ] The pull request title is a good summary of the changes - it will be used in the changelog
[ ] Unit tests for the changes exist
[ ] Tests pass on CI
[ ] Documentation reflects the changes where applicable
[ ] My PR is ready to review, please add a comment including the phrase "please review" to assign reviewers

Please review


Add form settings page

I feel a little conflicted about the order of beforeEachResponse(), because chronologically, it comes before the responses, but most of the time, you have to know what the responses are before you understand the beforeEachResponse() method. I think I've tended to put it after the respondWith*() calls for that reason, first specifying the requests/responses and only then specifying the tests to run for them. But I can really see it both ways, and I'm happy to switch it if you prefer the other way.

@clint-tseng, this should be ready for you to take another look whenever you have the chance.


Are iterators thread safe or not ?

Dear all,
1st of all. thanks for your great work with leveldb.
Unfortunately, I'm not a native speaker of either English or leveldb.
I've read the concurrency section of the documentation, as suggested elsewhere, but I'm still confused by the phrasing in the text that quoted: there's "different threads may write into or fetch iterators or call Get on the same database without any external synchronization", but there's also "However other objects (like Iterator and WriteBatch) may require external synchronization."
So, my question is: Is there a way to use leveldb's concurrent abilities while using iterators ?
All the best,
Hilton

There's a good point in this question. We should explicitly state thread safety for each class. At a minimum, we should do that for the public API.
Iterators are not thread-safe. You can use multiple iterators from separate threads, but each iterator's use has to be contained to a thread or protected  by a mutex. In other words, leveldb databases support concurrent access, but iterators don't.

Thank you, @pwnall !
Your information will help me become more fluent in leveldb. I hope that soon I will have the sample source code that exemplifies these concepts.


Automate context builder image creation on version change

If truss project version changes then we do the following

Create a git tag
Build and push context builder image to dockerhub
Build and publish truss to pypi

Version is always calculated based on truss project version, not picked up from the tag

I've merged the release workflow into main for now, as I'm not sure of the utility of tag triggering a release, we always want to match it to pyproject version. But we can revisit this if see the need for it.

Can we also extract the context builder version from this? I think maintaining a separate version here seems redundant

That has more complexities, let me tackle that separately. Main one is that, many changes to truss don't require creating new images, and building/pushing all those images takes about 30 mins. So I'm hesitant to add that for every truss version increment. It needs more thought. Want to go incrementally also. Developing/testing these actions takes surprisingly long.


Parse and Resolve the Namespace of Fission function

This is for closing #160.
This supports to parse and resolve out the function namespace from workflow config file.
User can set specific namespace or left it by default.
This is meaningful to fission functions.
This parses namespace out of all kinds of runtime (fission, native...).The runtimes except fission will drop the namespace value(always default). So that it will not lead to invocation failure.
However, later we should improve it by refactoring framework of parser and resolver, especially auto-resolving.
I didn't add it to this patch, because I want to move the individual parser interface to nested  sub to resolver interface. And we might need more discussion about auto-resolver.
@erwinvaneyk WDYT?

@erwinvaneyk I fix the problems as:

Fix the problem in your comments.

Fix the errors in integration tests and unit tests. All are passed through on my local PC.

Present the example in commit https://github.com/fission/fission-workflows/pull/176/commits/4afcfc7ec0db6b0c6ab9714b37c6e981110fcae0.

PTAL, thanks so much!

@xiekeyang - LGTM 👍 just one test file needs to be fixed (caused by the just merged #177 )

@erwinvaneyk Which test file? I have rebased #177 to this PR, and run all tests on my PC. All of them are passed. Maybe I miss some cases?

https://github.com/xiekeyang/fission-workflows/blob/4afcfc7ec0db6b0c6ab9714b37c6e981110fcae0/pkg/fnenv/workflows/workflows_test.go#L134 errors because the function now requires a third argument (the namespace)

Rebased #179 , it seems no failed test.

Verified in https://travis-ci.org/fission/fission-workflows/builds/408488542 - Nice job @xiekeyang! 🎉


Swap from flake8 to ruff

Description

We should look into replacing our flake8 action with the much faster rust-based variant, ruff. It doesn't look like it'll be a drop-in replace, since we need to change the .flake8 configuration to one of the acceptable configuration options for ruff.
Additional context

Heard about this on talk python to me!

Based on Ruff's rules doc, we might be able to replace isort, pyupgrade and pydocstyle with Ruff (in addition to flake8 as you mentioned).
https://github.com/WordPress/openverse/blob/13a4a2be924e8bf2bb50614558fd57f4a98eba8c/.pre-commit-config.yaml#L44
https://github.com/WordPress/openverse/blob/13a4a2be924e8bf2bb50614558fd57f4a98eba8c/.pre-commit-config.yaml#L54
https://github.com/WordPress/openverse/blob/13a4a2be924e8bf2bb50614558fd57f4a98eba8c/.pre-commit-config.yaml#L77
https://github.com/WordPress/openverse/blob/13a4a2be924e8bf2bb50614558fd57f4a98eba8c/.pre-commit-config.yaml#L62

And on top of that, ruff will auto-fix some of the issues if we ask it to!

This sounds great. Piggy-backing off of the discussion Dhruv linked, this seems more reasonable than shed in that it is not opinionated to the point of being a nuisance for our already existing project. The configuration doesn't look too wild either, though different enough from flake8 to do a double take for sure.

I will work on this!

@glowatsk I've assigned you! 😄

@AetherUnbound, @dhruvkb, is there anything else left for this issue, or can we close it?

There is quite a bit left, Ruff is capable of replacing 4 hooks, of which only 1 (flake8) has been replaced so far.

Bumping priority to 🟨 medium because Ruff's rules are conflicting with isort, as reported by @sarayourfriend in #2267.


Add release notes for 1.11

Add release notes for 1.11
/cc @jberkus

Preview: https://deploy-preview-9287--kubernetes-io-master-staging.netlify.com/docs/imported/release/

/lgtm

No docs maintainers are around to review, going to manually merge.


BURT-1 Create initial bot concept; simple automation

Create play_eternal bot and test against puzzle mode game mode in eternal.
Move positions file to play folder.
Create necessary exceptions to be caught eventually
Create play_card() method that consolidates some windowsBot methods.
Reduce time to move cards to be less clunky.
Create test to verify mouse transformation.

Note I'm also gitignoring a bunch of random cache/temp files as well in this PR. Should make the repo look much cleaner.


can't connect android

Please read the prerequisites to run scrcpy.
Also read the FAQ and check if your issue already exists.
Environment

OS: [windows]
Scrcpy version: [e.g. 2.7]
Installation method: [e.g.Windows release]
**Device model:usb
Android version: [e.g. 14]

PS C:\Users\laoliu> adb devices
List of devices attached
<IP_ADDRESS>:37529       offline
PS C:\Users\laoliu> adb pair <IP_ADDRESS>:41293
Enter pairing code: 610831
Successfully paired to <IP_ADDRESS>:41293 [guid=adb-10AE3Y0KBZ005X0-4BNNW1]
PS C:\Users\laoliu> adb devices
List of devices attached
<IP_ADDRESS>:37529       offline
PS C:\Users\laoliu> adb shell
adb.exe: no devices/emulators found
PS C:\Users\laoliu> adb connect <IP_ADDRESS>:37529
cannot connect to <IP_ADDRESS>:37529: 由于目标计算机积极拒绝，无法连接。 (10061)
PS C:\Users\laoliu> adb connect <IP_ADDRESS>:43369
connected to <IP_ADDRESS>:43369
PS C:\Users\laoliu> adb shell
PD2309:/ $ ls
acct        data           init.environ.rc       metadata     product                 system_ext
apex        data_mirror    init.vivo.common.rc   mnt          sdcard                  vendor
bin         debug_ramdisk  init.vivo.project.rc  odm          second_stage_resources  vendor_dlkm
bugreports  dev            init.vivo.rc          odm_dlkm     storage                 vgc
cache       etc            init.vivo.soc.rc      oem          sys
config      factory        linkerconfig          postinstall  system
d           init           logdata               proc         system_dlkm
PD2309:/ $ ^D
PS C:\Users\laoliu> adb devices
List of devices attached
<IP_ADDRESS>:43369       device
PS C:\Users\laoliu> E:\HugoMoveData\User\laoliu\Downloads\scrcpy-win64-v2.7\scrcpy-win64-v2.7\scrcpy.exe
scrcpy 2.7 https://github.com/Genymobile/scrcpy
ERROR: CreateProcessW() error 5
ERROR: Failed to execute: [C:\Users\laoliu\platform-tools], [start-server]
ERROR: Could not execute "adb start-server"
ERROR: Could not start adb server
ERROR: Server connection failed
PS C:\Users\laoliu> adb devices
List of devices attached
<IP_ADDRESS>:43369       device
PS C:\Users\laoliu> adb devices
List of devices attached
<IP_ADDRESS>:43369       device
PS C:\Users\laoliu> adb devices
List of devices attached
<IP_ADDRESS>:43369       device
PS C:\Users\laoliu> E:\HugoMoveData\User\laoliu\Downloads\scrcpy-win64-v2.7\scrcpy-win64-v2.7\adb.exe devices
List of devices attached
<IP_ADDRESS>:43369       device
PS C:\Users\laoliu> E:\HugoMoveData\User\laoliu\Downloads\scrcpy-win64-v2.7\scrcpy-win64-v2.7\scrcpy.exe
scrcpy 2.7 https://github.com/Genymobile/scrcpy
ERROR: CreateProcessW() error 5
ERROR: Failed to execute: [C:\Users\laoliu\platform-tools], [start-server]
ERROR: Could not execute "adb start-server"
ERROR: Could not start adb server
ERROR: Server connection failed
PS C:\Users\laoliu> C:\Users\laoliu\platform-tools\adb.exe devices
List of devices attached
<IP_ADDRESS>:43369       offline
PS C:\Users\laoliu>

ERROR: Failed to execute: [C:\Users\laoliu\platform-tools], [start-server]

https://github.com/Genymobile/scrcpy/issues/4139#issuecomment-1620538271
https://github.com/Genymobile/scrcpy/issues/3302#issuecomment-1140190302

OK thanks


Skip self.Directory in watcher

The torrent watcher watches the root directory, but only handles files under the root. This lead to a panic when we chowned self.Directory.

Thank you! :)


Bug: Bold and Italic not working?

This issue seems to remain. All the functions from the sample work for me. Except for italic and bold. What is the status of this bug? This is the code for the two buttons:
    findViewById(R.id.action_bold).setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            editor.updateTextStyle(EditorTextStyle.BOLD);
        }
    });

    findViewById(R.id.action_Italic).setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            editor.updateTextStyle(EditorTextStyle.ITALIC);
        }
    });

I am having the same problem. Bold and Italic are not working.

I could not reproduce this bug. If you are using custom font-face, u must provide the font variant for bold, italic, and bold-italic (https://github.com/irshuLx/Android-WYSIWYG-Editor#custom-fonts), without providing these font variants, they won't work.
For eg: https://fonts.google.com/specimen/Lato, you need to download regular 400, *black 900(for bold), regular 400 italic (for italic) and black 900 italic(for bold-italic) and copy them to asset directory and configure it using the api.

Hi @irshuLx !
Thanks for your answer. No - I don't use custom font-face. I just use the code snippet from the readme. So I just added the library as a dependency, wrote a short activity containing the onclicklisteners and that's it. I realized that if I skip the map and image listeners everything works as expected..

Hi again @irshuLx
You are right, sorry. The issue is related to the custom typeface. I if I comment the methods for the custom fontface out it works. My bad. Nice library - thanks for your work!!
I'd like to add Checkboxes - can you explain to me where I should add the code for that?


TODO: HEIC support

Currently there is no HEIC support in the program. The pillow_heif library does not support files with at least these headers:
DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------
111236        0x1B284         TIFF image data, little-endian offset of first image directory: 8
125699        0x1EB03         JPEG image data, EXIF standard
125711        0x1EB0F         TIFF image data, big-endian, offset of first image directory: 8

Hidden _getexif() method used for getting non-empty datetime is not supported, and normal getexif() method returns an error:
SyntaxError: not a TIFF file (header b'\xff\xe18xExif' not valid)

Actually, this seems more like a problem with the pillow_heif library than with WinMR, so for now HEIC support will be lacked until a solution for this problem will be found.

Hello! Feel free to create an issue in pillow_heif repo with samples, at least for getexif method or create a PR(for Exif processing there are pure python code, so it should be not difficult).
About headers, I do not understand about what it is, but you can create an issue with description/samples what is not working and I'll try to fix.

@bigcat88, thank you very much for your response! I've created an issue describing the problem in the https://github.com/bigcat88/pillow_heif/issues repository.


.glb vertex paint data not displaying correctly

Godot version
v4.1.1.stable.official [bd6af8e0e]
System information
Godot v4.1.1.stable - Windows 10.0.19045 - Vulkan (Compatibility) - NVIDIA GeForce RTX 3050 Laptop GPU (NVIDIA; <IP_ADDRESS>02) - 12th Gen Intel(R) Core(TM) i7-12700H (20 Threads)
Issue description
.glb model with vertex paint data placed in 3D scene with forward+ shows stretched out coloring.
A default Surface0 material is generated with Vertex Color Use As Albedo true.
The blender export config only includes Vertex Data and Normals. Y up, -Z forward.
Importing a .obj file with the same data and dragging it to a 3D scene displays vertex colors correctly (an override material is to be added manually, and use vertex color as albedo toggled manually, in .obj's case)

forward+ 3D scene .obj + .glb side by side respectively using forward+ renderer and no lighting or ambience.
Note: The original issue was encountered in compatibility mode rendering, but later also reproduced in forward+ just to make sure it wasn't render mode specific. The sample project is forward+.
Steps to reproduce

Generate a .glb file with a 3D model using various combined colors through vertex paint (a terrain mesh with mid-high vertex subdivision count is recommended). I did mine with Blender.

Import the .glb file into godot, and place it in a new 3D scene.

Notice a material is added to it automatically using vertex paint as albedo, but the coloring is stretched vs how it would be seen in blender, or as an .obj export.

Minimal reproduction project
Testing forward+.zip

Can you reproduce this with Generate LODs disabled in the scene import settings on the .glb file?

The issue is still reproducible with Generate LOD's disabled and then reimporting, asuming this one:

As for vertex compression (asuming blender export one for .glb), it was already disabled for this example. I only export Normals and Vertex Color.

Blender 3.4 (the blender version I used) had a bug exporting the vertex paint data in .glb which seems fixed in Blender 3.6.
Furthermore, exporting .glb you don't even need to add a material to the mesh in Godot. Surface0 shows a preexisting material with use vertex paing as albedo setting already toggled true. This isn't the case with .obj, where you must add the material as an override manually (I believe this is already reported as a bug)
In essence, it seems this wasn't a Godot bug, but a Blender bug, which has already been fixed. Feel free to close this issue.

I'm closing this myself to reduce clutter, Godot already has enough open issues.


integration: add a test to verify creating cluster on hub

This is a test for swarm create and swarm c. These command should return a proper cluster token, hexadecimal string of size 32.
Signed-off-by: Chanwit Kaewkasi<EMAIL_ADDRESS>

I'm liking this new integration test library :+1:

Me too! it's a cool stuff done by @aluzzardi

I believe once we get #582 merged we could update this to do a full test of the token discovery.

Relates to #644

@aluzzardi I think I need your advise on how should we continue the token tests?

@vieux: Would there be a way to destroy clusters? Worried that this test will create thousands of clusters overtime.

@aluzzardi There is a DELETE method on the Hub discovery service to destroy clusters. We can use it to delete the created cluster at the end of the test (or in teardown()).

Well for now you have to use:
curl -X DELETE https://discovery-stage.hub.docker.com/v1/clusters/<cluster-id>

As there is no swarm destroy command..

@aluzzardi could you please check this command:
godep go run main.go create | echo $?
On my machine, it returns 2.
While $GOBIN/swarm create | echo $? returns 0.
With this, we cannot properly check $status via godep go run. Any idea?

@aluzzardi never mind my ping. I think it's caused by the Hub does not response sometime. godep go run main.go create now returns 0.

Please do not merge yet. I still can't do 100% regression for all tests.

done. could you please review again.

regression goes well. PTAL.
@aluzzardi @vieux @abronan

Awesome!
As you may have noticed, we run those automatically now (janky in the list of GH checks)
LGTM

Wow, that janky is super awesome! I've check its console output and all discovery tests are doing well there. Super!

@chanwit yep! If any integration test failed, this PR would be marked as failed (just like when travis fails because of broken tests)

Related to #465

@aluzzardi I think you just did a circular reference here.

Woops.
#644


UnityEngine.InputSystem not found

When importing a package from the source, instead of a package, because tests are using a new input system, a pre-processor is needed. Otherwise, the project cannot be properly imported while using the old input system.
Example exception:
Packages\react-unity-core\Tests\Runtime\Utils\TestBase.cs(27,17): error CS0246: The type or namespace name 'Mouse' could not be found (are you missing a using directive or an assembly reference?)

Because adding preprocessors to whole test classes creates other issues, I propose adding "Define Constraints" to the asmdef of the tests files.
Is: UNITY_INCLUDE_TESTS
Should be UNITY_INCLUDE_TESTS && ENABLE_INPUT_SYSTEM

Hmm, I thought Unity wouldn't include test assembly for packages unless they were in testables. Is this happening because you added com.reactunity.core to testables?

Nope, here is what I did.

Create new project
Into Packages folder clone https://github.com/ReactUnity/core from main
In Package Manager import this package from file
Notice exceptions due to missing packages

Ok, added check for it. Changes are on main branch.


Add support for yjs backend

Is it possible to add yjs backend? This would allow us to build collaborative editors using socketioxide.
Resources:
https://github.com/ivan-topp/y-socket.io
https://github.com/yjs/y-websocket

It would be another crate that would wrap the Io struct. Personally I won't develop that (I still have a lot to do for socketioxide).
However anyone can make a yjs backend that without additional development for socketioxide :)

Please for the next questions and improvements that are not related to the current codebase itself use the discussions panel :)


Could be let the compiled output be smaller?

First of all thank you for your hard work, in order to create such a great project.
My question is:
Could be let the compiled output be smaller?its too big now.
when  im testing a hello world with webapi Program,
the last output filesize need 21 mb+.
when im create a HelloWorld Console Program,
the last output file size got about 3.86 mb.
oh my god,im just want it say hello,But its carry such a heavy burden.
thats too big,any chance to let them smaller?
even golang or dlang is much more smaller.
they also have GC,and The benefits of advanced languages.

What scenarios would having smaller deployment size enable for you?

For example in the embedded world is typical to have little disk space (20 GB if you are lucky) so if we have a lot of Net Core app and anyone is more than 21 MB you will risk to fill all HDD!

lots of  usage scenario need thats.
when ppl update there services.
for example 1 file is 10 mb.but if ppl has 10.thats will be 100mb.
if one is only 500kb.then the total only need 5mb.
the internet is Very unstable.Even the AWS S3 access in many parts of the world. Its speed even just a few KB.
more other Situations:
1.i think the Problem will take much more memory?am i right?
because the PE File need load all in Memory to execute.
2.like fanol says,some time maybe we need run that in embedded OS,or docker.
more size will take more disk and memory.maybe 1-2 file is ok.but which OS only running only 1-2 file at today.
3.Other things when I think of I would come here for supplement....
thank u.

You're lucky, I usually get 7mb on my hello world program. I've tried using .net core 1.1, 2.0, and 2.1. No apparent size differences.

You're lucky, I usually get 7mb on my hello world program

Make sure to pass -c release to dotnet publish when you're publishing. The default is debug and those builds are bigger.
Thanks for the scenarios, @fanoI and @sgf. Having executable sizes that scale based on what you're using is definitely something I want to look at in the future (#5013).

ILlinker is already used by CoreRt? Or all the .Net Framework is compiled?
Another possibility to mitigate the issue would be to:

Compile the Framework as a separate native DLL
Make all the applications use that DLL

So you transfer / install the framework native DLL only a time and the application will be more smaller having only their code inside.

@MichalStrehovsky I use dotnet publish -r win-x86 -c Release

ILlinker is already used by CoreRt? Or all the .Net Framework is compiled?

We don't use ILLinker, but everything gets naturally treeshaken by the compiler itself (we start with compiling Main/NativeCallable exports and continue compiling other methods and generating necessary data structures as we go). If there's a type or method that is not used, the compiler doesn't even look at it.

Compile the Framework as a separate native DLL

We currently only have that compilation option in .NET Native for UWP apps. At some point we would like to bring this to the open source compiler too. A lot of the building blocks are already there.


Using Webpack splitChunks and cacheGroups

Hi,
is it possible to use splitChunks and cacheGroups while having "name: false"?
Currently I have the following webpack configuration:
entry: {         Homepage: './react/Homepage',         vendors: ['react'],     }, optimization: {         splitChunks: {             name: false,             cacheGroups: {                 commons: {                     name: 'vendors',                     chunks: 'all',                     test: /[\\/]node_modules[\\/]/,                     priority: -10,                 },             },         },     }
This creates a specific chunk file called "vendors" in addition to all other chunk files that are defined as entry points ("Homepage" in this example).
Now in order to display the entry point Homepage, i have to include both bundles via template tags into the html file:
{% render_bundle 'vendors' %}  {% render_bundle 'Homepage' %}
This behaviour is quite useful, as the vendors file can be cached and so when other pages are loaded, the vendors file does not have to be downloaded again.
Now my problem: Webpack 4 recommends using "name: false" to optimise the loading and caching of resources across multiple entry points. By doing this, the "vendors" file can be split into multiple smaller files, and then the entry point configuration changes from:
Entrypoint Homepage = vendors-4f65a9a5a66defc0a60b.js Homepage-4f65a9a5a66defc0a60b.js
to
Entrypoint Homepage = 0-77b58caa5e7acecf0a4e.js 1-77b58caa5e7acecf0a4e.js Homepage-77b58caa5e7acecf0a4e.js
So now instead of loading the huge vendors file with the first load, the user only has to load 2 smaller files.
But now I cannot use the 0-hash and 1-hash files in the webpack-bundle-loader, as {% render_bundle '0' %} etc. cannot find these chunks (they don't have chunk names in the webpack compile summary). Additionally, the names (0, 1, etc) would change every time new dependencies get added.
Is there a way to render complete entry points together with all their chunks? I would assume {% render_bundle 'Homepage' %} would look up the entry point 'Homepage' instead of the chunkname and then render all required chunks based on that.
Any suggestions? Or am I missing something?

I tried 0.4.0-beta but I couldn't see the proper bundle information. I think the webpack-bundle-tracker has to extend its stats.json file to include more information. I went through webpacks CLI documentation and found their own stats data command:
webpack --profile --json --config webpack.config.js > compilation-stats.json
produces the information that would be needed in the bundle-tracker stats file:
..... "entrypoints": {     "Homepage": {       "chunks": [         0,         1,         "Homepage"       ],       "assets": [         "0-de629161af8ff152d740.js",         "1-de629161af8ff152d740.js",         "Homepage-de629161af8ff152d740.js"       ]     }, ....
Not sure how to proceed from here, as it seems this "feature" request is dependant on webpack-bundle-tracker providing the necessary information through the stats file.

Hello,
One possible solution to this is not adding name attribute to configuration. It seems like if we don't add the name attribute, generated bundle names has information about which bundle they are splitted from. Here is an example from webpack examples directory:
https://github.com/webpack/webpack/tree/master/examples/common-chunk-and-vendor-chunk
Here we have a cache group called commons:
				commons: {
					chunks: "initial",
					minChunks: 2,
					maxInitialRequests: 5, // The default limit is too small to showcase the effect
					minSize: 0 // This is example is too small to create commons chunks
				},

That cache group creates bundles like this:
commons~pageA~pageB~pageC.js  269 bytes       4  [emitted]  commons~pageA~pageB~pageC
      commons~pageB~pageC.js  269 bytes       5  [emitted]  commons~pageB~pageC

I am not sure about the details but it seems like name of those bundles has informations about which bundle they are splitted from.

Hi! Since Webpack 4 is concatenating every module on its bundle name, wouldn't be helpful if django-webpack-loader would track and include every bundle including the defined name?
                                        Asset      Size  Chunks             Chunk Names
                   0.69db622a08d7c6ec0ec3.css  15.3 KiB       0  [emitted]  main~somePage
        main~somePage.69db622a08d7c6ec0ec3.js  1.05 KiB       0  [emitted]  main~somePage
vendors~main~somePage.69db622a08d7c6ec0ec3.js   102 KiB       1  [emitted]  vendors~main~somePage
             somePage.69db622a08d7c6ec0ec3.js   1.2 KiB       2  [emitted]  somePage
                 main.69db622a08d7c6ec0ec3.js   1.2 KiB       3  [emitted]  main

Then {% render_bundle 'main' 'js' %} would match every js bundle including "main" in its name:

main~somePage.69db622a08d7c6ec0ec3.js
vendors~main~somePage.69db622a08d7c6ec0ec3.js
main.69db622a08d7c6ec0ec3.js

Thanks!

I assume it'd only need to update this line in order to match all keys containing the specified bundle_name:
https://github.com/owais/django-webpack-loader/blob/master/webpack_loader/loader.py#L81
If that's the case, I'd happily send a PR.

@afontcu As a short fix that would work, although you do run the risk of colliding substrings (e.g. "js" included in "json"). You could check for the tilde (~), but I think the real fix would be to go the clean route as mentioned further up in this thread by having webpack-bundle-tracker explicitely expose the chunk associations.

Yes, that would be great and it's definitely the right solution! Let's see what happens with the webpack-bundle-tracker.
However, I think loading all the keys matching the bundle_name would be a quite solid fix using ~ as stop word, which is pretty good idea. Then, a bundle named "js" would return all bundles containing ~js~, js~ or ~js, thus avoiding conflicts with "json" and so on.
Thanks for the quick response!

Waiting for this..
What's the best we can do with webpack4 and django-webpack-loader currently as far as code-splitting goes?
I'd like to use options described in https://hackernoon.com/the-100-correct-way-to-split-your-chunks-with-webpack-f8a9df5b7758
When I add the optimization for production, web page shows a blank page.
I guess {% render_bundle ...%} is not picking up splitted files.

   optimization: {
     runtimeChunk: 'single',
     splitChunks: {
       chunks: 'all',
       maxInitialRequests: Infinity,
       minSize: 0,
       cacheGroups: {
         vendor: {
           test: /[\\/]node_modules[\\/]/,
           name(module) {
             // get the name. E.g. node_modules/packageName/not/this/part.js
             // or node_modules/packageName
             const packageName = module.context.match(/[\\/]node_modules[\\/](.*?)([\\/]|$)/)[1];

             // npm package names are URL-safe, but some servers don't like @ symbols
             return `npm.${packageName.replace('@', '')}`;
           },
         },
       },
     },
   },

For folks encountering this issue, this seems to similar, if not identical, to #165. PR #182 has a fix waiting to be merged, but it depends on PR https://github.com/owais/webpack-bundle-tracker/pull/41. See my comment there for relevant links and workarounds.

However, I think loading all the keys matching the bundle_name would be a quite solid fix

It ends up being a bad fix because if the chunk name becomes too long the whole thing gets truncated, so you cannot use the chunk name as a reliable indicator. You have to actually change webpack-bundle-tracker like that #41 PR above does.

How does this play after entrypoint-based behavior we introduced in 1.0.0? Could you please check @joaopslins ?
Maybe this is a no-issue now.

I've tested both the original case and the snippet from @littlehome-eugene and it worked correctly on version 1.0.0.
If someone has a case where you think it isn't covered by the new version, please let me know so I can try to reproduce it. Thanks.


Decoding the encoded message

The documentation currently demonstrates how to decode a message using a defined schema by specifying the schema in the code when decoding a message from Kafka:
 const schema = avro.Type.forSchema({
        type: "record",
        name: "property",
        namespace: "de.meinestadt.demo",
        fields: [
            { name: "demo", type: "string", default: "Hello World" },
        ]
    });
    const dataset = await registry.decode(message.value, schema);

I believe it would be more convenient if the schema were fetched directly from the registry, similar to how it's handled in the @kafkajs/confluent-schema-registry. According to their documentation, you don't need to explicitly specify the schema; you can simply decode the message using the registry:
// Decode the payload const decodedPayload = await registry.decode(encodedPayload)
This approach streamlines the process and reduces the need for manual schema specification in your code.

Usually an application is developed for a specific schema, and for that schema one usually has a type definition, interface, class etc. By specifying the target schema, the library has a chance to convert the message from the schema it was encoded with, into the data structure the application expects.
Skipping that step would require the application to be able to handle data of a not clearly defined type.
Javascript is quite flexible in that regard, and in Typescript you could use the any type.
But is that really useful? What would be the use case?
And last but not least, if you don't use schema evolution and just process the data structure as it comes in, what's the reason for using the schema registry then?

The use case would be: the application has to be able to cater for multiple schema of data that comes in to the consumer without the need to redeploy all consumer applications when non breaking change to the schema comes in. What happens when old and new producers with 2 different schemas write into the log, would the new application with a strict schema hard-coded into the system be able to smoothly process the little change in the schema? Some applications need to be deployed without ever halting the operations in real time resulting in delays to business critical analytics.

That's exactly what happens. Let's say you use version 1 of a schema in you consumer application. Now the producer updates the schema to version 2 which is backward compatible.
The existing consumers, which still expect version one, would now receive version two messages and the library would take care of converting them back into version one.
That means that the consumers don't need to change as long as the new version is compatible (non breaking change) to the old one.
In your consumer application you specify the type you want/your application was built for, the library automatically reads the schema version of the incoming message, loads the schema from the schema registry when needed, and then converts it to the locally expected schema.
Does that clarify how the lib is meant to work?

By the way, when you use the library also for your producer, you can introduce your non-breaking change there first. The library would recognize the schema change and register a new version at the glue schema registry automatically. With the right settings, Glue would also check if your compatibility requirements are met.
The existing consumers would still be able to consume the messages by converting them back into the schema version they expect, see my post above.
This is a "producer-first" approach, where you first update the schema in the producer, and later in the consumer.
Of course you could also follow a "consumer-first" approach, depending on the needs of your application.

@kiddpt do my answers fill your needs, or do you still have a need for an adjusted interface?

I will close the issue as I haven't heard back.
Please reopen it if you still see a need for the feature or if you want to discuss it further.


Right-click menu is missing the "Copy URL" option

Storage Explorer Version: 1.1.0
Platform: macOS
Architecture: x64
Steps to Reproduce:

Connect to a storage account and go to a storage container
Right-click on a blob
The toolbar at the top has the button "Copy URL", however, when you right-click on the blob, you don't have this option. It would be very handy to have the "Copy URL" option in the right-click menu as well (similar to the download option). All the other options are there except for "Copy URL".

Expected Experience:
I would expect the "Copy URL" option to be there in the right-click menu.
Actual Experience:
The "Copy URL" option is not there in the right-click menu

This was done at some point.

Are you sure? I'm using version 1.12.0 and when right-clicking on an item, there is no "Copy URL" function…

@pieterclaerhout can you take a screenshot for us?  Thanks.

As you can see, no copy URL in the menu…

Hi @pieterclaerhout
This issue will be fixed in Storage Explorer 1.13.0.


Profile the webapp

We need to profile the webapp with grounding enabled (i.e. with useW2V=true).  I worked on serializing the ontology and honestly it didn't seem to save much time at all...
@marcovzla suggested that ppl have used https://github.com/clulab/reach/wiki/flight-recorder in the past...

Thanks for the tip.  Previously I used JProfiler, but the trial period expired.

Last time I looked at this the conclusion was that not much could be done without changing the code in Processor's Word2Vec.  One problem is that it takes too long to start up because the entire ~5.5GB vector file is processed each time.  Another problem is that the entire dataset of around 2.2 million words is kept in memory the entire time, even though we process far fewer words in each run so that most of the data is never used anyway.
I would suggest indexing the vectors file, making a mapping from the words to the position of the vector in the file, storing this information in a parallel .idx file, and reading this index file when the program starts.  (It could compare file dates and complain if something appears to be out of sync.)  Word2Vec would keep its normal Map[String, Array[Double]], but it would be initially empty (unless, because it looks like the words are sorted based on frequency, the first several hundred are pre-populated).  When a word is looked up, the regular map is checked and the value used if the key is found.  If not, the index is checked, and if found, data for the word is read from the file on demand and transferred to the regular map.  (Maybe if the word frequency is really low and memory is tight, it could be thrown away.)
Anyway, I'd start with some pre-calculation, delayed evaluation, and buffering kinds of things.

Thanks @kwalcock! I like this idea.
But before we commit, can you please take a look at the loading code? This was written a while ago by a student, and it might be sub-optiomal. Maybe there is something super inefficient there?

Breaking out the profiler soon...

@ajaynagesh, it seems like you usually provide the matrices for word2vec.  Our code uses line.split("\s+") to get at the values, which is relatively expensive.  It looks like the vector files we've been using consistently have a single space as a separator.  If we can change the code to line.split(' '), we'll save significant amounts of time.  Do you think that's safe?  The program will issue a complaint, perhaps unnoticed, if there is a problem, but it will be a pain to deal with.  Can we expect the vector files to be consistent?

@kwalcock: This is part of the Word2Vec library in processors right ? My answer would be if we change this in the library, we could add documentation to make this a requirement (and also make sure we remove extra spaces before creating the matrix). I do not see any other issue in changing to line.split(' ')

Good catch @kwalcock. I wonder what the slowdown is when using \s+ vs. \s when the file contains a single space as separator...

If the split can be made on a simple space, then the loading times for the uncached version are lowered significantly, but probably not enough.
52 seconds -> 36 seconds for vectors.txt and
138 seconds -> 95 seconds for glove.840B.300d,vector.txt
on my computer and on the spinning disk.  It's probably worth making that simple code change, but stopping there won't suffice.  Some 2/3 of the remaining time is spend simply parsing the strings into floats.  The binary serialization that Becky did helps with that, but Java serialization is also notoriously slow.  I think we'll have to simply process fewer lines of the files.

Yes, probably not sufficient.
@marcovzla: what was that Spotify library you mentioned?

Via Ajay and Steve:
https://github.com/spotify/annoy
https://github.com/spotify/annoy-java
I started looking at it yesterday.  Not sure about it  yet.

Just for documentation of due diligence, if the vectors are serialized and read back in, similarly to the cached ontologies, there's not much to gain and lots to lose:
36 seconds -> 28 seconds for vectors.txt (not much to gain) and
95 seconds -> 280 seconds for glove.840B.300d,vector.txt (lots to lose)
That looks like a dead end.

Does anyone (@ajaynagesh, @MihaiSurdeanu) know about this Word2Vec.readBinaryMatrix(bytes: Array[Byte])?  It reads in almost the same format as the usual version except that all numbers are recorded as binary in the file.  There is much less parsing this way.  I don't see any code that would produce such a file, but someone wanted to read it in once upon a time.  This may be a more efficient serialization.  FWIW it is also more exact.  The text version seems to be created using "%.6f" which doesn't make use of an entire double and results in lower precision/accuracy, especially for small numbers.

It won't take long to test.  It's the text version that is questionably accurate.  That data can fit into Floats.  The Doubles we have are overkill for this input.

Keith -- thanks for looking into all these avenues fwiw
On Tue, Aug 7, 2018 at 3:41 PM Keith Alcock<EMAIL_ADDRESS>wrote:

It won't take long to test. It's the text version that is questionably
accurate. That data can fit into Floats. The Doubles we have are overkill
for this input.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/clulab/eidos/issues/388#issuecomment-411225882, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AFIniaLr-9oQMsgK6XW7biqxu2Rv_A8wks5uOhd7gaJpZM4VnIp2
.

So, caching/serialization in the default binary format of a Word2Vec wasn't working, probably because of slow Java serialization.  I think this was largely because of the complicated hash table of arrays that is storing the data.  This data for count words and a vector size of dims can be stored in a single array of floats of size (count * dims).  The list of separate words can be combined into a single string for purposes of serialization.  The single word-list-string and single array of values can be serialized fairly efficiently.  On my computer with a spinning disk (but also being a hybrid drive), I have had times as low as 2 seconds to read the serialized vectors.txt and 7 seconds for glove.840B.300d.vector.txt.  I have seen times up to 30 seconds, though, when it appears that the disk cache was missed.  When running the webapp repeatedly and on a Mac's SSD, I hope that the times will normally be much closer to that 2-7 seconds.  With that in mind, I would like for the time being to stick with the current strategy of reading in the entire vector file over the option of adding a fairly complicated dependency with annoy or a homemade solution that consults the disk incrementally.  Although memory is an issue with this strategy, changing from Double to Float and reducing the number of objects means about half the previous memory footprint.  That's moving in the right direction.  The serialized vector file can be piggybacked on Becky's caching of the ontologies, so there is next to no overhead there.

Nice job! This is awesome.
Yes, let's go with this idea.
This means writing a converter program that takes the current String-based format and converts it to this efficient format, right?

It will still read the original text format, but will also write and then read back in the cached, serialized format.  The memory format will change to more resemble the serialized format than the text format.

@ajaynagesh, are the words in the vector files supposed to include any duplicates?  For glove, there is a repeated, messed-up entry that appears just after "Tayside" and again after "commendations".  This messes up some counting downstream.  I'm expecting the number of unique words to match the number at the top of the file.  Can you check your copy?   Strange!

Drat.  That means that I have to find a way to deal with them.  Thanks very much for checking.

Those are the only 2 words (after Tayside and commendations) which contain those junk characters. Perhaps they are some unicode encoded words which are non-printable. Can we ignore those 2 lines if it is messing up our downstream processing ? I think we can. @MihaiSurdeanu, @marcovzla, @bsharpataz ?
We could have to appropriately correct the header file. It will now be 2196015 300 instead of 2196017 300

It's not very far downstream.  It's probably easier for me to deal with so that we can use it unchanged.

In isolation, the smaller vectors completely processed can take as little as 4 seconds and the glove file 10 seconds.  However, seeing that while working on the webapp is doubtful.  There I see more like 15 and 35.  @bsharpataz (or anyone else) would you care to test the kwalcock-CompactWord2Vec branch?  You'll need to run CacheOntologies once first as well as edit the eidos.config file.

@MihaiSurdeanu, @bsharpataz, here's some documentation about how this works for Eidos.
During the building of the ontologies, Eidos calls wordToVec.makeCompositeVector(ontologyNode.values).  This method creates just a single array, adds the values associated with all the values/strings to that array, and then normalizes it in place.  v.get returns not an array, but an index into the larger array, and add just uses the index to pick out the correct values.
  def makeCompositeVector(t:Iterable[String]): Array[Double] = {
    val vTotal = new Array[Double](dimension)

    for (s <- t) {
      val v = map.get(s)
      if (v.isDefined)
        add(vTotal, v.get)
    }
    Word2Vec.norm(vTotal)
    vTotal
  }

Eidos uses some other Word2Vec methods, but there is only one other time when an Array is created and it is there presently only for testing in Eidos.  It allowed me to run the CompactWord2Vec and Word2Vec side by side and compare their values.
  def get(word: String): Option[CompactWord2Vec.ArrayType] = {
    if (map.contains(word)) {
      val offset = map(word) * dimension
      val vec = new CompactWord2Vec.ArrayType(dimension)

      for (i <- 0 until dimension)
        vec(i) = array(offset + i)
      Some(vec)
    }
    else None
  }

A potential problem is that Word2Vec in processors has this public function getWordVector which returns an Array of Doubles, a reference to its internally stored values.  (Perhaps this was also only for testing.)  The new version does not store values like this and would have to generate them with the function above.  If this public method is called often, even by some Java program we don't know about, then there will be an efficiency problem.
  def getWordVector(word:String):Option[Array[Double]] = {
    val sw = Word2Vec.sanitizeWord(word)
    matrix.get(sw)
  }

P.S.  Array[Double] has been kept for compatability reasons.  The internal Word2Vec storage is for Floats.  If MeSH is so terribly large, then space could be saved by using the Floats for the ontology as well.

On a Mac with an SSD time for reading the glove embeddings went from 99 seconds to 12 seconds.  That's still rather long, but in the right direction.  I'm going to PR it.

Between PRs #422 and #431, this should be in good shape.


Drop Pipeline DSL; Only support Freestyle jobs

What's changed?
Drop pipeline DSL jobs; Add agent configuration to freestyle jobs.
What's your motivation?
Not everyone can run Pipeline DSL, but every one can run freestyle jobs.
We only want to support one way to create jobs going forward.
Anything in particular you'd like reviewers to focus on?
Was there any other reason to hang on to Pipeline DSL?
I know we've discussed this multiple times internally, but still.

At present this would also break the Windows support fully again as the freestyle steps do not make the switch from the shell step type to the power shell type when platform is Windows. So this would effect the series of mod config invocations specifically.

Another side effect of this is that JAVA_HOME will now always be set to the Java version that is running the controller or agent itself (ie. Default = "(System)"). Jenkins best practices recommend that for jobs that use Java that the default not be used. Where this could become an issue is if the same Java major version collides with one in use and the "(System)" Java is a JDK, then it will steal away that Java version in terms of the mod CLI's behavior.

At present this would also break the Windows support fully again as the freestyle steps do not make the switch from the shell step type to the power shell type when platform is Windows. So this would effect the series of mod config invocations specifically.

Looking at the options here I'm wondering if you're using the Powershell plugin to run such steps, and if we should switch to generating powershell plugin block rather than the existing:
https://github.com/moderneinc/mod-connect/blob/cada4aa32b5be435eac87cffce713f0ad48500f8/src/main/resources/cli/jenkins/freestyle_shell.xml.template#L1-L4

@timtebeek, yes, that is correct.

If platform is Linux or macOS, the hudson.tasks.Shell step should be used.
If platform is Windows, the hudson.tasks.BatchFile step should be used.

Previously, I contributed the step that used the powershell plugin, but as a mechanism to keep things simple and clean, it's probably best to instead use the built in batch step that is available by default. This will mean any environment variable use when platform==Windows, should present in the form %JAVA_HOME% as an example.

As discussed we can pick up the suggestions here as future improvements, so as to not block development here in light of coming configuration changes for the CLI. Thanks for the input, duly noted and picked up at a more convenient time.


vote: tag 1.1.0

Release
This would mean tagging b7cd8a01fcdb738939fbced6d803efcbc3e504d8 as v1.1.0 to release.
Vote
We need at least 4 approvals from 6 maintainers to release notation-go v1.1.0.

[x] Junjie Gao (@JeyJeyGao)
[ ] Milind Gokarn (@gokarnm)
[x] Patrick Zheng (@Two-Hearts)
[x] Pritesh Bandi (@priteshbandi)
[ ] Rakesh Gariganti (@rgnote)
[x] Shiwei Zhang (@shizhMSFT)

Changes
The code changes compared to v1.0.1 include:

build(deps): bump golang.org/x/mod from 0.13.0 to 0.14.0 by @dependabot in https://github.com/notaryproject/notation-go/pull/361
build(deps): bump golang.org/x/crypto from 0.14.0 to 0.15.0 by @dependabot in https://github.com/notaryproject/notation-go/pull/362
feat: add uninstall to CLIManager by @Two-Hearts in https://github.com/notaryproject/notation-go/pull/363
docs: update README to align with the new project brand by @FeynmanZhou in https://github.com/notaryproject/notation-go/pull/343
build(deps): bump golang.org/x/crypto from 0.15.0 to 0.16.0 by @dependabot in https://github.com/notaryproject/notation-go/pull/366
feat: add install method to plugin CLIManager by @Two-Hearts in https://github.com/notaryproject/notation-go/pull/364
build(deps): bump golang.org/x/crypto from 0.16.0 to 0.17.0 by @dependabot in https://github.com/notaryproject/notation-go/pull/367
feat: plugin install iteration 2 by @Two-Hearts in https://github.com/notaryproject/notation-go/pull/369
Updated CODEOWNERS and MAINTAINERS files by @toddysm in https://github.com/notaryproject/notation-go/pull/370
build(deps): bump golang.org/x/crypto from 0.17.0 to 0.18.0 by @dependabot in https://github.com/notaryproject/notation-go/pull/373
fix: improve plugin error message by @JeyJeyGao in https://github.com/notaryproject/notation-go/pull/371
fix: update PluginExecutableFileError type by @JeyJeyGao in https://github.com/notaryproject/notation-go/pull/375
bump: bump up notation-core-go by @Two-Hearts in https://github.com/notaryproject/notation-go/pull/377

Full Changelog: https://github.com/notaryproject/notation-go/compare/v1.0.1...b7cd8a01fcdb738939fbced6d803efcbc3e504d8
Action Requested
Please respond LGTM or REJECT (with reasoning).

LGTM

LGTM

~LGTM~
Should the commit be b7cd8a0?

@shizhMSFT Nice catch. Updated. @JeyJeyGao could you re-vote for the release? Thanks.

LGTM

LGTM

LGTM

Closing the issue as v1.1.0 has been released.


Add basic auth to sessions route and webhook validation to other routes

Adds basic auth to the sessions route so that users can specify username and password. Username and password are defined in the .env file. Closes #7
Any request made without a matching username / password will return 401 Unauthorized.
Example of making an authorized request in postman (note, username and password do not need to be Twilio auth credentials - they can be anything).

Acceptance criteria for testing:

[ ] Test the sessions endpoint for basic auth:

[ ] Set AUTH_USERNAME and AUTH_PASSWORD
[ ] Use postman to post to /sessions without basic auth enabled, expect to get 401 error
[ ] Add credentials to postman's basic auth config, make request to /sessions and expect 200

[ ] Test the webhook validation:

[ ] Make a post request to /inbound-call using postman, expect to get an error indicating missing twilio header.
[ ] Make sure DOMAIN is set in dotenv to your ngrok url
[ ] Open an ngrok tunnel to your locally running instance and add https://[ngrok-url]/inbound-call to your voice webhook configuration.
[ ] Create a session using postman
[ ] Call the proxy number you're assigned, expect to see a post from twilio to /inbound-call that is 200 successful

Example of the call to create session:

Need to call out DOMAIN variable must be set in docs along with AUTH_USERNAME and AUTH_PASSWORD


Revert "smooth over some css issues with blm banner"

This reverts commit 4d219062b77a3918c1fe80602299a0dd90c29d82.

Ok, I guess not.  It did finally resolve itself.


Error "invalid mode: /build" on Windows 7

Have installed docker toolbox on Wndows 7 64bit Pro, whichs run "docker run hello-world" ok, but am getting an error trying to use xgo:
Checking docker installation...
Client:
 Version:       18.02.0-ce
 API version:   1.35 (downgraded from 1.36)
 Go version:    go1.9.4
 Git commit:    fc4de447b5
 Built: Mon Feb 12 19:03:38 2018
 OS/Arch:       windows/amd64
 Experimental:  false
 Orchestrator:  swarm

Server:
 Engine:
  Version:      17.12.1-ce
  API version:  1.35 (minimum version 1.12)
  Go version:   go1.9.4
  Git commit:   7390fc6
  Built:        Tue Feb 27 22:20:43 2018
  OS/Arch:      linux/amd64
  Experimental: false

Checking for required docker image karalabe/xgo-latest... found.
Cross compiling domain.co.uk/_tests/walktest...
docker: Error response from daemon: invalid mode: /build.
See 'docker run --help'.
2018/03/09 00:08:08 Failed to cross compile package: exit status 125.

I have the same issue on windows 10.
`Checking docker installation...

Cross compiling github.com/project-iris/iris...
docker: Error response from daemon: invalid mode: /build.
See 'docker run --help'.
2018/04/02 14:43:43 Failed to cross compile package: exit status 125.`

I believe this caused by docker-toolbox not liking colons in '-v' cli options.  This is called in the function 'compile' in 'xgo.go' line 233.
This example command causes the 'Error response from daemon: invalid mode: /build.' error:
docker run --rm -v c:\users:/build alpine ls

This example command does not (and works as expected):
docker run --rm -v /c/users:/build alpine ls


Meaning of Recall

Thank you for providing this great resource!
Could you help me understand the meaning of recall in your evaluation protocol?
In your papers, you define precision and recall as follows:

Given those definitions, I would expect that recall is <= precision. However, in the results there are some rows where recall is actually greater than precision.
In the evaluation scripts, recall is computed as pos / (pos+unk). This formula makes the results more plausible, but I have a hard time understanding it intuitively (whereas the definitions from the paper would make more sense to me, with the F1 as a middle stance between ignoring UNK, and treating all UNK as incorrect).

You're right, the evaluation scripts use a different definition from the one listed in the papers. The formula looks correct, and I cannot reconstruct anymore why the scripts use a different one. I've adapted the scripts to produce both variants: RecallA = pos / (pos+unk) and RecallB = pos / (pos+unk+neg). I would recommend you to refer to RecallB if you plan to use MuCoW.

You're right, the evaluation scripts use a different definition from the one listed in the papers. The formula looks correct, and I cannot reconstruct anymore why the scripts use a different one. I've adapted the scripts to produce both variants: RecallA = pos / (pos+unk) and RecallB = pos / (pos+unk+neg). I would recommend you to refer to RecallB if you plan to use MuCoW.

@yvesscherrer Thank you for the reply!

@yvesscherrer Thank you for the reply!


Pull changes from develop to develop-agh

Building:
cmake ../ -DMT=ON

Run example job see ./jpet_mc --help, and example job:
./jpet_mc -j run12.mac -t 4

Can one of the admins verify this patch?


Add email icons and update svgIconTemplate converter

Add three new icons Note, Write and MailSend
Refactor svg icon convert tempalte to use svgr/cli v6, switch to typescript

Couldn't figure out how to make the template add types for props so currently those have to be added manually😔

@PetroSilenius  Hey, actually maybe we can improve it event a bit more.
We can create npm script in package.json:
"generate-icon": "npx @svgr/cli --template templateSvgIcon.ts -d src/icons --ext tsx $npm_config_path"

And run it like this: npm run generate-icon --path=path/to/file.svg


Fix ACR role from AcrPush to AcrPull

@tejaswikolli-web
Can you review the proposed changes?
When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team


fix: Default to native config

/hold
Holding as we do not want this in yet (can be dangerous if people suddenly not specify a kubeconfig and they suddenly reconcile against the control plane)


Work with test-kitchen and bento boxes

This allows users to run omnibus::ephemeral to set up an ephemeral slave whose security they don't care about, without compromising the default recipe, so that test-kitchen runs are easier to do in vagrant (whose password does not pass the default password requirements in a bento box).

Should this also edit the runlist in the kitchen.yml for windows?

@mwrock good call--but I'm about to delete the ephemeral recipe and just dump it into _user as @schisamo suggests, so it's not necessary :)
@schisamo to be clear, this is @mwrock's work, I'm just resurrecting it (it was rejected before because we don't want it applied to production nodes, so I added ephemeral).

@schisamo all things fixed. I filed a PR at 7-zip, but have not much hope of it being processed anytime soon given how other requests have fared.

:+1:

@jkeiser re: PR with the 7-zip cookbook...it has been replaced by seven_zip per the deprecation message in its README:
https://github.com/sneal/7-zip#deprecated
https://github.com/daptiv/seven_zip
At some point we should probably make the jump to that cookbook. If you don't want to take that on now let's set the default 7-zip home down in omnibus::_packaging:
https://github.com/chef-cookbooks/omnibus/blob/e76af75b39ff17672f515cd0f9f7960af8ed162c/recipes/_packaging.rb#L63-L73
elsif windows?
  node.default['7-zip']['home']  = "#{ENV['SYSTEMDRIVE']}\\Program Files\\7-zip"
  include_recipe '7-zip::default'
...

Setting defaults for one cookbook's public attributes in another cookbook's attribute file is a bit of an anti-pattern.

I'm going to do the latter for the moment, that sounds fine. Gotta get this in so I can get some other people up and running in omnibus.

@schisamo I fixed it to do your suggestion. Things seem to work. seven_zip is a no-go at the moment, because even if we use it, build-essentials is including 7-zip and messes it up all over again.

:+1:

@jkeiser In the future please don't merge a PR in which the Travis check is failing (note the red X on the last commit in this PR)! I have an in flight PR that should fix things up:
https://github.com/chef-cookbooks/omnibus/pull/156


feat(http, model, util): add role subscriptions

Add support for guild role subscriptions. This involves:

a new RoleSubscriptionPurchase variant on MessageType
four new guild features:

CreatorMonetizableProvisional
CreatorStorePage
RoleSubscriptionsAvailableForPurchase
RoleSubscriptionsEnabled

a new GuildSubscription variant on GuildIntegrationType
two new role tag fields:

available_for_purchase (bool)
subscription_listing_id (optional snowflake)

Relates to #2032 since it abstracts the optional null boolean, and relates to #2033 since it reworks tests this adds to.
API docs:
discord/discord-api-docs@e003051
Closes #2027.

The issue has been updated with another docs PR: https://github.com/discord/discord-api-docs/pull/5828
Should we include it in this?

still looks good