BitmapData.copyPixels() alphaBitmapData

I'm having some problems with BitmapData.copyPixels(), I don't know if I'm doing something wrong, but the alphaBitmapData is only working for flash target.

I talked to @larsiusprime.
Seems like it's not interpreting the alpha channel correctly.
var obj1:Sprite = new Sprite();
obj1.graphics.beginFill(0xff0000);
obj1.graphics.drawCircle(50, 50, 50);
obj1.graphics.endFill();
obj1.x = 180;
obj1.y = 200;
addChild(obj1);

var obj2:Sprite = new Sprite();
obj2.graphics.beginFill(0xffff00);
obj2.graphics.drawRect(0, 0, 100, 100);
obj2.graphics.endFill();
obj2.x = 300;
obj2.y = 200;
addChild(obj2);

var bmp1:BitmapData = new BitmapData(cast obj1.width, cast obj1.height, true, 0x00000000);
bmp1.draw(obj1);
var bmp2:BitmapData = new BitmapData(cast obj2.width, cast obj2.height, true, 0x00000000);
bmp2.draw(obj2);

// ---Look here---
var bitmapData = new BitmapData(cast bmp2.width, cast bmp2.height, true, 0x00000000);
bitmapData.copyPixels(bmp2, bmp2.rect, new Point(), bmp1, null, true);
// ---------------

var obj3:Bitmap = new Bitmap(bitmapData);
obj3.x = 420;
obj3.y = 200;
addChild(obj3);

I just fixed a crash that was caused by the null alpha point, now native looks similar to HTML5, so something is a little funny.
If someone has time, you can add false &&  to the CFFI.enabled check here, and use the Haxe copy of the copyPixels logic to figure this one out:
https://github.com/openfl/lime/blob/master/lime/graphics/utils/ImageDataUtil.hx#L159
It's the last piece of logic, where alphaImage != null

Changing the order of conditionals in https://github.com/openfl/lime/blob/0d0c04abad0831d5572e1e360d91a8558a111a6c/lime/graphics/utils/ImageCanvasUtil.hx#L93 seems to make it work for html5/canvas, so maybe it's a start ;).
public static function copyPixels (image:Image, sourceImage:Image, sourceRect:Rectangle, destPoint:Vector2, alphaImage:Image = null, alphaPoint:Vector2 = null, mergeAlpha:Bool = false):Void {

	if (destPoint == null || destPoint.x >= image.width || destPoint.y >= image.height || sourceRect == null || sourceRect.width < 1 || sourceRect.height < 1) {

		return;

	}

	sync (image, true);

	if (!mergeAlpha) {

		if (image.transparent && sourceImage.transparent) {

			image.buffer.__srcContext.clearRect (destPoint.x + image.offsetX, destPoint.y + image.offsetY, sourceRect.width + image.offsetX, sourceRect.height + image.offsetY);

		}

	}

	sync (sourceImage, false);

	if (sourceImage.buffer.src != null) {

		image.buffer.__srcContext.drawImage (sourceImage.buffer.src, Std.int (sourceRect.x + sourceImage.offsetX), Std.int (sourceRect.y + sourceImage.offsetY), Std.int (sourceRect.width), Std.int (sourceRect.height), Std.int (destPoint.x + image.offsetX), Std.int (destPoint.y + image.offsetY), Std.int (sourceRect.width), Std.int (sourceRect.height));

	}

	if (alphaImage != null && alphaImage.transparent) {

		if (alphaPoint == null) alphaPoint = new Vector2 ();

		image.copyChannel (alphaImage, new Rectangle (alphaPoint.x, alphaPoint.y, sourceRect.width, sourceRect.height), new Vector2 (sourceRect.x, sourceRect.y), ImageChannel.ALPHA, ImageChannel.ALPHA);

	}

}

Anyway it seems to be quite a hairy problem to make it behave the same as Flash for all targets, with all the possible parameters (AS3 docs aren't much helpful in this case). The best path - maybe - would be to write down a bunch of edge cases and try to find out how to comply with Flash behaviour (not very nice as there are 6/7 parameters to test for various combinations, and I still don't know if mergeAlpha is dependent on alphaBitmap or not, f.e.).
Still looking into it though... I'll report back if I found a sound solution.

Here's (https://github.com/openfl/lime/blob/0d0c04abad0831d5572e1e360d91a8558a111a6c/lime/graphics/utils/ImageDataUtil.hx#L288) missing an alphaPosition += 4;. Neko is coming along but I'm not quite there yet.

UPDATE: I made some progress with this...
Please test this further!
I'm simulating how copyPixels works in flash with a custom implementation, and by now all the tests are behaving the same in flash/neko/html5 (it's not improbable that I might be missing some edge cases though ;).
The (pseudo)code is something like this:
function copyPixels(destImage:BitmapData, sourceImage:BitmapData, sourceRect:Rectangle, destPoint:Point, alphaImage:BitmapData = null, alphaPoint:Point = null, mergeAlpha:Bool = false):Void {
	var sourcePixels = Pixels.fromBitmapData(sourceImage);
	var destPixels = Pixels.fromBitmapData(destImage);
	var alphaPixels = alphaImage != null ? Pixels.fromBitmapData(alphaImage) : null;

	for (y in 0...sourceImage.height) {
		for (x in 0...sourceImage.width) {
			var sourcePixel = sourcePixels.getPixel32(x, y);
			var destAlpha = sourcePixel.A;
			if (alphaImage != null) destAlpha = Math.floor(alphaPixels.getPixel32(x, y).A * sourcePixel.A / 0xFF);
			var destPixel:Pixel = sourcePixel;
			destPixel.A = destAlpha;
			if (x == 2 && y == RADIUS) trace(StringTools.hex(sourcePixel, 8), StringTools.hex(destAlpha, 2), StringTools.hex(destPixel));
			destPixels.setPixel32(x, y, destPixel);
		}
	}

	destPixels.applyToBitmapData(destImage);
}

It seems that the mergeAlpha param is redundant if alphaImage is not null.
What needs to be done now is to convert this to use OpenFL classes, and take care of rects and points (along with un/multiplied alpha!).
(gist is here)

@jgranick can you help me with integrating this into openfl/lime (if you find it sound enough)?

Can you compare the speeds of this and flash's native copyPixels? copyPx is one of the fastest functions in as3 given what it does, and you may be missing important optimizations in this implementation.
I just realized I haven't used the alphaBMD parameter in my four years of coding for flash. I've set mergeAlpha to false less than 10 times.

@MSGhero: yep, I'll try to benchmark it! Will report back as soon as I have something.

And here's a step back :/
... I've run my implementation through more tests only to find out that I get many cases wrong wrt native flash. Specifically I don't understand how mergeAlpha works in flash. I've found this post (http://www.designswan.com/archives/the-function-of-mergealpha-in-copypixels.html) that hopefully gets flash's inner workings right, but no significant progress so far.
As of now I'm just trying to simulate the flash behaviour with a custom function. When that is done we could look at how to optimize it. Any suggestions very welcome!

This is the updated gist with the new tests: https://gist.github.com/azrafe7/85e3cf486ffe23b13102

press SPACE to toggle between openfl and "simulated" copypixels
use the flash target to see how it should behave

I think I got it at last ;)
Here's the relevant functions (not accounting for rects and offsets yet):
inline function fclamp(val:Float):Int {
	return val <= 0 ? 0 : val >= 0xFF ? 0xFF : Math.floor(val);
}

function blend(srcPixel:Pixel, dstPixel:Pixel):Pixel {
	var res:Pixel = 0;
	var srcA = srcPixel.A / 0xFF;
	var dstA = dstPixel.A / 0xFF;
	var outA = srcA + dstA * (1 - srcA);
	var invOutA = 1 / outA;
	if (outA == 0) {
		res = 0;
	} else {
		res.R = fclamp(invOutA * ((srcPixel.R * srcA + dstPixel.R * dstA * (1 - srcA))));
		res.G = fclamp(invOutA * ((srcPixel.G * srcA + dstPixel.G * dstA * (1 - srcA))));
		res.B = fclamp(invOutA * ((srcPixel.B * srcA + dstPixel.B * dstA * (1 - srcA))));
		res.A = Std.int(outA * 0xFF);
	}
	return res;
}

function copyPixels2(destImage:BitmapData, sourceImage:BitmapData, sourceRect:Rectangle, destPoint:Point, alphaImage:BitmapData = null, alphaPoint:Point = null, mergeAlpha:Bool = false):Void {

	sourceRect = sourceImage.rect;
	destPoint = new Point();
	alphaPoint = new Point();

	var sourcePixels = Pixels.fromBitmapData(sourceImage);
	var destPixels = Pixels.fromBitmapData(destImage);
	var alphaPixels = alphaImage != null ? Pixels.fromBitmapData(alphaImage) : null;

	for (y in 0...sourceImage.height) {
		for (x in 0...sourceImage.width) {
			var sourcePixel = sourcePixels.getPixel32(x, y);
			var destPixel = destPixels.getPixel32(x, y);
			var resPixel = sourcePixel;
			if (alphaPixels != null) {
				var alphaPixel = alphaPixels.getPixel32(x, y);
				var srcMultAlphaPixel = sourcePixel;
				srcMultAlphaPixel.A = Std.int(sourcePixel.A * alphaPixel.A / 0xFF);
				if (alphaImage.transparent && (mergeAlpha || !destImage.transparent)) {
					resPixel = blend(srcMultAlphaPixel, destPixel);
				} else {
					resPixel = srcMultAlphaPixel;
				}
			}
			destPixels.setPixel32(x, y, resPixel);
		}
	}

	destPixels.applyToBitmapData(destImage);
}

Results from my tests are 99% equal to flash (there's an occational off-by-one value in the output pixel values - not sure where it's coming from).
One thing I noticed is that on neko/cpp the fill color specified when you create a BitmapData doesn't respect the alpha value (I'll post an issues about that later), but works fine on html5.
Next I'm going to convert this to use openfl internals, add missing logic for rects and offsets, and then we could look into how to optimize it.
(I've updated the gist, but it's grown into quite a messy thing ;)

@MSGhero, I think resolving this would require only some minor changes to your implementation.
Apart from incrementing the alphaPosition probably one of the things needed (possibly the only one?!) is to multiply the alpha with source and use the result before blending it with dest. Can you help me out with this?

Playing a bit more with this. Here's what seems to work:
	/** No checks and not accounting for rects/offsets. */
	function copyPixels2(destImage:BitmapData, sourceImage:BitmapData, sourceRect:Rectangle, destPoint:Point, alphaImage:BitmapData = null, alphaPoint:Point = null, mergeAlpha:Bool = false):Void {

		var needsMultiplyAlpha = alphaImage != null && alphaImage.transparent;
		var needsBlending = mergeAlpha || (needsMultiplyAlpha && !destImage.transparent);

		var sourcePixels = Pixels.fromBitmapData(sourceImage);
		var destPixels = Pixels.fromBitmapData(destImage);

		var sourcePixel, destPixel, resPixel;
		var alphaPixels, alphaPixel;

		if (needsMultiplyAlpha) alphaPixels = Pixels.fromBitmapData(alphaImage);

		for (y in 0...sourceImage.height) {
			for (x in 0...sourceImage.width) {
				sourcePixel = sourcePixels.getPixel32(x, y);
				destPixel = destPixels.getPixel32(x, y);

				if (needsMultiplyAlpha) {
					alphaPixel = alphaPixels.getPixel32(x, y);
					sourcePixel.A = Std.int(sourcePixel.A * alphaPixel.A / 0xFF);
				}

				resPixel = sourcePixel;

				if (needsBlending) resPixel = blend(sourcePixel, destPixel);

				destPixels.setPixel32(x, y, resPixel);
			}
		}

		destPixels.applyToBitmapData(destImage);
	}

