Create cmd.StdinPipe and copy info to it from p.Stdin

I'm not sure why it is work and just assignment not. But it's how it was
done in docker. Maybe because of io.Pipe instead of os.Pipe.

LGTM

@LK4D4 Would you describe a problem which is solved here?

@avagin I don't know exact problem, but docker just not working without this :(

@LK4D4 Can we strace docker and investigate this problem? I can help with it on Monday.

@avagin I'll try. Because I don't know how to implement that hack with current libcontainer API :)


Does the DMD Defi project released by TokenPocket team?

[DApp Link] https://dmd.finance/
[JS Resource Link] https://dmd.finance/js/chunk-vendors.5ff2ca4e.js

Not sure what this question has to do with EOSIO software.  Seems off-topic to me.

This doesn't seem related to the EOSIO software, please feel free to reopen and clarify if that's not the case.


STRA - Confirm STRA for FOI App Sufficient

Title of ticket:
Description
Discussed at IMB Backlog Refinement - thought came up whether or not a STRA update needs to ALSO occur with AXIS because of ETL.
Dependencies
Are there any dependencies?
DOD

[ ] Confirm with MISO that our STRA will cover and can be appendicized to the AXIS STRA

@lmullane - tagging you on this to chat when you are back

This has been confirmed.


Reusing client connection to send messages

"node-amqp-1-0 version 0.0.6"
I initialize and store client connection at my program startup because I need to call client.send() quite often but after some minutes of  inactivity  I receive this error while performing send again:
"Cannot call method 'write' of null" (lib/connection.js - line 330)
Should I perform a connection for every send or I must set some hearthbeat?
Thanks

The heartbeat should be being sent by my code, so you shouldn't need to do anything.  I'll investigate.  Are you connecting to EventHub (e.g. vs. ActiveMQ or another AMQP server)?
Also, I've done a few bug fixes since 0.0.6 - I'm on 0.0.8 now.  Might want to try a fresh npm install and see if the problem still occurs.

This is the core of a workaround I made to solve the problem but it doesn't seem to work:
// The service is created and first connected, later some send are performed
// thisAdapter.service = new AMQPClient(AMQPClient.policies.ServiceBusQueuePolicy);

//CHECK BEFORE EVERY SEND
if ( thisAdapter.service._connection.connected == false ) {
	logger.info(prefix + "AMQP client was disconnected. Trying to reconnect");

	thisAdapter.service.connect(serviceEndpoint, function(conn_err) {
	    if (conn_err) {
		logger.error(prefix + 'Connection error for endpoint: ' + amqpsEndpoint, conn_err);
	    } else {
		logger.info(prefix + "Connection OK");

	    }

	    done(conn_err);
	});
}

I receive an error on reconnecting the same instance:
"The connection was inactive for more than the allowed period of time. TrackingId:dd2d628a20cc4e86a60f47c7fec98a60_G32,TimeStamp:2/6/2015 4:14:19 PM"
This means I must create another instance in order to make it work again?

node-amqp-1-0 updated to 0.0.8 but problem still persist

Sorry, I forgot to tell you I'm connecting to a service bus queue

