Writebacks in main process

This behavior is to test whether or not writing back in the main process loop is faster to do than to let each individual process package up and writeback their results before freeing up the executor to launch another worker to start on simulating the next game.
I am not too familiar with the efficiencies of threaded process pools in python when it comes to IO operations, but I was getting some mixed information online, and most having to do with the threaded process pool, which is technically not parallel processing, just threads within the original process, which can only run on one logical core at a time, meaning at max two workers can be working at once.
It could go either way, if the writeback operations are able to coexist with one another, then writing back in the main process will be significantly slower, considering that it can only launch writeback operations one at a time, and simulating each game should be much faster than the write operation that follows it, but I definitely could be wrong. It has been known to happen.
Definitely in the beginning it could be slower, considering most tarnished just run off the cliff, and the faster the games, the less time that the writebacks have time to "catch up" to the game's finishing. But we may see significant improvement once games start lasting the full time frame.

23633 = 6.56 hours... gonna start at night


Possible but with matching when using string offsets

Hi,
I think there is a bug where Yara only matches first occurence of certain strings. Steps to reproduce:
Make test.txt and put this content inside
virustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetcompany
Ruleset to test with
rule test {

	strings:

		$a = "virus"
		$b1 = "total"
		$b2 = "google"
		$b3 = "alphabet"
		$b4 = "company"

	condition:

		$a and all of ($b*) in (@a .. @a + 100)

}

Rule doesn't match.
However if you comment out $b4 it matches.
Why is this happening? Is it because yara only matches the first occurence of strings and doesn't go deeper, meaning it matches $a, $b1, $b2 and $b3 and because $b4 isn't there it failes to match. However it should try to match it elsewhere in the file but it apparently doesn't go further.
Thank you!

It works for me.

It works for me.

I tried with two different files, no hits.

Rony@Rony ~/desktop/test
$ cat test.yar
rule test {

        strings:

                $a = "virus"
                $b1 = "total"
                $b2 = "google"
                $b3 = "alphabet"
                $b4 = "company"

        condition:

                $a and all of ($b*) in (@a .. @a + 100)

}
Rony@Rony ~/desktop/test
$ cat test.txt
virustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetvirustotalgooglealphabetcompany
Rony@Rony ~/desktop/test
$ yara test.yar .
test .\test.yar

Ah sorry, for the confusion. It didn't match. I think @a evaluates as the first occurrence of $a, this is how it is implemented. So, this is not a bug.
For test.txt to match you can do something like this for now:
rule test
{

	strings:

		$a = "virus"
		$b1 = "total"
		$b2 = "google"
		$b3 = "alphabet"
		$b4 = "company"

	condition:

		$a and
		for any i in (1 .. #a) : (
			for all of ($b*) : (
				$ in (@a[i] .. @a[i] + 100)
			)
		)

}