Neko shows the same behaviour as flash now.
In my poor efforts to optimize it I've tried to organize the conditionals and move the var declarations outside, but not much was gained with that. Benchmarking it with neko still seems to be one order of magnitude behind flash (remember I've disable cffi though!).
Help would be appreciated to solve this, although I'm aware only a few ones are using the more exotic parameters of copyPixels().

I remember messing with this back in the early days of OpenFL / NME implementing BitmapData.threshold(), and for something like this you're going to run into an optimization wall unless you pull the logic down into the c++ level and directly manipulate stuff there.
Great work nonetheless! Logic first, performance afterwards.

I'm embarrassed about the time delay, but I have had the chance to work with your thorough sample, and work your optimizations into Lime to resolve this issue. It now behaves properly on HTML5, and (I believe) behaves as well as possible on native with premultiplied BitmapData.
We should (perhaps) consider inspecting when BitmapData becomes premultiplied, and defer it only until generating an OpenGL texture, if we do not already


Release builds

I use the hover build command to generate a Windows executable, but there is a black console, how to publish a real program without a console.

We don't have support for releases yet. For now, hover only builds a debug version of the app with a console to track logs. I'll keep this issue open to track support for release builds.

Things that --release should do:

Build binary without console (windows: -ldflags -H=windowsgui).
Building flutter bundle as --release.
Setting the right VM arguments.
Reduce the size of the share-lib from 88M to 28M by running strip -s ./libflutter_engine.so.

I am really looking forward to this as well.

Can't wait to play with it.

@GeertJohan Any updates or ETA on this? If not, would you be able to provide any documentation on how to go about removing the console window manually for now? It would be greatly appreciated.
Thanks.

Once my final exams are over, I'll like to take a look at release builds.
For now, #135 provides enough information for you to hack this through.

@Drakirus Thanks for that. Im assuming its supposed to be set vs export for windows?

Yup

Im getting the following error:
PS C:\Users\User\development\desktop-apps\flutter_project> set CGO_LDFLAGS="-L%HOMEPATH%/.cache/hover/engine/windows/"
PS C:\Users\User\development\desktop-apps\flutter_project> cd ./desktop/cmd
PS C:\Users\User\development\desktop-apps\flutter_project\desktop\cmd> go build -ldflags -H=windowsgui
# github.com/go-flutter-desktop/go-flutter/embedder
C:/Program Files/mingw-w64/x86_64-8.1.0-posix-seh-rt_v6-rev0/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lflutter_engine
collect2.exe: error: ld returned 1 exit status

#34 will have your back

@Drakirus That worked, thank you!
For anyone having this issue, copying the flutter_engine.dll file to the lib folder of minwg did the trick.
windows env var command:
set CGO_LDFLAGS="-L%HOMEPATH%/.cache/hover/engine/windows/"

It doesn't work
$ set CGO_LDFLAGS="-L%HOMEPATH%/.cache/hover/engine/windows/"
$ go build -ldflags -H=windowsgui
# runtime/cgo
gcc: error: "-L\Users\cheng/.cache/hover/engine/windows/": Invalid argument

I just copy flutter_engine.dll to {mingw64 installation place}\lib and it works.
cd ./desktop/cmd
go build -ldflags -H=windowsgui
mv cmd ../build/outputs/windows
../build/outputs/windows/cmd

@Drakirus When building with hover, it seems as though the -mmacosx-version-min gcc flag is not being set, how would I go about making hover set it?

@alexelisenko I don't know much.
I've read https://stackoverflow.com/questions/37399813/why-is-go-build-executable-not-working-on-osx-10-7-or-below-with-third-party-lib
But, didn't found any answers 😕

Things that --release should do:

[ ]  Build binary without console (windows: -ldflags -H=windowsgui).
[ ]  Building flutter bundle as --release.
[ ]  Setting the right VM arguments.
[ ]  Reduce the size of the share-lib from 88M to 28M by running strip -s ./libflutter_engine.so.

How is the progress of this feature? I am looking expectantly toward the feature.
And use -ldflags "-s -w -H=windowsgui" could reduce the size even more.

For Windows
cd C:\your_project_dir\desktop\cmd
C:\your_project_dir\desktop\cmd>go build -ldflags -H=windowsgui
move cmd.exe ../build/outputs/windows
C:\your_project_dir\desktop\build\outputs\windows\cmd.exe

FYI, Work in progress in feature/release, not completed yet.

https://github.com/go-flutter-desktop/hover/pull/11 got merged!
Hover, when building the app with hover build will create the app in release mode!

Updates on hover occurs, make sure to run go get -u github.com/go-flutter-desktop/hover every once in a while.

Does Mac and Linux supported yet? Still get console windows in mac.

@deromask: Answer copy/pasted from zserge/webview issue 13:
On windows there are two subsystems, console and windows. They often have two different entry points (main vs WinMain). But on MacOS it's all the same executable.
The reason you see a terminal window is because you launch the binary directly and not as an app bundle.
Try running the following commands:
$ cd desktop/build/outputs/darwin
$ mkdir -p minimal.app/Contents/MacOS
$ cp ${your_app_name} minimal.app/Contents/MacOS/minimal

Now in Finder you should see minimal.app, clicking on that would launch a GUI window without a terminal. Of course, for a more proper app you would also have to add minimal.app/Contents/Info.plist XML file and maybe some minimal.app/Contents/Resources/minimal.icns for icons. But that depends on the way you package/distribute your app, and I don't think library should be responsible for such things.
Some more readings: https://stackoverflow.com/questions/23861914/how-to-hide-terminal-window-in-mac-osx

@Drakirus Thank you very much!

How to update previous installed device.

go get -u github.com/go-flutter-desktop/hover

This gives following error
go get -u github.com/go-flutter-desktop/hover
# cd C:\Users\acer\go\src\github.com\go-flutter-desktop\hover; git pull --ff-only
error: Your local changes to the following files would be overwritten by merge:
        assets/app/icon.png
Please commit your changes or stash them before you can merge.
Aborting
package github.com/go-flutter-desktop/hover: exit status 1

Thank You

@mar
cd C:\Users\acer\go\src\github.com\go-flutter-desktop\hover
git stash
go get -u github.com/go-flutter-desktop/hover

Thanks for quick response @Drakirus  is there any planning to support printer or thermal printer. It will be great if there is support for printer and excel file .

@Drakirus Any luck figuring out the -mmacosx-version-min flag issue?
At the moment, it seems to be set to whatever OS version is used to build. I could try setting the ENV variable to CGO_CFLAGS="-mmacosx-version-min=10.11" and do hover build, im just not sure if this variable is overwritten by the hover build process.

Perhaps this can be added to: https://github.com/go-flutter-desktop/hover/blob/df3629d6657c7e194f966478c42faa516a545ba4/cmd/build.go#L195

@alexelisenko if you build your own version of hover and add the -mmacosx-version-min=10.11 flag in build.go#L195, does it fixes your issue?

I can give it a shot. Would you be able to give instructions on building and using a custom version of hover?

git clone https://github.com/go-flutter-desktop/hover.git cd hover go install

I think I have it working, but need to do some more testing.
I had to add the following:
ldflags = append(ldflags, "-extldflags=-mmacosx-version-min=10.11")
and
	cmdGoBuild.Env = append(os.Environ(),
		"GO111MODULE=on",
		"CGO_CFLAGS=-mmacosx-version-min=10.11",
		"CGO_LDFLAGS="+cgoLdflags,
	)

Is there a way to use something like ::ShowWindow(::GetConsoleWindow(), SW_HIDE); to hide console? I got a fairly big issue when using release mode.
On debug mode, There is no console window when using dart Process, but on release mode, This is the biggest problem, I use a bunch of Process.run in the background, so It popup up several console in a const interval because Timer.periodic is calling constantly.
Except that, I can't find how to set icon to the final executable, Am I missing something?
By the way, Thanks for this project 👍 , It's awesome.

@Tokenyet Does the process you are executing open with a console window (if you run it manually)?
If anyone can correct me if I'm wrong, but, I believe that if you execute a process that opens a console window, that is your issue.

You can set  your icon with same icon name previously stored  inside desktop/assets/.

I don't know what you think, but what I mean is If I build a Debug executable, It's only one console, no any popups. This is only happened in Release mode.

You can set your icon with same icon name previously stored inside desktop/assets/.

Override icon.png will only be replaced the icon of the windows bar, not the executable itself in my case.

@Tokenyet Have you tried setting the runInShell argument to true?

@Tokenyet Have you tried setting the runInShell argument to true?

That's what I'm doing.

With the following code, I made It! This is the hiding solution to solve the issue.
package main

import "github.com/gonutz/w32"

func main() {
    console := w32.GetConsoleWindow()
    if console != 0 {
        _, consoleProcID := w32.GetWindowThreadProcessId(console)
        if w32.GetCurrentProcessId() == consoleProcID {
            w32.ShowWindowAsync(console, w32.SW_HIDE)
        }
    }
}

Sorry, but I can only find the solution indirectly, I think someone would interest on this, so I decide to share here.
For changing executable icon, following the instruction on rc-demo, and run hover build, that's It.
reference: https://stackoverflow.com/questions/25602600/how-do-you-set-the-application-icon-in-golang/49127938#49127938


Possible bug in GOCART2G or just a naming issue: bext or tau?

