Having some trouble with IBKR module - historical feed and charts printing

Hello,
I've been testing the functionality of the IBKR module and have noticed a couple of discrepancies. While everything seems to be working fine, I've encountered issues with the historical data feed not being displayed in the notebook, even though I can see API messages being sent to the IB Gateway. Additionally, the charts are not appearing as expected.
I've set up a paper trading account and successfully logged in using the provided username and password. Despite this, the historical data isn't showing up in the notebook, and the charts are not being printed.
Could you assist me in troubleshooting this matter?
The API responds to the call

But there is nothing being printed out. Just an empty []

The charts aren't being created as well

Thank you.

Which version are you using of roboquant? The historic data is perhaps related to issue #69, but that is only fixed in the 2.2.0-SNAPSHOT release.

Hi,
I'm using the 2.2.0-SNAPSHOT release version. and for the rest, I did exactly the same as the example on jupyter notebook

I just did a quick test, and no problems retrieving historic data:
val feed = IBKRHistoricFeed()

// This assumes you have a valid market subscription for US stocks
val symbols = listOf("TSLA", "GOOGL", "JPM")
val assets = symbols.map { Asset(it, AssetType.STOCK, "USD", "") }
feed.retrieve(assets)
feed.waitTillRetrieved()
println("historic feed with ${feed.timeline.size} events and ${feed.assets.size} assets")
feed.disconnect()

Same as you, I see all the data logger in the IB Gateway. So in your case, it is not a subscription issue I guess.
Is there any output on the console that something goes wrong?

Also tried the IBKR notebook and is also working. See screenshot below for the first few cells in the notebook (using Jupyter-Lab btw).

Hi, thank you for your help. I tried to run the code that you sent me. Apparently the historic feed has 0 events and 0 assets.

and the console printed out a warning like this, i dont know if its the reason affect this historical feed or not?

FYI: I am running using IB Gateway 10.27

Possible version differences?
For IBKR I run 10.19, both the installed TWS API and IB GW. For the TWS API, this is also the stable version.

Hello,
Yes, i just downloaded the 10.19 version and I think it's give better information that the 10.27 version. As it told that i didn't have a valid data subscription. However I'm currently experiencing an issue with the data subscription for Canadian stocks on the 10.19 version of the platform. Despite having an active subscription for the Canadian Security Exchange (CSE), I'm encountering a message indicating a lack of data subscription for this market.
I've attempted to implement the following code:
val symbols = listOf("TRUL")
val assets = symbols.map { Asset(it, AssetType.STOCK, "CAD")}

val feed = IBKRHistoricFeed()
feed.retrieve(assets)
feed.waitTillRetrieved()
println("Historic feed with ${feed.timeline.size} events and ${feed.assets.size} assets")
feed.assets

However, I'm still receiving a notification stating that there is no data subscription. I suspect there might be an issue with how I've mapped the assets. Could you please assist me in reviewing the asset mapping for Canadian stocks? Additionally, I recommend updating the link from IB Gateway in the Jupyter notebook, as it currently directs to the 10.27 version instead of the 10.19 version.
Your help in resolving this matter is greatly appreciated. Thank you for your assistance.

I remember there is some IBKR account setting that you want to share you data-subscription with the paper-trade account.


Error when uploading

from the console:
"Discord Rich Presence Integration v1.3.0-beta-6+4aec8f6: artwork uploader exited with status: 1 and error: Error while uploading to imgur: request or response body error for url (https://api.imgur.com/3/image): channel closed"
i had a similar issue in march but the updated release fixed it. seems like it has stopped working again

also, the python script seems to work completely fine, the standalone uploader is the only one that seems to be throwing errors

This is a problem with imgur that I cannot fix. Building the app with your own API key will probably fix the issue


Flag to prevent scrcpy from blocking sleep on PC

[x] I have checked that a similar feature request does not already exist.

Is your feature request related to a problem? Please describe.
I just use scrcpy to channel audio to my pc. I still want to put my PC to sleep.
Describe the solution you'd like
Add a flag to prevent scrcpy from blocking sleep.
Describe alternatives you've considered
It becomes default when only audio is being transferred
Additional context

This is because of scrcpy

Weird: https://github.com/Genymobile/scrcpy/blob/master/doc/window.md#disable-screensaver


Chrome scrolling

I have a problem when I turned on full screen on chrome.. It won't scroll with my scrollwheel is this due to my scripting or is it a known issue

same question


how to move marker?

I want to move marker manually, i cant find any function to do this with this library.

The marker object has a setPosition(LatLng) function.

ok thank you


Memory limit issue occurs when provisioning nodes by Karpenter

Describe the bug
A clear and concise description of what the bug is.
Steps To Reproduce
Expected behavior
I'm testing by integrating karpenter and kubeflow. When kubeflow requests to create a notebook using gpu, I want to create a gpu node(p2.xlarge) in the registered carpenter and have the notebook pod deploy to the gpu node
However, when deploying the pod, the number of memory changes non-ideally, so it cannot be deployed to the node. What's the problem? The memory limit becomes non-ideal, even if the memory limit is measured as '2' in kubeflow, the memory limit value changes strangely when a pod is deployed on a node.
Environment

Kubernetes version 1.24
Using EKS (yes/no), if so version? yes
Kubeflow version 1.17
AWS build number
AWS service targeted (S3, RDS, etc.)

Screenshots
If applicable, add screenshots to help explain your problem.

Additional context
Add any other context about the problem here.

The answer was late. I'll share the Karpenter provisioning value.
cat <<EOF | kubectl apply -f -
apiVersion: karpenter.sh/v1alpha5
kind: Provisioner
metadata:
  name: default
spec:
  requirements:
    - key: karpenter.sh/capacity-type
      operator: In
      values: ["spot"]
  limits:
    resources:
      cpu: 1000
  providerRef:
    name: default
  ttlSecondsAfterEmpty: 30
---
apiVersion: karpenter.k8s.aws/v1alpha1
kind: AWSNodeTemplate
metadata:
  name: default
spec:
  subnetSelector:
    karpenter.sh/discovery: ${CLUSTER_NAME}
  securityGroupSelector:
    karpenter.sh/discovery: ${CLUSTER_NAME}
EOF

I had the same problem when I expanded the capacity.
It seems to me that when creating a GPU Pod inside KUBEFLOW, we should see that the request limit value is abnormally large.


Two mainnet chains (bitbadges and cosmos) using 'cosmos' as their bech32_prefix key value

Because bitbadges chain.json uses 'cosmos' for its bech32_prefix and because B is antecedent to C in the alphabet, tools like chain-registry have started returning BitBadges chain information for the prefix cosmos rather than the Cosmos Hub chain data.
I don't know what the policy or terms are regarding this type of situation with regards to managing the content of the registry.
https://github.com/cosmos/chain-registry/blob/master/bitbadges/chain.json
https://github.com/cosmos/chain-registry/blob/master/cosmoshub/chain.json

Could you please be more specific which tool you're referring to?

Specifically the tool I was referring to was a tool I'd written.
However, I can now confirm that the duplicate bech32_prefix values of 'cosmos' has at broken least one large live in-production app in Cosmos.
Without unique bech32_prefix fields for chains there is no reliable way to resolve the origin chain for any address without a secondary mechanism setting a preference as to which network to select.
The issue is more prominent here because BitBadges is antecedent to Cosmos Hub in the Alphabet.

The prefix was changed about a week ago, so an app break feels to me like a shortcoming in the app's functionality.
There also still exists a case of bech32 prefix being re-used among mainnets, (Terra Classic vs Terra 2.0), and many are re-used across mainnet to testnet counterparts. So for the time being I thin it would be difficult to justify and implement a requirement for unique bech32_prefixes.

Agreed on Terra, but I think it's the outlier on this issue and not specific to the issue, but your point helps to clarify the two issues:
1] multiple mainnet type live status chains sharing the same address prefix
It's an issue because multiple chains sharing the bech32_prefix inhibits the ability of using chain-registry to determine the chain to address or contract affiliation using chain-registry alone.  I believe that will lead to devaluing the chain-registry utility itself.
The context around Terra was that sharing a prefix was done for expediency in the migration process to ease the emergency transition and because the existing chain was created by the same organization and had continuity in branding, community, and, I'm sure, other factors.  Having been through that experience personally, it did provide some ease with the addresses being the same on both chains, but it did create some confusion with contracts as those addresses are not the same on both chains.
It could be argued as you pointed out that you can't tell mainnet vs testnet, but for simplification of argument, let's assume we're talking about mainnets, and with the registry you can pull only mainnets and live status chains.
2] With the specific issue being raised here the entities now sharing a prefix have no formal relationship as far as I'm aware, with no consent or approval (not saying it was required) from the existing prefix user, Cosmos Hub.  In the case of Terra, the same entity created both Terra and Terra classic chains.  Maybe if the chain was part of ICS or in the AEZ, but it's not.
I think there's an argument to be made that any impact regarding the Terra prefix overlap was the parties (same party) were consenting and it could be argued that they are responsible for any issues may arise.
This is setting the precedent to allow for additional unaffiliated chains to duplicate the prefix of an existing chain.   I can understand that I unified address across multiple chains could benefit the user experience, but it could also harm the user and developer experience.
For clarity, my recommendation would not to allow unaffiliated parties to create registry entries using the bech32_prefix of an existing chain.


FLAP-117 System tests Menu bar testing and debugger testing

Description
complete test for the Menu bar and  the debugger
Link to the work item
link tasks FLAP-117 System tests - test the left sidebar and  FLAP-121 System test - test the debugger

We have some build failure @amneet270, need any help investigating that?

We have some build failure @amneet270, need any help investigating that?
@obonobo Yes I need help, I am able to run the test locally buy there is a failure when ran on GitHub the Chromedriver keeps crashing

We have some build failure @amneet270, need any help investigating that?
@obonobo Yes I need help, I am able to run the test locally buy there is a failure when ran on GitHub the Chromedriver keeps crashing

Okay, let me try and run those locally

Okay, pretty sure I know why it is crashing - chrome driver is not set to headless on your branch. GitHub actions has no display and I'm pretty sure chrome will crash if you try to open it without headless mode

Yup, check out this run: https://github.com/flapflapio/machinist-ui-test/runs/4783843856?check_suite_focus=true
I took your branch, and I just enabled the headless mode again. Here is the branch: https://github.com/flapflapio/machinist-ui-test/tree/menu_bar_testing_fix

