Unsubscribe from hooks

Feature request
Hi, can you update the docs to show users how to unsubscribe from the hooks?
Why it is needed
Leaving hooks open when a component has been unmounted leads to memory leaks and bad performance.
Possible implementation
export class MyComponent extends Component {
    componentWillMount(){
        this.powerStateHook = deviceInfoEmitter.addListener('RNDeviceInfo_powerStateDidChange', { batteryState, batteryLevel, lowPowerMode } => {
            this.setState({lowPowerMode: lowPowerMode && batteryState !== 'charging'});
        });
    }
    componentWillUnmount(){
        if (this.powerStateHook) this.powerStateHook();
    }
    ...
}

Code sample

PRs happily accepted

@nschild,
For the relevant hooks that use event listeners, the subscription is closed automatically within the cleanup function here
The clean up function can be returned by the useEffect callback param. This is pretty much the same as componentWillUnmount.
You can read more about it here — There is a pretty nice Rosetta Stone-esque example w/ both class components and functional components using hooks.

TL;DR no need to manually unsubscribe.
@mikehardy, can this be closed?.


Text strings must be rendered within a  component.

Hey @SiDevesh, first of all, thanks for the awesome work you've done!
I've just tried the library but I'm getting this exception:
Invariant Violation: Text strings must be rendered within a <Text> component.

This error is located at:
    in RCTView (at createAnimatedComponent.js:151)
    in AnimatedComponent (at react-native-snackbar-component/index.js:46)
    in RCTView (at createAnimatedComponent.js:151)
    in AnimatedComponent (at react-native-snackbar-component/index.js:33)
    in SnackbarComponent (at MainTabNavigation.js:25)
    in RCTView (at MainTabNavigation.js:24)
    in tabBarComponent (at createBottomTabNavigator.js:78)
    in RCTView (at createBottomTabNavigator.js:110)
    in TabNavigationView (at createTabNavigator.js:197)
    in NavigationView (at createNavigator.js:61)
    in Navigator (at createAppContainer.js:429)
    in NavigationContainer (at SceneView.js:9)
    in SceneView (at StackViewLayout.tsx:899)
    in RCTView (at createAnimatedComponent.js:151)
    in AnimatedComponent (at StackViewCard.tsx:93)
    in RCTView (at createAnimatedComponent.js:151)
    in AnimatedComponent (at screens.native.js:59)
    in Screen (at StackViewCard.tsx:80)
    in Card (at createPointerEventsContainer.tsx:95)
    in Container (at StackViewLayout.tsx:971)
    in RCTView (at screens.native.js:83)
    in ScreenContainer (at StackViewLayout.tsx:383)
    in RCTView (at createAnimatedComponent.js:151)
    in AnimatedComponent (at StackViewLayout.tsx:379)
    in PanGestureHandler (at StackViewLayout.tsx:372)
    in StackViewLayout (at withOrientation.js:30)
    in withOrientation (at StackView.tsx:103)
    in RCTView (at Transitioner.tsx:267)
    in Transitioner (at StackView.tsx:40)
    in StackView (at createNavigator.js:61)
    in Navigator (at createKeyboardAwareNavigator.js:12)
    in KeyboardAwareNavigator (at createAppContainer.js:429)
    in NavigationContainer (at RootContainer.js:18)
    in RCTView (at RootContainer.js:16)
    in RootContainer (created by ConnectFunction)
    in ConnectFunction (at App.js:27)
    in PersistGate (at App.js:26)
    in Provider (at App.js:25)
    in App
    in RCTView
    in Unknown (at renderApplication.js:40)
    in RCTView (at AppContainer.js:101)
    in RCTView (at react-native-root-siblings/index.js:33)
    in RootSiblingsWrapper (at AppContainer.js:115)
    in RCTView (at AppContainer.js:119)
    in AppContainer (at renderApplication.js:39)

unstable_runWithPriority
    scheduler.development.js:643:23
Component.prototype.setState
    react.development.js:325:31
NavigationContainer#dispatch
    createAppContainer.js:393:22
actionHelpers.actionName
    getChildNavigation.js:1:1529
checkIfShouldShowOnboarding
    LaunchOnboardingScreen.js:15:37
tryCatch
    runtime.js:45:44
invoke
    runtime.js:271:30
tryCatch
    runtime.js:45:44
invoke
    runtime.js:135:28
Promise.resolve.then$argument_0
    runtime.js:145:19
tryCallOne
    core.js:37:14
setImmediate$argument_0
    core.js:123:25
_callTimer
    JSTimers.js:146:14
_callImmediatesPass
    JSTimers.js:194:17
callImmediates
    JSTimers.js:458:30