There might be a bug in GOCART2G, though maybe it's just "bad variable name" instead of bug. The code is a bit confusing to me at times. 😄
To wit, I was looking at trying to improve the performance of GOCART2G (as @wmputman has said he sees it slower). I was trying to convert some MieQuery calls from "in a 4-d loop" to "in a band loop" when I saw this (showing DU, but it's in all):
https://github.com/GEOS-ESM/GOCART/blob/8cee2066223f686bd96989a6253ee864e498b7a5/ESMF/GOCART2G_GridComp/DU2G_GridComp/DU2G_GridCompMod.F90#L1196-L1202
The issue is that a keyword is not being used for bext. If we now look at the signature of Chem_MieQuery → Chem_MieQueryInt:
   impure elemental subroutine Chem_MieQueryByInt ( this, idx, channel, q_mass, rh,     &
                                   tau, ssa, gasym, bext, bsca, bbck,  &
                                   reff, p11, p22, gf, rhop, rhod, &
                                   vol, area, refr, refi, rc )

! !INPUT PARAMETERS:

   type(Chem_Mie), target, intent(in ) :: this
   integer,                intent(in ) :: idx     ! variable index on Chem_Mie
   real,                   intent(in ) :: channel ! channel number
   real,                   intent(in ) :: q_mass  ! aerosol mass [kg/m2],
   real,                   intent(in ) :: rh      ! relative himidity

! ! I believe per Fortran this means we are actually doing:
        call Chem_MieQuery(mie_table, l, real(offset+1.), q(:,:,:,l), rh, tau=bext, gasym=gasym, ssa=bssa)

We are filling bext with tau not bext. @tclune can confirm if I'm correct.
Now bext does seem related to tau:
      if(present(tau  )) tau   = bextIn * q_mass
      if(present(bext )) bext  = bextIn

by q_mass.
So my question for @amdasilva or @pcolarco is: do you want tau here or bext? If tau, then it's not a bug, just a bad name and all is well. But if this is supposed to be bext it might be incorrect code.

Talking with @aoloso on this, we think this is just a case of "bad name" not bug. I just wanted to be sure.

@mathomp4 This is not a bug (i.e., does not lead to erroneous/unexpected result) but is confusing in how it was implemented. The distinction of "bext" from "tau" is not intuitive and should be cleaned up more thoroughly in the code, but for now I added the appropriate keyword and verified zero-diff in the result. I will work with @mmanyin to check this in.

@pcolarco Okay. Just a "confused non-scientist" thing then. I figured you all would have noticed something being off by Q! 😄


Add GitHub pull request template

@pushkyn Thanks for the PR! 🙂
I think there is one other case where a PR is related to an issue, but it doesn't mean the issue is closed when it's merged. ex: #2024
Maybe Related or For?

@seanyesmunt you are right, I changed the text a little

@pushkyn Looks great. Thanks for the PR!

Reach out to us at<EMAIL_ADDRESS>so we can send you some LBC as appreciation and get you a t-shirt for Hacktoberfest 🙂


Bump to 1.0

Is there anything missing to this implementation? Otherwise, I think we can bump it to 1.0.

Only thing I wondered about is whether a streamable interface would be beneficial.

But you're right, let's bump to v1.0.0!

4acc00dc0c9a24c1e33157a7eebe0092b80b258e
https://www.npmjs.com/package/chunked-dc

Good point but we can add a streamable interface later when needed.


Advanced search picklist items styling: use same styling as in other advanced-search picklists

Advanced search picklist items styling: use same styling as in other advanced-search picklist

I was ablet to get things closer, but not exactly the same due to how the multiple choice needs to work.

Fix font to be "Proof"

Still not seeing sans serif font on Mac and Windows Chrome, but am seeing it on Windows Firefox.  Selected authors not in sans serif on Windows Firefox.

From: Frank Wiles @.>
Sent: Wednesday, September 13, 2023 12:08 PM
To: revsys/revsys-nuremberg @.>
Cc: Deschner, Paul @.>; Author @.>
Subject: Re: [revsys/revsys-nuremberg] Advanced search picklist items styling: use same styling as in other advanced-search picklists (Issue #315)
Closed #315https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_revsys_revsys-2Dnuremberg_issues_315&d=DwMCaQ&c=WO-RGvefibhHBZq3fL85hQ&r=qr3mVkZg6Y9YGHlFbuilpJ9gY_tiZwvf4mGkbbehvLw&m=PRC8ko-zXGQGuPyxcEqBNqVcZS0XZW6pI_qk4bP6ZNrK70HK-6U3YztnyeLSXWbj&s=_dYu9lw3f8feoPd181DgeieNidMPUO_uepxb4UDw7FQ&e= as completed via #324https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_revsys_revsys-2Dnuremberg_pull_324&d=DwMCaQ&c=WO-RGvefibhHBZq3fL85hQ&r=qr3mVkZg6Y9YGHlFbuilpJ9gY_tiZwvf4mGkbbehvLw&m=PRC8ko-zXGQGuPyxcEqBNqVcZS0XZW6pI_qk4bP6ZNrK70HK-6U3YztnyeLSXWbj&s=NKudwYvuPEWpIZjhSvcL1ld_HfNJsp5FZXkDvLlU48k&e=.
—
Reply to this email directly, view it on GitHubhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_revsys_revsys-2Dnuremberg_issues_315-23event-2D10361694885&d=DwMCaQ&c=WO-RGvefibhHBZq3fL85hQ&r=qr3mVkZg6Y9YGHlFbuilpJ9gY_tiZwvf4mGkbbehvLw&m=PRC8ko-zXGQGuPyxcEqBNqVcZS0XZW6pI_qk4bP6ZNrK70HK-6U3YztnyeLSXWbj&s=Z6wqFVM4eIkCeZ2VTFQHSmWW7rUz3AXpPUwIKzDfkVE&e=, or unsubscribehttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AALY7AZYPVY7KSCOAGLJFULX2HLAFANCNFSM6AAAAAA4HURX7A&d=DwMCaQ&c=WO-RGvefibhHBZq3fL85hQ&r=qr3mVkZg6Y9YGHlFbuilpJ9gY_tiZwvf4mGkbbehvLw&m=PRC8ko-zXGQGuPyxcEqBNqVcZS0XZW6pI_qk4bP6ZNrK70HK-6U3YztnyeLSXWbj&s=6-vDntxxL3ZTvzTOMIzckXUbczg4og-OY_Iwzt6gYUs&e=.
You are receiving this because you authored the thread.Message ID: @.***>


Reveal in Fp25519 share conversion should be a malicious reveal

This doesn't seem right to me:
    // validate before reveal
    validator.validate().await?;

    // this leaks information, but with negligible probability
    let mut y = (m_ctx.role() != Role::H3).then(|| Vec::with_capacity(NC));
    for i in 0..BITS {
        let y_bit = partial_reveal(
            m_ctx.narrow(&Step::RevealY(i)),
            record_id,
            Role::H3,
            sh_y.get(i).unwrap(),

I think the reveal needs to be a malicious reveal.

This was fixed in #1206 and #1208.


Model invisible ingame

Description
I tried to import a model in MC via objmc (I did multiple by now), but it was a .gltf model so I imported it in blender and exported it as obj -> model is invisible in MC. I imported the obj from blender in BB and exported it again as a obj. Yesterday this method (Idk why) made the model show up in game. Today this way of doing it doesnt work anymore and I don't even know why it worked in the first place.

In 3D viewer it clearly shows it.


mugene drops some operations for some condition (repro attached)

This example MML:
1	BEND_CENT_MODE100
0	GM_SYSTEM_ON r1
1	CH1 @10 o6 r1 c1

results in piano i.e. @10 is not respected.
Changing the first line from 1 to 0 results in the expected output.
(edit: simplified the repro MML).

Not a bug. It is expected. This MML generates the expected output:
0	GM_SYSTEM_ON r1
1	BEND_CENT_MODE100
1	CH1 @10 o6 r1 c1

It is because BEND_CENT_MODE output (in control change) was done before GM_SYSTEM_ON.


Add TensorScatterUpdate op conversion

TensorScatterUpdate is not an ONNX operator, so it needs to be translated into "ScatterND" ONNX operator.

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

Thanks for the contribution!
Can you fix flake8 issue as the CI build failure suggests? Also, can you add a unit test in test_layers.py?

I'm working on it now.
Looks I created pull request with wrong email. I'll close it and reopen with the correct info.


[6.x] Allow 'null' CacheDriver

Currently the NullDriver for cache is available but only if you add a config like
'connections' => [
  //..
  'none' => [
    'driver' => 'null'
  ]
]

and using CACHE_DRIVER=none in the .env file. The driver cannot be named null because the null value is not handled in the getConfig() method of the CacheManager class.
This PR aims to make the behavior of the Cache and Broadcast-NullDriver consistent.

To ensure the configuration is also consistent the following should be added to the cache  config in the laravel/laravel repo
`null` => [
  'driver' => 'null'
]

Can't you wrap "null" in quotation marks?

@taylorotwell no, it s still parsed as null


Logo contribution

I'm sorry sir, my github account was suspended,  I will now open it up pr again.

Thank you @Batarian711 👍


Cannot sign-in on vscode

please complete the following information:

OS version: Fedora Linux 38
Editor: Vscode
Editor version: 1.85.0
Programming language: Javascript
TabNine extension version: 3.50.0
Engine version (could be located within Tabnine Hub): 4.53.0-60

Issue Details:
Similar to this issue: https://github.com/codota/TabNine/issues/627 but it is occurring on the newest version as well on linux

Steps to reproduce are the same on the closed issue:
1 - click sign in in vscode
2 - copy the code
3 - open tabnine hub in the ide
4 - paste the code in the support tab on the API Key Activation field
5 - The message still persists both in the current session and after closing and opening it again
gz#28405(related to Zendesk ticket #28405)

@CHFernandes Please follow the steps here - https://docs.tabnine.com/saas/install/sign-in/using-an-authentication-token

Closing issue, I was looking in the wrong place, thank you.


Restoring the Model

Hello, I'm trying out your code and I'm running the Test and Visualize attention results codes and I'm getting this the error below. Could it be that the sample model is already outdated? Thank you.
Log
2017-05-25 09:05:29,733 root  INFO     loading data
2017-05-25 09:05:29,738 root  INFO     phase: test
2017-05-25 09:05:29,738 root  INFO     model_dir: model
2017-05-25 09:05:29,738 root  INFO     load_model: True
2017-05-25 09:05:29,738 root  INFO     output_dir: results
2017-05-25 09:05:29,738 root  INFO     steps_per_checkpoint: 500
2017-05-25 09:05:29,738 root  INFO     batch_size: 1
2017-05-25 09:05:29,738 root  INFO     num_epoch: 1000
2017-05-25 09:05:29,739 root  INFO     learning_rate: 1
2017-05-25 09:05:29,739 root  INFO     reg_val: 0
2017-05-25 09:05:29,739 root  INFO     max_gradient_norm: 5.000000
2017-05-25 09:05:29,739 root  INFO     clip_gradients: True
2017-05-25 09:05:29,743 root  INFO     valid_target_length inf
2017-05-25 09:05:29,743 root  INFO     target_vocab_size: 39
2017-05-25 09:05:29,743 root  INFO     target_embedding_size: 10.000000
2017-05-25 09:05:29,743 root  INFO     attn_num_hidden: 128
2017-05-25 09:05:29,743 root  INFO     attn_num_layers: 2
2017-05-25 09:05:29,743 root  INFO     visualize: True
2017-05-25 09:05:29,743 root  INFO     buckets
2017-05-25 09:05:29,744 root  INFO     [(16, 32), (27, 32), (35, 32), (64, 32), (80, 32)]
input_tensor dim: (?, 1, 32, ?)
CNN outdim before squeeze: (?, 1, ?, 512)
CNN outdim: (?, ?, 512)
2017-05-25 09:07:04,718 root  INFO     Reading model parameters from model/translate.ckpt-47200
Traceback (most recent call last):
  File "src/launcher.py", line 146, in <module>
    main(sys.argv[1:], exp_config.ExpConfig)
  File "src/launcher.py", line 142, in main
    session = sess)
  File "/home/lrs/Attention-OCR/src/model/model.py", line 204, in __init__
    self.saver_all.restore(self.sess, ckpt.model_checkpoint_path)
  File "/home/lrs/tf101/local/lib/python2.7/site-packages/tensorflow/python/training/saver.py", line 1428, in restore
    {self.saver_def.filename_tensor_name: save_path})
  File "/home/lrs/tf101/local/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 767, in run
    run_metadata_ptr)
  File "/home/lrs/tf101/local/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 965, in _run
    feed_dict_string, options, run_metadata)
  File "/home/lrs/tf101/local/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 1015, in _do_run
    target_list, options, run_metadata)
  File "/home/lrs/tf101/local/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 1035, in _do_call
    raise type(e)(node_def, op, message)