I think @r0ny123 is right here. Also, here is a concise way of expressing the logic:
    for any i in (1..#a):
      (all of ($b*) in (@a[i]..@a[i] + 100))

If you are concerned that $a may match a lot of times you can use math.min(#a, 50) or some reasonable upper bound in your condition, like this:
    for any i in (1..math.min(#a, 50)):
      (all of ($b*) in (@a[i]..@a[i] + 100))

Thank you both for the explanation.


Model React opaque element types soundly

Alongside strings, stateless functional components and class components, React currently accepts a set of internal symbols for an element's type (and a few others wrapped in a { $$typeof: ... } object). The symbols themselves are all private; they form "opaque components" that are returned from various public APIs and serve to trigger certain intrinsic behaviours within the renderer.
In Flow, because of limitations in react_kit.ml, we instead model these as function and/or class components, which works in most ordinary cases, but is not technically correct - e.g. Flow will let you call or construct them, which will cause an error at runtime. It would be better if we could leverage opaque types, while keeping props checking and all the other nice things. (Architecturally - perhaps we can allow libdefs to declare these opaque types rather than having to build them directly into react_kit.ml?)
The following is a list of React features based on opaque component types and how they're currently modelled in Flow, if at all.
Stable features

[x] Fragment - modelled as a function
[x] StrictMode - modelled as a function in https://github.com/facebook/flow/pull/6078
[ ] Context Provider - modelled as ComponentType
[ ] Context Consumer - modelled as ComponentType
[ ] Return value of forwardRef - modelled as ComponentType in https://github.com/facebook/flow/pull/6510

Unstable features
I'm including these for completeness, as they can be expected to officially land in future versions of React. There is no current implementation or PR for these in Flow.

[ ] unstable_AsyncMode
[ ] unstable_Profiler
[ ] Placeholder

The machinery necessary for this will be going out in 0.89. This fixes Fragment, StrictMode and forwardRef. I will also take a look at Provider and Consumer.

This also fixes Provider and Consumer.

I guess it's fixed with AbstractComponent.


Support delete temporary credentials files of Google Cloud

Describe your changes:
Fixes #10203

I worked on ... because ...

Type of change:

[x] Bug fix
[x] Improvement
[ ] New feature
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation

Checklist:

[x] I have read the CONTRIBUTING document.
[ ] My PR title is Fixes <issue-number>: <short explanation>
[ ] I have commented on my code, particularly in hard-to-understand areas.
[ ] For JSON Schema changes: I updated the migration scripts or explained why it is not needed.

GOOGLE_CREDENTIALS are being used in gcpcredentialspath as well as temp creds, let's modify a bit of the logic to check if it's going to only affect temporary creds.


Chrome 73 Update

Hi! Google Chrome broke sliding via mousewheel
Look here https://www.chromestatus.com/features/6662647093133312

Thanks for pointing that out. I think I will refactor the whole thing soon.

Fixed in #28


nodeError(desc: "intrinsic gas too low")

I'm using Uniswap and WalletConnect to send transaction:
I made a transaction from json:
{"data":"0xc04b8d59000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000e7a7fd7607dab86cb7680e606934098b33a2b42000000000000000000000000000000000000000000000000000000000610a3660000000000000000000000000000000000000000000000000002386f26fc10000000000000000000000000000000000000000000000000001584225329b4c81a50000000000000000000000000000000000000000000000000000000000000042c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20001f42260fac5e5542a773aa44fbcfedf7c193bc2c599000bb86b175474e89094c44da98b954eedeac495271d0f000000000000000000000000000000000000000000000000000000000000",
"from":"0xe7a7fd7607dab86cb7680e606934098b33a2b420",
"gas":"0x429a0",
"to":"0xe592427a0aece92de3edee1f18e0157c05861564",
"value":"0x2386f26fc10000"}

My code:
guard var options = TransactionOptions.fromJSON(dic) else {
         return
}

guard var transaction = EthereumTransaction.fromJSON(dic) else {
         return
}

let walletAdd = EthereumAddress(walletAddress)
do {
       let pendingNonce = try web333.eth.getTransactionCount(address: walletAdd!, onBlock: "pending")
       let latestNonce = try web333.eth.getTransactionCount(address: walletAdd!, onBlock: "latest")
       let selectedNonce = max(pendingNonce, latestNonce)
       transaction.nonce = selectedNonce
       let result = try web333.eth.sendTransaction(transaction, transactionOptions: options, password: password)
       print(result)
       print(result.hash)
} catch {
       print(error)
}

TransactionOptions(
to: Optional(web3swift.EthereumAddress(_address: "0xe592427a0aece92de3edee1f18e0157c05861564", type: web3swift.EthereumAddress.AddressType.normal)),
from: Optional(web3swift.EthereumAddress(_address: "0xe7a7fd7607dab86cb7680e606934098b33a2b420", type: web3swift.EthereumAddress.AddressType.normal)),
gasLimit: Optional(web3swift.TransactionOptions.GasLimitPolicy.limited(272800)),
gasPrice: Optional(web3swift.TransactionOptions.GasPricePolicy.automatic),
value: Optional(10000000000000000),
nonce: Optional(web3swift.TransactionOptions.NoncePolicy.pending),
callOnBlock: Optional(web3swift.TransactionOptions.CallingBlockPolicy.pending))

Transaction
Nonce: 3
Gas price:<PHONE_NUMBER>
Gas limit: 21000
To: 0xE592427A0AEce92De3Edee1F18E0157C05861564
Value:<PHONE_NUMBER>0000000
Data: 0xc04b8d59000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000e7a7fd7607dab86cb7680e606934098b33a2b42000000000000000000000000000000000000000000000000000000000610a3660000000000000000000000000000000000000000000000000002386f26fc10000000000000000000000000000000000000000000000000001584225329b4c81a50000000000000000000000000000000000000000000000000000000000000042c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20001f42260fac5e5542a773aa44fbcfedf7c193bc2c599000bb86b175474e89094c44da98b954eedeac495271d0f000000000000000000000000000000000000000000000000000000000000
v: 1
r: 0
s: 0
Intrinsic chainID: nil
Infered chainID: Optional(1)
sender: nil
hash: Optional("0x7d20eec1a76a19814b6fecaff8b8672568c4adf321d76aa0909e278f0f704834")

faced the same issue, I believe there is a bug in web3+options.swift
at the beginning of
public static func fromJSON(_ json: [String: Any]) -> TransactionOptions? {
there should be
 if let gas = json["gas"] as? String, let gasBiguint = BigUInt(gas.stripHexPrefix().lowercased(), radix: 16) {
            options.gasLimit = .manual(gasBiguint)

now it is set as limited, which is later replaced by default 21000...

Error: unauthorized: signature verification failed: deprecated support for homestead Signer


Hide credentials if necessary

For automatic ci systems like travis, it is often desired to hide credentials from public console log. For this, a proof of concept is showed here which hides log.
At present, only username is hid from console log and there is no mention of it into readme.md. But I think for proof of concept, it is ok...

In https://github.com/MythicAngel/grunt-ftp-push/commit/673efcf01dd865bcc0275a0adea1e5fd9e611a0b commit's log message I have mistakenly referred issue 3 (which is actually no of opened issue) instead of 40. Sorry for that, can't amend this from web.

Looks good, will merge and document tonight.

Thanks for the proof of concept, I took what you posted and modified it a tad.  It will now log '' if auth fails or succeeds when the hideCredentials option is set to true, default value is false so make sure to add that in.  I also updated the README with description and release notes and published to npm as version 0.4.4. Thanks

Robert, I'm just curious why you are not in 1.X.X version yet? Your repository is perfectly working in production environment and I seriously believe that it should be 1.0.0+
Thanks for the new version. It works...

Good question. I was going to go 1.0 a while ago but then I decided to rewrite the whole plugin and clean it up and kind of forgot about it.  I have one issue lingering with some people on Ubuntu systems, but I think I will update to 1.0.0 after that issue is resolved.  Glad everything is working good !!


Weird DOM error

I'm getting a strange red error, but only in the DOM. Vanilla console / Vue utility do not show any error.
I'm using Vue 3 with Vuex 4 and VueDraggable 4.1.0
The error : image
I'm trying to setup a drag & drop nested list, here is my code :
<template>
  <draggable v-model="categories" item-key="tid" ghost-class="ghost">
    <template #item="{ category }">
      <div>{{ category.name }}</div>
      <drag-drop v-if="category.elements.length" v-model="category.elements" />
    </template>
  </draggable>
</template>
<script>
import draggable from 'vuedraggable'

export default {
  components: {
    draggable,
  },
  computed: {
    categories: {
      get() {
        return this.$store.state.categories.all
      },
      set(value) {
        this.$store.commit('updateSortedCategories', value)
      },
    },
  },
}
</script>

If I try to write {{ categories }}, we can see that the store get is not a problem :
[
{
   "tid": "2",
    "name": "Installation & licences",
    "elements": [
     {
        "tid": "97",
        "name": "Sub-category",
         "elements": []
      }
      ]
},
{
     "tid": "4",
     "name": "Tutorial & guides",
      "elements": []
},
{
     "tid": "6",
     "name": "Videos",
      "elements": []
}
]

If have no idea why this is not working as intended, am I doing something wrong ?

Same issue. Have you managed to fix it or find a workaround (or even a replacement)?

@ClementT3 Your issue is multiple root nodes in the template. If you wrap them in a element it will go away.
@superkooks Probably the same, but you provided no reference template.
Something probably worth while doing is add some degree of error state/logging if someone does that.

It turns out in my case I had set the slot wrong. It should be #item="{element}". Putting any other name for element caused it to error to DOM. It seems like this is what is causing @ClementT3's issue as well.

Yea, you are destructuring an object with two properties, element and index. If you want to not use name element, you can rename the destructured variable like so #item="{element: car}". And for the sake of completeness with TS enabled, you can cast the type in the latest Vue 3 by doing this #item="{element: car} : {element: Car}", assuming Car is a type. Kinda ugly, but at least gets around needing generics to do it better.

Thank you so much @Spice-King
Docs are unclear because coming from Vue 2 I had v-for="(chapter,  index) in chapters" so I used #item="{chapter, chapterId}" and got no errors but empty objects...

Yea, you are destructuring an object with two properties, element and index. If you want to not use name element, you can rename the destructured variable like so #item="{element: car}". And for the sake of completeness with TS enabled, you can cast the type in the latest Vue 3 by doing this #item="{element: car} : {element: Car}", assuming Car is a type. Kinda ugly, but at least gets around needing generics to do it better.

This should be part of the documentation!


Arguments in payload ignored

I have spent several hours trying different combinations of arguments and they seem to be ignored.
Examples
msg.payload = ['customer',{limit:3}];
msg.payload = [{limit:3}];
msg.payload = [null,'limit:3'];
msg.payload = [null,{limit:3}];
msg.payload = 'cus_EJP04Nywe9KxUJ';
Etc.
In the case of stripe.customer.list I get a result of 10 customers no matter what I do.
What am I doing wrong?   I can't seem top limit the number of results by either the limit option or by specifying a customer id or subscription id.

It just normalises the payload into an array, https://github.com/vicary/node-red-contrib-stripe/blob/cacc1eaa60230b03e11b370069b19a17d5f0eb43/nodes/01-api.js#L48
And uses it to invoke the method after adding idempotency key, https://github.com/vicary/node-red-contrib-stripe/blob/cacc1eaa60230b03e11b370069b19a17d5f0eb43/nodes/01-api.js#L66
In theory it should work for { limit: 3 }, I’ll do some tests in a few days to be sure.


account 100 is only 67 address

i use xdag -i
account 100
only create 67 address . is not 100.  and account 200 only 67 .
i need more address how to do?

account 100 doesn't create new addresses, you shouldn't use these other addresses that you see because some of these addresses are transaction addresses, not wallet addresses.

how to create new wallet addresses ? i want build user pay functions need more address

@okfirelee  Not possible to create multiple addresses with wallet not. Please try transaction remark in 0.3.1.


When use grid with font awesome package, the output is weird

Description
fa-icon("\u{f445}") and fa-chess-queen() works fine, but not fa-icon("chess-queen"),
while fa-icon("chess-queen") works fine out of grid layout.
Sample code
#import "@preview/fontawesome:0.1.0": *
#grid(
  columns: auto,
  rows: auto,
  column-gutter: 1em,
  row-gutter: 1em,
  fa-icon("\u{f445}"),  // works
  fa-chess-queen(),  // works
  fa-icon("chess-queen"),  // not work
  fa-icon("chess-queen", fa-set: "Free Solid"),  // not work
)

#fa-icon("chess-queen")  // works

The output of above code is like:

I now use fa-icon("\u{f445}") for a workaround.
This issue seems to be similar with https://github.com/duskmoon314/typst-fontawesome/issues/2
Reproduction URL
https://typst.app/project/r4eYUzsDig3IrjArCX_02R
Operating system
Web app, macOS
Typst version

[X] I am using the latest version of Typst

In the current package, fa-chess-queen is actually fa-icon.with("\u{f445}"). So, I think the weird output has something to do with ligature. However I have no idea how to find out what is happening.

I encountered this issue as well while using Font Awesome "manually" (without the package). Here is a link to some simpler (?) experiments using boxes on the web app. It seems that a ligature can fail to be applied if the first line of the version before the ligature is applied overflows its container? The behavior seems quite arcane.

It seems the ligature fails if this first line doesn't fit the container. However this begs the question of why the first ligature (#fa[chess]) succeeds...

That's pretty clearly because "chess" doesn't have any place where it could be broken across lines. the word "chess" overflows the box but stays on the same line, and then ligatures are applied, coincidentally making it fit the box after all.

That's pretty clearly because "chess" doesn't have any place where it could be broken across lines. the word "chess" overflows the box but stays on the same line, and then ligatures are applied, coincidentally making it fit the box after all.

Right you are! Then I guess the specific conditions for the bug to activate are: have some text which is broken over multiple lines, where the first one still doesn't fit the container, and which would otherwise be a ligature.

I was about to edit my comment because I don't agree with myself any more... it seems to be that way, but that is arcane: my hypothesis would explain (to me) why the "chess" ligature always works, but not why that specific width leads to "chess-queen" or even "network-wired" to work...
I would assume that rendering the ligatures leads to multiple layout passes; it would be interesting to see what happens on these individual layout passes.

I just added some println to shape and reshape functions in crates/typst/src/layout/inline/shaping.rs. Here is the code I tested and the output:
#text("chess-queen", font: "Font Awesome 6 Free")

divide

#box(width: 10pt)[
  #text("chess-queen", font: "Font Awesome 6 Free")
]

The box element is used to force a line break.
$ ./target/debug/typst c test.typ --font-path .
shape
shape:shape_segment: 0 "chess-queen"
range: 0..6, subrange: 0..11, item: Text("chess-queen")
reshape 0..6
shape
shape:shape_segment: 0 "chess-"
range: 0..11, subrange: 0..11, item: Text("chess-queen")
shape
shape:shape_segment: 0 "divide"
range: 0..6, subrange: 0..6, item: Text("divide")
shape
shape:shape_segment: 0 "chess-queen"
range: 0..6, subrange: 0..11, item: Text("chess-queen")
reshape 0..6
shape
shape:shape_segment: 0 "chess-"
range: 6..11, subrange: 0..11, item: Text("chess-queen")
reshape 6..11
shape
shape:shape_segment: 6 "queen"
range: 0..3, subrange: 0..3, item: Frame(Frame [Text("chess-"), Text("queen")], StyleChain [])

It seems that reshape uses the original text and doesn't consider the glyph after ligature. However, I still don't know how to fix this.


[Android] Initialize the SDK without registering for remote notifications

Hello guys 👋
First thing first, thank you for providing a Flutter package for Infobip.
My ticket is following the #12 in which we were requesting the "withoutRegisteringForRemoteNotifications" setting for the iOS platform.
We would like to know if it's planned or possible to implement the equivalent on Android side. I checked Android SDK repository and it seems that this last one can handle such feature: Android 13 Notification Permission Handling
This would be helpful for having the possibility to uniformize the behavior on both platform and our code.
In advance, thank you for everything and wish you a great weekend.
Best regards,

Hi,
by the default you won't be registered for the remote notifications on Android platform, and in order to register for them, you can call:
mobileMessaging.registerForAndroidRemoteNotifications();
as it is described on this documentation page.
There is a difference in method name for Android side as there were some implementation differences on plugins side, so probably that was the reason why you were not able to find this.
Hope this will help you resolving your issue.
Best

Hi @ikresicc,
Thanks for the share of information.
I was aware of this method and we are currently using it to display the push notification permission on due time.
What's confusing to me is that when I'm running our app on Android 13, I can confirm to you that the device is being registered post SDK's initialization and without displaying any permission request.
Indeed, the "registrationUpdated" event is being triggered with a valid pushRegistrationId and when I'm fetching the installation, the "isPushRegistrationEnabled" is set to true.
This is why I created this Github Issue and after reading Android SDK's documentation, not knowing the existence of the Flutter plugin's documentation, I thought that the "withoutRegisteringForRemoteNotifications" setting would be the solution for us.
For now, to prevent the user receiving any push notifications even though he didn't give its consent, we're disabling the push notifications when the said event is being triggered for the Android platform.

Just realized there is another property named "notificationsEnabled" that may be reflecting the notifications permission's status. If I understood correctly both platform are not working the same way (due to the"implementation differences on plugins side" that you referred into your previous message), am I right?
iOS platform: is registering the device and enabling the notifications once the permission has been provided
android platform: is registering the device right away and enabling the notifications once the permission has been provided
If so, that means we are forced to have specific code for each platform on the Flutter side.

Hi @ikresicc,
Could you respond to my previous questions when you will have some time please? :)
I thank you in advance,

Hello @toussam,
I'll try to clarify it:

when registration in the Infobip platform happens, you'll receive "registrationUpdated" event, and pushRegistrationId will be provided.
push notification permission dialog, which is triggered by the iOS or Android system, when registerForRemoteNotifications method is called allows to display the push notifications, they still may come without this permission, but won't be displayed.
there is a difference for the iOS platform that without the registerForRemoteNotifications method call the token won't be created and provided to the infobip's platform, so registration on the Infobip platform won't happen.
to completely disable the possibility of sending push notifications from the side of the Infobip platform you can use the enabling/disabling push registration method
better to not postpone the registering in the Infobip platform and do it at the start of the application, because in case of it's postponed SDK may not handle some events properly at future.

If I understood the use-case correctly you don't want the user to receive (be able to see) the push notifications until he gave the permission for it on the system dialog, and it's actually the default iOS/Android behavior.
If you sending the in-app notifications which may come as silent, you may use the enabling/disabling push registration method
If I didn't understand the use case, could you please clarify it?
Thank you,
Olga

Hi @riskpp,
Thank you for all the provided information!!
I didn't know that the permission was only about displaying the push notifications. I thought that it should also impact the registration which is explaining my previous interrogations.
To illustrate our context, we delayed the registration for iOS platform (using the "withoutRegisteringForRemoteNotifications" setting) to prevent the notification permission being displayed during launch time and therefore we ended up with specific code for both platforms. Because of that, we wanted to uniformize these last ones and the registration's timing, but I will follow up your advice for Android and let the registration being applied during the SDK's initialization (aka at the start of the application).
I'm closing this issue since I got all the needed information and since no modification are needed from on your side.
Again, thank you for everything!
Best regards,


App-wide theming for primary and screen loading colors

I want to be able to set following properties in a theme (e.g. light/dark theme) so that when user switches the theme, the style changes:

primary
loadingScreenBackgroundColor
loadingScreenIndicatorColor

example
Light:
  Styles:
    App:
      primary: blue
      loadingScreenBackgroundColor: white
      loadingScreenIndicatorColor: 0xFFDEDEDE

Dark:
  Styles:
    App:
      primary: blue
      loadingScreenBackgroundColor: black
      loadingScreenIndicatorColor: 0xFF202020

what's the actual issue? @amin-nas and how do I replicate?

@kmahmood74
See this example:
https://studio.ensembleui.com/app/9YfZUVl3SC82UZ5Mnf2e/screen/dQQGbTa5d6wUWF2C69VR#


repo for mm2/level_data

could we get a repo for mm2/level_data?

I will make the server code public in the next few weeks


Implement AIRL

Learning Robust Rewards with Adversarial Inverse Reinforcement Learning

Test code
# Generate trajectories
$ python examples/run_sac.py --env-name HalfCheetah-v2 --save-test-path --test-interval 50000 --gpu -1
$ ls results
20191219T182123.417394_SAC_

$ python examples/run_airl_sac.py --env-name HalfCheetah-v2 --test-interval 10000 --gpu -1 --expert-path-dir results/20191219T182123.417394_SAC_

when I run $ python examples/run_airl_sac.py --env-name HalfCheetah-v2 --test-interval 10000 --gpu -1 --expert-path-dir results/20191220T185529.974847_SAC_
run_gaifo_ddpg.py: error: unrecognized arguments: --gpu -1
can you help me ?  Thank you!

@haoyu-x Hi! Thanks for reporting the bug. I fixed the error on this commit, so can you try on the latest master branch again?

should I still use the same command suggested in issue 67?
https://github.com/keiohta/tf2rl/issues/67
when I run
python ~/tf2rl-master/examples/run_gail_ddpg.py --env-name=HalfCheetah-v2
--expert-path-dir ~/GAIL/results/20200619T013740.036943_SAC_ --gpu -1
--dir-suffix GAIL
same error.
On Sat, Jun 27, 2020 at 7:52 PM Kei Ohta<EMAIL_ADDRESS>wrote:

@haoyu-x https://github.com/haoyu-x Hi! Thanks for reporting the bug. I
fixed the error on this commit
https://github.com/keiohta/tf2rl/commit/ab675d0e8f7061910e8f44d00daf72c69c72db6a,
so can you try on the latest master branch again?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/keiohta/tf2rl/issues/36#issuecomment-650550289, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/APACPZW5GAOYIOYFBJIKW23RYXMOLANCNFSM4HSDDXZQ
.

Yeah, did you update the codes?

yes. I updated. Can you run gail and gaifo on your computer?
On Sat, Jun 27, 2020 at 9:13 PM Kei Ohta<EMAIL_ADDRESS>wrote:

Yeah, did you update the codes?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/keiohta/tf2rl/issues/36#issuecomment-650559655, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/APACPZUBM7ZIBNGBRSREIM3RYXV6FANCNFSM4HSDDXZQ
.

At least I resolved the error of --gpu.
Let me check whether full code runs.

Is there any other method to run gail and gaifo instead of the command line?
On Sat, Jun 27, 2020 at 9:15 PM Kei Ohta<EMAIL_ADDRESS>wrote:

At least I resolved the error of --gpu.
Let me check whether full code runs.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/keiohta/tf2rl/issues/36#issuecomment-650559894, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/APACPZSL5LEL2TMTZBCXKITRYXWGTANCNFSM4HSDDXZQ
.

I confirmed the script runs on my machine. Can you provide me with the full error message?
$ python examples/run_sac.py --env-name=HalfCheetah-v2 --save-test-path --test-interval=50000 --max-steps 300000
$ ls results
20200627T221712.423081_SAC_
$ find results/20200627T221712.423081_SAC_/ -name *.pkl
results/20200627T221712.423081_SAC_/step_00050000_epi_02_return_02744.1677.pkl
results/20200627T221712.423081_SAC_/step_00050000_epi_04_return_02701.9388.pkl
results/20200627T221712.423081_SAC_/step_00050000_epi_00_return_03121.5797.pkl
results/20200627T221712.423081_SAC_/step_00050000_epi_01_return_02784.6256.pkl
results/20200627T221712.423081_SAC_/step_00050000_epi_03_return_02752.4279.pkl

$ python examples/run_gail_ddpg.py --env-name=HalfCheetah-v2 --expert-path-dir results/20200627T221712.423081_SAC_/ --gpu -1
...
22:23:48.107 [INFO] (irl_trainer.py:74) Total Epi:    19 Steps:   19000 Episode Steps:  1000 Return:  1174.4017 FPS: 118.79
22:23:56.162 [INFO] (irl_trainer.py:74) Total Epi:    20 Steps:   20000 Episode Steps:  1000 Return:  1889.9691 FPS: 124.15
22:23:57.861 [INFO] (irl_trainer.py:118) Evaluation Total Steps:   20000 Average Reward  2278.0820 over  5 episodes

[image: Screenshot from 2020-06-27 21-38-20.png]
On Sat, Jun 27, 2020 at 9:34 PM Kei Ohta<EMAIL_ADDRESS>wrote:

I confirmed the script runs on my machine. Can you provide me with the
full error message?
$ python examples/run_sac.py --env-name=HalfCheetah-v2 --save-test-path --test-interval=50000 --max-steps 300000
$ ls results
20200627T221712.423081_SAC_
$ find results/20200627T221712.423081_SAC_/ -name *.pkl
results/20200627T221712.423081_SAC_/step_00050000_epi_02_return_02744.1677.pkl
results/20200627T221712.423081_SAC_/step_00050000_epi_04_return_02701.9388.pkl
results/20200627T221712.423081_SAC_/step_00050000_epi_00_return_03121.5797.pkl
results/20200627T221712.423081_SAC_/step_00050000_epi_01_return_02784.6256.pkl
results/20200627T221712.423081_SAC_/step_00050000_epi_03_return_02752.4279.pkl
$ python examples/run_gail_ddpg.py --env-name=HalfCheetah-v2 --expert-path-dir results/20200627T221712.423081_SAC_/ --gpu -1
...
22:23:48.107 [INFO] (irl_trainer.py:74) Total Epi:    19 Steps:   19000 Episode Steps:  1000 Return:  1174.4017 FPS: 118.79
22:23:56.162 [INFO] (irl_trainer.py:74) Total Epi:    20 Steps:   20000 Episode Steps:  1000 Return:  1889.9691 FPS: 124.15
22:23:57.861 [INFO] (irl_trainer.py:118) Evaluation Total Steps:   20000 Average Reward  2278.0820 over  5 episodes
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/keiohta/tf2rl/issues/36#issuecomment-650562023, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/APACPZQZU6PRI4UA6GBI2TLRYXYPZANCNFSM4HSDDXZQ
.

Oh, I assumed you installed tf2rl on developer mode...
I have not reflected my change on PyPI, so I do now.

sure. Please let me know what I should do after your change, Thank you a
lot!
On Sat, Jun 27, 2020 at 9:39 PM Kei Ohta<EMAIL_ADDRESS>wrote:

Oh, I assumed you installed tf2rl on developer mode...
I have not reflected my change on PyPI, so I do now.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/keiohta/tf2rl/issues/36#issuecomment-650562564, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/APACPZUVWIQGBHFOU5EK4ETRYXZBZANCNFSM4HSDDXZQ
.

Now, you can get the latest codes through PyPI. Can you try following?
# Update tf2rl
$ pip install -U tf2rl
# Make sure the version is 0.1.14
$ pip list | grep tf2rl

# Run your script
$ python ~/tf2rl-master/examples/run_gaifo_ddpg.py --env-name=HalfCheetah-v2 --expert-path-dir ~/GAIL/results/20200619T013740.036943_SAC_ --gpu -1 --dir-suffix GAIfO

By the way, it seems that your path: ~/tf2rl-master suggests that you did not install tf2rl using git clone but you just download zip file, didn't you?
Anyway above command can detect the version, so please let me know if you still encounter the same problem.

problem fixed. But encountering another issue.   :(
On Sat, Jun 27, 2020 at 9:48 PM Kei Ohta<EMAIL_ADDRESS>wrote:

Now, you can get the latest codes through PyPI. Can you try following?
Update tf2rl
$ pip install -U tf2rl
Make sure the version is 0.1.14
$ pip list | grep tf2rl
Run your script
$ python ~/tf2rl-master/examples/run_gaifo_ddpg.py --env-name=HalfCheetah-v2 --expert-path-dir ~/GAIL/results/20200619T013740.036943_SAC_ --gpu -1 --dir-suffix GAIfO
By the way, it seems that your path: ~/tf2rl-master suggests that you did
not install tf2rl using git clone but you just download zip file, didn't
you?
Anyway above command can detect the version, so please let me know if you
still encounter the same problem.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/keiohta/tf2rl/issues/36#issuecomment-650563507, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/APACPZTP44TSSKYFXIEKWF3RYX2EDANCNFSM4HSDDXZQ
.

[image: Screenshot from 2020-06-27 21-54-05.png]
On Sat, Jun 27, 2020 at 9:53 PM Haoyu Xiong<EMAIL_ADDRESS>wrote:

problem fixed. But encountering another issue.   :(
On Sat, Jun 27, 2020 at 9:48 PM Kei Ohta<EMAIL_ADDRESS>wrote:

Now, you can get the latest codes through PyPI. Can you try following?
Update tf2rl
$ pip install -U tf2rl
Make sure the version is 0.1.14
$ pip list | grep tf2rl
Run your script
$ python ~/tf2rl-master/examples/run_gaifo_ddpg.py --env-name=HalfCheetah-v2 --expert-path-dir ~/GAIL/results/20200619T013740.036943_SAC_ --gpu -1 --dir-suffix GAIfO
By the way, it seems that your path: ~/tf2rl-master suggests that you
did not install tf2rl using git clone but you just download zip file,
didn't you?
Anyway above command can detect the version, so please let me know if you
still encounter the same problem.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/keiohta/tf2rl/issues/36#issuecomment-650563507, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/APACPZTP44TSSKYFXIEKWF3RYX2EDANCNFSM4HSDDXZQ
.

I cannot see your screenshot.
Can you copy the message or retry uploading the picture?

sure.
21:56:03.468 [INFO] (irl_trainer.py:74) Total Epi:     7 Steps:    7000
Episode Steps:  1000 Return: -327.7823 FPS: 4416.74
21:56:03.713 [INFO] (irl_trainer.py:74) Total Epi:     8 Steps:    8000
Episode Steps:  1000 Return: -262.8208 FPS: 4088.41
21:56:03.955 [INFO] (irl_trainer.py:74) Total Epi:     9 Steps:    9000
Episode Steps:  1000 Return: -325.9061 FPS: 4149.77
21:56:04.268 [INFO] (irl_trainer.py:74) Total Epi:    10 Steps:   10000
Episode Steps:  1000 Return: -278.5830 FPS: 4176.82
Traceback (most recent call last):
File "/home/haoyux/tf2rl-master/examples/run_gaifo_ddpg.py", line 43, in

trainer()
File
"/home/haoyux/venv/lib/python3.6/site-packages/tf2rl/experiments/irl_trainer.py",
line 113, in call
expert_next_states=self._expert_next_obs[indices])
File
"/home/haoyux/venv/lib/python3.6/site-packages/tf2rl/algos/gaifo.py", line
48, in train
agent_states, agent_next_states, expert_states, expert_next_states)
File
"/home/haoyux/venv/lib/python3.6/site-packages/tensorflow/python/eager/def_function.py",
line 580, in call
result = self._call(*args, **kwds)
File
"/home/haoyux/venv/lib/python3.6/site-packages/tensorflow/python/eager/def_function.py",
line 627, in _call
self._initialize(args, kwds, add_initializers_to=initializers)
File
"/home/haoyux/venv/lib/python3.6/site-packages/tensorflow/python/eager/def_function.py",
line 506, in _initialize
*args, **kwds))
File
"/home/haoyux/venv/lib/python3.6/site-packages/tensorflow/python/eager/function.py",
line 2446, in _get_concrete_function_internal_garbage_collected
graph_function, _, _ = self._maybe_define_function(args, kwargs)
File
"/home/haoyux/venv/lib/python3.6/site-packages/tensorflow/python/eager/function.py",
line 2777, in _maybe_define_function
graph_function = self._create_graph_function(args, kwargs)
File
"/home/haoyux/venv/lib/python3.6/site-packages/tensorflow/python/eager/function.py",
line 2667, in _create_graph_function
capture_by_value=self._capture_by_value),
File
"/home/haoyux/venv/lib/python3.6/site-packages/tensorflow/python/framework/func_graph.py",
line 981, in func_graph_from_py_func
func_outputs = python_func(*func_args, **func_kwargs)
File
"/home/haoyux/venv/lib/python3.6/site-packages/tensorflow/python/eager/def_function.py",
line 441, in wrapped_fn
return weak_wrapped_fn().wrapped(*args, **kwds)
File
"/home/haoyux/venv/lib/python3.6/site-packages/tensorflow/python/eager/function.py",
line 3299, in bound_method_wrapper
return wrapped_fn(*args, **kwargs)
File
"/home/haoyux/venv/lib/python3.6/site-packages/tensorflow/python/framework/func_graph.py",
line 968, in wrapper
raise e.ag_error_metadata.to_exception(e)
ValueError: in user code:
/home/haoyux/venv/lib/python3.6/site-packages/tf2rl/algos/gaifo.py:58

