feat(pixels): add my new pixel

Checklist

[x] I ran npm test locally and it passed without errors.
[x] I only edited the _data/pixels.json file.
[x] I entered the username in the pixels.json that I'm also using to create this pull request.
[x] I acknowledge that all my contributions will be made under the project's license.

Thank you for your contribution! @all-contributors please add @FailedSitcom for their code contribution

Also @FailedSitcom we want to say thank you for you contributing to this project and send you some swag after Hacktoberfest. All you have to do is fill out this form: https://twil.io/hacktoberfest-swag

Thank you @dkundel, this is a super cool project and just what I needed to start getting into Hacktoberfest (and contributing to open source in general).


Drug tarrif fetcher failing

It's failed four nights in a row with:
  File "/webapps/openprescribing/openprescribing/manage.py", line 26, in <module>
    execute_from_command_line(sys.argv)
  File "/webapps/openprescribing/.venv/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 364, in execute_from_command_line
    utility.execute()
  File "/webapps/openprescribing/.venv/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 356, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/webapps/openprescribing/.venv/local/lib/python2.7/site-packages/django/core/management/base.py", line 283, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/webapps/openprescribing/.venv/local/lib/python2.7/site-packages/django/core/management/base.py", line 330, in execute
    output = self.handle(*args, **options)
  File "/webapps/openprescribing/openprescribing/dmd/management/commands/fetch_and_import_drug_tariff.py", line 54, in handle
    assert "2000" <= year <= str(datetime.date.today().year)
AssertionError

This is because the drug tariff page lists the tariff for January next year, which we don't expect.  The assertion that's failing doesn't do anything useful, so we should just ditch it.