tensorflow.python.framework.errors_impl.NotFoundError: Tensor name "embedding_attention_decoder/attention_decoder/multi_rnn_cell/cell_1/basic_lstm_cell/biases" not found in checkpoint files model/translate.ckpt-47200
         [[Node: save/RestoreV2_33 = RestoreV2[dtypes=[DT_FLOAT], _device="/job:localhost/replica:0/task:0/cpu:0"](_recv_save/Const_0, save/RestoreV2_33/tensor_names, save/RestoreV2_33/shape_and_slices)]]

Caused by op u'save/RestoreV2_33', defined at:
  File "src/launcher.py", line 146, in <module>
    main(sys.argv[1:], exp_config.ExpConfig)
  File "src/launcher.py", line 142, in main
    session = sess)
  File "/home/lrs/Attention-OCR/src/model/model.py", line 198, in __init__
    self.saver_all = tf.train.Saver(tf.all_variables())
  File "/home/lrs/tf101/local/lib/python2.7/site-packages/tensorflow/python/training/saver.py", line 1040, in __init__
    self.build()
  File "/home/lrs/tf101/local/lib/python2.7/site-packages/tensorflow/python/training/saver.py", line 1070, in build
    restore_sequentially=self._restore_sequentially)
  File "/home/lrs/tf101/local/lib/python2.7/site-packages/tensorflow/python/training/saver.py", line 675, in build
    restore_sequentially, reshape)
  File "/home/lrs/tf101/local/lib/python2.7/site-packages/tensorflow/python/training/saver.py", line 402, in _AddRestoreOps
    tensors = self.restore_op(filename_tensor, saveable, preferred_shard)
  File "/home/lrs/tf101/local/lib/python2.7/site-packages/tensorflow/python/training/saver.py", line 242, in restore_op
    [spec.tensor.dtype])[0])
  File "/home/lrs/tf101/local/lib/python2.7/site-packages/tensorflow/python/ops/gen_io_ops.py", line 668, in restore_v2
    dtypes=dtypes, name=name)
  File "/home/lrs/tf101/local/lib/python2.7/site-packages/tensorflow/python/framework/op_def_library.py", line 763, in apply_op
    op_def=op_def)
  File "/home/lrs/tf101/local/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 2327, in create_op
    original_op=self._default_original_op, op_def=op_def)
  File "/home/lrs/tf101/local/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 1226, in __init__
    self._traceback = _extract_stack()

NotFoundError (see above for traceback): Tensor name "embedding_attention_decoder/attention_decoder/multi_rnn_cell/cell_1/basic_lstm_cell/biases" not found in checkpoint files model/translate.ckpt-47200
         [[Node: save/RestoreV2_33 = RestoreV2[dtypes=[DT_FLOAT], _device="/job:localhost/replica:0/task:0/cpu:0"](_recv_save/Const_0, save/RestoreV2_33/tensor_names, save/RestoreV2_33/shape_and_slices)]]

@leifsyliongka Same problem. Did you fix this error?

@BeSlower I was able to run eventually code the code. The error is caused by the model being outdated with respect to the script. You'll have to train your own model.

same problem。when i train my own model,it works。


Use Charsequence in API

In methods that currently take String as a parameter in the API package, it would be better to take Charsequence.  Since String can be assigned to Charsequence this will support all existing code, plus more like the assignment of StringBuffer etc.
For example we can change
   Bytes.of(String s)

to
   Bytes.of(Charsequence s)

Methods that return String should not be changed.  The following is take from a stackoverflow post and I think this makes sense.

Any method which accepts a CharSequence can operate on all of these equally well. Any method which only accepts a String will require conversion. So using CharSequence as an argument type in all the places where you don't care about the internals is prudent. However you should use String as a return type if you actually return a String, because that avoids possible conversions of returned values if the calling method actually does require a String.

It would be ok for now to change the implementation to call cs.toString().getBytes() where cs is a CharSequence.  Once the API change is made, its easy to optimize the implementation in the future w/o impacting users.

will pick this one

@Garvit244 will you be able to work on this in the next week or two?  We are slowly moving towards a release of the parent pom, so there is no hurry at the moment. After the parent pom we can start working on the release of Fluo itself.

Sure.  Actually I m facing some problems with my laptop so won't able to work on this.  Will definitely try to complete this one by  this or next week.


Update Posts “test”

Automatically generated by Netlify CMS

👷 Deploy Preview for incomparable-pegasus-6408a6 processing.

Name
Link

🔨 Latest commit
63d076ff05dbdb3d9ff1df8603129f9374730c35

🔍 Latest deploy log
https://app.netlify.com/sites/incomparable-pegasus-6408a6/deploys/62416af55f9342000820a7fb


Fixed negative specular issue

Normals were not transformed by the vertex shader causing lighting glitches.

Yeah, it seems to fix it, at least partially, the lit shader is just broken overall.


New python plugin implementation

Features

Add plugin actions to any menu element (submenus not supported yet)
Configure your plugins with json (keybindings, menu elements)
Your plugin doesn't need a keybinding or menu element (vice versa)
Easy plugin definitions (using lambdas with access to singletons)
Cleanup of CMakeLists.txt
argv** is stored by application
ctrl-p to edit plugins

Breaking stuff:

SourceView now returns nullptr instead of throwing

Todo

[ ] Make plugins exception safe (crashes on syntax error now, working on fix)

[x] Create wider api

[ ] Document this in wiki or /docs (discuss this)

[x] Reload plugins that have been modified

[ ] Test on osx @eidheim

[ ] Test on arch

[ ] Test on debian

[ ] Test on msys

[ ] Ready for merge

Plugins

You can see available plugin definitions in plugin_api.cc
json menu-configuration

{
    "main_menu": "_Tools", // if you write _Project, project menu is appended
    "sections": {
  	"item" : {
  	    "label": "Delete cache",
  	    "action": "plugin-file-name.method_name", // parameters not supported
  	    "keybinding": "<primary>j" // directly passed to gtk, also optional
  	},
  	"submenu" : {
            "label": "Other",
  	    "sections": { // only items allowed on this level
  		"item" : {
  		    "label": "Delete cache",
  		    "action": ""
  		}
  	    }
  	},
	"item" : {
  	    "label": "Print Hello",
  	    "action": ""
	}
    }
}

Great work! Have not looked at it thoroughly yet, but its really nice that we get a python integration that support c++11!

This solution doesn't work in windows very well I will need to do some refactoring.

Since the interpreter can tell us about code semantics I'm parsing the files with py-extension to detect syntax errors. (and mark them) I might need some help with some race conditions.

@zalox Sure, let me know. I am abit busy in the following days though, have to grade some hundreds of exams. Also, would be nice if you could test https://aur.archlinux.org/packages/jucipp-git/ Tomorrow after merge of #137 and v1.0.1 release.

@zalox Also, after merge Tomorrow, there are new build instructions to reflect the new build system. Easier to work with juCi++ when following these, as then you would never be affected by cmake caches in the jucipp source directory.

@eidheim the AUR package still works, I just tested it. It was always using out-of-source builds as described in the new build instructions.

@archshift Thank you, happy to hear it. By the way, would it be ok to upgrade the AUR package to using the v1.0.1 release? Someone might experience build problems in juCi++ due to cmake caches in projects when upgrading from juCi++ v1.0.0 (in-source) to v1.0.1 or higher (out-of-source).

The AUR package is a devel package, that is, it pulls directly from git whenever a user chooses to install it. The build directory isn't necessarily kept the same between upgrades, either, so changes in the build system shouldn't make a problem.

@archshift Ah, so when someone installs the AUR package, it fetches the latest cppit/jucipp master? I thought it cloned a specific revision/commit hash.
The build problems I was thinking of is when compiling a project within juCi++, not when building the juCi++ application. I was a bit unclear there.

Yeah, it just fetches the latest revision, at least with the jucipp-git package. Also, building a project within the IDE works as well.

@archshift Thank you again. So if I understand it correctly, it fetches our latest (non-pre) release (atm v1.0.1) and will ignore what we do in the master branch between the releases?

Nope, it fetches the latest got revision from master, tagged as a release or otherwise.

The arch package should behave the same way as  the msys2-package. It clones master during build.