So to fix:
Reenable headless in options.py on your PR. Should pass the CI with that

@amneet270  update your branch so that I can approve it since you made the appropriate changes :)


fixed typos and improved RHEL9 builder image explanation

What type of PR is this?
/kind documentation
Any specific area of the project related to this PR?
/area docs
What this PR does / why we need it:
Fixed typos and improves explanation
Which issue(s) this PR fixes:
Fixes typos and makes the documentation a little clearer
Does this PR introduce a user-facing change?:
No
Fixed documentation typos and improves explanation for RHEL9 builder images

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: toamto94
Once this PR has been reviewed and has the lgtm label, please assign leodido for approval. For more information see the Kubernetes Code Review Process.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Hey guys, sorry for the additional PR, I was a little late for fixing my typos. I also adjusted the explanation a little bit to make it a little clearer :)

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: EXONER4TED, toamto94
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [EXONER4TED]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: b8174ce742a7572a7cc7042b5d405a03353c5990


setup_node.sh command failed

Describe the bug
AWS instance ubuntu 20.04
To Reproduce

preparing on ubuntu:

sudo apt update
sudo apt upgrade

reboot
install vhive setup_node.sh

1. sudo swapoff -a
2. git clone --depth=1 https://github.com/vhive-serverless/vhive.git
5. cd vhive
6. mkdir -p /tmp/vhive-logs
7. ./scripts/cloudlab/setup_node.sh > >(tee -a /tmp/vhive-logs/setup_node.stdout) 2> >(tee -a /tmp/vhive-logs/setup_node.stderr >&2)

Expected behavior
A clear and concise description of what you expected to happen.
Logs
ubuntu@ip-172-31-16-86:~/vhive$ ./scripts/cloudlab/setup_node.sh > >(tee -a /tmp/vhive-logs/setup_node.stdout) 2> >(tee -a /tmp/vhive-logs/setup_node.stderr >&2)
APT::Periodic::Update-Package-Lists "0";
APT::Periodic::Download-Upgradeable-Packages "0";
APT::Periodic::AutocleanInterval "0";
APT::Periodic::Unattended-Upgrade "0";
Created symlink /etc/systemd/system/apt-daily.service → /dev/null.
Created symlink /etc/systemd/system/apt-daily-upgrade.service → /dev/null.
sysctl: setting key "net.ipv4.conf.all.promote_secondaries": Invalid argument
containerd github.com/containerd/containerd v1.6.2 de8046a5501db9e0e478e1c10cbcfb21af4c6b2d
deb [signed-by=/etc/apt/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main
🚧 Compile
net.bridge.bridge-nf-call-iptables  = 1
net.ipv4.ip_forward                 = 1
net.bridge.bridge-nf-call-ip6tables = 1
sysctl: setting key "net.ipv4.conf.all.promote_secondaries": Invalid argument
0 209715200 thin-pool /dev/loop6 /dev/loop5 128 32768 1 skip_block_zeroing
device-mapper: reload ioctl on fc-dev-thinpool  failed: No such device or address
Command failed.

Notes
Currently, we support only Ubuntu 18 (x86) bare-metal hosts, however
we encourage the users to reports Issues that appear in different settings.
We will try to help and potentially include these scenarios into our CI
if given enough interest from the community.

this error message is expected. we should clean it at some point


Default command

It would be great if ronin could use a commands/index.js or commands/default.js to reference a default command execution (instead of just printing help), for tools like nc, ncat, ucat, ls, and others that don't have necessary a command after the binary name.
(btw ronin is pretty awesome! :) )

Good point, it's been on my todo list for months. Unfortunately I'm very tight on time and at the moment I can't give Ronin an amount of attention it deserves. I hope to get to it sometime around february, so I think it's best for you to use some other library at the moment.

(btw ronin is pretty awesome! :) )

Thank you, always glad to hear that ;)


any_country or any_neighbor_country

If you disagree with any_country idea, it should be any_neighbor_country in both potential and effect.
By the way, is Greece a neighbor of Italy according to game engine?

Have you tested that the any_country effect works?


python311Packages.{jax,wandb}: exclude from bulk updates

Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

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

It will.

Hallelujah! Thank you so much @mweinelt ! This will save so many hours for us! 🎉

@samuela do you plan to update the package yourself?

yes


Testing Google Sign In with Detox

Hi,
I am currently using Detox to test my RN app on android, and when i am testing the login section, my test failed. I had search the internet for solutions, and one of it was to mock for the react-native-community/google-signin.
With regards to mocking for react-native-community/google-signin, i could not find any detailed example. Thus, could anyone please help me out? Thank you.

hi @ShaunStanley,
have you found a solution that you could share? I am facing the same issue.

@ShaunStanley @ZoltanSzokodi likely not what you are looking for but I mocked the component/button which launches it. So the component is GoogleAuth.js in my case. I put GoogleAuth.e2e.js in same folder but mock it to return predefined user. Of course, the idToken will never be valid but if your backend depends on other info, it does work well.

Hot out of the oven is our support for web-views on Android (aka Detox-web). Perhaps that could help you out, at least for Android tests?

Release notes
Pull request with API details

@d4vidi thanks so much! Looks promising!

Gave it a shot with google sign in; it didn't work but might not be a detox issue.
<input type="email" class="whsOnd zHQkBf" jsname="YPqjbf" autocomplete="username" spellcheck="false" tabindex="0" aria-label="Email or phone" name="identifier" value="" autocapitalize="none" id="identifierId" dir="ltr" data-initial-dir="ltr" data-initial-value="">
this is from google login form. I am then doing:
      await waitFor(web.element(by.web.cssSelector('#identifierId')))         .toBeVisible()         .withTimeout(15000);       await web.element(by.web.cssSelector('#identifierId')).typeText('email');
"Checking info...." takes about 10-13 seconds in my emulator so thought I would wait for it to finish then check if the element is visible but not working. Any input?

So what eventually happens when you do this - a timeout? @noomorph

it exits with error:  Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.AnimatedModuleIdlingResource] to become idle timed out

That suggests there is an infinite animation running indefinitely, somewhere - regardless of the sign in. A loader, maybe?

well when you click the google signin button, it loads a loader on its own then opens the login page...not sure what happens to that loader after the login UI is loaded.

And that's the point where the test hangs? Can you share a screenshot?

yes it shows the login screen, waits for some seconds then displays the error as you see blow

the tap() action opens the google login...no loader is directly attached to it...it just calls signIn() method of google which shows the login UI

any chance the google stuff runs on its own process that Detox can't detect? Happy to do a small PR for you to check out.

I would advise to temporarily disable sync and resort to sleeps in this case (although not recommended) using device.disableSynchronization() -- however there are issues on Android. I'll sort them out and report back.

On 2nd thought, AnimatedModuleIdlingResource being busy suggests a react native animation is in-effect. I don't think it's likely that the animation gets somehow incepted by Google... could you please double check your screen components and try to look up an animation component, or even an animation "leak"?

@d4vidi you have a valid point but the animation is out of the google-sigin library itself. When i click button, i transition animation kicks in to open the google signin form. the app never goes into idle for detox to continue. If I interrupt the google sign in form (tapping on back button of the emulator), detox reports "app is idle" and tries to find the IdenfiterId form element. Does that make sense?

i don't think i am being helpful for some reason but i am getting error Test Failed: No activities in stage RESUMED. Did you forget to launch the activity. (test.getActivity() or similar)?
await web.element(by.web.cssSelector('#identifierId')).typeText('email');
at this stage, the google form is fully visible. but thanks for helping me figure out the animation issue.

@d4vidi https://discuss.appium.io/t/espresso-driver-noactivityresumedexception/30012/2                does it makes sense? the scenarious are quite similar. Given detox still uses espresso for android (right?), perhaps it is limited by limitations of espresso?

Ouch. So, as it appears, the sign-in takes place in an independent google-made activity, com.google.android.gms.auth.api.signin.internal.SignInHubActivity. This kind of ruins things for us. Unless there's a way to start the sign-in flow inside the original activity, I don't see a way for this to work. I'm really sorry.

@d4vidi yeah kinda figured it is a dead end as well.


[3.10] Fix stack-use-after-scope in fuertetest

Backport of #16932 to be merged after #16926
When introducing the ThreadGuard I changed a lambda capture from [=] to
[&] overlooking an implicitly captured variable.
This patch changes the code to explicitly capture variables.
Scope & Purpose
(Please describe the changes in this PR for reviewers, motivation, rationale - mandatory)

[x] :hankey: Bugfix
[ ] :pizza: New feature
[ ] :fire: Performance improvement
[ ] :hammer: Refactoring/simplification

@markuspf is there a jenkins run for this


Add cumulative percentages.

So you can see how much of the overall total has been accounted for, when scanning down the output.
The commit also removes the "(100%)" markers on the (TOTAL) line.

Thank you for the fast review and release.


#206 Alias check if required

If all tests are successfully only tests will check this behavior in future scopes.


Add support for RFC 7906

Add module and test for RFC 7906

Codecov Report

Merging #61 into master will increase coverage by 0.04%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #61      +/-   ##
==========================================
+ Coverage    99.2%   99.24%   +0.04%
==========================================
  Files          58       59       +1
  Lines        4643     4894     +251
==========================================
+ Hits         4606     4857     +251
  Misses         37       37

Impacted Files
Coverage Δ

pyasn1_modules/rfc7906.py
100% <100%> (ø)

Continue to review full report at Codecov.

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

Awesome, thank you!


obtaining the cell color based on cell id

Is there any way to access the cell color based on cell id?

There was no way to access it but I have now added voronoiGetColor which receives a cell id and returns the corresponding color. Great suggestion!
2dfd28f4d9c71fd6281ec9c1c11895f351d36740


Use StreamWriter as input for IWorkbook.Write

It might be a good idea to accept a StreamWriter as an argument to the Write method so that the underlying base stream can be reused.
for example:
using (var ms = new MemoryStream())
using (var sw = new StreamWriter(ms))
{
   .... create workbook

  workbook.Write(sw);

  ... do stuff with the memory stream

}

Another option is that IWorkbook has an option to pass in a custom StreamWriter.

No longer a problem for me so I don't bother with this issue.


RDKDEV-257: IPower: Update StateChange callback function to have more context