_train_body  *
real_logits = self.disc([expert_states, expert_next_states])
/home/haoyux/venv/lib/python3.6/site-packages/tf2rl/algos/gail.py:29
call  *
features = self.l1(features)
/home/haoyux/venv/lib/python3.6/site-packages/tensorflow/python/keras/engine/base_layer.py:886
call  **
self.name)
/home/haoyux/venv/lib/python3.6/site-packages/tensorflow/python/keras/engine/input_spec.py:216
assert_input_compatibility
' but received input with shape ' + str(shape))
ValueError: Input 0 of layer L1 is incompatible with the layer:

expected axis -1 of input shape to have value 34 but received input with
shape [32, 6]
(venv) haoyux@haoyux-ThinkPad:~$
[image: Screenshot from 2020-06-27 21-54-05.png]
On Sat, Jun 27, 2020 at 10:00 PM Kei Ohta<EMAIL_ADDRESS>wrote:

I cannot see your screenshot.
Can you copy the message or retry uploading the picture?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/keiohta/tf2rl/issues/36#issuecomment-650564749, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/APACPZVMZ7AIN7BFRXJPDCLRYX3PJANCNFSM4HSDDXZQ
.

I guess you collected the expert transitions on different environment (such as Pendulum-v0? because the state dimension of pendulum-v0 is 3).
Are you sure the expert data are collected on HalfCheetah-v2?