I managed to confuse myself when reading https://wiki.archlinux.org/index.php/VCS_package_guidelines#Git I think. If I am not completely off, there is an option to base it on releases as well, but it is fine the way it is of course.
Good thing you mentioned the MSYS2 package (https://github.com/Alexpux/MINGW-packages/blob/master/mingw-w64-jucipp-git/PKGBUILD), since it is then missing the tiny-process-library link. I'll try make a PR on that Tomorrow afternoon.

This is testable now. @eidheim
You might need to start juci++ twice to activate the plugins on first run. (I can't both create files and change the menu, since the menu is immutable.)

@zalox see #162. I added the possibility to modify the menus at runtime, for instance:
auto plugins_submenu=Gio::Menu::create();
Menu::get().window_menu->insert_submenu(5, "Plugins", plugins_submenu);
plugins_submenu->append("Test", "app.plugins.test");

@zalox see #162. I added the possibility to modify the menus at runtime, for instance:
auto plugins_submenu=Gio::Menu::create();
Menu::get().window_menu->insert_submenu(5, "Plugins", plugins_submenu);
plugins_submenu->append("Test", "app.plugins.test");

I will make appropriate changes to afflict this.
I also updated the first post.

@zalox By the way, is it possible to take advantage of the Python bindings to gtk3? For instance receive the current view as a python object (https://developer.gnome.org/pygtk/stable/class-gtktextview.html for instance)? Not sure if this is the best idea, but maybe worth considering as this would lead to greater flexibility when creating python plugins, and one would not need to create wrappers to all the gtktextview methods (since they already exist in pygtk).

@zalox Sorry, I made another conflict, a minor one though. Committed a few fixes to master directly, and made a bugfix/cleanup release v1.1.1.

eidheim wrote:

By the way, is it possible to take advantage of the Python bindings to gtk3? For instance receive the current view as a python object?

Yes, this is the objective of the PyGObject (GI) project. First it will make us dependent on the GI-package for python, then I need to figure out how to correctly pass references or pointers to python to create GI-objects. At the moment I have no idea how to do this, but totally agree that this approach is the best.
Just to mention why I'm not focusing on pygtk:
pygtk.org wrote:

Note: New users are encouraged to use GTK+3 through the PyGObject bindings instead of using PyGTK with GTK+2. Windows users may still want to keep using PyGTK until more convenient installers are published.

eidheim wrote:

Sorry, I made another conflict, a minor one though.

Don't worry about conflicts, I'm usually happy to do them since I need to understand the algorithms they break.
Resources for later:

PyGObject reference

@zalox is this the one that is recommended (PyGObject): https://github.com/Alexpux/MINGW-packages/tree/master/mingw-w64-pygobject? If so, it seems available through MSYS2? I have no experience with this though.

@eidheim Just want to mention you create standalone dialogs, windows, promptboxes etc. using the GI-library for Python as is.
@eidheim wrote:

@zalox is this the one that is recommended (PyGObject): https://github.com/Alexpux/MINGW-packages/tree/master/mingw-w64-pygobject? If so, it seems available through MSYS2? I have no experience with this though.

Yes, that is the correct one.

http://www.ibm.com/developerworks/library/l-wrap/

https://github.com/wcremeika/thesis/blob/5b4c04771c8fd82129f0a3151bd582e379f5aa61/claws-mail-3.9.2/src/plugins/python/clawsmailmodule.c

@eidheim
This is getting very stable. The last few commits are adding menu elements and accels dynamically. The gtk bindings are working according to the api, and is slightly different from the gtkmm bindings.
I've successfully tested stand-alone python apps as well, so people can write for instance gtk-windows to add gui to their plugins.
The plugins provided are made on the fly, and might need some clean up from someone who actually knows python better than me.
I'm keeping the old way of adding menu elements as well, to make sure we support plugins on systems where pygobject introspection isn't supported.
This is my todo:

Update documentation to add new dependencies
Make sure plugins are installed on startup
Write some usage/design spec

The latest commit makes this testable.
Python handles packages through pip or the package repo. I used pacman on arch to install pygobject and python 3 and used the site_packages option in config.json to pont to it. The default value migth be sufficent.

Great! Usually, maybe before documentation etc, one would want to clean up/reconstruct the source code once having a working version. Might be a good idea to spend some time on this, especially after so many changes, and when creating an API. Saying this before I have looked at the source though, but when you are happy with the source after considering cleanup/reconstruct I'll have a look at it:)

I think it might be useful to rebase this pull request to get a better overview of the changes. This will also allow me to fine comb all the code to check for refactor needs. I have some time tomorrow to do this. I think most of the commits in this request are overwritten anyways. I think I can make this into more like 10 commits.

Splendid, just remember to take your time on the refactor, its a great experience, and something that is not at all prioritised in businesses. This is one of the reasons why Open Source is such a success I belive:)

Before I start. Are there any features you'd like to see?
I think I might be able to make the bindings available for js, vala, lua and other script languages with some struggle.

Python is fine for now I think:) Just keep it simple, but flexible and general.


Missing text in menus and lore recaps during cutscenes

Hi, i got this working successfully on my desktop but i since then tried to get it to work on my laptop. The cutscenes are working fine but for some reason i keep losing texts in certain parts of the main menu and when i try to look at lore during any cutscene it also cuts over some of the text . not sure what why, i tried adjusting the .ini to fit my laptops resolution but nothing seems to work. ill add some pictures as well. thanks for all the hard work !

looked in the closed issues and found the fix. thank again!


⚠ Cioos National CKAN has degraded performance

In e8267a2, Cioos National CKAN (https://catalogue.cioos.ca/) experienced degraded performance:

HTTP code: 200
Response time: 21803 ms

Resolved: Cioos National CKAN performance has improved in 3e02c07 after 28 minutes.


2D usage

can show how to use it on two dimension data where x and y both are changing

This would be really useful

any updates ?


ERROR: dependencies 'LiblineaR', 'osqp' are not available for package 'augsynth'

Bug description
I am getting this error " ERROR: dependencies 'LiblineaR', 'osqp' are not available for package 'augsynth' when I am trying to install Geolift in my Rstudio.
Session information

sessionInfo()
R version 4.1.0 (2021-05-18)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 22621)

Matrix products: default
locale:
[1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United States.1252    LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C                           LC_TIME=English_United States.1252
attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base
loaded via a namespace (and not attached):
[1] processx_3.7.0    compiler_4.1.0    R6_2.5.1          rprojroot_2.0.3   cli_3.6.1         prettyunits_1.2.0 tools_4.1.0
[8] withr_3.0.1       rstudioapi_0.14   curl_4.3.2        crayon_1.5.3      remotes_2.5.0     callr_3.7.2       pkgbuild_1.3.1
[15] ps_1.7.1
Reproduction steps
I have followed the installation manual from here.
https://facebookincubator.github.io/GeoLift/docs/GettingStarted/InstallingR.  I am getting the above error when I am trying to run
remotes::install_github("ebenmichael/augsynth"). I have tried to install it separately but no use.
Please help me if anyone is familiar with it? Thanks in advance
Aditya

Sorry to update it here. I am getting this error while running remotes::install_github("facebookincubator/GeoLift") line from the documentation.
ERROR: dependency 'MarketMatching' is not available for package 'GeoLift'

Hi @SaiAditya2595 did you solve the first issue you mentioned when installing augsynth package? About the error when installing GeoLift package, can you try to install it again and share the step-by-step you went through? Thank you in advance.

@JussanN Thank you so much for your response. I have upgraded my R package to 4.4.1 and able to install Geolift() package without any issue.

Hi @SaiAditya2595 glad that you were able to solve it. Thank you for the update.

@JussanN I tried to tag you in my original Issue POST here https://github.com/facebookincubator/GeoLift/issues/199 but i dont think it worked, so I tried through an old/closed post. I hope you can help me, thanks!


Best place to get news and updates on Static Web Apps?

Hello, just wondering where the best places it to get news and updates regarding new features and changes to the Static Web Apps platform? I can't find any blog or "what's new" sort of page anywhere.

This is good feedback. We’ve been having internal discussions about this and are looking at ways to better communicate updates and new features.
For now, our Twitter account might be the best place for updates.


Command ng build fails behind corporate proxy

Command
build
Is this a regression?

[ ] Yes, this behavior used to work in the previous version

The previous version in which this bug was not present was
No response
Description
I have such stylesheets links (and nothing else more) in index.html:
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500&display=swap" />
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200" />
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200" />
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Material+Symbols+Sharp:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200" />

In angular.json as schematics I use:
"schematics": {
    "@schematics/angular:component": {
        "style": "scss"
    }
}

and @angular-devkit/build-angular:application as builder
There is corporate proxy server with address <IP_ADDRESS>:8080 for HTTP and HTTPS. I used to set up proxy configuration in linux and NPM:
export HTTP_PROXY=<IP_ADDRESS>:8080
export HTTPS_PROXY=<IP_ADDRESS>:8080
npm config set proxy http://<IP_ADDRESS>:8080
npm config set https-proxy https://<IP_ADDRESS>:8080

NPM works well
Minimal Reproduction

Command ng build

Exception or Error
An unhandled exception occurred: Invalid URL
See "/tmp/ng-Q1XcXA/angular-errors.log" for further details.

------------- angular-errors.log ---------------------------
[error] TypeError: Invalid URL
    at new URL (node:internal/url:797:36)
    at new HttpsProxyAgent (/.../src/main/webapp/web-frontend/node_modules/https-proxy-agent/dist/index.js:54:50)
    at InlineFontsProcessor.getResponse (/.../src/main/webapp/web-frontend/node_modules/@angular/build/src/utils/index-file/inline-fonts.js:188:21)
    at InlineFontsProcessor.processURL (/.../src/main/webapp/web-frontend/node_modules/@angular/build/src/utils/index-file/inline-fonts.js:235:37)
    at InlineFontsProcessor.process (/.../main/webapp/web-frontend/node_modules/@angular/build/src/utils/index-file/inline-fonts.js:115:40)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async IndexHtmlGenerator.runPlugins (/.../src/main/webapp/web-frontend/node_modules/@angular/build/src/utils/index-file/index-html-generator.js:60:28)
    at async IndexHtmlGenerator.process (/.../src/main/webapp/web-frontend/node_modules/@angular/build/src/utils/index-file/index-html-generator.js:44:19)
    at async executePostBundleSteps (/.../src/main/webapp/web-frontend/node_modules/@angular/build/src/builders/application/execute-post-bundle.js:48:62)
    at async executeBuild (/.../src/main/webapp/web-frontend/node_modules/@angular/build/src/builders/application/execute-build.js:113:24)

Your Environment
--------- result of `ng version` ---------------------------
Angular CLI: 18.1.2
Node: 20.16.0
Package Manager: npm 10.8.2
OS: linux x64

Angular: 18.1.2
... animations, cdk, cli, common, compiler, compiler-cli, core
... forms, material, material-moment-adapter, platform-browser
... platform-browser-dynamic, router

Package                         Version
---------------------------------------------------------
@angular-devkit/architect       0.1801.2
@angular-devkit/build-angular   18.1.2
@angular-devkit/core            18.1.2
@angular-devkit/schematics      18.1.2
@angular/flex-layout            15.0.0-beta.42
@schematics/angular             18.1.2
rxjs                            7.8.1
typescript                      5.5.4
zone.js                         0.14.8

Anything else relevant?
When I tried to build same application on machine with direct access to the Internet, build finished successfully

The issue is that both HTTP_PROXY and HTTPS_PROXY are missing the protocol part in their URLs, rendering them invalid.

 Thanks for the help


We need to update the header which currently says "Internal service name" and any other relevant place to say "JAC Digital Platform".

Closing this issue as it was created for the recent Developer Assessments :)


Switching to 9.0.0-beta4 and back to dev-master break Sage integration

Hey !
I just tried to update the package to 9.0.0-beta4, and it broke the installation.
So i switched back to dev-master, and it didn't fixed the issue.
I add to add in my function.php (or included, filters.php for Sage)
add_filter('sober/controller/path', function () {
    return dirname(get_stylesheet_directory()) . '/resources/controllers';
});

again to match Sage 9 Beta Controller location.
Thanks !

Can you try the following
add_filter('sober/controller/path', function () {
    return get_stylesheet_directory() . '/resources/controllers';
});

The filter I added work already.
It was just to notify that update and downgrade can cause the error on Sage, and so need the filter (back?) to work. I had no issue after a fresh Sage install.

thanks, I will take a look.

@mtx-z if I'm not mistaken then get_stylesheet_directory() returns $path/resources
You need to add only /controllers, if you want to place a folder controllers In resources/, filter should look like this:
add_filter('sober/controller/path', function () {
    return get_stylesheet_directory() . '/controllers';
});

That's what I meant to comment with, haha.
@9585999 thank you

@mtx-z I do see this issue as more of a teething problem than something that should be solved with additional code. Moving forward, with the correct versions, this should not be an issue.


Post new release

It would be useful to tag a new release to include https://github.com/mattn/go-xmlrpc/pull/13.

Tagged v0.0.2

It looks like the same commit was tagged

Because nothing changed after #13

b33132ba is merge commit. Not real commit.

Yes, and that's important.
See the compare: https://github.com/mattn/go-xmlrpc/compare/v0.0.2...master

Updated v0.0.2

Sadly, updating in-place seems to break things due to Go caching. I think you will have to publish v0.0.3. :-(

Please try again.

:tada: https://github.com/prometheus/node_exporter/pull/1529 Thanks!


Support server-side requests

When I connect the camera, every 30 seconds, send OPTIONS request to keep alive, however, the camera will send response:
RTSP/1.0 200 OK......
but camera also send a request：
OPTIONS*RTSP/1.0.........
An error occurred while parsing this request in the code pkg\base\response.go line144
proto := string(byts[:len(byts)-1])   //  this proto value is "OPTIONS"

if proto != rtspProtocol10 {
	return fmt.Errorf("expected '%s', got '%s'", rtspProtocol10, proto)
}

logs:
c->s OPTIONS rtsp://<IP_ADDRESS>/media.sdp/ RTSP/1.0
CSeq: 6
Session: 0
User-Agent: gortsplib
s>c RTSP/1.0 0
c->s TEARDOWN rtsp://<IP_ADDRESS>/media.sdp/ RTSP/1.0
CSeq: 7
Session: 0
User-Agent: gortsplib
s>c RTSP/1.0 0

I am using ffplay to play this camera  stream and it is no problem, ffplay responds to this request:

Hello, this is related to #56 - at the moment the client library doesn't support cameras or servers that sends requests back. It may in the future.

fixed by #93


Use akka-http for requests from the invoker to the containers

Stepping stone towards streaming exec data from the database to the containers. This commit replicates existing behavior but replaces the blocking Apache HTTP client by akka-http.
This commit also introduces a new helper object, NewHttpUtils to make non-pooled, possibly retrying, HTTP requests using the akka-http data model. (Candidates for a better object name are welcome.)
FYI @rabbah @markusthoemmes

@psuter What's the status on this PR? waiting for review, abandoned, ready?

This is active.

My bad, was sorting PRs my active, I guess I picked from the wrong end, and just saw the "21 days ago"

To answer @csantanapr's question, the reason I haven't asked for a merge yet is because, up to some days ago, occasionally a failure showed up in the build (not killing a long running action fast enough). I never witnessed the failure locally. I have been trying to reproduce it, but now it seems it just won't show up again.

Thanks for the update @psuter 👍🏼

PG1 90

PG1 91 as well.  Don't know how else to test at this point.

@perryibm @psuter ping, PR still under review?

It's not a matter of code review but confidence due to the observation of failure and then inability to reproduce.  I suggest just running say 5 PGs to increase confidence and then we can merge and see what happens under load.

Thanks, will do.
On Aug 11, 2016 1:21 PM, "perryibm"<EMAIL_ADDRESS>wrote:

It's not a matter of code review but confidence due to the observation of
failure and then inability to reproduce. I suggest just running say 5 PGs
to increase confidence and then we can merge and see what happens under
load.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/openwhisk/openwhisk/pull/896#issuecomment-239229182,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAO_KycJr-NxEEtCPCzu0HOQrQLRQ1CMks5qe1n7gaJpZM4JM06g
.

@perryibm see comment above for a list of successful PG1 builds.


Need way to manage assets

By assets, do you mean images, and the like? Or css/js?

Images and other files. :-)

I assume you'd want to handle local files and S3 buckets and the like?
I'm a bit of an architecture novice, but I'd like to help if I can, because I think Bumble is pretty damn cool - I love the way it doesn't dictate DB structure.
I'm thinking of a seperate package that could provide the bones of an asset management system. Maybe you can chip in, because, like I said, I'm a bit of a novice.
interface FileContainerInterface
{
    public function getFileList($directory);
    public function createFile($path, $contents);
    public function updateFile($path, $contents);
    public function createOrUpdateFile($path, $contents);
    public function getFileContents($path);
    public function deleteFile($path);
}

This could then be implemented as LocalContainer, S3Container, etc.
We'd also need a FileContainerModel (an Eloquent model for persistence and querying), which would need a DB table with fields:

name (descriptive name for UI)
type (LocalContainer, S3Container)
settings (json settings)

Finally, a FileContainerRepo, or FileContainerService, to find and return FileContainers. It would use FileContainerModels to query the DB but would actually return instances of LocalContainer, FileContainer. Hmm, I might even be able to ditch the FileContainerModel and just use some Fluent in the FileContainerService.
Thoughts? Naming? Validation?


Error when compileing

Installing mlat-client to virtual environment
34
36
38
40
46
48
50
60
Created symlink /etc/systemd/system/default.target.wants/adsbexchange-mlat.service → /lib/systemd/system/adsbexchange-mlat.service.
70
Compiling / installing the readsb based feed client
72
74
rm -f .o uat2esnt/.o compat/clock_gettime/.o compat/clock_nanosleep/.o readsb viewadsb cprtests crctests convert_benchmark
api.c: In function ‘apiReadRequest’:
api.c:1530:0: error: ignoring #pragma GCC unroll [-Werror=unknown-pragmas]
_unroll_32
api.c: At top level:
cc1: error: unrecognized command line option ‘-Wno-format-truncation’ [-Werror]
cc1: all warnings being treated as errors
make: *** [api.o] Fehler 1
make: *** Es wird auf noch nicht beendete Prozesse gewartet...
[ERROR] Error in line 300 when executing: make -j2 AIRCRAFT_HASH_BITS=12 >> $LOGFILE

Can you try again please.
Also note that your system is likely very old.

Thanks for the quick support , now it's running well. And yes it's old :)