This commit adds more context to the callback function that notify the power state change events.
In addition to the new power state, the current power state and
the phase of transition (Before/After) is also included in parameters.
This change helps to send "Before" and "After" power state change notification.
v1(https://github.com/rdkcentral/ThunderInterfaces/pull/163) ->v2

Modified StateChange() callback parameters to send out the values separately instead of using struct PowerState

Blackduck scan failure details
Summary: 0 violations, 0 files pending approval, 1 file pending identification.

Protex Server Path: /home/blackduck/github/ThunderInterfaces/167/rdkcentral/ThunderInterfaces

Commit: 34716c54f5d53a2f2031131a8cf66e3ec02e8796

Report detail: gist

Dependent changes:
https://github.com/rdkcentral/ThunderNanoServices/pull/580
https://code.rdkcentral.com/r/c/soc/broadcom/components/rdkcentral/thundernanoservices/Power/+/70326
https://code.rdkcentral.com/r/c/soc/broadcom/components/rdkcentral/thundernanoservices/Power/+/70327

WARNING: A Blackduck scan failure has been waived
A prior failure has been upvoted

Upvote reason: R2 merge - approved

Commit: 34716c54f5d53a2f2031131a8cf66e3ec02e8796


Known requests

See https://diysolarforum.com/threads/a-new-uart-protocol-for-a-daly-smart-150a-bms.86306/
# d2 03 00 80 00 29 96 5f
# d2 03 00 00 00 3e d7 b9 ✓
# d2 03 00 a9 00 20 87 91 ✓
# d2 03 00 c9 00 03 c6 56 ✓
# d2 03 00 cc 00 02 17 97
# d2 03 00 3e 00 09 f7 a3
# d2 03 00 57 00 0c e7 bc
# d2 03 00 d7 00 01 27 91

# d2 03 00 80 00 29 96 5f
0x0080, 0x0029 -> Read 41 settings registers

# d2 03 00 00 00 3e d7 b9
0x0000, 0x003e -> Read 62 status registers (62 registers = 124 bytes + header + crc)

# d2 03 00 a9 00 20 87 91
0x00a9, 0x0020 -> Read software version (32 registers = 64 bytes)

# d2 03 00 c9 00 03 c6 56
0x00c9, 0x0003 -> Read password (3 registers = 6 bytes)

# d2 03 00 cc 00 02 17 97
0x00cc, 0x0002 -> Read production date (2 registers = 4 bytes), YYMMDD00 = 0x14080F00 = 2024/08/15

# d2 03 00 3e 00 09 f7 a3
0x003e, 0x0009 -> Read some reserved signal registers

# d2 03 00 57 00 0c e7 bc
0x0057, 0x000c -> Read 12 GPS/GSM registers

# d2 03 00 d7 00 01 27 91
0x00d7, 0x0001 -> Unknown

# https://github.com/patman15/BMS_BLE-HA/blob/main/custom_components/bms_ble/plugins/daly_bms.py#L40
# https://github.com/patman15/BMS_BLE-HA/blob/main/custom_components/bms_ble/plugins/daly_bms.py#L129-L147
>>> d2 03 00 3e 00 09 f7 a3
<<< d203120000000075300000ffff0000000000000000476e

00 d2
01 03
02 12
03 00
04 00
05 00
06 00
07 75
08 30
09 00
10 00
11 ff
12 ff
13 00
14 00
15 00
16 00
17 00
18 00
19 00
20 00
21 47
22 6e

0x0080, 0x0029 -> Read 41 settings registers

>>> d2 03 00 80 00 29 96 5f
<<< d2035201f40c8000010010000600060001000100010000ffff0dde0e4208fc0898000000001388138875307530753075300028007d002800000028007d0028000000000000000000000c8000140000000000000057351d

Hey @syssi, I just figured out that Bulltron also uses Daly BMS and their app issues a write command right at the beginning:
D2 10 00 D4 00 03 18 0C 1F 08 29 00 1D E1
                  ^^ time code 24-12-31 08:29:00

Interestingly, looking at your stored documentation on the protocol writing to 0xD4 does not make any sense to me. Any ideas?
Further, since we both seem to invest quite some time into figuring out what BMSs do, interested in collaborating more and save some efforts? Ways to PM me are in my github profile, in case you are interested to discuss, get to know each other. :smile:
Guten Rutsch!

Sure! I will contact you via discord.

This Modbus register description is not very accurate. In my experience register address range 0xCE...0xE5 is used for model specific stuff. For example the balancer can be enabled using register 0xCF:
https://github.com/syssi/esphome-daly-bms/blob/main/components/daly_bms_ble/switch/__init__.py#L21


Usage of AdmZip makes the module unusable on the browser

Problem caused by PR #9

Consider using JSZip instead. The problem with JSZip is that the unzip operation is async, and our custom function doesn't allow async for whatever reason. Find out more.


The Improved Flurry of Blows, from Freedom Monk, and the Dash version of Step of the Wind, doesn't trigger the "Freedom" Condition from the Mobile Feat.

I'd noticed that when you're using the Improved Flurry of Blows, from Way of Freedom Monk, it doesn't trigger the "No movement restrictions while Dashing" part of the Mobile Feat, AKA, the "Freedom" Condition. Same for when using the Step of the Wind, Dash version, from Monk. It only seemed to work when you're using the Main Action for Dashing, but I haven't tried Cunning Action, yet, but I'm assuming it works for it, but just not the Monk Powers. The only problem that I'd noticed is that Dashing either by using the Improved Flurry of Blows, from Freedom Monk, and even by using the Dash version of Step of the Wind, it doesn't trigger the "Freedom" Condition. It seems like it only triggers it by using the actual Dash Action. I'm assuming it's cause of Step of the Wind/Improved Flurry of Blows, it just grants you double Movement "Points", but the Dash Action seems to have these weird Blue "Sectors", that separate them between the regular movement Grid, and the Dash movement Grid, if that makes sense? 🤣 And it seems like you only gain/trigger the "Freedom" Condition upon entering the "Dashing Side" of the movement Grid. If possible, or if it isn't too much of a hassle: Just make it so that when you're using the Improved Flurry of Blows Power, while also when you're using the Dash version of the Step of the Wind Power, it grants you/triggers the "Freedom" Condition upon the first time you activate those, Powers. Since it'll still consume your Bonus Action by doing so, so I don't think it would be too overpowered/cause any issues. If it does become modified in this way, I think it would be great!

(I don't know if the above image shows that much of what happened, but I hope it does, lol.)
By using the Mobile Feat, me gaining/triggering the "Freedom" Condition, was from me actually activating the Dash from the Main Action, not by me using the Improved Flurry of Blows Power, or by me using the Dash version of Step of the Wind. The above image is me showcasing the Combat Log, in that image, it shows that it ONLY triggers the "Freedom" Condition by using the actual Dash Action, when it's also supposed to work with the Monk Powers.

Do you have a save?

Do you have a save?

Not at the moment, but I could make one. That image was from an old testing Save File that I'd made awhile back, but I'll have to make a new one since it's probably broken from the new Updates.

Do you have a save?

https://drive.google.com/file/d/1bJyCKomWh2v4kQBLB-mzXzSK1U29DNeF/view?usp=share_link
you will need ultimate dungeon to test the save but the char is here
https://drive.google.com/file/d/19zU16Z5LvZZVzhjG68uV7Bm9jbAWNZBf/view?usp=share_link

seems to be fixed.

 seems to be fixed.

Sorry if this is hard to explain, since I'd seen y'all talking about the issue on Discord, too. (I'd seen you guys having some issues "deciphering" what I'm talking about, lol.) It's all good.
I wasn't talking about the additional Disengage Action, because that seems to be working as intended now. Because originally, when the Feat was first released, it never granted you an additional/extra Disengage Action, it just allowed you to use your Bonus Action to do so, but now it actually grants an additional/extra Disengage Action, which is good! 👍 The issue that I'm having is that the "Freedom" Condition, the Condition that you'd obtain from using the Dash Action, isn't working as intended. It doesn't work when you're using any of these Powers, the ones called Improved - Flurry of Blows, (From the Way of Freedom, Monk Subclass.) and the Dash version of Step of the Wind. The problem is that when you're using the actual Dash Action, it only triggers the "Freedom" Condition on the "Dashing Side" of the Movement Grid/Blue Section, but since the Monk Powers don't have a separate Movement Grid/Blue Section for Dashing, but instead they just grant you double Movement "Points", which doesn't trigger/grant you the "Freedom" Condition, when it's supposed to do so, since it claims that it does the "Dash Action" in its Feature Description. Look below for more information. I hope this helps!

Btw, when I'd mentioned the "Freedom" Condition, I'm talking about this specific mention of the Mobile Feat's Description, the "Movement Restriction" one.

Do you have a save?

https://drive.google.com/file/d/1bJyCKomWh2v4kQBLB-mzXzSK1U29DNeF/view?usp=share_link you will need ultimate dungeon to test the save but the char is here https://drive.google.com/file/d/19zU16Z5LvZZVzhjG68uV7Bm9jbAWNZBf/view?usp=share_link

Btw, thank you for posting a Save for me. It made it a lot easier for me, since I didn't feel like getting on at the time Zappa asked, lol.


Priest class bar

Is there a way to make the priest class bar like this?

Is there a way to even customize the class bar

There's no way to customize class bars at the moment. Only warrior one has some settings. I can take suggestions and add some settings for them though.

I just really want tornado to be on the priest class bar as well because that is something that needs to be spammed off cd

I don't think I'm going to put damage skills in class windows anyway, even if they're spammed off cd.

it's not used for damage though, it's the awakened passive that lets priests farm their Edict of Judgement back and so they can have it up every enrage. Regardless, I guess it's okay if it's not on there, I'll just stick to the CD bar.


fails testJobStateWithPaperJam()

Our printer fails testJobStateWithPaperJam() because a previous job which cause jam error is active and a job which is submitted by the tool does not be started.
I think that testJobStateWithPaperJam() should be changed to make jam error while printing the job which submitted by the tool.

Hi,
Can you please try cancelling/deleting the job via the GCP management page after causing the paper jam? This way, the next job can be started and the test can validate that it properly goes into the STOPPED state.
Thanks,
Kevin

Please excuse my lack of explanation.
The previous job is a standalone copy job to produce paper jam state, it's not an GCP job.
(Our printer does not detect paper jam under idle state.)
However, our printer does not start any GCP job while error state even if the previous job is canceled.
Reporting paper jam is not required before starting job in this testcase.
I think it's good to change the prompt message as follows.
"Press ENTER once printer reports paper jam paper is placed inside print path."

Regarding:

"However, our printer does not start any GCP job while error state even if the previous job is canceled."

When a GCP printer is in an error state, the /submit call to the GCP servers should still succeed but the job itself may be queued or stopped. Can you please provide the console output + google sheet logs for this test case?
Thanks,
Kevin

The cause of this issue was our operation error and our network problem.
Our printers accept GCP job even if they are under error condition.
And our printer passed this test case.
Sorry for the trouble.

Thanks for confirming. No problem at all!


[Perf] line-canvas-progressive-rendering

We can improve progressive rendering. Currently it slices the data in X batches and render each in a requestAnimationFrame. However there's no guarantee of how much/little data we can render in 1 animation frame, so we might end up:

taking too long (relatively unlikely at the moment given the batches sizes)
spending time doing nothing. Likely at the moment, especially if some of your data has been filtered out (you can spend the whole frame doing nothing)

We could/should

keep a filtered version of the dataset (would also help for tooltip/registers and potentially other things)
'reverse' the progressive rendering logic so that we render per slice of time instead of slice of data

We now expose the number of points that will be processed per frame, but this is not  good enough since:

timespan per frame might vary depending on display refresh rate, iframe, slow frames, etc
processing power isn't  constant (depends on browser, cpu...)

Since requestAnimationFrame gives us a timestamp (1ms resolution) we should use it to measure time elapsed between 2 animation frames and dynamically adjust the number of points processed all along the progressive rendering (on the first (and subsequent) frame measure our average processing power: X points per ms)

Currently rewriting a centralized renderer dynamically adjusting the number of points to render per frame based on rendering type.

released with v3


Oredictionificator not accepting block oredict entries

It seems that the Oredictionificator does not accept oredict entries that start with block. I tried to get it to unify RP2 Marble and Chisel Marble, both of which are blockMarble in oredict. However it will never do anything if clicking the button on the right or hitting enter. It works fine with entries starting with ore or ingot, but other than that it doesn't seem to do anything.
Also it's impossible to have more than 3 entries just as described in #2676 with every new one editing the last instead.
Using Mekanism 8.1.8

It only works with ores, ingots, nuggets or dusts. That's intentional.

Indeed. If I were to allow blocks, it would be possible to create any type of stained glass from a block of generic glass just by passing it through the machine- this is just one issue of many.

This prevents IC2 Uranium from being converted to "Immersive Engineering" or "Extreme Reactors" uranium in any form.  Once Yellorium (ER) is merged into blocks, it becomes IC2 blocks, which breaks up into pure uranium (with lots of radiation, so difficult to work with).  That uranium, since it is not an "ore", can't be converted to IE Uranium or ER Yellorium.  And the IC2 Block (obviously) can't be converted either, so you're left with blocks of uranium that you can't do anything with. (Trying to merge all my uranium into IE Uranium Ingots so I can put it into a Quantum Storage unit to wait until down the road when I'm ready to start exploring nuclear energy.)


maven-pmd-plugin causes unintended logging level

Describe the bug
maven-pmd-plugin 3.18.0 produces unintended log message.
Unintended [INFO] level log messages are output.
Subsequent plugins are also affected.
Runtime information
Windows11 64bit
JDK <IP_ADDRESS>
Maven 3.8.5
maven-pmd-plugin 3.18.0
Expected behavior
Do not touch log level at inside, please.
Unit tests
Just execute maven goal pmd:pmd.
This trouble does not occur in Goal pmd:help.

Apache Maven PMD Plugin
Release note Ver3.18.0
maven-pmd-plugin issues
Maven 3.1.x logging
PMD

3.18.0

3.17.0

maven-pmd-plugin 3.19.0 has coming.  (#150)

https://github.com/apache/maven-pmd-plugin/releases/tag/maven-pmd-plugin-3.19.0
https://maven.apache.org/plugins/maven-pmd-plugin/releasenotes.html#version-3-19-0

Issue solved. Thank  you.

apache/maven-pmd-plugin#91
https://issues.apache.org/jira/browse/MPMD-353


Cargo xbuild fails to build with older rustc nightly

I'm using nightly-2020-02-24, but cargo xbuild tries to build core crate with lastest rust-src, which failed. cargo xbuild need a way to specify which rust-src to use when building core crate.

Cargo-xbuild uses the rust-src component provided by rustup, so it should always be in sync with with your nightly version. What error message are you seeing exactly?

error[E0635]: unknown feature `llvm_asm`
 --> /home/william/.cargo/registry/src/github.com-1ecc6299db9ec823/compiler_builtins-0.1.28/src/lib.rs:3:12
  |
3 | #![feature(llvm_asm)]
  |

llvm_asm just included in recent version of rust, and I have no problems compile core crate in the past (about 2 months ago). So I think cargo xbuild must pull new version of rust-src

looking at compiler builtins version, i'm sure that it tries to compile latest rust-src

By the way, the very reason i'm trying to use old nightly is that nightly-2020-05-12 don't let me link my kernel to higher haft address, it's just throw alots of R_x86_64_32 relocations errors.

The problem is that the alloc library itself has a dependency on the compiler_builtins crate from crates.io: https://github.com/rust-lang/rust/blob/750db09fa800dceebba57d609d42969172118c92/src/liballoc/Cargo.toml#L15
This library just received an update that switches to llvm_asm: https://github.com/rust-lang/compiler-builtins/pull/351. Given that it was released as a normal patch release, cargo automatically tries to use the latest version if there is no lockfile.
To fix this issue, we need to update cargo-xbuild to respect the lockfile (i.e. the Cargo.lock) of the rust-src component. I opened https://github.com/rust-osdev/cargo-xbuild/pull/75 to fix this. Could you try whether this new version works for you? You can install it through:
cargo install cargo-xbuild --git https://github.com/rust-osdev/cargo-xbuild.git --branch respect-lockfile  --debug --force

That worked! But I still have problems linking code to higher address when using cargo xbuild, guess I will open new issue for this. Thanks!

Great, I will merge the PR then!


Can't install using yarn because of dooboolab-welcome

yarn install v1.22.17
info No lockfile found.
[1/4] Resolving packages...
error Couldn't find package "dooboolab-welcome" on the "npm" registry.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

npm install is fine

@trajano Hello thanks for the issue.
Could you kindly go over https://registry.npmjs.org?](https://github.com/npm/cli/issues/1816 and see if this helps?

No luck, still getting the error.

Found the reason https://stackoverflow.com/questions/61407791/yarn-not-working-with-nexus-3-npm-proxy-repository/62828391#62828391
needed always-auth=true to make it work on Yarn.


Add the feature to modify fonts via variables

--custom-font-display
--custom-font-regular
--custom-font-primary
--custom-font-code
Pls add the feature to modify fonts via variables
(display, regular, primary, and code font)

I would also like to see this be added.


Protobuf TLV encoding

8-bytes-timestamp, 8-bytes-integer-size-of-message, n bytes of message

fixed in https://github.com/cloudchacho/hedwig-go/pull/13


Enable multiple CPU from arguments

I have a 32 core AMD CPU and no GP.
mistral.rs will only use two of the cores. 2 cores is a bit less. Is it possible to allow to set it through arguments? Ollama will use half of core numbers by default.
Thanks!

sorry for late reply.
it is target/release/mistralrs-server -i plain -m microsoft/Phi-3-mini-128k-instruct -a phi3

It also depends on which backend you are using. Is it default backend or mkl?
Each of these have different settings for number of cpus to be used. For instance, mkl is controlled by OMP_NUM_THREADS or MKL_NUM_THREADS environment variable.
Irc, candle default backend is controllled by RAYON_NUM_THREADS, try to play with these environment variables to see if there is any change.
But, it is still weird that only 2 cores are being used.
Again, we need to know which cpu backend is used to solve the issue

it is the default backend. I will try OMP_NUM_THREADS environments. I didn't notice it. Thanks in advance!

@lij55 did this work?

sorry for late reply. I tried both OMP_NUM_THREADS and MKL_NUM_THREADS  but no effect. It still use 2 cores.
Is it related with model ? I used phi3 by  target/release/mistralrs-server -i plain -m microsoft/Phi-3-mini-128k-instruct -a phi3
Now I'm using ollama.


A little more detail on how Microsoft uses the collected data

It is not clear from the article if Microsoft actually uses any of the information they collect for other purposes than what is described in the article.   For example, could Microsoft use any of the images that are in one of my documents that get uploaded?   Or does any people at Microsoft actually read or use any of the data that is sent?   A lot of our documents include sensitive data and would violate various company policies if any unauthorized persons access some of this sensitive data, albiet the current documentation about Connected Experiences in Office would not violate any company policies and seems that it would be useful to keep enabled.

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

ID: fd465474-5237-e58f-c3a8-a52f0c6f0afa
Version Independent ID: fa4d9d36-c115-4044-0ede-90629e193b83
Content: Required service data for Office
Content Source: DeployOffice/privacy/required-service-data.md
Service: o365-proplus-itpro
GitHub Login: @DHB-MSFT
Microsoft Alias: danbrown

I have the same consern. Also, GDPR requires that the content and purpose of all data transfers of personally identifiable information is documented and justified. So, I guess I would have to document this in order to keep processing Excel files that contain email addresses or other PII.

Yes Jaripartti, GDPR is one of our such worries!   We have many others when we're dealing with thirty party companies that have outsourced to us.   We need to know soon if we're going to keep this enabled for security reasons or not.
Off topic, albiet related, I wrote a special script in PowerShell to remove many Microsoft built-in services and applications that had telementry or was stuff not allowed on the corporate owned workstation, such as videos games.   I thought for an E3 subscription, these would have been much easier to remove.   I have not tested the script yet, so I do not know how well it works.   Perhaps it will error out.

The GDPR is a serious concern / issue for European parties; it would be great if Microsoft were to reply tot the issues addressed above.

Any news on this? This information is very much needed.

When MS started their "revamped, cutting-edge" documentation system, I was actually surprised at the rapidity of responses, thoroughness of replies and courtesy of staff.  However, since the launch, things have just gone down hill.  Here is an EXTREMELY IMPORTANT (legally, ethically, morally, financially/fiduciary [e.g. lawsuits for misuse of data] and, possibly DECEPTIVE).  The last point is the one that non-responses give one the impression of a lack of genuine concern, should one exist at all, for Microsoft's employers - US, the subscribers.  When you mandate data collection to the degree you are speaking of here (images, text, etc.) it almost leaves my corporations with no choice but to abandon Microsoft in favor of the open-source alternatives where no ambiguity exists in what is and what is not collected; and, more importantly, what is done with the information.
So, here are my queries:

What is the rationale behind the need to collect samples of the text users are writing in emails, documents, spreadsheets, etc. besides to possibly enhance spell/grammar check and intelligent predictions?  Apple is doing this on iPhone hardware now - for instance, all voice processing is now done locally versus being uploaded to Apple servers.  I don't think MS would ever go for that because it would give up a vital part of their analytics campaign (which epic failed with Bing).

WHY can you not opt out, 100%?  Why is it on by default?  Why do there not exist any simple methods (short of blocking connections to the servers collecting said data ... by means of enterprise class next-generation Firewalls and Intrusion Protection Systems (NGIPS) such as the ASA5525-x with Firepower that I use at home.  I see the raw material sent to MS and it is revolting.  Kernel dumps of the entire contents of the page file and RAM - you could pull everything the person was doing on their computer at a point in time with this shi*.

When will you learn that customers are not going to put up with this forever?  Personally, I think it's going to take a (literal) act of Congress (similar to the $5B judgement against Facebook) to force this crap to stop.

Please, answer our questions.  If you are going to ignore them, please get rid of your "interactive" documentation site.  What's the point when you don't actively engage a customer with genuine concerns.
This is a lot bigger deal than most realize.  What about doctors such as myself?  I'm an anesthesiologist, fortunately I typically use my Mac for transcriptions and EPRs but, what about when I'm using a Windows box?  How about HIPPA, is MS going to take responsibility if data collected is hacked and leaked and confidential patient information is released to the world?  It's only a matter of time - you know that and I know that.
So, please, sincerely, help us out here.
Thank you in advance.


Toolbar-Reorganization

The toolbar should be moved above the oscillogram, in order to make the GUI more natural in its feeling.
We should have a branch for that and make some A/B testing with a focus-group at THGA.
Toolbar should be located as seen here: https://www.computerhope.com/jargon/t/toolbar.htm

The toolbar has been moved to the correct location.
Do you still want to carry out the tests or can the issue be closed?


Update jquery.dataTables.js

when using scrollX or scrollY, the headerCells array contains nulls and breaks (particularly when having hidden columns)
here we simply check for undefined to allow it to work

Can you link to a test case showing the issue please.
As you can see here this doesn't always occur, so there is something else going on.

No test case provided so going to close this for the moment. If still an issue, please reopen with a test case.


How to load the visualisation in an iframe on our website?

We created a visualisation and have a link. We want to showcase the visualisation in our website and tried to use iframe for the same but the visualisation is not loading.
Is there a way we can load the visualisations on our own website?

Hi! Yes, iframe should work. Here is a demo: https://codepen.io/xiaohk/pen/WNWxVwJ

Let me know if you have more questions.


Mail::fake() doesn't detected Mails sent by Notification

Laravel Version: >5.7
PHP Version: >7.2
Database Driver & Version: Not appliciable

Description:
When testing that Notification sends an email with Mail::fake(), Mail::assertSent() won't detect a send email, although actually it does work. Note that case is the same with Mail::assertQueued().
Example repository is set up to do the same when visiting the root page and when running test. The same logic is executed, however, the test won't pass.
I am sorry for unclear commit history, forgot to initialize repo before the first commit. :(
Steps To Reproduce:

Clone laravel_mail_testing_issue repository
Install PHP Dependencies: composer install
php artisan serve and visit http://localhost:8000/

verify that mailable was sent clicking on FAKE INBOX link optional

Run vendor/bin/phpunit and see test failing

I'll need more info and/or code to debug this further. Please post relevant code like models, jobs, commands, notifications, events, listeners, controller methods, routes, etc. You may use https://paste.laravel.io to post larger snippets or just reply with shorter code snippets. Thanks!

I think your example fails because of: return (new FakeMailable())->to($notifiable->routes['mail']);; eg. not using facade but new.

Sorry, didn't see you posted an example repo. I think @Kyslik is correct. Can you try with the facade instead?

That won't work either; you need to test those two separately... emitting notification and then sending (queuing) the email itself.
Obviously you can test that notification (fake) has an email object.
If you want it to be integration test (integration of notification and email together) you just test end result - email as queued and not the notification...
This is not a bug and should be further consulted on SO, can be closed.

@Kyslik I see.

I think your example fails because of: return (new FakeMailable())->to($notifiable->routes['mail']);; not using facade but new.

Your first reply sounds reasonable, however, it somewhat goes against documentation, which, as written, requires for a mailable to be returned.
Splitting into many tests, when notification's sole purpose is to send specific mailable, seems a bit of overkill. Could you share an example of how would you test end result - email is queued and not the notification ?

(Assumption - If all fakes work the same then) Fakes do not run the handle function; fakes just store object(s) so you can assert against them.
Test the notification and check that it has proper properties maybe email class etc.
If that does not help, do ask on SO instead of here. Feel free to link this thread in SO question.
Best,
Kyslik

On Mar 11, 2019, at 6:08 PM, Lukas<EMAIL_ADDRESS>wrote:
@Kyslik I see.
I think your example fails because of: return (new FakeMailable())->to($notifiable->routes['mail']);; not using facade but new.
Your first reply sounds reasonable, however, it somewhat goes against documentation, which, as written, requires for a mailable to be returned.
Splitting into many tests, when notification's sole purpose is to send specific mailable, seems a bit of overkill. Could you share an example of how would you test end result - email is queued and not the notification ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

(Assumption - If all fakes work the same then) Fakes do not run the handle function; fakes just store object(s) so you can assert against them.
Test the notification and check that it has proper properties maybe email class etc.
If that does not help, do ask on SO instead of here. Feel free to link this thread in SO question.
Best,
Kyslik

On Mar 11, 2019, at 6:08 PM, Lukas<EMAIL_ADDRESS>wrote:
@Kyslik I see.
I think your example fails because of: return (new FakeMailable())->to($notifiable->routes['mail']);; not using facade but new.
Your first reply sounds reasonable, however, it somewhat goes against documentation, which, as written, requires for a mailable to be returned.
Splitting into many tests, when notification's sole purpose is to send specific mailable, seems a bit of overkill. Could you share an example of how would you test end result - email is queued and not the notification ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@Kyslik Understood. What do you refer by do ask on SO ?

@flexchar Sorry; StackOverflow it is.


rpmbuild: add conditions around ASE packaging

Coverage remained the same at 81.201% when pulling 902bac22241b07b5e600c5b5e57ca63aef308f69 on rrojo/fix-rpmbuild-ase-off into 20d285160febe03640d4a65beeb88953db7dad82 on master.

This does not appear to allow ASE to build or package even if BUILD_ASE=ON?

With BUILD_ASE=OFF, the generated top level opae-.rpm package still requires the opae-ase package, which of course was not built.

@ibarraza could you try with the latest commit?  It seemed to work for me.


LoongArch Undocumented Instruction

When fuzzing the LoongArch CPU, I found some interesting undocumented instructions:
00111 0000 1011 1x00 rk rj rd amswap.b
00111 0000 1011 1x01 rk rj rd amswap.h
00111 0000 1011 1x10 rk rj rd amadd.b
00111 0000 1011 1x11 rk rj rd amadd.h

x is probably used for amswap_db, I'm unsure.
Another set of instructions that mimic ld instructions, but ignore rk:
00111 0000 1011 0x00 xxxxx rj rd ld.b
00111 0000 1011 0x01 xxxxx rj rd ld.h
00111 0000 1011 0x10 xxxxx rj rd ld.w
00111 0000 1011 0x11 xxxxx rj rd ld.d

It could be some hint to the memory system?

Sorry for not noticing this, it seems interesting and thanks for the fuzzing!
For the first part indeed I think they would be data barrier bits, and for the second I think we need more experimentation (or they're indeed placeholders and we're deemed to uncover nothing). I'm working on similar project (for 3A6000) but right now lack of time has been the main hold-back.

More undocumented instructions discovered:
# memory
0011 1000 0101 0111 0 xxxxx rj rd ?
0011 1000 0101 0111 1 00001 rj rd ?
0011 1000 0101 0111 1 00011 rj rd ?

I've run the fuzz program on a 3C5000L (LA464):

06492000 06492400 06492800 06492c00 are present, but absent on LA664
06493000 also present
71448000 (mask ffff8000) and 71450000 (mask ffff8000) also present
729b8000 (mask ffff8000) i.e. vindex also present
75448000 (mask ffff8000) and 75450000 (mask ffff8000) also present, very likely LASX counterparts of 71448000 and 71450000
769b8000 (mask ffff8000) i.e. xvindex also present

Others are absent on LA464, making them strictly LoongArch v1.10 material.


feature: make searchbox much more extensible

Hi,
The advance searchbox component is a very interesting component. Thanks a lot!
In order to fully exploit the potential of the searchbox, I think some extension points could be very useful:
The following extensions come to my mind:

easy overriding of classes of the searchbox
easy overriding of the remove/delete icon class. Depending on context/web project some rigid L&F style guides would require an specific icon.
Overriding the template-url (Default: 'dist/angular-advanced-searchbox.html'). In case some needs more structure changes to the HTML.
Overriding the "Parameter Suggestions" text.  Sometimes you may want to use something different or also localize it to other language.  for example  tile="{{'Title in spanish'} | translate}"
Generic way how to add other types of parameters/filters (like date, integer, float, list/selectbox)
Generic way how to add validation.

Does it make sense ?
If help is needed I think I could spend some efforts to add some of them.

Question to 3.)
There is an templateUrl property, does it not work?

First of all, thank you for the last updates (not only related to this issue), one cannot underestimate how much easier for end-users when a component is well fined tuned.  +1
The templateUrl cannot be overwritten from the html directive, you need to make the templateUrl use a function that reads, if existent, some attribute.
myApp.directive('myDirective', function() {
  return {
    restrict: 'A',
    templateUrl: function(element, attrs) {
      var templateUrl = 'angular-advanced-searchbox.html';
      if (angular.isDefined(attrs.nitTemplate)) {
        return attrs.nitTemplate;
     }
    }
  }
});

Ah, thanks.

Released that change with version 2.0.1

Question to 6.)
What kind of validation are you talking about? The build in browser validation of point 5.) ?

I think we can drop 6.
I thought about the 6. together with 5., now that I think about it, perhaps 6. does not make sense. This is because we can always listen to the model changes and determine if its valid or not (like for example some dates, or some specific syntax in some field (maybe some characters are not allowed etc.)).  and based on that, enable or disable ng-class. So only CSS would then show whaever color is needed.

When I use type=date at that time it is not supporting in Mozilla Firefox and Internet Explorer? Any suggestions?


Could we have builds/deploys to go with the latest improvements?

If possible could https://github.com/mlc-ai/web-llm/actions/workflows/pages/pages-build-deployment be ran as I was not able to get a build going locally. Thanks!

Thanks for you advice. We've already run the github action to update the website. Feel free to try out our latest demo.

Got Vicuna 7B v1 running on my site and it's quite amazing. Thanks!


Cosmos does not show half-filled stars

Hi
Why Cosmos doesn't sem-fill stars, please check this,thanks :

Thanks for the question, @ControlAdad. One can set 1 for "half-fill" or 2 for "precise" in the "Fill Mode" setting. By default it uses 0 for displaying full stars.
Alternatively, one can change the fill mode from code:
cosmosView.settings.fillMode = .precise
// Other fill modes: .half, .full

Please let me know if it works for you.

Thank you!

even works with custom images. thanks

Thank you

Fillmode precise doesn't work if I give totalStars as 1. Doesn't work on single star.


Validation Error - Not Found

I am getting validation error upon installing any chart.
helm install stable/jenkins --name jenkins
Error: validation failed: [secrets "jenkins" not found, configmaps "jenkins" not found, configmaps "jenkins-tests" not found, persistentvolumeclaims "jenkins" not found, serviceaccounts "jenkins" not found, roles.rbac.authorization.k8s.io "jenkins-schedule-agents" not found, rolebindings.rbac.authorization.k8s.io "jenkins-schedule-agents" not found, services "jenkins-agent" not found, services "jenkins" not found, deployments.apps "jenkins" not found]

Output of helm version:
Client: &version.Version{SemVer:"v2.16.1", GitCommit:"bbdfe5e7803a12bbdf97e94cd847859890cf4050", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.16.4", GitCommit:"5e135cc465d4231d9bfe2c5a43fd2978ef527e83", GitTreeState:"clean"}

Output of kubectl version:
Client Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.1", GitCommit:"d647ddbd755faf07169599a625faf302ffc34458", GitTreeState:"clean", BuildDate:"2019-10-02T17:01:15Z", GoVersion:"go1.12.10", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.7", GitCommit:"c83d931fb9bece427bc63a02349755e0f8696d3e", GitTreeState:"clean", BuildDate:"2020-01-31T20:09:49Z", GoVersion:"go1.12.12", Compiler:"gc", Platform:"linux/amd64"}

Cloud Provider/Platform (AKS, GKE, Minikube etc.):
AKS

duplicate of #7797.


Problems posting maven artifacts to maven central

Whilst our release 'shipped' on github 10 days ago (c. 17 Jan), and the release pipeline completed to push artifacts to jfrog artifactory & then bintray - from where they should be published to maven central, in fact the process hit some issues that we had no knowledge of.
Maven central publishing can take a few days for indexes to be rebuilt.
I raised IT issue https://jira.linuxfoundation.org/servicedesk/customer/portal/2/IT-18759?sda_source=notification-email 7 days ago ("IT-18759 ODPi Egeria - release completed in Azure. Not on maven central") and have had the following update from the support team:
The LF team are investigating updating the necessary pipelines to help with some of this:
Some further notes at:
https://confluence.linuxfoundation.org/pages/viewpage.action?pageId=41582704
In the meantime the artifacts were handled manually with the following issues arising:
All the 1.3 packages have been synced to Maven-Central with the exception of the following:

New Packages Have been Requested to be included in JCenter and are waiting on approval from JFrog:

audit-log-event-topic-connector
audit-log-slf4j-connector
cassandra-data-store-connector
cassandra-metadata-extractor-connector
data-platform-services-connector
discovery-service-connectors
gaf-metadata-client

open-connector-archives
Packages Missing JavaDoc:

open-types-test-generator
Packages Missing Sources:

governance-action-connectors
stewardship-action-connectors
Packages with Invalid POM file:

gaf-metadata-management
ui-chassis
Packages with Corrupt JAR:

open-lineage-janus-connector
ui-chassis-spring
I'll attempt to redistribute open-lineage-janus-connector and ui-chassis-spring from Artifactory to see if that resolves those package issues. Once we get confirmation from JFrog on the requested packages for JCenter we'll try syncing those out as well.```

A further update from jfrog
Thank you for your patience. We found the cause of the issue. There are some timeouts happening unexpectedly while validating the jar files. Our team is investigating further and working toward the fix. We will get back to you at the earliest.

I suspect it is to do with the fact some of our jar files are non trivial - larger in size than many... yet again we push the boundaries and break other technology!

We have increased the timeout values during the file processing. Kindly check if you are still seeing the issue or the jars validation is passing.
... the janus connector and ui-chassis-spring now pass validation
the open types generator passes, but should fail (and does at maven central) due to missing javadoc (we also need to fix this)
The other artifacts above still fail with 'POM project file is not valid'
Have updated jfrog with findings..

@planetf1 Thanks for the updates!
As a note I removed the apache-atlas and other connector packages from https://bintray.com/odpi/egeria as they were moved over (and redistributed from Artifactory) to https://bintray.com/odpi/egeria-connector-apache-atlas and https://bintray.com/odpi/egeria-connector-ibm-information-server respectively. Though not clearly documented, JCenter inclusion requires the packages come from the VCS repository linked to the Bintray repo.
I believe there are similar issues (missing Javadoc/Sources) with those packages that @cmgrote is working on.

I believe there are similar issues (missing Javadoc/Sources) with those packages that @cmgrote is working on.

Yes, there were some gaps, but I cleaned them up in the connectors and everything there is now synced 😄

@bramwellt Thanks for the change ref connector. Good to hear they are sorted.
On the core egeria artifacts - for two of them they were actually correct! :-) but JCenter validation was wrong....
We have one artifact which is clearly wrong - our fault. Funnily enough this passed jcenter validation (wrong) but failed maven validation (correct), whilst the remaining issues are with pom only projects which are reporting an invalid pom (yes the checkbox is ticked). Of course maven doesn't report any such problem, and the error message doesn't clarify what the error is. I've tried to compare but not yet noticed a problem. I've gone back to jfrog..

No response to the remaining issues on fri/w'end. Have chased up.

Further response from jfrog
_I have worked with our internal team and after analysis we could say that the behaviour is expected. Let me elaborate further on this.

ui-chassis
When a Project is marked as pom project, then the pom file should have a reference to any external sources like github for the binaries. In the provided pom file, there is no reference to external sources. And is why JCenter validation is failing and showing the validation message "A binary file (jar, aar, wat, apk) should be part of the package.
Package should include sources as part of the package."

2. stewardship-action-connectors
This package does not contain sources.jar file. A premium customer has the privilege to link the package to JCenter without sources.jar. In your case, we request you to add sources.jar file. Hence is it showing the validation message "Package should include sources as part of the package"
3. gaf-metadata-management
The issue is same as 1. The pom file does not contain a reference to external sources.

governance-action-connectors
This is also same as 2. There is no sources.jar file and hence the validation is failing.

We validate that the pom include section like mentioned here: http://maven.apache.org/scm/maven-scm-plugin/usage.html.
I hope this clarifies your query. Let us know if you have further queries. We look forward to your response._
2,4 are explained by the far they originally had no  section, thus defaulting to jar. And jars must have source. In fact they should be the same as 1,3 - as without any code we'd expect packaging=pom - and thus hit the first error.
JFrog appear to be saying that if there's no code included they at least need a code reference, seeming to point to saying they mandate the  section. We have this in our top level pom, but no others.
Whilst some of the packaging=pom modules will change to packaging=jar once code is included, the fact remains that some packages such as 'user-interfaces' are only umbrella packages for a series of modules
It seems as if we now need to at least try some changes to make JCenter work, but ideally do also what is appropriate
The options appear to be

Make all poms one of the non-pom types

Whilst this is correct in some cases - ie placeholders where we haven't added the code yet, it's never going to be true across all of our poms. It would also require adding a dummy empty jar or similar (like we already for for sources/javadoc)

Try adding SCM references to all poms - at least for packaging=pom

This seems low risk/harmless though adds clutter.
I'm going to try adding the scm ref to all failing poms for 1.3, and resubmit the release

@mandy-chessell Once built I'd like to ask we merge this -- I need to redo the release cycle & get the new packages through to the validation step in artifactory/JCenter.

Merged fixes so far and started a new release:
However this is failing
https://dev.azure.com/ODPi/Egeria/_releaseProgress?_a=release-environment-logs&releaseId=110&environmentId=322
2020-02-11T13:56:29.3182944Z ##[section]Starting: Artifactory Build Promotion - Dry Run
2020-02-11T13:56:29.3505901Z ==============================================================================
2020-02-11T13:56:29.3506226Z Task         : Artifactory Build Promotion
2020-02-11T13:56:29.3506364Z Description  : Promote a published build in Artifactory.
2020-02-11T13:56:29.3506527Z Version      : 1.8.1
2020-02-11T13:56:29.3506676Z Author       : JFrog
2020-02-11T13:56:29.3506778Z Help         :
2020-02-11T13:56:29.3506941Z ==============================================================================
2020-02-11T13:56:29.9416182Z Downloading: https://api.bintray.com/content/jfrog/jfrog-cli-go/1.31.2/jfrog-cli-linux-amd64/jfrog?bt_package=jfrog-cli-linux-amd64
2020-02-11T13:56:31.4120606Z Caching tool: jfrog 1.31.2 x64
2020-02-11T13:56:31.4346997Z Running jfrog-cli from /opt/hostedtoolcache/jfrog/1.31.2/x64/jfrog.
2020-02-11T13:56:31.4477650Z JFrog CLI version: 1.31.2
2020-02-11T13:56:31.5174277Z [Info] [Dry run] Promoting build...
2020-02-11T13:56:34.2743402Z [Error] Artifactory response: 400 Bad Request
2020-02-11T13:56:34.2744175Z {
2020-02-11T13:56:34.2745024Z   "messages": [
2020-02-11T13:56:34.2745289Z     {
2020-02-11T13:56:34.2745455Z       "level": "ERROR",
2020-02-11T13:56:34.2746497Z       "message": "User doesn't have permissions to override 'egeria-release-local:org/odpi/egeria/repository-services/1.3'. Needs delete permissions."
2020-02-11T13:56:34.2746763Z     },
2020-02-11T13:56:34.2746922Z     {
2020-02-11T13:56:34.2747029Z       "level": "INFO",
2020-02-11T13:56:34.2747231Z       "message": "Skipping promotion status update: item promotion was completed with errors and warnings."
2020-02-11T13:56:34.2747426Z     }
2020-02-11T13:56:34.2747571Z   ]
2020-02-11T13:56:34.2747671Z }
2020-02-11T13:56:34.2841513Z ##[error]Error: Command failed: /opt/hostedtoolcache/jfrog/1.31.2/x64/jfrog rt bpr "Egeria-Stage" "bd8ee26f1" "egeria-release-local" --url="https://odpi.jfrog.io/odpi" --user=*** --password=*** --include-dependencies=false --copy=false --dry-run=true
2020-02-11T13:56:34.2928319Z ##[section]Finishing: Artifactory Build Promotion - Dry Run

This may mean the artifacts need manually deleting.
Can you help @bramwelt  ?

Yeah artifacts would need to be deleted in this case. I'm not sure if that's the right approach as it goes against the 'never delete a release' process we have in place. I'm going to talk this over with the team and get back to you shortly.

I think ideally we wouldn't want to -- correctly... and if there was a new release it would be reversioned.
We have a particular case here where we're still debugging the process... I'm hoping the latest notes on the pom structure will mean we'll be in a better state for next time (says each release....)

Right. Working on re-running the 1.3 release now.

gaf-metadata-management
governance-action-connectors
stewardship-action-connectors
ui-chassis

These packages have been requested to be included in JCenter after I successfully re-ran the 1.3 release. One we hear back from JCenter, we should be able to trigger the Maven-Sync step again and get them sent out.
open-types-test-generator

Appears to still be missing javadoc - Though it sounds like this can be followed up for the 1.4 release, per the note about it not being used in integration?

Thanks. It seems as if those packages are on jcenter, so I've kicked off the last stage again.
open-types-test-generator we can skip for 1.3
I'm going to make the same changes to 1.4 & master including fixing this last module (I thought I did - but my artifact indeed has missing javadoc) -- and will likely try 1.4 also. (bearing in mind to recheck/rerun after as needed).
Thanks

Verified completion of sync job -- only types gen failed
cherry-picked changes from 1.3 forward to 1.4
fixed javadoc for last package (test gen) in 1.4

MASTER
For the code in master I've gone for a slightly different change rather than cherry pick the prior changes
We know:

JFrog requires this tag in all pom projects.
Jfrog doesn't entirely seem to base it's parsing on the packaging type
we have some poms that whilst currently empty, are of type jar - and will be added to later. (for example gaf, stewardship)
we need to clearly demonstrate the pattern of what should be in all poms for safety.
more generally the docs./errors are not that clear, but they have been specific about

Therefore for master I propose adding the  tag to EVERY pom.
At worst it's unnecessary/incomplete - can't be 100% sure until the next cycle
It also doesn't seem unreasonable to add info to every artifact that points back to our git repo.
The main risk is that we will still need packaging=pom in a few incomplete projects
I have also corrected javadoc for the open types test gen project
When we release 1.5 I will review the results
PR shortly with these proposed changes.

@planetf1 Glad to see we're down to one!

1.4 is currently syncing.

The 1.4 sync job failed after 5 1/2 hours - perhaps a timeout
https://dev.azure.com/ODPi/Egeria/_releaseProgress?_a=release-environment-logs&releaseId=111&environmentId=332
The sync was progressing at around 1.5 minutes per artifact - given we have 200 or so this would be very slow
I was able to restart the pipeline, and the sync appears to be continuing from where it left off

The 'sync missing packages to maven central' has done a further 8 artifacts in 1hr 53 min.
It seems to run the sync for every artifact in a release - is that needed on jcenter? or just for artifacts not existing at all (ie no previous releases)? @bramwelt

Release 1.4 has now completed pushing after being restarted.
I've manually cross-checked and all our artifacts appear to be on maven central.
@bramwelt the only remaining question is whether we can increase timeout or speed up (less likely) the sync.
moving milestone to 1.5 for now, pior to closure

I checked the release pipeline and there is already a 0 timeout specified.
I'm going to close this issue for now, and will revisit when we release 1.5 (towards the end of the month)


Fix build breakage

@nicolasnoble @dgquintas - whoever sees this first should do the review :)

Oops! LGTM.

Oops! LGTM.

Will wait on Travis, but not coveralls

Looks like the gcov run needs moar slowdown and the Python test still flaked. I will file some P1s and then restart those.


Replaced singleTask with singleInstance since the section is describing  about singleInstance.

Replaced singleTask with singleInstance since the section is describing  about singleInstance.

I have updated the ReadMe file to include links to my latest android interview series and removed the existing questions from the readme file. So this PR is no longer valid. Thanks for contributing!


Use dependency graph and toposort, not straitforward execution (or at least have an option)

It would be nice to have a function taskDependency like

task("clean", () => {
    await fs.remove()
})

task("build-js", () => {
    await taskDependency("clean")
    //...build...
})
task("build-css", () => {
    await taskDependency("clean")
    //...build...
})
task("build", parallel("build-js", "build-css"))

In a manner that "clean" will execute only once (for now I can only declare series that will cause the re-run of same task twice).
I understand that I can declare more complex logic with sequences, but I cannot make logic like this.
A --- B --- C
 \    \     \
  D --- E --- F

If needed - I think I can do it. I like the approach of just, but I'm unsure about whether I should participate or this is intended "no-behavior" that is complicating stuff

Since we took undertaker as our task orchestrator, we followed the trend coming from gulp 4. So this article is pretty relevant: https://fettblog.eu/gulp-4-parallel-and-series/
In a sufficiently large just.config.js, you'd probably find that having a mess of dependent tasks is quite hard to manage (we reached a certain point and started asking constantly why a certain task is triggered). So, yes you can design a dependency runner kind of API, but I wouldn't be adding it to the orchestrator at this point for the same reason as the gulp 4.


bump version of nbconvert

Bump version of nbconvert to fix the CVE issues introduced by<EMAIL_ADDRESS>
What changes were proposed in this pull request?

How was this pull request tested?

Developer's Certificate of Origin 1.1
   By making a contribution to this project, I certify that:

   (a) The contribution was created in whole or in part by me and I
       have the right to submit it under the Apache License 2.0; or

   (b) The contribution is based upon previous work that, to the best
       of my knowledge, is covered under an appropriate open source
       license and I have the right under that license to submit that
       work with modifications, whether created in whole or in part
       by me, under the same open source license (unless I am
       permitted to submit under a different license), as indicated
       in the file; or

   (c) The contribution was provided directly to me by some other
       person who certified (a), (b) or (c) and I have not modified
       it.

   (d) I understand and agree that this project and the contribution
       are public and that a record of the contribution (including all
       personal information I submit with it, including my sign-off) is
       maintained indefinitely and may be redistributed consistent with
       this project or the open source license(s) involved.

@rkpattnaik780 could you please sign your commit?

@rkpattnaik780 could you please sign your commit?

Done. The checks are also passing now!

@lresende this also fixes https://github.com/elyra-ai/elyra/issues/3228


updated where applicant id is being pulled from state

Description
Fixed app so that applicant profile renders again.
Fixes # (issue)
Applicant ID being pulled from profile details in state which didn't work.

Looks quick and easy


[Feature Request] Import JSON from URL

I'm looking for a way to import data from a JSON-file that's hosted on a URL, specifically the exported URLs created by PathBuilder2e, a character builder for Pathfinder Second Edition. Example: https://pathbuilder2e.com/json.php?id=178425
It'd be great if the process of importing this data could skip some steps, since you have to manually copy/paste the text on the webpage to a text file, then save it as JSON, and then you can use this tool to import it.

Implemented on 0.30.0


Tensorflow, Anaconda not working

OS: Ubuntu 18.04.3
Python: 3.7.3 (Anaconda)
Tensorflow: 1.14.0
I started with the script shown in #388.
$ python -m nuitka --follow-imports --standalone --plugin-enable=numpy --plugin-enable=tensorflow --plugin-enable=pylint-warnings tftest.py
Nuitka:INFO:'tensorflow' plugin: Patched 'running-from-pip' path magic.
Nuitka:WARNING:Use '--plugin-enable=qt-plugins' for: Inclusion of Qt plugins.
Problem with statement at /opt/anaconda3/lib/python3.7/site- packages/google/protobuf/__init__.py:1:
-> # Protocol Buffers - Google's data interchange format

Nuitka:INFO:Interrupted while working on '<Node 'COMPILED_PYTHON_PACKAGE' with {'filename': '/opt/anaconda3/lib/python3.7/site-packages/google/protobuf/__init__.py', 'package': 'google', 'name': 'protobuf'}>'.
Traceback (most recent call last):
  File "/opt/anaconda3/lib/python3.7/site-packages/nuitka/__main__.py", line 184, in <module>
main()
  File "/opt/anaconda3/lib/python3.7/site-packages/nuitka/__main__.py", line 177, in main
MainControl.main()
  File "/opt/anaconda3/lib/python3.7/site-packages/nuitka/MainControl.py", line 759, in main
main_module = createNodeTree(filename=filename)
  File "/opt/anaconda3/lib/python3.7/site-packages/nuitka/MainControl.py", line 141, in createNodeTree
Optimization.optimize(main_module.getOutputFilename())
  File "/opt/anaconda3/lib/python3.7/site-packages/nuitka/optimizations/Optimization.py", line 561, in optimize
finished = makeOptimizationPass(initial_pass=False)
  File "/opt/anaconda3/lib/python3.7/site-packages/nuitka/optimizations/Optimization.py", line 456, in makeOptimizationPass
changed = optimizeModule(current_module)
  File "/opt/anaconda3/lib/python3.7/site-packages/nuitka/optimizations/Optimization.py", line 167, in optimizeModule
changed = optimizeCompiledPythonModule(module)
  File "/opt/anaconda3/lib/python3.7/site-packages/nuitka/optimizations/Optimization.py", line 100, in optimizeCompiledPythonModule
module.computeModule()
  File "/opt/anaconda3/lib/python3.7/site-packages/nuitka/nodes/ModuleNodes.py", line 514, in computeModule
trace_collection=self.trace_collection
  File "/opt/anaconda3/lib/python3.7/site-packages/nuitka/nodes/StatementNodes.py", line 167, in computeStatementsSequence
new_statement = trace_collection.onStatement(statement=statement)
  File "/opt/anaconda3/lib/python3.7/site-packages/nuitka/optimizations/TraceCollections.py", line 549, in onStatement
new_statement, change_tags, change_desc = statement.computeStatement(self)
  File "/opt/anaconda3/lib/python3.7/site-packages/nuitka/nodes/AssignNodes.py", line 261, in computeStatement
trace_collection.onExpression(self.getAssignSource())
  File "/opt/anaconda3/lib/python3.7/site-packages/nuitka/optimizations/TraceCollections.py", line 525, in onExpression
parent = expression.parent
AttributeError: parent

I think it's odd that Nuitka throws a warning about enabling qt-plugins, when Qt isn't being used. The script in #388 simply imports Tensorflow and says "hello world".

It seems to be an error with Google's Protocol buffers, specifically how protobuf is imported in the package's __init__.py. At first, I thought Nuitka was having a problem with comments. I deleted the comments, and it still can't parse the file. But what remains is:
if __name__ != '__main__':
  try:
    __import__('pkg_resources').declare_namespace(__name__)
  except ImportError:
    __path__ = __import__('pkgutil').extend_path(__path__, __name__)

Just to address the comments question, they are dropped in the parser, Nuitka never sees them. Some plugins attempt to parse e.g. pylint ones, but this is not relevant normally.

As for the Qt, you wouldn't believe how odd imports are embedded in third party software like this one, and Nuitka cannot tell if it's your wish or not.

I could not immediate reproduce the issue with the snippet given. From the traceback I figure, that the assignment of the __import__ is the one triggering it, but right now I am clueless as to how it happens. I will try the bigger context of Anaconda now.

I could not immediate reproduce the issue with the snippet given. From the traceback I figure, that the assignment of the import is the one triggering it, but right now I am clueless as to how it happens. I will try the bigger context of Anaconda now.

I compiled a TF test script again, and saw the same issue (Problem with statement at ...).
It used to work in an earlier version  - don't currently know which one worked last. A wild guess: something to do with different bytecode handling?
It does not have anything to do with Anaconda environment - my test was a "normal" Python 3.7.4 WIndows 10 environment.

I think it's odd that Nuitka throws a warning about enabling qt-plugins, when Qt isn't being used.

With few exceptions, a source code parser like Nuitka cannot possibly know which import will eventually never be executed - hence the warning.
But it is irrelevant for this issue anyway.

Weirdly enough, when I tried to run this on python3, nuitka took a really long time to build, and I was unable to complete the build whatsoever. Does it take a very long time to generate the C code for this?

Weirdly enough, when I tried to run this on python3, nuitka took a really long time to build, and I was unable to complete the build whatsoever. Does it take a very long time to generate the C code for this?

The compile time is practically independent from the size of your script. It depends on the number and size of the packages pulled in. Some of them are simply monsters, especially Tensorflow.
Compile time also goes down after a while, namely when you let Nuitka collect information of the whereabouts of shared libraries (via the caching arguments).
You also can try to restrict the modules being considered by using hinted compilation.

@AetherPrior tensorflow is an incredibly large project, using everything potentially and Nuitka compiles for standalone mode, everything used, which makes it a very bad case.
This however is an optimization error. Nuitka during optimization replaces nodes with other nodes, while visiting it for abstract executing. During that, it tried to execute a node, probably a freshly replaced one, which has no parent, which is considered illegal of course.
Often issues will be about dependencies, other times, about concrete code.
What we would really need, to solve these kinds of issue efficiently, is a collection of the source code that was in use. I am right now installing latest greated Anaconda, and am hoping to reproduce the issue, @JorjMcKie did not, and I might neither, and these things are very annoying, esp. with the proliferation of differences between Python wheels on OSes.
And what can I say, installing Anaconda is not as easy, had to google that call condabin\conda.bat activate is what it takes to make it work. In the past, conda binary just worked, but they stopped that 2 releases ago it seems.
Yours,
Kay

The optimization bug will be very sensitive to minor source code changes, could be a slightly different version of google buffers. But it will be a general issue for sure. Obviously since it's old, I assmume at least, it will be rare to trigger.

Plus, installing tensorflow in Anaconda moves you away from stale things, changing Anaconda to custom. Probably my fault for not using their environments, but polluting base environment.
I envision a world, where on crash, we iterate the modules loaded, and put together a package with the source code that was loaded, for people to share it potentially. I am OK with this not being the default, most of the time it's not needed and/or overkill.

I managed to reproduce the crash, albeit in "Cython package. I think what they have in common, is the bytecode demotion part. Maybe it's being used despite being converted to bytecode, should be something like that.

I think I recall that google is demoted by the Tensorflow plugin if used, and Cython is always by default, so strong indications there. Likely a severe regression for one of the last releases or so. Some imports have direct links, most do not. Maybe something is flawed there. But this looks to me as if finalized nodes are used...

Just noticed, when I reduced the test case to import Cython that it imports the PyQt5, which is of course severe dependency creep from just that.

And yes, import Cython is crashing for me with Anaconda. So that means it has nothing to do with Tensorflow.

Seems it imports IPython which includes all the things Python knows, how painful, I just saw jedi a Python analysis engine,  jinja2 of course, PIL,  sphinx, all the things that use everything, there is a couple of parser generators surely included, in just that.... cryptography... ah the pain...
My goodness, I think we really need to go further than demoting to bytecode, but to fully stub these things to not follow their imports, at least in some cases.

So after first pass is complete (and this really by itself ought to be cached, if the whole reason it's being done is to find the dependencies of that bytecode module to be), it says this:

Nuitka:INFO:Demoting module 'Cython' to bytecode from 'C:\Users\kayha\Anaconda3_64\lib\site-packages\Cython_init_.py'.

Later. Note the module dependency considerations means it's optimizing bytecode only, which is just to follow its dependencies, which can be compiled or not.

Nuitka:INFO:PASS 2 ... :
Nuitka:INFO:Next global optimization pass.
Nuitka:INFO:Optimizing module 'main', 17 more modules to go after that.
Nuitka:INFO:Doing module local optimizations for 'main'.
Nuitka:INFO:Optimizing module 'Cython', 20 more modules to go after that.
Nuitka:INFO:Doing module dependency considerations for 'Cython':

But then, same pass

Nuitka:INFO:Optimizing module 'Cython.Compiler.Optimize', 81 more modules to go after that.
Nuitka:INFO:Doing module dependency considerations for 'Cython.Compiler.Optimize':
Nuitka:INFO:Optimizing module 'traceback', 82 more modules to go after that.
Nuitka:INFO:Doing module dependency considerations for 'traceback':
Nuitka:INFO:Optimizing module 'codecs', 81 more modules to go after that.
Nuitka:INFO:Doing module dependency considerations for 'codecs':
Nuitka:INFO:Optimizing module 'Cython.Compiler.FusedNode', 80 more modules to go after that.
Nuitka:INFO:Optimizing module 'Cython', 81 more modules to go after that.
Nuitka:INFO:Doing module local optimizations for 'Cython'.
Problem with statement at C:\Users\kayha\Anaconda3_64\lib\site-packages\Cython_init_.py:1:

Lots of modules were not optimized. Notice how Cython.Compiler.FusedNode does not indicate that it's a bytecode module. Something is foul there. Probably the module also ought to realize that it was disabled, and should never enter any level of computation anymore without error, or even be added to the computation for that.
BTW: A proper cache would have to look at all the files in sys.path for imports of the module as a key, but it seems to be absolutely worthwhile, so it's only needed once ever to compile Cython with a given Nuitka version.

And I think, I have a strong hint, as to why it's happening, by looking at this:

find . -iname Fused*
./Lib/site-packages/Cython/Compiler/FusedNode.cp37-win_amd64.pyd
./Lib/site-packages/Cython/Compiler/FusedNode.py

The extension module is the one which will be imported (although there is a strong case for not using it of course, rather the bytecode of the python module, but that would be incompatible), and it seems  Nuitka is locking parent packages by module reference rather than by name.

So, the caching of the parent package as an object is of course unnecessary, it's sufficient to let the module registry do that, it's tasked for that.
I have an experimental change on factory branch that ought to be good, but I am on the road right now and cannot test it, but I am pretty confident about it.

I had the chance to try factory, and while it's incredibly slow, it works for me now. The crash is solved, the performance issue, makes me want to look into what people import from Cython and make sure, it doesn't escalate by monkey patching its source before compilation, so we do not have the tremendous dependency creep this easily.

Part of the latest pre-release rc6.

Released as part of 0.6.6

The release 0.6.8 was just made and contains the correction.


Zf2 prg is not working

My form contains 2 textarea
When I press backspace, form still contains the same values
$form = new Form();

$prg = $this->prg();

if ($prg instanceof \Zend\Http\PhpEnvironment\Response) {
	// returned a response to redirect us
	return $prg;
} elseif ($prg === false) {
	// this wasn’t a POST request, but there were no params in the flash messenger
	// probably this is the first time the form was loaded
	return new ViewModel(array(
		'form' => $form,
	));
}

// $prg is an array containing the POST params from the previous request
$form->setData($prg);

if ($form->isValid()) {
	return $this->redirect()->toUrl('/post/' . $model->getId());
}

Thanks. Close this issue


fix: add moment as dep to tinacms

Adding tinacms to a fresh site yields an annoying moment is not defined issue.
The version number is super wide to reduce the chance of multiple versions of moment.

Becausereact-datetime, the component that we use for the date field, depends on moment.
I've also just never heard of luxon