Ok, thanks!  I'm testing it out on EventHub right now, I'll check queues next if this works (but hopefully I'll run into the same issue you are).

Great! I provide you other informations that can help you find the problem. The client instance I mentioned above is only used for sending messages.
Instead, each listener I instantiate has a separate client instance on which receive() method is called. In this case I confirm that your hearthbeat works as expected and the error of connection timeout is disappeared.

The code I'm trying against EventHub is send-only, looks like:
    var msgVal = 0;
    var secs = 0;
    var secsUntilSend = 10;
    var client = new AMQPClient(AMQPClient.policies.EventHubPolicy);
    client.connect(uri, function() {
        client.send({ "DataString": "From Node", "DataValue": msgVal }, sendAddr, { 'x-opt-partition-key' : 'pk'+msgVal }, function() {});
        msgVal++;
        setInterval(function () {
            ++secs;
            if (secsUntilSend === secs) {
                console.log('Sending at interval ' + secsUntilSend);
                secsUntilSend *= 2;
                secs = 0;
                client.send({ "DataString": "From Node", "DataValue": msgVal }, sendAddr, { 'x-opt-partition-key' : 'pk'+msgVal }, function() {});
                msgVal++;
            }
        }, 1000);
    });

So it's basically starting at a 10-sec delay and doubling until I see the problem.  So far it seems to be coping (160 secs).  Do you have any information on how long a delay you have between sends before the problem manifests?

I cannot tell the exact delay. I noticed that it took about 10 minutes
since a I stopped sending messages.
Il giorno 17:54 Ven 06/Feb/2015 Michael Lanzetta<EMAIL_ADDRESS>ha scritto:

The code I'm trying against EventHub is send-only, looks like:
var msgVal = 0;
var secs = 0;
var secsUntilSend = 10;
var client = new AMQPClient(AMQPClient.policies.EventHubPolicy);
client.connect(uri, function() {
    client.send({ "DataString": "From Node", "DataValue": msgVal }, sendAddr, { 'x-opt-partition-key' : 'pk'+msgVal }, function() {});
    msgVal++;
    setInterval(function () {
        ++secs;
        if (secsUntilSend === secs) {
            console.log('Sending at interval ' + secsUntilSend);
            secsUntilSend *= 2;
            secs = 0;
            client.send({ "DataString": "From Node", "DataValue": msgVal }, sendAddr, { 'x-opt-partition-key' : 'pk'+msgVal }, function() {});
            msgVal++;
        }
    }, 1000);
});

So it's basically starting at a 10-sec delay and doubling until I see the
problem. So far it seems to be coping (160 secs). Do you have any
information on how long a delay you have between sends before the problem
manifests?
—
Reply to this email directly or view it on GitHub
https://github.com/noodlefrenzy/node-amqp-1-0/issues/42#issuecomment-73270059
.

Ok, works on EventHub up to 1280 seconds (at which point I stopped the test).  Testing on SB queues now.

Interesting!  At about 9-10 minutes, like you were saying, the queue connection spit out the following error:
  amqp10-Session Processing frame DetachFrame: {"frameType":0,"channel":0,"handle":0,"closed":true,"error":{"descriptor"
:{"buffer":[0,0,0,0,0,0,0,29],"offset":0},"condition":{"contents":"amqp:link:detach-forced"},"description":"The link '47
<EMAIL_ADDRESS>' is force detached by the broker due to errors occurred in publisher(link7620). Detach origin: AmqpMessagePublisher.Fau
lt. TrackingId:f332312c0000000300001dc454d4fb56_G18_B23,TimeStamp:2/6/2015 5:55:56 PM","errorInfo":null}} +1ms

I'll take a look at why this isn't getting propagated back to the client, and why I don't re-start the link when it shuts down like that.  But I'll also see if I can find a smaller test-case and send it on to the ServiceBus team.
Thanks for helping me hunt this down, and for your patience.  I'll let you know as soon as I have any additional details.
(Also, if you want to watch this error for yourself on your side, just set the environment variable DEBUG=amqp10* - but prepare for a lot of output)

I've just published a new version on npm (0.0.9) that should mitigate this issue.  When it gets the DETACH frame above, it logs the error to the console, tears down the link, and then on the next send it'll re-attach.  I've verified that this works against ServiceBus queues, watching it rebuild the link after an error.  Please let me know if you still have problems, and in the meantime I'll follow up with the ServiceBus team and see if they can help me diagnose this issue further on their end.
Thanks!
Mike

Hi Mike,
as you suggested, I set the DEBUG variable and it seems that the Detach problem still persist:

Anyway, now I can temporary solve the problem by recalling connect() on my service instance, as written some poste above (is this the right way ?). In this way, the client is able to send and receive message again, even if I see these logs about Disposition Frames:
amqp10-Session Processing frame DispositionFrame: {"frameType":0,"channel":0,"role":true,"first":95,"last":null,"settled":true,"state":{"descriptor":{"buffer":[0,0,0,0,0,0,0,36],"offset":0}},"batchable":null} +0ms
amqp10-Session Not yet processing frames of type DispositionFrame +0ms
Thanks,
Luigi

Have you npm installed my latest code?  In that code I've mitigated this behavior by re-attaching the link when it detaches (and watched it in action) - I'll test that mitigation again today and get back to you with any details.
As for the behavior itself, according to the ServiceBus team this is expected behavior - they drop the link, but not the connection, after a certain period of inactivity.  Note that this is not true for EventHub, only for queues (and likely topics - I haven't tested them, but they're on the same backbone).
Reopening until we get this resolved.

Yes, I updated to the latest version 0.0.10

Hmm, this might be expected behavior - did you try and send another message after it had detached?  I basically don't re-attach the link until it's demanded.

I've verified it on my side - it'll detach the link, leave it detached, then reattach on the next send call.
Also, though, after ~20 minutes ServiceBus kills the connection entirely, so I've added logic to harvest all the links and re-connect when the next send/receive happens - please update to 0.0.11 and try again, and definitely try sending once the link gets detached to verify the re-attach behavior.
Thanks!  Leaving this open until I get confirmation from you that it's working.

Ok now works! Thanks!


Add directives reference page

This is a work in progress pull request that adds a single page documenting all the available directives in Astro.
Todo list:

[x] Document is:raw - Can someone please explain to me what it does?
[x] Add more information about the hoist script directive
[x] Document class:list
[x] Document global
[x] Link to directives reference page from more pages
[x] Read-over to check flow, spelling, grammar, etc

Closes:

#272

In general, I would need to be convinced that this is a useful reorganzing of material. (Though, there are some good content additions in here!)

Well, there is quite a bit of missing content around directives in the docs at the moment, and it's all very scattered (I had to use the vscode project wide search with a custom regex in order to find the many small scattered snippets about them), so I think that organizing all the information around directives is a very important thing to do.
I did also notice that adding a page documenting all the directives was on the v1 beta->stable roadmap, so I figured we may as well get started on it now.

Specifically, I personally would be hesitant to remove client:directives from framework-components. The idea of this page (at the moment) is where you go for finding out how to use these framework components...

I agree, but the reason I moved them was to avoid having any duplication of content.

One option I see for right now would be to propose the new material (e.g. set:html etc, in the place where it would currently exist in the existing structure of the docs right now, and we can deal with content first. Then, we can revisit the idea of where it belongs.

I agree that getting the content on the docs as soon as possible is important, but I think that having it all organised into one place in a logical order is just as important.

Hey @zadeviggers ! I added a bunch of specific comments (and, those that are suggestions are just when it's easier to type inline to express an idea. Not requiring you to accept them literally; just giving a thought!)
Once again, thanks for all your work putting this together, and don't interpret the fact that I commented on a lot of little things as me not being appreciative or not liking what you've done! I do just have some specific thoughts, much of them around organization to make things easy to spot for the reader, so calling attention to things in various places looks like a lot of comments!  :)

The content itself is great, but the "copy" like in the introduction need some work ("And UI Framework components." for example, is a fragment).
If you'd like help with the copy, I'd be happy to give it a pass and then merge this with our changes combined together?

If you'd like help with the copy, I'd be happy to give it a pass and then merge this with our changes combined together?

Yes, I would really appreciate that thank you!


Impossible to set shortcuts on Windows for Mac which use Control/Command

Godot version:
All versions
OS/device including version:
Windows 10 and macOS 10.15.6
Issue description:
On Windows I set an input action to be Control + E. This serialises to "control":true,"command":true in project.godot
When performing the action on Mac, neither Control + E or Command + E trigger the action - only Command + Control + E does. This is not what is intended.
Steps to reproduce:
As above...
Minimal reproduction project:
See attached. Run the example scene on both Windows (or Linux) and on Mac. You will observe the described behaviour.
WindowsMacShortcuts.zip

There should be an additional option in the input map UI to select keys and modifiers from a list, instead of just Press A Key.... This would circumvent this issue to some extent.
Also, the same thing would apply in the opposite direction because of the below union. If you set a shortcut on Mac to be Command + E, this would serialise to command=true, meta=true, which would require command (control) and meta to be pressed on windows/mac. I feel like maybe these unions should be removed... haven't thought it through fully though.
// input_event.h
#ifdef APPLE_STYLE_KEYS
	union {
		bool command;
		bool meta = false; //< windows/mac key
	};

	bool control = false;
#else
	union {
		bool command; //< windows/mac key
		bool control = false;
	};
	bool meta = false; //< windows/mac key
#endif

After some discussion with reduz on IRC, it was decided that the option should be given to the user whether they want to store Command or Control (on Windows) or Meta (on Mac). An image of the WIP UI is below. This is part of a larger refactor of the action map editor so it is more generic (can be used not just for ProjectSettings) and easy to follow.


vm\os_thread_win.cc:197: error: Mutex lock failed 6

http://build.chromium.org/p/client.dart/builders/vm-win32-debug-be/builds/6685/steps/tests/logs/stdio

6 = ERROR_INVALID_HANDLE
...so it seems Mutex::Lock is called on an already destroyed mutex.


setup React testing library in LLM

📝 Description
Setup React Testing Library
❓ Context

Impacted projects: LLM
Linked resource(s): https://ledgerhq.atlassian.net/browse/LIVE-6695

✅ Checklist

[x] Test coverage
[x] Atomic delivery
[x] No breaking changes

📸 Demo

🚀 Expectations to reach
Please make sure you follow these Important Steps.
Pull Requests must pass the CI and be internally validated in order to be merged.

Should this be plugged to the CI ?

Should this be plugged to the CI ?

@valpinkman yes it should


--window-x & --window-y ranges

When using multiple PC displays, coordinates of each can have a huge range of values.
(0,0) coordinates determines the (top,left) corner of the primary display, all other displays are relative to this point (with positive or negative values)
Today, scrcpy 1.12.1 only considers positive values and reject negative ones.
Negative values shall be accepted too.

On my computer, if I pass negative values to SDL, it does not work (it behaves as if I passed 0). That's why I did not authorize negative values, it's not supported by the underlying framework.
https://github.com/Genymobile/scrcpy/issues/1183#issuecomment-592182530
However, this limitation maybe only apply to some window managers. Could you try passing a negative value here:
https://github.com/Genymobile/scrcpy/blob/7bb91638ad80ba20700529cf336ea533d8f058e7/app/src/screen.c#L189-L193

Using the following code, it gives the expected result on Windows 10 :
int x = window_x != -1 ? window_x : (int) SDL_WINDOWPOS_UNDEFINED;
int y = window_y != -1 ? window_y : (int) SDL_WINDOWPOS_UNDEFINED;

x = 4370;
y = -350;
screen->window = SDL_CreateWindow(window_title, x, y,
window_size.width, window_size.height,
window_flags);
I try to go upward to the command options line now...
Le jeu. 26 mars 2020 à 10:50, Romain Vimont<EMAIL_ADDRESS>a
écrit :

On my computer, if I pass negative values to SDL, it does not work (it
behaves as if I passed 0). That's why I did not authorize negative values,
it's not supported by the underlying framework.
#1183 (comment)
https://github.com/Genymobile/scrcpy/issues/1183#issuecomment-592182530
However, this limitation maybe only apply to some window managers. Could
you try passing a negative value here:
https://github.com/Genymobile/scrcpy/blob/7bb91638ad80ba20700529cf336ea533d8f058e7/app/src/screen.c#L189-L193
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Genymobile/scrcpy/issues/1242#issuecomment-604332130,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADUNWNNJJNOA3JZOA5PQROTRJMQO3ANCNFSM4LUCUDVA
.

I suggest this fix/patch in cli.c that works perfectly for me, but the
"-1" special value should be changed probably as it becomes a valid value
too :
static bool

parse_window_position(const char *s, int16_t *position) {
long value;
bool ok = parse_integer_arg(s, &value, false, INT_MIN, INT_MAX,
"window position");
if (!ok) {
return false;
}
*position = (int16_t) value;
return true;
}

Le jeu. 26 mars 2020 à 12:13, Philippe Gressé-Lugué <
<EMAIL_ADDRESS>a écrit :

Using the following code, it gives the expected result on Windows 10 :
int x = window_x != -1 ? window_x : (int) SDL_WINDOWPOS_UNDEFINED;
int y = window_y != -1 ? window_y : (int) SDL_WINDOWPOS_UNDEFINED;

x = 4370;
y = -350;
screen->window = SDL_CreateWindow(window_title, x, y,
window_size.width,
window_size.height,
window_flags);
I try to go upward to the command options line now...
Le jeu. 26 mars 2020 à 10:50, Romain Vimont<EMAIL_ADDRESS>a
écrit :

On my computer, if I pass negative values to SDL, it does not work (it
behaves as if I passed 0). That's why I did not authorize negative values,
it's not supported by the underlying framework.
#1183 (comment)
https://github.com/Genymobile/scrcpy/issues/1183#issuecomment-592182530
However, this limitation maybe only apply to some window managers. Could
you try passing a negative value here:
https://github.com/Genymobile/scrcpy/blob/7bb91638ad80ba20700529cf336ea533d8f058e7/app/src/screen.c#L189-L193
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Genymobile/scrcpy/issues/1242#issuecomment-604332130,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADUNWNNJJNOA3JZOA5PQROTRJMQO3ANCNFSM4LUCUDVA
.

Using the following code, it gives the expected result on Windows 10

Oh, that was a limitation of my window manager then. Cool :+1:
In that case, I agree that window-x and window-y should accept negative values.

but the "-1" special value should be changed probably as it becomes a valid value too

Yes, when I initially implemented it with negative values, I used -32768 as the special value instead :)

Ok, -32768 is an acceptable value (even if INT_MIN has probably 32 bits and
is then much lower)
Can you please fix the code and regenerate a new release ?
I did not succeed in generating a release acceptable for Windows deployment
with :

rm -rf x && meson x --buildtype release --strip -Db_lto=true
-Dprebuilt_server=scrcpy-server -Dportable=true -Dwindows_noconsole=true &&
ninja -Cx

It works under MinGW64 (this is how I did my tests) but it is not when
overwriting scrcpy-noconsole.exe of the 1.12.1 release and launching with
Windows Explorer...
(Yes, it is the first time I heard about meson and ninja)
Thanks in advance !
Le jeu. 26 mars 2020 à 12:29, Romain Vimont<EMAIL_ADDRESS>a
écrit :

but the "-1" special value should be changed probably as it becomes a
valid value too
Yes, when I initially implemented it with negative values, I used -32768
as the special value instead :)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Genymobile/scrcpy/issues/1242#issuecomment-604377617,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADUNWNPGV4CI46E3RLGM52LRJM4BDANCNFSM4LUCUDVA
.

Could you test the branch negativepos, please?
https://github.com/Genymobile/scrcpy/commit/cd4e74da4b4a5cc9926e76c3841238250b39de9c
If it works for you, I'll merge into dev (and it will be in the next release).

Fixed by dc7c677728cdeb7471745a2aff9f63ebe8d14f53.

Released in v1.13.


typo

@user135711 : Thanks for your contribution! The author, @douglaslMS, has been notified to review your proposed change.

#sign-off
@user135711 Thanks for catching this typo!


How do I install it

Please give us the instruction on how to install it

Preferences -> Package Control -> Install package -> varnish
restart sublime


Add option to render the html

Hello! It would be cool if we could see the rendered HTML directly.
thanks

Nvm it seems available, but it's really broken

I see its because the body is ignored, it would better to put it inside an iframe

Just append the ?html querystring in the URL.

Rendering it into an iframe could be a nice feature and make it more secure and stable. Contributions are welcome! ❇

Yeah because it messes up the CSS right now. I might do it if I have time.


service-worker-mock: adds stubs for Request & Response, and a real URL

Fleshes out service-worker-mock with constructors needed by robust Service Workers, such as
    var url = new URL(request.url);
    if (request.mode === 'cors' ||
            ['GET', 'HEAD', 'OPTIONS'].indexOf(request.method) < 0 ||
            (url.protocol !== "http:" && url.protocol !== "https:")) {
        console.log("s.w. not handling:", request.mode, request.method, url.href);
    } else {
        evt.respondWith(cacheOrNetwork(request));
    }

@DougReeder
First off, thank you! This is a great contribution. 😁
Looks like the tests are failing because I was using little fixture version of Request/Response for the tests. You should totally replace the test usage with your better version. Happy to answer any questions if you get caught up. You can find the fixture file at testing/fixtures.js.

Looks awesome! Thanks for being patient with the holiday weekend 👍

Thanks much!
Does npm need to be updated manually, or does npm just take a long time to notice changes on github?

@DougReeder I'll bump the version this morning. 👍

Hey, will you have a chance to update NPM this week?
On Jul 6, 2017 12:22 PM, "Zack Argyle"<EMAIL_ADDRESS>wrote:

@DougReeder https://github.com/dougreeder I'll bump the version this
morning. 👍
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/pinterest/service-workers/pull/29#issuecomment-313446472,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAXGPr7E1PpCxGT3ZDUm7uNrxahnql8lks5sLQmygaJpZM4OHcxL
.

@DougReeder Sorry for the delay! Had some issues with publishing. Ended up publishing 1.2.0 just now.


Remove phone number validation or make it optional

Before sending a request to the MoMo API the phone number validated is and 256 is appended.
However, this makes testing in sandbox with the numbers provided for testing difficult. Phone number validation should be made optional.

Hi @raybesiga the numbers provided by mtn for sandbox testing, start with 4XXX i.e<PHONE_NUMBER>0,<PHONE_NUMBER>1, etc. so you send a request to the format becomes 2564XXX, this does not give the required response as per test cases. In my case, I have to comment out that part of the code in the package to be able to make test requests.
The second case is that when I store my numbers in the database as 25678XXXXX, 256 will be appended to the number when I send the request i.e 256256788XXX, this is not required. The solution is to either save the numbers as 78XXX and or strip save them as 25678XXX and strip the 256 when I am making a request. As you can see this all is more work.
I think the best way is to make the validation optional.

Thoughts @mossplix ?

Hi @kafuuma why do you think it is a good idea to remove required validations?

One other possibility - the library should be easily used in other MTN countries, where the code is different

We can make it optional. That should work better

Appreciate the suggestions @kafuuma @sicelo Pull requests welcome! 👍


Feature/update dialog

This adds an update dialog and renames the launcher in most places, if not all. But it needs further testing to confirm... some odd artifacts with the naming I saw but can't tell why.
This PR carries the commits from #12 as well, that one should be merged before this one.

Currently, this does not kick in unless there's an interface selected.

Note: There are other files still containing "Athena", plus the execuables' icons need updating.

I'm thinking we want to disable the launch button while an installation is running, I know the launcher is far more powerful (the ability to have multiple interfaces) but the sake of ease of use for the timebeing for such a trade off does not seem so bad.


Online Help pane doesn't support the dark theme

Issue Report Checklist

[x] Searched the issues page for similar reports
[x] Completed the Problem Description, Steps to Reproduce and Version sections below

Problem Description

Versions

Spyder version: 4.0beta2
Python version: 3.7.3
Qt version: 5.9.6
PyQt version: 5.9.2
Operating System name/version: Windows 8.1

I don't think it is a spyder specific thing, since the reference documentation of python (HTML format) is only available in only one theme(light theme). Spyder just serve the reference documentation simply like browsers do. It is not an issue with spyder but the python reference documentation.

Hi @mohitisgreat this issue is intended to remaind us that the Online Help pane should inject some sort of CSS/Javascript with the dark theme when rendering the pages pydoc generates (in order to show the documentation in a more integrated way with the dark theme). Although, as you say, the documentation is served as it is from pydoc and searching a little bit even an issue in Python exists to make it look more appealing here. The idea is resolve this over the Spyder side (at least for the moment)

@dalthviz, please take a look at this project
https://github.com/aroberge/mod_pydoc
for a Python approach on how to customize the Pydoc css.
I think we could patch/extend the pydoc module instead of providing a modified copy of the entire module (as that project does).


More than 128 ever?

Will it ever be possible to use more than 128 shapes? Can't get very complex images out of this as is. Really cool project though!

That's what the game limits you to, at least in the U.I
Maybe the savefile could actually store more, and it's just a "random" limit

Will it ever be possible to use more than 128 shapes?

Unfortunately, probably not. I tried to create emblems with more shapes but the game will not load them. For now your best bet is to break up more complex images into parts and stitch them in-game. Layering emblems to create images with higher fidelity might be possible in the future, we'll see.

The latest release will by default split vectorized images into emblems of 128 shapes each. Those can then be layered in-game for added detail.


Fix concurrent acceptance specs

Closes #14391
I've just removed the requirement of an acceptance_helper which was unnecessarily changing the capybara driver to Selenium.

Tested locally and it works


Fix winpython's checkver and switch to innosetup

I had to change the checkver url to get it updated.
Also, since Python 3.7, Winpython switched to innosetup, so I updated the manifest accordingly.
To remove all optional stuff I wanted to use the "extract_dir" as before, but with innosetup I had to write a pre_install script which, I'm afraid, it may not be the best in terms of efficiency... so please be welcome to edit it if you think there's a better way to accomplish that.

@Ash258 it only keeps the folder containing the basic Python installation, while removing all the rest. I know it's not quite elegant, but it makes sure that we do not delete any file we want to keep.
Do you say it's a mess because it's one line, or because you think it's over-complicated? Can you suggest a simpler way to accomplish the same?

What are this nonbasic installtion files?? List them, there has to be better way to delete them.

@Ash258 all the files except those inside the directory "python-3.7.1.amd64". The script just removes all the other files and then moves the content of that directory to the parent directory.
Basically:
Remove $dir\* except $dir\python-3.7.1.amd64\*
The best way would be to only extract the content of this folder in the first place, but it's not possible anymore with 7zip and the "extract_dir" option since they switched to innosetup. Any thoughts?

Multiplatform no need for update.
Get-ChildItem \"$dir\" -Exclude 'python-*' | Remove-Item -Force -Recurse
$fold = (Get-ChildItem \"$dir\")[0] # You could assume it would be first and only one
Move-Item "$fold\*" \"$dir\" -Force
Remove-Item $fold -Recurse

Why don't use github download urls?

Linted manifest
{
    "description": "Free, open-source and portable Python distribution for Windows",
    "version": "<IP_ADDRESS>",
    "license": "MIT",
    "homepage": "https://winpython.github.io/",
    "architecture": {
        "64bit": {
            "url": "https://downloads.sourceforge.net/project/winpython/WinPython_3.6/<IP_ADDRESS>/WinPython64-<IP_ADDRESS>Zero.exe",
            "hash": "e52e2606f3a2f7d79fd9eac0701b144efe0832ecdcf7c5a2f3bf3aebba4e70c6"
        },
        "32bit": {
            "url": "https://downloads.sourceforge.net/project/winpython/WinPython_3.6/<IP_ADDRESS>/WinPython32-<IP_ADDRESS>Zero.exe",
            "hash": "8b6b22f36aecb80ce8b13212deb4bbba0e9a902ddd081d7c6288cf0f44e419be"
        }
    },
    "innosetup": true,
    "installer": {
        "script": [
            "Get-ChildItem \"$dir\" -Exclude 'python-*' | Remove-Item -Force -Recurse",
            "$fold = (Get-ChildItem \"$dir\")[0] # You could assume it would be first and only one",
            "Move-Item \"$fold\\*\" \"$dir\" -Force",
            "Remove-Item $fold -Recurse"
        ]
    },
    "bin": [
        "python.exe",
        "pythonw.exe",
        [
            "python.exe",
            "python3"
        ]
    ],
    "env_add_path": "scripts",
    "checkver": {
        "github": "https://github.com/winpython/winpython/",
        "regex": "-([\\d\\.]+)Zero\\.exe"
    },
    "autoupdate": {
        "architecture": {
            "64bit": {
                "url": "https://downloads.sourceforge.net/project/winpython/WinPython_$majorVersion.$minorVersion/$version/WinPython64-$versionZero.exe"
            },
            "32bit": {
                "url": "https://downloads.sourceforge.net/project/winpython/WinPython_$majorVersion.$minorVersion/$version/WinPython32-$versionZero.exe"
            }
        },
        "hash": {
            "url": "https://winpython.github.io/md5_sha1.txt",
            "find": "([a-fA-F\\d]{64})\\s\\|\\s$basename"
        }
    }
}

Hi @Ash258 ,
Thanks so much for the installer script!
However, (Get-ChildItem \"$dir\")[0] will just return the folder name, not the full path. So, when it tries to run the Move-Item command, it returns that the path [current-directory]\python-x.x.x.amd64 doesn't exists.
You can test by running ls (Get-ChildItem \"$dir\")[0] from a different directory, it will search the folder inside your current dir.
The solution would be to get the full path:
"$fold = (Get-ChildItem \"$dir\")[0] | Select-Object -ExpandProperty FullName"
In this way it gets the full path C:\blah-blah\python-x.x.x.amd64
And it works fine.
I'll push the commit asap, thanks again.


[fix][build] Add curl command for pulsar image

Motivation
Many components need to rely on curl command when testing, so we should add curl command to the pulsar image.
More context:
https://lists.apache.org/thread/mkxsz2tjbmlmqpsbh77sdll9b36o8pgv
Modifications
Add curl command for pulsar image
Verifying this change

[ ] Make sure that the change passes the CI checks.

(Please pick either of the following options)
This change is a trivial rework / code cleanup without any test coverage.
(or)
This change is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
(example:)

Added integration tests for end-to-end deployment with large payloads (10MB)
Extended integration test for recovery after broker failure

Does this pull request potentially affect one of the following parts:

If the box was checked, please highlight the changes

[ ] Dependencies (add or upgrade a dependency)
[ ] The public API
[ ] The schema
[ ] The default values of configurations
[ ] The threading model
[ ] The binary protocol
[ ] The REST endpoints
[ ] The admin CLI options
[ ] The metrics
[ ] Anything that affects deployment

Documentation

[ ] doc
[ ] doc-required
[x] doc-not-needed
[ ] doc-complete

Matching PR in forked repository
PR in forked repository:

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 73.19%. Comparing base (bbc6224) to head (9b2f4d6).
Report is 279 commits behind head on master.

Additional details and impacted files

@@             Coverage Diff              @@
##             master   #22732      +/-   ##
============================================
- Coverage     73.57%   73.19%   -0.39%
- Complexity    32624    32864     +240
============================================
  Files          1877     1889      +12
  Lines        139502   141399    +1897
  Branches      15299    15517     +218
============================================
+ Hits         102638   103491     +853
- Misses        28908    29925    +1017
- Partials       7956     7983      +27

Flag
Coverage Δ

inttests
27.19% <ø> (+2.60%)
:arrow_up:

systests
24.74% <ø> (+0.41%)
:arrow_up:

unittests
72.20% <ø> (-0.65%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.
see 355 files with indirect coverage changes


build: update shareable image

the current image looks too different compared with how beauty is the project these days!

Maybe I'll make a new card haha, thanks :P

closed in favor of https://github.com/shuding/nextra/pull/734


Check All Headers In Documentation

Check headers are correct

TLDR; Headers should use the #, ## etc to format different levels of headers, and not be underlines using ===== or ```-----``, or be psuedo header using bold

Check all headers on the documentation - headers should use the hash style of declaration rather then be underlined with equals or dashes. The more hashes, the more of a subheading. Eg:

# is equal to

## is equal to

### is equal to

#### is equal to

##### is equal to

Headings should be appropriate for their level in the documentation.
Psuedo headers using bold tags ** should be replaced with appropriate level of heading tag.

Just checked the docs. All headers are using '#' as expected.

The header hierarchy is also okay.


is there a "my playlists" entry?

Hi,
Just installed the extension and after the auth procedure, all I see is these 3 folders
Shouldn't there be "My playlists" from my account?

No, your playlists will show up under the "playlists" section of mopidy.  However it looks like the authentication didn't succeed, as your history isn't showing up (as "Recently Played"), this is what I see:

Can you verify that the file that you set your "auth_json" to exists and has data in it?

Yes, that was the wrong config on my side, now I see all my playlists
thank you


add time_function function for optimization testing

A useful function for testing for bottlenecks and verifying that optimizations are actually optimizing - putting it here so it'll always be around. If you notice any @time_functions left over from testing in future PRs, please tell me off as you would for extraneous print statements.

@jacobdgm Are you using Python's logger module? You can change the logging levels and you don't need to remove any code.

To follow up on @fujinaga's suggestion about the logging modules, a few tips:

You can set some custom logging levels pretty easily. If you're running in development, for example, you can set your default log level to DEBUG, whereas in production you can set it to ERROR. Here's a snippet of how we have logging configured in one of our projects: https://github.com/rism-digital/muscatplus_server/blob/develop/search_server/server.py#L64-L72
When you do use logging, make sure you use the old-style percent string encoding, rather than the newer f strings... This is because with the older style, if the log level is not set to emit a message (e.g., you are running at ERROR and it's being asked to emit a DEBUG message), then the string won't actually get evaluated with percent-encoding.

So do this:
log.debug("The value of the variable foo is %s", foo)
not this:
log.debug(f"The value of the variable foo is {foo}")
and definitely not this:
log.debug("The value of the variable foo is %s" % foo)
See here: https://medium.com/flowe-ita/logging-should-be-lazy-bc6ac9816906

Here's a slightly better decorator for timing functions: https://github.com/rism-digital/muscatplus_indexer/blob/develop/indexer/helpers/utilities.py#L17-L39

The small advantages of this one are:

It uses the timeit module instead of time, which is more suitable for timing execution time rather than wall time
It uses the Python logging system
It also gives the function name, and the time in hh:mm:ss, in a nicely formatted message


Follow up for PacketCapture feature.

Possible future improvements in the future:

bi-direction capture
ipv6
tcp flags filter
icmp echo/reply filter

Current issues:

captured file cannot be opened by tcpdump on mac, works on linux. ( Wireshark is fine on mac)

Related to:

https://github.com/antrea-io/antrea/pull/6756
https://github.com/antrea-io/antrea/issues/5443

cc @luolanzone


refactor: metadata icon color

refactor: metadata icon is green if there is metadata
If the feature is a refactor, please explain why your way is better

@kenrilea can you please rebase so we can merge?


Centralize Redis and ARDB RocksDB config

Move Redis init scripts (start/stop) to DM config class
Remove old/unused redis init script constants
Rename and move Redis persistence config methods, constants
Centralize method to get the RESP backend type
Centralize ARDB RocksDB conf and init methods in DM configuration
Reformat entire ArdbRocksDbRedisCompatible.java file to use spaces not tabs

I do not think it is a good strategy to make DynomiteManagerConfiguration a huge class. What if we want to add more storage engines in the future? This is not an approach that can scale. The reason some of these were recently moved to the storage class https://github.com/Netflix/dynomite-manager/pull/39/files was to make the code more readable.
We probably need to find a better way...

Agreed. I can cancel this PR.

Submitting new PR. Created a new branch with a clean history for this PR.


 Keep in mind that this Nadeko is on version 1.3 and updates can't come as fast as your used to.

Please Stop Talking Like This


Add an own namespace

Could you probably add an own namespace? Otherwise it may be a bit difficult to use in larger projects.

Yes, it is a bit annoying but "dynamic_bitset" is quite a generic name and collision might append. I don't want to use my username as namespace so I will think about something short and that make sense to use as namespace and add it soon, it will be an opportunity to do a first release.

Sorry for the delay, I had a lot of other stuff to do so It took me a long time but it is now done. The dynamic_bitset was moved to the "sul" namespace and is now the first library of the Simple Useful Libraries! Yep, I plan to do some other libraries when I have some time available. Also made a first release!


Access blocked: DVC’s request is invalid (GDrive)

Hello Team,
Whenever I am trying to push my file to Gdrive I am getting this error:
You can’t sign in because DVC sent an invalid request. You can try again later, or contact the developer about this issue. Learn more about this error
If you are a developer of DVC, see error details.
Error 400: invalid_request
The out-of-band (OOB) flow has been blocked in order to keep users secure. Follow the Out-of-Band (OOB) flow migration guide linked in the developer docs below to migrate your app to an alternative method.
Request details: redirect_uri=urn:ietf:wg:oauth:2.0:oob
I have used the following commands:
dvc add (files)
dvc remote add -d storage gdrive://1XWz2_ooNVO8JUI-aobLATEPEDhBYwm12 -f
dvc push
I have just started learning dvc and trying it on an open source cloud storage google drive. Please look into this matter and let me know if there are any issues from my end or not.

Hi @Akashv-Redapple , could you post a full verbose log, please? E.g. dvc push -v and dvc doctor

Hello Team,
Please find the log
2022-12-22 10:40:42,876 DEBUG: Checking if stage 'and' is in 'dvc.yaml'
2022-12-22 10:40:43,614 DEBUG: Assuming 'and' to be a stage inside 'dvc.yaml'
2022-12-22 10:40:43,614 ERROR: failed to push data to the cloud - 'and' does not exist as an output or a stage name in 'dvc.yaml': 'dvc.yaml' does not exist
Traceback (most recent call last):
File "/home/ratpc-041/anaconda3/envs/wafer/lib/python3.7/site-packages/dvc/repo/stage.py", line 437, in collect_granular
accept_group=accept_group,
File "/home/ratpc-041/anaconda3/envs/wafer/lib/python3.7/site-packages/dvc/repo/stage.py", line 379, in collect
stages = self.from_target(target, accept_group=accept_group, glob=glob)
File "/home/ratpc-041/anaconda3/envs/wafer/lib/python3.7/site-packages/dvc/repo/stage.py", line 216, in from_target
path=path, name=name, accept_group=accept_group, glob=glob
File "/home/ratpc-041/anaconda3/envs/wafer/lib/python3.7/site-packages/dvc/repo/stage.py", line 287, in load_all
stages = dvcfile.stages  # type: ignore
File "/home/ratpc-041/anaconda3/envs/wafer/lib/python3.7/site-packages/dvc/dvcfile.py", line 281, in stages
data, _ = self._load()
File "/home/ratpc-041/anaconda3/envs/wafer/lib/python3.7/site-packages/dvc/dvcfile.py", line 142, in _load
self.path, dvc_ignored=dvc_ignored
dvc.stage.exceptions.StageFileDoesNotExistError: 'dvc.yaml' does not exist
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/ratpc-041/anaconda3/envs/wafer/lib/python3.7/site-packages/dvc/commands/data_sync.py", line 68, in run
glob=self.args.glob,
File "/home/ratpc-041/anaconda3/envs/wafer/lib/python3.7/site-packages/dvc/repo/init.py", line 48, in wrapper
return f(repo, *args, **kwargs)
File "/home/ratpc-041/anaconda3/envs/wafer/lib/python3.7/site-packages/dvc/repo/push.py", line 49, in push
revs=revs,
File "/home/ratpc-041/anaconda3/envs/wafer/lib/python3.7/site-packages/dvc/repo/init.py", line 424, in used_objs
with_deps=with_deps,
File "/home/ratpc-041/anaconda3/envs/wafer/lib/python3.7/site-packages/dvc/repo/index.py", line 225, in used_objs
for stage, filter_info in pairs:
File "/home/ratpc-041/anaconda3/envs/wafer/lib/python3.7/site-packages/dvc/repo/index.py", line 222, in
for target in collect_targets
File "/home/ratpc-041/anaconda3/envs/wafer/lib/python3.7/site-packages/dvc/repo/stage.py", line 445, in collect_granular
raise NoOutputOrStageError(target, exc.file) from exc
dvc.exceptions.NoOutputOrStageError: 'and' does not exist as an output or a stage name in 'dvc.yaml'
2022-12-22 10:40:43,643 DEBUG: Analytics is enabled.
2022-12-22 10:40:43,738 DEBUG: Trying to spawn '['daemon', '-q', 'analytics', '/tmp/tmpljsrr_qh']'
2022-12-22 10:40:43,740 DEBUG: Spawned '['daemon', '-q', 'analytics', '/tmp/tmpljsrr_qh']'

On 12/21/2022 6:54 PM IST Ruslan Kuprieiev @.***> wrote:
Hi @Akashv-Redapple https://github.com/Akashv-Redapple , could you post a full verbose log, please? E.g. dvc push -v and dvc doctor
—
Reply to this email directly, view it on GitHub https://github.com/iterative/dvc-gdrive/issues/17#issuecomment-1361309047, or unsubscribe https://github.com/notifications/unsubscribe-auth/AZYOJV2VI7E2YQ2FEW7VA5DWOMAH7ANCNFSM6AAAAAATFT6AK4.
You are receiving this because you were mentioned.Message ID: @.***>

Akash Verma
Junior Web Developer
Red Apple Technologies

@Akashv-Redapple Please post dvc doctor output as well.
The error indicates that there is no stage called and, so I suspect you've made a typo and ran dvc push -v and instead of dvc push -v.

I guess there needs to be a migration anyway if I read this correctly?
https://developers.google.com/identity/protocols/oauth2/resources/oob-migration

We've done the migration of the flow and now DVC is running the server and opens the browser by default.

Hi Team,
I am getting a similar error. Can you please tell me how can i resolve this issue?
dvc push -v  output
2024-01-29 15:00:24,994 DEBUG: Check for update is enabled.
2024-01-29 15:00:25,011 DEBUG: Trying to spawn '['daemon', '-q', 'updater']'
2024-01-29 15:00:25,053 DEBUG: Spawned '['daemon', '-q', 'updater']'
2024-01-29 15:00:25,179 DEBUG: Preparing to upload data to 'gdrive://1ybrvdqOcRZ6GXAJyC6wJ_QNjIjeMPY5u'
2024-01-29 15:00:25,179 DEBUG: Preparing to collect status from gdrive://1ybrvdqOcRZ6GXAJyC6wJ_QNjIjeMPY5u
2024-01-29 15:00:25,181 DEBUG: Collecting information from local cache...
2024-01-29 15:00:25,183 DEBUG: Collecting information from remote cache...
2024-01-29 15:00:25,183 DEBUG: Matched '0' indexed hashes
2024-01-29 15:00:25,575 DEBUG: GDrive remote auth with config '{'client_config_backend': 'settings', 'client_config_file': 'client_secrets.json', 'save_credentials': True, 'oauth_scope': ['https://www.googleapis.com/auth/drive', 'https://www.googleapis.com/auth/drive.appdata'], 'save_credentials_backend': 'file', 'save_credentials_file': 'D:\Projects\Wafers MLOps Project\wafer_mlops\.dvc\tmp\gdrive-user-credentials.json', 'get_refresh_token': True, 'client_config': {'client_id': '710796635688-iivsgbgsb6uv1fap6635dhvuei09o66c.apps.googleusercontent.com', 'client_secret': 'a1Fz59uTpVNeG_VGuSKDLJXv', 'auth_uri': 'https://accounts.google.com/o/oauth2/auth', 'token_uri': 'https://oauth2.googleapis.com/token', 'revoke_uri': 'https://oauth2.googleapis.com/revoke', 'redirect_uri': ''}}'.
Estimating size of cache in 'gdrive://1ybrvdqOcRZ6GXAJyC6wJ_QNjIjeMPY5u'                                        |0.00 [00:00,     ?file/s]Go to the following link in your browser:
https://accounts.google.com/o/oauth2/auth?client_id=710796635688-iivsgbgsb6uv1fap6635dhvuei09o66c.apps.googleusercontent.com&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdrive+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdrive.appdata&access_type=offline&response_type=code&approval_prompt=force

Enter verification code: You can’t sign in because DVC sent an invalid request. You can try again later, or contact the developer about this issue. Learn more about this error^X^X
2024-01-29 15:00:38,606 ERROR: failed to push data to the cloud - Failed to authenticate GDrive remote: OAuth2 code exchange failed: invalid_grantMalformed auth code.
Traceback (most recent call last):
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\pydrive2\auth.py", line 596, in Authenticate
self.credentials = self.flow.step2_exchange(code)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\oauth2client_helpers.py", line 133, in positional_wrapper
return wrapped(*args, **kwargs)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\oauth2client\client.py", line 2089, in step2_exchange
raise FlowExchangeError(error_msg)
oauth2client.client.FlowExchangeError: invalid_grantMalformed auth code.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\fs\gdrive.py", line 274, in _drive
gauth.CommandLineAuth()
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\pydrive2\auth.py", line 135, in _decorated
self.Auth(code)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\pydrive2\auth.py", line 583, in Auth
self.Authenticate(code)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\pydrive2\auth.py", line 598, in Authenticate
raise AuthenticationError("OAuth2 code exchange failed: %s" % e)
pydrive2.auth.AuthenticationError: OAuth2 code exchange failed: invalid_grantMalformed auth code.
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\command\data_sync.py", line 66, in run
glob=self.args.glob,
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\repo_init_.py", line 49, in wrapper
return f(repo, *args, **kwargs)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\repo\push.py", line 41, in push
return len(used_run_cache) + self.cloud.push(used, jobs, remote=remote)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\data_cloud.py", line 70, in push
show_checksums=show_checksums,
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\remote\base.py", line 56, in wrapper
return f(obj, *args, **kwargs)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\remote\base.py", line 471, in push
download=False,
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\remote\base.py", line 328, in _process
download=download,
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\remote\base.py", line 176, in _status
md5s, jobs=jobs, name=str(self.fs.path_info)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\remote\base.py", line 132, in hashes_exist
return indexed_hashes + self.odb.hashes_exist(list(hashes), **kwargs)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\objects\db\base.py", line 384, in hashes_exist
remote_size, remote_hashes = self._estimate_remote_size(hashes, name)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\objects\db\base.py", line 206, in _estimate_remote_size
remote_hashes = set(hashes)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\objects\db\base.py", line 160, in hashes_with_limit
for hash in self.list_hashes(prefix, progress_callback):
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\objects\db\base.py", line 150, in list_hashes
for path in self._list_paths(prefix, progress_callback):
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\objects\db\base.py", line 130, in _list_paths
for file_info in self.fs.walk_files(path_info, prefix=prefix):
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\fs\gdrive.py", line 608, in walk_files
for filename in self.ls(path_info, recursive=True):
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\fs\gdrive.py", line 576, in ls
yield from self._ls_recursive(path_info, detail=detail)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\fs\gdrive.py", line 539, in _ls_recursive
dir_ids = [self._ids_cache["ids"].copy()]
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\funcy\objects.py", line 50, in get
return prop.get(instance, type)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\funcy\objects.py", line 28, in get
res = instance.dict[self.fget.name] = self.fget(instance)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\fs\gdrive.py", line 305, in _ids_cache
"'{}' in parents and trashed=false".format(cache["root_id"])
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\fs\gdrive.py", line 439, in _gdrive_list
param.update(self._list_params)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\funcy\objects.py", line 28, in get
res = instance.dict[self.fget.name] = self.fget(instance)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\fs\gdrive.py", line 322, in _list_params
drive_id = self._gdrive_shared_drive_id(self._bucket)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\funcy\decorators.py", line 39, in wrapper
return deco(call, *dargs, **dkwargs)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\funcy\flow.py", line 125, in retry
return call()
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\funcy\decorators.py", line 60, in call
return self._func(*self._args, **self._kwargs)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\fs\gdrive.py", line 339, in _gdrive_shared_drive_id
item = self._drive.CreateFile(param)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\funcy\objects.py", line 50, in get
return prop.get(instance, type)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\funcy\objects.py", line 28, in get
res = instance.dict[self.fget.name] = self.fget(instance)
File "D:\Projects\Wafers MLOps Project\wafer3\lib\site-packages\dvc\fs\gdrive.py", line 282, in _drive
raise GDriveAuthError(self.credentials_location) from exc
dvc.fs.gdrive.GDriveAuthError: Failed to authenticate GDrive remote
2024-01-29 15:00:38,616 DEBUG: Analytics is enabled.
2024-01-29 15:00:38,619 DEBUG: Trying to spawn '['daemon', '-q', 'analytics', 'C:\Users\rawat\AppData\Local\Temp\tmpbf_o3hrf']'
2024-01-29 15:00:38,659 DEBUG: Spawned '['daemon', '-q', 'analytics', 'C:\Users\rawat\AppData\Local\Temp\tmpbf_o3hrf']'
dvc doctor output
DVC version: 2.0.5 (pip)
Platform: Python 3.7.0 on Windows-10-10.0.22621-SP0
Supports: gdrive, http, https
Cache types: hardlink
Cache directory: NTFS on D:
Caches: local
Remotes: gdrive
Workspace directory: NTFS on D:
Repo: dvc, git

For me, upgrading to the latest dvc version solved the issue. As I can see, you use a quite old version (2.0.5) -
If you upgrade to the latest version: dvc 3.42.0 I hope this issue will be resolved.


Refactor gulpfile into single build file using npm_lifecycle

Description:
The current build process relies on Gulp and has several tasks defined in the gulpfile. We want to refactor this to use a single script instead of Gulp, which will simplify the build process and reduce the number of dependencies.
The new script should detect the npm lifecycle events and run the appropriate tasks. For example, if the user runs npm run clean-esm, it should call rmRF('esm'). If the user runs npm run transpile-esm, it should call babel('src', { outDir: 'build', sourceMaps: true }). Similarly, it should call the appropriate functions for other tasks like create-mjs-esm, resources-esm, transpile-cjs, resources-cjs, generate-types, and build.
The script should prefer to use the Node.js API functions like rmRF(), mkdir(), copyFile(), readdir(), etc. over the exec() or spawn() functions whenever possible. If it's not possible to use the Node.js API functions, it can fall back to exec() or spawn().
We should also add comments to the script explaining what each task does and how it works. This will make it easier for developers to understand and modify the build process in the future.
Once the script is ready, we should update the scripts section of package.json to use the new script instead of Gulp.
It would also be ideal of this build script ran using ts-node so we don't have to build it and can keep the typescript even in the build process.
Proposed scripts to re-create
Aprox generated by ChatGPT

clean-esm: Removes the esm directory.
clean-build: Removes the build directory.
clean-cjs: Removes the cjs directory.
clean-types: Removes the types directory.
transpile-esm: Transpiles the TypeScript code in the src directory using Babel, and outputs the transpiled code to the build  directory with source maps.
create-mjs-esm: Renames all JavaScript files in the build directory to have a .mjs extension.
resources-esm: Copies all JSON, TXT, and XML files from the src directory to the esm directory.
transpile-cjs: Transpiles the TypeScript code in the src directory using Babel, and outputs the transpiled code to the cjs directory with source maps, using a different Babel config file than transpile-esm.
resources-cjs: Copies all JSON, TXT, and XML files from the src directory to the cjs directory.
generate-types: Generates TypeScript declaration files from the code in the src directory, and outputs them to the types directory with source maps.
build: Runs all of the above build commands in sequence.
watch: Starts a watch task that runs the build command whenever any file in the src directory or its subdirectories changes.

Still in progress FYI

We have completely eliminated all dependencies on gulp as a build tool with the help of one of our external contributors, @hfranklin .


feat: optimistically verify blocks even before all blobs available

(WIP)
while all blobs become available, block can be optimistically verified to save any delays on the import times
this PR implements blockInput with blobsPromise that need to resolve before the block can be imported in a timebound manner else the unknownblock/blob search is initiated
TODO:

[ ] cleanup
[ ] fix tests/types check
[ ] devnet 11

[ ] postDeneb blobs
[ ] blobs with promise
[ ] promise failing with unknown block search

what's the current strategy now?

what's the current strategy now?

current strategy is wait till all block and blobs show up and then start the import
this seems to be working fine on devnet 11 lodestar-geth-1, just need to cleanup and finalize the PR

:tada: This PR is included in v1.14.0 :tada:


path_provider nullsafety version does not use path_provider_platform_interface nullsafety version

This is what I get from pub deps:
|-- path_provider 2.0.0-nullsafety.1
|   |-- flutter...
|   |-- path_provider_linux 0.2.0-nullsafety
|   |   |-- flutter...
|   |   |-- path...
|   |   |-- path_provider_platform_interface...
|   |   '-- xdg_directories 0.2.0
|   |       |-- meta...
|   |       |-- path...
|   |       '-- process 4.1.0
|   |           |-- file...
|   |           |-- path...
|   |           '-- platform...
|   |-- path_provider_macos 0.0.5-nullsafety
|   |   '-- flutter...
|   |-- path_provider_platform_interface 2.0.0
|   |   |-- flutter...
|   |   |-- meta...
|   |   |-- platform 3.0.0
|   |   '-- plugin_platform_interface 1.0.3
|   |       '-- meta...

The dependency issue causes:
Error: Cannot run with sound null safety, because the following dependencies
don't support null safety:

 - package:plugin_platform_interface

You can temporarily resolve the issue by overriding the dependency with path_provider_platform_interface: 2.0.0-nullsafety in the pubspec. Not sure why it hasn't been resolved yet but would be nice if I didn't have to put the override in my pubspec.

path_provider is currently half-way through the migration to stable null safety, and to avoid version lock issues path_provider_platform_interface 2.0.0 depends on a range that includes both 1.0.0 (not null-safe) and 2.0.0 (null safe).
I would expect it to resolve to the latter. Do you have something else in your project that doesn't allow 2.0.0?

It looks like a clean build fixed it. Thanks for indulging me.


chore(deps): upgrade to 1.23.4

Description
Please explain the changes you made here.
Which issue(s) does this PR fix

upgrade to 1.23.4 - https://github.com/backstage/backstage/releases/tag/v1.23.4

PR acceptance criteria
Please make sure that the following steps are complete:

[ ] GitHub Actions are completed and successful
[ ] Unit Tests are updated and passing
[ ] E2E Tests are updated and passing
[ ] Documentation is updated if necessary (requirement for new features)
[ ] Add a screenshot if the change is UX/UI related

How to test changes / Special notes to the reviewer

https://github.com/janus-idp/backstage-plugins/pull/1307 merged, waiting for rebase...


Run on GPU

Hi, I want to run the model on GPU. I notice some annotating code about GPU in model.cs. I try to use that code, but it doesn't work. Would you help me with that? Thank you!

Hi @lihzh233, unfortunately GPU inference support with ONNX models on the HoloLens 2 is really not that performant or well supported.
In my own testing I've found that using CPU software bitmaps and CPU inference is significantly faster than copying your bitmaps to the GPU and performing inference there. There are some more performance details as to how to optimize ONNX inference speeds on the HoloLens 2 CPU in another repo of mine.


Support for sparse indexes/registries

My company vendors all 3rd party packages/crates to an internal registry which implements the sparse protocol.
When running cargo vet I get the following error:
 WARN Couldn't find cargo registry: 'sparse+https://INTERNAL/INDEX/' is not a valid registry url
I have noticed that the latest<EMAIL_ADDRESS>uses<EMAIL_ADDRESS>but sparse index support was only implemented on v0.19.7.
I'm not sure if this is the only required change though.

We no longer attempt to look at your local registry at all since #496

Thanks @mystor.
What is the behaviour of cargo-vet in case I don't have access to crates.io (blocked by firewall)?

Thanks @mystor. What is the behaviour of cargo-vet in case I don't have access to crates.io (blocked by firewall)?

cargo vet --locked --frozen will work without hitting the network to verify an existing tree (for use in situations like CI). In general though, the expectation is that ordinary invocations on the developer's machine can access crates.io.


[BUG/Help]

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
现在的模型会把超出最长限度的文本截断，但是这在做文本摘要的时候可能出现标签（输出）的部分内容事实上对应的是被截断的文本。请问如何解决这一问题，即保留完整文本进行训练？
The current model will truncate the text beyond the maximum limit, but when doing text summarization, part of the content of the label (output) may actually correspond to the truncated text. May I ask how to solve this problem, i.e. keep the full text for training?
Expected Behavior
No response
Steps To Reproduce
trian with long prompt with like 10000 tokens
Environment
- OS:Ubuntu 18.04
- Python:3.9
- Transformers: 4.27.1
- PyTorch:2.0.0
- CUDA Support (`python -c "import torch; print(torch.cuda.is_available())"`) :True

Anything else?
No response

not sure if you can do this via tune max_source_length/max_target_length/pre_seq_len if you have enough vram?


Accessing _lat and _lon and video playback position

Is there a recommended way to hook into the same mouse move events that are changing the perspective and to access _lat and _lon and the video playback position?

I'm also very interested in this one, to be able to read current camera position in dispatched events.

+1 for this idea. Would be great to have a simple API to get this kind of data from a video at a given timestamp.


CVO enhancements

Added correct naming of resources.
Added CVO annotations.

One thing that will definitely need to be added in the future is operator e2e and upgrade tests for this repo.

/retest

/retest

Thanks for the PR. Other than looking into re-adding the nonroot group later (which seems to be added automatically by the useradd on my machine, at least...) this looks good.
/lgtm


SSH/SFTP support for Windows

Currently the SFTP protocol is not supported if the end point type is set to windows. The Windows command set is not used when doing Status checks or deploys.
Please add this functionality to Deployhub.
Thanks.

Scheduling this for next release. Need an equivalent of mkdir -p for windows. One possible solution would be to send a sequence of mkdir commands, ignoring error returns (mkdir /tmp;mkdir /tmp/tgt;mkdir /tmp/tgt/finaldir) instead which would be identical for Windows and Linux but this could be problematic with deep directory nesting. Perhaps issue them as separate command lines?
The biggest issue is that the underlying protocol is not passed the target operating system so we would struggle to switch logic depending on whether the target is Windows or a flavour of Linux/Unix.

If it helps this command string will do the same thing in windows.
"cmd /c d: && mkdir \tmp && mkdir \tmp\tgt && mkdir \tmp\tgt\finaldir"

mkdir on windows automatically creates all of the intermediate directories.
For example:  mkdir d:\temp\a\b\c\d
No -p is needed

That's true but as discussed above the underlying script does not know the target operating system. So we either have to pass that through somehow or come up with a strategy that works for any target OS.

No I have do not have a fix right now for the SFTP for windows. From the command line I can do it but not from DeployHub.
I believe the correct syntax would be something like "cmd /c d: && mkdir -f \tmp\tgt\finaldir"

What is the ssh server that you are using on Windows, cygwin?

We are using FreeSSHd.

Hi all,
Any eta on this functionality?
Thanks.
Chris
From: Steve Taylor<EMAIL_ADDRESS>Sent: February 20, 2018 11:31 AM
To: OpenMake-Software/DeployHub
Cc: Wale, Chris (MOHLTC); Author
Subject: Re: [OpenMake-Software/DeployHub] SSH/SFTP support for Windows (#16)
What is the ssh server that you are using on Windows, cygwin?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/OpenMake-Software/DeployHub/issues/16#issuecomment-367035098, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AgloGTJAsQd_-aCplVoGlUq-9EIj5bU5ks5tWvM-gaJpZM4Qyz92.

Can you run the following from the Solaris server against the Windows SSH server?
ssh  uname
Let me know the output.

This what you are looking for?
bash-3.2$ ssh -l WaleC <IP_ADDRESS>
<EMAIL_ADDRESS>password:
From: Steve Taylor<EMAIL_ADDRESS>Sent: March 9, 2018 1:29 PM
To: OpenMake-Software/DeployHub
Cc: Wale, Chris (MOHLTC); Author
Subject: [Possible SPAM] Re: [OpenMake-Software/DeployHub] SSH/SFTP support for Windows (#16)
Can you run the following from the Solaris server against the Windows SSH server?
ssh uname
Let me know the output.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/OpenMake-Software/DeployHub/issues/16#issuecomment-371903922, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AgloGesNzMDtnbYlVOGICAQne6fgG8t9ks5tcsnzgaJpZM4Qyz92.

Sorry github stripped out the command:
ssh -l WaleC <IP_ADDRESS>  uname
Just tack on uname as the command to run.  I am guessing that the output will be something about the program uname not being found.  Just need to double check the real output.
Thanks Steve

Hi Steve,
I was able to run the command you suggested below. Here is what was returned.
bash-3.2$ ssh -l WaleC <IP_ADDRESS> uname
<EMAIL_ADDRESS>password:
Unable to execute command or shell on remote system: Failed to Execute process.
Chris
From: Steve Taylor<EMAIL_ADDRESS>Sent: March 9, 2018 1:39 PM
To: OpenMake-Software/DeployHub
Cc: Wale, Chris (MOHLTC); Author
Subject: [Possible SPAM] Re: [OpenMake-Software/DeployHub] SSH/SFTP support for Windows (#16)
Sorry github stripped out the command:
ssh -l WaleC <IP_ADDRESS> uname
Just tack on uname as the command to run. I am guessing that the output will be something about the program uname not being found. Just need to double check the real output.
Thanks Steve
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/OpenMake-Software/DeployHub/issues/16#issuecomment-371906949, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AgloGYRruHbiil2ukP8gWPOR1GXIAD69ks5tcswogaJpZM4Qyz92.

In the process of updating sshexec to check the remote end point OS by running uname.  If we get back 'Unable to execute command' then we can assume that its windows.
@cawale can you try another command which may make it a bit cleaner:
ssh -l WaleC <IP_ADDRESS> set
Send me the output from the command above.

The result is this
bash-3.2$ ssh -l WaleC <IP_ADDRESS> set
<EMAIL_ADDRESS>password:
Unable to execute command or shell on remote system: Failed to Execute process.

Changed the logic to check the remote OS and the run a modified command for the OS specific syntax.
sshexec.zip
Backup the existing engine/lib/sshexec and put the new one in place.
Let me know the results.
Thanks, Steve

I forgot to comment out line 2 of the script.   Here is the updated one.
sshexec.zip

Seeing this error. Maybe my os does not have something you need?
bash-3.2$ ./sshexec -m <IP_ADDRESS> -port 22 -usr yyyy -pw xxxxxxxx "mkdir -p /export/home/walec/deploy;cd /export/home/walec/deploy;pwd"
./sshexec: syntax error at line 12: `HOME=$' unexpected

bash-3.2$ finger whoami | awk '/^Directory/ {print $2}'
bash: whoami: command not found

found it in /usr/usb

so this
finger /usr/ucb/whoami | awk '/^Directory/ {print $2}'
returns
/opt/deployhub
but the sshexec still fails with
./sshexec: syntax error at line 12: `HOME=$' unexpected

Your #!/bin/sh needs to be #!/bin/ksh on my system for this script to work.

ok. So I am getting farther. Now I get.
bash-3.2$ ./sshexec -m <IP_ADDRESS> -port 22 -usr WaleC -pw Jan202018 "mkdir -p /export/home/walec/deploy;cd /export/home/walec/deploy;pwd"
/opt/deployhub
grep: illegal option -- q
Usage: grep -hblcnsviw pattern file . . .
./sshexec[139]: sshpass:  not found
./sshexec[189]: sshpass:  not found

You will need to install the sshpass package.  This package enables ssh to be run without a password prompt.  See:  https://www.opencsw.org/package/sshpass/

ok so the grep that you needed was not on my path it was here /usr/xpg4/bin/

sshpass was already there just not where it was expecting it.

Where do I find rev?

Don't look like Solaris has the rev command.  Let me rework the that line.

I found a script that does the same thing. I created a rev script.

ok. So I got the script working from the command line with some changes. I can send it to you.
It does not yet work with the UI. I have just tested it with the status check at this point. I have not tried an install.
There are a few caveats though. The server MUST be specified as a unix server. If not then the '' in the UI causes problems. After you set the server to unix then you need to use single quotes around the 'base directory' for the server if you have a leading / in it or else the path will not get saved or used.

Where you able to get the mkdir of directories and other commands to run on the Windows machine from the command line (not via the UI) invocation of the sshexec script?

yup

How do I turn on more debug logging? I cannot see anything worthwhile that the system is doing when it is doing the Status call. I don't see the request being send to sshexec or any thing that it returns.

ok. so I found the debug.out log. From that file I see this when I run the Status function in the UI.
protocol_cd('/temp/deploy')
myDir=['/temp/deploy']
cmd=[sshexec  -m "<IP_ADDRESS>" -port "22" -usr "WaleC" -pw 'Jan202018' "mkdir -p "'/temp/deploy'";cd "'/temp/deploy'";pwd"]
line=[Unable to execute command or shell on remote system: Failed to Execute process.
]
I think this is the first uname failure not the failure of the hole thing. I am going to look and see if I can get it not to print out the uname failure.

So it looks like the UI or something is doing a uname after the initial request??? I am seeing this in an sshexec log I created.
sshexec -m <IP_ADDRESS> -port 22 -usr xxxxx -pw xxxx mkdir -p /temp/deploy;cd /temp/deploy;pwd
WINDOWS 1: mkdir -p /temp/deploy
WINDOWS 1: cd /temp/deploy
WINDOWS 1: pwd
WINDOWS 2: /c (if not exist \temp\deploy mkdir \temp\deploy ) && cd \temp\deploy && cd
sshexec -force -m <IP_ADDRESS> -port 22 -syn -usr xxxxx -pw xxxxxx uname
WINDOWS 1: uname
WINDOWS 2: /c  uname

So I been able to get a successful dmtransfer working but still not through the UI. It looks like the UI try's to be smart and converts '\' to '/' and then the match at the end fails even though the sshexec works as expected and returns the right directory.
I have been able to set the server up as a windows server and set the base directory to C:\temp\deploy. This is what gets sent in to sshexec though. (from debug.out)
protocol_cd(C:\temp\deploy)
myDir=[C:/temp/deploy]
cmd=[sshexec  -m "<IP_ADDRESS>" -port "22" -usr "xxxx" -pw 'xxxxx' "mkdir -p "C:/temp/deploy";cd "C:/temp/deploy";pwd"]
If I run it from dmtransfer, from the command line, then I can see that the correct response if coming back from windows.
protocol_cd(C:\temp\deploy)
myDir=[C:/temp/deploy]
cmd=[sshexec  -m "<IP_ADDRESS>" -port "22" -usr "xxxx" -pw 'xxxxx' "mkdir -p "C:/temp/deploy";cd "C:/temp/deploy";pwd"]
line=[C:\temp\deploy
]

Just to confirm to you the dmtransfer from the command line looks like this.
bash-3.2$ ./dmtransfer "-protocol" "sftp" "-server" "<IP_ADDRESS>" "-user" "xxx" "-password" "xxxx" "-checkbase" "C:\temp\deploy"
Base directory "C:\temp\deploy" is valid

Now trying to remove the paths to whoami and grep that I needed to get this working.
I have tried updating the path in my .profile file as well as in the rectl file, logged out and back in again and restarted Deployhub but when I do a Status request for the server it is not finding either.
Where do I need to set the path to include the new required directories so that the UI is setup correctly to use the sshexec script?
I can run dmtransfer and sshexec from the command line and all works as expected.

It should be under the omreleng userid.  Update that .profile.  Or you can update the global profile in /etc/profile (I believe)

I have just hardcoded the paths. I cannot seem to find the right place for it to work.

You can try putting the scripts in the /engine/bin directory.  That should be in the path.

Is there a reason that the UI would put extra double quotes around paths?
sshexec  -m "<IP_ADDRESS>" -port "22" -usr "xxxx" -pw 'xxxxx' "mkdir -p "C:/temp/deploy";cd "C:/temp/deploy";pwd"
I don't specify them in the base directory path???? I think this is what is messing up the UI call to sshexec.

Yes, I agree that UI is messing up the command.  I need to change the UI so you can specify Windows as the OS and sftp as the protocol making sure the slashes and quoting are correct.  Let me work on that.

ok. Thanks.

You may want to hold off on that. I just ran the sshexec command from the command line. The same one with all the extra double quotes and it worked fine. The script dealt with the extra quotes.
So now I don't really have any idea why the UI does not see this call as a successful one???

One thing I have noticed is that when I run the dmtransfer command from the command line, with the same syntax as the UI does, I see an extra debug line in the debug.out file.
protocol_cd(C:\temp\deploy)
myDir=[C:/temp/deploy]
cmd=[sshexec  -m "<IP_ADDRESS>" -port "22" -usr "xxx" -pw 'xxxx' "mkdir -p "C:/temp/deploy";cd "C:/temp/deploy";pwd"]
line=[C:\temp\deploy
]
I do not see this when it gets initiated from the UI.

Now I am getting into some weird results. Wondering if the ssh connections are having issues. None of my sshpass commands come back with anything. They complete but the result is "".
That is through the UI only. If I run them from the command line in either ksh or bash everything works fine?

Is the password being passed in from the UI?  Also, I don't think you can run sshpass by itself.

Yes the password is being sent in. I am able to run sshpass on it's own.

I think my problem is with the ssh daemon. I have 3 sshd tasks running and I think I should only have one.
We have seen this issue before where sshpass stops working for a while and then miraculously starts again at some point. Maybe a bug in Solaris' sshd and maybe some issue with sshpass where it is not catching an error correctly?

So the issue ended up being a bug I introduced in the script which I resolved. This does not seem to fix the UI integration issue but all of the commands that the UI is trying to do work from the command line. both the sshexec and dmtransfer commands.
It also still works for unix endpoints fine from the UI.
When I look at the debug.out log the only difference I see from the successful unix requests and the windows ones are that there are no 'line [ ]' debug line after the 'cmd' debug line.
I don't know what this means but I think I have taken it as far as I can.  Let me know how you want me to send the updated script file and if there is anything else I can do to help.


Something I noticed and a question to choose various merge options

Hello and thank you so much for the repo-sync. I wanted to point out something I noticed as though the app works absolutely fine, there was a situation when the force push would erase all the previous changes done in a private repository while syncing from the public repository. It would further erase the repo-sync.yml created in the private repo in the process and thus further jobs wouldn't be able to be done until you create it again in the workflows file.
I further wanted to as whether it would be possible to customize such that the repo-sync would have the option to create a pull request and choose from different merge options like 'merge' for example thereby keeping the changes.
This is what I am trying to imply; pull changes from the source repo and push to your repository with a merge rather than force. Much as rather what is offered in the pull app.
Thank you so much for the wonderful development!

Thanks @em108 for trying out repo-sync and pull app!
With the introduction to manual trigger workflow_dispatch, [I haven't tried it, but it looks like,] you should be able to create a new branch containing only the workflow then trigger it manually or create something that triggers it on a schedule.
For the second question, you can take a look at repo-sync/repo-sync and configure something similar. Basically breaking up your use case into 3 workflow actions.

use repo-sync/github-sync to fetch public repo's master to private repo's upstream branch.
use repo-sync/pull-request to create a pull request from upstream to master in private repo.
merge the pull request after it's created.

Please reply if you have any luck with using workflow_dispatch or have any other questions. Thanks!!


Don't close popup when drag ends outside popup

Logic ensures that popup doesn't close when a user does a mousedown inside the popup and the click is registered outside the popup.

Tagged as "v1.0.2". Thanks!


Introduce box object for collision logic

The box object is an attempt of creating an object which delimit
boundaries for players and enemies collision, it the future it can be
used to verify if a player has been collided to an object over the map.
Signed-off-by: Johnny Richard<EMAIL_ADDRESS>
I'm not sure if we should call it hitbox or something else to make the
intention clear. I'm open for suggestions.

i think maybe hitbox or collisionbox should be better to make clear what is the intention, box could be too generic. indeed box_draw make more unclear, i dont think this module should have a draw function. i think this is should be a debug functiolality, and maybe other module more especific for this should know how to draw this box.

@fabiomaciel  wrote:

i think maybe hitbox or collisionbox should be better to make clear what is
the intention, box could be too generic.

Sure. I will rename it to hitbox.

indeed box_draw make more unclear, i dont think this module should have a
draw function. i think this is should be a debug functiolality, and maybe
other module more especific for this should know how to draw this box.

Yep, the draw function I have introduced for debug proposes.
What do you think about adding a FIXME saying to remove it after implement
the collision logic?

What do you think about adding a FIXME saying to remove it after implement
the collision logic?

yeah, good idea

ping @fabiomaciel


Title bars need to show library names

In the rendered doc, the title bar currently shows py[Ansys] rather the names we are giving the DPF packages. Maybe they should eventually be PyDPF-Core and PyDPF-Post? If so, the doc will likely need to be updated to match. For now, perhaps they should just be DPF-Core and DPF Post.

Good point.  We can do this by configuring the theme of pyvista.  Before, this used rcParams, there's now a new theme class.  See Control Global and Local Plotting Themes - PyVista.

Hi @rlagha, is that still on the to-do list? The PyMAPDL doc does use the PyAnsys logo and not a specific PyMAPDL logo. Same for PyAEDT.
I think the politics on this went towards not using specific logos, so I will be closing this issue until further notice.


FR Translation & Correction for Tsukuyomi-ex

Hello,
I've corrected and added the missing translation.
I tested it, all is functionnal when game is set on French & Options.Language = 'fr' is present in user/raidboss.js.
This is the first time ever I'm using GitHub so if I made a mistake, just tell me.

Thanks a lot for this! This is a great first pull request.
Let me know if you need any help setting up a second pull request.  Sometimes it can be confusing how to keep local forks up to date.  I'm Paprika #0793 if you have any questions on that front.  :)

Thanks for your encouragement. I'll try do understand alone but if I'm stuck i'll contact you.
Btw Paprika #0793 is BNet battletag no ?

Sorry for not clarifying.  That's a discord account.


consistency check for number of tiles in restart file

It looks like MAPL reads restart files without error even if the restart files contain data for more than the expected number of tiles, which results in bad simulations.
A consistency check for the number of tiles in the restart file and the location stream is needed, preferably in the MAPL code that handles the reading of restarts.
@gmao-qliu has a GEOSldas simulation in the 36-km EASEv2 tile space that was inadvertently initialized from a restart file in the 9-km EASEv2 tile space.
cc: @weiyuan-jiang @gmao-qliu @biljanaorescanin

It would be addressed by https://github.com/GEOS-ESM/MAPL/pull/648

It is addressed by https://github.com/GEOS-ESM/MAPL/pull/655

It is addressed by https://github.com/GEOS-ESM/MAPL/pull/655

This was addressed in a modification to MAPL and will be used in GEOSldas when GEOSldas updates to a newer MAPL tag.

This was addressed in a modification to MAPL and will be used in GEOSldas when GEOSldas updates to a newer MAPL tag.


Ruby Speech sample and client library use "RAW" as an encoding instead of "LINEAR16"

There are many ways to encode files e.g., LINEAR16, Mulaw and then there are different file formats that encapsulate them e.g., RAW and WAV.
Both RAW and WAV can encapsulate both LINEAR16 and Mulaw.
For our server - we don't need to know the file format - we only need to know the encoding e.g., using the term RAW to specify an encoding is an error.

https://github.com/GoogleCloudPlatform/ruby-docs-samples/pull/168 addresses this.

Thanks @danaharon!
The :raw value used by the Ruby Speech client as an alias for LINEAR16.
:raw, :linear, and :linear16 are all acceptable values.
We will update the sample to use :linear16 for clarity and have started a thread on the Speech client library proposing the possible removal of :raw due to this confusion!

The change will also be made in the library, removing :raw altogether IIUC
https://github.com/GoogleCloudPlatform/google-cloud-ruby/pull/1428


HDF-only cluster creation fails on undefined hdp variable

Installing an HDF-only cluster with below variables on a static inventory:
cluster_name: 'TNGK2NiFiCluster'
ambari_version: '<IP_ADDRESS>'
hdf_version: '<IP_ADDRESS>'                                    # must be the 4-part full version number
hdf_build_number: 'auto'
repo_base_url: 'http://public-repo-1.hortonworks.com'
timezone: UTC
disable_firewall: yes
external_dns: yes
java: 'embedded'
database: 'postgres'
database_options:
  add_repo: yes
  external_hostname: ''
  ambari_db_name: ambari
  ambari_db_username: ambari
  ambari_db_password: "{{ default_password }}"
  rangeradmin_db_name: ranger
  rangeradmin_db_username: ranger
  rangeradmin_db_password: "{{ default_password }}"

security: 'none'
ranger_options:
  enable_plugins: yes

ranger_security_options:                                  # only used if RANGER_ADMIN is part of the blueprint stack
  ranger_admin_password: "{{ default_password }}"         # the password for the Ranger admin users (both admin and amb_ranger_admin)
  ranger_keyadmin_password: "{{ default_password }}"      # the password for the Ranger keyadmin user (will only be set in HDP3, in HDP2 it will remain the default keyadmin)
  kms_master_key_password: "{{ default_password }}"

ambari_admin_password: 'admin'                            # the password for the Ambari admin user
default_password: ''

nifi_security_options:
  encrypt_password: "{{ default_password }}"              # the password used to encrypt raw configuration values
  sensitive_props_key: "{{ default_password }}"

smartsense_security_options:
  admin_password: "{{ default_password }}"                # password for the Activity Explorer's Zeppelin admin user

logsearch_security_options:
  admin_password: "{{ default_password }}"

ambari_admin_user: 'admin'
ambari_admin_default_password: "{{ default_password }}"                    # no need to change this (unless the Ambari default changes)
config_recommendation_strategy: 'ALWAYS_APPLY_DONT_OVERRIDE_CUSTOM_VALUES'

wait: true                                                # wait for the cluster to finish installing
wait_timeout: 3600                                        # 60 minutes
accept_gpl: yes

cluster_template_file: 'cluster_template.j2'

blueprint_name: '{{ cluster_name }}_blueprint'                  # the name of the blueprint as it will be stored in Ambari
blueprint_file: 'blueprint_dynamic.j2'                          # the blueprint JSON file - 'blueprint_dynamic.j2' is a Jinja2 template that generates the required JSON
blueprint_dynamic:                                              # properties for the dynamic blueprint - these are only used by the 'blueprint_dynamic.j2' template to generate the JSON
  - host_group: "hdf-management"
    clients: ['ZOOKEEPER_CLIENT', 'INFRA_SOLR_CLIENT']
    services:
      - ZOOKEEPER_SERVER
      - AMBARI_SERVER
      - INFRA_SOLR
      - NIFI_REGISTRY_MASTER
      - RANGER_ADMIN
      - RANGER_USERSYNC
      - METRICS_COLLECTOR
      - METRICS_GRAFANA
      - METRICS_MONITOR
  - host_group: "hdf-worker-nozoo"
    clients: ['ZOOKEEPER_CLIENT', 'INFRA_SOLR_CLIENT']
    services:
      - NIFI_MASTER
      - SUPERVISOR
      - METRICS_MONITOR
  - host_group: "hdf-worker-zoo"
    clients: ['ZOOKEEPER_CLIENT', 'INFRA_SOLR_CLIENT']
    services:
      - ZOOKEEPER_SERVER
      - NIFI_MASTER
      - SUPERVISOR
      - METRICS_MONITOR
  - host_group: "hdf-zoo"
    clients: ['ZOOKEEPER_CLIENT', 'INFRA_SOLR_CLIENT']
    services:
      - ZOOKEEPER_SERVER

hdp_minor_version: "{{ hdp_version | regex_replace('.[0-9]+.[0-9]+[0-9_-]*$','') }}"
hdp_major_version: "{{ hdp_minor_version.split('.').0 }}"
hdf_minor_version: "{{ hdf_version | regex_replace('.[0-9]+.[0-9]+[0-9_-]*$','') }}"
hdf_major_version: "{{ hdf_minor_version.split('.').0 }}"
utils_version: "{{ '<IP_ADDRESS>' if hdp_minor_version is version_compare('2.5', '<') else ('<IP_ADDRESS>' if hdp_version is version_compare('2.6.4', '<') else '<IP_ADDRESS>' ) }}"
hdfs_ha_name: "{{ cluster_name | regex_replace('_','-') }}"

is_vm_docker_containers: 'no'

The installation fails on the following task:
TASK [Fail if the selected components should not be part of an HDP 3 blueprint] ********************************************************************************************************************************* fatal: [ambari01]: FAILED! => {"msg": "The conditional check 'install_hdp and hdp_major_version == '3' and item in blueprint_all_clients | union(blueprint_all_services)' failed. The error was: error while evaluating conditional (install_hdp and hdp_major_version == '3' and item in blueprint_all_clients | union(blueprint_all_services)): 'hdp_version' is undefined\n\nThe error appears to have been in '/vagrant/playbooks/check_dynamic_blueprint.yml': line 52, column 7, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n    - name: Fail if the selected components should not be part of an HDP 3 blueprint\n      ^ here\n"}
Setting a boolean value to the variable hdp_version does not resolve the issue.
What might me a suggested way to not install HDP?

Hi @vodwood fair enough :)
I didn't add variable definition checks for everything as I always tested with all of the variables set.
But I take the point, will add those checks.


Fixed reference to global variable.

@pbos @kwiberg
PTAL.
I'm sorry. I don't know how I missed this.

Yeah, it's almost like we need a test suite...


tweaks and fetures tabs clean up automation from inputXML.xaml

remove tweaks and feature items from inputXML.xaml file
add context and descriptions to tweaks.json and feature.json files
add type to items like button, toggle, combobox  to automate add to inputXML.xaml file
change the main.ps1 file to add not just application items but also tweaks and features to inputXML.xaml file
in application.json WPFInstallOPAutoClicker has a panel as 5, that is why the original version does not show it
my version will create 6th column just for that if you change it to 4 application tab will be reduced to 5 column

I'm getting this error when I load winutil from your fork
convertfrom-json : Invalid JSON primitive: .
At line:8058 char:6
+ }' | convertfrom-json
+      ~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [ConvertFrom-Json], ArgumentException
    + FullyQualifiedErrorId : System.ArgumentException,Microsoft.PowerShell.Commands.ConvertFromJsonCommand

convertfrom-json : Invalid JSON primitive: .
At line:10802 char:6                                                                                + }' | convertfrom-json                                                                                +      ~~~~~~~~~~~~~~~~                                                                                + CategoryInfo          : NotSpecified: (:) [ConvertFrom-Json], ArgumentException                                       + FullyQualifiedErrorId : System.ArgumentException,Microsoft.PowerShell.Commands.ConvertFromJsonCommand

Also did you have a chance test loading times? It loads much slower on my machine then the previous build.

I do not get any error. I even cloned my pr from https://github.com/ChrisTitusTech/winutil  and still no error. My loading times are ok. But I will close my pr and retest it again. Thanks for testing it.

@ogfrm keep up the good work, appreciate your contributions. Also, if you have the time could you look at incorporating my new code for Install Apps tab please? I just don't have the time to push it forward right now. Basically what it does it splits all the apps evenly betwen 5 columns to better utilize space. Look here for a demo: irm https://raw.githubusercontent.com/KonTy/winutil/test-2024-01-15/winutil.ps1 | iex
and code of interesting is ofcouse in teh main.ps1 when it seems you are familiar with but it is trivial, basically get total number of apps / 5 and as you add them to panels change panel number when you reach total/5 :-). Also doing this way we don't need panel number in the json anymore, since it is automatic
Thank you and keep up the good work, any contribution is very much appreciated.