My code is pretty simple:
return (
    <Fragment>
      <View style={styles.applicationView}>
        <StatusBar barStyle='light-content' />
        <AppNavigation ref={ref => {
          NavigationService.setTopLevelNavigator(ref)
        }}
        onNavigationStateChange={ScreenTrackingService.track}
        />
      </View>
      <SnackBar />
    </Fragment>

Infos:
RN 0.61.1
"react-native-snackbar-component": "^1.1.2",
With Hermes
The problem is happening on both platforms.
I'l try to debug this deeper, but so far I've got nothing.
Thanks for the help!

i have this issue too!

i fixed this error by setting actionText as well as textMessage!


sfdx force:org:create Error Hang

Summary
There's some additional information on this salesforce community post as well,
https://success.salesforce.com/0D53A00004QzY4k
We're hitting an inconsistent error with the sfdx force:org:create command.
ERROR running force:org:create:  We encountered a problem while attempting to configure and approve the Connected App for your org. Verify the Connected App configuration with your Salesforce admin

The error we're getting back seems like an inconsistent API error, but when the sfdx cli receives this error the cli is just hanging without returning an exit code. This is the error I'd like to discuss.
We first noticed the API error with version 7.11.2 of the sfdx cli, but even reverting to 7.8.1 or upgrading to 7.14.0 we see the same behavior.
Steps To Reproduce:
It's difficult to reproduce the inconsistent error API error, it seems specific to a user, but if you're able to reproduce an error you'll experience this:

Step 1. sfdx force:org:create -f config/file.json -s
Step 2. command returns error and session hangs. Only way to break the session connection is by escaping it.

Expected result
If a sfdx cli command receives an error from an API call such as the one above the sfdx cli should return an exit code that breaks the session.
Actual result
When a sfdx cli command receives the error above the command never exits and needs to be escaped manually.
Additional information
SFDX CLI Version(to find the version of the CLI engine run sfdx --version):
sfdx-cli/7.11.2 darwin-x64 node-v8.16.0
SFDX plugin Version(to find the version of the CLI plugin run sfdx plugins --core)
@oclif/plugin-commands 1.2.2 (core)
@oclif/plugin-help 2.2.0 (core)
@oclif/plugin-not-found 1.2.2 (core)
@oclif/plugin-plugins 1.7.8 (core)
@oclif/plugin-update 1.3.9 (core)
@oclif/plugin-warn-if-update-available 1.7.0 (core)
@oclif/plugin-which 1.0.3 (core)
@salesforce/sfdx-trust 3.0.5 (core)
analytics 1.1.2 (core)
generator 1.1.0 (core)
salesforcedx 46.1.5 (core)
├─ force-language-services 46.3.0 (core)
└─ salesforce-alm 46.3.0 (core)
sfdx-cli 7.11.2 (core)
OS and version:
Experienced on macOS Mojave and Debian docker image

I'm closing this because it's super old.
Pretty much all the code (the command, and the library underneath for org creation ) has been worked.
Very specifically, the org creation process no longer relies on the streaming API ( which was a known source of some hangs).
There's also a org resume scratch to recover from a process that you ctrl-c once the request has made it to the hub, so it's more "recoverable".
If you've got a way to repro it on the new org:create:scratch command, please open a new issue


Create different vmclone Object with the same target.name

What happened:
We can create different vmclone Object with the same target.name and there is on blocking behavior or error messages.

What you expected to happen:
A clear and concise description of what you expected to happen.
How to reproduce it (as minimally and precisely as possible):

To create a source vm which we want to be cloned.
To edit the first vmclone file.

apiVersion: clone.kubevirt.io/v1alpha1
kind: VirtualMachineClone
metadata:
  annotations:
  name: vm-clone-1
spec:
  source:
    apiGroup: kubevirt.io
    kind: VirtualMachine
    name: vm-targer
  target:
    apiGroup: kubevirt.io
    kind: VirtualMachine
    name: vm-clone-target

To edit the second vmclone file

apiVersion: clone.kubevirt.io/v1alpha1
kind: VirtualMachineClone
metadata:
  annotations:
  name: vm-clone-2
spec:
  source:
    apiGroup: kubevirt.io
    kind: VirtualMachine
    name: vm-targer
  target:
    apiGroup: kubevirt.io
    kind: VirtualMachine
    name: vm-clone-target

you can find that the vm-clone-1 has been created successfully and the vm-clone-2 status is in RestoreInProgress. That isn't expected. If the system has the same name we can't allow admin to create new vmclone object.

Additional context:
Add any other context about the problem here.
Environment:

KubeVirt version (use virtctl version): 1.1.0
Kubernetes version (use kubectl version): 1.25
VM or VMI specifications: N/A
Cloud provider or hardware configuration: N/A
OS (e.g. from /etc/os-release): N/A
Kernel (e.g. uname -a): N/A
Install tools: N/A
Others: N/A

Hello @matthewei, PR #10918 adds an event emission in case the clone controller cannot create the restore object (for example in case the target VM already exists).
PR #10955 is a backport to v1.1.

/close


RSUSB vs v4l2 and kernel patches.

Required Info

Camera Model
D400

Firmware Version
N/A

Operating System & Version
Linux

Kernel Version (Linux Only)
(6.0)

Platform
Raspberry Pi

SDK Version
2.54.1

What is the situation with the realsense camera's being supported by the linux kernel version 6.0 and up ? I have noticed that unless i am building with RSUSB enabled I wont get the required metadata to enable the HDR functionality on the 400 series camera's to work properly (i.e. when using the v4l2 backend). I dont really like using the RSUSB UVC backend  as I have experienced issues with it.
So I am assuming that in order to provide kernel support the patches located in the scripts folder still need to be applied however some of them seem out of date. Is it possible to update the scripts for the patches so that they are more current ? e.g. the last debian script was for debian 10 . We are now on 12.
Cheers

Hi @GrubbyHalo  There have been a couple of past cases where RealSense users have successfully edited a kernel patch script to add support for a kernel not yet officially supported.  An example of this is a PR at https://github.com/IntelRealSense/librealsense/pull/9727 which added kernel 5.11 support when the most recent official version supported at that time was 5.8.
Another example of an edit was one at https://github.com/IntelRealSense/librealsense/commit/13094ea0b8cfb6955ce6e69d18138afc125f56aa which added support for JetPack 4.6 in the Nvidia Jetson patch script.

@MartyG-RealSense . Thanks. Following issues referenced in the links above, answered my questions.

You are very welcome.  I'm pleased that I could help.  :)


fix ops.Tensor initializer in keras.initializers.get

This PR allows keras.initializers.get method deal with ops.Tensor initializer correctly, and fixes the following issue.
In partitioned variable cases, like distributed training, constant_initializer do not parse partitioned_info in call stage, where an ops.Tensor initializer will lead expected results (see line 746 in tensorflow/tensorflow/python/ops/variable_scope.py for more details). But the following code leads a ValueError.
>>> import tensorflow as tf
>>> x = tf.constant([[1], [2]])
>>> layer = tf.keras.layers.Dense(3, kernel_initializer=tf.constant([[1]]))
>>> y = layer(x)
ValueError: Could not interpret initializer identifier: tf.Tensor([[1]], shape=(1, 1), dtype=int32)

I don't think we should allow tensor to be initializer, which is too board to be initializer, only some specific tensor can be initializer (eg constants).
I think the PR is just walking around the issue. In tf2, I don't think partitioned variable is a supported use case any more, nor does variable_scope.

Allowing tensor to be initializer will support many applications. For example, a widely used method to transfer small model into a big model is Net2Net, where we need the interface to specify the initial weight of the big model. This demand always occurs in recommender systems or computation advertisement to add some new features into the model. Another application is the deep model quantization, where we need to initialize a new model by setting some of weights to zero in the old one. I think support this will be more friendly to users for industrial usage and model quantization.

Allowing tensor to be initializer will support many applications. For example, a widely used method to transfer small model into a big model is Net2Net, where we need the interface to specify the initial weight of the big model.

If you need to set the weights for the model, you should use model.set_weights() with the numpy data. Also the value to set here is not a tensor (graph tensor will not work, and eager tensor can always be converted to numpy data).

This demand always occurs in recommender systems or computation advertisement to add some new features into the model. Another application is the deep model quantization, where we need to initialize a new model by setting some of weights to zero in the old one. I think support this will be more friendly to users for industrial usage and model quantization.

Same here, I think this should be achieved by model.set_weights(). I still don't see any use case here that strictly need this change.
Also if the tensor is allowed here, I don't think we can properly serialize it.

Thanks for your kind reply. I close this PR right now.


fix: remove direct pointer dereference to avoid concurrent usage

Type of change:
Context: https://github.com/apache/apisix-ingress-controller/pull/2168#issuecomment-1996612561

[x] Bugfix
[ ] New feature provided
[ ] Improve performance
[ ] Backport patches
[ ] Documentation
[ ] Refactor
[ ] Chore
[ ] CI/CD or Tests

What this PR does / why we need it:

Pre-submission checklist:

[ ] Did you explain what problem does this PR solve? Or what new features have been added?
[ ] Have you added corresponding test cases?
[ ] Have you modified the corresponding document?
[ ] Is this PR backward compatible? If it is not backward compatible, please discuss on the mailing list first

When generating code, it will overwrite the original content, which is not a good solution.

When generating code, it will overwrite the original content, which is not a good solution.

Yeah. How do you think we can get around this?
*out = *in

causes these structs internal pointers pointing to same addresses before the code afterwards can run and perform deepcopy. This is causing the concurrent access.


'installed' variable is defined in rke2_common/previous_install.yml but only used in rke2_common/tarball_install.yml

Adjust logic so variables remain local.
-remove from rke2_common/vars/main.yml
-remove from rke2_common/tasks/pre_install.yml
-insert in rke2_common/tasks/tarball_install.yml

addressed via #246


No SD card slot in a car

Hi,
I do not have SD card slot, only 2x USB-C. Tried to do with USB, no option. Any suggestions?
P.S. tried to put files to USB but it does not work.

What radio is it? If it's Harmann MIB2 High, it has 2 sd slots.

I have passat variant Y2020, its discover pro and it does not have sd card slots. I have also passat alltrack Y2017 - it has 2 sd card slots.


request to refactor bordered version of color schemes directly in VSC, please see description

Type: Feature Request
A lot of themes have bordered and non bordered version, I'd like to request for VSC to refactor this as a standard feature related to color theme, so its more streamlined for extension authors and users/developers to choose between bordered and unborderd version of a theme, sometimes we switch between monitors, old/new, with more/less contrast but still wanna work with favourite theme, then having a bordered and nonbordered version of same theme is a nice to have, a way to even generate in VSC bordered version will be particularly nice
VS Code version: Code 1.80.0 (660393deaaa6d1996740ff4880f1bad43768c814, 2023-07-04T15:06:02.407Z)
OS version: Windows_NT x64 10.0.22621
Modes:

Automatically generating a theme is difficult as all colors must work together. Just using a border color as background color might result in indistinguishable colors and bad contrasts.
No plans to implement such a feature. Themes are best hand crafted and tested.


Question about Undo Functionality

Hi there,
I am trying to integrate Mongock as a migration tool and I am asking myself a few questions:

will the undo feature be available soon or will it take some time until it is implemented and released?
how intelligent will the Mongock Undo be? Will it be suitable to automatically solve alternate feature deployment of non backward compatible migrations, e.g. renaming a field of a collection?

The problems I am trying to solve are:

after feature deployment on a dev environment with a ChangeLog0003, the develop branch is deployed where ChangeLog0003 is not yet existent, but the latest script is ChangeLog0002. It would be great to automatically detect that ChangeLog0003 is missing and undo all changes.
after feature deployment on a dev environment with a ChangeLog0003, another branch is deployed where another developer has created another ChangeLog0003. It would be great to detect that the migration script has changed (checksum?), undo the old one and migrate the new one.

Do you have any advice for me? Is such an intelligent undo functionality planned and possible in Mongock? Can I make things faster with contributing? Or should I better look out for other solutions such as mongodump (will not be great either as added data will be lost after every recovery)? Do you have any other ideas?
Bests and thanks in advance,
Rebecca

Hello @rebeccan ,
I don't fully understand the first problem you try to solve. You are saying that you are gong to deploy on a dev env where ChangeLog003 hasn't been deployed yet. But then, after detecting ChangeLog003 is missing, you'd like to undo all changes. What changes if ChangeLog003 hasn't been executed?
For the problem 2, assuming undo is available, why don't provide and ChangeLog003_undo to fix what that "another developer" did and provide and ChangeLog004. It hasn't been implemented yet, but the idea is not removing the ChangeLog003 from the mongock's history(changeLog collection), but provide a mechanism to help to undo the effects or, if possible, not ever run it. It would be as marking a changeLog as failed, so if it has been run in an environment, it is fixed by undo, otherwise it's not run. That's the clearest way I can explain myself :D
Regarding your two first questions:

Both, it will take some time,  but it will soon. I am thinking about end of next week for a beta version and 2 weeks for a RC.
Well, by my previous explanation you can get an idea of  how intelligent/dummy it will be.

Hi dieppa,
thank you for your super fast response and it is great to hear that development of undo is planned so soon :-)
I think that you misunderstood the problems I try to find a solution for, so I try to explain it with more details and maybe you can tell me if the solutions in my head sound realistic.
Problem 1: We are developing features independently of each other and test their separate branches before they are merged to develop branch. In my example ChangeLog003 belongs to one feature branch (A) and is an non-backward compatible migration (e.g. rename of a field of a collection). A is deployed and tested on a dev environment. After that, another feature (B) is deployed and tested that is based on develop (no migrations added), but has no clue of the other feature with ChangeLog003. The Code from B with a Java object with the old fieldname is unfortunately not compatible anymore with the database schema, because A executed ChangeLog003 (renamed the field) and did not undo its migration in the database once undeployed.
Possible solution to problem 1 which is currently in my head: If there was some kind of mechanism to detect that ChangeLog003 is missing now in currently deployed B (we could know that because ChangeLog003.java is missing in the code, but was executed according to the mongockChangeLog collection) and if we knew what the reverse migration operations of ChangeLog003 are, then we could undo it.
Problem 2: Also here we have independent feature branches A and B. The developer of B cannot provide a ChangeLog003_undo and ChangeLog004, because as long as A is not merged to develop branch yet, he has no clue that another developer wrote a ChangeLog003 migration as well. Both ChangeLog003 may do totally unrelated things in the database.
I want to be able to test and deploy A and B on a dev environment in alternate turns without breaking compatibility of the application with the database.
Possible solution to problem 2 which is currently in my head: Same as above, but also detect that the latest script(s) has changed. Undo and migrate again in that case.
Keeping the mongock history collection untouched and applying migration after migration is only practical for our environments on which develop / master branch is deployed, because features are added sequentially and you have migrations that are applied one after each other. But even on such stable environment it would be awesome if a release rollback could be detected automatically by mongock so that undo does not have to be done manually.
What do you think of my suggestions?
Bests,
Rebecca