UE 5.2 update

Please update for UE 5.2

The next version will have it and should be released soon.  If there are any delays, I will post a "UE 5.2 hotfix" within the next 2-3 days.


SP110E No longer recognized

After using the integration for a long time and without any updates or changes to it, I just added another integration to VLC.
After a few days the sp110E controllers simply stopped working.
I've already deleted them and redone them again, they are detected at least in part,, it means there are no devices or entities.
When adding a new HUB, some appear with the name SP110E and others only appear MAC, in these cases it does not even add to the list
there will have been some update

Same thing starting with HA 2023.9.0

I want to avoid backing down, I've never done it and for that reason I don't know and I have some fear. Will there be corrections?

I have the same problem with a SP107E.
I used it fine for a few months, then it stopped working at one point.
After a downgrade to 2023.8.4 it works again, but this doesn't seem like a long term solution.
My log says:
2023-09-18 15:08:11.300 DEBUG (MainThread) [custom_components.uniled.config_flow] User Input: {'address': 'A1:B3:EC:8E:3D:DF'}
2023-09-18 15:08:11.301 DEBUG (MainThread) [custom_components.uniled.lib.classes] Sufragerie: Init Channel 0
2023-09-18 15:08:11.301 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Init BLE Device (Model: Sufragerie)
2023-09-18 15:08:11.301 DEBUG (MainThread) [custom_components.uniled.lib.ble_model] 0 : 0000 in 0000a1b3ec8e3ddf
2023-09-18 15:08:11.301 DEBUG (MainThread) [custom_components.uniled.lib.ble_model] 0 : 0000 in 0000a1b3ec8e3ddf
2023-09-18 15:08:11.301 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Resolve model = SP107E?
2023-09-18 15:08:11.302 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Update
2023-09-18 15:08:11.302 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Connecting; RSSI: -66
2023-09-18 15:08:15.294 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Connected
2023-09-18 15:08:15.295 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Read Characteristic: 0000ffe1-0000-1000-8000-00805f9b34fb (Handle: 12): Vendor specific
2023-09-18 15:08:15.295 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Write Characteristic: 0000ffe1-0000-1000-8000-00805f9b34fb (Handle: 12): Vendor specific
2023-09-18 15:08:15.295 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Subscribe to notifications
2023-09-18 15:08:15.369 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Sending 1 command(s)
2023-09-18 15:08:15.369 DEBUG (MainThread) [custom_components.uniled.lib.ble_retry] Sufragerie: Starting retry loop
2023-09-18 15:08:15.369 DEBUG (MainThread) [custom_components.uniled.lib.ble_retry] Sufragerie: Attempt 1
2023-09-18 15:08:15.369 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Sending command: 00000002
2023-09-18 15:08:15.372 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Awaiting status notification
2023-09-18 15:08:17.373 WARNING (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Timeout waiting for status notification
2023-09-18 15:08:17.385 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Resolve model = SP110E?
2023-09-18 15:08:17.385 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Update
2023-09-18 15:08:17.386 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Sending 1 command(s)
2023-09-18 15:08:17.386 DEBUG (MainThread) [custom_components.uniled.lib.ble_retry] Sufragerie: Starting retry loop
2023-09-18 15:08:17.386 DEBUG (MainThread) [custom_components.uniled.lib.ble_retry] Sufragerie: Attempt 1
2023-09-18 15:08:17.386 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Sending command: 00000010
2023-09-18 15:08:17.390 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Awaiting status notification
2023-09-18 15:08:19.390 WARNING (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Timeout waiting for status notification
2023-09-18 15:08:19.394 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Stop
2023-09-18 15:08:19.394 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Disconnecting from device
2023-09-18 15:08:19.396 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Stopped notifications from device
2023-09-18 15:08:21.985 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Device disconnected (expected: True); RSSI: -66
2023-09-18 15:08:21.986 DEBUG (MainThread) [custom_components.uniled.lib.ble_device] Sufragerie: Disconnected from device

I confirm it stopped working after the latest HA update.

Will there be any updates planned?

I have been unwell, but will try and investigate

I have also had trouble after a recent update of home assistant.  I am using home assistant in a docker container on unRAID.  I use this integration to control two sp110e controlled strings.   let me know if there is any logs or testing I can do that would help.  thank you for your hard work and I hope you fell well soon.

I have been preventing the HA update due to this situation, can anyone tell me if it has been fixed?

Hi all ,
i just download this integration to use it with SP110E  and its not working , please let me know if that issue fixed so i will be able to know where to look at ( my setup or the integration)

Seems not working on HAOS. Trying 9.5 to 11.0 but SP611E working without any issue.

Hi,
Not fixed yet. Seems like status query is not sent properly in latest HAOS.
Regards.

It's a shame, it was so well done.
Because of this I haven't updated :) I prefer to be able to use the LEDs

Which version and HA did you use? HAOS? Docker? Core? ...

Is this a uniled issue, or is this an upstream bug? And has the upstream project been notified?
I'm having the same issue!

hello monty 68, first of all, the best for you!
Regarding what affects I only use the 110 I can't give feedback on the rest

Hope you are safe now and nothing worse.
Seems happen on 110e and 107e regarding to the comments.
I have change the timeout to 10 secs instead of 2 but same issue. I have also try to send turn on command instead of get info but didn't work.
Thanks for your help.

Fixed in v1.04

Thanks a lot! What was fix?

I'm getting

No devices found on the network.
when trying to add my SP110E bluetooth controller on an RPi 5 HA Core installation.

Does this issue need re-opening?


[Candidate 1v1 Egyptian Oasis ZH v1] Structures in map corners look bad

Issue Description
Structures in map corners look bad.
The dam does not look good, because the terrain beneath it looks strange and the black faded mountains do not match.
The pyramids and sphinx do not look good, because they extent too far into the black map border.
Expected behavior
Map corners are beautifully crafted.
Screenshots

Mounted the pyramids inside now with lower height.
Just have a look.

Fixed with https://github.com/xezon/GeneralsRankedMaps/commit/c57ce6e07c423a8bc335d5977d36cb96bead11a4
The pyramid corner looks really nice. The water corner looks ok, but nothing special. Maybe you could bury the Sphinx into rocks like you did with the pyramids? Either way, the issue is fixed.

Made a smal polish as I wanted to know in first instance what you think about it overall.
I tried to include the Sphinx, but that has not looked good to me at all.

I am not a fan of these triangular lakes but ok. It is acceptable. Issue is resolved.


convert boolean to string and add check permission

👏 解決掉的 issue / Resolved Issues

close #239

📝 相關的 issue / Related Issues
⛏ 變更內容 / Details of Changes

將marshalBoardSettings的布林轉型為字串回傳
新增checkPermissionReadBoardInformation方法

Codecov Report

Merging #243 (6f6ab7b) into development (f7c8dbc) will decrease coverage by 0.26%.
The diff coverage is 74.19%.

@@               Coverage Diff               @@
##           development     #243      +/-   ##
===============================================
- Coverage        47.88%   47.62%   -0.27%
===============================================
  Files               28       28
  Lines             1443     1451       +8
===============================================
  Hits               691      691
- Misses             655      663       +8
  Partials            97       97

Impacted Files
Coverage Δ

internal/usecase/token.go
0.00% <0.00%> (ø)

internal/delivery/http/route_boards.go
56.00% <100.00%> (ø)

Continue to review full report at Codecov.

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

@whitefloor 看起來應該是沒問題，不過你可以幫我附一張執行後的截圖嗎？

搞定了

LGTM

LGTM


changedetection-io: 0.45.24 -> 0.46.03

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for changedetection-io is: Self-hosted free open source website change detection tracking, monitoring and notification service
meta.homepage for changedetection-io is: https://github.com/dgtlmoon/changedetection.io
meta.changelog for changedetection-io is: https://github.com/dgtlmoon/changedetection.io/releases/tag/0.46.02
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.46.02 with grep in /nix/store/dp5ydkxx94dfxm303f4p07x84ssyc57k-changedetection-io-0.46.02
found 0.46.02 in filename of file in /nix/store/dp5ydkxx94dfxm303f4p07x84ssyc57k-changedetection-io-0.46.02

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

changedetection-io

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/dp5ydkxx94dfxm303f4p07x84ssyc57k-changedetection-io-0.46.02 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A changedetection-io https://github.com/r-ryantm/nixpkgs/archive/412fd8e81dc934e462a1d63674df58236e9570f5.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/412fd8e81dc934e462a1d63674df58236e9570f5#changedetection-io

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/dp5ydkxx94dfxm303f4p07x84ssyc57k-changedetection-io-0.46.02
ls -la /nix/store/dp5ydkxx94dfxm303f4p07x84ssyc57k-changedetection-io-0.46.02/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

2 packages built:

changedetection-io
changedetection-io.dist

Maintainer pings
cc @MikaelFangel for testing.

Add a :+1: reaction to pull requests you find important.

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for changedetection-io is: Self-hosted free open source website change detection tracking, monitoring and notification service
meta.homepage for changedetection-io is: https://github.com/dgtlmoon/changedetection.io
meta.changelog for changedetection-io is: https://github.com/dgtlmoon/changedetection.io/releases/tag/0.46.03
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.46.03 with grep in /nix/store/lv572yx2dcmpy1c0dwlck03qkxfmq1ca-changedetection-io-0.46.03
found 0.46.03 in filename of file in /nix/store/lv572yx2dcmpy1c0dwlck03qkxfmq1ca-changedetection-io-0.46.03

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

changedetection-io

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/lv572yx2dcmpy1c0dwlck03qkxfmq1ca-changedetection-io-0.46.03 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A changedetection-io https://github.com/r-ryantm/nixpkgs/archive/edd95baca9eee601baa44164c9e8bd9e40e5f52f.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/edd95baca9eee601baa44164c9e8bd9e40e5f52f#changedetection-io

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/lv572yx2dcmpy1c0dwlck03qkxfmq1ca-changedetection-io-0.46.03
ls -la /nix/store/lv572yx2dcmpy1c0dwlck03qkxfmq1ca-changedetection-io-0.46.03/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

2 packages built:

changedetection-io
changedetection-io.dist

Maintainer pings
cc @MikaelFangel for testing.

[!TIP]
As a maintainer, if your package is located under pkgs/by-name/*, you can comment @NixOS/nixpkgs-merge-bot merge to automatically merge this update using the nixpkgs-merge-bot.

Add a :+1: reaction to pull requests you find important.

@MikaelFangel this works perfectly if you add python3.pkgs.babel to the propogatedBuildInputs.


README: Add size badge

Add a size badge showing size of gzipped katex.min.js (fix #1016)
It looks like the release script already handles changing the version so I shall not touch that.

Do we want to show the minified-but-not-gzipped size as well?  (I'm not really sure -- do most http servers send files gzipped now? If so, probably not important.)

The release script only handles package.json and CDN links.

But I see something like this being committed in the release script. Or was it done manually?

Unfortunately, it seems it doesn't support gzipped size. Also, should we show sizes of katex.css and fonts?

I looked at the shields.io page and saw at least one badge for a minified zipped file.  I don't understand their API at all though.  If we give it the URL for the gzipped file does it just magically do the right thing?

I think there's one that checks the npm package.

Should I change it back to badgesize.io?

@daniellimws Yes, please.


32-bit writes to memory-mapped CLIC registers

Can you please confirm whether it is legal to perform a 32-bit write to a memory-mapped block controlling a single interrupt and, if so, whether there is a defined order in which changes take effect?
As a concrete example, suppose that interrupt 0 is currently configured as a level-sensitive interrupt, and the location at offset 0x1000 is written with the 32-bit value 0xffc40101. This simultaneously attempts to reconfigure the interrupt as edge-sensitive and set it pending. This will only work as expected if the change in configuration from level to edge happens before the attempt to set pending (otherwise, for level sensitive interrupts, changes to pending state by software writes are ignored). If this is legal, is the pending bit set or not?
Thanks.

I have a related question about the clicintip[i] register. The specification says:
For edge-triggered interrupts, software writes will set/clear pending bits. In contrast, for level-triggered interrupts, software writes to pending bits are ignored completely
What happens in this case:

Software configures an interrupt to be edge-triggered by writing clicintattr[i].
Software sets the interrupt pending using clicintip[i].
Software reconfigures the interrupt as level-triggered by writing clicintattr[i].

After step 3, is the interrupt still pending, or not? What value is seen if clicintip[i] is read?
Thanks.

A 32-bit write is legal.  However, there is no specified order in which the effects of the individual byte updates take effect.

Moving the related question, which is a separate concern to a new issue.

Clarified in https://github.com/riscv/riscv-fast-interrupt/commit/f838d19302060576c0e35229d749369bb71771a9


Add support for @pattern, @format, @nullable

Description
The OpenAPI spec I'm working with has pattern, nullable, and format attributes all over the place, and these are not turned into JSDOC tags.
Other tools, like @openapi-codegen/cli, support these tags.
JSDOC tags are used by other tools like ts-to-zod and @savotije/openapi-to-joi, each of which generate schema validation code from TYpeScript source.  Both of those recognize @pattern, @nullable and @format tags.
Proposal
I don't really understand the code, but I found some simple changes in addJSDocComment would suffice.
First, I added a pattern field in AnnotatedSchemaObject:

export interface AnnotatedSchemaObject {
  const?: unknown; // jsdoc without value
  default?: unknown; // jsdoc with value
  deprecated?: boolean; // jsdoc without value
  description?: string; // jsdoc with value
  enum?: unknown[]; // jsdoc without value
  example?: string; // jsdoc with value
  format?: string; // not jsdoc
  pattern?: string; // not jsdoc
  nullable?: boolean; // Node information
  summary?: string; // not jsdoc
  title?: string; // not jsdoc
  type?: string | string[]; // Type of node
}

Then, I commented out the test for schemaObject.format.
Then, I changed supportedJsDocTags to this:
  const supportedJsDocTags = [
    "description", "default", "example", 'pattern', 'format'
  ] as const;

Finally, I added the following:
  if ('nullable' in schemaObject) {
    output.push(`@nullable ${schemaObject.nullable ? 'true' : 'false'}`);
  }

These changes supported the tags I mentioned, and generated JSDoc tags that look correct to me.
Checklist

[ ] I’m willing to open a PR for this (see CONTRIBUTING.md)

This is a diff for the changes I made
diff.txt

@drwpow thoughts on this?


[Feature] Always display OSD

I would like to be able to see the OSD at all times to check if my mic is muted or not. I understand I could use the system tray icon but I can't see that when im in a fullscreen game. I like to keep the OSD on my 2nd monitor

This is already an option, just enable it in the config.
Onscreen Overlay

@harsh0596 did you turn on the option in the configuration?
It's the last option under Feedback

i dont have this option

ok so the option appeared after i created another profile apart from default
i am having an issue where the overlay randomly disappears while im not even in game


Remove highlight from selected item using gamepad then tab

Currently, if you use gamepad then go back to using tab, the last selected button or link while using gamepad stays highlighted while the selected button or link using tab also is highlighted.

Resolved.


Loading failure when retriving realm name

Describe the bug
Todoloo will sometimes fail to retrieve the realm name of the current character. The issue isn't constant but sporadic.

Issue not yet resolved.
The error happens during loading of the attached tracker (objective tracker)


Bump version number in config.json

Sorry - another PR. Supervisor doesn't yet detect that there's a new version. Bumping the version number should do that afaik!

My bad, should have think about this

No problem, thanks - my bad too, so should have I 😊


Apply New TX Info: Slight Design Improvements

@TalgatNurdinov upload the updated design here

Duplicate of #461


[FEATURE] extract metadata with dependencies: templating / CSCLSROZ-152

based on CSCLSROZ-60 / #68: prepare
acceptance criteria:

buildTemplate uses subroutine from prepare to fetch correct dependent data
dependent metadata is downloaded
supported types:

automation (folder, activities)
automation activities (folder, data extension, ...)

related to #68

Duplicate of #68


No console output after added DDFileLogger Swift 5.1 xcode 11.2

New Issue Checklist

[x] I have read and understood the CONTRIBUTING guide
[x] I have read the Documentation or CocoaDocs
[x] I have searched for a similar issue in the project and found none

Issue Info

Info
Value

Platform Name
ios

Platform Version
13.2.2

CocoaLumberjack Version
3.6.0

Integration Method
carthage

Xcode Version
Xcode 11.2

Repro rate
all the time (100%)

Demo project link
n.a.

Issue Description and Steps
After upgrade my code to new xcode version and recompiled all used carthage frameworks i dont see any logs in the cosole. When i comment the filelogger part then it works. Someone has an idea?
    // File logger
    if AppConstants.USE_FEATURE_SEND_LOGS {
      let logManager = CustomDDFileManager()
      fileLogger = CustomDDFileLogger(logFileManager: logManager)
      if let fileLogger = fileLogger {
        fileLogger.rollingFrequency = -1
        fileLogger.logFileManager.maximumNumberOfLogFiles = 2
        DDLog.add(fileLogger)
      }
    }

    DDLog.add(DDTTYLogger.sharedInstance)
    DDLog.add(XCDLumberjackNSLogger())

@gkurpiel I've got two more questions / remarks for you:

Have you tried to use the default DDFileLogger (and DDDefaultLogFileManager)? Just to be sure that your custom logger does not break anything.
You should probably switch to DDOSLogger instead of DDTTYLogger since the latter is deprecated.

Thanks alot for the hint... it seems my CustomDDFileLogger is the issue. Maybe you have an idea what could cause it or what i missed:
import Foundation
import CocoaLumberjackSwift

public final class CustomDDFileLogger: DDFileLogger {

  public override func willLogMessage(_ logFileInfo: DDLogFileInfo) {
    super.willLogMessage(logFileInfo)

    // Create a new logfile if the we are about to log and the next month starts.
    let lastLogCreationDate = currentLogFileInfo.creationDate
    let calendar = Calendar(identifier: .iso8601)
    if !calendar.isDate(lastLogCreationDate, equalTo: Date(), toGranularity: Calendar.Component.month) {
      rollLogFile(withCompletion: nil)
    }
  }
}

I have found that this line is causing the issue: let lastLogCreationDate = currentLogFileInfo.creationDate . But i do not understand why.

When i try to debug it the debugger is crashing and i get this in console:
(lldb) po currentLogFileInfo
Warning: hit breakpoint while running function, skipping commands and conditions to prevent recursion.

@gkurpiel I'm pretty sure you're running into a deadlock here. The willLogMessage: and didLogMessage: calls happen on an internal queue. Accessing currentLogFileInfo also locks that queue.
But this is why there is a parameter to willLogMessage: and didLogMessage:. Instead of accessing currentLogFileInfo you should just use the logFileInfo that is passed to those methods. This parameter actually is the current log file info.

Good idea but when i try to use the param directly then i get this error:
let lastLogCreationDate = logFileInfo.creationDate
-> Thread 3: EXC_BREAKPOINT (code=1, subcode=0x1f953da70)

@gkurpiel could be, because it's nil but not correctly annotated on our side. 🤔
Try the following: let lastLogCreationDate = logFileInfo.fileAttributes[FileAttributeKey.creationDate.rawValue] as? Date
I'm preparing a PR which cleans up a few things here (e.g. the need for FileAttributeKey.creationDate.rawValue instead of just .creationDate).

@ffried this solution is working for me.... thank you very much!!!!

@gkurpiel And you get a non-nil creation date?

@ffried yes... shoud i not? ;-)

@gkurpiel Yes, sure. I'm just a little surprised now that you ran into the exception earlier, since we're actually doing the same when you access the creationDate property of the log file info. 🤔

@gkurpiel Took a little longer than expected, but #1111 also fixes the Swift annotations for DDLogFileInfo. After it's merged, you should first of all be able to access logFileInfo.creationDate directly, but also not need .rawValue anymore, when "manually" getting the creationDate: let lastLogCreationDate = logFileInfo.fileAttributes[.creationDate] as? Date.

Since #1111 is merged now, I'm closing this.


Option to whitelist users with specific group instead of all registered users

This still isn't added? Would really like this feature

https://github.com/NamelessMC/Nameless/issues/2462

NamelessMC/Nameless#2462

Yeah its added right? I mean the issue has been closed and has been added to the Java API.

It will be added in pr13

It will be added in pr13

Oh ok.


feat: for in/of loop return, break, continue, assign

Closes #319

[ ] return
[ ] continue
[ ] break
[ ] assign to upper scopes
[x] Tests

Redesigning how or loops work
Current: Map state iterators over each item in an array. The map context is used to assign item or item index.

ForInExpr: Needs index (i) and item (arr[i]) - for(const i in arr)

ForOfExpr: Needs item (item) - for(const item in arr)

continue: continue to the next state, skipping all future lines in the block

break: short circuit - continue to the line after the current for loop scope, skipping all future lines in the block

return: short circuit - return from the current functional scope, breaking out of all nested scopes that are not function scopes. Return any data up/out.

Problems with map (Current):

Cannot both short circuit (break/return) and return data (return)
Cannot manipulate state outside of the map

Could be solved by some special return envelope

State mutation cannot be shared between map states

Alternatives:
tail recursion on array, slicing off of the array using json path
Problems:

How do we get the index (i) for ForInExpr?

Solution:

Use Map to compute an array of indices before ForInExpr, iterator over the new array.

ForOf

Assign array to temp variable $temp_arr = $arr
Check for empty array IsPresent($.temp_arr[0])
3. When true, continue
4. When false, go to 6
Assign the item variable $item = $temp_arr[0]
Do ForOf body...

Continue - jump to 5
Break - jump to 6
Return - create return state for the current function scope

Slice temp_arr $temp_arr = $temp_arr[1:], go to 2
continue to post for loop - Next: DeferNext

Clean up scope variables?

ForIn

Use Map state to create an array that pairs index to item and assign to $temp_arr (.map((item, index) => ({ item, index}));)
Check for empty array IsPresent($.temp_arr[0])
3. When true, continue
4. When false, go to 6
Assign the item variable $0_i = $temp_arr[0].item and $i =$temp_arr[0].index
Do ForOf body...

Continue - jump to 5
Break - jump to 6
Return - create return state for the current function scope

Slice temp_arr $temp_arr = $temp_arr[1:], go to 2
continue to post for loop - Next: DeferNext

Clean up scope variables?

make sure to use feature scopes, e.g. feat(step-functions):


Add client.operation.WaitContext

See How to wait client.Operation with timeout in Go? - LXD - Linux Containers Forum

This pull request didn't trigger Jenkins as its author isn't in the allow list.
An organization member must perform one of the following:

To have this branch tested by Jenkins, use the "ok to test" command.
To have a one time test done, use the "test this please" command.

Those commands are simple Github comments of the format: "jenkins: COMMAND"

Testsuite passed


Disable permared go xlang tests.

Disable permared test suite as per: https://github.com/apache/beam/issues/30517

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI or the workflows README to see a list of phrases to trigger workflows.

R: @Abacn @lostluck


Speed-up the disposing of large number of meshes

This PR contains several things, some optional, to reduce the time of disposing a large number of mesh hierarchies. It makes a few assumptions that need to be confirmed by someone who has the knowledge :)

Added disposingLineMeshColorShader to not go through irrelevant code when the material that is beeing disposed is a ColorShaderMaterial of a LinesMesh, as it is never shared nor bound to any mesh.

Stop calling splice on the scene.meshes array. it assumes that the order in this array does not matter.

Stop calling splice on the engine._uniformBuffers array. it assumes that the order in this array does not matter.

Added a _indexInSceneMaterialArray  member to the Material class so that each material stores its index with the scene.materials array. The to allow fast O(1) lookup and removal time. It assumes that the order of the material within the array does not matter and that this array is not modified from outside of the engine.

Added a _indexInSourceMeshInstanceArray member to the InstancedMesh class so that each instance stores its index with the mesh.instances array. The to allow fast O(1) lookup and removal time. It assumes that the order of the instances within the array does not matter and that this array is not modified from outside of the engine.

Added an option useMaterialMeshMapin the scene constructor options. Disabled by default. When set to true, Material will have and keep up-to-date a map of bound meshes. This is to avoid browsing all the meshes of the scene to retrieve the ones bound to the current material.

Added an option useClonedMeshhMap in the scene constructor options Disabled by default. When set to true, each Mesh will have and keep up-to-date a map of cloned meshes. This is to avoid browsing all the meshes of the scene to retrieve the ones that have the current mesh as source mesh.

Added blockfreeActiveMeshesAndRenderingGroups getter and setter in scene, as we are currently doing with blockMaterialDirtyMechanism.

@deltakosh updated

@deltakosh doc update here :https://github.com/BabylonJS/Documentation/pull/1283


addImportExclusion

Hi there,
I like to add my deleted movies to the exclusion list, but this does not work using this API.
In the docs they talk about addImportExclusion but you seem to use addExclusion
Can you please verify?  Thanks

Your're right, the parameter has been renamed in api v3. Sending a new release.

Great Vivien! Looking forward!

released v1.0.15, re open this ticket if it doesn't solve this.

Hi Vivien....
It is not working for the Sonarr API.... I checked the webz and there need to be a addImportExclusion: bool too for SONARR!
Can you please verify???


Migrate the cQube 3.7 code into cQube 4.0 as a part of Integration

Move the below code base from 3.7 to 4.0 as a part of integration
-NIFI Templates
-Python Code

Completed


Improve cutout such for all Component associated to a model keep the same number of pin as defined in the model

Description of the feature
All component associated to a model(spice):

Identified component pin associated to the model
preserve these pins from the cutout

Steps for implementing the feature
No response
Useful links and references
No response

@amichel0205 can we close this issue ? was it addressed with the new smart cutout ?

@svandenb-dev @gmalinve
Giulia ask me the same question this morning. I did not have time yet to check it with a real example.
I supposed from discussion with Massimo that the new cutout method should address it.
So would it be possible to give me 1 or 2 weeks more such I can test it and close it if working fine?

closing this issue. New methods has been deployed since several weeks and seems to be working. Please submit an new issue if any error happen.


Add github workflows

Add workflows for:

Create PR's when dependencies are out of date
Create a new Github release when pushing a tag starting with v
Analyse code with sonar and snyk when pushing to the main branch or open een PR
Build a native image when a push occurs on the main branch

Typo in branchname. Removed this branch / PR and created a new one.


Support EventKit

Feature request:  Please support EKEvent from EventKit.

A good idea.
For now, you may create your own EventDescriptor and map its properties from EKEvent, achieving the same result.

Implemented in the CalendarApp. EventKit won't be supported in the CalendarKit directly, as CK's role is just to be a UI layer, it's up to the application to determine what data source to use (and how to format it).
Since it's possible to have multiple options of how to work with the EventKit, I provide just a reference implementation here:
https://github.com/richardtop/CalendarApp/blob/master/Calendar/EKWrapper.swift


recursive include all files of "project_slug" module on sdist and wheel package

if I include python submodules, and other folders inside package, the current configuration not include them in sdist and wheel package.
this pull-request resolves this (at least resolved to me).
I saw django doing the same:
https://github.com/django/django/blob/master/MANIFEST.in#L9

@luzfcb, @eliasdorneles, are there any reasons why this shouldn't be added to Cookiecutter PyPackage?

Hi! It's probably okay, I only didn't merge it because I didn't test it.


Update build.gradle

add name spacing to build.gradle for fix error in new version flutter and android studio
fix issue #1

Thanks