feat: Send Welcome Mail

Send a welcome to owlly mail, if a user registers for newsletter .
If he provieds feedback, we would say thank you!
So we need two database triggers to create a new entry in the "mail" collection.
Change the mail at a later stage with a handlebar template. Manuel is designing a html email template.
Use this issue for handlebar templates..
#53

@peterpeterparker
This issue could be one for you if you have time!
in a very first phase, you can build a simple handlebar template described in issue #53

Are you not using a third party service to send newsletter?
If yes, then just set in the tool that an email should be sent.

No, for the moment, we would not use a third party e-mail  / newsletter service. we claim, to have "all" data in switzerland.

Do you really need this?
I mean on the clean side display an answer to the user like "cool thx" or "cool thx we will give back to you asap" and done.
It's not like they are creating a user account, they just registered themselves for a newsletter or have send a question, displaying a "success" msg on screen seems enough to me. Even ask my self if it is not the common behavior in terms of newsletter (?).
As for #54, I would suggest to spare time and money at least for  now  on  that one.

the deal would be, that we can send out the prototypes and forms or ask them to have a look at github
Prototyp
https://www.figma.com/proto/WJqZQe5tLoDJ0CLU1iQRNQ/PT_var1_v0.1_Komprimierte_Anweisungen_4M?node-id=17%3A2&scaling=min-zoom
Umfrage
https://wluzoohc.paperform.co/

"Error:<PHONE_NUMBER>5472:error:1408F10B:SSL routines:ssl3_get_record:wrong version number:../deps/openssl/openssl/ssl/record/ssl3_record.c:332: "

fixed:
https://github.com/firebase/extensions/issues/456


update the KEP !

@danwinship mentioned that we should update the KEP w/ as much details as possible about the current state

lets prioritze this at least for a week or so to get others up to speed


Storage - Enable updates for lifecycle

#943 Super basic update i did not write any test units but this i think solves the issue.
Many Thanks
Ben

I signed it! (Corp Not individual)

@googlebot check again please

@googlebot check again please
We were having a lot of issues with the corp CLA keeps saying we have signed but no luck i have signed as an individual for now to push through

so, possibly bad news. we don't accept pull requests (yet -- i'm working on it.)
@jba, want to review here and then we can move this over to Gerrit?

np let me know what i can do to help.

Hello! Friendly ping @benrowe1; is this still a change you're interested in?

This may have now been resolved. I have been moved project and am no longer directly working on this (internally). I will try to confirm if this is still an issue.

https://github.com/GoogleCloudPlatform/google-cloud-go/commit/96b442738d611f4bdcb5eba1325efa0820783bdd
Looks like the issue was resolved.

Great! Thanks :)


New version?

Hi today erro
window.Store.Wap.profilePicFind("49123456789@c.us").then(res => console.log(res));
VM1372:1 Uncaught TypeError: Cannot read property 'Wap' of undefined
at :1:14
(anonymous) @ VM1372:1

whatsapp changed their api. Store object not available now

As stated already in my first comment at #34, this project's purpose is not to document the WA Web JS console API, but the underlying websocket communication. For me, the Store object still exists, but I'm sure the change will be rolled out here in the next few hours/days as well.
Anyway, I think that WhatsApp has just changed the Store.Wap functions to be invisible and they still exist internally somewhere. If someone would like to find this out, I'd be happy to accept their contribution, otherwise I will close this issue.

Yes, I want to collaborate, any tips?

I think we must find similar code, like<EMAIL_ADDRESS>

@jhow2892 I guess you could look through the original WA Web JS source code (i.e. the app.js and app2.js files) and search for the desired function names (e.g. profilePicFind). Then set the appropriate breakpoints, trigger the event using the UI and eventually find the function's scope.

I have found the methods, I will analyze how to make the calls and if I can get post here

@sigalor This issue is not a discussion about this repository. but please keep this without closing. because of recent whatsapp changes we need to find a solution for it.
Anyone know how to get messages that receiving to web socket. I can view data through chrome developer tools. but I need to get that data to a function on an extension. Is it can do or not?

guys the Store method disappeared, follow image, I'm analyzing the js code to see how we can work around this problem

With React Developer Tools I was able to find the Store object. It's really hard to find it now. I guess WhatsApp made it private :(

Well, even if it is private, there has to be some scope where it's accessible, assuming it still exists in its old form somewhere. So one could just set a breakpoint there and assign it to window.Store by themselves.

How’d it going?

@rmanguinho it works?

@rmanguinho you mean the full Store object or some of its content? If you found the full objcet, can you share the way to find it?

Hi! Its really interesting if someone can find the way.
Thanks!

So I think I've found a solution. Execute the following command once in the console after the page has been loaded (any other call has no effect, as the module is loaded then and the (x, y, z) callback function is not executed anymore):
window.Store = {}; webpackJsonp([], { "dgfhfgbdeb": (x, y, z) => window.Store.Wap = z('"dgfhfgbdeb"') }, "dgfhfgbdeb");

Here, "dgfhfgbdeb" is the Webpack module that returns the definition of the Store.Wap object. This module name could change between builds, I'm at version 0.2.9547 right now. Does the command work for other people as well?

@sigalor
I am able to run this command! However I do not understanding how can I try command like below ?
Store.Wap.lastseenFind(91XXXXXXXXXX+ '@c.us').then(function(r){ console.log(r)})
Thanks

Maybe you shouldn't necessarily store a phone number as an integer...
Store.Wap.lastseenFind("91XXXXXXXXXX@c.us").then(function(r){ console.log(r)})

or
Store.Wap.lastseenFind("91XXXXXXXXXX@c.us").then(r => console.log(r))

if you fancy ES6 should work.

@sigalor I am trying my own number, XXXX is just for hide number here. Can You please help me to find last seen ?
Thanks

@sigalor It's working. Thanks. great work.
anyway, did't you found Store.Presence object?

@karopass
use the code that @sigalor mentioned.
Store.Wap.lastseenFind("91XXXXXXXXXX@c.us").then(r => console.log(r.t))
or
Store.Wap.lastseenFind("XXNUMBERXX"+"@c.us").then(r => console.log(r.t))
don't use number as Integer

window.Store = {}; webpackJsonp([], { "dgfhfgbdeb": (x, y, z) => window.Store.Wap = z('"dgfhfgbdeb"') }, z.lastseenFind(919409200000+"@c.us").then(r => console.log(r.t)));
I am confused in use it. @InfaSoftLanka How can I use it with code of @sigalor ?
Thanks a lot!

Some other interesting module names in version 0.2.9547:

window.Store.Conn: "jfefjijii"(but just use the ["default"] attribute from the callback result)
window.Store.Stream: "djddhaidag" (just the ["default"] attribute as well)
window.Store.Wap: "dgfhfgbdeb"
"bcihgfbdeb" seems interesting as well, and @InfaSoftLanka, it also contains a Presence attribute, but I don't really know what to do with it...

@sigalor !
Presence is for know number is currently online or offline!
We was using it like below
Store.Presence.find(919409200000+ '@c.us').then(function(r){ console.log(r)})
Can I know How can We use above code with Your found code bcihgfbdeb?
Thanks a lot!

@karopass Just use the same pattern:
webpackJsonp([], { "bcihgfbdeb": (x, y, z) => window.Store.Presence = z('"bcihgfbdeb"').Presence }, "bcihgfbdeb");

But the resulting object seems kind of useless to me. Is it really the same like before?

@sigalor
You are right! Its useless as before. Its not working after 1st May when WhatsApp have changed codes first time.
Thanks

@sigalor You are great! I am able to get last seen now.
Thanks a lot!

@karopass just copy & past it to console on whatsapp web. then press Enter to execute that command.
then you are done. don't think about that code. Store.Wap object is available now as old whatsapp web.
you can execute command as normal.
eg: Store.Wap.//any command//

@sigalor
window.Store.Presence is very important to me because some contacts hide their last seen.
so I can check online status with Presence object.
I know it's useless after change of whatsapp. online data can get only for 10 min after open chat for the contact on android app.
but I have running automated script on my old android phone. it will open chat window automatically for few contacts with last seen hidden.
@karopass **if you finding with 'Presence' object it's working only if you open chat window on your phone.(not on whatsapp web) - but after 10 min you need to re open chat window

@InfaSoftLanka Yeah its same condition as before two days. They have moved function which @sigalor have found. Store.Presence still not providing online/offline information which we are facing issues after 1st May.
Thanks

@karopass
Yes. still the same problem. we have to wait until whatsapp change their whatsapp web api to work alone.

@InfaSoftLanka I have found one android application which provide online/offline. It was working fine and was stopped working when WhatsApp have made this changes before day. Now its again running fine so I think there any hidden trick which We are missing.
Thanks

What's the name of that app? We could reverse engineer it.

@karopass what is the application

@coolnickname @InfaSoftLanka
Its called onLog and You can find it with below link.
Let me know if You can find anything via reverse engineering.
https://play.google.com/store/apps/details?id=com.trlog.onoff
Thanks

according to their reviews they could use whatsapp web for get online data. if yes, I think there is no hidden method on whatsapp web. because whatsapp web not using it to show person is online/offline on whatsapp web.
the only trick that I can guess is they can reverse engineer whatsapp android application and automatically subscribe for presence. I'm trying it also. but no luck with whatsapp official application. I'm trying with GBwhatsapp now.

Could someone of you please open a new issue for the presence problem with all the information gathered here already?
I assume the original issue regarding window.Store is more or less resolved?

amazing. DevTools shoutdown on WA page. They work fast)

@sigalor could you share the method you used to find those objects such as the one with "bcihgfbdeb"? I'm trying with React Developer Tools but I'm a little bit lost not having any experience with ReactJs. Any insight or hint would be really helpful. Thanks for your work!

@cprcrack Of course, it's really not that hard. Note that I'm just using the standard Chrome developer tools here; Chromium, Vivaldi etc. are using the same.
WhatsApp Web's JavaScript source code is organized into two files: app.js and app2.js. After pressing F12 to open the developer tools, click on the Sources tab, then onto app.***.js (where *** is a short hash code), then pretty-print this file using the two-brackets-icon in the bottom left corner. Do the same thing for app2.***.js. Note that you may have to wait a bit between actions, as the source files are very large and the CPU usage of your PC could go up a bit for a short amount of time.
First, consider the basic structure of the app.js source file. At the very top of it, the function webpackJsonp is called with three parameters:

[63] (not sure what that's for)
an object whose keys correspond to the internal names of all modules ever defined
['"caggjbieeb"'] (at the very bottom of app.js; obviously another module name, but not really sure about this one either; it isn't important right now anyway)

Next thing was that I was just looking for the Webpack module defining the window.Store.Wap object and I remembered that it had an attribute called profilePicFind. So I searched for that string in app.js and a fitting match defining this function turned up (all other matches are just calls of this function or for profilePicFindThumbFromPhone, which is irrelevant right now):
profilePicFind: function(e) {
    return j["default"].isServer(e) ? s["default"].resolve({}) : _["default"].sendEphemeral2({
        data: ["query", "ProfilePicThumb", e],
        retryOn5xx: !0
    })
}

Now scroll up from this position until you reach a line that is indented with just four spaces (which means that it's an attribute of the object of the second parameter to webpackJsonp). And, voilà, there it is:
'"dgfhfgbdeb"': function(e, t, n) {

This means that the module with the unique name dgfhfgbdeb is the one which constructs the Wap object (this final piece of information is not specifically mentioned anywhere, but you can assume it from the context). And, as stated before, this is the final solution.
The only remaining tricky thing about discovering the command in the comment above was to make webpackJsonp actually somehow return a reference to the return value of the module (and not just construct it), but I got it after a bit of fiddling around with it.

@sigalor awesome, thanks for sharing! Once we find a module, such as "bfhecaifff" for the Chat module, I've been experimenting on how to retrieve to a new StoreChat object following your method:
webpackJsonp([], { "bfhecaifff": (x, y, z) => window.StoreChat = z('"bfhecaifff"') }, "bfhecaifff");
and I realized that two of the module ids don't seem to be required, this is simpler and works as well:
webpackJsonp([], { "": (x, y, z) => window.StoreChat = z('"bfhecaifff"') }, "");
I've been searching for more info on the webpackJsonp() function in the webpack repository but couldn't find anything useful. @sigalor do you know how does this function work and why is your (x, y, z) callback called?

@cprcrack Great, thanks for finding this easier solution!
Regarding the webpackJsonp function, I have a few clues:

If you look at the progress.js original WA Web source file, you can see that it sets up/defines window.webpackJsonp. When looking at the pretty-printed version of this file, you can see that it's just dealing with arrays, objects and stuff, but here it's hard to understand, as all the variable names are just one letter long.
In the Webpack configuration documentation, output.jsonpFunction is set to "webpackJsonp" by default, as described here. A better description of the function's purpose can be found here. Apparently it's used for asynchronously loading various modules.

@coolnickname
Have you a good skill with reverse engineering.

@coolnickname
Yes I'm talking about android applications.
have you tried to decompile and recompile WA apk. it's not working after recompile because they are validating the apk signature.
I have found few methods that they are getting apk signatures. But not undrstand how to bypass it. It could be done because GB-WA have bypassed it.
also I tried with GB-WA add some of my methods to code. It's working fine. but there is some network issues with GB-WA.
I appreciate if you can try to decompile and recompile WA apk.

@coolnickname @InfaSoftLanka, I have modified the original WhatsApp APK, recompiled and successfully executed it on my Android 8.0 device before and I would like to publish this information.
Could someone of you open a new issue to collect all information previously discussed about the topic in this thread?

@sigalor @cprcrack @infahash
Can we learn the offline , offline status a non-registered number?
Is there any way?

@sigalor  @cprcrack Thanks for the great work.  @cprcrack, in above comment, you have mentioned the method for chat module.  But I am not able to send the message like I used to send in the previous version. Previously I used: Store.Chat.get(<tid>).sendMessage(<messageObj>).  But now I couldn't find

the sendMessage method.
All the chats/conversations to find the unread messages.
Can you guys please help here?
Thanks!

For whatsapp web, open javascript console and paste my code:
!function(){for(var t of document.getElementsByTagName("script"))t.src.indexOf("/app.")>0&&fetch(t.src,{method:"get"}).then(function(t){return t.text().then(function(t){var e=t.indexOf('var a={};t["default"]')-89;window.ZStore=window.webpackJsonp([],null,JSON.stringify(t.substr(e,10))).default})})}();
Window.ZStore will contain the Store object, whatever the name.

For whatsapp web, open javascript console and paste my code:
!function(){for(var t of document.getElementsByTagName("script"))t.src.indexOf("/app.")>0&&fetch(t.src,{method:"get"}).then(function(t){return t.text().then(function(t){var e=t.indexOf('var a={};t["default"]')-89;window.ZStore=window.webpackJsonp([],null,JSON.stringify(t.substr(e,10))).default})})}();
Window.ZStore will contain the Store object, whatever the name.

Thanks @Zibri

You're welcome.
https://github.com/Zibri/WhatsAppWebApi/blob/master/zstore.js

@func0207 @Zibri I'm also trying to get the online status and saw you mention the xstore script. When you run this script on WhatsApp, can you still call Store.Presence.find for example? Or do you have to call something like Zstore.Presence.find?
They've really made it more difficult and I'm trying to understand more about what I need to change in one of my scripts.

it's not difficult at all.. :D
Object.getOwnPropertyNames(ZStore.Presence._index).forEach((a) => {
if (typeof ZStore.Presence._index[a].__x_chatstate != "undefined") if (ZStore.Presence._index[a].__x_chatstate.__x_type=="available") console.log(a)
})

even if I think there is a better way, this works.

Very simple indeed:
Store.Presence.filter(a=>a.__x_chatstate.__x_type=="available")
Returns online contacts :D

hi @Zibri  can I know if a number is online or not without being on my contacts list or previous chat ?

Hi @Zibri is it possible to use store object to add new contacts?

ZStore.Contact.add

@Zibri i understand its Contact.add but thats a function that recieve 2 param, can you help me with an example ? Is the function recieve for instance ("name","phoneNum") ?
the goal is to add a contact to my list so i can search his Presence or status.
does adding the contact will allow me to search for him ?
is there anything else you can do in order to search for someone who is not in your contact list?
I really appreciate your help

@Zibri
I tried to duplicate an existing contact from my phone to an temp var and then start to change his info by that i mean the phone number and name, and then use the Contact.add function to add it but with no success.
Can you please give me an explanation or example for how you should add new contact ?

@JackieMond
Learn to reverse angineer... that's how we learn things.
Hint: the browser "monitor" command could be useful.

@Zibri thanks for the monitor lesson i'm still new to this and its super interesting.
I managed to invoke all kind of functions, all of them receiving<EMAIL_ADDRESS>or<EMAIL_ADDRESS>but i didn't manage to invoke Store.Contact.add or any other function that receiving an Object as a parameter.
I would be really appreciate if you could help me create new contact.

hi @JackieMond  can u tell me how can u did that
whats is monitor  & how to use it

https://developers.google.com/web/tools/chrome-devtools/console/api

@Zibri thanks for the monitor lesson i'm still new to this and its super interesting.
I managed to invoke all kind of functions, all of them receiving<EMAIL_ADDRESS>or<EMAIL_ADDRESS>but i didn't manage to invoke Store.Contact.add or any other function that receiving an Object as a parameter
I would be really appreciate if you could help me create new contact.
**Update
when i managed to invoked Store.Contact.add i received this:
function value called with arguments: [object Object], [object Object]
how to i understand the structure of the objects ?

Just create a wrapper function around it.

Example:
    var sendorig = Store.Msg.send;

    (function() {
        Store.Msg.send = function() {
            var args = [].splice.call(arguments, 0);
            console.log('Store.Msg.send (', args, ')');
            return sendorig.apply(Store.Msg, args);
        }
    }
    )();

@Zibri after 1 month of research i still did not manage to create new contact :(
I managed to duplicate and many other things but to find the builder and create new contact no.
I learned a lot and i found the ability to put breakpoints and see the parameters in all kind of terms and functions but my goal is still not reached.
Please help me zibri :(
What is the right command that will allow me to add new contact, and much more important than that what is the parameter it accepts.

sincerely I didn't check but contacts are made on the PHONE.. and then transmitted to the web client...
what you should do is to add a contact on the phone while monitoring the web app to understand that.

Dear all, I noticed Store object is not obtainable anymore (with methods described above) since 2 days ago when my WA Web was updated to version 0.3.3321.

Hi,
webpackJsonp([], {"bcihgfbdeb": (x, y, z) => window.Store = z('"bcihgfbdeb"')}, "bcihgfbdeb")
does not work anymore with new WA Web version.
window.Store.Chat: Uncaught TypeError: Cannot read property 'Chat' of undefined
Is there any solution?

Solution based on https://gist.github.com/phpRajat/a6422922efae32914f4dbd1082f3f412
function getAllModules() {
return new Promise((resolve) => {
const id = .uniqueId("fakeModule");
window["webpackJsonp"](
[],
{
[id]: function(module, exports, webpack_require) {
resolve(webpack_require.c);
}
},
[id]
);
});
}
modules = getAllModules()._value;
for (var key in modules) {
if (modules[key].exports) {
if (modules[key].exports.default) {
if (modules[key].exports.default.Chat) {
console.log(modules[key]);
_module = modules[key];
}
}
}
}
window.Store = _module.exports.default;

Solution based on https://gist.github.com/phpRajat/a6422922efae32914f4dbd1082f3f412
function getAllModules() {
  return new Promise((resolve) => {
      const id = _.uniqueId("fakeModule_");
      window["webpackJsonp"](
          [],
          {
              [id]: function(module, exports, __webpack_require__) {
                  resolve(__webpack_require__.c);
              }
          },
          [id]
      );
  });
}

modules = getAllModules()._value;

for (var key in modules) {
  if (modules[key].exports) {
    if (modules[key].exports.default) {
      if (modules[key].exports.default.Chat) {
        console.log(modules[key]);
        _module = modules[key];
      }
    }
  }
}

window.Store = _module.exports.default;

Hello, a question how can I send a message to a contact?

Hello, a question how can I send a message to a contact?

Check this link:
https://gist.github.com/phpRajat/a6422922efae32914f4dbd1082f3f412

not able to get the store https://lh3.googleusercontent.com/-6RYTvxsiUSk/XoGIJkT2gzI/AAAAAAAAB8o/50svvpYX8u4T4VGXMb7In6Cuyhkj-cYnACK8BGAsYHg/s0/2020-03-29.png
getting this issue

how it works now?

The solution proposed by previous posters in 2019 doesn't work anymore, as webpackJsonp in 2020 now has a different structure. I'm trying to reverse-engineer app.js / app2.js but I'm a bit stuck. Currently this is what I've done :
webpackJsonp.forEach(el => console.log(JSON.stringify(Object.keys(el[1])) ))

This will show all the keys available inside webpackJsonp. Then I download app..js and app2..js, format them with prettier --write *.js and open them with vscode. I try to find corresponding keys between the files and the output of my code but 80% of the keys don't exist.
Help!

Store not returning chat.models if any solution please share

The solution proposed by previous posters in 2019 doesn't work anymore, as webpackJsonp in 2020 now has a different structure. I'm trying to reverse-engineer app.js / app2.js but I'm a bit stuck. Currently this is what I've done :
webpackJsonp.forEach(el => console.log(JSON.stringify(Object.keys(el[1])) ))

This will output in the console all the keys available inside webpackJsonp.
Then I download app..js and app2..js, format them with prettier --write *.js and open them with vscode. I try to find corresponding keys between the files and the output of my code but 80% of the keys don't correspond with the keys previously outputted in the console. For example, profilePicFind has key begfaahgdb in app.js, but this key doesn't appear in the console output.
I'm kind of stuck, will update if I find a solution.

Any Update ?

Oh yeah actually there was already a solution online. Check this repo + this PR : https://github.com/mukulhase/WebWhatsapp-Wrapper/pull/888/files

socket

@sigalor This issue is not a discussion about this repository. but please keep this without closing. because of recent whatsapp changes we need to find a solution for it.
Anyone know how to get messages that receiving to web socket. I can view data through chrome developer tools. but I need to get that data to a function on an extension. Is it can do or not?
EDIT : I found one thing. If I open chat window for a contact on android (not on whatsapp web), whatsapp subscribe that presence update for 10 min. also whatsapp web receiving a message when presence available/unavailable. so I created a uiautomation script to run on my old android phone, It automatically open chat screen for few contacts that I need to track. so I need to know is it possible to call my own function on websocket get message.

@sigalor This issue is not a discussion about this repository. but please keep this without closing. because of recent whatsapp changes we need to find a solution for it.
Anyone know how to get messages that receiving to web socket. I can view data through chrome developer tools. but I need to get that data to a function on an extension. Is it can do or not?
EDIT : I found one thing. If I open chat window for a contact on android (not on whatsapp web), whatsapp subscribe that presence update for 10 min. also whatsapp web receiving a message when presence available/unavailable. so I created a uiautomation script to run on my old android phone, It automatically open chat screen for few contacts that I need to track. so I need to know is it possible to call my own function on websocket get message.

Have you found a solution for accessing the websocket directly?

I have seen the interception code and it works for most of the exposed modules but I would like to know how to find the modules. Although a significant amount of functions can be listed, I would like, for example, to find the function that allows you to change the theme from light to dark.

New solution to missing window.Store:

Run the hole script in console: https://github.com/pedroslopez/moduleRaid/blob/master/moduleraid.js

the function moduleRaid will be globally available

Copy from line 7 to 34 from this script into console: https://github.com/pedroslopez/whatsapp-web.js/blob/master/src/util/Injected.js

those lines will use moduleRaid to find those webpack objects. For example I ran as follows:

window.mR = moduleRaid();
window.Store = window.mR.findModule('Chat')[0].default;
window.Store.Wap = window.mR.findModule('Wap')[0].default;

@asm95 Thank you very much, this will help me a lot to finish my chrome extensions

@geanrt current not work ?


lip_mpv_dataset as training dataset pre-processing

"The LIP dataset(Image-based Multi-pose Virtual Try On) was used to train the model."
This dataset comes as:
"lip_mpv_dataset" folder within:
"all_poseA_poseB_clothes.txt"   (rows with 4 columns<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>"train")
"MPV_192_256" a folder with subfolders:
"0VB21E007"
"1FI21D003"
..
each subfolder has several images of a model wearing the clothing and an image of just the clothing article.

main.py
--data_directory parameter in main.py defaults to:
'/media/tensor/EXTDRIVE/projects/virtual-try-on/dataset/lip_mpv_dataset/'

train.py
tries to load a pickle file that doesn't exist in the project:
data_path + "lip_pairs.pkl

dataloader.py tries to load:
images from several folders:
self.path + "lip_images/"
self.path + "lip_dense/"
self.path + "lip_textures/"
self.path + "lip_apparels/"

It's clear that you did some pre-processing on the lip_mpv_dataset, stored an index in the pickle file and the results in the mentioned folders (dataloader.py)
Can you provide the tools for this pre-processing?
or at minimum describe what the outputs should contain..
for example "lip_dense" would be the DensePose of the input image from "lip_images", but what is the "lip_textures" and "lip_apparels"?

Hi @deeppppp , as you have mentioned lip_dense is nothing but DensePose information.
lip_textures is the texture image of the person, acquired using the DensePose information.
lip_apparels is the product image, whose name is something like this<EMAIL_ADDRESS>from the dataset.
Hope that answers your question!

Hi @deeppppp , as you have mentioned lip_dense is nothing but DensePose information.
lip_textures is the texture image of the person, acquired using the DensePose information.
lip_apparels is the product image, whose name is something like this<EMAIL_ADDRESS>from the dataset.
Hope that answers your question!

Thank you for the quick reply, and happy New Year.
"lip_textures is acquired from DensePose information" is still unclear.
DensePose textures are in Atlas form (24 parts), while you seem to work with the SMPL (Normal) texture form, looking at the Paper at http://gvv.mpi-inf.mpg.de/projects/NHRR/data/1415.pdf
Do you convert the Atlas textures to Normal form via a tool like UVTextureConverter?
https://github.com/facebookresearch/DensePose/issues/68
https://github.com/kuboshizuma/UVTextureConverter/blob/master/notebook/convert_texture_between_normal_and_altas.ipynb

Thank you for the quick reply, and happy New Year.
"lip_textures is acquired from DensePose information" is still unclear.
DensePose textures are in Atlas form (24 parts), while you seem to work with the SMPL (Normal) texture form, looking at the Paper at http://gvv.mpi-inf.mpg.de/projects/NHRR/data/1415.pdf
Do you convert the Atlas textures to Normal form via a tool like UVTextureConverter?
https://github.com/facebookresearch/DensePose/issues/68
https://github.com/kuboshizuma/UVTextureConverter/blob/master/notebook/convert_texture_between_normal_and_altas.ipynb

additional question on the textures, what dimensions are they?
I assume they are 256x256 with the dataset input images at 192x256
is that correct?

additional question on the textures, what dimensions are they?
I assume they are 256x256 with the dataset input images at 192x256
is that correct?

Thank you, and Happy New Year :)

Thank you, and Happy New Year :)

Can you explain why lip_apparels is included in the dataset / training?
I don't see it being used in the architecture from the paper:
http://gvv.mpi-inf.mpg.de/projects/NHRR/data/1415.pdf

Can you explain why lip_apparels is included in the dataset / training?
I don't see it being used in the architecture from the paper:
http://gvv.mpi-inf.mpg.de/projects/NHRR/data/1415.pdf


Get the code compiling with Swift 2.0 (Xcode 7.0 beta 5)

The code wasn't compiling on the latest Xcode beta, so I went through all the errors and fixed them. Note that I have never worked with Swift before and mostly accepted the suggestions that Xcode had about adding "!" or "?". Some things I read about though, like how enumerate() and count() has moved to String methods instead of being separate functions. All changes are pretty straightforward though.

Merged later Swift fixes.


Increase in timeouts in requests to Photon on thumbnail route

Sentry link

https://openverse.sentry.io/share/issue/f75ef09673f04c86a7ba2c358be36f78/
Description

Over the last 4 days we've gone from 0 timeouts on requests to Photon to 344. I'm reaching out to the folks that run Photon to see if they can identify the issue.
It appears to affect many providers. I extracted the IDs from the thumbnail requests that had a timeout and pulled the provider for those results:
+-----------------+
| provider        |
|-----------------|
| digitaltmuseum  |
| europeana       |
| finnishmuseums  |
| flickr          |
| geographorguk   |
| met             |
| museumsvictoria |
| nappy           |
| rawpixel        |
| rijksmuseum     |
| smk             |
| svgsilh         |
| wikimedia       |
+-----------------+

I can retrieve the upstream images just fine for the ones I tried, I suspect it is a genuine timeout. I'm in Australia, so everything on the internet is inherently slower for me, but it did take some time to retrieve some of the results I tried to hit directly, though not all.
This is reproducible: https://api.openverse.engineering/v1/images/db4e4787-5893-44cf-ae3f-b193aff4d0d5/ consistently returns a 429 reporting a timeout with Photon.
Additional context
I've marked this as high rather than critical because while it is consistent, it's still a relatively small number of requests that fail (less than 400 in 24 hours, so far).

In the meantime we can mitigate this by increasing our timeout in photon.py, though I'm not sure to what exactly.

Another issue in Sentry that seems related: https://openverse.sentry.io/share/issue/92651a89547f4e48896a9d9b25737b6f/

This should be resolved by #2426


Feature Suggestion: support Twirl templates in Ammonite scripts

We often find ourselves using ammonite scripts to generate ad-hoc text. While it's doable using string interpolation, it would be very nice and powerful if it was possible to embed Twirl templates in a script.
Since ammonite already supports multi-stage compilation using @ delimiter, I think this would fit into existing flow nicely - @twirl or something could be used to designate next block as Twirl template.
Thoughts? How difficult would be something like this to implement?

This is probably out of scope for Ammonite, but you can probably implement this yourself using a macro string inteprolator

@uosis what kinds of text, HTML? Try scalatags for rendering raw HTML, or Hepek (grids, code highlight, Fontawesome, math, etc.) for more advanced stuff.

@sake92 thanks for the suggestions!
It's mostly random config files and such which don't have builders for them though, so we are stuck with text templates.


Stickler-ci

The last time stickler had a look at our PRs is 8 days ago (https://github.com/pydata/xarray/pull/2415) : https://stickler-ci.com/repositories/26661-pydata-xarray
It looks like their bot is broken: https://github.com/stickler-ci
This is not very trustworthy - we could consider switching to https://pep8speaks.com/ maybe

I set up pep8speaks.
It is now working for every new PR, without merging #2462.
See settings > Integrations and Services
https://github.com/pydata/xarray/settings/installations
I am not yet sure whether it matches to our requirement. Let's see how well it works for a few weeks :)

Weirdly, it's still working on pandas-gbq fine: https://github.com/pydata/pandas-gbq/pull/225


Update README.md

added a word for better clarity to a sentence.
Checklist:

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the main branch of freeCodeCamp.
[x] I have tested these changes either locally on my machine, or GitPod.

Closes #XXXXX

checked

Hey @Santigio
Thank you for opening this pull request.
This is a standard message notifying you that we've reviewed your pull request and have decided not to merge it. We would welcome future pull requests from you.
Thank you and happy coding.


Multiple-inputs test case macro

Hello.
I've started to use Catch lately and came up with an idea of some useful test case macroses. Something similiar to GoogleTest value-parameterized tests, but much more lightweight (as Catch is, compared to GoogleTest, too).
These macros can be used to declare test cases, which should be run multiple times - once per each item of some input array (or two arrays in an all matches combination).
To allow something like that:
struct TokenCase {
  std::string input;
  Token::Type type;
};

static const TokenCase NUMBER_TOKEN_CASES[] = {
  { "0x123", Token::NUMBER },
  { "0b101", Token::NUMBER },
  { "0o723", Token::NUMBER },
  { "0123", Token::NUMBER },
  { "123", Token::NUMBER },
};

// Variable test_case should be available within test case scope from the 1D macro expansion.
TESTCASE_1D("Numbers lexing", "[lexer]", NUMBER_TOKEN_CASES) {
  // To provide more info on this case on failed assertion.
  INFO("Testing: " << test_case.input);

  // Some sample code to use a test case value.
  Lexer lexer(test_case.input);
  lexer.next();

  REQUIRE(lexer.current().type == test_case.type);
}

I've already implemented this and can work up on the docs (also, on any changes/imporevements yoi can think of) and make a pull request if you are interested.
References:

http://www.nunit.org/index.php?p=testCase&r=2.6.3
https://code.google.com/p/googletest/wiki/AdvancedGuide#Value_Parameterized_Tests

I'm closing this issue in favour of a dedicated generators/ property based testing ticket, #850.
Be sure to watch that issue for notifications if you're interested,


Add HotKeys Page to DevTools

What does the pull request do?
Fixes #15390
Adds a HotKey page because there's no in-app discoverability of DevTools hotkeys. Otherwise, the user must check docs.
What is the updated/expected behavior with this PR?

Simple display of hotkeys, no mutability. Does not display the launch hotkey as that is mutable via DevToolOptions and would require some wiring. If the user doesn't know that hotkey, then how are they in DevTools to begin with?
Very recently, the "Styles" snapshot action was modified to "Value Frames". I reflect this in the hotkey descriptions, but other places still use Styles, including the DevTools docs page.
How was the solution implemented (if it's not obvious)?
Adds an invisible TabStripItem for the HotKeys page to avoid visual crowding and avoid adding more complex navigation.
Checklist

[ ] Added unit tests (if possible)?
[ ] Added XML documentation to any related classes?
[ ] Consider submitting a PR to https://github.com/AvaloniaUI/avalonia-docs with user documentation

0761e382ba36af98826f04f96767a9f33b3386fb introduces HotKeyConfiguration to hold KeyGestures as named members. It doesn't include DevToolsOptions.Gesture which launches DevTools as moving that is a breaking change.
I added HotKeyConfiguration to DevToolsOptions, use it to detect keypresses in MainView, moved the functionality into separate methods, and wire it into HotKeyPageViewModel. I can still list the launch DevTools gesture from there.
It's much closer to mutability, but kept it internal so any implementer could revise. This PR doesn't support multiple gestures that can each launch the same action. Chrome DevTools has this.

possible enhanced
public enum HotKeyFunction
{
    [Description("Launch DevTools")]
    LaunchDevTools,
    [Description("Inspect Control Under Pointer")]
    InspectHoveredControl,
    [Description("Freeze Value Frames")]
    FramesFreeze,
    [Description("Unfreeze Value Frames")]
    FramesUnfreeze,
    [Description("Toggle Popup Freeze")]
    TogglePopupFreeze,
    [Description("Screenshot Selected Control")]
    ScreenshotSelectedControl
}

public class DevToolsOptions
{
    private readonly static KeyGesture DefaultLaunchDevToolsGesture = new(Key.F12);
    private readonly Dictionary<HotKeyFunction, KeyGesture> _hotkeyConfig = new()
    {
        {HotKeyFunction.LaunchDevTools,new(Key.F12) },
        {HotKeyFunction.InspectHoveredControl,new(Key.None, KeyModifiers.Shift | KeyModifiers.Control) },
        {HotKeyFunction.FramesFreeze,new(Key.S, KeyModifiers.Alt) },
        {HotKeyFunction.FramesUnfreeze,new(Key.D, KeyModifiers.Alt) },
        {HotKeyFunction.TogglePopupFreeze,new(Key.F, KeyModifiers.Alt | KeyModifiers.Control) },
        {HotKeyFunction.ScreenshotSelectedControl,new(Key.F8) },
    };

    /// <summary>
    /// Gets or sets the key gesture used to open DevTools.
    /// </summary>
    public KeyGesture Gesture
    {
        get => _hotkeyConfig.TryGetValue(HotKeyFunction.LaunchDevTools, out var gesture)
            ? gesture
            : DefaultLaunchDevToolsGesture;
        set => _hotkeyConfig[HotKeyFunction.LaunchDevTools] = value;
    }

    public IReadOnlyDictionary<HotKeyFunction, KeyGesture> HotKeyConfig
    {
        get => _hotkeyConfig;
        init
        {
            // Merge
            foreach (var kvp in value)
            {
                _hotkeyConfig[kvp.Key] = kvp.Value;
            }
        }
    }
...

}

using like:
var options = new DevToolsOptions()
{
    HotKeyConfig = new Dictionary<HotKeyFunction, KeyGesture>
    {
        { HotKeyFunction.LaunchDevTools , new(Key.F24) },
        { HotKeyFunction.InspectHoveredControl, new(Key.None, KeyModifiers.Shift | KeyModifiers.Control) },
    },
};

We probably won't have this much of hotkeys to justify a dictionary. A class looks more than enough here.
Either way, it can be changed later while it's internal.


Speed up zip builder development iteration

Doing the full pod install can take a long time especially with a slow network.
This speeds up a Firebase build by three minutes on a fast connection and much more on a slow one.
#no-changelog

Hmm, that would be an issue.
We're not running with  -updatePodRepo false on respins are we?  We could have two separate options, but that seems like overkill for managing different pod installation states.
My preference is one option that toggles between assuming everything needs to be regenned or nothing does.

Actually that may have only been before we were building on Kokoro, since Kokoro is a blank state each run. I'm good to change it in that case!


Split Travis build into stages

Linting first, then build and deploy. To speedup dev cycle.
See example https://travis-ci.com/yakshaveinc/travis/builds/123545465

Splitting builds into separate jobs appeared sufficient for now.
b905b9f0e2dee90a2619765d53733025768d252f


Bump nodes version to 16, 18, & 20 in ci.

@aljones15 README needs to be updated too.

Codecov Report

Merging #161 (2c375d2) into main (d491d91) will decrease coverage by 0.22%.
Report is 22 commits behind head on main.
The diff coverage is 78.72%.

:exclamation: Current head 2c375d2 differs from pull request most recent head 4db7ff1. Consider uploading reports for the commit 4db7ff1 to get more accurate results

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #161      +/-   ##
==========================================
- Coverage   87.27%   87.05%   -0.22%
==========================================
  Files           4        4
  Lines         770      811      +41
==========================================
+ Hits          672      706      +34
- Misses         98      105       +7

Files
Coverage Δ

lib/index.js
87.19% <78.72%> (-0.27%)
:arrow_down:

Continue to review full report in Codecov by Sentry.

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

@aljones15 README needs to be updated too.

https://github.com/digitalbazaar/vc/pull/161/commits/2c375d2bfd9c67618df565b11b35f635c3f5754d
README updated there

closing in favor of: https://github.com/digitalbazaar/vc/pull/164


Add a changelog

Is there any chance we can get a changelog? You've bumped the version up to 0.4, it's interesting to read what has changed between the versions.

Definitely something to add.
The 0.4.0 version added option groups support as stated in the README.

http://keepachangelog.com has some awesome guidelines/templates for more standardised changelogs.


Advanced Mop is now More Advanced + SolutionPurge Component

About the PR

Janitors rejoice, the purple mop is actually useful!
The Advanced Mop now automatically purges dirty reagents (10u/sec), and automatically generates fresh mopping water! (5u/sec).
SolutionPurge component and system written by my friend @Arimah, with love and care. Direct questions to her if you have any about the system!
Media

https://user-images.githubusercontent.com/33369477/233070919-59c86358-ed9b-4654-a54c-2893d7ef778e.mp4

[X] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog

:cl:

tweak: Centcomm has actually TURNED ON the motors of the Advanced Mop, allowing it to actually be an upgrade Janitors will want!

first changelog is not playerfacing

Some of the code formatting in SolutionPurgeSystem is incorrect. You can blame that on me being used to different rules. @Endecc will push an update once he is available.

wow you beat me to this, thanks!
Also emo had a comment in my PR that price is too low, it should take 400 plastic

wow you beat me to this, thanks! Also emo had a comment in my PR that price is too low, it should take 400 plastic #14917 (comment)

I can see people wanting to duel wield it, so making that costly sounds like a good tradeoff. Makes sense to me!

It seems like ubuntu is exploding so I'll just pray to space jesus that it still works anyway, because I only literally only changed the plastic cost between it succeeding and it failing


Check your pull requests

I fixed your site.

Hey Max. Which site did you fix. This one has no pull requests

The one with all of the links (the example one). I can send the code if you want. I also was working on the tinyML one. Did a pull for the one with links.

On Jul 26, 2023, at 4:38 PM, Jeremy Ellis @.***> wrote:
Hey Max. Which site did you fix. This one has no pull requests
—
Reply to this email directly, view it on GitHub https://github.com/hpssjellis/visst2023/issues/4#issuecomment-1652686394, or unsubscribe https://github.com/notifications/unsubscribe-auth/A75OMXL5CLIRCIIQLFZSUTTXSGS5TANCNFSM6AAAAAA2Y3EZTU.
You are receiving this because you authored the thread.


ceph-ansible documentation: purpose missing

Looking at https://docs.ceph.com/ceph-ansible/master/
All it says as a summary is,
"ceph-ansible¶
Ansible playbooks for Ceph, the distributed filesystem."
Some people are used to using ansible as a touch-up system, to bring existing hosts in line. So they may expect running ceph-ansible to be safe to run on existing configs.
If ceph-ansible is purposed ONLY for from-scratch cluster configuration, it would be nice to warn people up front, by stating that at the top of the docs
If on the other hand, ceph-ansible is meant for both initial cluster configuration, AND adding additional systems into an existing cluster... it would be nice to see more explicit docs on how to use this safe mode.
(and warnings at the top, "go use safe mode if you have an existing cluster")
So far, my experience has been that by default, ceph-ansible completely blows away all existing OSD and recreates from scratch. and actually, the entire ceph.conf file, basically.
I haven't found a way to usefully change that yet.
(I've tried tinkering a little with the generate_fsid and fsid values, to attempt to incrementally add in new features to my experimental cluster, but no luck. So far, either it does nothing, or it blows everything away. I havent found a middle way yet)
(Edit: hmm. previously, I noticed it calling "ceph-volume lvm zap" on every run. but now it's not doing that. for some reason.)

More details, going from memory: in my "messes up my configuration" times, it kept regenerating fsid.
The fetch directory kept getting new config files with a new fsid.
Expected behaviour to me, would be "is there an fsid in /etc/cep/ceph.conf already? if so then use it".
but it wasnt.

More details, going from memory: in my "messes up my configuration" times, it kept regenerating fsid.
The fetch directory kept getting new config files with a new fsid.

Are you using generate_fsid: true ? if yes then that's expected.

I took the comments to mean "generate an fsid if one is missing".
not "make a new one every time, reguardless".
If that is its expected behaviour, then some more detailed comments would be nice. both for
"This is what it actually DOES", and
"This is why you would ever want to turn this thing on".
Personally, I am having difficulty understanding why someone would ever deliberately do that.

I took the comments to mean "generate an fsid if one is missing". not "make a new one every time, reguardless".

That's it. In fact the fsid is only generated if there's no ceph cluster up & running otherwise the fsid value will be read from the current cluster (not from the ceph.conf file but from the ceph status).
If it's not what you can see then we need to understand why so please share the logs and configuration files.

Aha.
That's it. In fact the fsid is only generated if there's no ceph cluster up & running otherwise the fsid value will be read from the current cluster (not from the ceph.conf file but from the ceph status).
Can I suggest that you add in a check for "if there's an fsid in ceph.conf, dont mess with it" reguardless of whether you can talk to the running cluster ?
I suspect that may be what was happening.
consider the case where a new ceph admin such as myself may have gotten a very bare-bones ceph cluster running... but then temporarily screwed up auth or something.
in those cases, really not a good idea to generate a whole new fsid and config, just because you cant talk to a running cluster.


Display default API info

API and UI for displaying public Auth token and master.
API might be done already, as a consequence of the table_permissions_from_database thingy.

The API is there, but we must review if we are providing too much information. In particular:

We show all permissions: ["update", "select", "trigger", "references", "truncate", "delete", "insert"]. We may want to restrict to the ones actually supported by the API (CRUD-like)
We show all granted tables, including system tables or analysis caches, which we may want to hide from output.

cc @enekid to discuss

My two cents:

I'd restrict to the ones actually supported by the API ([select, update, delete, insert])

+1000

We show all granted tables, including system tables or analysis caches, which we may want to hide from output. Related with #13529.

Regarding analysis cache and system tables, we must hide all of them.

The database grants output from master keys is long (all tables) and pretty meaningless (list of everything, with all permissions). Maybe we could skip it. This also solves the previous problem.

Totally agree, we want to skip it.

regular keys include the explicit grants plus everything in the public key. We may want to only show the explicit grants? (It's easy enough)

I understand regular api-key as something between default_public and master, so I'd show the explicit grants only.

The list from default keys just lists all public objects in the database. This may be alright (but we might want to have an empty list for consistency if we do the previous change to regular keys?)

If we go with showing only explicit grants of regular api-keys then, to be consistent, we won't want to show all public objects.

Regular: show explicit grants.
Default: a message to indicate that it has read-only perms of all public objects.

Regular: show explicit grants.
Default: a message to indicate that it has read-only perms of all public objects.

+1. There is something to be said about displaying all permission an API Key has, but on the other hand, having different results in the response than you requested is confusing. Both ideas have their merits, but I'm also leaning towards hiding the implicit grants, to avoid surprises (it's also easier, so there's that, hehe).
You proposed adding a message explaining the situation, not sure if you were referring to add that in the API output. I would not do that, and instead explain the expected behaviour clearly in the documentation.

You proposed adding a message explaining the situation, not sure if you were referring to add that in the API output. I would not do that, and instead explain the expected behaviour clearly in the documentation.

Referencing to the documentation is perfect for me.


Allow usage of readout registers never targeted by measurement

Currently, both the shot-count and unitary patterns map qubit indices to classical memory locations via the measurement instruction. If there's a result index that's never the target of measurement, this SDK should support use of the (empty) classical memory value.

Closed in #30


feat(app node): update csi node with latests args to enable registration

Changes in this PR

Adds the dnsPolicy: ClusterFirstWithHostNet so that endpoints are discoverable by dns name.
Adds the args to specify rest-api endpoint and enabled registration.

Why are the changes needed?

These changes are needed because csi node now should register itself as an app node to the control-plane.
This app node info would be used in snapshot creation to issue FIFREEZE and FITHAW to the filesystem for consistency if enabled.

Related Control Plane PR --> https://github.com/openebs/mayastor-control-plane/pull/730

bors merge


UnhandledPromiseRejectionWarning: Duplicate header detected when using getRows()

Hello
Playing around with this package and got an issue when trying to get list of rows
CODE:
const { GoogleSpreadsheet } = require("google-spreadsheet");
const creds = require("../cred.json"); // the file saved above

(async () => {
  const doc = new GoogleSpreadsheet(
    "1rVqAjm-l_Urjd3TNmIc3SmTmz_OlgSoBuhY7RPgiuRg"
  );
  await doc.useServiceAccountAuth(creds);

  await doc.loadInfo();

  const sheet = doc.sheetsById[0];
  await sheet.getRows();
})();

ERROR
(node:4490) UnhandledPromiseRejectionWarning: Error: Duplicate header detected: "Video length". Please make sure all non-empty headers are unique
    at /test/node_modules/google-spreadsheet/lib/GoogleSpreadsheetWorksheet.js:14:13
    at /test/node_modules/lodash/lodash.js:4925:15
    at baseForOwn (/test/node_modules/lodash/lodash.js:2990:24)
    at /test/node_modules/lodash/lodash.js:4894:18
    at Function.forEach (/test/node_modules/lodash/lodash.js:9368:14)
    at checkForDuplicateHeaders (/test/node_modules/google-spreadsheet/lib/GoogleSpreadsheetWorksheet.js:11:5)
    at GoogleSpreadsheetWorksheet.loadHeaderRow (/test/node_modules/google-spreadsheet/lib/GoogleSpreadsheetWorksheet.js:298:5)
    at processTicksAndRejections (internal/process/task_queues.js:97:5)
    at async GoogleSpreadsheetWorksheet.getRows (/test/node_modules/google-spreadsheet/lib/GoogleSpreadsheetWorksheet.js:424:29)
    at async /test/src/index.js:14:3
(node:4490) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:4490) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Lib version:
"google-spreadsheet": "^3.0.13"

Can you confirm that you don't have 2 header cells with the same value in it? (ie 2 cells say "Video length")
Each header cell must be unique in order to use the row-based functions.

Is there any way to call the getRows function for a specific range?
So, this way I could leave out the duplicated header cell..


Create Conway's game of life benchmark

Similar to #1, create a benchmark that runs Conway's game of life. Should benchmark the following versions.

[ ] Generic indexed approach (Index<Coords>)
[ ] Idiomatic BlockGrid
[ ] Idiomatic array2d
[ ] ~Idiomatic toodee~ (#19)

Closing because this is sorta out of scope, and I don't really wanna do the implementation/testing/benches. More importantly, the grid access pattern is similar, or really basically the same as the box blur (for a naive implementation at least), so I wouldn't gain much new information.


Errors in python script

Error:
`CRITICAL:tensorflow:Label power cube first has no images in the category validation.
Traceback (most recent call last):
File "C:\Users\finma\AppData\Local\Programs\Python\Python36\lib\runpy.py", line 193, in _run_module_as_main
"main", mod_spec)
File "C:\Users\finma\AppData\Local\Programs\Python\Python36\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:\Users\finma\Desktop\ML\FIRST-MLWorkshop - Copy\scripts\retrain.py", line 1328, in
tf.app.run(main=main, argv=[sys.argv[0]] + unparsed)
File "C:\Users\finma\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\python\platform\app.py", line 124, in run
_sys.exit(main(argv))
File "C:\Users\finma\Desktop\ML\FIRST-MLWorkshop - Copy\scripts\retrain.py", line 1092, in main
FLAGS.architecture))
File "C:\Users\finma\Desktop\ML\FIRST-MLWorkshop - Copy\scripts\retrain.py", line 527, in get_random_cached_bottlenecks
image_dir, category)
File "C:\Users\finma\Desktop\ML\FIRST-MLWorkshop - Copy\scripts\retrain.py", line 234, in get_image_path
mod_index = index % len(category_list)
ZeroDivisionError: integer division or modulo by zero`
I manually copied the image files in btw

Yeah, this error usually shows up when you have less than 30 images in a category. The algorithm requires a training, validation, and testing directory, so make sure that you have more than 30 images in each image class.

I have 200 images in each category

What is your directory structure for the file? Specifically: power cube first?

Could you send a screenshot of your bottlenecks folder for power cube first? Is that screenshot the images in power cube first?

That is a screenshot of the power cube first folder, I'll post a screenshot of the bottlenecks when I get home tn.

Nvm i fixed it, it was the file names because i manually added them

One other question. what is the name of the input operation you use for this? What i mean by that is what do i feed the image data into from java? Like using this code
s.runner().feed("DecodeJpeg/contents", image)


error when upgrading from 4.2.2 to 4.2.4 or to 4.3.0

Hello,
Please find below details of an ennoying issue which occurs when upgrading the moudl.
Thank you very much for your help
Denis
Expected behavior

possibility to upgrade from 4.2.2 to 4.2.4 or to 4.3
Actual behavior

error when upgrading : "Failed to parse dotenv file due to unexpected whitespace" in modules/mollie/vendor/vlucas/phpdotenv/src/Parser.php at line 163
Steps to reproduce the behavior

click "upgrade" button, or add a new module and download it

Environment

PrestaShop version: <IP_ADDRESS>
Mollie module version: 4.2.2
PHP version: 7.2.34

Hi @Ditwo ,
How are you?
Did you try to reset the module? Does it show the same after a reset?
--
Best regards,
Invertus Support team

Hello,
Thank you for your answer. As the site was broken, I returned to 4.2.2 and didn’t want to reproduce that L
So I was waiting for your analysis. Have you an idea of the cause of the error ? I noticed the file .env.dist is different in 4.2.4. Maybe the cause. What do you think ?
Best regards
Denis
De : Saimis777 @.***
Envoyé : vendredi 25 juin 2021 13:48
À : mollie/PrestaShop
Cc : Ditwo; Mention
Objet : Re: [mollie/PrestaShop] error when upgrading from 4.2.2 to 4.2.4 or to 4.3.0 (#363)
Hi @Ditwo https://github.com/Ditwo  ,
How are you?
Did you try to reset the module? Does it show the same after a reset?
--
Best regards,
Invertus Support team
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/mollie/PrestaShop/issues/363#issuecomment-868442397 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ACQSE4WQXOSPICF6K3Y5VS3TURUGTANCNFSM47HI6FLQ .Image supprimée par l'expéditeur.

Hey @Ditwo ,
I've forwarded the information to the developer, they will take a closer look, and I will let you know!
Thank you for your patience.
--
Best regards,
Invertus Support team

Hey @Ditwo ,
Maybe you could provide us with your BO+FTP credentials to -<EMAIL_ADDRESS>for further investigation? As I could not reproduce the issue, would need to take a look at your shop.
Also would you give us permission to try to re-install the module on your shop?
Looking forward to your reply!
--
Best regards,
Invertus Support team

Hi again @Ditwo ,
Will you be able to provide the credentials for the shop for further investigation?
Let me know!
Have a nice day.
--
Best regards,
Invertus Support team

Hello,
Thank you for your return.
Just to come back to the context, the issue occurs when upgarding from 4.2.2 to 4.2.4 (version available on Prestashop Addons).
It leads to an error 500 :
error when upgrading : "Failed to parse dotenv file due to unexpected whitespace" in modules/mollie/vendor/vlucas/phpdotenv/src/Parser.php at line 163
According to me, the reason is nested in the file .env.dist of the 4.2.4 version with that content :
MARKETPLACE=module from marketplace
The error is reported like below, and we can see ‘module from market place’ outlined :
In 4.2.2 and 4.3.0, the .env.dist file is the same, but doesn’t have the same content as in 4.2.4 :
#DEV=development
#TEST=test shop
#PRE_PROD=preprod shop
#GITHUB=module from github
#MARKETPLACE=module from marketplace
SENTRY_ENV='GITHUB'
We can see that the line is now commented with # :
#MARKETPLACE=module from marketplace
I really don’t know why the .env.dist has changed from 4.2.2 to 4.2.4. However, this causes the error.
I’ve just upgraded from 4.2.2 to 4.3.0 and it works like a charm.
The pity is that on Prestashop Addons the version available is still 4.2.4, which contains that issue in .env.dist file.
Best regards
Denis
De : Saimis777 @.***
Envoyé : mardi 29 juin 2021 11:38
À : mollie/PrestaShop
Cc : Ditwo; Mention
Objet : Re: [mollie/PrestaShop] error when upgrading from 4.2.2 to 4.2.4 or to 4.3.0 (#363)
Hey @Ditwo https://github.com/Ditwo  ,
Maybe you could provide us with your BO+FTP credentials to - @.*** for further investigation? As I could not reproduce the issue, would need to take a look at your shop.
Also would you give us permission to try to re-install the module on your shop?
Looking forward to your reply!
--
Best regards,
Invertus Support team
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/mollie/PrestaShop/issues/363#issuecomment-870440787 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ACQSE4S3YPUFNZCB7NYNDETTVGH63ANCNFSM47HI6FLQ .Image supprimée par l'expéditeur.

Hello Team,
I guess there is no need to investigate further as the module has been correctly migrated to version 4.3.0. As I reported, the error was in the .env.dist file in version 4.2.4. I recommend you to change this version on Prestashop Addons and replace it with version 4.3.0.
Best regards
Denis
De : Saimis777 @.***
Envoyé : jeudi 1 juillet 2021 08:43
À : mollie/PrestaShop
Cc : Ditwo; Mention
Objet : Re: [mollie/PrestaShop] error when upgrading from 4.2.2 to 4.2.4 or to 4.3.0 (#363)
Hi again @Ditwo https://github.com/Ditwo  ,
Will you be able to provide the credentials for the shop for further investigation?
Let me know!
Have a nice day.
--
Best regards,
Invertus Support team
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/mollie/PrestaShop/issues/363#issuecomment-871970205 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ACQSE4XOZWS7K5JDLZZINRDTVQFAJANCNFSM47HI6FLQ .

Hey @Ditwo ,
We really appreciate your time and effort regarding this feedback, thank you!
The issue is identified, and will be either fixed or a new version released.
I will close this issue for now, if you'll need further help with this or anything else, feel free to re-open the issue or raise a new one!
Have a nice day!
--
Best regards,
Invertus Support team

Hello,
Since 27/12 at 21h56, we have had the problem as described in the subject line. It appears on about one order out of ten, with different carriers. For the record, we didn't change anything on the site.
A priori there is no double debit from the customer in mollie account. In Prestashop order page, there is an error : Warning, paid 200€ instead of 100€ (for example).
The version of the Mollie module is 6.0.4, prestashop <IP_ADDRESS>.
Thank you for your help in this matter.
I’m at your disposal to give you more details.
Best regards
Denis

@Ditwo Hi there,
I replied to you on the addons marketplace, let's keep the communication there, as this is an unrelated and old GitHub issue.
--
Best regards,
Invertus Support team


SQL availability group Load Balancer requirement IaaS vs On-Prem

Is there a more detailed document illustrating why a SQL availability group needs a Load Balancer in Azure IaaS but not On-Prem?
Is there a way around it in higher versions of SQL or Windows Server?

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

ID: 09504e18-c72f-07ee-3ef8-dc9ed44562ca
Version Independent ID: 8058bb4f-2321-ddf2-9930-0cc767b68a62
Content: Create a SQL Server availability group listener in Azure virtual machines
Content Source: articles/virtual-machines/windows/sql/virtual-machines-windows-portal-sql-alwayson-int-listener.md
Service: virtual-machines-sql
GitHub Login: @MikeRayMSFT
Microsoft Alias: mikeray

@Ayanmullick Thanks for the question! We are currently investigating and will update you shortly.

@Ayanmullick I assume you are referring to the following statement:

An availability group requires a load balancer when the SQL Server instances are on Azure virtual machines.

I believe this statement is misleading. There is nothing stopping you from creating a SQL machine in an AV set without a load balancer. However, when creating the load balancer you can opt to balancer between VMs in an AV set. In addition, it is best practice to combine an AV set with a load balancer to manage high availability.
@MikeRayMSFT can you confirm and determine if this needs to be made more clear?

Yes. So what challenges could one face if one deploys a 2-node SQL AlwaysOn Cluster in an availability Set and connects directly to the SQL listener IP without any Load Balancer in between?

@Ayanmullick if you don't use a load balancer and one of your SQL machines go down traffic would not be automatically directed to the running machine. This could impact your production as any services using the machine that went down would not work.
One of the main purposes of a load balancer is to distrubute traffic to avaialble machines and redirect it when there is a problem. So although you could consider your enviornment "Always On" it would not meet the critera for high availability.

But why don't I face the same issue without a Load Balancer on-Prem?

@Ayanmullick I believe that is just the difference between running in the cloud and running on prem. The environment is different and require different settings to work. Not 100% sure I can provide a complete answer as it is just how it was designed to work. @MikeRayMSFT might be able to elaborate further than I can.

In regular WSFC (Windows server failover cluster) on-prem setup, when AG listener is created, it will create a DNS record for AG listener with the IP(s) provided. This IP address has to map now to MAC address of the current Primary node in ARP tables of switches/routers in the network. The cluster does this by using Gratuitous ARP (GARP) where it will broadcast to the network the latest IP-to-MAC mapping whenever a new Primary is elected after failover. Here, the IP is listener’s and MAC is of current Primary. This GARP should force an update on ARP table entries for the switches/routers and to a user connection to the listener IP address seamlessly goes to the current Primary.
GARP (even ARP) is not supported on any public clouds (Azure, GCP and AWS, I believe as well) due to security reasons. In short, any kind of broadcast is not supported on cloud setup.
So, in public cloud’s network infrastructure, load balancers provide traffic routing. In short, the load balancers are setup with a frontend IP, corresponding to the listener, and a probe port is assigned where LB will periodically poll for status. The VM which responds successfully to probe on this port will be forwarded incoming traffic. At one time only one SQL VM (Primary) will respond for this TCP probe. There is also configuration made at WSFC level, where corresponding probe port is setup at cluster IP resource level, thereby ensuring that Primary node does respond to TCP probe requests on this port.
Does that help?

Yes. Thanks. Azure private DNS just went 'in Preview'. Could that make a difference in the process of associating the new IP after failover?

@Ayanmullick - first let me apologize for not replying to this conversation sooner.
You will need an load balancer for IaaS on Azure VMs (or any other cloud service that hosts VMs) in the future.
I don't think the Private DNS will change that because GARP is still not available on the network.
#please-close

@mikerayMSFT Exactly what I was looking for the past two weeks as I was struggling to setup an AO AG on google cloud platform. Could you please post the above info "In regular WSFC (Windows server failover cluster) on-prem setup, when AG listener is created, it will create a DNS record for AG listener with the IP(s) provided. ...." as post on technet. There is not a single post explaining what is the difference between running AOAG onPrem vs cloud and how the listener ip is broadcasted. Wish you allowed the search crawling on the comments as well :)


Test develop

Codecov Report

Merging #48 (96617f3) into main (dd1e5c2) will decrease coverage by 0.16%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main      #48      +/-   ##
==========================================
- Coverage   56.73%   56.57%   -0.17%
==========================================
  Files          38       38
  Lines        1239     1262      +23
==========================================
+ Hits          703      714      +11
- Misses        536      548      +12

Impacted Files
Coverage Δ

src/model/order/order.h
100.00% <ø> (ø)

src/model/person/boss/boss.h
100.00% <ø> (ø)

src/model/person/client/client.h
100.00% <ø> (ø)

src/model/person/person.h
100.00% <ø> (ø)

src/model/person/worker/worker.h
100.00% <ø> (ø)

src/model/product/product.h
100.00% <ø> (ø)

src/model/product/product_manager.h
100.00% <ø> (ø)

src/ui/dashboard/dashboard.cpp
0.00% <0.00%> (ø)

src/model/person/person.cpp
93.33% <0.00%> (+0.22%)
:arrow_up:

src/model/order/order_manager.cpp
78.23% <0.00%> (+1.36%)
:arrow_up:

Continue to review full report at Codecov.

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


Support multiarch container img

Description
Try to add multiarch support
Linked Issues
This PR try to fix the issue 201
How has this been tested?
For now a plain kubectl run with a public was able to run
Will be making more tests tomorrow.
Checklist

[ ] I have labeled this PR with the relevant Type labels
[ ] I have documented my code (if applicable)
[ ] My changes are covered by tests

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

closing in favor of https://github.com/undistro/zora/pull/201


Efficiency/Range inaccuracy

#143
Describe the bug
The system appears to be using an incorrect value for efficiency when calculating range on the car.  As a result, the ranges are all inflated.  For my 2017 Model S, 90D it is saying that:

at 60% charge, the car has a range of 210 miles (equates to a full battery range of 350 miles)
degradation chart shows max range of around 348 miles (at normal battery capacity on a new battery it should be around 293  #miles)
Efficiency chart says it is using an efficiency factor of .189 (which I believe is the model 3 factor).  Derived efficiency factors are .142, 1.34 and .129 respectively.  I believe if the lower efficency factors were used, the ranges displayed would be more accurate, but I'm not sure as I don't know exactly which range data the grafana charts in question are using to calculate the car's range.

Screen captures attached.

**Operating environment (please complete the following information):**
 - OS: [e.g. Synology]
 - Version [e.g. v1.8.0]

I will look into it later. A little background information in advance for you to dig into if you want:

Rated Range  The car's estimate of remaining range based on a fixed energy consumption in Watt-hours/mile (whpm). The fixed whpm is different for different vehicles (85kWh / 60kWh) and in different markets based on the regulatory test for that vehicle in that market.

US: The fixed whpm is based on EPA 5-cycle Standard
Europe: The fixed whpm is based on NEDC range in accordance with regulation ECE101
Canada: Unknown

Estimated Range  The car's predicted remaining range based on energy consumption during recent driving. This is based on a dynamic Watt-hours/mile (whpm) value that is based on recent driving habits. This is not country-specific.
Ideal Range  The car's estimate of remaining range based on a fixed energy consumption in Watt-hours/mile (whpm) at a specified average speed. The fixed whpm is a figure determined by Tesla and is not country specific. The average speed is a figure determined by Tesla and is not country specific.

Rightnow TeslaMate used the ideal range everywhere.

No disagreement.  I think the problem is that for these cars in question, Teslamate is still pulling data for a Model3 number instead of a ModelS number (hence the .189 efficiency rating).  I know you said that Teslamate is now identifying the car as a Model S (90D) but are you sure that the charts in question are using that ID, or are they still keying in on the MDL3 code?

https://github.com/adriankumpf/teslamate/blob/9c61150bd5614728447e21789ab6edc5169b631e/lib/teslamate/vehicles/identification.ex#L44

If you have a list of all the efficiency factors let me know.

OK so the problem isn’t that.  Somehow else the wrong range is thus being calculated, but I’m not sure why or how.
From: Adrian Kumpf<EMAIL_ADDRESS>Reply-To: adriankumpf/teslamate<EMAIL_ADDRESS>Date: Friday, September 6, 2019 at 9:48 AM
To: adriankumpf/teslamate<EMAIL_ADDRESS>Cc<EMAIL_ADDRESS><EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [adriankumpf/teslamate] Efficiency/Range inaccuracy (#149)
https://github.com/adriankumpf/teslamate/blob/9c61150bd5614728447e21789ab6edc5169b631e/lib/teslamate/vehicles/identification.ex#L44
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Okay, regarding your initial concerns:

The deviation of the range is due to this: https://github.com/adriankumpf/teslamate/issues/143#issuecomment-528941200

I find the derived factor of  .142 rather low. It's lower than the one used by the Model 3. Let's see how the estimation change after a few more charge sessions. Plus, it's important to know what your mileage is. I believe the battery degradation falsifies the measurement a bit.

I wonder if we have a problem because I'm displaying range in miles vs. kilometers?  IN response to your #143 comment, is there a way to force the grafana dashboards to use the other range numbers?

You can change the units at any time via the web interface. Or if you want to override it for a particular dashboard you could update the dashboard variables.

I have the units selected as miles in the teslamate option and everything in grafana shows in miles.  I was just wondering if the incorrect TR range for the car was coming from a math error there...

Nope, it just displaying the ideal range :)

https://www.youtube.com/watch?v=eG2ZdYGDQOY

So instead of ideal, could we not display Typical (which is more realistic)?

The different names are really confusing but that's exactly what I meant here https://github.com/adriankumpf/teslamate/issues/143#issuecomment-528941200

I see the referencd, but how do we shift from ideal to rated?  I don’t see an option to do so…
From: Adrian Kumpf<EMAIL_ADDRESS>Reply-To: adriankumpf/teslamate<EMAIL_ADDRESS>Date: Friday, September 6, 2019 at 4:26 PM
To: adriankumpf/teslamate<EMAIL_ADDRESS>Cc<EMAIL_ADDRESS><EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [adriankumpf/teslamate] Efficiency/Range inaccuracy (#149)
The different names are really confusing but that's exactly what I meant here #143 (comment)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

In  the medium term, it will be possible to switch from ideal to rated  range within TeslaMate. The rated range is already recorded. That means  you won't lose any data until then.

with rated range I'm referring to the battery_range from the API which is the more realistic one your case. That is NOT possible at the moment.
Closing this ....

Understood.  I’ll look forward to the update!
From: Adrian Kumpf<EMAIL_ADDRESS>Reply-To: adriankumpf/teslamate<EMAIL_ADDRESS>Date: Friday, September 6, 2019 at 4:33 PM
To: adriankumpf/teslamate<EMAIL_ADDRESS>Cc<EMAIL_ADDRESS><EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [adriankumpf/teslamate] Efficiency/Range inaccuracy (#149)
In the medium term, it will be possible to switch from ideal to rated range within TeslaMate. The rated range is already recorded. That means you won't lose any data until then.
with rated range I'm referring to the battery_range from the API which is the more realistic one your case. That is NOT possible at the moment.
Closing this ....
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.


fix: make esbuild as optional peer dependency

Summary

Use on-the-fly loading esbuild when needed so we don't have to add to dependencies
Related to https://github.com/kulshekhar/ts-jest/discussions/3128#discussion-3724187
Test plan

Green CI
Does this PR introduce a breaking change?

[ ] Yes
[x] No

Other information
N.A.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 6 (100.0%)  changed or added relevant lines in 3 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 94.159%

Totals

Change from base Build<PHONE_NUMBER>:
0%

Covered Lines:
1167

Relevant Lines:
1194

💛  - Coveralls

This change seems to cause issues on our side as we don't have esbuild installed as a dependency (and we also don't use it actively as far as I know). From the error, it looks like the files in dist/ are referencing esbuild so in that case it should be a dependency, no?
build	10-Dec-2021 04:02:39	node_modules/ts-jest/dist/types.d.ts(4,32): error TS2307: Cannot find module 'esbuild' or its corresponding type declarations.

The workaround is set skipLibCheck: true in tsconfig I believe

What if we don't want to decrease type-system accuracy, just so that a dependency for our testing setup works like it did before?

Skip Lib Check
This can save time during compilation at the expense of type-system accuracy.

https://www.typescriptlang.org/tsconfig#skipLibCheck
I just noticed esbuild is defined as a peer dependency so I can just add it as a dependency to ensure it works, it just baffled me that this broke in a patch release 😅

This change broke the build of the application that has ts-jest as a dependency.
node_modules/ts-jest/dist/types.d.ts(4,32): error TS2307: Cannot find module 'esbuild' or its corresponding type declarations.
We do not have esbuild as a dependency. Unexpectedly application can't be built due to the new patch release.

I think we can add a replicate type of esbuild instead of importing type should fix the issue.


updated dependencies, fixed race condition

This PR fixes some issues and updates all dependencies to the latest major versions.
Fixes and updates:

The command method of the Raft class tried to use a non existing function to forward an error for the case that it was called without being the leader. This was replaced by a standard throw with the address of the leader attached to the error object.
The latest version of levelup no longer supports string values for keyEncoding. Very simple helper functions are used to convert the integer key values to hex strings.
The commandAck method of the Raft class contained a race condition problem. The problem mainly shows up with a bigger number of nodes. A promise queue is used to solve the problem.
The latest version of mkdirp uses an Promise API. The util.promisify wrapper was therefore removed.

@bergos, you are amazing!  :+1:


feat: custom DJ Role for parrot commands

-
-

Issue
Closes https://github.com/aquelemiguel/parrot/issues/47

Dependencies
"Manage Roles" permission is now required and Wiki should be updated after this merge.

Decisions
- Refactor code to make handlers smaller and call what they need.- Set permissions for all guilds for all commands of the DJ Role.- The DJ Role name can then be changed by the discord admins if they want, but I picked a default ("Parrot DJ").- Parrot ensures the role exists by either using an already existing one or creating a new one.- now playing, queue, play, summon and version are unrestrained

Animated GIF

Love the fact that this gets greyed out!


Crash to desktop when I try and download anything

Steps to reproduce
1.Start grabber
2. click any preview image (which would normally open it and start a download)
3. crash
Alternatively
1.Start grabber
2.select any image
3. hit "get selected"
4. navigate to "downloads"
5. hit download
6. crash
Context

Provide your main.log file to see if any obvious error occurred.
main.log.txt

Providing your settings.ini file will greatly help maintainers reproduce your problem if it may be caused by your configuration.
settings.ini.txt

Provide the crash dump that was linked by the Crash Reporter tool.
There was no crash dump offered by any tool. Best I got was when running it from terminal, this is the output on termination
Segmentation fault (core dumped)

System information

OS: PRETTY_NAME="Pop!_OS 21.04"
ID_LIKE="ubuntu debian"

Grabber version: 7.6.2, tar.gz version

Additional context
Yeah I dunno really what I should add here, whenever there's something like a download I get a very unceremonious crash.

Have further tried it by building it myself, same results.

Try to disable the  Pixiv source, it is known to cause issues on the latest release if you didn't login.

Moving discussion to #2518
In the meantime, you should not enable Pixiv unless you log into it


Manage dependancies with godep

Manage our dependancies with godep - https://github.com/tools/godep
Makefile contains some helpers -
make go-bootstrap
will download all of the golang tools you need to build, test, update the project
make verify
will run a preflight checkup on your code  before you check it in

gofmt (make you files sooo preetty)

govet (look for certain class of errors),

go test (with the race condition flag),

go cover.

make build
will build the go dvol binary
make test
will use run the python tests using the golang dvol binary

Since dvol-init-in-go-FLOC-4087 has been merged into master, this PR should be reopened against master.


Only one router and one Raspberry Pi?

After setting the Raspberry Pi to listening mode, an additional device needs to be connected to the router to generate traffic. Can the Raspberry Pi be connected to a router to generate traffic and collect CSI?

No, you'll need a third device. The Pi wont be connected to the router wirelessly, it'll be in listening only mode. So you'll need a second device that is connected to the router and generate traffic. Connecting a wireless dongle to the Pi wouldn't work -- we'll be removing wpa_supplicant so you can't connect the pi wirelessly at all.

If I don't use the third device and instead have the router broadcast or send traffic to a defined destination IP (which may not exist), can the Raspberry Pi correctly monitor the traffic that the router sends out?


NavigationInstruction does not add a path separator when the fragment is empty

I'm submitting a bug report

Library Version:
master

JSPM Version
JSPM 0.16.32

Current behavior:
I have an app. One of the app's routes is first, which becomes #/first. first has routes, one of which is second, which becomes #/firstsecond. This fails with 'route not found'.
Expected/desired behavior:
Instead of #/firstsecond, it should be #/first/second.
Fix:
Line 173 of navigation-instruction:
 if (nonEmptyRoute) {
-    fragment = nonEmptyRoute.route;
+    fragment = `/${nonEmptyRoute.route}`;
 }

Would you be willing to submit a PR for this fix? We'd love to have you as
a contributor :)
On Jul 25, 2017 6:57 PM, "Ethan Reesor"<EMAIL_ADDRESS>wrote:

I'm submitting a bug report

Library Version:
master
JSPM Version
JSPM 0.16.32
Current behavior:
I have an app. One of the app's routes is first, which becomes #/first.
first has routes, one of which is second, which becomes #/firstsecond.
This fails with 'route not found'.
Expected/desired behavior:
Instead of #/firstsecond, it should be #/first/second.
Fix:
Line 173 of navigation-instruction
https://github.com/aurelia/router/blob/master/src/navigation-instruction.js#L173
:
if (nonEmptyRoute) {-    fragment = nonEmptyRoute.route;+    fragment = /${nonEmptyRoute.route};
}
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/aurelia/router/issues/506, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAIBnVGJ7pm7uQh4Xsckyj-WF3taT-r0ks5sRp0ggaJpZM4OjVV4
.

Gotta talk to my boss :/


I am making a Youtube logo

I want to make Youtube logo ,please assign it to me

Hi. The Youtube logo is already made. Please change the issue title to some other art.

Hi. If you are interested in making any other art, please feel free to open a new issue. I'll close this for now.


Add goto definition support within the do clause

Purpose

Add goto definition support within the do clause.

Fixes #21797
Remarks

Related PR: #22311

Check List

[x] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[x] Added necessary tests

[x] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[x] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Codecov Report

Merging #22312 into master will not change coverage by %.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master   #22312   +/-   ##
=======================================
  Coverage   14.59%   14.59%
=======================================
  Files          51       51
  Lines        1411     1411
  Branches      219      219
=======================================
  Hits          206      206
  Misses       1189     1189
  Partials       16       16

Continue to review full report at Codecov.

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


Native module cannot be null

Cannot get it working with expo 36. Removing node_modules and yarn.lock file is not helping.
import FileViewer from 'react-native-file-viewer'; => Invariant Violation: Native module cannot be null.

Can you tell your solution?

Can you tell your solution?

Solution is to eject expo. This module is native so it won't work with expo.


Error message in tl.diffmap / why n_comps must be > 2

Hi,
I'm using your package tl.diffmap in my analysis, and I'm having some difficulties. I have a dataframe I have converted into an anndata object adata. I run the following lines to prepare it for tl.diffmap:
pp.pca(adata,n_comps=50)
pp.neighbors(adata, knn = False, method = 'gauss', n_neighbors = 20)
I then perform the diffmap:
tl.diffmap(adata, n_comps = 3)
and I get the following error:

I am not sure what I am doing incorrectly here, and I was hoping you could help!
Furthermore, I was wondering why n_comps must be greater than 2?

I think I see what’s going wrong. Scipy sparse matrices have the method <matrix class>.count_nonzero(self, ...) while numpy’s ndarrays don’t. One would use the static function numpy.count_nonzero(a, ...) for that.
I.e. the neighbors code assumes self._connectivities is a sparse matrix, while it isn’t in your case.

Fixed in d44d5f7351719643bd21042d560355b83188b9e5


Make FlagsClass.has() a static method

Refs: https://github.com/metarhia/metaschema/pull/125#discussion_r234418838

Landed in https://github.com/metarhia/common/commit/d6704f45400a0a32a8a8aa2c695ce02961ab76ed.


Fixes for SNAP-2433:

Changes proposed in this pull request
Problem: Same member node is listed twice, in the UI, with different status.
Cause: Multiple Disk Store UUIDs are found when same member is shuts down and comes back again.
Solution:

Making use of GfxdConstants.GFXD_DEFAULT_DISKSTORE_NAME instead of
GemFireCacheImpl.getDefaultDiskStoreName() to obtain members Disk Store UUID and Name.

Patch testing

Tested manually
Tested using Cluster Recovery BT.

ReleaseNotes changes

None

Other PRs
SnappyData:

Merging.


Control panel

Independent  real time control panel for each room for use for moderators or from admin side

participant list:

Change  moderator role / admin role
Kickout
Mute all or arbitrary participants

Room :

Lock/unlock
(  - set pin)
LastN
Default Layout
Raise Hand
(  - Delete)
(  - Save )

We need to split this issue to smaller issues. Some are already done.

This issue is no longer relevant, if something is missing, lets add new issues


New Updates!

New big updates to the API and the main indexing program!

Updates Cancelled! Will make a new repo...


Using webpack-builder in Nuxt3, running nuxt dev The styles in the

Environment
development
Reproduction
The warehouse address is temporarily unavailable.
Describe the bug
Steps
step 1:
npx nuxi@latest init test-project
step 2:
Configure in nuxt.config.ts: builder: 'webpack'
step 3:
Modify the file App.vue:
step 4:
Create directory: pages
step 5:
Add the file in the pages directory: index.vue

Results：
The style in the

@danielroe https://github.com/li-jingxuan/nuxt3-testing   It's reproduction
Thanks

It seems to be working fine when your lockfile is refreshed: https://stackblitz.com/github/li-jingxuan/nuxt3-testing?file=package-lock.json.

It seems to be working fine when your lockfile is refreshed: https://stackblitz.com/github/li-jingxuan/nuxt3-testing?file=package-lock.json.当您的锁定文件刷新时，它似乎工作正常：https://stackblitz.com/github/li-jingxuan/nuxt3-testing?file=package-lock.json。

But the CSS style is not taking effect. This is what I'm confused about. https://stackblitz.com/github/li-jingxuan/nuxt3-testing?file=pages%2Findex.vue
Please see the picture below:

This seems to be working fine with latest versions of everything - namely the styles: https://stackblitz.com/edit/github-rs6ccf?file=package.json,nuxt.config.ts,pages/index.vue
(There's another issue that's meant I've had to set ssr: false but this seems to be unrelated and we can track separately.)


Trap in callback makes canister unupgradeable

Claudio mentioned on the forums that Motoko canister will not upgrade when it believes it has outstanding callbacks. This is well-intended and prevents one kind of footgun (callbacks from old versions reaching the upgraded canister), but it introduces another huge problem: If a canister ever traps in a callback handler, the canister's internal count ouf outstanding calls will never reach zero, and the canister will never be upgradeable, even if stopped. This change was https://github.com/dfinity/motoko/pull/2677
To mitigate this, we should get around to implement the on_cleanup callback, and in that callback remove the entry from the table (but don't do GC, or anything else that could possible cause a trap). I am not sure if this is a bullet-proof mitigation; maybe we can make that code so predicatbly small that we can guarantee its running within the cycle limit for the callback? But really, it just has to do a bit of index calculation and write one word to memory, maybe that's safe enough?

Hmmm....ok...trying to understand this....@nometa has seen our code....I think we are doing a ton of this.  Right? When we our vesting canister calls our vesting canister and asks it to do some work, if the governance canister returns and then we trap in the vesting canister then the count would be off?  Or is it when the governance canister traps and doesn't return to the vesting canister?  I'm trying to visualize how this happens. If our canisters are currently unupgradeable that would be good to know as we need to add some hydration code to complement our backup code.

When we our vesting canister calls our vesting canister and asks it to do some work, if the governance canister returns and then we trap in the vesting canister then the count would be off?

Yes.
I think in your case, you don't expect the canisters to trap, so with some luck, you won't have a problem yet, just a risk, and likely hopefully will be able to upgrade just fine until a fix lands. And if not, you can still reinstall (instead of upgrade) and use your backups, just like with any other possible disaster.
It is a more serious problem if you call untrustworthy canisters and don't have a an off-chain backup.

False alarm; the necessary fixes to use on_cleanup have been implemented (#2663). For some reason Github didn't show anything when I used it's search with cleanup, but maybe I misspelt something. Sorry for the confusion!
I'll still create a PR with the test case I was writing in preparation for fixing this.


AB#5425 Assing plans to pages

Link plans to pages (the reverse relationship already exists)
A page can have multiple plans linked to it

How about a test?

We'll see


cast data_index as size_t in cuda_row_data to avoid integer overflow

related to https://github.com/microsoft/LightGBM/issues/5705
@shiyu1994

@SiNZeRo Thanks. Rerun the ci job to pass the randomly failed setting.

I've manually re-triggered CI, will merge this when it is successful.
@SiNZeRo does this FIX #5705 for you? Can we close that issue when this is merged?

yes, this PR is intended to resolve this issue.

great, thank you


change to the local branch

Codecov Report

Merging #1 (35252d5) into main (e39bc37) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##              main        #1   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            1         1
  Lines            5         5
=========================================
  Hits             5         5

Continue to review full report at Codecov.

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


Extend ScreenShot Rule to create Screenshots from Robolectric as well

Is your feature request related to a problem? Please describe.
It's great the AndroidTests are showing Screenshots on failed tests. It would be even greater if we could do something similar for Robolectric with the same API.

Looking into it in a bit more detail, it's apparent this is not worth it.
Robolectric is not trying to fully emulate Android, just fake as much as it's needed to run some tests.
One part of this is drawing, the view's draw method is faked out via ShadowView, to get only the background if any.
This means we would need to enforce a custom Shadow, just so we could draw the Views, probably slowing down the whole Testing process for anyone using it, and it still would be a massive undertaking.
If tests fail in Robolectric, we should see all it's logs, we can also run the same test on Device, get Screenshot or verify manually. While on Emulators external factors such as Sys dialogs could fail our tests, so it makes more sense there to have Screenshots.
Closing the issue with won't do.


add coletto817's file

update colette's file

update content

merge now

ready for merge

close

fix

reviewed

done


Added doc section 'Configuring the robot task'

The story was to document how to set outputdir, but since we didn't have a section that specifically called out options/options I decided that this was a good time to add it. I then used outputdir in the example.
It was a challenge to write about adding options to the options section of the options section of the task. I hope I was able to make it sound less confusing.
Critical Changes
Changes

documented the use of the options/options section of cumulsuci for the robot task

Issues Closed

These were all excellent suggestions. I was lazy and committed the first two before remembering I could batch them. Oh well.

I think using "Robot CLI" makes sense, so I made that change.
On Fri, Apr 9, 2021 at 4:58 PM David Reed @.***> wrote:

@.**** commented on this pull request.
In docs/robot.rst
https://github.com/SFDO-Tooling/CumulusCI/pull/2536#discussion_r610924316
:

+For example, one of the most common uses of this inner options section is to
+use the robot command line option --outputdir to specify where robot should
+write its report and log files. To configure this command line option
+for the task, you must remove the leading dashes from the option name
+and then place that option
+and value in a nested option section.

+.. code-block:: robotframework
+

tasks:

   robot:

       options:

           options:

               outputdir: robot/my_project/results

+Any robot command-line option which takes a value can be specified
What do you think about referring to the underlying Robot tool as "Robot
CLI", to avoid confusion with our robot task?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/SFDO-Tooling/CumulusCI/pull/2536#discussion_r610924316,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAISMYWZJQU5XSEVFOJNG6TTH52BNANCNFSM42VW2KGQ
.