Hello,
If I am not wrong both are kind of the same problem really but looked from different perspectives.
Mongock cannot provide the solution you suggest as it doesn't feel right in a general case to assume a changeLog needs to be undone just because it's present in the changeLog collection but no in the code. Do you know what I mean? Anyway that approach would still have the issue of providing the actual "undo operation", Mongock cannot offer that as it's very difficult to handle that situation and with the current framework just not possible.
What I think it's the best approach, although it's the long path, is to have a clean dev environment where deploying feature branches. That means the database is totally clean when you do a new deployment and you populate it as part of the new deployment(obviously that process would only take place in no production environments).
Also there is something I don't understand, even for branch A, you (should) want to apply changeLog003 every time is deployed, unless you have a clean environment every time, it will be executed only the first time.
Anyway there are plenty of solutions, from better to worse, and from more durable to temporal fix/hacks. Temporal deployment script, feature toggling... But that totally depends on your situation and resources, which I am not familiar with.
Sorry for not being more helpful. Anyway, if you come up with a general solution that would be nice for Mongock to provide, please don't hesitate to let me know.

Hi @dieppa,
thank you for the clarification!
I don't think that it feels wrong if a migration tool (when the developer configures it that way) undoes things which are present in the changeLog collection, but not in the code. I was working with Java Flyway a few years ago, which ran checksums over the migration scripts in the code and compared it with the checksums logged of applied migrations in the database. It threw an error, if it detected mismatches. Honestly, an error also would not help in my case (and I can remember that there always was trouble with testing features, as well), but the approach "compare DB with code" generally exists in some migration tools. But of course it is up to Mongock developers how they want their migration tool to work :-)
I would also love to always start with a clean seeded database, but in our environments some people have much data which they need for testing and I prefer not to seed everything or let people recreate all their data all the time.
So the idea I came up with: undo all migrations on application shutdown and migrate all on every application start. I will wait for the undo functionality and hope that I can somehow trigger it from some application shutdown routine. Will migrations know that they were undone? Will they run again in that case?
What do you think?
Bests,
Rebecca

First at all, about "it is up to Mongock developers how they want their migration tool to work", while we of course make the final call, it's for Mongock's users, so we really want to provide what you need. So we can really appreciate this kind of "issues" as make Mongock better. Thanks ;)
About that checksum, I know if it's something that has been used in other tools and it probably makes sense to them, but I personally don't like it. In my personal experience gives more headache than benefits. However, if we really need to consider it, we are totally open to. Anyway in this specific case I don't think it would solve your issue anyway.
Regarding what you suggested about undoing a change if it's in the changeLog collection but not in the code, while I don't like, I guess that could be an advance feature that you can switch on with properties. Until that point we are ok, right? But still you would need an undo process as Mongock cannot deduct what needs to be done. What are your thoughts about this?... I can think some dirty ways, but they are complex and hacky


Add Document Stores as Hub indexers

Add the different Document Stores to jina hub (maybe except AnnLite)

So, only one executor needs to be implemented?

no, each store corresponds to one Executor.


Return nicer error for ForcePrivate

Instead of returning an ISE just return the form with a flash error instead.
Fix #17967
Signed-off-by: Andrew Thornton<EMAIL_ADDRESS>

Codecov Report

Merging #17971 (f0b1537) into main (e0118b0) will increase coverage by 0.02%.
The diff coverage is 61.29%.

@@            Coverage Diff             @@
##             main   #17971      +/-   ##
==========================================
+ Coverage   45.31%   45.33%   +0.02%
==========================================
  Files         819      819
  Lines       90833    90861      +28
==========================================
+ Hits        41162    41195      +33
+ Misses      43118    43109       -9
- Partials     6553     6557       +4

Impacted Files
Coverage Δ

routers/web/repo/setting.go
14.56% <0.00%> (ø)

modules/context/repo.go
52.88% <50.00%> (+0.12%)
:arrow_up:

models/repo.go
49.85% <70.00%> (+0.60%)
:arrow_up:

modules/process/manager.go
81.39% <0.00%> (-1.56%)
:arrow_down:

routers/api/v1/repo/pull.go
28.83% <0.00%> (-0.52%)
:arrow_down:

models/issue_comment.go
53.04% <0.00%> (+0.56%)
:arrow_up:

modules/log/event.go
62.50% <0.00%> (+1.85%)
:arrow_up:

modules/git/repo_base_nogogit.go
86.84% <0.00%> (+2.63%)
:arrow_up:

modules/git/utils.go
70.83% <0.00%> (+2.77%)
:arrow_up:

modules/queue/workerpool.go
52.29% <0.00%> (+3.05%)
:arrow_up:

Continue to review full report at Codecov.

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


Change in Link Hover Color

Hey @CoderSaty Your Website looks good but that blue color doesn't feel professional. So I updated to black. Plz, merge that if you find it helpful.

@Akash2790 thanks for the pr but your pr does not make any significant changes to the repo. Try to add some project or some additional feature.
Thanks


bug: Multiple division assignment failing

Bug Report
Cairo version:
v2.4.4
Current behavior:
When repeating the assignment let value = 1 / 1; 255 times or more in the code, the following error is encountered:
    Error: #3585->#3586: Got 'Offset overflow' error while moving [3].
Expected behavior:
There should be no error or limit imposed on the number of times a division assignment can be executed in the code.
Steps to reproduce:

Clone the repository:git clone https://github.com/neotheprogramist/cairo-playground

Run the command:scarb cairo-run

At this stage, the program should work correctly and return 1.
Open src/gen.cairo and uncomment line 265.
Run the command again:scarb cairo-run

This time, the program fails and returns the error:Error: #3585->#3586: Got 'Offset overflow' error while moving [3].

Related code:
https://github.com/neotheprogramist/cairo-playground
Other information:
The issue does not occur when performing the operation in a loop, regardless the n
let randoms1 = array![rand(), rand(), ..., rand()];
let randoms2 = array![rand(), rand(), ..., rand()];
let mut value = 0;
let mut i = 0;
loop {
    if i == n {
        break;
    }
    value = randoms1[i] / randoms2[i];
    i += 1;
};

This has nothing to do with the number of divisions happening in the code - this is all about the number of variables you define in the same scope - this division imposes a large AP-change, so you are bound by the number of such changes you perform.
Do you have an actual real world example where you ran into it?

@orizi
Yes here
I've needed to introduce a loop to do workaround.

In any case - even in generated code - i'd recommend against creating huge blocks of code especially if it creates thousands and thousands of variables that are all usable in the same scope.

@orizi
Sure, we've already parsed that and created a loop - let's treat this issue only as a notification that such restriction exists though.

Hi Orizi,
I'm trying to write some tests for Fq6 (cubic over quadratic) such that I have Fq6 comprised of 3 Fq2 and finally the quadratic Fq2 of 2 Fq (represented by u256).
I have these tests,
#[test]
#[available_gas(5000000)]
fn mul() {
    // Having both of these causes this error:
    // #24531->#24532: Got 'Offset overflow' error while moving [62].
    let a = fq6(34, 645, 20, 55, 140, 105);
    let b = fq6(25, 45, 11, 43, 86, 101);
    let c = fq6(9, 600, 31, 12, 54, 4);

    // Having two of these cause the overflow error
    let ab = a * b;
    let bc = b * c;

    // This line line after the two above causes
    // Failed to cast from 63344.
    assert(ab * c == a * bc, 'incorrect mul');
}

I move ab and bc computation to separate scope without sharing any vars between them and it works with assert commented out. But of assert I need to share the previous result and I'm not able to avoid the error.

i'm assuming fq6 is huge - can you try adding core::internal::revoke_ap_tracking() as the first statement in it?

Results in same error...

Aah that did it!!!! ❤ ❤ ❤ ❤ ❤ ❤ ❤
Thanks so much!!