OH!   Thank you Kei, everything is fine now!
On Sat, Jun 27, 2020 at 10:24 PM Kei Ohta<EMAIL_ADDRESS>wrote:

I guess you collected the expert transitions on different environment
(such as Pendulum-v0? because the state dimension of pendulum-v0 is 3).
Are you sure the expert data are collected on HalfCheetah-v2?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/keiohta/tf2rl/issues/36#issuecomment-650567358, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/APACPZRGHFMBPALRGXXZE6DRYX6IFANCNFSM4HSDDXZQ
.

one last question, how can I make a tensorboard figure like yours by
command line?
[image: Screenshot from 2020-06-27 22-28-13.png]
On Sat, Jun 27, 2020 at 10:26 PM Haoyu Xiong<EMAIL_ADDRESS>wrote:

OH!   Thank you Kei, everything is fine now!
On Sat, Jun 27, 2020 at 10:24 PM Kei Ohta<EMAIL_ADDRESS>wrote:

I guess you collected the expert transitions on different environment
(such as Pendulum-v0? because the state dimension of pendulum-v0 is 3).
Are you sure the expert data are collected on HalfCheetah-v2?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/keiohta/tf2rl/issues/36#issuecomment-650567358, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/APACPZRGHFMBPALRGXXZE6DRYX6IFANCNFSM4HSDDXZQ
.

It's great your script runs successfully!
I cannot see your picture again... I just do:
$ tensorboard --logdir results

Does this answer your question?

I mean  how can I visualize the training process using tensorboard.
The figure is
https://github.com/keiohta/tf2rl/issues/67
On Sat, Jun 27, 2020 at 10:38 PM Kei Ohta<EMAIL_ADDRESS>wrote:

It's great your script runs successfully!
I cannot see your picture again... I just do:
$ tensorboard --logdir results
Does this answer your question?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/keiohta/tf2rl/issues/36#issuecomment-650568998, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/APACPZSWMA2M76SP3B2JWE3RYX74RANCNFSM4HSDDXZQ
.

You can add suffix to a resulted directory by adding --dir-suffix option. #67 uses it as:
$ python examples/run_gail_ddpg.py --env-name=HalfCheetah-v2 --expert-path-dir results/20191213T203858.508559_SAC_ --gpu -1 --dir-suffix GAIL
$ python examples/run_gaifo_ddpg.py --env-name=HalfCheetah-v2 --expert-path-dir results/20191213T203858.508559_SAC_ --gpu -1 --dir-suffix GAIfO
$ python examples/run_vail_ddpg.py --env-name=HalfCheetah-v2 --expert-path-dir results/20191213T203858.508559_SAC_ --gpu -1 --dir-suffix VAIL

yes!  thank you！
On Sat, Jun 27, 2020 at 10:47 PM Kei Ohta<EMAIL_ADDRESS>wrote:

You can add suffix to a resulted directory by adding --dir-suffix option.
#67 https://github.com/keiohta/tf2rl/issues/67 uses it as:
$ python examples/run_gail_ddpg.py --env-name=HalfCheetah-v2 --expert-path-dir results/20191213T203858.508559_SAC_ --gpu -1 --dir-suffix GAIL
$ python examples/run_gaifo_ddpg.py --env-name=HalfCheetah-v2 --expert-path-dir results/20191213T203858.508559_SAC_ --gpu -1 --dir-suffix GAIfO
$ python examples/run_vail_ddpg.py --env-name=HalfCheetah-v2 --expert-path-dir results/20191213T203858.508559_SAC_ --gpu -1 --dir-suffix VAIL
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/keiohta/tf2rl/issues/36#issuecomment-650570163, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/APACPZXH2RFEPZ4ZPSAES23RYYBADANCNFSM4HSDDXZQ
.

My pleasure! Please don't hesitate to open an issue if you encounter any difficulty or question.
I close this issue. Thanks for the report!

OMG, this issue is not related to your question. So, I have to reopen this one.
It would be better to open a new issue if it is not related to the original one ;)

thank you again!
On Sat, Jun 27, 2020 at 11:01 PM Kei Ohta<EMAIL_ADDRESS>wrote:

OMG, this issue is not related to your question. So, I have to reopen this
one.
It would be better to open a new issue if it is not related to the
original one ;)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/keiohta/tf2rl/issues/36#issuecomment-650571897, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/APACPZWHX7KRFYN2KM4B2CDRYYCTNANCNFSM4HSDDXZQ
.

Hi Kei,
I'm using tf2rl'gaifo on robosuite.
https://github.com/gal-leibovich/robosuite.
but there is an error: mujoco_py.builder.MujocoException: Unknown warning
type Time = 1.3900.Check for NaN in simulation.
 It happens on robosuite all the
time, but works well on gym.
I'm wondering if you can offer me some help. Thank you!
On Sat, Jun 27, 2020 at 11:04 PM Haoyu Xiong<EMAIL_ADDRESS>wrote:

thank you again!
On Sat, Jun 27, 2020 at 11:01 PM Kei Ohta<EMAIL_ADDRESS>wrote:

OMG, this issue is not related to your question. So, I have to reopen
this one.
It would be better to open a new issue if it is not related to the
original one ;)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/keiohta/tf2rl/issues/36#issuecomment-650571897, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/APACPZWHX7KRFYN2KM4B2CDRYYCTNANCNFSM4HSDDXZQ
.

Hi, @haoyu-x
Could you open a new issue?
This is the issue where developpers track and discuss AIRL implementation.
For me, your problem is not related with the main topic of this issue.

Thanks @yamada-github-account , @haoyu-x and yes, I also think it would be better to open a new issue regarding this.

@keiohta I can't seem to find the run-airl-****.py files anywhere. Is this a commit issue?

Hi @Aadit-Ambadkar , we haven't fully tested AIRL yet, but you can try it on different branch: https://github.com/keiohta/tf2rl/blob/airl/examples/run_airl_sac.py


indexer: no need to deserialize dynamic fields

Description
Further simplification to dynamic field indexing, where we avoid deserializing dynamic fields altogether and extract the only piece of information we need (whether the DF is a dynamic field or a dynamic object field) from its type.
DF deserialization was also the only reason to perform package resolution during indexing, so this change also means we can remove the package resolver, package buffer and logic to keep those up-to-date (pushing in new packages before indexing a checkpoint, and "evicting" packages after a checkpoint had been processed).
Test plan
sui$ cargo nextest run -p sui-graphql-e2e-tests

Stack

#19517
#19518
#19519
#19520
#19521
#19548
#19554
#19576
#19621

Release notes
Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required.
For each box you select, include information after the relevant heading that describes the impact of your changes that a user might notice and any actions they must take to implement updates.

[ ] Protocol:
[ ] Nodes (Validators and Full nodes):
[ ] Indexer:
[ ] JSON-RPC:
[ ] GraphQL:
[ ] CLI:
[ ] Rust SDK:
[ ] REST API:

lightning speed! my comment on the other pr did not mean to push you to do all this tedious cleanup .. but wow here we are and it's much appreciated!


How to add multiple entry points to support multiple html files using customize-cra

I have 2 html files index.html and login.html with there respective starting points index.tsx and login.tsx.
index.html is supported by default. how to add support to login.html files & its tsx files

Hi @gs-mrpatil! customize-cra provides a way to inject webpack configuration into create-react-app, but we don't provide support for how to configure webpack itself. I suggest asking your question on Stack Overflow or in the webpack Spectrum chat.