feat(#major); ENS Names; Add ens_jsonl_out map

seems like build is failing?

@this-username-is-taken Its working fine for me, where is the build failing for you?

It's showing as failed on my Github:

Oh, I thought you were talking about cargo build. The github build error is related to API rate limit exceeded.

have you had a chance to run it end-to-end using the substreams-file-sink binary (https://github.com/streamingfast/substreams-sink-files/tree/master/cmd/substreams-sink-files)? Can you upload a sample output? Would be interested to see what the output looks like

@this-username-is-taken @yulesa this is how the output looks right now.
{"block_number":9470012,"controller_address":"085bf9e7b53fa67152928526e86a41d5b13b789b","ens_name":"metaalart.eth","label_hash":"c277fdc9ff93a0f1bcf01e77583fd9170c0ae1bf03b623776ce3712acaffe2fe","label_name":"metaalart","name_hash":"8eb7e4f7c3f7fcb80727005ecafbaf9fa6d8a1695d6ea940b39bcb54dc360d56","registrant_address":"085bf9e7b53fa67152928526e86a41d5b13b789b","transaction_hash":"e86d9674bb39868d6692846b8cf8b1a4b04796a397e95c02044b101a21c7ffd5"}
{"block_number":9470036,"controller_address":"085bf9e7b53fa67152928526e86a41d5b13b789b","ens_name":"boonedam.eth","label_hash":"67bb3c2eb0444f9f153ef08a283389f6971ed3d30005897e546f46a8fd8b9521","label_name":"boonedam","name_hash":"d88cb5dc6228723514cd826b816d1bcbc8165f7965cc748967f53ef316d14536","registrant_address":"085bf9e7b53fa67152928526e86a41d5b13b789b","transaction_hash":"81be94513f9b6f5bb307526d074643d05cc5a311074bbce7b4b0dec547356e5a"}
{"block_number":9470107,"controller_address":"f5ebac0d3bce8059f57856306ddaa87438023bfc","ens_name":"lagunaro.eth","label_hash":"23eb4181bde05206edd5f9a0bf789eb1a2fbc5b8e1a5b3a7e572d6dd710dd35f","label_name":"lagunaro","name_hash":"4d051b39dc4cc4c200e1edd9bc92a5a9e404cd1b6dc03e4845372b6f7a15bac2","registrant_address":"f5ebac0d3bce8059f57856306ddaa87438023bfc","transaction_hash":"4bd11157856c87f527e8a92132606a23485510916f2119494db3766baa11b96d"}
{"block_number":9470114,"controller_address":"085bf9e7b53fa67152928526e86a41d5b13b789b","ens_name":"orientalwebshop.eth","label_hash":"79551ff844cbf2b50a9d305353e240fd707c3f9f00a6e254eac0d3a09dd12dcd","label_name":"orientalwebshop","name_hash":"ae155ec23ca8d680056b3d4914a6b244719ffc7440c555dfc4905eff453b56e8","registrant_address":"085bf9e7b53fa67152928526e86a41d5b13b789b","transaction_hash":"55b264e07816d8b8e65c16d45f8b53b73f5340b0c906c5407aa4b42790e5a94b"}
{"block_number":9470126,"controller_address":"839f958138c3367a1889179641f2264b186381c2","ens_name":"decus.eth","label_hash":"4c29984f9278d9094cf5bc9ef8aa1ad0c6943a4be4339f47d1e01bb0a854b87a","label_name":"decus","name_hash":"cb0f1e3558710c7f60207c125f7c365f461d7fb7f5ee26d150100d063a954140","registrant_address":"839f958138c3367a1889179641f2264b186381c2","transaction_hash":"6d3b5df86edc28722beca7f0c7f2733b59691701bd2d83ebc53076b2f8e06131"}
{"block_number":9470127,"controller_address":"f5ebac0d3bce8059f57856306ddaa87438023bfc","ens_name":"orkli.eth","label_hash":"18f687723f2c006381aa835a7fc8678e7b9de579aad6752489c873ab3337d8c9","label_name":"orkli","name_hash":"b634caec6f78fc4a8a1a0e0d968d8c1dd95b558c906ea32083123f2d07d0e47f","registrant_address":"f5ebac0d3bce8059f57856306ddaa87438023bfc","transaction_hash":"7761ca2dcf998d02f2c6687705729b2875f7e3f012bc351ad13a8d6405de54c0"}
{"block_number":9470158,"controller_address":"f5ebac0d3bce8059f57856306ddaa87438023bfc","ens_name":"ulmapackaging.eth","label_hash":"2e4ca82594945cebbe6685f1002c6ed20616a972a7dddcf7cc2490ba1d93386a","label_name":"ulmapackaging","name_hash":"275fb6834130dadd4ec84bfc033ce3ecfc04f2d3691813f30198c7181279cd89","registrant_address":"f5ebac0d3bce8059f57856306ddaa87438023bfc","transaction_hash":"255ca5d3280fcbfd2e6d3c2b5623fbddb2da54c953a92474d3c75c38c5494abf"}
{"block_number":9470191,"controller_address":"fa45c6991a2c3d74ada3a279e21135133ce3da8a","ens_name":"heater.eth","label_hash":"7479a843be71cfa8d87d199192542b9dc1558819e9e07b824e64afdc3f469c56","label_name":"heater","name_hash":"42ed7adad75c3f8956006b761822ed1725fada56d405346c3efd5a0483a96753","registrant_address":"fa45c6991a2c3d74ada3a279e21135133ce3da8a","transaction_hash":"45172500e7099baa62bf750bbe3de4cf7427679ac02c620bad9de2054b5e0629"}
{"block_number":9470224,"controller_address":"fa45c6991a2c3d74ada3a279e21135133ce3da8a","ens_name":"weien.eth","label_hash":"5594901ed66f05a3db523a0fc24a56ff443cdbc2417e6fc6c3d364fee87527ef","label_name":"weien","name_hash":"54052101757dcfd1ce2f4f1ddbae5b506bb46679b8533df52dd6b56e0edb96fb","registrant_address":"fa45c6991a2c3d74ada3a279e21135133ce3da8a","transaction_hash":"da65058da6abec20abc02955041e2f442a68c8dd50c922d9466d157f5b6c51ea"}
{"block_number":9470308,"controller_address":"fa45c6991a2c3d74ada3a279e21135133ce3da8a","ens_name":"badbeat.eth","label_hash":"95a833fd77b38a521afd901ee66e6301665d396a5b86b006188714a8b9ebf557","label_name":"badbeat","name_hash":"1d85628b3779beacc282fc069bc5caa9c7bf3d0d4e41aac8162efd078b993f08","registrant_address":"fa45c6991a2c3d74ada3a279e21135133ce3da8a","transaction_hash":"a1e93199597b49cf6ded946990c44ccbcf5806a29542168b43c1c686635e042e"}
{"block_number":9470527,"controller_address":"d2af803ad747ea12acf5ae468056703ae48785b5","ens_name":"artvault.eth","label_hash":"96dd4e5151dbefa74ba42a2c0bbf70f399e5635e04dc4cbe4e7326dc41cb4522","label_name":"artvault","name_hash":"7fffa49d5891fca67bd5465de2c5f587d529dad1534d3ef6e9d10f9db0b9ea59","registrant_address":"d2af803ad747ea12acf5ae468056703ae48785b5","transaction_hash":"c28a55ac10afc9f722b4554b276a6f76259726ff7f75bb46c789bd4e8f7a9876"}
{"block_number":9470559,"controller_address":"a6dffbc492e1dccae78bf4f6f6c13b1f96469e11","ens_name":"cbwallet.eth","label_hash":"d6739934d963547e67f96583042f0240631b2c524ac9d492fbd1ca6d36b4fe98","label_name":"cbwallet","name_hash":"1140a9a5f8aa1a943f63cb8473c895fb8aceafcff2410983f4774729135720e4","registrant_address":"a6dffbc492e1dccae78bf4f6f6c13b1f96469e11","transaction_hash":"c1e935da2e95a7f1ed394465f5c61688b1fc9357dec173e69ac4385604090caa"}
{"block_number":9470640,"controller_address":"76fbdc28e90553d9f979140c6f7fc4565ebbecf3","ens_name":"coincasso.eth","label_hash":"3499e971e992fd1c7e35e391fc61308aa56621606a08bfa97cb4b36d04d0de6e","label_name":"coincasso","name_hash":"0099cd15b689bc0bf8279c0b071419a510d90d45ee2a7564000bad34abec59a0","registrant_address":"76fbdc28e90553d9f979140c6f7fc4565ebbecf3","transaction_hash":"c0e982993da9884132528db4b26ae6bd308ceee4bbb29ad220120a39ab0a1004"}
{"block_number":9470706,"controller_address":"c0bf635514a85e590ec90ecb859172255e9bc371","ens_name":"magrilo.eth","label_hash":"5294c3a8b158586651a2e3cff4e95c05ac9d56e0b20cf17b8e5e343817c34a31","label_name":"magrilo","name_hash":"3f849ab8977bd473c499c590cddfe2c9f00c1ad7d888b44837bad7e9c1550395","registrant_address":"c0bf635514a85e590ec90ecb859172255e9bc371","transaction_hash":"02694e51b03518f43f45f985fd57ae4e7e98cf897394310a7b7baad0ced4b647"}
{"block_number":9470794,"controller_address":"fbdd5c349d1686d7b15b27f47217c55fe93d2bfc","ens_name":"alsalem.eth","label_hash":"9628ff13ef4acafdcee15b5dd821352cb6a1bae4b16f0c745d4bab8d2009ffa6","label_name":"alsalem","name_hash":"dfc5f203bef811d7d0dce3d026b5e2241e2a0b1b8aa462c617ea906504f684af","registrant_address":"fbdd5c349d1686d7b15b27f47217c55fe93d2bfc","transaction_hash":"924cb04bc3551ece0cc2a6510876191aee5ba16d61293c7cc843d0f6f2d96413"}
{"block_number":9470803,"controller_address":"9c6b3ad253ee1a625e74051e00a8402f131f2a2f","ens_name":"myworstwallet.eth","label_hash":"94a8e385db8c607fb791c9a031116bb47d841e1fb272df53d3a02ba81928be23","label_name":"myworstwallet","name_hash":"b7379775b04c057bc7bfe218555e6eb782f15f3a6a02056738330d174f6033c9","registrant_address":"9c6b3ad253ee1a625e74051e00a8402f131f2a2f","transaction_hash":"394582bcfa62a092b3ad5d78ca5d66c011d8b4e374ae59a6ef4f26489180c780"}
{"block_number":9470906,"controller_address":"911893036886996b966621ad0baeab9f33dcb29f","ens_name":"zauber.eth","label_hash":"06aa1ae4f5e442da619f731bfd66698336c241deb6969386036bed1aa1ebbe65","label_name":"zauber","name_hash":"48bff21cf0e3d569309c97dd1e3be6872e59f3fb6fdd4e47e1ad84ddc0c2a0c9","registrant_address":"911893036886996b966621ad0baeab9f33dcb29f","transaction_hash":"a678c5d49c1df00004480d10f8d74f69ba1792bf82ac5d7db305cba99cbbd75b"}
{"block_number":9470908,"controller_address":"13c345e760f053fe97273ba606d3258b6d2892d3","ens_name":"cabern.eth","label_hash":"d51413baf0b4247ff8de194c985879434fcb043bff5340ae9fad8e31c59a7d4a","label_name":"cabern","name_hash":"252a7121373578ff63de789597010ccae3eb4050d4ac4d1c2fabfdee73ead08a","registrant_address":"13c345e760f053fe97273ba606d3258b6d2892d3","transaction_hash":"b8363a8e5daad19b040b3a1e5a16e0c66951ceabc0838d3f074331b7f2cbe909"}
{"block_number":9470930,"controller_address":"911893036886996b966621ad0baeab9f33dcb29f","ens_name":"taler.eth","label_hash":"73263ae383978679b86a0b9e23d0559b418e13802e03c565e9947c944f69f89c","label_name":"taler","name_hash":"33cda86f1f37aecfd7256c02298fbc6b36075bd1338e7d80ae5564390fe03081","registrant_address":"911893036886996b966621ad0baeab9f33dcb29f","transaction_hash":"baf6bb8008bb7ef8225f2ac7f31db8f94fc5532daed6e338ca45a307ca76291c"}
{"block_number":9470960,"controller_address":"9c6b3ad253ee1a625e74051e00a8402f131f2a2f","ens_name":"mew4ever.eth","label_hash":"75363b928e996a2875c4de27f5fa14c434e4829bd897072488e563f8185080a6","label_name":"mew4ever","name_hash":"66b202265e15f9ba07c147f5c86503aab95cc2b99452b25e10f3a7f2e51c3552","registrant_address":"9c6b3ad253ee1a625e74051e00a8402f131f2a2f","transaction_hash":"f1ef47b15b4e682d52f4390620c6a2d7fb21dbe1fb463fd3799259959526f4d2"}
{"block_number":9470978,"controller_address":"571a6a108adb08f9ca54fe8605280f9ee0ed4af6","ens_name":"walletfan.eth","label_hash":"e985c5f1d91edd53c67d713d43ee47bf7c8aa71369890c2d36c3fa35b6a97ef9","label_name":"walletfan","name_hash":"4c067e8e081391e36373889d84f06cab8c268e71ab566769aeeffc69ff5fd99c","registrant_address":"571a6a108adb08f9ca54fe8605280f9ee0ed4af6","transaction_hash":"5e21138f9382144edc6c36102ad218e6b4d5143cf440a01bab1df643fe815ce4"}
{"block_number":9471024,"controller_address":"54cc0802aa8bab73b21b897f96b37aff16239eea","ens_name":"mateoventures.eth","label_hash":"dacf06635c663cff386ad8a4f2e15edb1d8dd02157f72322eadd9b5a6a406821","label_name":"mateoventures","name_hash":"41eecae174e2dcac66bcfaefac0c7434c729530c7cf0f241a23ef36150797b7a","registrant_address":"54cc0802aa8bab73b21b897f96b37aff16239eea","transaction_hash":"edb7f34d55874f6c7fc3e92763a2ee6d0bcae3b5f5bc8cc10e29a9c3392b4b31"}
{"block_number":9471118,"controller_address":"bd4ac2646ad731d6b4fdb1b21d6a0a7f2865fa0c","ens_name":"totether.eth","label_hash":"91dbe3c102ec8cf16d4571b32f25f32e48f52cf5da9639a120822a9de28b4c45","label_name":"totether","name_hash":"49f7f57f0a25dc874d41a55ec97145591c2f8bb1b768e547a3a9cbba134db591","registrant_address":"bd4ac2646ad731d6b4fdb1b21d6a0a7f2865fa0c","transaction_hash":"ecfb8378a4a83e09b9fdfa300f379612fa2ba64c5763e11a2acdfcb6ee5aeff8"}
{"block_number":9471143,"controller_address":"b33bb135e0111ff8212ba4cb0988a2861b0baed4","ens_name":"adamaziz.eth","label_hash":"7e2af5dd6cf82fa80a4b363e58ef5f1c7d2fe4a9a58b9b994935d78d0c93dac9","label_name":"adamaziz","name_hash":"1a951ab454441656973924df533fcfed2908705ef666145c8153657efee910e1","registrant_address":"b33bb135e0111ff8212ba4cb0988a2861b0baed4","transaction_hash":"e91c8a25394e50a840e10484f8cb1afa73b5298ce9c7b2439d69698529d4b77e"}
{"block_number":9471153,"controller_address":"7c60130a2bb5e10e6e6bd946053b10e7def1def1","ens_name":"mapleloans.eth","label_hash":"bc53d136da538a669ffb5acc81dbc6349bb5d36b4a330097aeecdd9636090667","label_name":"mapleloans","name_hash":"abe82b64ed90425183ba189d72bb6a500776c80f46efed1e4a0ed7868e58874e","registrant_address":"7c60130a2bb5e10e6e6bd946053b10e7def1def1","transaction_hash":"22c2892b17fa0de64da8da6bc4aec70dc05aa4236224f9c1d2f77754b85be575"}
{"block_number":9471437,"controller_address":"b6ad61b7558c718269a9129bd9ed9839d88a126a","ens_name":"ryanjk.eth","label_hash":"0a59c1ea901edf8bc7f5e2a039dc9ae3b7f341cf4c654aa001677b8233417b80","label_name":"ryanjk","name_hash":"9039409fa4bd345986b425cbd26276f6b1f7e44d47950c8c8cd95993c4688ef3","registrant_address":"b6ad61b7558c718269a9129bd9ed9839d88a126a","transaction_hash":"bb2fd7618ec5e8b9b1ccbcaf796067c644cba107edd6fc06bc6d01da65f1076f"}

Oh, I thought you were talking about cargo build. The github build error is related to API rate limit exceeded.

How did you get around this @harsh9200 ?

Apparently this was a spurious error that went away after I reran the build. Were you seeing it as well?

This looks great! Thanks

Not sure about the scope of this substream in specific. As I understand, this will only convert ENS register, but here is some additional data I need to have to paint the whole picture about ENS names:
The resolved address set up and updates for lookup and reverse lookup
ENS Ownership Transfer data,
Renewal data,
expiration time of each name,
cost incurred on each action,
ERC721 ID would be nice to have since it's becoming more and more the standard.

@this-username-is-taken yes I was running into it as well. Like you said kind of random when I would see it. Not an issue atm


Modals with focus trap

Summary
Focus should be trapped inside a modal
Motivation
When users use a modal dialog, they expect to stay in the modal when using the Tab key.

We have added it for the latest version.
I close the issue for now.
Thank you.


Generating Lightmaps?

Hi
Thank you very much for the great effort.
I have a question. I request you to help. Sorry for asking my question as a "issue". I could not find any option in github to post a message to you.
I have been looking for a library which generates shadow map images (Image Based Lighting) for each mesh of my scene. (2nd UV channel). I mean, when we bake lighting of a scene in 3D editors like Blender/Maya/3ds max, it generates lightmap images which contain shadow information. I want to generate the same images programatically without using any such 3d editors. I have attached a a sample image to this post.

Is it possible to achieve the same with OSPRay or Embree? If not possible, do you know any such library which is free/opensource?
I have seen many Path-Tracing/Ray-Tracing libraries but they all are rendering the complete scene without giving a clue how to generate those images. I have been struggling for more than 2 months.
Awaiting your reply.
Thanks in advance.

Hi,
generating lightmaps is not supported yet with OSPRay, at least not out-of-the-box. It would be a new feature (we though about that before), however, not with high priority.
Maybe have a look at Unity, it is free for non-professional use, and supports the generation of lightmaps.
Cheers,
Johannes

I am actually working on a prototype lightmapper using OSPRay, but this is currently strictly exploratory and not expected to be publicly released anytime soon if at all.  Johannes suggestion is a good one, as I know with Unity you can view and should be able to export generated lightmaps in the editor, if you can import your scene data into Unity.  Unreal may have similar functionality.

Thank you for your response. I cannot use unity for my requirement. I want to develop a service which does baking. So, when a 3d model is pushed to this service, it should bake it and export it and publish it to CDN. That is why I have been searching for such a library for more than 3 months. Not getting any clue.

that sounds great and I'd love to hear how it progresses.  I'll try to remember to post to this issue if and when anything is released on our end.  It's pretty niche and generally built into game engines so I'm not too surprised you're not seeing many hits for a third party middleware.  you might try enlighten:  https://www.siliconstudio.co.jp/middleware/enlighten/en/ .  This is actually what Unity uses in its legacy lightmapper.

Thank you. But enlighten is not a free/open source solution. 😣On 30-Apr-2019 1:38 AM, carsonbrownlee<EMAIL_ADDRESS>wrote:that sounds great and I'd love to hear how it progresses.  I'll try to remember to post to this issue if and when anything is released on our end.  It's pretty niche and generally built into game engines so I'm not too surprised you're not seeing many hits for a third party middleware.  you might try enlighten:  https://www.siliconstudio.co.jp/middleware/enlighten/en/ .  This is actually what Unity uses in its legacy lightmapper.
—You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or mute the thread.

Hi,
Any news on this subject? thanks

No, computing light maps is not planned anytime soon.

See idea at https://github.com/ospray/ospray/issues/553#issuecomment-1432867926: would it be ok if the app/user needs to provide the geometry image (of the mesh to compute the light map for?


Make Context.errors public in InsertRetryPolicy

Context.errors should be public in sdk.io.gcp.bigquery.InsertRetryPolicy so that it is possible for users to create their own InsertRetryPolicy which reacts differently to different errors.
Also, "notFound" should probably be in PERSISTENT_ERRORS, the list of non-transient errors for which InsertRetryPolicy.retryTransientErrors does not retry infinitely-many times.
Finally it would be great if users could specify a max number of retry attempts.
This issue may be related to Beam-3271.
Imported from Jira BEAM-4187. Original Jira may contain additional context.
Reported by: dnb.

+1 on this!


Can't handle the exception when parseString takes a "undefined"

In this example:
var fs = require('fs'),
    xml2js = require('xml2js');

var parser = new xml2js.Parser();
fs.readFile(__dirname + '/foo.xml', function(err, data) {
    parser.parseString(data, function (err, result) {
        console.dir(result);
        console.log('Done');
    });
});

Unintentionally when I give a wrong file path, the function parseString will take an undefined instead of data string, and the parser didn't handle the exception here:
https://github.com/Leonidas-from-XIV/node-xml2js/blob/master/lib/xml2js.js#L439
str = str.toString();  // str is undefined, throw an exception
if (str.trim() === '') {
this.emit("end", null);
  return true;
}

And the server stop with the error below:
c:\Users\zhipengj\WebstormProjects\psme\node_modules\xml2js\lib\xml2js.js:444
      str = str.toString();
                ^
TypeError: Cannot call method 'toString' of undefined
    at Parser.exports.Parser.Parser.parseString (c:\Users\zhipengj\WebstormProjects\psme\node_modules\xml2js\lib\xml2js.js:444:17)
    at Parser.bind [as parseString] (c:\Users\zhipengj\WebstormProjects\psme\node_modules\xml2js\lib\xml2js.js:6:59)
    at service.parseFile (c:\Users\zhipengj\WebstormProjects\psme\services\services.js:83:12)
    at fs.js:207:20
    at Object.oncomplete (fs.js:107:15)

Process finished with exit code 8

I think it could be gracefully if we could handle the exception without crashing the server.

I have created a pull request for this issue: https://github.com/Leonidas-from-XIV/node-xml2js/pull/194

Well you should definitely always check whether you read sensible data. xml2js cannot check for every eventuality. In your example, err would be populated with some indication that an error happened, so you should check for that before pushing the (invalid) data to xml2js.


feat: pcap write

I created a mpsc channel and spawned a new thread for write operation. I am facing problems with sharing ownership of cap between threads (thread_parse_packets, thread_write_packets) and borrowing Packet.
error[E0382]: use of moved value: `cap`
   --> src/gui/types/sniffer.rs:412:24
    |
388 |             let cap = Arc::new(Mutex::new(unwrapped_cap));
    |                 --- move occurs because `cap` has type `std::sync::Arc<std::sync::Mutex<pcap::Capture<pcap::Active>>>`, which does not implement the `Copy` trait
...
397 |                 .spawn(move || {
    |                        ------- value moved into closure here
...
401 |                         &cap.lock().unwrap(),
    |                          --- variable moved due to use in closure
...
412 |                 .spawn(move || writer(&cap.lock().unwrap(), rx));
    |                        ^^^^^^^         --- use occurs due to use in closure
    |                        |
    |                        value used here after move

error[E0596]: cannot borrow `*cap` as mutable, as it is behind a `&` reference
  --> src/secondary_threads/parse_packets.rs:43:15
   |
43 |         match cap.next_packet() {
   |               ^^^ `cap` is a `&` reference, so the data it refers to cannot be borrowed as mutable
   |
help: consider changing this to be a mutable reference
   |
31 |     mut cap: &mut Capture<Active>,
   |               +++

error: lifetime may not live long enough
  --> src/secondary_threads/parse_packets.rs:55:21
   |
31 |     mut cap: &Capture<Active>,
   |              - let's call the lifetime of this reference `'1`
...
36 |     tx: Sender<Packet>,
   |     -- has type `std::sync::mpsc::Sender<pcap::Packet<'2>>`
...
55 |                     tx.send(packet);
   |                     ^^^^^^^^^^^^^^^ argument requires that `'1` must outlive `'2`

error[E0505]: cannot move out of `packet` because it is borrowed
  --> src/secondary_threads/parse_packets.rs:55:29
   |
50 |             Ok(packet) => {
   |                ------ binding `packet` declared here
...
54 |                 if let Ok(headers) = get_sniffable_headers(&packet, my_link_type) {
   |                                                            ------- borrow of `packet` occurs here
55 |                     tx.send(packet);
   |                             ^^^^^^ move out of `packet` occurs here
...
62 |                         headers,
   |                         ------- borrow later used here

error[E0596]: cannot borrow `*cap` as mutable, as it is behind a `&` reference
  --> src/secondary_threads/parse_packets.rs:96:40
   |
96 |                     if let Ok(stats) = cap.stats() {
   |                                        ^^^ `cap` is a `&` reference, so the data it refers to cannot be borrowed as mutable

Could you help @GyulyVGC?

Hi Roopesh.
You have to share a clone of the Arc between threads... then you'll .lock() it in the respective threads.
For the packet problem, just try sending a reference over the channel instead of the value.


Reduce school overview memory usage

Who is this PR for?
Users who want a fast Insights experience.
What problem does this PR fix?
Our automated Heroku restarts have avoided major memory errors and crashes in the past week, but memory is still high. It usually peaks somewhere around 103%-105% of our box size daily which dips into swap memory before restarting.
What does this PR do?
Use #select to pull fewer event note fields into school overview query, reducing retained memory by ~11% for the School Overview page in the demo data environment.
To start investigating, I looked at the derailed_benchmarks gem: https://github.com/schneems/derailed_benchmarks/.
The derailed_benchmarks guide told me to start my app with RAILS_ENV=production, which I did on a separate branch. (I didn't want to put that branch up on GitHub because it does bad things like disable SSL in order to make RAILS_ENV=production work locally.)
The derailed_benchmarks API proved complicated to work with, because our app needs user authentication to access meaningful controller actions. So I ended up reusing some of @kevinrobinson's csv_benchmark.rake code and wrapping it around the controller action for the school overview and student profile pages:
# schools_controller.rb

def show
  report = MemoryProfiler.report do
    @serialized_data = json_for_overview(@school)
    render 'shared/serialized_data'
  end

  puts "Printing report..."
  report.pretty_print(to_file: "tmp/memory_profiler_school_overview_#{Time.current}.txt")
end

--

# students_controller.rb

def show
  report = MemoryProfiler.report do
    student = Student.find(params[:id])
    chart_data = StudentProfileChart.new(student).chart_data

    @serialized_data = { ... }
    render 'shared/serialized_data'
  end

  puts "Printing report..."
  report.pretty_print(to_file: "tmp/memory_profiler_student_profile_#{Time.current}.txt")
end

The first thing I saw was that the School Overview retained about 3x more memory than the Student Profile action, comparing warm path to warm path (demo data, RAILS_ENV=production):
student profile warm:
Total allocated: 1740144 bytes (19952 objects)
Total retained:  162096 bytes (1620 objects)

school overview warm:
Total allocated: 3782716 bytes (35091 objects)
Total retained:  442998 bytes (3350 objects)

When I looked into "Retained Strings" for the school overview report, I saw strings that we generate as fake event note content:
# fake_event_note_generator.rb, #sample_text
"Meredith is setting up a family meeting to discuss absences and tardies, and to follow up on concerns about supporting morning routines at home"

Those strings shouldn't be in the school overview  memory allocation! The school overview doesn't surface event note content. So I dove into the code until I found students_query_helper.rb loading up EventNotes. I tried adding the select statement in this PR to keep event note content out of the mutable data query, and here are the results I found (warm to warm):
master (current app state):
Total allocated: 3785005 bytes (35109 objects)
Total retained:  443397 bytes (3354 objects)

with event note #select in students_query_helper:
Total allocated: 3249055 bytes (29603 objects)
Total retained:  397374 bytes (2725 objects)

Adding the select statement reduced the memory increase by about 46KB, or around 10%, with our demo data setup. I'd predict a bigger impact in the production data environment, because we have many more students and many more event notes in production than in the demo dataset.
Checklist

[ ] Manually QA visiting School Overview Page
[ ] Manually QA running rake school_overview precompute job

@alexsoble This is a great investigation, explanation and improvement! 🎉  It's super useful to see how memory profiling can reveal fields that could be removed altogether.
One feeling I have is that using #select like this adds a wrinkle to both Ruby and JS code - these "event note" objects are no longer plain EventNote objects but instead a partial view of them, optimized based on what the product needs.  This seems good, but a thing that future us might be likely to forget, and figured it was worth mentioning and we'll see what happens :) Either way, this is great and let's ship and measure! 🚢

@kevinrobinson Thanks! Yep, good point about the partial view + human forgetfulness. Having the #selected fields as a big ole constant up at the top of the StudentsQueryHelper file at least makes this a bit more prominent. One other thing we could do would be rename the variable on the Ruby/JS sides. A few ideas:

event_notes => event_note_fields
event_notes => event_note_views
event_notes => partial_event_note_views
event_notes => partial_event_notes

Any of those sound good @kevinrobinson?
How are you thinking we'll measure this before/after we ship? Will we just look at the shape of the memory charts in the Heroku metrics dashboard and see if the charts look different before/after? The baseline stats I took were with demo data, not real data, so they're not a good benchmark for measuring.

@alexsoble Yeah, renaming could be good, those all seem like they'd make it more obvious it's not a full model.  We could also ship first to see the memory impact before doing that next step.
For measuring memory impact here, these test cases you have are 💯 , but as you note they're indirect measures.  I think that's probably good enough; we have reasonable evidence to indicate this will reduce memory usage by a measurable amount, it costs us only a little in terms of complexity, and so let's just ship it and then look at the top-line memory usage per day after a week.   If it's a bit less, great and an easy win!  If it's worse we back the changes out to reduce the complexity cost.  If it's in the middle we move on to other work since we resolved the immediate issue here and not as much impact for users at this moment in figuring out how to measure and optimize more precisely beyond that.

@kevinrobinson Cool, I like that approach! 😎

🚢 🚢 🚢
I'm going to merge, deploy, manually kick off a precompute job, and visit the overview page.

Precompute job was ✅ , school overview page looked ✅ , will check the metrics after a week and see what the effect was!


fix!: use type string for uint256 parameters

What it solves
Solves #410
Javascript number is only able to manage safely numbers up to 2^53-1. Some parameters used on the Safe smart contracts allow to use uint256 solidity type numbers. That would mean that those parameters can use 2^256-1 values. This would cause overflow on those parameters that are typed with Javascript number
How this PR fixes it
There are two ways of solving this:

Using BigNumber library
Using strings to send those values.

As we want to support Web3 and Ethers it's difficult to use a BigNumber library, as they use a different one that would make types more difficult to match. To handle values without depending on a library and loosing precision then we should use strings when sending those values, and converting internally to BigNumber when we need to modify them.

Another alternative would be using JS' BigInt (just saying)

@mmv08 we also considered that, but would need deeper changes and more effort as Ethers v5 it's still not compatible and Web3 neither


util: remove unused code

Socket is created and maintained by grpc, so we can remove these helper functions now.

LGTM


Improved discovery

So idea is that node can report different IP (external IP), that should be use for discovery. I implemented basic mappings that will keep track of node ID and it's real ip (this could change) and real IP with external IP, so we know what should we report to the rest of the network

PR NET pr-1395 Successfully deployed! explorer  https://explorer-pr-1395.prnet.taraxa.io  RPC  https://rpc-pr-1395.prnet.taraxa.io Boot NodesBoot Node <IP_ADDRESS>Boot Node <IP_ADDRESS>Boot Node 3<IP_ADDRESS>

/cleanup

prnet cleaned-up successfully

/deploy

PR NET pr-1395 Successfully deployed! explorer  https://explorer-pr-1395.prnet.taraxa.io  RPC  https://rpc-pr-1395.prnet.taraxa.io Boot NodesBoot Node <IP_ADDRESS>Boot Node <IP_ADDRESS>Boot Node 3<IP_ADDRESS> RPC NodesRPC Node 1<IP_ADDRESS>RPC Node <IP_ADDRESS>RPC Node 3<IP_ADDRESS>

/deploy

PR NET pr-1395 Successfully deployed! explorer  https://explorer-pr-1395.prnet.taraxa.io  RPC  https://rpc-pr-1395.prnet.taraxa.io Boot NodesBoot Node <IP_ADDRESS>Boot Node <IP_ADDRESS>Boot Node 3<IP_ADDRESS> RPC NodesRPC Node 1<IP_ADDRESS>RPC Node <IP_ADDRESS>RPC Node 3<IP_ADDRESS>

/deploy

PR NET pr-1395 Successfully deployed! explorer  https://explorer-pr-1395.prnet.taraxa.io  RPC  https://rpc-pr-1395.prnet.taraxa.io Boot NodesBoot Node <IP_ADDRESS>Boot Node <IP_ADDRESS>Boot Node 3<IP_ADDRESS> RPC NodesRPC Node 1<IP_ADDRESS>RPC Node <IP_ADDRESS>RPC Node 3<IP_ADDRESS>

/deploy

PR NET pr-1395 Successfully deployed! explorer  https://explorer-pr-1395.prnet.taraxa.io  RPC  https://rpc-pr-1395.prnet.taraxa.io Boot NodesBoot Node <IP_ADDRESS>Boot Node <IP_ADDRESS>Boot Node 3<IP_ADDRESS> RPC NodesRPC Node 1<IP_ADDRESS>RPC Node <IP_ADDRESS>RPC Node 3<IP_ADDRESS>

/cleanup

prnet cleaned-up successfully

/deploy

PR NET pr-1395 Successfully deployed! explorer  https://explorer-pr-1395.prnet.taraxa.io  RPC  https://rpc-pr-1395.prnet.taraxa.io Boot NodesBoot Node <IP_ADDRESS>Boot Node <IP_ADDRESS>Boot Node 3<IP_ADDRESS> RPC NodesRPC Node <IP_ADDRESS>RPC Node <IP_ADDRESS>RPC Node 3<IP_ADDRESS>

/cleanup

prnet cleaned-up successfully

prnet cleaned-up successfully


Use non-broken version of managed-instance-group and allow override

Fix for https://github.com/GoogleCloudPlatform/terraform-google-nat-gateway/issues/65

Actually, I don't think you can use a variable for a module version:
Error downloading modules: Error loading modules: Malformed constraint: ${var.mig_version}

Apologies, this does not seem to be allowed.
https://github.com/hashicorp/terraform/issues/1439
Latest version works now and I can't see a way to improve this so, closing.


[Feature]: Add high priority documentation for Subscriptions

Contact Details
<EMAIL_ADDRESS>What should we build?
Please create reference documentation for the following topics on https://workfloworchestrator.org/orchestrator-core/ using the "how to write docs" information located in https://docs.google.com/document/d/10Fz98moy-pMyyk__PTR8xg4aeHuIv5VegJa99ZpzvkI/edit

[ ] Lifecycle of a Customer facing service
[ ] Product-blocks are resource-facing
[ ] Graph of all interlinked resources
[ ] Depends_on
[ ] In_use_by
[ ] Customers need to be implemented as first class citizen

Relevant pseudo code
No response

https://workfloworchestrator.org/orchestrator-core/architecture/application/graphql/?h=cu#overriding-customertype-and-resolvers Customers


Add e2e tests for Mixer Dashboard

This PR follows-on the PR that setup e2e testing for the Istio grafana dashboard. It
establishes a set of baseline tests that verify that some data is available for each
of the queries in the Mixer dashboard.
This work is part of the effort to move the Mixer dashboard status from dev into alpha (and
eventually beta and stable) status.
As part of this effort, the existing Mixer dashboard components that referenced the old runtime
metrics were updated to match the new runtime2 metrics, and the barely supported rows feature
of grafana were removed where applicable.

Fixes: #2163

@douglas-reid: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
9a07939383a674e218a876ec8a7489ad05c67932
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@douglas-reid: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
9a07939383a674e218a876ec8a7489ad05c67932
link
/test istio-unit-tests

prow/e2e-simpleTests.sh
9a07939383a674e218a876ec8a7489ad05c67932
link
/test e2e-simple

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@douglas-reid: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
9a07939383a674e218a876ec8a7489ad05c67932
link
/test istio-unit-tests

prow/e2e-simpleTests.sh
9a07939383a674e218a876ec8a7489ad05c67932
link
/test e2e-simple

prow/e2e-bookInfoTests.sh
9a07939383a674e218a876ec8a7489ad05c67932
link
/test e2e-bookInfo

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@douglas-reid: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
9a07939383a674e218a876ec8a7489ad05c67932
link
/test istio-unit-tests

prow/e2e-simpleTests.sh
9a07939383a674e218a876ec8a7489ad05c67932
link
/test e2e-simple

prow/e2e-bookInfoTests.sh
9a07939383a674e218a876ec8a7489ad05c67932
link
/test e2e-bookInfo

prow/istio-pilot-e2e.sh
9a07939383a674e218a876ec8a7489ad05c67932
link
/test istio-pilot-e2e

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@douglas-reid: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests.sh
9a07939383a674e218a876ec8a7489ad05c67932
link
/test e2e-simple

prow/e2e-bookInfoTests.sh
9a07939383a674e218a876ec8a7489ad05c67932
link
/test e2e-bookInfo

prow/istio-pilot-e2e.sh
9a07939383a674e218a876ec8a7489ad05c67932
link
/test istio-pilot-e2e

prow/istio-unit-tests.sh
973e62c9f9d7071324ddd06995cd9915e8c483fd
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@douglas-reid: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-bookInfoTests.sh
9a07939383a674e218a876ec8a7489ad05c67932
link
/test e2e-bookInfo

prow/istio-pilot-e2e.sh
9a07939383a674e218a876ec8a7489ad05c67932
link
/test istio-pilot-e2e

prow/istio-unit-tests.sh
973e62c9f9d7071324ddd06995cd9915e8c483fd
link
/test istio-unit-tests

prow/e2e-simpleTests.sh
973e62c9f9d7071324ddd06995cd9915e8c483fd
link
/test e2e-simple

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@douglas-reid: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-pilot-e2e.sh
9a07939383a674e218a876ec8a7489ad05c67932
link
/test istio-pilot-e2e

prow/istio-unit-tests.sh
973e62c9f9d7071324ddd06995cd9915e8c483fd
link
/test istio-unit-tests

prow/e2e-simpleTests.sh
973e62c9f9d7071324ddd06995cd9915e8c483fd
link
/test e2e-simple

prow/e2e-bookInfoTests.sh
973e62c9f9d7071324ddd06995cd9915e8c483fd
link
/test e2e-bookInfo

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@douglas-reid: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
973e62c9f9d7071324ddd06995cd9915e8c483fd
link
/test istio-unit-tests

prow/e2e-simpleTests.sh
973e62c9f9d7071324ddd06995cd9915e8c483fd
link
/test e2e-simple

prow/e2e-bookInfoTests.sh
973e62c9f9d7071324ddd06995cd9915e8c483fd
link
/test e2e-bookInfo

prow/istio-pilot-e2e.sh
973e62c9f9d7071324ddd06995cd9915e8c483fd
link
/test istio-pilot-e2e

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Reviewers: please note the CircleCI build named e2e_dashboard (and the green status).

Please run /addons/grafana/fix_datasources.sh. See https://github.com/istio/istio/blob/master/addons/grafana/README.md#implementation-details for details.
The Grafana folks said they are working on something (https://community.grafana.com/t/what-is-the-correct-way-to-save-dashboard-json-for-use-in-provisioning/5254). I haven't checked the new 5.0 (non-beta) to see if this is improved. I'll do that.

@jeffmendoza Script run.

@douglas-reid: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests.sh
973e62c9f9d7071324ddd06995cd9915e8c483fd
link
/test e2e-simple

prow/e2e-bookInfoTests.sh
973e62c9f9d7071324ddd06995cd9915e8c483fd
link
/test e2e-bookInfo

prow/istio-pilot-e2e.sh
973e62c9f9d7071324ddd06995cd9915e8c483fd
link
/test istio-pilot-e2e

prow/istio-unit-tests.sh
8a85c403314661e60598a2b849ee84eb7faf8c17
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

PTAL. Comments addressed.

@douglas-reid: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
78e3664daa6b15a3b4aa675d14c9d43aa303fc58
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


[Feature][API] New restful API for taskInstance

taskInstance openapi,  query taskInstance by code , taskInstance stop/savepoint

Codecov Report

Merging #13070 (204172d) into dev (fed1e85) will decrease coverage by 0.03%.
The diff coverage is 23.80%.

@@             Coverage Diff              @@
##                dev   #13070      +/-   ##
============================================
- Coverage     39.21%   39.18%   -0.04%
- Complexity     4273     4275       +2
============================================
  Files          1069     1069
  Lines         40301    40276      -25
  Branches       4632     4615      -17
============================================
- Hits          15804    15782      -22
+ Misses        22719    22715       -4
- Partials       1778     1779       +1

Impacted Files
Coverage Δ

...uler/api/service/impl/TaskInstanceServiceImpl.java
51.87% <0.00%> (-7.10%)
:arrow_down:

...duler/api/controller/TaskInstanceV2Controller.java
90.00% <100.00%> (+2.50%)
:arrow_up:

.../org/apache/dolphinscheduler/api/enums/Status.java
100.00% <100.00%> (ø)

...er/master/dispatch/host/assign/RandomSelector.java
77.77% <0.00%> (-5.56%)
:arrow_down:

...eduler/api/dto/schedule/ScheduleCreateRequest.java
83.33% <0.00%> (-2.39%)
:arrow_down:

...e/dolphinscheduler/service/queue/TaskPriority.java
51.31% <0.00%> (-1.25%)
:arrow_down:

...cheduler/plugin/alert/dingtalk/DingTalkSender.java
34.13% <0.00%> (-0.78%)
:arrow_down:

...inscheduler/plugin/registry/etcd/EtcdRegistry.java
50.34% <0.00%> (-0.69%)
:arrow_down:

...he/dolphinscheduler/plugin/task/java/JavaTask.java
58.50% <0.00%> (-0.69%)
:arrow_down:

...lphinscheduler/api/dto/task/TaskCreateRequest.java
83.33% <0.00%> (-0.54%)
:arrow_down:

... and 24 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


OSError: ./data/weneed/mask_r50/epoch_12.pth is not a checkpoint file

I followed the steps and tried to train with 2 GPUs and got this error.
./tools/dist_train.sh ./configs/bags/gs_mask_rcnn_r50_fpn_1x_lvis.py 2

Setting OMP_NUM_THREADS environment variable for each process to be 1 in default, to avoid your system being overloaded, please further tune the variable for optimal performance in your application as needed.

[07/09 11:22:20] root WARNING: The model and loaded state dict do not match exactly
unexpected key in source state_dict: fc.weight, fc.bias
Train fc_cls only.
--Dist-train--IS:False--ISout:False
Dist-train --- Not using image sampling.
Train fc_cls only.
--Dist-train--IS:False--ISout:False
Dist-train --- Not using image sampling.
[07/09 11:22:39] mmcv.runner.runner INFO: load checkpoint from ./data/weneed/mask_r50/epoch_12.pth
Traceback (most recent call last):
File "./tools/train.py", line 169, in
main()
File "./tools/train.py", line 165, in main
logger=logger)
File "/home/sy/Desktop/xlhuang/BalancedGroupSoftmax-master/mmdet/apis/train.py", line 58, in train_detector
_dist_train(model, dataset, cfg, validate=validate)
File "/home/sy/Desktop/xlhuang/BalancedGroupSoftmax-master/mmdet/apis/train.py", line 204, in _dist_train
runner.load_checkpoint(cfg.load_from)
File "/home/sy/anaconda3/envs/mmdet/lib/python3.7/site-packages/mmcv/runner/runner.py", line 234, in load_checkpoint
self.logger)
File "/home/sy/anaconda3/envs/mmdet/lib/python3.7/site-packages/mmcv/runner/checkpoint.py", line 171, in load_checkpoint
raise IOError('{} is not a checkpoint file'.format(filename))
OSError: ./data/weneed/mask_r50/epoch_12.pth is not a checkpoint file
[07/09 11:22:39] mmcv.runner.runner INFO: load checkpoint from ./data/weneed/mask_r50/epoch_12.pth
Traceback (most recent call last):
File "./tools/train.py", line 169, in
main()
File "./tools/train.py", line 165, in main
logger=logger)
File "/home/sy/Desktop/xlhuang/BalancedGroupSoftmax-master/mmdet/apis/train.py", line 58, in train_detector
_dist_train(model, dataset, cfg, validate=validate)
File "/home/sy/Desktop/xlhuang/BalancedGroupSoftmax-master/mmdet/apis/train.py", line 204, in _dist_train
runner.load_checkpoint(cfg.load_from)
File "/home/sy/anaconda3/envs/mmdet/lib/python3.7/site-packages/mmcv/runner/runner.py", line 234, in load_checkpoint
self.logger)
File "/home/sy/anaconda3/envs/mmdet/lib/python3.7/site-packages/mmcv/runner/checkpoint.py", line 171, in load_checkpoint
raise IOError('{} is not a checkpoint file'.format(filename))
OSError: ./data/weneed/mask_r50/epoch_12.pth is not a checkpoint file
Traceback (most recent call last):
File "/home/sy/anaconda3/envs/mmdet/lib/python3.7/runpy.py", line 193, in _run_module_as_main
"main", mod_spec)
File "/home/sy/anaconda3/envs/mmdet/lib/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/home/sy/anaconda3/envs/mmdet/lib/python3.7/site-packages/torch/distributed/launch.py", line 253, in
main()
File "/home/sy/anaconda3/envs/mmdet/lib/python3.7/site-packages/torch/distributed/launch.py", line 249, in main
cmd=cmd)
subprocess.CalledProcessError: Command '['/home/sy/anaconda3/envs/mmdet/bin/python', '-u', './tools/train.py', '--local_rank=1', './configs/bags/gs_mask_rcnn_r50_fpn_1x_lvis.py', '--launcher', 'pytorch']' returned non-zero exit status 1.

it seems this file './data/weneed/mask_r50/epoch_12.pth'  is missing.

I followed the steps and tried to train with 2 GPUs and got this error. ./tools/dist_train.sh ./configs/bags/gs_mask_rcnn_r50_fpn_1x_lvis.py 2
Setting OMP_NUM_THREADS environment variable for each process to be 1 in default, to avoid your system being overloaded, please further tune the variable for optimal performance in your application as needed.
[07/09 11:22:20] root WARNING: The model and loaded state dict do not match exactly
unexpected key in source state_dict: fc.weight, fc.bias
Train fc_cls only. --Dist-train--IS:False--ISout:False Dist-train --- Not using image sampling. Train fc_cls only. --Dist-train--IS:False--ISout:False Dist-train --- Not using image sampling. [07/09 11:22:39] mmcv.runner.runner INFO: load checkpoint from ./data/weneed/mask_r50/epoch_12.pth Traceback (most recent call last): File "./tools/train.py", line 169, in main() File "./tools/train.py", line 165, in main logger=logger) File "/home/sy/Desktop/xlhuang/BalancedGroupSoftmax-master/mmdet/apis/train.py", line 58, in train_detector _dist_train(model, dataset, cfg, validate=validate) File "/home/sy/Desktop/xlhuang/BalancedGroupSoftmax-master/mmdet/apis/train.py", line 204, in _dist_train runner.load_checkpoint(cfg.load_from) File "/home/sy/anaconda3/envs/mmdet/lib/python3.7/site-packages/mmcv/runner/runner.py", line 234, in load_checkpoint self.logger) File "/home/sy/anaconda3/envs/mmdet/lib/python3.7/site-packages/mmcv/runner/checkpoint.py", line 171, in load_checkpoint raise IOError('{} is not a checkpoint file'.format(filename)) OSError: ./data/weneed/mask_r50/epoch_12.pth is not a checkpoint file [07/09 11:22:39] mmcv.runner.runner INFO: load checkpoint from ./data/weneed/mask_r50/epoch_12.pth Traceback (most recent call last): File "./tools/train.py", line 169, in main() File "./tools/train.py", line 165, in main logger=logger) File "/home/sy/Desktop/xlhuang/BalancedGroupSoftmax-master/mmdet/apis/train.py", line 58, in train_detector _dist_train(model, dataset, cfg, validate=validate) File "/home/sy/Desktop/xlhuang/BalancedGroupSoftmax-master/mmdet/apis/train.py", line 204, in _dist_train runner.load_checkpoint(cfg.load_from) File "/home/sy/anaconda3/envs/mmdet/lib/python3.7/site-packages/mmcv/runner/runner.py", line 234, in load_checkpoint self.logger) File "/home/sy/anaconda3/envs/mmdet/lib/python3.7/site-packages/mmcv/runner/checkpoint.py", line 171, in load_checkpoint raise IOError('{} is not a checkpoint file'.format(filename)) OSError: ./data/weneed/mask_r50/epoch_12.pth is not a checkpoint file Traceback (most recent call last): File "/home/sy/anaconda3/envs/mmdet/lib/python3.7/runpy.py", line 193, in _run_module_as_main "main", mod_spec) File "/home/sy/anaconda3/envs/mmdet/lib/python3.7/runpy.py", line 85, in _run_code exec(code, run_globals) File "/home/sy/anaconda3/envs/mmdet/lib/python3.7/site-packages/torch/distributed/launch.py", line 253, in main() File "/home/sy/anaconda3/envs/mmdet/lib/python3.7/site-packages/torch/distributed/launch.py", line 249, in main cmd=cmd) subprocess.CalledProcessError: Command '['/home/sy/anaconda3/envs/mmdet/bin/python', '-u', './tools/train.py', '--local_rank=1', './configs/bags/gs_mask_rcnn_r50_fpn_1x_lvis.py', '--launcher', 'pytorch']' returned non-zero exit status 1.