glad to help - i guess we need to track this and auto add this sort of thing.
as you seem to run into it more often lately.


Asynchronous kernels

Much of the work on synchronization (#13) between command groups (latest commit 654ed4297b9d9535f4cff0f3290a9c75627a23c4) didn't produce the expected results, as due to a lack of understanding, kernels weren't launched asynchronously, so synchronization did not help.
I wanted to do this with OoO queue execution, but I don't think I can really on that, as the OpenCL  implementation is apparently optional. A better course of action seems to be to use a different queue for each command group. In most cases one command group contains one kernel, so this ensures asynchronous execution. What we then also need is synchronization between command groups, which is already in pretty good condition.

This is proving hard to test. So far I've only been successful by running test4, but first disabling debugging (92bd424262e059172dfb17bddb003d66c4f718e5), setting N to 32M, running on the GPU and running for instances of the program at the same time. I guess this is because even 128MB (32M *4B) is still quite fast to copy.

As hinted to in previous comment, the latest commit on asynchronous kernels (19fd89226c0081587720848d3af944084b79b916) seems to do the trick, kernels get executed concurrently, even though the current tests aren't able to really demonstrate it. Need new tests, but as far as the issue is concerned, the goal was reached.


Make the underlying systems closer to what BouncyCastle does.

Fixes SHA-512 issue. All test pass. References #92

Thanks for finding this!
However, you added that + function to make things simpler to look at, but I think there is a reason why Ivan has been using Register64.sum instead of adding them together (probably efficiency).
I think I will adapt your changes to using sum again.


Vega FE not recognized by OpenCL calls

Hi, just got an Vega FE and trying to run some compute task on it. Installed 1.6 (ROCM OpenCL opencl-dev)and everything seems fine (Vega card is properly initialized on boot, and KFD shows device added properly), but OpenCL apps don't see the card.
Also tried installing the 17.20 driver packages, and same thing there as well (Those drivers DO see the Polaris based cards though). Interestingly if I remove the polaris card and try to run clinfo on just the vega card it crashes. (I don't see clinfo installed with rocm).

You can not mix the 17.20 component with the ROCm driver.  Very bad things will happen.
Let's focus on the ROCm stack, this is what I work on primarily.
One thing was this system where you had AMDGPUpro drive on it,  did you purge the driver before installing ROCm driver.     What OS are you running as well?
So does the system have two Cards in the ROCm 1.6,  Polaris and Vega10, in the system, what is the CPU in the system?
I ended up writing new install instruction for ROCm
https://rocm.github.io/ROCmInstall.html  they post install step tests
Can you do this Post install verification
Verify you have the correct Kernel Post install
$ uname -r
4.9.0-kfd-compute-rocm-rel-1.6-77
Test the driver is installed correctly
cd /opt/rocm/hsa/sample
make
./vector_copy
Test if OpenCL is working based on default ROCm OpenCL include and library locations:
g++ -I /opt/rocm/opencl/include/ ./HelloWorld.cpp -o HelloWorld -L/opt/rocm/opencl/lib/x86_64 -lOpenCL
Run it:
./HelloWorld
One last thing can you try HIP Sample
We also developed a new install FAQ
https://rocm.github.io/install_issues.html
On Polaris and Vega10  this morning Me and my team was running ROCm with MIOpen 1.0 which OpenCL based.

I was not mixing components, I just tried both 17.20 amdgpu pro drivers, then purged those drivers and installed the ROCM kernel. I was definitely in the right kernel (this is in Ubuntu 16.04.2 btw). CPU is Core i3 on Z97 Motherboard.
Interestingly the HSA folder is not present after the install.
I guess I might need to just do a clean install and see how it goes. Would I need to do and bash exports for the OpenCL App to find the ROCM components properly? Seems like the paths are different than AMDGPU-pro...so any openCL app built for AMDGPU-Pro might not see the ROCm OpenCL components?

They are different paths path for OpenCL.   you need to at the shell  "export OPENCL_ROOT=/opt/rocm/opencl"

Ok will double check tomorrow if that was the issue.

That was not it...tried downloading the openCl helloworld example, and libraries cannot be found even after that export:
/usr/bin/ld: cannot find -lOpenCL
collect2: error: ld returned 1 exit status
Is that export all that is needed? I know in that past ive had to do LD_LIBRARY_PATH exports etc.

Still no way to get the ROCm stack to work with OpenCL...i see on the OPENGPU blog there is mentioning about this variable:
echo 'export LLVM_BIN=/opt/amdgpu-pro/bin' | sudo tee /etc/profile.d/amdgpu-pro.sh
Is there something equivalent for ROCm stack? It would be great if there is so much minute details to get this stack going that you guys make a script that checks against all dependencies, bash variables, libraries etc.

On Jul 2, 2017, at 6:52 PM, jstefanop <notifications<EMAIL_ADDRESS>wrote:
Still no way to get the ROCm stack to work with OpenCL...i see on the OPENGPU blog there is mentioning about this variable:
echo 'export LLVM_BIN=/opt/amdgpu-pro/bin' | sudo tee /etc/profile.d/amdgpu-pro.sh
Is there something equivalent for ROCm stack? It would be great if there is so much minute details to get this stack going that you guys make a script that checks against all dependencies, bash variables, libraries etc.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/RadeonOpenCompute/ROCm/issues/143#issuecomment-312524492, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AD8DuaigYGd3-60rOOaaV4lfzWYAh3i8ks5sKC0ugaJpZM4OLcF9.
There is some thing wrong with your system
This all you have to do.   We were running ROCm with OpenCL with MIOpen
Here’s a simple workflow to get you quickly up and running with OpenCL on ROCm –
Install the ROCm OpenCL implementation (assuming you already have the ‘rocm’ package installed):
sudo apt-get install rocm-opencl-dev
Set an environment variable that points to the installation directory for OpenCL:
export OPENCL_ROOT=/opt/rocm/opencl
For a sample OpenCL application, let’s use a simple vector-add example from the University of Bristol’s very nice “Hands On OpenCL” lectures.
git clone https://github.com/HandsOnOpenCL/Exercises-Solutions.git
cd Exercises-Solutions/Exercises/Exercise02/C
make
CCFLAGS="-I$OPENCL_ROOT/include/opencl1.2 -O3 -DDEVICE=CL_DEVICE_TYPE_DEFAULT"
LIBS="-L$OPENCL_ROOT/lib/x86_64 -lOpenCL -lm"
./vadd

What slot is your GPU in on that mother board  make sure it is x16 slot that is real x16 slot
Also I like you to install fresh copy of Ubuntu  and follow these step to install the os
ROCm GPU Server Driver Installation Guide for Linux
Introduction
The ROCm Platform brings a rich foundation to advanced computing by seamlessly integrating the CPU and GPU with the goal of solving real-world problems.
This support starts with AMD’s FIJI Family of dGPUs. ROCm 1.3 further extends support to include the Polaris Family of ASICs. With ROCm 1.6 we add Vega Family of products.
System Requirements
To use ROCm on your system you need the following:

ROCm Capable CPU and GPU
*   PCIe Gen 3 Enabled CPU with PCIe Platform Atomics
*   ROCm enabled GPU’s

Radeon Instinct Family MI25, MI8, MI6
Radeon Vega Frontier Edition

Supported Version of Linux with a specified GCC Compiler and ToolChain

Table 1. Native Linux Distribution Support in ROCm 1.6
Distribution    Kernel  GCC     GLIBC
x86_64
Fedora 24       4.9     5.40    2.23
Ubuntu 16.04    4.9     5.40    2.23
Pre Install Directions
Verify You Have ROCm Capable GPU Installed int the System
lspci | grep -i AMD
You will see list of AMD GPU’s
Verify You Have a Supported Version of Linux
uname - m && cat /etc/*release
You will see some thing like for Ubuntu
x86_64
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.2 LTS"
Verify version of GCC
gcc --version
You will see
gcc (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609
Choose an Installation Method
Package manager Based Install A Package Manager Based Installation use your Linux Distro system’s package management service.
Ubuntu uses Debian and Fedora RPM Packages

Ubuntu
Fedora

Ubuntu Install
Add the Repo Server
For Debian based systems, like Ubuntu, configure the Debian ROCm repository as follows:
wget -qO - http://repo.radeon.com/rocm/apt/debian/rocm.gpg.key | sudo apt-key add -
sudo sh -c 'echo deb [arch=amd64] http://repo.radeon.com/rocm/apt/debian/ xenial main > /etc/apt/sources.list.d/rocm.list'
The gpg key might change, so it may need to be updated when installing a new release. The current rocm.gpg.key is not avialable in a standard key ring distribution, but has the following sha1sum hash:
f0d739836a9094004b0a39058d046349aacc1178 rocm.gpg.key
Install or update ROCm
sudo apt-get update
sudo apt-get install rocm rocm-opencl-dev
Then, make the ROCm kernel your default kernel. If using grub2 as your bootloader, you can edit the GRUB_DEFAULT variable in the following file:
sudo nano /etc/default/grub
set the GRUB_Default Edit: GRUB_DEFAULT=”Advanced options for Ubuntu>Ubuntu, with Linux 4.9.0-kfd-compute-rocm-rel-1.6-77”
sudo update-grub

Fedora Install
Use the dnf (yum) repository for installation of rpm packages. To configure a system to use the ROCm rpm directory create the file /etc/yum.repos.d/rocm.repo with the following contents:
[remote]
name=ROCm Repo
baseurl=http://repo.radeon.com/rocm/yum/rpm/
enabled=1
gpgcheck=0
Execute the following commands:
sudo dnf clean all
sudo dnf install rocm rocm-opencl-dev
Just like Ubuntu installs, the ROCm kernel must be the default kernel used at boot time.
Post Install Manual installation steps for Fedora to support HCC compiler
A fully functional Fedora installation requires a few manual steps to properly setup, including:

Building compatible libc++ and libc++abi libraries for Fedorahttps://github.com/RadeonOpenCompute/hcc/wiki#fedora

Post install verification
Verify you have the correct Kernel Post install
$ uname -r
4.9.0-kfd-compute-rocm-rel-1.6-77
Test the driver is installed correctly
cd /opt/rocm/hsa/sample
make
./vector_copy
Test if OpenCL is working based on default ROCm OpenCL include and library locations:
g++ -I /opt/rocm/opencl/include/ ./HelloWorld.cpp -o HelloWorld -L/opt/rocm/opencl/lib/x86_64 -lOpenCL
Run it:
./HelloWorld
To Uninstall the a Package

Ubuntu

sudo apt-get purge libhsakmt
sudo apt-get purge radeon-firmware
sudo apt-get purge $(dpkg -l | grep 'kfd|rocm' | grep linux | grep -v libc | awk '{print $2}')

Fedora

sudo dnf remove ROCm
List of ROCm Packages for Ubuntu and Fedorahttps://rocm.github.io/ROCmLinuxpackages.html
Installing development packages for cross compilation
It is often useful to develop and test on different systems. In this scenario, you may prefer to avoid installing the ROCm Kernel to your development system.
In this case, install the development subset of packages:
sudo apt-get update
sudo apt-get install rocm-dev
Greg
On Jul 2, 2017, at 6:52 PM, jstefanop <notifications<EMAIL_ADDRESS>wrote:
Still no way to get the ROCm stack to work with OpenCL...i see on the OPENGPU blog there is mentioning about this variable:
echo 'export LLVM_BIN=/opt/amdgpu-pro/bin' | sudo tee /etc/profile.d/amdgpu-pro.sh
Is there something equivalent for ROCm stack? It would be great if there is so much minute details to get this stack going that you guys make a script that checks against all dependencies, bash variables, libraries etc.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/RadeonOpenCompute/ROCm/issues/143#issuecomment-312524492, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AD8DuaigYGd3-60rOOaaV4lfzWYAh3i8ks5sKC0ugaJpZM4OLcF9.

@gstoner Doing a complete fresh Ubuntu server install and well see how it goes. I just want to confirm that the ONLY environment variables needed by ROCm is the OPENCL_ROOT?
Also why the 16x PCIe lanes? We are building custom switchboard that will house 16+ gpus, and the switch can only feed 1x-4x lanes to each GPU (compute algorthms we are running dont require high intera GPU GPU or CPU GPU bandwidth).

You can use smaller number of lanes but they need to be on the PCIe Gen 3 lanes with PCIe atomics support which usually is off the CPU PCIe Root I/O  Here is more info https://rocm.github.io/ROCmPCIeFeatures.html
You can have PLX off the roots.  How many cascading PLX are you looking at. 1 level deep or more.
Greg
On Jul 3, 2017, at 11:07 AM, jstefanop <notifications<EMAIL_ADDRESS>wrote:
@gstonerhttps://github.com/gstoner Doing a complete fresh Ubuntu server install and well see how it goes. I just want to confirm that the ONLY environment variables needed by ROCm is the OPENCL_ROOT?
Also why the 16x PCIe lanes? We are building custom switchboard that will house 16+ gpus, and the switch can only feed 1x-4x lanes to each GPU (compute algorthms we are running dont require high intera GPU GPU or CPU GPU bandwidth).
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/RadeonOpenCompute/ROCm/issues/143#issuecomment-312684453, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AD8DuX2XlhxMGoQu6Wji-6Hrf3P8W-VZks5sKRHJgaJpZM4OLcF9.

Hmm we actually designed gen 2 switches to keep costs down since we don't need the extra bandwidth. Switch is one level deep. So will the rocm driver not work at all behind the switch for normal Opencl calls?

@gstoner Ok finally after a clean install we finally got the vega card to work. Please see other two issues opened. Vega performance under ROCm is horribly slow, Polaris cards work at full speed (and vega works full speed under windows).

For anyone having similar problems, I would recommend running the simple KFD Check Installation shell script using the same environment would be running the OpenCL script on. It discovers GPUs in the same way that the ROCm OpenCL libs do as far as I can tell.

@jstefanop  @JustinTArthur   Can you guys run Babelstream on OpenCL and HIP  https://github.com/UoB-HPC/BabelStream. also run Mixbench https://github.com/ekondis/mixbench  there is HIP and OpenCL version of the benchmarks as well.

Will do, do you have pre compiled windows binaries we can test on windows side for comparison? Don't currently have a windows build environment setup.

Sorry I do not have precompiled binary I alway just build them.
On Jul 6, 2017, at 3:53 PM, jstefanop <notifications<EMAIL_ADDRESS>wrote:
Will do, do you have pre compiled windows binaries we can test on windows side for comparison? Don't currently have a windows build environment setup.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/RadeonOpenCompute/ROCm/issues/143#issuecomment-313516128, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AD8Duabb26GLimAaVML3j3jzD5SyID9_ks5sLUk0gaJpZM4OLcF9.

We are building custom switchboard that will house 16+ gpus, and the switch can only feed 1x-4x lanes to each GPU (compute algorthms we are running dont require high intera GPU GPU or CPU GPU bandwidth).

Cryptominers detected.  Hopefully this boom ups the ROCm game significantly.

One thing for crypto miner developers,   if you want more control of the kernels, we give you access to GCN ISA in the compiler   Please read this https://rocm.github.io/GCN_asm_tutorial.html.   It is how we drove our Winograd solver to 90+ percent efficiency for 3x3 convolutions in MIOpen.  This put you in the power schedule the GPU and use all our instructions for your problem.
Guys, as I said in a different thread, the ROCm compiler is little over a year old. It's fully open source based LLVM code generator and is not using the same closed source two stage compiler foundation used in our MS Windows Version of OpenCL,  note the Windows Compiler is a two stage Jit with an intermediate language then is finalized through our graphics shader compiler, tightly coupled to the driver.  ROCm Compiler can be updated independently of the base driver.
The ROCm Compiler source is right here, it is a single compiler that generates Native GCN ISA, you can spill the code with the disassembler and see the ISA.

OpenCL Driver https://github.com/RadeonOpenCompute/ROCm-OpenCL-Driver
LLVM core https://github.com/RadeonOpenCompute/llvm
Intrinsics/Device libs https://github.com/RadeonOpenCompute/ROCm-Device-Libs

Up to know we have not run currency mining code on ROCm, we were heads down on MIOpen and Deep learning frameworks and building ROCm.  THere is some optimization we are already looking at.

Thanks, @gstoner. All great things. I'm excited about what ROCm means for the future of performance computing.

@gstoner please don't interpret my comment as impatient criticism, I'm looking at the focus (or illumination) that the cryptoboom will give on performance as improving on the existing performance.  I wasn't throwing criticism around between the lines.  Thanks for the tip on the asm - please point me to the winograd solver kernel you mention as I'm sure I'll learn some lessons from it.  I hope to never have to use it and instead get good enough at coercing the compiler to get it to do what I want, but it's one more weapon in the arsenal.  On a related note, are intrinsic functions in the queue?

Guys, I not taking it as criticism, I just want to set the stage for where we at on ROCm,  we are all pushing very hard to make the best possible platform for GPU computing.
I will tell you we are going to release 1.6.1,  we found one of the issues for Ryzen it is in this release.
We also have some cool thing cooking to make developing on ROCm easier.

@gstoner I understand, but in the short term we are trying to figure out which stack to go for (especially since we will most likely go the Radeon Instinct route with Vega). Right now we see the drivers are more or less fully optimized for Vega on windows side, but we obviously cant run our systems on Windows.
Polaris is more or less fully optimized on linux via the AMDGPU-Pro closed source OpenCL stack, which has comparable performance to the windows drivers. It seems like for Vega you guys went straight with the ROCm openCL components, so will there be a Vega optimized AMDGPU-Pro closed source OpenCL release, or is the OpenCL stack from here on out going to be ROCm based, and well just have to wait until this stack gets optimized for Vega and bugs fixed?

Here is magic decoder ring
Polaris, Tonga, Fiji,

AMDGPUPro driver Windows and Linux use historical ORCA/KMD base stack for OpenGL and OpenCL
Use the OpenCL LLVM to HSAIL based historical compiler on Shader Compiler

Vega10 - Forward

MS Windows  PAL/KMD based Stack with Vulkan/OpenCL and DX Use the OpenCL LLVM to HSAIL based historical compiler on ShaderCompiler - Does not support Float16 Packed other features.
AMDGPUpro  ROCm based stack new LC compiler   OpenCL runs on ROCr/KFD + LC compiler

ROCm

Headless Optimized Driver Supports FIJI, Polaris, Vega10 and newer GPU’s   OpenCL runs on ROCr/KFD + LC compiler

On Jul 6, 2017, at 5:31 PM, jstefanop <notifications<EMAIL_ADDRESS>wrote:
@gstonerhttps://github.com/gstoner I understand, but in the short term we are trying to figure out which stack to go for (especially since we will most likely go the Radeon Instinct route with Vega). Right now we see the drivers are more or less fully optimized for Vega on windows side, but we obviously cant run our systems on Windows.
Polaris is more or less fully optimized on linux via the AMDGPU-Pro closed source OpenCL stack, which has comparable performance to the windows drivers. It seems like for Vega you guys went straight with the ROCm openCL components, so will there be a Vega optimized AMDGPU-Pro closed source OpenCL release, or is the OpenCL stack from here on out going to be ROCm based, and well just have to wait until this stack gets optimized for Vega and bugs fixed?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/RadeonOpenCompute/ROCm/issues/143#issuecomment-313537130, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AD8DuXAn786dH5Ruq-TkGLmIam9xcm4_ks5sLWBegaJpZM4OLcF9.

Ok great thanks for clearing that up...so driver efforts on compute side going forward (for both ROCm and AMDGPU-Pro) will be focused on ROCr/KFD + LC compiler

Posting benchmark results here until I have performed the tests on both stacks with both Polaris and Vega
Polaris + AMDGPU-Pro 17.10 = https://pastebin.com/E90aSqx6

Thank you for the numbers.

I updated the comment with all tests on both vega and polaris. As you can see Polaris + AMDGPU-Pro is at near saturation on the memory controller, with closer but a bit slower on the ROCm stack.
Vega on the other hand is underperforming and not coming close to saturating HBM2 (polaris card actually beat it on mem bandwidth on some tests). The raw compute performance is about where it should be though, but there is obviously something going on with the memory.
Vega also failed the alternating mix bench test with following error:
Memory access fault by GPU node-1 on address 0x500000000. Reason: Page not present or supervisor privilege.
Aborted (core dumped)

Can I get the mem clock and system/cu clock of Vega10.
On Jul 6, 2017, at 10:09 PM, jstefanop <notifications<EMAIL_ADDRESS>wrote:
I updated the comment with all tests on both vega and polaris. As you can see Polaris + AMDGPU-Pro is at near saturation on the memory controller, with closer but a bit slower on the ROCm stack.
Vega on the other hand is underperforming and not coming close to saturating HBM2 (polaris card actually beat it on mem bandwidth on some tests). The raw compute performance is about where it should be though, but there is obviously something going on with the memory.
Vega also failed the alternating mix bench test with following error:
Memory access fault by GPU node-1 on address 0x500000000. Reason: Page not present or supervisor privilege.
Aborted (core dumped)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/RadeonOpenCompute/ROCm/issues/143#issuecomment-313575740, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AD8DuZcpcoV0tfhWg-1sI8Pr2L_Ib7keks5sLaGDgaJpZM4OLcF9.

Stock clocks for both i.e. 1600/945 on vega, and whatever the stock clock on a Ryzen 5 1400 is.

Thank, so your running auto clock not forced clocks
On Jul 6, 2017, at 10:14 PM, jstefanop <notifications<EMAIL_ADDRESS>wrote:
Stock clocks for both i.e. 1600/945 on vega, and whatever the stock clock on a Ryzen 5 1400 is.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/RadeonOpenCompute/ROCm/issues/143#issuecomment-313576281, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AD8DubWoXqEqRvJCfRskUtULgAjOHWQkks5sLaKbgaJpZM4OLcF9.

Hi Greg (or anyone else who cares to comment).  I was wondering if you could point me in a direction, or maybe recommend the most recent download link for ROCm on Linux?  I realize that some of the information I'm about to give you is not directly related to AMD development, but at the risk of offering up too little info as opposed to too much, I'll err on the side of verbosity.
My original intention was to experiment with XMR mining on my OS of choice, Debian.  My hardware is as follows:
Gigabyte GA-B250 FinTech mainboard
Pentium G4400T
8 GB of RAM
Approx. 80 GB HDD
Gigabyte Radeon Vega 64 GPUs
This board can reportedly accommodate 12 GPUs, but I'm only interested in 6 to start, with the possibility of adding more.
When I do a fresh install of Debian 9, I have a single external GPU connected to a PCIe 1x slot via riser and Debian sees it as a Vega video adapter.  I am using the onboard VGA connector for my actual monitor, because presumably I don't need to see the video output on my Vegas if I am just mining with them.
I've tried just about every OpenCL flavor in existence, but the farthest I've gotten is to see the OpenCL "platform" but without any devices attached.  Most of the solutions designed for Ubuntu compile and install on Debian.  But in the end when I run XMR-Stak or an equivalent, my Vega isn't detected.  CPU mining works.
I appreciate your info and have been reading numerous threads.  I definitely do not expect any lengthy response, but would be grateful for any suggestions for a Linux driver or GPU monitoring software you can offer, ideally for Debian but I am at a point where I may need to try a different OS.  I definitely do not want to capitulate and use Windows, even though at this stage of driver development I realize there is a significant difference in potential profit from mining.
I can also offer to do some testing with the above hardware if there is anything specific I can help out with.
Thanks.

Thanks a lot, Greg.  I also noticed you're a music gearhead.  Designed and built my own electric guitar, and thankfully we moved into a larger space with a basement room to hold all my gear.
I'll post any GPU successes.

@triosphere Yes love Guitars and tube amps.  Love to have a basement again,  I am in Texas, we hit limestone two feet underground.


Applying sorting method from context menu activates selection area

https://github.com/user-attachments/assets/006e3792-c452-4c34-bf13-bef3f47d6525

Are you able to recreate this consistently? Could you give me more information about your browser/computer?
I was not able to make this occur but doing what you did in the video.

Sure
Hardware: MacBook Pro M1 chip
Software: macOS Sequoia 15.0, Google Chrome Version 131.0.6778.70 (Official Build) (arm64)
Steps to reproduce:

Open https://dustinbrett.com/ in incognito tab to get rid of extensions effects
Refresh the page
Right click on empty area to trigger context menu
Select "Sort by" option
Select any available sorting method in submenu
After context menu close and sorting applied, moving mouse causes selection area while not pressing any mouse button

Issue exists while using both touchpad and mouse

Thanks for that info. It was indeed an issue with Safari passing the mouseup event to the menu instead of the file manager. I have changed it so mouseup is monitored on the entire window.
https://github.com/DustinBrett/daedalOS/commit/6995907262a05b82916d5b29700da809f0c4b578

I changed to making the container for the menu non-interactive, so when it opens it doesnt get the mouseup event. Using mouseup on window seemed to cause lag.


Dynamic Generation

Allowing to inject methods to generate the ids using custom logic (see test/counters.js)
Adding test to validate that the default use has not being changed.
And finally fixing a few bugs regarding the use of ShortId for attributes that are not required.

This PR has far too much in. Please remove the node_modules dir and I'll take a look.
Could you also describe what's changed as well as the rationale behind it.
Thanks


Sanitisation of URL

Hi Leonard,
I was curious to know if OneURL sanitizes the URL before shortening it. As in, removing trackers and malicious codes. Cos nothing better if that's the case. I was looking for options on the internet and OneURL seems like the perfect blend of all things awesome. Please let me know.

Hi,
currently OneURL doesn't change the URL or remove trackers or malicious code. I think it would be a good idea to add that as an optional checkbox or setting. I'm pretty busy right now, but I'm open to contributions.

I wouldn't have minded helping you if I knew how to code. I can help you with the (Hindi) translation though, if that's something you're looking for, do let me know.


Combine/Merge with xUnit.Xamarin?

Any chance we can combine efforts here and make the PCLTesting GUI based on the xUnit stuff? xUnit does support all platforms now and it may be better to use its attributes/mechanisms than introducing another test platform.
I already have a very primitive Xamarin Forms-based runner here: https://github.com/xunit/xamarin.xunit, and it'd be great to make it better. The xUnit.Xamarin stuff already supports WP8 SL, Xam.iOS and Xam.Android.

I'm in favor, yes. xunit wasn't up to par when this work was done but now
that it is I'd love to unify. Are you interested in doing this work?
Suggestion: Feel free to steal liberally from this project to build yours
up. Then send us a pull request that removes our copy and adds a dependency
on your xunit runner, perhaps?
PCLTesting makes mstest attributes work in PCL (sorta) so folks who have
a dependency on that shouldn't be broken. But once you've built up your
test runner (which I haven't looked at yet btw) I expect and would suggest
folks use xunit with your runner rather than use PCLTesting at all.
Am I on the right track here?
On Mon Jan 05 2015 at 6:13:21 AM Oren Novotny<EMAIL_ADDRESS>wrote:

Any chance we can combine efforts here and make the PCLTesting GUI based
on the xUnit stuff? xUnit does support all platforms now and it may be
better to use its attributes/mechanisms than introducing another test
platform.
I already have a very primitive Xamarin Forms-based runner here:
https://github.com/xunit/xamarin.xunit, and it'd be great to make it
better. The xUnit.Xamarin stuff already supports WP8 SL, Xam.iOS and
Xam.Android.
—
Reply to this email directly or view it on GitHub
https://github.com/dsplaisted/pcltesting/issues/4.

I think you're on the right track. I need to go look at your runner GUI code again and see what I can adapt. Honestly the runner UI in the xamarin.xunit stuff is very basic because up until Xam Forms 1.3, the XAML was very limiting. Fortunately Xam Forms 1.3 added a ton of things (combined with R# 9) that make writing XAML as easy as you can with Microsoft XAML -- so I think we can quickly make a more workable UI.
For your suggestion of a PR that puts a dependency on xamarin.xunit instead, I assume you mean that for the end-projects like PCLStorage/PCLCrypto, right? the xamarin.xunit project doesn't know anything about the mstest attributes without extra work. I suppose we can write a custom test discoverer that do it but that may not be worth it.

So check this out: xunit/xunit.xamarin@2849170. I've pulled the filtered collection view and filtered results.
I think it does everything you do have currently. I just need @bradwilson to push a new public xunit with the Unified support then I can support that too.
Do you want me to submit a PR that switches either aarnot/PCLCrypto or dsplaisted/pclstorage over to use xUnit? What's the best place to start to validate/smoke test this against your existing code/tests?


Fix test

Before this PR, freeze was using the existing heads (on branches b5 and b6), when the heads argument was missing. We now pass them explicit.

Thanks!


Difficulty Levels

Implement speed of snake based on the difficulty.
This is self  explanatory.

I can do this. Assign to me please.

Done at: #16


MBeans for JMX Monitoring

@xorpherion Update documentation. Just the option.
Screenshot jsoncole
java vmoptions show the modification for startup script. Or add a comment also into the startup script.

Done


ConfigMaps for Spark Configuration Files

This specification outlines methods for exposing Spark configuration
files through ConfigMaps.

I'll have to take another look at the "oc" support for creating configmaps -- there are commands to process files and directories, there may be a simple method we can document for users on how to populate a dir with the correct files and then just create them through oc.

will we need to support a situation where the user may want to replace just one of the configuration files but not others?
i'm thinking, and maybe i missed this in the spec, we should support some sort of "defaults" that would contain the upstream default config files. in this respect a user could change a single file and still have the original defaults.
i'm not sure if this is an issue, but it occurred to me while we were discussing on slack.

as Pete pointed out in slack, we already use some opinionated defaults in the openshift-spark image, these would be our defaults not he upstream configs.


Feature/enabled

By adding an enabled flag that defaults to true, we ensure that some data is stored and can be used to filter on. By disabling it one would be allowed to entirely skip SEO logic in their project.

@EECOLOR met mijn account mag ik dit PR niet mergen. Mocht je daar dus tijd voor hebben, be my guest!

Resolved with Kaliber/bol-com-adverteren#261


#93 fixed sharing onOptionClick handler in multiple autocomplete instances

This is a bugfix for #93
Proposed changes
As a part of this PR I make autocomplete options independent between instances
Also there is a fix in dropdown.js : _moveDropdown, which avoids adding a component to the same parent twice (it caused tests to fail, since on the second append a child was removed from a parent)
Types of changes

[x] Bug fix (non-breaking change which fixes an issue).
[ ] New feature (non-breaking change which adds functionality).
[ ] Breaking change (fix or feature that would cause existing functionality to change).

Checklist:

[x] I have read the CONTRIBUTING document.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

Thanks for the bug fix and the new unit tests. We appreciate it 👍


curlを利用した独自ヘッダー設定方法およびFormとJSONのPOST方法を追加

よくある外部API呼び出しに最低限必要そうなところを書いてみました。

Codecov Report

Merging #151 (de0657c) into master (be214ff) will increase coverage by 0.03%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #151      +/-   ##
==========================================
+ Coverage   97.07%   97.11%   +0.03%
==========================================
  Files          38       38
  Lines        1952     1978      +26
==========================================
+ Hits         1895     1921      +26
  Misses         57       57

Impacted Files
Coverage Δ

source/network_example.d
100.00% <100.00%> (ø)

:mega: Codecov can now indicate which changes are the most critical in Pull Requests. Learn more


PanelModel sizing enhancements

There is a desire to add the following enhancements to Panel sizing

Support minSize
support specifying sizes as percentages.

These are obviously very different animals (and the latter probably much more difficult) but if we are enhancing the functionality, might be worth looking at both.

Just want to emphasize that it would be great to just get minSize in for Hoist v29.  We have a client that is very interested in this, and it seems like a very doable pickup.

Closing this -- got the change we need for the client request


Resend admin/member login email

Currently there is no way to resend an email to invited admin or icc members. This has caused some problems with ICC members being unable to log in.
As an admin* I should be able to resend an invite to join the CC-Portal to people who have previously been invited, so that they can log in effectively.

with the correct set of permissions

The Product Requirement document:
https://docs.google.com/document/d/1vbqUl1idWjUGG9By1V4Yws_y5Zwl-D5L4hJj9XvqaTY/edit?usp=sharing

Deployed to both SanchoNet and MainNet.


done with reponsiveness of login screen

In this PR i have done with responsiveness of login screen

Can you make the title "notefy" larger and the tag line "crafted by servatom" smaller? And also please confirm that the changes are not disturbing any CSS for the larger screens? And I hope the white borders in these images are not the part of the web page.


3906 media questions

Very nice work! Just a few comments and you can merge away!

Lovely. All done. Thanks.


⚠ ClamAV has degraded performance

In 2fe234a, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 71 ms

Resolved: ClamAV performance has improved in 8226709.


Confusing error message about subscription_id

Describe what happened
6.x versions of the provider now require setting an explicit subscriptionId configuration. However, if I don't set it, I get the following error
error: 1 error occurred:
    	* `subscription_id` is a required provider property when performing a plan/apply operation

Notice that this is likely a Terraform error:

subscription_id is not the correct name of the parameter
plan/apply operation are not the terms Pulumi uses

Please change the error message to be Pulumi-specific. It seems important given the potential number of users that hit this during upgrades.
Sample program
Any Azure Classic program with 6.0 or later
Log output
No response
Affected Resource(s)
No response
Output of pulumi about
pulumi-azure 6.2.0
Additional context
No response
Contributing
Vote on this issue by adding a 👍 reaction.
To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).

Yup, makes sense 👍

@kraakevik I believe this is by design: https://www.pulumi.com/registry/packages/azure/v6-migration/#subscription-id-is-now-mandatory


Cannot build on rust nightly

Hello! I tried forking the project to fix an error I'm seeing in one of params' dependencies, but building the fork without any changes is causing a different set of errors:
$ cargo build
   Compiling params v0.0.3 (file:///home/ysimonson/params)
src/lib.rs:170:9: 170:29 error: mismatched types:
 expected `&mime::Mime`,
    found `&mime::Mime`
(expected struct `mime::Mime`,
    found a different struct `mime::Mime`) [E0308]
src/lib.rs:170         &self.0.content_type
                       ^~~~~~~~~~~~~~~~~~~~
src/lib.rs:170:9: 170:29 help: run `rustc --explain E0308` to see a detailed explanation
src/lib.rs:170:9: 170:29 note: Perhaps two different versions of crate `mime` are being used?
src/lib.rs:170         &self.0.content_type
                       ^~~~~~~~~~~~~~~~~~~~
src/lib.rs:515:59: 515:71 error: mismatched types:
 expected `&hyper::header::Headers`,
    found `&hyper::header::Headers`
(expected struct `hyper::header::Headers`,
    found a different struct `hyper::header::Headers`) [E0308]
src/lib.rs:515     let boundary = match formdata::get_multipart_boundary(&req.headers) {
                                                                         ^~~~~~~~~~~~
src/lib.rs:515:59: 515:71 help: run `rustc --explain E0308` to see a detailed explanation
src/lib.rs:515:59: 515:71 note: Perhaps two different versions of crate `hyper` are being used?
src/lib.rs:515     let boundary = match formdata::get_multipart_boundary(&req.headers) {
                                                                         ^~~~~~~~~~~~

For reference:
$ rustc --version
rustc 1.9.0-nightly (02310fd31 2016-03-19)

Tried digging in further, but I'm not enough of a Rustacean to figure out what's going on.

I'm having the same, and I'm not even on nightly:
$ rustc --version
rustc 1.6.0

Working on this issue. It seems like the upstream hyper 0.8 release and subsequent iron 0.3 release caused some problems.

I am having the same issue on rustc 1.7.

Fixed these dependencies and released 0.1.0 with c204b06ba876a79bcce7645bf6cdfaaa56ced401. Thanks for your patience, everyone!
(In retrospect, I should have made a PR, but I was in a hurry!)

Thank you!


Ethernet networks/FCoE networks/Network sets/Connection template/Uplink Sets support for Api800/1000/1200

Description
Support for Api800/1000/1200 for below resources:

Ethernet networks
FCoE networks
Network sets
Connection template
Uplink Sets

Check List

[ ] New functionality includes testing.

[X] All tests pass ($ rake test).
[ ] New resources and/or actions have are included in the matchers.rb and matchers_spec.

[ ] New functionality has been documented in the README if applicable.

[] New functionality has been thoroughly documented in examples (please include helpful comments).

[X] Changes documented in the CHANGELOG.

connection template is not updated for 1200 in the endpoint file. The rest is fine.

Updated. Thanks for noticing it.


Fix girder_worker install on travis.

Handle recent changes to girder_worker by installing requirements in two steps.

Codecov Report

Merging #358 into master will decrease coverage by 0.14%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #358      +/-   ##
==========================================
- Coverage   51.87%   51.73%   -0.15%
==========================================
  Files          99       99
  Lines        2741     2741
  Branches       90       90
==========================================
- Hits         1422     1418       -4
- Misses       1319     1323       +4

Impacted Files
Coverage Δ

web_client/views/body/ImageView.js
65.57% <0%> (-3.28%)
:arrow_down:

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 317ac77...50df9ba. Read the comment docs.


Removal of nowrap from .btn causing text in .btn within td to wrap unnecessarily

Browser:
#27010 is causing button text inside td element within a .table to wrap.   The issue arises because content in other columns of the table is too long causing the td element containing the button to have a reduced width resulting in the button text wrapping.
Below is an example two-row table in Bootstrap 4.1.3

and in Bootstrap 4.3.1

The JSFiddles for the above screenshots are
for 4.3.1 exhibiting the issue: https://jsfiddle.net/omairkhawaja/g2b357yo/
and for 4.1.3 without the issue: https://jsfiddle.net/omairkhawaja/ds4qcb6v/

You can use the .text-nowrap class to fix this.

Are you suggesting that basically every potential button on a full size app now needs checking to see if it will wrap and add the extra class to a fundamental and foundational piece of bootstrap?

We could maybe provide a null variable to globally enable this.

Potentially yea, or fix the issue that initiated this problem in a different way to begin with and not put all btn's at risk, but I feel something so foundational should not be changed as part of minor upgrade is understandable if changed in v5.

I'm working on updating a fairly large codebase from Bootstrap 4.alpha.6 to 4.3.1, and there are hundreds and hundreds of buttons that need to be checked to see if they need this extra class. This really is quite the breaking change for it to not even get mentioned in the ship list highlights.


add hpu2.edu.vn

I need to add HPU2  university domain to this repo

@uc-dang-tiki Pull request merged. Thank you!


Scanning

User Stories

US 05.01.01 - As an owner, I want to delete an attached photograph for an item of mine.
US 05.02.01 - As an owner, I want help to specify the description for an item by automatically identifying the product barcode from an image taken by the camera and using associated product information.

Expected Outcomes

TBD

Questions and Thoughts

How do we actually scan the barcode?
How will we identify the produce from the barcode after scanning?
How do we access this information?
Will we store the photo? or just analyze the image then discard it?

Using Android ML API most likely


Wrong display SQL with django-debug-toolbar 1.4

Hi, i upgrade django-debug-toolbar to 1.4, and i get bug with display SQL

I see the same issue, also with django-debug-toolbar 1.4.
@andrey-oparin - did you find any way to fix this?

same for ddt-1.4 and django 1.9.6

similar in ddt-1.6 and django 1.10.2

I also have this issue with 1.6 and 1.10. Are the developers still around for this project? I've been looking through these GitHub issues and I don't think I've seen a single comment from them?

Fix here, works with Django 1.10.1 and django-debug-toolbar 1.6 https://github.com/faulkner/django-debug-panel/commit/a8bc8a28d1b9def22632cbdb40a488ce27654f0b

Works perfectly, thank you!

The fix that @chuckus provides doesn't seem to work with AJAX requests (all AJAX requests will show a "No SQL queries" error when viewed through the Chrome extension).

As @jgbishop pointed out, the faulkner patch only fixes the direct requests and the AJAX requests in the panel no longer work.  Here's a patch that worked for me:
replace: if hasattr(panel, 'generate_stats'):
with: if hasattr(panel, 'generate_stats') and not panel.get_stats():
Essentially, only generate the stats if they haven't been generated already.  This seems to prevent the double escaping and probably is more efficient, too.
Since this project seems to be dead, you can use this patch by inheriting and overriding the one method that has the issue and then using it in MIDDLEWARE_CLASSES instead.  Here's a patched middleware to use:
"""
This is to patch django-debug-panel to work with latest versions of
django-debug-toolbar.  The issue is SQL is double-escaped so this
version only calls `generate_stats` on panels if they haven't
already been called.
"""
import threading
import time

import debug_panel
from django.core.urlresolvers import reverse
from debug_panel.cache import cache
from debug_panel.middleware import DebugPanelMiddleware

class DebugPanelMiddlewareFixed(DebugPanelMiddleware):
    def process_response(self, request, response):
        """
        Store the DebugToolbarMiddleware rendered toolbar into a cache store.

        The data stored in the cache are then reachable from an URL that is appened
        to the HTTP response header under the 'X-debug-data-url' key.
        """
        toolbar = self.__class__.debug_toolbars.get(threading.current_thread().ident, None)

        response = super(DebugPanelMiddleware, self).process_response(request, response)

        if toolbar:
            # for django-debug-toolbar >= 1.4
            for panel in reversed(toolbar.enabled_panels):
                if hasattr(panel, 'generate_stats') and not panel.get_stats():  # PATCH HERE
                    panel.generate_stats(request, response)

            cache_key = "%f" % time.time()
            cache.set(cache_key, toolbar.render_toolbar())

            response['X-debug-data-url'] = request.build_absolute_uri(
                reverse('debug_data', urlconf=debug_panel.urls, kwargs={'cache_key': cache_key}))

        return response


XSLT hash() and dashboard hash() functions are stripping leading zeros

The hashes produced by these two functions are incorrectly stripping leading zeros from the hash value.
Seen in v7.0.19 and v7.1-beta.22

Fixed in v7.0.20


Polylang URL modifications method The language is set from content is not supported yet

The readme includes comment:

Polylang URL modifications method The language is set from content is not supported yet

Is this still the case?

@Jon007 yes this still the case, it does not seem that anybody is using this feature in polylang , so let us leave it like this for now. as this does not has high priority

Ok, I do have a use case for this so I will reopen and assign to myself for further testing... when I have time...
The use case is:

I want to use a forum eg bbPress so customers can chat.
My customers speak different languages (duh!) but I want them to share the same forum.

This all works great if Polylang is turned OFF:

I can allow front-end user switching in a wide variety of languages so all the system messages and user help can be translated
I certainly don't want to create language versions and translations of posts at the backend as Polylang requires.  In fact I wrote my own plugin which adds translate buttons to forum messages so users can translate into current display language.

However... to easily integrate with the shop and have the customer's shop and forum account link up nicely, it would be good to have the forum and the shop on the same site.
To do this, I disable the backend translation for forum posts etc.
Now:

IF Polylang is set to detect language from URL and set to omit the language code from URL for default language, then it automatically switches to base language when the user clicks on the Forum link (BAD)

It looks like if the Polylang URL options are changed then it is possible to allow other plugins pages to be accessed without automatically switching display language, this needs more investigation as to whether it causes other issues.

Even though I am not sure this the right way to go , but we leave it open for further testing

Rather than having this as an open issue, as I am the only one who raised it I will close it.
It should be absolutely clear in the documentation that this option is simply not supported, rather than not supported yet - the wordpress.org overview text could be improved


Support to stage 3

It's important the next TC39 meeting session about Decorator Metadata for Stage 3 (slides, spec). We need the decorator metadata because, without it, we have limited the decorator feature.
Especially important is - at least for some teams - to be able to coordinate decorators with metadata, especially the class member decorators, which in this current pattern as mere metadata annotators, and the associated class decorator, which reads from the metadata and performs the necessary transformations and adaptations.
As a workaround, when we use "method", "getter", "setter" or "accessor" decorators, we can put a symbol in each function to put metadata there, but with "field" we don't have a shelf where to put metadata.
Of course, without this feature, work with metadata and inheritance is very complicated.
Consequently, we need the decorator metadata as soon as possible.

Adding some context for fellow decorator explorers 😄
TypeScript added support for decorator metadata in this PR which is described in their 5.2 release notes.
esbuild is tracking decorator metadata support here, but it looks stalled because the status of this proposal is unclear.
Can anyone from tc39 provide clarity on a few questions here:

Why is this proposal separate from the core decorators proposal given that they overlap so much and from what I can tell, many of the MVP use cases for decorators require metadata to work? Is it because decorators were already such a complicated feature that it was more practical to split them up?
What is the status of this decorator metadata proposal?

btw I'm currently using the following polyfill for decorator metadata:
// https://github.com/microsoft/TypeScript/issues/53461
// symbol-polyfill.ts

declare global {
  interface SymbolConstructor {
    readonly metadata: unique symbol
  }
}

;(Symbol as any).metadata ??= Symbol.for('Symbol.metadata')

const _metadata = Object.create(null)

if (typeof Symbol === 'function' && Symbol.metadata) {
  Object.defineProperty(globalThis, Symbol.metadata, {
    enumerable: true,
    configurable: true,
    writable: true,
    value: _metadata
  })
}

Thanks! 🙏