It may help some people ( :


potential issue with xterm-bracketed paste and pasting long string:

Steps to reproduce
I have been told, that the following overcomes the xterm-bracketed paste modes and causes it to create the file /tmp/oh which should not happen. Notice, it only hapens with the long random string of spaces that is appended.
I am currently not sure why this is happening, it needs to further investigated.
Run the following command:
perl -le'print "\x3" . (" " x 5_000) . ":,!touch /tmp/oh\n"' | pbcopy

(use xsel or xclip to copy into Linux X11 clipboard/primary selection) and paste into an xterm terminal (to make sure we are using xterm-bracketed paste mode, check the :set t_PS? t_PE? t_BD? t_BE? output).
when pasting from insert mode, it will create the file /tmp/oh  which shouldn't happen.
Expected behaviour
buffer content should be pasted into buffer (or into the command line (because of the escape char at the beginning of the string), but shouldn't be executed.
Version of Vim
9.0.2054
Environment
linux
xterm
bash/zsh
Logs and stack traces
No response

I ran your command and pasted from Normal mode, got some blank lines. No extra file in /tmp.
:set t_PS? t_PE? t_BD?
t_PS <PasteStart> ^[[200~
t_PE <PasteEnd>  ^[[201~
  t_BD=^[[?2004l
	Modifié la dernière fois dans ~/Dotfiles/links/vim/vimrc ligne 375

(t_BS gave E846)
Trying :read !pbpaste gave some empty lines with a C-c in one of them. Neither that nor pasting from insert mode created a file.
Pasting in :terminal pasted the exact string copied (possibly minus the \x3 character), with no issues around C-c/etc.
Pasting in an Ex command line was pretty similar.

$TERM is alacritty, but 'term' is xterm-256color (the line where I set that is ~/.vim/vimrc:375 reported above). macOS with the Z shell. Vim 9.0.1976.
# infocmp xterm-256color
#	Reconstructed via infocmp from file: /Users/Knoble/.terminfo/78/xterm-256color
xterm-256color|xterm with 256 colors and italic,
	am, bce, ccc, km, mc5i, mir, msgr, npc, xenl,
	colors#256, cols#80, it#8, lines#24, pairs#32767,
	acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
	bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
	clear=\E[H\E[2J, cnorm=\E[?12l\E[?25h, cr=^M,
	csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
	cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
	cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
	cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
	dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K,
	flash=\E[?5h$<100/>\E[?5l, home=\E[H, hpa=\E[%i%p1%dG,
	ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L,
	ind=^J, indn=\E[%p1%dS,
	initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\,
	invis=\E[8m, is2=\E[!p\E[?3;4l\E[4l\E>, kDC=\E[3;2~,
	kEND=\E[1;2F, kHOM=\E[1;2H, kIC=\E[2;2~, kLFT=\E[1;2D,
	kNXT=\E[6;2~, kPRV=\E[5;2~, kRIT=\E[1;2C, kb2=\EOE, kbs=^H,
	kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
	kdch1=\E[3~, kend=\EOF, kent=\EOM, kf1=\EOP, kf10=\E[21~,
	kf11=\E[23~, kf12=\E[24~, kf13=\E[1;2P, kf14=\E[1;2Q,
	kf15=\E[1;2R, kf16=\E[1;2S, kf17=\E[15;2~, kf18=\E[17;2~,
	kf19=\E[18;2~, kf2=\EOQ, kf20=\E[19;2~, kf21=\E[20;2~,
	kf22=\E[21;2~, kf23=\E[23;2~, kf24=\E[24;2~,
	kf25=\E[1;5P, kf26=\E[1;5Q, kf27=\E[1;5R, kf28=\E[1;5S,
	kf29=\E[15;5~, kf3=\EOR, kf30=\E[17;5~, kf31=\E[18;5~,
	kf32=\E[19;5~, kf33=\E[20;5~, kf34=\E[21;5~,
	kf35=\E[23;5~, kf36=\E[24;5~, kf37=\E[1;6P, kf38=\E[1;6Q,
	kf39=\E[1;6R, kf4=\EOS, kf40=\E[1;6S, kf41=\E[15;6~,
	kf42=\E[17;6~, kf43=\E[18;6~, kf44=\E[19;6~,
	kf45=\E[20;6~, kf46=\E[21;6~, kf47=\E[23;6~,
	kf48=\E[24;6~, kf49=\E[1;3P, kf5=\E[15~, kf50=\E[1;3Q,
	kf51=\E[1;3R, kf52=\E[1;3S, kf53=\E[15;3~, kf54=\E[17;3~,
	kf55=\E[18;3~, kf56=\E[19;3~, kf57=\E[20;3~,
	kf58=\E[21;3~, kf59=\E[23;3~, kf6=\E[17~, kf60=\E[24;3~,
	kf61=\E[1;4P, kf62=\E[1;4Q, kf63=\E[1;4R, kf7=\E[18~,
	kf8=\E[19~, kf9=\E[20~, khome=\EOH, kich1=\E[2~,
	kind=\E[1;2B, kmous=\E[M, knp=\E[6~, kpp=\E[5~,
	kri=\E[1;2A, mc0=\E[i, mc4=\E[4i, mc5=\E[5i, meml=\El,
	memu=\Em, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM,
	rin=\E[%p1%dT, ritm=\E[23m, rmacs=\E(B, rmam=\E[?7l,
	rmcup=\E[?1049l, rmir=\E[4l, rmkx=\E[?1l\E>,
	rmm=\E[?1034l, rmso=\E[27m, rmul=\E[24m, rs1=\Ec,
	rs2=\E[!p\E[?3;4l\E[4l\E>, sc=\E7,
	setab=\E[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m,
	setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m,
	sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m,
	sgr0=\E(B\E[m, sitm=\E[3m, smacs=\E(0, smam=\E[?7h,
	smcup=\E[?1049h, smir=\E[4h, smkx=\E[?1h\E=,
	smm=\E[?1034h, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
	u6=\E[%i%d;%dR, u7=\E[6n, u8=\E[?1;2c, u9=\E[c,
	vpa=\E[%i%p1%dd,
# cat …/xterm-256color.terminfo
xterm-256color|xterm with 256 colors and italic,
        sitm=\E[3m, ritm=\E[23m,
        use=xterm-256color,

Could the long string be causing a problem with an internal buffer (overrunning the length or something)?

Did you try to paste using Shift-Ins I think that is how bracketed paste mode get's active, not sure if :r !pbpaste will reproduce it).
Yes, I think, the long buffer seems to be causing the problem. I can reproduce the initial problem (when it creates the /tmp/oh file) using linux and xterm terminal.

Interesting. I did not use shift+insert (I'd have to look up how to input that on my keyboard), but I'm pretty sure that pasting with Command+v in the past has been bracketed because it acts like paste was set automatically.

I cannot reproduce with Vim 9.0.2048 in gnome-terminal, after copying with perl ... | xsel and pasting with the middle click (using :set mouse=a to let Vim handle it) or shift-middle click (letting gnome-terminal do the bracketed paste).
Curiously, the pasted text starts with ^C (hex 03) if I use vim's middle-click handling, but some weird unicode ETX character (hex 2403) if I use shift-middle click.
In either case the :,!touch /tmp/oh ends up in the buffer and my /tmp doesn't get any new files.
Pasting with shift+insert results the same as shift-middle click.
Pasting with Ctrl+Shift+V uses the clipboard instead of the selection and thus requires perl ... | xsel -b, then behaves the same as shift-middleclick.
I get the same results both in normal mode and in insert mode.
My paste settings are
t_PS <PasteStart> ^[[200~
t_PE <PasteEnd>  ^[[201~
  t_BD=^[[?2004l
E846: Key code not set: t_BS?

Curiously, the pasted text starts with ^C (hex 03) if I use vim's middle-click handling, but some weird unicode ETX character (hex 2403) if I use shift-middle click.

This is likely a terminal specific behaviour, gnome-terminal is replacing the ^C (ASCII ETX) with U+2403 which is a symbol that represents that ASCII character.
In an actual xterm (not something claiming compatibility with it via $TERM), I can reproduce this, however there is a workaround (which I posted on oss-security too):
disallowedPasteControls: BS,DEL,ENQ,EOT,ETX,ESC,NUL

i.e. adding ETX to the default. The quick way to test this for xterm is to run and compare:
perl -le'print "\x3", (" " x 5000), ":!touch /tmp/oh\n\n"' | xsel -i
xterm  -e vim
xterm -xrm 'xterm*disallowedPasteControls: BS,DEL,ENQ,EOT,ETX,ESC,NUL' -e vim

With that resource set via -xrm the ^C on the clipboard will be ignored (replaced with a space).
The proper fix for this issue is likely making terminals that support bracketed paste mode also filter out (more) non-whitespace control characters.
This affects xterm as shown and some other terminals; I am aware of at least kitty and the author is making some changes there. Basically ^C having an effect within bracketed paste mode is somewhat surprising and it would be good defence-in-depth for Vim to just not accept ^C within bracketed paste mode.
(I've only looked at ^C in detail, potentially there could be a further similar issue with Escape itself, this won't apply to xterm as disallowedPasteControls obviously filters Escape by default but it appears some terminals only filter the data pasted within bracketed mode paste for the exact bracketed paste end sequence.)

That's easily reproducible with xterm in its default config -- and not only with ^C, but also with ^R  and all the other insert mode special keys, e.g:
printf '\x12=system("pwd")\r' | /usr/bin/xsel -i

And there's also the problem of insert mode mappings, which IMHO should not be interpreted in the pasted text. And that's not fixable in the terminal emulator, because the mapped keys may not be control characters at all.
Consider the difference between xterm -e vim +'imap q θ' and gvim +'imap q θ' when you paste qqqqqq while in insert mode.
If bracketed-mode were working as promised (= insert the pasted text "literally"), vim would do the same thing as gvim.

And there's also the problem of insert mode mappings, which IMHO should not be interpreted in the pasted text. And that's not fixable in the terminal emulator, because the mapped keys may not be control characters at all.

Are you sure you have been using bracketedpaste mode in xterm? Because mappings are intentionally enabled in bracketed paste mode (and the paste option is also set, so indenting etc shouldn't happen):
https://github.com/vim/vim/blob/50f3ec2898a43feaa6add2bc4875754cf9224d5e/src/edit.c#L4397-L4402

Are you sure you have been using bracketedpaste mode in xterm?

Yes. I have a script(1)-like program which logs both the input and the output.
Looks like vim is somehow reversing the enable and disable bracketed-paste escapes.
See the attached picture of the log -- yellow is the input, blue is the output.
See how bash correctly enables bracketed-paste mode just before the prompt with  ^[[?2004h and then gets the correctly bracketed ^[[200~PASTED_TEXT^[[201~, while vim seems to do it backwards -- disabling bracketed mode with ^[[?2004l just after I had pressed a to enter insert-mode.
My system is Debian 12, and vim is just compiled from github. The terminal the log was generated on is  terminator, installed with apt-get.

@chrisbra

(to make sure we are using xterm-bracketed paste mode, check the :set t_PS? t_PE? t_BD? t_BS? output).

t_BS? should be t_BE?.
@turistu
Interesting. What does :set t_PS? t_PE? t_BE? t_BD? show?

I think I got it. vim enables the bracketed mode globally upon starting, but since 48c9f3b12, it turns it off when entering insert mode is esckeys is off. And esckeys is off if running in compatible mode, which is the default if no ~/.vimrc is found, or if it set explicitly with set compatible in ~/.vimrc.  I hope I got all that right.
So the morality: is set compatible => no bracketed mode for you.
Maybe that's even documented somewhere ;-)

I didn't see any pointers to bracketed paste being disabled when esckeys is off (only to modifyOtherKeys)

@k-takata
ah, missed that thanks.
@benknoble I added a few pointers to the documentation.

@dgl I did check this and made the following patch: https://github.com/chrisbra/vim/commit/d857ac01f1da66ca6ed6906cbfbd97adb6c2eb9f
I am not sure this is the best way to handle it. Plus, I think one loses the possibility to break-out of paste-mode using Ctrl-C in case something goes wrong. Which means, the user may not be able to quit at all. So not sure.
BTW: I don't know which buffer fills up too much :(

BTW: I don't know which buffer fills up too much :(

That's not a matter of filling up any buffer, but of causing a delay/reschedule, forcing vim to reenter its main loop between the  ^C and the :!command. You can achieve the same with:
$ printf '\x03:!echo here you go' | /usr/bin/xsel -i
$ xterm -e expect -c 'spawn vim; send a; interact \003 { send \003; expect ""; sleep .1 }'

then press middle-click in xterm.

I am not sure this is the best way to handle it. Plus, I think one loses the possibility to break-out of paste-mode using Ctrl-C in case something goes wrong. Which means, the user may not be able to quit at all. So not sure.

I tried the patch but there's some issues, like the bracketed paste escape sequences can end up not just at the start of the buffer. It also needs a partial revert of fdd7155fab3447b38280035c66178330f8f041e7 and potentially 98a336dd497d3422e7efeef9f24cc9e25aeb8a49, although those clearly show ^C interrupting is a good idea in some cases...
Vim puts xterm into "modifyOtherKeys" mode, so actually Vim can tell the difference between a user pressing ^C and a ^C being pasted. (The user pressing it sends an escape sequence, as part of a paste it is a literal ^C). I tried the obvious key_protocol_enabled() after making it usable in other places, but that doesn't seem to work, it would be nice as this could avoid needing knowledge about bracketed paste mode.
This may be moot, as xterm 388 now has a new default for disallowPasteControls that filters all stty special characters see, https://github.com/ThomasDickey/xterm-snapshots/commit/18c5678752d253a51803b5e6952ea4ae565b7f6e -- although the behaviour on other terminals may still leave something to be desired, most terminals copy features from xterm, so we can just point them at that ;-)

but that doesn't seem to work,

Embarrassingly I tested it on an ancient version of xterm I had sitting around; it needs at least 377.
I think this could work: 832ec177a28ad035d0701e9de272e73f6eda8b6e
Will need to test that on a few terminals, but it seems to work on xterm <388.

Thanks, let me include this to make bracketed paste mode more robust in Vim. I think this makes sense (even so it seems terminals are going to fix it on their side anyhow).


F401 column number is imprecise

When some of the from statement's imports are unused, ruff highlights the entire statement. For large, multi-line imports this creates a lot of noise when using an extension to highlight errors in the editor and it may be better for the error to point to the exact imports that are unused instead.
Example:
from typing import (
    Any,
    Awaitable,
    Hashable,
    Iterable,
    Mapping,
    Sequence,
    TypeAlias,
    TypedDict,
)

SomeAlias = Mapping[str, str] | Sequence[str] | Iterable[str] | Awaitable[str]

Will generate
example.py:1:1: F401 `typing.Any`, `typing.TypedDict` imported but unused

This would probably require reporting each unused import separately though. I'm willing to take a stab at a PR but was wondering if this change is unwelcome/unwanted by the maintainers.

Yeah this could definitely be improved. IIRC, I implemented it this way to make autofixing easier and more reliable. But now that we support iterative autofix, it might be fine to revert back to "one error per unused import".
It may not be trivial, though, since we'll have to do some bookkeeping as we autofix, since we want to avoid leaving around empty statements like:
from typing import (
)

The downside is that if we mark each member as its own error, then if you were to trigger an "autofix" for that error (e.g., in the VS Code UI), you'd have to repeat that action for each member.

Oh yeah, that seems reasonable!

PR welcome for that change if you’re up for it — otherwise I’ll get to it at some point :)


[LB] Get started

Addresses https://jira.cfops.it/browse/PCX-2019, including:

Creating a standalone Get started section
Re-organizing nav for new user ease of use
Creating separate pages for creating new pools, monitors, and LBs, with sections for dash and API content
Set up a bunch of partials to single-source info
Provided more context around additional configuration options

Likely, you will need to pull down and preview locally to review.

Once live, will need to add a few redirects for the deleted create-lb-ui and create-lb-api pages.


Associate Commits with a Release

Found this resource to be a valuable and clean way to implement Sentry releases via concourse. I would like to help add an input for the most recent commit or a commit range. This would allow users to take advantage of Sentry's Associate Commits with a Release.

Sure, how would that work / look like?
On Thu, Nov 7, 2019, 18:56 Jacob Roush<EMAIL_ADDRESS>wrote:

Found this resource to be a valuable and clean way to implement senrty
releases via concourse. I would like to help add the ability add/get the
most recent commit or a commit range. This would allow users to take
advantage of Sentry's [Associate Commits with a Release].(
https://docs.sentry.io/workflow/releases/?platform=node#associate-commits-with-a-release
)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/rubenv/concourse-sentry-releases-resource/issues/6?email_source=notifications&email_token=AAAKPGD5SMMT6HGHVXHK7NTQSRJEFA5CNFSM4JKK7KV2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HXVYHTQ,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAKPGGNTDJBCXUXTLILD5TQSRJEFANCNFSM4JKK7KVQ
.

On the users pipeline side, we would have two more optional params commit and previous_commit. A user would pass in the commit hash and the previous commit hash if they want to associate commits.
On the script side, we would pass in the commit data into the sentry curl as per the Sentry API spec.

Sounds good!
On Thu, Nov 7, 2019, 20:21 Jacob Roush<EMAIL_ADDRESS>wrote:

On the users pipeline side, we would have two more optional params commit
and previous_commit. A user would pass in the commit hash and the
previous commit hash if they want to associate commits.
On the script side, we would pass in the commit data into the sentry curl
as per the Sentry API spec
https://docs.sentry.io/workflow/releases/?platform=node#using-the-api.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/rubenv/concourse-sentry-releases-resource/issues/6?email_source=notifications&email_token=AAAKPGFQUZ6I7ONUYYO4W23QSRTCRA5CNFSM4JKK7KV2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDNQN3A#issuecomment-551225068,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAKPGBDHUPCJ3ZVJZO7AXTQSRTCRANCNFSM4JKK7KVQ
.

You'll probably need to do something similar to version, where it is read
from a file.
On Thu, Nov 7, 2019, 21:20 Ruben Vermeersch<EMAIL_ADDRESS>wrote:

Sounds good!
On Thu, Nov 7, 2019, 20:21 Jacob Roush<EMAIL_ADDRESS>wrote:

On the users pipeline side, we would have two more optional params commit
and previous_commit. A user would pass in the commit hash and the
previous commit hash if they want to associate commits.
On the script side, we would pass in the commit data into the sentry curl
as per the Sentry API spec
https://docs.sentry.io/workflow/releases/?platform=node#using-the-api.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/rubenv/concourse-sentry-releases-resource/issues/6?email_source=notifications&email_token=AAAKPGFQUZ6I7ONUYYO4W23QSRTCRA5CNFSM4JKK7KV2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDNQN3A#issuecomment-551225068,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAKPGBDHUPCJ3ZVJZO7AXTQSRTCRANCNFSM4JKK7KVQ
.


MaterialX nodegraph available

There is a MaterialX based nodegraph available under the "MaterialX" editor.

How would I enable this? I looked for 20 minutes.
Blender 3.2

Install the addon
Enable USD Hydra
Change scene render to USD Hydra
Go to the shading view at the top
Open the right menu.

It looks like you found the MaterialX editor?

Yes!

To be clear. The requested next step is to update the documentation so it's easier to find.

Thanks.


rebase: update csi spec to latest release

updating csi spec to v1.9.0 release.

@Mergifyio queue

Hmm, all k8s-1.26 jobs failed. That can hardly be coincidence.
But, I guess the issue is fixed. Deploying failed because downloading kubectl.sha256 fails in all cases. It works for me.

/retest ci/centos/mini-e2e/k8s-1.26

/retest ci/centos/mini-e2e-helm/k8s-1.26

/retest ci/centos/k8s-e2e-external-storage/1.26

All k8s-1.26 CI jobs failed again, with downloading kubectl and kubectl.sha256. I can download both URLs on my laptop, over IPv6 and IPv4. There might be a broken proxy for dl.k8s.io that serves the contents to the systems in the CentOS CI. We'll have to retry the jobs later again.

/retest ci/centos/mini-e2e/k8s-1.26

/retest ci/centos/mini-e2e-helm/k8s-1.26

/retest ci/centos/k8s-e2e-external-storage/1.26


rename container-environment-variable to container-environment

follow 8aafa4ab9d63ec066b9e61238202382df288497a

/assign @nasa9084

/lgtm

/approve


Is all development tools run from the terminal on Catalina?

I installed home-brew and followed instructions through the terminal on Catalina 10.15.7 OS however when I try to use the commands to create a key nothings working. it says command not found.

We've seen problems where the first install of eosio can fail with homebrew. Can you try running brew link eosio to see if it fixes the issue?


Call exitFailure on parse failure

Fixes #4

Incidentally, the explicit use of SQL.close & hClose should probably be replaced by something like bracket.


add more device info in opencl runtime

Maybe it is better to do so at https://github.com/dmlc/tvm/blob/master/src/runtime/opencl/opencl_device_api.cc#L28
The logging information is better to be made less verbose as possible


Unhandled exception in spawn: Closed stream (IO::Error)

Proxy Server
Crystal 0.35.0
Error:
Unhandled exception in spawn: Closed stream (IO::Error)

Related to https://github.com/crystal-lang/crystal/pull/9243

Fixed by https://github.com/mamantoha/http_proxy/pull/19


Feature idea: Change Map from unknown --> any

Both of the default generic parameters of Map are any.
You should change them to unknown for the same reasons that you e.g. change JSON.parse.
For a more in-depth discussion on this, see: https://github.com/microsoft/TypeScript/issues/52552

Maps already have a generic option: Map<K, T>() where as JSON.parse does not, I think the goal is to improve existing features and not add generics everywhere, that said, if you do not set the K & T it will be any.
Up for debate, it is safer, but you can also just add a starting generic.

I'm aware that maps have a generic option. The point of this issue is that sometimes programmers forget to specify the generic parameter, so the default generic parameter is used, which means that any is slipped into the codebase, which should be solved at the type-level.

Agree, this issue deserves to stay open! My response is on the PR

FYI, the title should be "any --> unknown" :slightly_smiling_face:

Ultimately this is just about the default value, so Map<K = unknown, V = unknown> right?

yes

So, what is the status of the PR?
Seems like the test is accurate - I had the same defined myself in a big repo at work, and it has not caused any issues - i suggest this ends up being merged.

Seems this issue was closed in #53 ?

Correct, closed by #53


DOC.md file is not found

The README file contains link to the Doc.md file, but it opens the wrong path and prints message that file was not found.

It's a leftover from an old flake framework, I don't provide any support for my personal config https://github.com/archseer/snowflake/commit/91912e8e8d3d86ead2035dd37c4385905e447229


feat: Add class private field helper methods

Companion PR to TypeScript#30829.

@ExE-Boss thanks for looking into this.
@neuroboy23 opened https://github.com/microsoft/tslib/pull/77 earlier to use the same helpers as in https://github.com/microsoft/TypeScript/pull/30829
I see that the helpers in this PR (#79) are different from the ones in https://github.com/microsoft/TypeScript/pull/30829. My understanding is that ideally the helpers would match, so TS users don't get different behavior dependong on whether or not they are using tslib.
Am I understanding correctly? I haven't contributed to tslib before, so don't know what's normal.

I created this with the expectation that https://github.com/microsoft/TypeScript/pull/30829 would be changed to use property descriptors like what Babel does.


Add Basic PWA support

As discussed in https://github.com/VulcanJS/Vulcan/issues/2239, this PR is the first step towards implementing PWA support in Vulcan. Please tell me what do you think and what can be improved. Thanks!
cc @eric-burel

Sounds pretty good ! I am not a huge mobile user and I don't know much about PWAs, I'll link your pr on the Slack

@harryadel  What's the state for this PR? I think you solved the reviews comment so I can probably merge? Did you test it recently on one of your app?


sklearn.exceptions.NotFittedError: This SGDClassifier instance is not fitted yet

Hello
This is the code i'm trying to run:
    X_train, y_train = prepare_data_for_ml(X_train, y_train)
    y_train, y_test = prepare_data_for_ml(X_test, y_test)

    clf = HungaBungaClassifier()
    clf.fit(X_train, y_train)

    clf.predict(X_test)

That's the error:
100%|██████████| 15/15 [00:00<00:00, 43.02it/s]
Traceback (most recent call last):
  File "/Users/yonatab/PycharmProjects/VisualFitnessUtils/activate_ml/activate_ml_on_joints.py", line 62, in <module>
    main()
  File "/Users/yonatab/PycharmProjects/VisualFitnessUtils/activate_ml/activate_ml_on_joints.py", line 43, in main
    clf.predict(X_test)
  File "/Users/yonatab/opt/anaconda3/envs/CondaEnv/lib/python3.7/site-packages/hunga_bunga/classification.py", line 202, in predict
    return self.model.predict(x)
  File "/Users/yonatab/opt/anaconda3/envs/CondaEnv/lib/python3.7/site-packages/sklearn/linear_model/base.py", line 289, in predict
    scores = self.decision_function(X)
  File "/Users/yonatab/opt/anaconda3/envs/CondaEnv/lib/python3.7/site-packages/sklearn/linear_model/base.py", line 263, in decision_function
    "yet" % {'name': type(self).__name__})
sklearn.exceptions.NotFittedError: This SGDClassifier instance is not fitted yet

Am I missing something?
Thanks

Hi,
I think you overwrite the variable y_train involuntarily (second line), there should probably be X_test.
Hope that helps.


Mismatch Between GitHub and PyPI Versions of backgroundremover v0.2.7

Issue Description
There appears to be a discrepancy between the source code of backgroundremover v0.2.7 available on PyPI and the corresponding version on the GitHub repository.
Details
The bg.py file from the PyPI package seems to be dated Dec 6, which does not match the latest version of the same file in the GitHub repository. This has led to some confusion and import issues when using backgroundremover as a library.
Expected Behavior
The source code on PyPI should match the tagged release on GitHub for v0.2.7.
Actual Behavior
The source code on PyPI for backgroundremover v0.2.7 includes an older version of bg.py from Dec 6, which is different from what's currently on GitHub.
Steps to Reproduce

Install backgroundremover v0.2.7 via pip.
Compare the bg.py file from the installed package with the one available on the GitHub repository for the same version tag.

It would be greatly appreciated if the maintainers could look into this and ensure that the PyPI package is updated to reflect the GitHub repository's state for the same version.
Thank you for your attention to this matter.

huh? The version on github is one commit ahead of the 0.2.7 release? I'm kinda of confused.

github is ok but PyPI has an issue. When you do pip install backgroundremover==0.2.7 it fetches source code that does not match github 0.2.7 release.
E.g. I don't have github.py file when install the lib via pip

upgrade to 0.2.8 pip install --upgrade backgroundremover


Functions is listed twice, once incorrectly, for Server-Side Using Customer-Managed Key

In the supporting services table, "Azure Functions" is correctly listed under "Compute" as "Yes**, including Managed HSM".
However, there is another entry labeled "Functions" under "Analytics" which just has "Yes". I do not know if this is intended to reflect the Stream Analytics functions feature or something else, but this is very misleading, especially with it appearing earlier in the table. If this is meant to reflect a feature of another product, it needs qualifiers so as to not imply an incorrect state for the Azure Functions product.

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

ID: 993f902c-e7bd-1876-cf21-36bd9501b981
Version Independent ID: 71807d37-b606-ad3e-9ba3-0de1a78c4ceb
Content: Data encryption models in Microsoft Azure
Content Source: articles/security/fundamentals/encryption-models.md
Service: security
Sub-service: security-fundamentals
GitHub Login: @msmbaldwin
Microsoft Alias: mbaldwin

@mattchenderson
Thanks for your feedback! We will investigate and update as appropriate.

Closing old issues. Please feel free to reopen is this remains a problem. #please-close


Missing host in ingress object

It seems like the Ingress resource (at https://docs.microsoft.com/en-us/azure/aks/ingress-internal-ip#create-an-ingress-route) is missing spec.rules.host?
If not, then I have no idea how the Ingress resources is supposed to link to the ingress controller.

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

ID: 1bf9c2f3-caeb-0fb1-f089-3f7ca4fad729
Version Independent ID: 929253d7-c763-6429-561f-529d39b5284d
Content: Ingress controller on internal network - Azure Kubernetes Service
Content Source: articles/aks/ingress-internal-ip.md
Service: container-service
GitHub Login: @mlearned
Microsoft Alias: mlearned

@RomHartmann , Thank you for your question.
According to Kubernetes Ingress Rules:
Each HTTP rule contains the following information:

An optional host. If no host is specified, the rule applies to all inbound HTTP traffic through the IP address specified. If a host is provided (for example, foo.bar.com), the rules apply to that host.
A list of paths (for example, /testpath), each of which has an associated backend defined with a service.name and a service.port.name or service.port.number. Both the host and path must match the content of an incoming request before the load balancer directs traffic to the referenced Service.
A backend is a combination of Service and port names as described in the Service doc or a custom resource backend by way of a CRD. HTTP (and HTTPS) requests to the Ingress that matches the host and path of the rule are sent to the listed backend.

Having said that, how an nginx Ingress Controller (IC) processes a new Ingress resource involves the following steps:

User creates a new Ingress resource.
The IC process has a Cache of the resources in the cluster. The Cache includes only the resources the IC is interested in, such as Ingresses. The Cache stays in sync with the Kubernetes API by watching for changes to the resources .
Once the Cache has the new Ingress resource, it notifies the Control loop about the changed resource.
The Control loop gets the latest version of the Ingress resource from the Cache. Because the Ingress resource references other resources, such as TLS Secrets, the Control loop gets the latest versions of any referenced resources as well.
The Control loop generates TLS certificates and keys from the TLS Secrets and writes them to the filesystem.
The Control loop generates and writes the NGINX configuration files, which correspond to the Ingress resource, and writes them to the filesystem.
The Control loop reloads NGINX and waits for NGINX to successfully reload. As part of the reload:

NGINX reads the TLS certs and keys.
NGINX reads the configuration files.

The Control loop emits an event for the Ingress resource and updates its status. If the reload fails, the event includes the error message.
[Reference: How NGINX Ingress Controller Works | The Ingress Controller Process ]

Hope this helps!

Thank you for the extra information :)


Add cpp macros to append wrapped language info to xDS user agent

@nicolasnoble, can you please advise as to the best way to set this macro in the build system for C++?  I assume that we'll need to add it for both bazel and cmake?  Thanks!
CC @srini100 @yashykt

Quick comment first:

all identifiers regardless of use that begin with either two underscores or an underscore followed by a capital letter are reserved names

so technically, _GRPC_XDS_USER_AGENT_VERSION_SUFFIX is reserved.

In general, for Bazel and cmake, you'll want to add defines in the corresponding library target. Since the change you're doing does not need to propagate to the users of the library, the change is luckily less problematic than if it was to pollute the whole environment.
For bazel you want to use the local_defines attribute for the build target.
For cmake, that'd be add_definitions used like so. I don't think we could make it easy to only target the one library, but at the same time, I don't think it matters that much here.


Integration of Behavioral Progress

Imagine a scenario: In the next few months, there is a wave of behavioral issues plaguing our population due to the current coronavirus crisis. We have to be at the forefront in not only bringing a light to these issues but also use the technology we have available to help mitigate some of these issues. If you believe that we have the capability of using open source platform to help people fight these mental health issues, then please continue reading and join us in this noble cause.
Please find the presentation slides here --> https://bit.ly/3b8Ihzs
Motivation
As mentioned in the above slides, this component is to help us understand how the participant/user is dealing with the crisis by logging their behavioral health and using the information/data we collect to engage the user in providing a curated user experience. This will also help the user come back to the application even when they do not have active symptoms from the virus.
Causes
We are already collecting the wealth of information from the users thanks to this incredible collaborative initiative. This information corresponds with their behavioral health and users may not know it. The purpose of this behavioral integration serves two causes:

Helping us understand by collecting data and researching it to see how it correlates. Simple example being Stress levels corresponding with fever or any other symptom. We can publish this data (as a research data) to gain more traction.
Individual data (about the daily progress of user) can be fed back to the user to engage their participation. For example, if the user logged improvement in their stress levels in the past two days, we can alert the user the next day complimenting on their progress to make them come back to our app. This can act as a self-help loop to help users be aware of the issues they are facing and also a reminder when to seek help.

##Technical Challenges
If you are still reading, Thank you! If you wish to help, this is the part where we can make a difference. The format of progress we will make in integrating this section (Behavioral Section) is as follows:

Wireframing the UI (simple pages, welcoming and calm interactive elements).
Coming up with simple (1 minute or so) questionnaire to help understand the major behavioral issues participant is facing (stress, appetite, sleep, anxiety, etc.) We will have answers which the participant can easily quantify
Collecting the data and storing it in the backend.
Displaying data using libraries (such as this )
Selecting which data can we publish and what backend data tools we can use.
Feeding individual data to the participant on their progress.

As we deal with the goals above we will have more features previously unimaginable. Please comment below or reach out to me on discord @ceaseless to make this happen.
Thank you

@ransing I wholeheartedly agree we need to link this into the health chart/quiz that's being built. We can frame this as a personal diary log thing. Can you take the lead on assembling a team here (via discord and this issue) and set up a standup where we scope and figure out tasks ad integration into versioning? I mean you already are so I'm in :)

Agreed! This feature will be very important since social isolation can lead to a whole host of mental health issues. @ransing since you are a domain expert in this area, would you like to lead team efforts on this feature?
Can you create a rough mock-up of how the functionalities and UI/UX will look/behave. Then meet with @BrianHHough (designer extraordinaire) so that you both can design a stylized mockup based on your insights?

@ransing this definitely seems like a worthwhile and little-explored long term effect of COVID-19 that is surely worth investigating. Plus, this data collection process seems like it can dovetail nicely with the symptom-tracking features we're going to be implementing - seems like a perfect fit!
When you're ready to start integrating this into the app on the technical side, definitely reach out (or if you have any questions in the meantime feel free to ping me - Carter Klein on Discord). I'm a software engineer, so while I'd be happy to help prior to that I'm not sure what capacity I'm able to since I think the last biology or chemistry class I took was my freshman year of college - definitely not a domain expert on the medical side of things :)

I ca help or atleast find the people that can.

@tesla809 I will reach out to Brain for design imput. Definitely seems we need a simple, minimal and welcoming design.
@ngiangre thank you and yeah, I will make a discord channel and lead the standups once we have a few people. We will keep it simple with limited attainable targets which have a close feedback loop. And we will keep on doing iterations of it (like SCRUM).
@SomeMoosery Thank you Carter. Thanks for welcoming to help integrating the data. We will certainly need guidance when it comes to feeding the user collected data to the appropriate backend server. I will also consult with you once we have a definitive list of attributes that we can add to the database. I also wanted to know how we can envision adding more attributes later. Since it is a scalable (and we will scale) application, how wise it is it plan for a database or we can edit it as we keep adding more columns to it.
Please keep the suggestions coming even if you think of it later.
I appreciate the energy everyone is administering in these times of isolation.
Thanks

@ransing so on the backend side we're using MongoDB, a NoSQL database - so there's not columns as there would be in a traditional database. This makes it very easy to add/remove fields as we don't have to pre-define a schema; data is stored as if it were its own JSON object as opposed to a row in a table.
In short, adding these to the database in general will be easy, and adding more attributes down the line will be seamless

Thank you that was clear! Now I know what it is. Nevertheless, we need a common data model and relationships between fields not for the backend, but for comprehensiveness of the data collected and their relationships. From an analytics perspective this will be helpful.

We are integrating behavorial/emotional/mental questions here https://docs.google.com/spreadsheets/d/1Ji0sxIqFI49EZb7Mz4F0nkSBn1JSNMXiKjFAzJC2Jso/edit?usp=sharing these are defined as nonphysical observations in the data model. Each row represents a key, value pair within data storage. Please try to follow the existing entries. These questions are added to the queue for integration into the app. Any and all are welcome to chyme in!

Closing this issue - a lot of great points brought up and they have been documented, but to keep the issues page and Kanban. We should all take not to keep this bookmarked for future ideas


how to set cookie

Hi @NieYinlong
This plugin is useful for you
https://pub.dev/packages/universal_html
Thanks.

Hi @NieYinlong,
Your question is incomplete and in order to help you better, please provide some description on the issue or question you have.
Also, this question is more suitable to be asked on StackOverflow.
Please see https://flutter.dev/community for resources and  if you need help with your code, please see https://www.reddit.com/r/flutterhelp/
Closing, as this isn't an issue with Flutter itself. If you disagree, please write in the comments and I will reopen it.
Thank you


Move SpringRestDocs examples to extension

Currently, withExamples triggers  :

auto-generated request samples from Swagger models
SpringRestDocs (http-request., http-response., curl-request.

We want to implement anything not from Swagger model to extensions, so we want to move SpringRestDocs examples to a proper extension.

Maybe we should rename the RestDocs extensions to SpringRestDocsOperationsContentExtension

The new one could be GeneratedExamplesOperationsContentExtension ?

Folder names should have snake_case instead of lowercase :dancers:

Fixed in https://github.com/Swagger2Markup/swagger2markup/commit/b272e812d06256f39f808355333bd2f50b2a2944


[GLSL] --flatten-ubo with preserving names

Hi! Is it possible to flatten UBO with preserving member names? Or it's too complicated to support?
GLSL (source) > SPIRV:
#version 450

layout (location = 0) uniform Constants
{
	vec4 color;
	// ...
};

layout (location = 0) out vec4 outColor;

void main()
{
	outColor = color;
}

SPIRV > GLSL (result):
#version 110

// Instead of uniform vec4 Constants[...];
uniform vec4 color;
// uniform ...

void main()
{
    gl_FragColor = color; // instead of Constants[0];
}

In GLSL, the block name is the name you use to link against the outside world, not the member name. You can always use the reflection API to rename things as desired before cross-compiling.


feat: Live regions on macOS

Cocoa accessibility doesn't seem to have live regions as such, so we post announcement notifications instead. This is also what Chromium and Firefox do.

@madsmtm Please review my workaround for https://github.com/madsmtm/objc2/issues/306, or tell me if I have overlooked an obvious solution.


Compile

Compile error ！Because “filesystem”

It should be compatible C++ standard ，
“#include <experimental/filesystem>
namespace fs = std::experimental::filesystem; ”

Next version will support GNU compilers at least version 8.0. Unfortunatelly g++ v7 is not supported and does not plan.

Next version will support GNU compilers at least version 8.0. Unfortunatelly g++ v7 is not supported and does not plan.

done


feat: add matlab enabled Docker image

After much demand from the community and some prototypes (see here) we should add a Matlab-enabled Renku docker image. This simplifies down the Docker images and we can then make templates from this image.

Test repo here: I'm having trouble getting it to work as I did before... the logs show something like this:
INFO:MATLABProxyApp:Waiting for MATLAB to exit...
INFO:MATLABProxyApp:MATLAB has exited with errorcode: -9
ERROR:MATLABProxyApp:MATLAB returned an unexpected error. For more details, see the log below.

[W 23:18:07.147 NotebookApp] 404 POST /sessions/lee-2egavi-test-2dmatlab-2ddocker-6e65d600/matlab/messageservice/json/secure (<IP_ADDRESS>) 70.430000ms referer=https://renkulab.io/sessions/lee-2egavi-test-2dmatlab-2ddocker-6e65d600/matlab/remote/proxy/1.6/iframeProxyRelease.html

Repo: https://renkulab.io/projects/lee.gavin.k/test-matlab-docker/ (log into MATLAB with your ETH-provided license, however this might be the issue according to https://github.com/mathworks/jupyter-matlab-proxy/blob/main/MATLAB-Licensing-Info.md).
I tried a previous matlab build (it is a slightly different matlab version) here: https://renkulab.io/gitlab/learn-renku/working-with-matlab and it works fine. It could also be the security settings that changed with regards to iframes recently?

I just tried with the VNC (without the jupyter-matlab-proxy) and it seems to play ball - I think the new security settings + the ways the ports are set up in the jupyter-matlab-proxy make it unhappy.
I will reformulate this.

What do you mean by "new security settings"?

I just tried the test-matlab-docker and it seems to be ok? Or maybe I'm not looking at the right things?

New security settings: the ones renku-ui put in to disallow some particular js/browser-based features like interactive plots.
Yes I believe I've fixed it, so the latest test-matlab-docker should work.

yeah but those settings just disallow rendering of JS / iframes in notebook previews. It shouldn't have any effect on the session window afaik, if it does it's a bug.

Yeah it probably was a bug on matlab's side. Anyway I think this one is alright now - you would access it through the vnc directly.

So I just tested the latest image and it definitely seems to work - but in the previous versions you had matlab opening up directly - is that no longer needed? My thinking was just if you could open it directly via a proxy then you actually don't need all the vnc stuff. But if this is how it's intended/useful it's also fine.

also - this PR definitely deserves a description! 😆

Yeah, so in the previous version it was using a slightly older matlab docker base, and the vnc-proxy worked. However when I updated it it started bugging and shut down after I entered my license details. So I opted to use our renku-vnc and have users open it from the vnc.

ok all good - I'll approve then. But please do add a description for posterity ;)

@rokroskar sorry for the commit spam - I was trying to get the desktop icon to play nicely but it seems like it would be another rabbit hole to go down if I was to find out the root problem (I think it's down to environment variables). Basically now when you click on the desktop icon you get taken to the /opt/VNC folder but even when I passed in the starting directory, matlab would complain. I don't think it's a huge issue and we can instruct them to navigate to their project git repo in the container.

Sounds good - we can try to fix that in a future iteration, I think it's already useful as-is


planning : design.md : edit

planning : design.md : edit

@Nursen2127 Do not change anything else, you did the same mistake by adding other files. You have added package-lock.json and communication.md.


[SPARK-8979][Streaming] Implements a PIDRateEstimator

This depends on #16
Derivation in https://www.dropbox.com/s/dwgl7wa1z5wbkg6/PIDderivation.pdf?dl=0

Refer to this link for build results (access rights to CI server needed):
https://ci.typesafe.com/job/ghprb-spark-multi-conf/47/
Build Log
last 10 lines
[...truncated 11 lines...]
> git rev-parse refs/remotes/origin/origin/pr/17/merge^{commit} # timeout=10
Checking out Revision 53fecbe7a07e83f02ecb4221511b3b3c42bbb663 (refs/remotes/origin/pr/17/merge)
> git config core.sparsecheckout # timeout=10
> git checkout -f 53fecbe7a07e83f02ecb4221511b3b3c42bbb663
First time build. Skipping changelog.
Triggering ghprb-spark-multi-conf » Spark-Ora-JDK7-PV,2.10
ghprb-spark-multi-conf » Spark-Ora-JDK7-PV,2.10 completed with result FAILURE
Notifying upstream projects of job completion
Setting status of c2a95eec97a92e134890115d052cc05ce4efb318 to FAILURE with url http://ci.typesafe.com/job/ghprb-spark-multi-conf/47/ and message: Merged build finished.

Test FAILed.

Here should be the test plan.

RateLimiterSuite - add unit test to test rate limit updates (mentioned in this in the inline comments)

ReceiverTrackerSuite - add unit test that tests the communication between receiver  - (i) runs a streamingContext+receiverStream+fake receiver that when started gives us access to the internal rate limiter of the receiver (may have to use objects) (ii) directly change the rate by calling receiverTracker.updateRate (iii) check the current rate in the receiver's rate limiter (not by sending data, but directly)

[1 and 2 should be part of subtask 1 or dynamic rate limiting]

RateControllerSuite -
a. add unit test that uses a mock RateController to test whether publish() gets called when onBatchCompleted is called
b. add unit test that uses a fake RateEstimator (something that just doubles the rate) to test whether the rate limit is being set correctly in the Receiver. Use the technique explained above in 2.

Overall, this whole PR looks decent and ready for PRs to the Spark main repo. I suggest breaking them down into smaller PRs according to the subtasks.
@huitseeker @dragos

Refer to this link for build results (access rights to CI server needed):
https://ci.typesafe.com/job/ghprb-spark-multi-conf/52/
Build Log
last 10 lines
[...truncated 11 lines...]
> git rev-parse refs/remotes/origin/origin/pr/17/merge^{commit} # timeout=10
Checking out Revision 16437f83d698c6f2d2a7572a87a4ba0a91e72636 (refs/remotes/origin/pr/17/merge)
> git config core.sparsecheckout # timeout=10
> git checkout -f 16437f83d698c6f2d2a7572a87a4ba0a91e72636
First time build. Skipping changelog.
Triggering ghprb-spark-multi-conf » Spark-Ora-JDK7-PV,2.10
ghprb-spark-multi-conf » Spark-Ora-JDK7-PV,2.10 completed with result FAILURE
Notifying upstream projects of job completion
Setting status of 48c869c75acf5c613e3e737b3913a189af0dada5 to FAILURE with url http://ci.typesafe.com/job/ghprb-spark-multi-conf/52/ and message: Merged build finished.

Test FAILed.

Refer to this link for build results (access rights to CI server needed):
https://ci.typesafe.com/job/ghprb-spark-multi-conf/54/
Build Log
last 10 lines
[...truncated 11 lines...]
> git rev-parse refs/remotes/origin/origin/pr/17/merge^{commit} # timeout=10
Checking out Revision 16437f83d698c6f2d2a7572a87a4ba0a91e72636 (refs/remotes/origin/pr/17/merge)
> git config core.sparsecheckout # timeout=10
> git checkout -f 16437f83d698c6f2d2a7572a87a4ba0a91e72636
First time build. Skipping changelog.
Triggering ghprb-spark-multi-conf » Spark-Ora-JDK7-PV,2.10
ghprb-spark-multi-conf » Spark-Ora-JDK7-PV,2.10 completed with result FAILURE
Notifying upstream projects of job completion
Setting status of 94c2225bb60e800194cdacde35b6916678bc676d to FAILURE with url http://ci.typesafe.com/job/ghprb-spark-multi-conf/54/ and message: Merged build finished.

Test FAILed.


is it normal to have dist/index.html showing white page ?

after executing the build, what is the proper way to test if the build is ok without interacting with a web server. opening dist/index.html displays a white page and I can't explain why ?

@amineparis you will need to have a server running so that the page can fetch the required resources.
If you want to test your production build using the build in dev server you can run.
ng serve --prod

For future reference the angular cli gitter channel would be a better place to ask questions like this.

why directly opening dist/index.html displays white page knowing that it is only html/css/js ?

if you look at the console it is an issue with paths to resources

it is an issue with paths to resources

thank you ! PS : I am wondering on how to thank someone on github other than poluting the issue with a useless comment like this one ?

haha. unfortunately I don't know of  great way. :)

I was facing the same issue when trying to  render index.html file from dist folder, I a figure out that there was issue with specifying the static filles to the express server. So you should dobule check if you are specifying  correctly the static folder to express server where the index.html file resides.

comment out the <base> tag and try it again for testing it. I would also manually set the base tag href when building the /dist folder try setting it within the command:
ng build --base-href domain.com/whatever/ --prod

I followed following command to test service worker in my angular 7 project.
ng build --prod
cd dist/appname
http-server -p 8082

And page showing like this

how to fix