Hello, I can't download this ./data/download_models/faster_rcnn_r50_fpn_2x_20181010-443129e1.pth file right now, I dare ask if you have downloaded it


Allow scrollview_column == 0

Currently, scrollview only allows scrollview_column >= 1, this is indeed necessary for general windows, but for floating windows, it is better to allow column=0, because this way the scorllview can be displayed on the border of the floating window, reducing the display area occupied,
Like what nvim-cmp does:

Hi @ofseed, I've added a new option, scrollview_consider_border. When set to v:true, scrollbar and sign positioning will consider a floating window's border. With that and scrollview_column set to 1, the scrollbars and signs can be placed in a border column.
Vimscript:
let g:scrollview_consider_border = v:true

Lua:
vim.g.scrollview_consider_border = true

-- Or with a setup function:
require('scrollview').setup({
  ...
  consider_border = true,
  ...
})

This is very useful, thank you very much!


Multiple skills

Hi, Sam.
Thanks for a great library. I find it well written. The dependency injection pattern you've used makes it really easy to extend.
I run multiple skills in the scope of a single ruby project. I had to tweak Ralyxa::Skill class a bit to achieve the goal. I wonder if you'd be interested in PR that will remain current "singleton" Skill approach, whereas it will also allow instantiating multiple Skills with isolated Intents. Here is an excerpt from the patch. I will provide a PR later if you like the idea/approach.
module Ralyxa
  class Skill
    # Overriden Skill class allows to define multiple skills

    def initialize(handlers = nil)
      @handlers = handlers || {}
    end

    def handle(request, alexa_request_wrapper = Ralyxa::RequestEntities::Request)
      wrapped_request = alexa_request_wrapper.new(request)
      handler = @handlers[wrapped_request.intent_name]

      handler ? handler.new(wrapped_request).handle : warn(handler_not_found(wrapped_request))
    end

    def register_intent_handler(intent_name, handler_base_class = Ralyxa::Handler, &block)
      handler = self.class.build_handler(handler_base_class, &block)

      @handlers[intent_name] = handler
    end

    class << self
      def build_handler(handler_base_class, &block)
        Class.new(handler_base_class).tap do |handler|
          handler.send(:define_method, :handle, &block)
        end
      end
    end

    private

    def handler_not_found(request)
      <<~HEREDOC
        \e[33m
        WARNING: An intent declaration for intent "#{request.intent_name}" was not found.

        To define it, add an intent declaration to your Skill.

        You probably want something like:

        skill = Ralyxa::Skill.new
        skill.register_intent_handler('#{request.intent_name}') do
          respond("Hello World!")
        end
        \e[0m
      HEREDOC
    end
  end
end

@paveltyk I'd be curious to check out what you did to make it work. I have use of multiple skills per server, as well.

@digerata Yes. I've described the approach above. Put it somewhere in your initializers maybe?


Add more doc comments for three modules

What does this PR try to resolve?
Add missing doc comments for modules

cargo::ops::cargo_compile: Document all public items and some private ones.
cargo::core::compiler::unit_dependencies: This has nothing to document, only intra-doc link updates
cargo::util::profile: Just add a module level doc indicating it is not profile for compiler flags.

How should we test and review this PR?
cargo doc --document-private-items --no-deps --open

Then proofread it!
Additional information

r? @epage
(rust-highfive has picked a reviewer for you, use r? to override)

@bors r+

:pushpin: Commit 24fa52780b0d78e7b2bec81e75e24a65939bf296 has been approved by epage
It is now in the queue for this repository.

:hourglass: Testing commit 24fa52780b0d78e7b2bec81e75e24a65939bf296 with merge b8f30cb23c4e5f20854a4f683325782b7cff9837...

:sunny: Test successful - checks-actions
Approved by: epage
Pushing b8f30cb23c4e5f20854a4f683325782b7cff9837 to master...


md-icon with open_in_new_window has large width hover state

For some reason (maybe because open_in_new_window is such a long name), the hover state for the icon is too wide.
https://plnkr.co/edit/Cf3CEfvcHudkd2lt3bPc?p=preview

The hover state looks like it's too wide, because the border-radius is too small. In order for the icon to look like a circle, it needs a border-radius: 40px or border-radius: 50%.

Figured out the issue, open_in_new_window isn't an icon =P Turns out if you add the _window part, it adds a huge space to the right that can be hovered over. (issue wasn't that the hover wasn't a perfect circle)


OpenCL 2.2 CTS: can provide spirv10_2015.11.25.zip to non Khronos members?

reading OpenCL-CTS/readme-spir-v-binaries.txt says:
To run the 2.2 conformance tests test suite for the C++ features you need need
SPIR-V binaries.
can be picked from:
https://cvs.khronos.org/svn/repos/OpenCL/trunk/Khronos/spirv/spirv10_2015.11.25.zip

but that link can't be accessed for a non Khronos user so can upload this file?
I say that because txt file also says this:
Alternatively you can check out and build all of the below repositories.
problem is all this links also are to Khronos members and these projects altough exist on github are missing required branches so note I also asked
SPIRV-LLVM (https://github.com/KhronosGroup/SPIRV-LLVM/issues/218)
and
libclcxx (https://github.com/KhronosGroup/libclcxx/issues/15)
projects on github to be updated..

Thanks for looking. This is most likely a remnant from when the CTS was not made public. I'll get it sorted out.
Meanwhile, please try the CTS framework which should be able to locate and download required stuff automatically.

thanks @kepatil..
really didn't try to build the CTS yet..
will try the CTS framework but anyway seems SPIRV-LLVM and libclcxx github projects need to be updated for final OpenCL 2.2 compatibility..

@oscarbg The CTS framework contains a buildsystem that takes care of all of that for you.  Send me a message if you need help setting it up.

I have added the SPIR-V binaries using LFS and updated the readme to point to the new location, in commit https://github.com/KhronosGroup/OpenCL-CTS/commit/252b514ef443f97f38ff15641bbebbf42b3c56a9. Closing the issue.

thanks..


CAR-4911: add openingHours component

Jira https://autoricardo.atlassian.net/secure/RapidBoard.jspa?rapidView=1&projectKey=CAR&modal=detail&selectedIssue=CAR-4911

You can see the component migrated here -> https://github.com/carforyou/carforyou-listings-web/pull/2357
Thank you 🌵

@masone
Should we leave the children as it is or should we remove it and add the disclaimer after the openingHours component?
I'm still in doubt about this point.

I feel rendering as a child does not add any value over rendering it after the component. so me personally, I would not render children


temporal schedule create - Incorrect Usage: flag provided but not defined: -sid

What are you really trying to do?
Create a Schedule
Describe the bug
temporal schedule create \
       --sid 'your-schedule-id' \
       --cron '3 11 * * Fri' \
       --wid 'your-workflow-id' \
       --tq 'your-task-queue' \
       --type 'YourWorkflowType'
2023/03/17 00:13:31 flag provided but not defined: -sid

Environment/Versions

OS and processor: [e.g. M1 Mac, x86 Windows, Linux] - M1 Mac
Temporal Version: [e.g. 1.14.0?] and/or SDK version - 1.20
Are you using Docker or Kubernetes or building Temporal from source? - Run via temporal CLI

CC @DJSanti

Any update here? I can't create a schedule with tctl or temporal CLI. I hope that the difficulty is due to Schedules being in beta, and the rest of this project is more mature.

@jtweaver what's blocking you from creating a schedule with the CLI?
You can ignore the usage example in the help string and rely on the auto-generated options help:
   Main Options:

   --calendar value [ --calendar value ]                  Calendar specification in JSON ({"dayOfWeek":"Fri","hour":"17","minute":"5"}) or as a Cron string ("30 2 * * 5" or "@daily").
   --catchup-window value                                 Maximum allowed catch-up time if server is down.
   --cron value [ --cron value ]                          Optional Cron Schedule for the Workflow. Cron spec is formatted as:
                                                          ┌───────────── minute (0 - 59)
                                                          │ ┌───────────── hour (0 - 23)
                                                          │ │ ┌───────────── day of the month (1 - 31)
                                                          │ │ │ ┌───────────── month (1 - 12)
                                                          │ │ │ │ ┌───────────── day of the week (0 - 6) (Sunday to Saturday)
                                                          │ │ │ │ │
                                                          * * * * *
   --end-time value                                       Overall schedule end time.
   --execution-timeout value                              Timeout (in seconds) for a WorkflowExecution, including retries and continue-as-new tasks. (default: 0)
   --input value, -i value [ --input value, -i value ]    Optional JSON input to provide to the Workflow. Pass "null" for null values.
   --input-file value                                     Passes optional input for the Workflow from a JSON file. If there are multiple JSON files, concatenate them and separate by space or newline. Input from the command line will overwrite file input.
   --interval value [ --interval value ]                  Interval duration, e.g. 90m, or 90m/13m to include phase offset.
   --jitter value                                         Jitter duration.
   --max-field-length value                               Maximum length for each attribute field. (default: 0)
   --memo value [ --memo value ]                          Set a memo on a schedule (format: key=value). Use valid JSON formats for value.
   --memo-file value                                      Set a memo from a file. Each line should follow the format key=value. Use valid JSON formats for value.
   --notes value                                          Initial value of notes field.
   --overlap-policy value                                 Overlap policy (options: Skip, BufferOne, BufferAll, CancelOther, TerminateOther, AllowAll).
   --pause                                                Initial value of paused state. (default: false)
   --pause-on-failure                                     Pause schedule after any workflow failure. (default: false)
   --remaining-actions value                              Total number of actions allowed. (default: 0)
   --run-timeout value                                    Timeout (in seconds) of a single Workflow run. (default: 0)
   --schedule-id value, -s value                          Schedule Id
   --search-attribute value [ --search-attribute value ]  Set Search Attribute on a schedule (format: key=value). Use valid JSON formats for value.
   --start-time value                                     Overall schedule start time.
   --task-queue value, -t value                           Task Queue
   --task-timeout value                                   Start-to-close timeout for a Workflow Task (in seconds). (default: 10)
   --time-zone value                                      Time zone (IANA name).
   --workflow-id value, -w value                          Workflow Id
   --workflow-type value                                  Workflow type name.

Please make sure you're using the latest (0.7.0) version of the CLI.

Note that --sid is no longer an option (use -s or —schedule-id)
On Mon, Apr 3, 2023 at 1:57 PM Roey Berman @.***> wrote:

Please make sure you're using the latest (0.7.0) version of the CLI.
—
Reply to this email directly, view it on GitHub
https://github.com/temporalio/cli/issues/156#issuecomment-1494969625,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAB5LGFO6OTAN5N2PGXNHRTW7M2SZANCNFSM6AAAAAAV6COO24
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Ah. Yeah, that was it. I was going off of the docs here (https://docs.temporal.io/cli/schedule#create) and the help string. Fwiw I also tried with tctl and ran into this. So I was a bit frustrated. Thanks for the help.
tctl schedule create --sid 'sid' --wid 'wid' --tq 'TQ' --wt 'WorkflowType' --cron '*/15 * * * *'
unable to create schedule: rpc error: code = NotFound desc = Namespace default is not found.

$ tctl schedule create --sid 'sid' --wid 'wid' --tq 'TQ' --wt 'WorkflowType' --cron '*/15 * * * *' --namespace dev
flag provided but not defined: -namespace


Format width option

Please add an option for configuring the format width (like Reason Language Server had with reason_language_server.format_width).

what about having this on bsconfig so it's stable across editors / CI scripts.
cc/ @bobzhang @IwanKaramazow

Yes, that would be even better!

@IwanKaramazow does our engine support this under the hood?
If so, what's the primary use case to have such option?

@bobzhang sorry for answering in place of @IwanKaramazow. :wink:
Primary use case - well, different companies/projects/coding conventions use different line widths.
For example, we at CCA have set the line width to 120 in all our JavaScript and Reason projects.
Looking in the syntax repo, it seems to be supported already, see e.g. https://github.com/rescript-lang/syntax/blob/58e1fc9f6c962829ae4934590facc81cb5c9ed58/src/res_printer.mli#L16

@bobzhang some more context, the printer uses an algorithm that breaks the layout based on the line width:
// imagine having a line width of 20

// here the total length stays under 20:
apply(arg1, arg2)

// here the total length of 20 is exceeded, so the printer breaks the code over multiple lines
apply(
  arg1,
  arg2,
  arg3,
)

Our engine already supports this under the hood and now defaults to 100.
Different companies use different line widths, e.g. CCA warrants width 120, other companies prefer a width of 80 characters. It makes sense to expose this configuration option longer term, I think. It's hard to pick one line length that is "correct" for everyone…

@bobzhang As the printer already supports this option, it would be really great if it could be exposed in the next bs-platform release. 🙏

@bobzhang As the printer already supports this option, it would be really great if it could be exposed in the next bs-platform release. 🙏

The common practice seems to be adding a file like .prettierrc and the formatter respect the config from that file, this looks good to me

The common practice seems to be adding a file like .prettierrc and the formatter respect the config from that file, this looks good to me

Rescript's formatter is not as customizeable as something like prettier. the only option it has is print width so I'm not sure about introducing a new file like .rescriptfmt. on the other hand if you meant reusing prettier config, this might introduce another ambiguity since prettier is a different tool. my suggestion is putting the option in bsconfig.json or even package.json alongside with a command line flag (bsc -format -width 80 foo.res). what do you think?

Rescript's formatter is not as customizeable as something like prettier. the only option it has is print width so I'm not sure about introducing a new file like .rescriptfmt. on the other hand if you meant reusing prettier config, this might introduce another ambiguity since prettier is a different tool. my suggestion is putting the option in bsconfig.json or even package.json alongside with a command line flag (bsc -format -width 80 foo.res). what do you think?

we may add such -width after we migrate into subcommand mode which will take a while.
bsconfig.json is for build stuff.
Something like .prettierrc seems more future proof since you can add more configures later

we may add such -width after we migrate into subcommand mode which will take a while.
bsconfig.json is for build stuff.
Something like .prettierrc seems more future proof since you can add more configures later

I'm fine with adding a config file that only supports one option initially. Rather than .prettierrc, which might come with expectations the formatter doesn't implement, how about .editorconfig (https://editorconfig.org)? It has a max line length rule that quite a few editors support already.

I'm fine with adding a config file that only supports one option initially. Rather than .prettierrc, which might come with expectations the formatter doesn't implement, how about .editorconfig (https://editorconfig.org)? It has a max line length rule that quite a few editors support already.

editorconfig has a different purpose. My point about not having a separate config file is that personally I don't like rescript's formatter to be much customizable in order to keep a consistent codestyle in community, this is really valuable IMO. If this is a goal of rescript's formatter, chance of having more configs is low. anyway, maybe Iwan is the best person who can answer this.

editorconfig has a different purpose. My point about not having a separate config file is that personally I don't like rescript's formatter to be much customizable in order to keep a consistent codestyle in community, this is really valuable IMO. If this is a goal of rescript's formatter, chance of having more configs is low. anyway, maybe Iwan is the best person who can answer this.

I don't think it's that different, especially not when editorconfig already has a line length option.
Even if it's a dedicated .resfmt config file with a single option, that would still be better than a command line argument. It has been so difficult over the years to apply a consistent customised refmt to a codebase worked on by multiple people.

personally I don't like rescript's formatter to be much customizable in order to keep a consistent codestyle in community, this is really valuable IMO

I completely agree. I don't think any options other than width should exist. But there was a lot of pressure to add more to refmt so never say never.

I don't think it's that different, especially not when editorconfig already has a line length option.
Even if it's a dedicated .resfmt config file with a single option, that would still be better than a command line argument. It has been so difficult over the years to apply a consistent customised refmt to a codebase worked on by multiple people.

personally I don't like rescript's formatter to be much customizable in order to keep a consistent codestyle in community, this is really valuable IMO

I completely agree. I don't think any options other than width should exist. But there was a lot of pressure to add more to refmt so never say never.

Having a command line option makes it possible to use this option outside of a project. So in an ideal situation both should exist, a command line option and a config file option.

I completely agree. I don't think any options other than width should exist. But there was a lot of pressure to add more to refmt so never say never.

You're right. This might not be valuable for all people.

Having a command line option makes it possible to use this option outside of a project. So in an ideal situation both should exist, a command line option and a config file option.

I completely agree. I don't think any options other than width should exist. But there was a lot of pressure to add more to refmt so never say never.

You're right. This might not be valuable for all people.

Are there any updates on this? Anything we can do to help this move forward?
I'd love to be able to configure the break width as I've encountered more than a handful of pipes that are wrapping when I'd prefer them to reformat into multiple lines.

We're currently not planning to expose a width option, though we're exploring a different way of making the printer do what the user wants.

any updates about this?

Is there any progress on this?  I code on a laptop and don't have the best eyesight.  This is the only language I've ever used that forces me to scroll sideways when reading code.  Even worse, a default of 100 is just too much.


uninitialized constant Docker::Image in rspec testcase

Hello,
I installed ruby on a Centos7 x64 box to try docker api inside a rspec test. In my testcase and in below example I got a error uninitialized constant Docker::Image. Is this explainable?
The ruby version I tested against is 2.2.1 or 1.9.3.
My installed gems are:
gem install docker docker-api

Here my first test:
# irb
2.2.1 :001 > require 'docker'
 => true
2.2.1 :002 >
2.2.1 :003 >   image = Docker::Image.create('fromImage' => 'base')
NameError: uninitialized constant Docker::Image
    from (irb):3
	    from /usr/local/rvm/rubies/ruby-2.2.1/bin/irb:11:in `<main>'
2.2.1 :004 >

This example brings it one step further:
2.2.1 :007 > require 'docker'
 => true
2.2.1 :008 > require 'docker/error'
 => true
2.2.1 :009 > require 'docker/base'
 => true
2.2.1 :010 > require 'docker/image'
  => true
2.2.1 :011 > image = Docker::Image.create('fromImage' => 'base')
NoMethodError: undefined method `connection' for Docker:Module
from /usr/local/rvm/gems/ruby-2.2.1/gems/docker-api-1.21.4/lib/docker/image.rb:105:in `create'
from (irb):13
from /usr/local/rvm/rubies/ruby-2.2.1/bin/irb:11:in `<main>'

gem uninstall docker. That gem is not part of our gem.  It's messing with your load path and thus making the require's not work.

Thanks I will try that.

Hello, i have the same problem right there, unfortunately when i'm uninstalling the gem, i found this error:
$ bundle exec rspec
Could not find docker-0.3.1 in any of the sources
Run `bundle install` to install missing gems.

@rvu95 Looks like you haven't bundle install'd since removing docker from your Gemfile or something.  Make sure only docker-api is in your Gemfile then run bundle install.


Allow mapping to SqlGeography, SqlGeometry, and HierarchyId columns on .NET Framework

Part of issue #1100
This change allows properties of type SqlGeography, SqlGeometry, and HierarchyId to be included in entity classes and mapped by convention to corresponding database columns.
WARNING: This is by no-means full spatial support for EF Core. These are the important limitations:

It only works when running on .NET Framework. It will not work on .NET Core, since SqlClient for .NET Core does not support these types.
Query support is limited:

LINQ queries that don't use the semantics of the SQL types should work.
Queries that need to use the type semantics (e.g. using STDistance) can be done with FromSql queries, but not LINQ
See issue #10108 for some test code and issue #10109 for some ideas to make LINQ work better

The SQL Server spatial types do not provide a good client-side programming experience. A proper .NET spatial library is needed for a good, cross-platform experience.

Note that this change also allows more general mapping of types not directly referenced from the provider, and more specifically UDTs on SQL Server.

I tried it out and found out that sending null geography / geometry fields throws an exception:
ArgumentException: UdtTypeName property must be set only for UDT parameters.
Other than that it seems to work with CRUD ops.

@Xtrophic Thanks. I filed #10214 to track that issue.


Z_4_ns_train.hdf5?

Hello, I've been trying to try out your code for research purposes, but ran into a problem. I managed to get past the small bugs such as the default data path and such, but when I try to run the train_separation_multiple_autoencoder.py file, I get the following problem:
OSError: Unable to open file (unable to open file: name = '../data/shipsEar/mix_separation\10547_10547\s0tos3\mix_1to3sep\wavmat\max_one_rand\Z_4_ns_train.hdf5', errno = 2, error message = 'No such file or directory', flags = 0, o_flags = 0)
The problem is, Z_4_ns_train.hdf5 is not generated in any of the previous codes. It did generate other .hdf5 files, but never Z_4_ns_train or the like, and I cannot seem to figure out how to make it do that.

Please confirm that you have downloaded and organized the wav files as described in the ''README" file, and that you have run the scripts in Step 3. If there are still problems after doing those steps, please let me know.

I've downloaded the code, got the data from David Santos Domínguez, and installed dependent packages in the the requirements.txt, though I've had to downgrade numba to 0.48 because 0.53 doesn't have numba.decorators, which is used in prepare_data_shipsear_recognition_mix_s0tos3.py. I've downloaded and organized the wav files as described in the README file. The only thing I've changed is the data_dir_tree.md where I've changed "../data/shipsEar/mix_recognition/raw" to "../data/shipsEar/mix_separation/raw" and the path root in separation_mix_shipsear_s0tos3_preprocess.py to '../' instead of './' to let the code find the data. I've done all this after freshly downloading your code again. However, the problem still persists.

I'm sorry that you are facing this issue. "Z_4_ns_train.hdf5" related files will be generated after running the "train_single_source_autoencoder_ns.py" script without the function search_model. I will fix this problem in the next release. Thank you for your feedback.


[Api.ai] sessionId parameter

Hi,
I think we should change Mpociot/BotMan/Middleware/ApiAi.php:68. Currently we use 'sessionId' => time() to generate a new sessionId on every request. To keep continue the course of conversation we should use a user based sessionId. E. g. 'sessionId' => sha1($driver->getName() . $message->getUser()).
Thank you.

Could you provide a pull request for this change?

Yes, of course

Ah thx @ribb3r , was on my list when I added the Driver but forgot.

I just opened a pull request. But there is an issue with the ApiAiTest. Maybe someone could look at the source?


Hide the image directories with .htaccess

Describe the bug
The way the .htaccess file is now, if a user inspects an image, and learns its URL path, they can easily remove the image name from the URL path, and then they will see the image directory and have access to click on any picture they otherwise might not have access to.
Steps To Reproduce
Steps to reproduce the behaviour:

Using your browser, inspect any image associated with a page to learn its URL.
Remove the image name from the end of the URL
You should see the image directory.

Expected behaviour
I don't believe users should be able to see the list of files in the directories.
Screenshots
People can currently see the image directory

After adding in -Indexes to the Options line in .htaccess

Possible solution?
Add -Indexes to the .htaccess file. Direct URL paths to image names still work, but users don't have access to see the list of file names.
<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    Options -Indexes

    RewriteEngine On

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

Your Configuration (please complete the following information):

BookStack v0.26.3
PHP Version: 7.2.19
Apache 2.4.29
Ubuntu 18.04

Thanks for raising @davidtessier, Totally agree.
To be honest, I thought that indexes were currently hidden by realised that's only the behaviour of our install scripts, not the supplied .htaccess files themselves. Have marked for next release so it's not forgotten.

I have just deployed v0.26.4 which  includes rules to prevent indexes for apache instances that read htaccess files.


Swap Admitted condition value when setting .status.admission

What would you like to be added:
Set the Admitted condition value in the same API call that sets .status.admission.
Currently the admitted condition is set by the workload controller.
Why is this needed:
To reduce complexity in the Workload controller and reduce API usage.
Completion requirements:
This enhancement requires the following artifacts:

[ ] Design doc
[ ] API change
[ ] Docs update

The artifacts should be linked in subsequent comments.

/assign

/unassign @mwielgus


Data Flow and Data Operations

Add examples of:

[ ] File handling
[ ] Database (SQLite, PostgreSQL, MySQL)
[ ] Signal handling
[ ] Data Flow
[ ] Async operations
[ ] Data Warehousing and Data Frames (pandas over spark)
[ ] Visualizations

For Spring Semester


send button messages for the start and stop actions added in this branch

I have updated the button send messages for play and record buttons in popup window, and then updated the content script for the new message inputs. The additional changes will be implemented in separate branch and PR. This PR is only limited to this small change.

Thank you @agamm


Provide payload 'clear' value for SNS, Webhook and Opsgenie services and 'incident_key' for SNS

I originally planned to add it only for SNS, but after seeing Issue #132, I decided to apply it to Webhook and Opsgenie as well. Please let me know if I should do separate pulls requests.
This includes:

Added a test helper for alert clear payload. It would be great if you could review that this is the actual payload provided by Librato when running in production.
SNS, Webhook and Opsgenie now extract the 'clear' value out of the payload instead of hardcoding to 'normal'.
SNS service now provides the 'incident_key'. To be honest, I am unsure about this one as it is completely undocumented at the exception of the PagerDuty and VictorOps integration. If the 'incident_key' value is unique for every combination of alert trigger/clear, then it would be really useful for the SNS integration. In any cases, I don't see any harm in publishing more information as part of the SNS message.

Closing pull request. I think most of it is now fixed.


Default profile isn’t default

ceylon format, by itself, doesn’t load the default profile. I’m pretty sure that’s not intended.

Oops, nevermind, my tmp project still had an old line specifying a different default profile.


🌍🗺 Proper Scaling from Real Life ➡ Project Zomboid World Editor 🗺🌍

MapResolution = 156543.04 meters/pixel * cos(latitude) / (2 ^ zoomlevel)

MapScale = 1 : (ScreenRes pixels/inch * 39.37 inches/meter * 156543.04 meters/pixel * cos(latitude) / (2 ^ zoomlevel))

Hand drawing the whole municipality would take ages, what if a program could take a snapshot and generate a rough .png for the Project Zomboid World Editor
1 pixel = 1 meter
Chunk Size = 300 pixels
Understanding Scale and Resolution 🤔
Directly accessing the Bing Maps tiles 🗺

Colour Code for the Map Editor 🖍🎨
Grass & Nature 💚💙🌱🌊
Dark Grass #5A6423
Medium Grass #75752F
Light Grass #91873C
Sand #D2C8A0
Tall Grass #00FF00
Dirt #784614
Water #008AFF
Trees #FF0000
Trees + Dark Grass #7F0000
Trees + More Dark Grass #400000
Lots of grass & tress #008000
Bushes, Trees and dark grass #FF00FF
Roads 🚗💨
Dark Asphalt #646464
Medium Asphalt #787878
Light Asphalt #A5A08C
Dark Pothole #6E6464
Light Pothole #827878

Generating a simple PNG based on map terrain and vegetation data in C# involves a multi-step process. Here's a general outline of the steps you can follow to accomplish this task:

Obtain Terrain and Vegetation Data:
You'll need to obtain the map terrain and vegetation data from reliable sources. This data could be in the form of heightmaps or raster images representing terrain elevation and vegetation coverage, respectively.

Set Up C# Project and Required Libraries:
Create a new C# project or use an existing one. You'll need to use libraries that support image processing and manipulation. One popular library for working with images in C# is "System.Drawing."

Load and Process Data:
Load the terrain and vegetation data into your C# application. Depending on the format of the data, you may need to use appropriate libraries to read and interpret the data. For instance, you might use a library like "GDAL" to handle geospatial raster data.

Generate the Image:
Create a blank PNG image or a canvas using the "System.Drawing" library. Then, based on the terrain and vegetation data, apply colors or textures to represent different terrain types and vegetation coverage. You can use various drawing functions like rectangles, polygons, or pixel-by-pixel manipulation to achieve this.

Save the Image:
Once the image is generated, save it as a PNG file using the "System.Drawing" library.

Here's a simplified example of how you might generate a basic PNG image with random terrain and vegetation:
using System;
using System.Drawing;

class MapGenerator
{
    static void Main()
    {
        int width = 800;
        int height = 600;

        Bitmap mapImage = new Bitmap(width, height);
        Random random = new Random();

        // Generate terrain and vegetation data (for demonstration, let's use random values)
        int[,] terrainData = new int[width, height];
        int[,] vegetationData = new int[width, height];

        for (int x = 0; x < width; x++)
        {
            for (int y = 0; y < height; y++)
            {
                terrainData[x, y] = random.Next(0, 256); // Terrain elevation (0 to 255)
                vegetationData[x, y] = random.Next(0, 256); // Vegetation coverage (0 to 255)

                Color color = Color.FromArgb(terrainData[x, y], vegetationData[x, y], 0);
                mapImage.SetPixel(x, y, color);
            }
        }

        // Save the image as a PNG file
        mapImage.Save("map.png", System.Drawing.Imaging.ImageFormat.Png);

        // Dispose the image object after use
        mapImage.Dispose();
    }
}

This example generates a simple PNG image with random terrain elevation and vegetation coverage. In a real-world scenario, you would replace the random data with your actual terrain and vegetation data obtained from reliable sources. Also, for larger and more complex maps, more advanced algorithms and techniques may be required.

If 1 pixel represents 1 square meter in your map, you'll need to adjust the image size and data accordingly to ensure the correct scale. Here's an updated version of the previous example with the appropriate changes:
using System;
using System.Drawing;

class MapGenerator
{
    static void Main()
    {
        int widthInMeters = 800;
        int heightInMeters = 600;

        int imageWidth = widthInMeters;   // Each pixel represents 1 square meter
        int imageHeight = heightInMeters; // Each pixel represents 1 square meter

        Bitmap mapImage = new Bitmap(imageWidth, imageHeight);
        Random random = new Random();

        // Generate terrain and vegetation data (for demonstration, let's use random values)
        int[,] terrainData = new int[imageWidth, imageHeight];
        int[,] vegetationData = new int[imageWidth, imageHeight];

        for (int x = 0; x < imageWidth; x++)
        {
            for (int y = 0; y < imageHeight; y++)
            {
                terrainData[x, y] = random.Next(0, 256); // Terrain elevation (0 to 255)
                vegetationData[x, y] = random.Next(0, 256); // Vegetation coverage (0 to 255)

                Color color = Color.FromArgb(terrainData[x, y], vegetationData[x, y], 0);
                mapImage.SetPixel(x, y, color);
            }
        }

        // Save the image as a PNG file
        mapImage.Save("map.png", System.Drawing.Imaging.ImageFormat.Png);

        // Dispose the image object after use
        mapImage.Dispose();
    }
}

In this updated example, the widthInMeters and heightInMeters variables represent the dimensions of your map in meters. The imageWidth and imageHeight variables are set to the same values as the map's dimensions, ensuring that each pixel in the image represents 1 square meter.
Remember to replace the random data generation with your actual terrain and vegetation data to create a meaningful map. Also, consider using more sophisticated algorithms and real-world data sources for a more accurate representation of terrain and vegetation patterns.

GDAL (Geospatial Data Abstraction Library) is a powerful open-source library for reading and writing geospatial raster and vector data. In C#, you can use the GDAL C# bindings to work with geospatial data formats like GeoTIFF, DEM, Shapefiles, and more. To use GDAL in your C# project, you'll need to add a reference to the GDAL C# bindings and include the necessary GDAL native libraries.
Here's a simple example of how to use GDAL in C# to read raster data from a GeoTIFF file and access its metadata:

Set up your project:

Download the GDAL C# bindings (e.g., gdal_csharp.dll) appropriate for your platform (x86 or x64).
Add a reference to the GDAL C# bindings in your C# project.
Make sure the GDAL native libraries (e.g., gdal_wrap.dll, gdal.dll) are accessible to your application. You can place them in the project's output directory or set the appropriate environment variables.

Install GDAL in your system:

Download and install the GDAL binaries appropriate for your operating system from the official GDAL website (https://gdal.org/download.html).

Use the GDAL C# bindings in your code:

using System;
using OSGeo.GDAL;

class Program
{
    static void Main()
    {
        // Initialize GDAL
        Gdal.AllRegister();

        // Replace the file path with the path to your GeoTIFF file
        string filePath = "path_to_your_geotiff.tif";

        // Open the dataset (GeoTIFF file)
        Dataset dataset = Gdal.Open(filePath, Access.GA_ReadOnly);

        if (dataset != null)
        {
            // Get the number of raster bands in the dataset
            int numBands = dataset.RasterCount;

            Console.WriteLine($"Number of raster bands: {numBands}");

            // Get the geotransform parameters (georeferencing information)
            double[] geotransform = new double[6];
            dataset.GetGeoTransform(geotransform);

            double originX = geotransform[0];
            double originY = geotransform[3];
            double pixelWidth = geotransform[1];
            double pixelHeight = geotransform[5];

            Console.WriteLine($"Origin (X, Y): ({originX}, {originY})");
            Console.WriteLine($"Pixel Size (Width, Height): ({pixelWidth}, {pixelHeight})");

            // Access raster data (for demonstration, we'll read the first band)
            Band band = dataset.GetRasterBand(1);

            int width = band.XSize;
            int height = band.YSize;
            int[] rasterData = new int[width * height];

            band.ReadRaster(0, 0, width, height, rasterData, width, height, 0, 0);

            // You can now work with the raster data in the 'rasterData' array
            // For example, you can manipulate the pixel values or perform analysis on the data

            // Close the dataset when done
            dataset.Dispose();
        }
        else
        {
            Console.WriteLine("Failed to open the dataset.");
        }
    }
}

Make sure to replace "path_to_your_geotiff.tif" with the actual path to your GeoTIFF file. This example demonstrates how to open a GeoTIFF file, access its metadata (number of bands, geotransform), and read raster data from the first band into an array.
Remember that GDAL supports a wide range of geospatial formats and functionalities. Depending on your requirements, you can perform various operations such as writing data, working with vector data, and applying raster operations. Check the GDAL documentation for more details and advanced usage.

To color the PNG based on road data, you'll need to obtain road data in a suitable format, overlay it on the existing map, and then apply appropriate colors to the road segments. Here's a general outline of the steps to achieve this:

Obtain Road Data:
Obtain the road data for your map area. Road data is usually available in vector formats like Shapefiles or GeoJSON, which contain information about the road geometry and attributes.

Read the Existing PNG Map:
Read the existing PNG map (generated from terrain and vegetation data) using the System.Drawing library or any other suitable library.

Overlay Road Data on the Map:
Use GDAL or another library capable of reading vector data to read the road data (Shapefile or GeoJSON). Overlay the road data on top of the existing map by converting the vector data to pixel coordinates.

Color the Roads:
Iterate through the road segments and apply the desired colors to them on the PNG map. You can use different colors to represent different types of roads (e.g., highways, streets) or use a single color for all roads.

Save the Modified PNG:
Save the modified PNG map, now with colored roads, as the final output.

Here's a simplified example of how you can perform these steps using C# with GDAL and the System.Drawing library:
using System;
using System.Drawing;
using OSGeo.OGR;
using OSGeo.GDAL;

class MapGenerator
{
    static void Main()
    {
        // Initialize GDAL and OGR
        Gdal.AllRegister();
        Ogr.RegisterAll();

        // Paths to your input files
        string terrainVegetationMapPath = "path_to_terrain_vegetation_map.png";
        string roadDataPath = "path_to_road_data.shp";

        // Read the existing PNG map (terrain and vegetation data)
        Bitmap mapImage = new Bitmap(terrainVegetationMapPath);

        // Open the road data
        DataSource roadDataSource = Ogr.Open(roadDataPath, 0);
        Layer roadLayer = roadDataSource.GetLayerByIndex(0);

        // Color the roads on the map
        Color roadColor = Color.Red; // You can choose any color you prefer

        Feature roadFeature;
        while ((roadFeature = roadLayer.GetNextFeature()) != null)
        {
            // Get road geometry (for demonstration, assuming a simple LineString geometry)
            Geometry roadGeometry = roadFeature.GetGeometryRef();
            int numPoints = roadGeometry.GetPointCount();

            // Convert road geometry to pixel coordinates
            for (int i = 0; i < numPoints - 1; i++)
            {
                double x1 = roadGeometry.GetX(i);
                double y1 = roadGeometry.GetY(i);
                double x2 = roadGeometry.GetX(i + 1);
                double y2 = roadGeometry.GetY(i + 1);

                // Assuming each pixel represents 1 square meter
                int pixelX1 = (int)Math.Round(x1);
                int pixelY1 = mapImage.Height - (int)Math.Round(y1); // Flip Y-axis for image coordinates
                int pixelX2 = (int)Math.Round(x2);
                int pixelY2 = mapImage.Height - (int)Math.Round(y2);

                // Draw the road segment on the map using the chosen color
                using (Graphics graphics = Graphics.FromImage(mapImage))
                {
                    graphics.DrawLine(new Pen(roadColor, 2), pixelX1, pixelY1, pixelX2, pixelY2);
                }
            }

            roadFeature.Dispose();
        }

        // Save the modified image with colored roads
        mapImage.Save("map_with_roads.png", System.Drawing.Imaging.ImageFormat.Png);

        // Dispose the image and data sources after use
        mapImage.Dispose();
        roadDataSource.Dispose();
    }
}

Please note that this is a simplified example, and in real-world scenarios, road data might contain more complex geometries or attributes that require additional processing. You might need to handle different types of road geometries, add legends, and customize colors based on road classifications. Additionally, this example assumes that the road data is in the form of simple LineString geometries; in practice, road data can be more diverse, such as multi-line geometries or polygon representations for road areas. Make sure to adapt the code accordingly to handle your specific road data format and requirements.


article-meta outputs escaped html so browser can't render it

Hello, thank you for your theme. I really like how minimal and light it is!
I've noticed strange behavior when article-meta concats all meta partials it outputs following html:
<time datetime="2019-03-11 00:00:00 &#43;0000 UTC">11 March 2019</time><span class="px-2 text-primary-500">&middot;</span><span title="Reading time">3 mins</span><span class="px-2 text-primary-500">&middot;</span>

The same happens for my site and for your example site.
I'm using go version go1.21.5 darwin/arm64.
I've tried theme versions v0.6.0 and v0.6.3.
Removing concatenation and appending partials manually fixes the problem.
    {{ with ($meta.Get "partials") }}
      {{ delimit . "·" }}
    {{ end }}

to
    <time datetime="{{ .Date }}">
      {{- .Date.Format .Site.Params.article.dateFormat | default "2 January 2006" -}}
    </time>
    ·

    {{- i18n "article.reading_time" .ReadingTime | emojify -}}

Manual usage of all three partials also works fine.
I've tried to find the problem with the template, but I couldn't.

fixed with v0.6.4

Thanks, now it works!


Taking Knockback with Shield Up

Describe the Bug
Player is taking Knockback from mobs even if the shield is being used
Reproduction Steps

Have Shield up
Get attacked by mob
Take Knockback?

Expected Result
This kind of behavior with shields does not happen in un-modded Minecraft.
Screenshots and Videos
With Create Mod:
https://github.com/Fabricators-of-Create/Create/assets/74091942/432c6b28-be55-498c-968f-72d520e450e5
How it should work:
https://github.com/Fabricators-of-Create/Create/assets/74091942/183adba8-5db7-4b8b-9aef-e931e4498406
Crash Report or Log
No response
Operating System
Windows 10
Mod Version
0.5.1d
Minecraft Version
1.20.1
Other Mods
Fabric API + Create was the only mods running during the test
Additional Context
No response

It might be useful to know that getting hit by a wither with the shield up will negate the damage but not the wither effect. Blaze fireballs' fire also goes through the shield. Also, the issue seems to be solved in this branch: https://github.com/IThundxr-Modding/Create-Fabric/tree/mc1.20.1/fabric/dev

this should be fixed in patch f


Switch alloca for static and threadprivate.

This switches alloca for OMP threadprivate static array use to
prevent potential stack overflow in cases where the driving parallel
loop has a high bound.
Fixes #3406

Ping @anton-malakhov any thoughts please?

Closing in deference to https://github.com/numba/numba/pull/3416