Integration with AWS

Hello. I've been working on an app that uses the AWS Sdk and the aws-iot-device-sdk in a manner that works something like this:
return new Promise((resolve, reject) => {
            try {
                this.device = AWSIoTData.thingShadow({
                    clientId: this.deviceId,
                    protocol: 'wss',

                    ...this.awsIoTConfig,
                });

                this.device.on('message', (topic, payload) => {
                    this.onMessage(topic, payload);
                    if (payload instanceof Uint8Array) {
                        payload = new TextDecoder("utf-8").decode(payload);
                    }
                });

                this.device.on('connect', () => {
                    if (this.initialResolve) {
                        this.initialResolve(true);
                        this.initialResolve = null;
                    }
                });

            } catch (e) {
                });
                reject(e);
            }
        });
    }

And more importantly:
subscribe(topic: string, callable: (topic: string, payload: any) => void) {
        console.log("RemoteLink.subscribe(" + topic+ ")");
        this.device.subscribe(topic);

        if (!(topic in this.onMessageHandlers)) {
            this.onMessageHandlers[topic] = [];
        }

        this.onMessageHandlers[topic].push(callable);
    }

This was coded on Cordova, and right now I'm porting the app to React-Native with this library and I would like to keep this functionality. I have tried to use straight up the same package but it has thrown errors regarding the fact that React-Native doesn't work on NodeJS environment (as explained here).
What would be the best way to integrate AWS into a project that uses ReNative, without compromising the cross-platform nature, and having results similar to the old Cordova code?

Hello! I've kept working on this and found myself a solution that works as I expected. If anyone else is looking for a solution to this, I hope I can help with it.
I tested this on Android only:
The original code I wanted to migrate to Renative was a Cordova project that used aws-iot-device-sdk. As many who have tried to use it may know, this library doesn't work correctly with React-Native since it requires core dependencies of Node.js.
In order to fix this, I used react-native-aws-iot-device-shadows. This is simple enough as they explain in the repo, but people have complained before about the fact that there is little documentation in terms of publish/subscribe.
I'll show you how I did it. I went for a functional approach instead of a component, cause it was easier and kept the code structure of the original Cordova Project better.

import React from 'react';
import { AWSIoTData } from 'react-native-aws-iot-device-shadows/aws-iot-device-sdk-js-react-native.js';

export default class RemoteLink {
    constructor() {
        this.awsIoTConfig = this.configuration.get('aws.iot.config');
        this.deviceId = this.configuration.get("device.identity");
        this.onMessageHandlers = [];
    }

    initialize() {
        return new Promise((resolve, reject) => {
            this.initialResolve = resolve;

            try {
                this.device = AWSIoTData.thingShadow({
                    clientId: this.deviceId,
                    protocol: 'wss',

                    ...this.awsIoTConfig,
                })

                this.device.on('reconnect', () => {
                    // ...
                });

                this.device.on('message', (topic, payload) => {
                   // ...
                });

                this.device.on('connect', () => {
                    // ...
                });

                this.device.on('error', (error) => {
                    // ...
                });

                this.device.on('timeout', () => {
                    // ...
                });

                this.device.on('offline', () => {
                   //...
                });
            } catch (e) {
                reject(e);
            }
        });
    }

    subscribe(topic, callable) {
        this.device.subscribe(topic);
    }

    publish(topic, payload) {
        this.device.publish(topic, JSON.stringify(payload));
    }
}

Be sure to import the react-native-aws-iot-device-shadows/aws-iot-device-sdk-js-react-native.js file, as it is the core of it working. I hope this helps someone that encounters a similar problem!


Add Shared Calendar to README

Add shared Calendar to make it easier for people to attend our meetings. When people add this shared calendar to their own, they will get reminders, updates to events, and see new events.

BTW who should be added as managers of this shared calendar?

@jflowers Please add @vikas-agarwal76 and I as managers.

Closed through #27


how to show up the toast using the onPress ?

_onPressBu(){
console.log('30- clicing the onPressButton');
this.setState( message: 'Hooray!' );

}

Provide more information please.
Also, usually prefer StackOverflow if you have question related to usage rather than bug/issues.

I don't think this has a option to show the toast if a button is pressed, judging by the source code:
  componentWillMount () {
    this.showToast()
  }

  componentWillReceiveProps (nextProps) {
    if (this.props.id !== nextProps.id) {
      this.showToast()
    }
  }

  showToast () {
    const animatedValue = new Animated.Value(0)

    this.setState({ animatedValue })

    Animated
      .timing(animatedValue, { toValue: 1, duration: 350 })
      .start()

    const { duration, onShow } = this.props
    const timeoutId = setTimeout(() => this.hideToast(), duration + 350)

    this.setState({ timeoutId }, onShow)
  }

If you want a toast message to show when you press a button you use your click handler to set some state that'll pass a new message prop to the component.
Something like this:
import React, { Component } from 'react'
import { View, Text } from 'react-native'
import Toaster from 'react-native-toaster'

class App extends Component {
  state = { message: null }

  onButtonPress = () => this.setState({ message: { text: 'Hello World!' } })

  render () {
    return (
      <View>
        <View onPress={this.onButtonPress}>
          <Text>Make toast</Text>
        </View>
        <Toaster message={this.state.message} />
      </View>
    )
  }
}


Improve block particles

Override addLandingEffects, addHitEffects, and addDestroyEffects.   Looks like addLandingEffects may require a custom packet/packet handler.  Have a minimally acceptable workaround in place now with colored particles, except for  addLandingEffects.

Done enough for now.  Decided to use generic particles for  landing effects.


Move from DOM-based menu to OS-based menu

So screen readers can hook into it.

Since we've rolled out the Apple version, this has effectively become impossible. #wontfix


Show link on help page and handle fullscreen

The help page shows two links now instead of the QR code.
The app goes fullscreen automatically and leaves fullscreen on opening a link from Help page. There is another button on bottom-right to go back to fullscreen.

Fullscreen works good and the links show up 👍
But is it correct that the QR code is not needed anymore? @max-simon / @JanLahmann can you please confirm that?

Yes, its intended from my side. Showing the QR Code would need some refactoring and I did not have a good idea on how to nicely show it :D


[TextField] Form autofill doesn't update floating label text on textfield

When you use chrome to autofill text fields, the floating label text doesn't animate and show at all (as of 0.8.0)

This is probably a good place to start...

@illogikal could you post of gif that?

Here you go:

The yellow highlight indicates the fields have been autofilled. As you can see, the password is filled, but the label is still in place.

Mm, that's interesting. @mbrookes Do you know if it's for all input types or just password inputs?

Not sure - I tried swapping the order of address and password, but autofill didn't fire, either to fill in a known user/password, or to save a new one. I'll have to figure out how best to test other fields.

Okay, I plan on revisiting refactoring some of the TextField stuff in the near future. I'll try to experiment a bit too. Let me know if you notice anything else.

Hello! We're running into this issue. Is there anything we can do locally to try and experiment w/ some potential fixes for this? Or is it going to have to wait on a refactor?

We have the exact problem with the password field listed above. In addition to that we have a similar problem with a plain TextField. We have hint text set which goes away if you type values in. However, if we set a value when the page renders (deep link) the hint text is still visible behind the actual value. Is this likely the same issue or would that be something separate?

Is this likely the same issue or would that be something separate?
That looks like a different issue.

inspiration for a fix: https://github.com/appsforartists/gravel/blob/master/src/components/Input.jsx#L208

that code could be added to onChange to update a state.isAutofilled

Chrome Version 49.0.2623.87 (64-bit) OS X El Capitan

if any key is pressed or mouse clicked - it floats correctly, but initial load is broken.

Exact same problem:

+1

Any idea, guys?

Experiencing the same issue.

Is there a way to disable autofill that works with MUI?

@kand617

Simply create a couple of fields and make them hidden with "display:none". Example:

<input style="display:none" type="text" name="fakeusernameremembered"/>
<input style="display:none" type="password" name="fakepasswordremembered"/>

Then put your real fields underneath.

http://stackoverflow.com/questions/15738259/disabling-chrome-autofill

any solution to fire onChange event ?

@devdlabs https://github.com/callemall/material-ui/pull/3372/files

@antoinerousseau Is this going to be merged in master?

@devdlabs https://github.com/callemall/material-ui/pull/3372#issuecomment-191523369

This might be a similar issue (same root cause, different manifestation?)
I'm not seeing the animation issues as mentioned, but the height of the TextField container does not take into account the top margin on the input. This results in the TextField extending 14px below the container. It's a fairly straightforward workaround, but I'm only seeing it with autocomplete:

This will be fixed soon ;)

nice @nathanmarks, thanks!!
and did you find a hack to update the floating label when chrome autofills without clicking the page, too?

This is still a pretty painful issue.
I tried using vanilla-autofill-event which just didn't work.

I tested it only in chrome so use it under consideration.
When I added an hidden username and password fields chrome ignored the entire form (unless hiding them with display:none which chrome didn't care about).
So I used 4 ( :disappointed: ) extra fields. 2 to make chrome ignore my form (autocomplete=off didn't work) and 2 more in a different fake form to make chrome fill, than in componentDidMount I added a timeout that copied the values from the fake fields to the real ones using redux-form change event:
class Login extends Component {
  // This was tested under chrome only. It's ugly, but it works. Code was modified a bit for simplicity so it might not work out of the box.

  componentDidMount() {
    // Fix chrome auto-fill
    setTimeout(() => {
      const { change, dispatch }= this.props;
      if (this.refs.usernameAutoFill.value && ! this.refs.username.value) {
        dispatch(change('username', this.refs.usernameAutoFill.value));
      }
      if (this.refs.passwordAutoFill.value && !this.refs.password.value) {
        dispatch(change('password', this.refs.passwordAutoFill.value));
      }
    }, 500);
  }

  render() {
    const styles = {
      autofill: {
        height: 0,
        width: '1px',
        position: 'absolute',
        left: 0,
        top: 0
      }
    };

    return (

        <form style={styles.autofill}>
          <input type="text" ref="usernameAutoFill" name="usernameAutoFill" />
          <input type="password" ref="passwordAutoFill" name="passwordAutoFill" />
        </form>
        <form autocomplete="off">

<input type="text" name="fakeusername" /><input type="password" name="fakepassword" />

    	  <Field name="username" component={() => <TextField ref="username" name="username" floatingLabelText="Username" />}/>
    	  <Field name="password" component={() => <TextField ref="password" name="password" type="password" floatingLabelText="Password" />}/>
    	  <RaisedButton primary={true} label="Login" type="submit"/>
        </form>

    )
  }
}
export default {
  Form: reduxForm({
    form: 'Login'
  })(Login)
}

I've modified the code for simplicity so use it just for reference.

@adamtal3 it's autoComplete="off"

@justinko What are you trying to say?   If you're saying that autocomplete is in the wrong case, - no, it's not, for at least two reasons.

Attribute names for HTML elements may be written with any mix of lowercase and uppercase letters that are a case-insensitive match for the names of the attributes given in the HTML elements section of this document; that is, attribute names are case-insensitive.

-W3C
Also, if you don't trust that, the canonical spelling of autocomplete is all lower case - indeed, I can't find it in mixed case at all without looking really hard.

@justinko It doesn't really matter. If you use autoComplete react will change it to autocomplete.
You can see I used a string value ("off") and not a js value ({'off'}).
If you're referring to React standards and consistency than I agree, but I don't think it's a big deal.

This is my solution.
First, I checked if the username is autofilled when the component did mount.
If yes, I would update the state of the password field.
Once the hasValue turned to true, the floating label will be updated.
componentDidMount() {
	setTimeout(() => {
		if(this.refs.username.getValue()) {
			this.refs.password.setState({...this.refs.password.state, hasValue: true})
		}
	}, 100)
}

Hope this helps. :)

Same here, hope it gets fixed :)

+1

i found a way to update the floating label when it was auto filled by the browser.
setTimeout(function () {                 var autofilled = document.querySelectorAll('input#password:-webkit-autofill');                 if (autofilled) {                     $("input[type=password]").parent().addClass("is-dirty");                 }             }, 500);
this should be inside your document ready at the end.
class "is-dirty" is the class that triggers your floating label.

I'm using redux-form with react-ui. The solution for me is place  after the needed input.
  <TextField
     {...password}
     type="password"
     placeholder={formatMessage(messages.loginPasswordPlaceholder)}
     disabled={submitting}
   />
   <Icon name="password" className={theme.icon}/>
   <input className={theme.hiddenInput} type="password" />

Should be hopefully fixed by React 16: https://github.com/facebook/react/issues/7211#issuecomment-266774957

+1

For me works using this field: ' ' as value on the TextField this field:'' does not work

Still facing the issue...

Same problem happened to me when I updated from 0.17.1 to 0.18.1

Fix that worked for me:
class FixedTextField extends Component {
    constructor() {
       super()
       this.state = { value: '' } }
    }
    textfield = null

    componentDidMount() {
        requestAnimationFrame(() => {
            this.setState({ value: this.textfield.getInputNode().value })
        })
    }
    render() {
       return <TextField {...this.props} value={this.state.value} />
    }
}

Not fixed till now!

The back port of the fix has just been released in React 0.15.6. Anyone in a position to test whether it resolves this issue?
[FYI: The "me too" post above will be deleted].

@mbrookes Not fixed as I tested.

@Stupidism Details?

Just like the one you posted 2 years ago. https://github.com/callemall/material-ui/issues/718#issuecomment-167445748

@Stupidism What version of Material-UI, what version of React, what browser / version?

  "name": "material-ui",
  "version": "0.18.3",

  "name": "react",
  "version": "15.6.0",

Google Chrome	59.0.3071.86 (Official Build) (64-bit)
Revision	fcbc16eadeff40b48fbd6b4694fb8487aededbc2-refs/branch-heads/3071@{#740}
OS	Linux
JavaScript	V8 <IP_ADDRESS>
Flash	<IP_ADDRESS> /home/stupid/.config/google-chrome/PepperFlash/<IP_ADDRESS>/libpepflashplayer.so
User Agent	Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.86 Safari/537.36
Command Line	/usr/bin/google-chrome-stable --flag-switches-begin --flag-switches-end
Executable Path	/opt/google/chrome/google-chrome
Profile Path	/home/stupid/.config/google-chrome/Default

:man_shrugging: In that case @whtang906's workaround seems to be the best option for now.

@mbrookes It would become normal after any click on the page. I'm trying to trigger this event. I tried body.click() and html.click(), but it would not work even in the devtool

For redux-form

  componentDidMount() {
    setTimeout(() => {
      const usernameRef = this.refs.username.getRenderedComponent().refs.component;
      const passwordRef = this.refs.password.getRenderedComponent().refs.component;
      if(usernameRef.getValue()) {
        passwordRef.setState({...passwordRef.state, hasValue: true})
      }
    }, 100)
  }

My app is a little bit slow, so I added an insurance

  componentDidMount() {
    let times = 0;
    const interval = setInterval(() => {
      const usernameRef = this.refs.username.getRenderedComponent().refs.component;
      const passwordRef = this.refs.password.getRenderedComponent().refs.component;
      times += 1;
      if(usernameRef.getValue()) {
        passwordRef.setState({...passwordRef.state, hasValue: true});
        clearInterval(interval);
      } else if (times >= 10) {
        clearInterval(interval);
      }
    }, 100)
  }

Can't get value from chrome autofilled password field
https://stackoverflow.com/questions/35049555/chrome-autofill-autocomplete-no-value-for-password

@nathanmarks

This will be fixed soon ;)

It seems that it is still unfixed.

As far as I have been playing with the v1-beta branch, the issue has been fixed along the way. It could be the rewrite or an upgrade of react. I'm closing until we hear more about it. Thanks for the discussion here!

The error still exist...
<EMAIL_ADDRESS><EMAIL_ADDRESS>Chrome 60.0.3112.90

@artalar Just try the componentDidMount solution O(∩_∩)O

@Stupidism Thank you for the solution! I have tried all of the above and none of them worked. Maybe because most of them are 1-2 years old...
Btw, this bug happens only in Chrome, Firefox is perfectly fine :)

@Ivan-Parushev I guess it's because the usage of ref has been changed

Not solved here, Im filling the values in from localStorage if they exist on componentDidMount, and same error with all latest versions.
Still waiting for a fix...

I'm locking the thread. This issue is 2 years old. As we are now focusing on the v1-beta branch. If anyone has a reproduction example, please open a new issue for the v1-beta branch.

It's been 3 years now. This issue still exists with the latest react and material ui versions.

@tschaub Haha, like the ios position-fixed input gets focused problem.

@tsmirnov Time for you to get stuck in and fix it then. 😜

There is a css solution to this problem.
// Selects label that comes right after the autofilled input         input:-webkit-autofill + label {             // Insert your active label styles         }

Here you go:

The yellow highlight indicates the fields have been autofilled. As you can see, the password is filled, but the label is still in place.

I am facing the same issue.

There is a css solution to this bug
// Selects label that comes right after the autofilled input
input:-webkit-autofill + label {
    // Insert your active label styles
}

Can you please explain what this means ?

There is a css solution to this bug
// Selects label that comes right after the autofilled input
input:-webkit-autofill + label {
    // Insert your active label styles
}

Can you please explain what this means ?

:-webkit-autofill selects autofilled fields by browser. Place your label right next to input and select it with :-webkit-autofill selector. If you need more help please share your current html structure.

There is a css solution to this bug
// Selects label that comes right after the autofilled input
input:-webkit-autofill + label {
    // Insert your active label styles
}

Can you please explain what this means ?

:-webkit-autofill selects autofilled fields by browser. Place your label right next to input and select it with :-webkit-autofill selector. If you need more help please share your current html structure.

Sure! Here is my HTML Please help. Thanks
`

Login - Mobifly Ltd.

Email...

Password...

                        Log In

`

There is a css solution to this bug
// Selects label that comes right after the autofilled input
input:-webkit-autofill + label {
    // Insert your active label styles
}

Can you please explain what this means ?

:-webkit-autofill selects autofilled fields by browser. Place your label right next to input and select it with :-webkit-autofill selector. If you need more help please share your current html structure.

Sure! Here is my HTML Please help. Thanks
https://pastebin.com/yjJCip3r

Your labels come right after the inputs, so you dont have to do anything with html.
Just select your labels right next to autofilled inputs and set them your active label styles as shown below.
.mdl-textfield__input:-webkit-autofill + .mdl-textfield__label {
    // Active label styles here
    top: -20px; // Just an example
    transform: scale(0.75); // Just an example
}

Uh, @kishan3 I think you're lost. MDL is this way --> https://github.com/google/material-design-lite/issues/4827 😆
(Although given that MDL is dead Jim, perhaps you've come to the right place after all!)

Ah damn! Its confusing with names.  :laughing: @mbrookes One question though: can we use material UI directly into HTMLs with CDN links?

What's the solution?

This issue concerns v0.x. See #7003 for a more recent version.

@oliviertassinari  this stil exists in v3.4.0.
In my case, i'm using a dropdown, when the user selects something in the dropdown then it sets the value to the state, the TextField does not floats the label.

If anyone is still here, I just set this prop InputLabelProps={{ shrink: true }} on the TextField that this effected. Was the best solution for our team.
I was really confused and you solved the problem! Best recommended solution!

This is a v0.x issue (2015), please refer to #14427.

There is a css solution to this bug
// Selects label that comes right after the autofilled input
input:-webkit-autofill + label {
    // Insert your active label styles
}

Hi this css solution works fine in Chrome. But when i check my form in firefox, floating label is not working. Do you have any idea why webkit-autofill affects firefox?

Please see #14427 for v4.

The best solution is to stop using Materialize and use Bootstrap or another library, seeing that you have to come up with a workaround and Google seems to have no interest in fixing the issue.

If anyone is still here, I just set this prop InputLabelProps={{ shrink: true }} on the TextField that this effected. Was the best solution for our team.

Thank you, I am using this: InputLabelProps={{ shrink: form.password }} , and it works perfectly.
<TextField
                id="loginPassword"
                label="Login Password"
                type="text"
                fullWidth
                value={form.password}
                onChange={(e) => setAttribute('form.password', e.target.value)}
                InputLabelProps={{ shrink: form.password }}
              />

This still seems to be an issue on Windows Chrome.  The label is not shrinking when the field is autofilled (happening not just on password but also on a field with type="email".
Shouldn't this be addressed in MUI itself, so we don't have to do workarounds?


update react grid when filled with new cols or new breakpoints

Hey!!
This settled Rendering with new Breakpoints props do not refresh the layout.
Let me know if you find anything wrong with this code. I test it through npm run dev. It looks fine for me.
Thank you

Thanks! This is helpful. I hope some time soon to do a more proper fix and remove state entirely, instead memoizing calls that build up the layout - but until then this is a good stopgap.

FYI, missed this in my (admittedly short) review, but the cols and breakpoints attributes are on props, not state. Flow caught this very quickly. If you're not using it, I highly recommend it.

Changes are out in 0.12.3.


Includ the Unespar

@filipeborato First stage of verification passed, official domain is unespar.edu.br as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision.

@filipeborato Pull request merged. Thank you!


[FLINK-9542]ExEnv#registerCachedFile should accept Path

What is the purpose of the change
*related to FLINK-9542.
Modify the DistributedCacheEntries to contain Paths instead of Strings which could detect invalid paths earlier.
*
Brief change log

Modify the DistributedCacheEntries to contain Paths instead of Strings

Verifying this change
This change is already covered by existing tests, such as (JobGraphGeneratorTest, ClientUtilsTest).
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (don't know)
The S3 file system connector: (don't know)

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? (not applicable)

@zentol Could you please help review this PR? thanks very much!


variablesTemplates & connectionTemplates don't work

Checks

[X] I have checked for existing issues.
[X] This report is about the User-Community Airflow Helm Chart.

Chart Version
86.1
Kubernetes Version
Client Version: version.Info{Major:"1", Minor:"20", GitVersion:"v1.20.2", GitCommit:"faecb196815e248d3ecfb03c680a4507229c2a56", GitTreeState:"clean", BuildDate:"2021-01-13T13:28:09Z", GoVersion:"go1.15.5", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"21+", GitVersion:"v1.21.12-eks-a64ea69", GitCommit:"d4336843ba36120e9ed1491fddff5f2fec33eb77", GitTreeState:"clean", BuildDate:"2022-05-12T18:29:27Z", GoVersion:"go1.16.15", Compiler:"gc", Platform:"linux/amd64"}

Helm Version
version.BuildInfo{Version:"v3.5.3", GitCommit:"041ce5a2c17a58be0fcd5f5e16fb3e7e95fea622", GitTreeState:"dirty", GoVersion:"go1.15.8"}

Description
Specifying variablesTemplates or connectionsTemplates did not actually get picked up by the python code. Additionally, in order for these variables to be injected to the right pods you had to specify at least 1 variable or connection.
Relevant Logs
No response
Custom Helm Values
airflow:
  airflow:
    legacyCommands: false
    image:
      repository: apache/airflow
      tag: 2.2.5-python3.9

    executor: KubernetesExecutor

    ###################################
    ## ENVIRONMENT VARIABLES SETUP
    ###################################
    config:
      AIRFLOW__WEBSERVER__EXPOSE_CONFIG: "False"
      AIRFLOW__CORE__LOAD_EXAMPLES: "False"
      CONNECTION_CHECK_MAX_COUNT: 0
      AIRFLOW__LOGGING__REMOTE_LOGGING: "True"
      AIRFLOW__LOGGING__REMOTE_LOG_CONN_ID: "aws_airflow"
      AIRFLOW__LOGGING__LOGGING_LEVEL: "DEBUG"

    extraEnv:
      - name: AIRFLOW__WEBSERVER__BASE_URL
        valueFrom:
          configMapKeyRef:
            name: airflow-v2-settings
            key: webserver_url
      - name: AIRFLOW__LOGGING__REMOTE_BASE_LOG_FOLDER
        valueFrom:
          configMapKeyRef:
            name: airflow-v2-settings
            key: logging_bucket
      ## [SPEC] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/security/set-webserver-secret-key.md
      - name: AIRFLOW__WEBSERVER__SECRET_KEY
        valueFrom:
          secretKeyRef:
            name: airflow-v2-external-secrets
            key: webKey

    ###################################
    ## AUTHENTICATION
    ###################################
    ## a list of users to create
    ## THIS WILL NEED TO BE DISABLED ONCE RBAC IS ENABLED
    ## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/security/airflow-users.md
    users:
      - username: admin
        password: admin
        role: Admin
        email<EMAIL_ADDRESS>        firstName: admin
        lastName: admin

    variablesUpdate: true
    variablesTemplates:
      deployment:
        kind: configmap
        name: airflow-v2-settings
        key: deployment
    connectionsUpdate: true
    connectionsTemplates:
      slack:
        key: slack
        kind: secret
        name: airflow-v2-external-secrets

  ###################################
  ## REMOTE RESOURCES ACCESS
  ###################################
  externalDatabase:
    type: mysql
    host: "YOU FORGOT TO SET THIS" # this will need to be set in each value-<dep>.yaml file
    port: 3306
    database: airflow
    userSecret: airflow-v2-external-secrets
    userSecretKey: "db_username"
    passwordSecret: airflow-v2-external-secrets
    passwordSecretKey: "db_password"

  ###################################
  ## COMPONENTS
  ###################################
  ## [SPEC] https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.20/#resourcerequirements-v1-core
  resources:
    requests:
      memory: "1800Mi"
      cpu: "82m"
    values:
      memory: "1800Mi"
      cpu: "82m"

  scheduler:
    logCleanup:
      enabled: true
    securityContext:
      fsGroup: 65534
    replicas: 1
    resources:
      requests:
        memory: "1300Mi"
        cpu: "1600m"
      limits:
        memory: "1300Mi"
        cpu: "1600m"
    ## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/monitoring/scheduler-liveness-probe.md
    livenessProbe:
      enabled: true
      ## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/monitoring/scheduler-liveness-probe.md
      taskCreationCheck:
        enabled: false
        thresholdSeconds: 300

  web:
    securityContext:
      fsGroup: 65534
    replicas: 1
    resources:
      requests:
        memory: "3900Mi"
        cpu: "950m"
      limits:
        memory: "3900Mi"
        cpu: "950m"
    service:
      type: ClusterIP
      externalPort: 8080

  logs:
    path: /opt/airflow/logs
    ## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/monitoring/log-persistence.md
    persistence:
      enabled: false

  dags:
    path: /opt/airflow/dags
    persistence:
      enabled: false

  ###################################
  ## Disabled Airflow Chart Services
  ###################################
  ## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/monitoring/log-cleanup.md
  logCleanup:
    enabled: false
  workers:
    enabled: false
  triggerer:
    enabled: false
  flower:
    enabled: false
  pgbouncer:
    enabled: false
  postgresql:
    enabled: false
  redis:
    enabled: false
  serviceAccount:
    create: false
  extraVolumeMounts: []
  extraVolumes: []
  ingress:
    ## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/kubernetes/ingress.md
    enabled: false

@asosnovsky can you clarify what you mean by "does not work", as your custom values don't actually define any airflow.connections or airflow.variables?
The airflow.connectionsTemplates value works by defining the templates you need, and then you reference them in airflow.connections, for example:
airflow:
  connections:
    - id: my_aws
      type: aws
      description: my AWS connection

      ## this string template is defined by `airflow.connectionsTemplates.ACCESS_KEY_ID`
      login: ${ACCESS_KEY_ID}

      ## this string template is defined by `airflow.connectionsTemplates.SECRET_ACCESS_KEY`
      password: ${SECRET_ACCESS_KEY}

      ## see the official "aws" connection docs for valid extra configs
      extra: |
        {
          "region_name": "eu-central-1"
        }

  connectionsTemplates:
    ## extracts the value of AWS_ACCESS_KEY_ID from `Secret/my-aws-token`
    ACCESS_KEY_ID:
      kind: secret
      name: my-aws-token
      key: AWS_ACCESS_KEY_ID

    ## extracts the value of AWS_SECRET_ACCESS_KEY from `Secret/my-aws-token`
    SECRET_ACCESS_KEY:
      kind: secret
      name: my-aws-token
      key: AWS_SECRET_ACCESS_KEY

The full docs about managing connections give more examples and context.

@asosnovsky-sumologic I will close this for you, but did you figure it out in the end?


Bug: TerraBlender incompatibility bug i think?

What happened?
Overworld biomes spawning in Aether
Fabric 1.18.2
To replicate:

Install TerraBlender and BYG,
Install Paradise lost,
Create new world and teleport to Aether, there will be a lot of Overworld biomes

Mod Version
Beta 1.6.6
Fabric API Version
0.47.10
Relevant log output
https://pastebin.com/uX50bmfH

Other mods
https://drive.google.com/file/d/1Wl7fcLHPiqQTXfJLHNhEZoJHJVkbU1pJ/view?usp=sharing
Additional Information
No response

Which biomes specifically? Vanilla biomes or BYG biomes?

both

Please forward this to BYG

Yes i do, TerraBlender developer made an update that fix this problem with other dimensions mods like Agape Space Dimensions, but not for Aether. Maybe you can contact him to find a solution?

Please forward this to BYG or Terrablender

Did you do this?
https://github.com/Glitchfiend/TerraBlender/issues

Oh it looks like you did

It still doesn't work? You should make another issue or reopen your existing issue there

I wrote him about that in his discord right after update with fix, i think he saw it

https://github.com/Glitchfiend/TerraBlender/issues/59#issuecomment-1086736140

Just use custom dimension type

Resolved in dev builds. Should be good to go for the next release. Thanks for reporting.

Is this patch released? So if yes, i you can close this

and i think this issue (https://github.com/devs-immortal/Paradise-Lost/issues/631) was related to this prob;em https://github.com/Glitchfiend/TerraBlender/issues/59#issuecomment-1086736140 like my issue so you can unpin it


Feature Request: Scheduled posts

This would be a great addition
Serverless has a nice way to do scheduled posts. This would be a great addition to the CMS, but would require some sort of AWS connection, which does not currently exist.
Starting this discussion in hopes that it will get added to an eventual feature roadmap.
https://serverless.com/blog/static-site-post-scheduler/

Would like to see this too. Another feature that is relied on for those migrating from the WordPress community.

The biggest barrier I see to this is actually posting the scheduled post without having the CMS open. Since we run in-browser only, there is no actual server to run the post.

Right, Netlify CMS has no way to handle this itself. The OP example would use a Lambda function running a cron job, just as the linked article describes.

@erquhart could we do something with Netlify functions now that that's a thing?

i feel like something along the lines of https://www.nczonline.net/blog/2018/03/scheduling-jekyll-posts-netlify/ would work, although probably not with Netlify functions since it needs CloudWatch for the cron.

Ideally, every asset (a post, a page, an image, etc) would have the ability to be scheduled. Atomic scheduling.

Is anyone already working on this?
If not, I can contribute.

That'd be great - what do you have in mind?

Waiting for some news about this

Please, stay open.

This is a fantastic idea. What if we somehow used GitHub actions in the users repo to accomplish this? I am happy to add this into the v3 UI mocks to show you how it might look visually if this is something we are looking into doing.

This is a fantastic idea. What if we somehow used GitHub actions in the users repo to accomplish this?

This is a very good thought. I think the CMS could provide a UI over different services CI pipelines (where available) and auto generate flows to support scheduling.

For those looking for solutions in the meantime, if you have CI with scheduled workflow/builds (CircleCI & Travis), one idea to set up without Zapier:

schedule a repeating CI build every AM (or every hour)
have a "Scheduled Post Time" input field where user enters future date/time
check date/time before running createPage or whatever page building function to build all posts (so post /pages only build when date/time is in past)

Just wanted to add another example I came across where someone is using GitHub Actions co accomplish this task.
Based on what @papistan said, I was thinking about a very similar idea for GitLab. One could hypothetically schedule a pipeline for ever X interval which has a single Job that looks at some criteria (perhaps a yml file in each Merge Request branch) and merges any branches that are ready to be published.

Is there any news on this one? Having a use case where scheduled blog posts would relieve a lot of pain points.

Any news guys? Really need this!


Bytecode cleanup on revert, add bytecode table counter

Describe the feature
Currently, bytecode table is just bytecode_hash -> bytecode while there is possibility that there would be multiple accounts that point to same bytecode we should introduce counter to handle that. Bytecode are not cleaned in reorg or in unwind of blocks.
Additionally on Execution unwind counter needs to be decremented and on execution execute it needs to be incremented or initialized to one.
Creating of the bytecode is always done in AccountInfoChangeSet::Create enum.
Additional context
No response

I can work on this!

Yeah - go for it @MegaRedHand !

Sorry! I can't take it now 😞. Although I'll leave here some info I have from when I looked into it.
Recently a PR added a Bytecode struct in crates/primitives/src/account.rs. We could add a reference counter to this struct, and update it on each modification to the Bytecodes table.

cc @joshieDo re: state clear EIP, in case related. @rakita is this related to Erigon's incarnations table by any chance?

I can look into this if it's available.

Hey team is this issue still relevant? cc @mattsse @emhane
If so, I'd like to take a crack at it.

the entire bytecode table is just 12GB so imo we can live with this and not cleanup reorged bytecodes


Unit tests for helpers

[ ] mergeDeep
[ ] range

Also, it looks like getImageUrl is being exported to the library, but it is only used on the docs. Can we remove that or am I missing something? @bacali95
Please self assign me this

Yes we can move that out of the library


Resolve warnings

This will resolve some warnings about unreachable code and unreferenced parameters. I keep warning level set to 4 in Visual Studio, and these types of warnings happen quite a bit.
As per unreferenced parameters: this could mean a typo or an honest mistake on your end, thus it's better to be informed. When I explicitly don't want to use the parameter, I comment out the name

Thank you!


Add remaining Iterator docs along with missing specs

Good annotations everywhere, fixed up comments so far

Thank you!


fix: change cors proxy to yaCDN

:tada: This PR is included in version 4.0.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Generated attribute tests

Generating tests to check different types when using Client or Server attribute.
Later this will help us create tests to remove the restriction on attributes that they must be in a NetworkBehaviour

Coming back to this 3 years later when wanting to add tests as a first step to solving #3227 for myself
I found the comment // Generated by AttributeTestGenerator.cs at the top of AttributeTest_NetworkBehaviour.cs and AttributeTest_MonoBehaviour.cs and started poking around
It seems the generators themselves were unceremoniously dropped in 2021 at commit 46d7e2d (or at least if there is a pull request attached to the commit I don't know how to find it), and the folder organization was then reconfigured in 2022 by #3079
Was there a reason these generators were dropped? This pull request seems to have been made, tested, and merged by one developer, and one other than the project owner - was it down without permission? Would it be bad to grab the generators back from the history books and use them to generate a new suite of tests that check that the attributes stops calls as well as lets them go through? If not, would it be a good idea to reintroduce the generators to the project? If so, would it be a good idea to get rid of the comments?

The Attribute tests were added originally to test many different types because there was a bug with some of them (might have just been float). and the generators were a good way to do that without manually writing 100s of tests.
I would assume they were removed because no one wanted to maintain generators, but @miwarnec would have to comment to be sure


Store filter field no store fix

Fixes #821
Make sure that includeFields is used if there is no store associated with the component.
Note that in Toolbox, the News grid had a bug where the store filter field would overwrite the source filter, because a store was being provided. Removing that (https://github.com/exhi/toolbox/commit/4140f328f96b565f51b88a1e15a6629d6941845b) reproduces the bug this pr fixes.

👍


optimization: Agent 安装弹出参数校验失败列 (closed #376)

Codecov Report

Merging #387 (689d919) into V2.1.362-rc (a53cc55) will not change coverage.
The diff coverage is n/a.

@@             Coverage Diff              @@
##           V2.1.362-rc     #387   +/-   ##
============================================
  Coverage        62.74%   62.74%
============================================
  Files              246      246
  Lines            19966    19966
============================================
  Hits             12528    12528
  Misses            7438     7438

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 a53cc55...689d919. Read the comment docs.


Metric Plot y-limit

Hi,
I think there's an issue with the y-limit of metric plots, given a config of some bandwith e.g.
      "peak": 12.5, "normal": 0.5, "caution": 1, "alert": 2
The scaling of plots stops at around 5.
Looks like some hard limit to me. Haven't checked the code, but the y-axis limit should imo be either data dependent (expensive) or sth. like max(peak, 5*normal) + 10%

HI there,
actually, you are, or better, were right: It was normal * 10 for the maxY value of metric plots - Which is also the reason for your plot ending at a value of 5.  Alas, we recently merged two pending pull requests, which changed the limit to peak * 10 (see here).
If this still causes problems with metric readout, feel free to re-open this ticket!


Smart Audiobook Player no longer works

Appears in list of music apps in app but doesn't not appear on car and does not launch from app.

Hmmm interesting! I never got it to launch from the app, always requiring Smart Audiobook Player to be started manually. May I recommend the "Voice" app, which seems to be comparable and does support launching?

It's not just the launching. Doesn't seem to work at all even when launched
manually.
On Wed, Sep 9, 2020 at 5:29 PM Walter Huf<EMAIL_ADDRESS>wrote:

Hmmm interesting! I never got it to launch from the app, always requiring
Smart Audiobook Player to be started manually. May I recommend the "Voice"
app, which seems to be comparable and does support launching?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/hufman/AndroidAutoIdrive/issues/110#issuecomment-689831956,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AN7TGCFTLYNUHL2UOHGHNHLSE7XSJANCNFSM4RDDVKEQ
.

Weird! I confirmed with the Phone UI that it behaves very strangely: When the app commands Smart Audiobook Player to play, the current MediaSession is disconnected and a new one is created. By backing out to the main phone app and then tapping back into the Smart Audiobook Player icon, it then reconnects to this new MediaSession and resumes control.
A workaround which should work for you: After selecting Smart Audiobook Player in the car (which should trigger it to start playing again) go back a screen and push the same button to go back to the Audioplayer interface (whether picking the Smart Audiobook Player app from the App List screen, or from the main Media menu). This should trigger a reconnect and it should pick back up to show the cover art and playback progress like usual.
Thank you for reporting this bug! I'll work on it right away.

I will try again tomorrow, but since I updated yesterday Smart Audiobook
Player was not showing up in the car at all. Even though it is "enabled" on
the app.
On Wed, Sep 9, 2020, 7:01 PM Walter Huf<EMAIL_ADDRESS>wrote:

Weird! I confirmed with the Phone UI that it behaves very strangely: When
the app commands Smart Audiobook Player to play, the current MediaSession
is disconnected and a new one is created. By backing out to the main phone
app and then tapping back into the Smart Audiobook Player icon, it then
reconnects to this new MediaSession and resumes control.
A workaround which should work for you: After selecting Smart Audiobook
Player in the car (which should trigger it to start playing again) go back
a screen and push the same button to go back to the Audioplayer interface
(whether picking the Smart Audiobook Player app from the App List screen,
or from the main Media menu). This should trigger a reconnect and it should
pick back up to show the cover art and playback progress like usual.
Thank you for reporting this bug! I'll work on it right away.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/hufman/AndroidAutoIdrive/issues/110#issuecomment-689867340,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AN7TGCEC4UJKSELP64GFMBDSFACKXANCNFSM4RDDVKEQ
.

It did take me a few tries for it to show up in the App List, I'll check into this too (it should pop up automatically as soon as the MediaSession is available).

Dev build with the fix

Hmm, still not working. Shows up in list of music apps but when I open it,
all options are greyed out. Doesnt show in car. This happens even when the
app is running. Screenshot attached
On Thu, Sep 10, 2020, 12:52 AM Walter Huf<EMAIL_ADDRESS>wrote:

Dev build
https://androidautoidrive.s3.amazonaws.com/hufman/AndroidAutoIdrive/545/545.1/app/build/outputs/apk/nomapNonalytics/release/androidautoidrive-1.2.2-22-d765f06-d765f06779eafa9d6b517266383808d6bdddc740-nomap-nonalytics-release.apk
with the fix
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/hufman/AndroidAutoIdrive/issues/110#issuecomment-689979875,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AN7TGCBPWE7SWY3AVOB7R7DSFBLSNANCNFSM4RDDVKEQ
.

The screenshot didn't make it, but I'm incredibly curious about what you're seeing! Does Smart Audiobook Player start playing a book at least? Does the regular Smart Audiobook Player show a book being played too?

So, smart Audiobook Player works just fine as audio over bluetooth if I
launch it as normal from home screen. From within androidauto, it appears
in the overall list of music apps, but not in the "selected" apps list,
even though I have it turned on.  If I select it from the list, all options
are greyed out and it does not show that it's playing anything, even if it
actually is. And or course not showing up in the car.
On Fri, Sep 11, 2020, 6:21 PM Walter Huf<EMAIL_ADDRESS>wrote:

The screenshot didn't make it, but I'm incredibly curious about what
you're seeing! Does Smart Audiobook Player start playing a book at least?
Does the regular Smart Audiobook Player show a book being played too?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/hufman/AndroidAutoIdrive/issues/110#issuecomment-691336631,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AN7TGCDPRLRMREUZ7NTFEVLSFKPEXANCNFSM4RDDVKEQ
.

Would you be able to post some pictures to the Github issue page? I'd love to see what you are seeing.

Oh curious! I think you've found another bug: If you disable Notification Access in your System Settings after having granted it previously, my code doesn't detect it and doesn't show the button to request the permission again.
Try going into your phone's Settings > Apps > Special App Access > Notification Access or somewhere similar to see if AndroidAutoIdrive is allowed to read notifications, which is required to control Smart Audiobook Player. I'll work on fixing the code to show the button if the permission is not granted.

I think that fixed it. Will confirm later in the car. Thanks!
On Sun, Sep 13, 2020, 7:22 PM Walter Huf<EMAIL_ADDRESS>wrote:

Oh curious! I think you've found another bug: If you disable Notification
Access in your System Settings after having granted it previously, my code
doesn't detect it and doesn't show the button to request the permission
again.
Try going into your phone's Settings > Apps > Special App Access >
Notification Access or somewhere similar to see if AndroidAutoIdrive is
allowed to read notifications, which is required to control Smart Audiobook
Player. I'll work on fixing the code to show the button if the permission
is not granted.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/hufman/AndroidAutoIdrive/issues/110#issuecomment-691740448,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AN7TGCDKYA7IYWHBHQ2XPQTSFVH4JANCNFSM4RDDVKEQ
.


Plan API documentation strategy

Few things to look at

openAPI
Sphinx

Reference: https://api.purpleair.com/

Thanks Rob. Take a look at this: https://www.sphinx-doc.org/en/master/man/sphinx-apidoc.html


Lagging

No matter what file I have open, the editor lags. This happens with copy/paste or simple typing, mainly with copy/paste. It's not showing excessive resource use on the system stats, so I'm not sure what's going on. It could be an extension, but I have quite a few extensions, so I want to see if you guys have run into this before before I systematically begin removing extensions.
Update 2/8/2021:
Apologies for the late reply. I'm running Windows 10. The latest update caused some issues with other programs, so I rolled it back, and it had no effect on the VSC issue. I also followed the same procedures outlined by the commenter below to no avail.
Processor: Intel i7-6500U CPU @ 2.50 GHz
RAM: 8 GB
Lenovo machine with Samsung 512 GB SSD installed.
VSC version 1.53
It seems safe to assume the issue is independent of OS, per today's additional comment.

/needsMoreInfo including version and platform. If version is recent enough, try using the extension bisect command. If no extension is identified as the cause, see the wiki for how to diagnose performance problems.

https://github.com/microsoft/vscode-wiki/blob/master/Performance-Issues.md

Apologies, after all was said and done, the issue was completely unrelated to VSC. It was just more noticeable in that environment for a variety of reasons. Please consider the matter closed on my part.


[nodejs][03.welcome-users] Fixed wrong .bot filenames

Proposed Changes

Replace .bot file names in index.js to the correct one.
Rename .bot file to match sample name
Match casing in README.md with bot filename

Updated PR @VictorGrycuk

@VictorGrycuk Updated with changes in line 12

Updated @dfavretto

Closed due to Microsoft#719

Reopened for needed changes. I think the path pointing to an incorrect folder path it's a needed change. @VictorGrycuk @dfavretto

Closed due to Microsoft#719


Getting ...... for output

I downloaded all the weights/checkpoints and successfully converted corresponding Vicuna weights, and got the expected results on my computer with an RTX 4090.
However, I have problem trying to replicate the results on a second computer (with Tesla V100 GPU). The model output is always <UNK> <UNK> <UNK> ...... <UNK> without any errors when I feed it with an input video. I followed the exact same weight conversion process without any error.
Update: I tested on a third computer with an RTX 3080 ti and got the expected output as well, using the weights converted on the first computer. Only the computer with Tesla V100 gives me <UNK> <UNK> <UNK> ...... <UNK>  as output, due to the hidden_states of the class LlamaModel with vicuna-7b-v0 weigths being [nan, nan, ..., nan]. Whereas when I get the correct output, the output_token is a [1, 64] tensor of non-zero values.
I tested the exact same code and weight files on all 3 machines with the exact same conda environment (and cuda = 11.7). I set low_resource == True since the none of the GPUs can fit the model by itself. I wonder what can possibly be the cause of this???

Hi! Could you try to use bfloat16 to check the output? I'm not sure whether the fp16 affects the output.

Hi, we will close this issue.
Feel free to contact us if you have other questions.


Allow use of other Text components to render text

I was trying to use this repo in conjunction with a repo which can render HTML (for example this one or this one).
In order to make them work together, I added 3 props to allow users to use an alternative Text component to render the text

TextComponent - this defaults to Text. If passed, this component will render the text
textValueProp - this is the prop name for the text value to be passed to TextComponent. This was necessary because different 3rd party Text components use different names for this prop (e.g. this repo uses value while others use html). This defaults to children which will make TextComponent behave like the default Text component.
textComponentProps - additional props to pass to TextComponent

Please tell me if there's anything that should be changed about the PR.
This fixes the following issues: #27 and #29.

@georgelima @fakenickels any word on this?

Hi @nsantacruz, sorry for the delay, I've been busy for the past few weeks, thanks for your PR, gonna get it running locally here.

Is it fixed? can you now pass html to the value prop? or you magically fusion the html render view with the selectable text? can you elaborate please.

Is it fixed? can you now pass html to the value prop? or you magically fusion the html render view with the selectable text? can you elaborate please.

@mqlftw yes this is fixed. SelectableText allows you to now pass TextComponent and textValueProp which should allow you to use the package with any html renderer. See the documentation of SelectableText on the homepage of the repo for docs on these two props.


Add tags

This issue is part of the migration to v3. You can read full details about the various changes here.
In Exercism v3, tracks can be annotated with tags. This allows searching for tracks with a certain tag combination, making it easy for students to find an interesting track to join.
Tags are specified in the top-level "tags" field in the track's config.json file and are defined as an array of strings, as specified in the spec.
Goal
The "tags" field in the config.json file should be updated to contain the tags that are relevant to this track. The list of tags that can be used is listed in the spec.
Example
{
  "tags": [
    "runtime/jvm",
    "platform/windows",
    "platform/linux",
    "paradigm/declarative",
    "paradigm/functional",
    "paradigm/object_oriented"
  ]
}

Tracking
https://github.com/exercism/v3-launch/issues/1

This seems to have been tackled in #47 .


Webhooks page screenshot needs updating

Problem description
The screenshot on the webhooks page shows an older version of the console

thix @pierskarsenbarg!
these kind of issues should be opened in pulumi-hugo
and also i already have this https://github.com/pulumi/pulumi-hugo/issues/347, would you mind adding a comment there instead?
ill try and do it this week

Got it. I'll add the comment now

Closing as a duplicate of pulumi/pulumi-hugo#347 per the earlier comment.


Suggestion: Show Primary Key info in IntelliSense

I would like that when we type recAnyTable. in VSCode, IntelliSense could show with a Key Icon all the fields that are part of Primary Key... Ideally, they should always be correctly ordered at Top of the field list  when the PK is composite.

This was partially delivered release 2022 Wave 2, based mostly on this idea:
https://experience.dynamics.com/ideas/idea/?ideaid=f88fb471-6507-ea11-b864-0003ff68ac6b
The view order in IntelliSense is not changed, as the view order is designed to correspond to the field ID, however the primary key fields are denoted by 'PKx' where x is the order in the key.


i am facing problem in getting the proper tooltip on focus for proper data point in the graph as there are so many data points.Is there any way to reduce the focusable area around the data point to get a view of proper tool tip on properly focusing the data point.

Expected Behavior

Current Behavior

Possible Solution

Steps to Reproduce (for bugs)

Context

Environment

Chart.js version:
Browser name and version:
Link to your project:

Add min and max values to the scale options might help.

@jcopperfield has a good answer to increase the resolution of the graph. You could also try the nearest tooltip mode and see if it has some improvements


helm: Set includeCrds to true by default

Introduction
With Helm 3, CRDs are not rendered by default when using helm template. You've got to pass the --include-crds flag to get them.
Tanka knows this already, and provides a way to set it, by setting includeCrds: true in the call to helm.template(). The default is false.
Proposal
I'd like it if we could consider changing the default and setting it to true by default, and have people set it to false if they don't want CRDs.
Why
We just ran into this recently: we upgraded a charm which started following the pattern in its new version and the CRDs went away because they stopped being templated. Given

this is the supported way to install CRDs by helm upstream when templating
helm install installs them by default

I think it makes sense for us to follow suit.
Why not (maybe)

I'm not sure if it is, but it could be more common that people do not want to install the CRDs that come with helm charts than they do. In that case we would want to keep the default as is.
The doc referenced below talks about some problems with distributing CRDs, e.g. how you don't necessarily know if they're being used by other workloads. Once you've set includeCrds: true we give you in-place upgrades to them when you upgrade the chart. helm install doesn't do that so we've already departed from their behaviour. But at least you've had to opt in explicitly to this with current tanka?
It would be a compatibility break, users would need to audit the diff after upgrading Tanka and check if they need any new CRDs that are being installed. Mitigations:

The feature is marked as experimental.
We would make sure to call it out in the release notes.

Further reading

An upstream discussion doc on CRD handling.
Helm and CRDs.

If I read the docs correctly, helm install installs the CRDs by default, so I don't see a problem changing the default in Tanks to match that.


/bin/sh: mongodb: command not found

Bug description
When following the Prisma YT connection tutorials, I'm getting /bin/sh: mongodb: command not found when trying to connect to a remote repository.
Error
mac:apply-sveltekit/ (main✗) $ npx prisma generate                                                                                [7:27:09]
Environment variables loaded from .env
Prisma schema loaded from prisma/schema.prisma
Error: Generator at mongodb could not start:

/bin/sh: mongodb: command not found

How to reproduce

Follow instructions here https://www.youtube.com/watch?v=BwVOIRX3VXk&ab_channel=Prisma
Install homebrew
Install<EMAIL_ADDRESS>as described
Add to zsh export PATH=/opt/homebrew/Cellar/mongodb-community@4.4.16/bin:$PATH
set .env

<EMAIL_ADDRESS>
Expected behavior
I expect it would generate my Prisma types
Prisma information
generator client {
  provider = "mongodb"
}

datasource db {
  provider = "mongodb"
  url      = env("DATABASE_URL")
}

Environment & setup

OS: M1 MacOS
Database: MongoDB hosted
Node.js version: Now using node v16.18.0 (npm v9.1.2)

Prisma Version
using npx

This is not a bug in prisma, but instead a problem with MongoDB shell setup. I followed the instructions and was able to complete the tutorial on my M1 Mac. Also, the tutorial is to set up a local mongo setup. I saw you provided an existing atlas URL for your connection string which means you will have to sync your prisma.schema with the remote mongo database using prisma db:pull
Did you add export PATH=/opt/homebrew/Cellar/mongodb-community@4.4.16/bin:$PATH to your shell dotfiles? (eg ~/.zshrc) Otherwise, if you had closed your terminal or open a different session, the binary would not be found in the path.
Are your .env keys being exported into the shell?
Closing as this is not an issue with prisma, please create a discussion if you need further support.

Hey, there is actually a super simple mistake in the schema file: You also edited provider = "prisma-client-js" in the generator client block. This now tries to executed mongodb as a command under the hood, which also does not seem to work - but would never be a valid generator for the Prisma CLI anyway.
Set that back to   provider = "prisma-client-js" and everything should work @csellis

Oh wow @janpio, thank you so much, and good spot. It's working now.


Fix readme and TODO

@firscity, please take another look at this PR
Note: I deleted the configuration (cfg) and overlays for all QEMU boards. I need confirmation from your side that this action is not prohibited.


FPv2: support collecting versions for specific ecus

Let's do the config refactor first in another PR. All the car-specific stuff should be moved into its values.py.

Sounds good! I was thinking we can do this incrementally though so we can get the Hyundai query in, but you want everything moved over first before this?

Yes, let's do the refactor first.

superceeded by https://github.com/commaai/openpilot/pull/25859


Optimized safety ignore list for install

No review needed

coverage: 37.115%. remained the same
when pulling 27e2ff45563fe57bf2c72250f570c7e282be9363 on andy/optimize-safety-install
into 7748f440270a24c7ccf9929139290cba2f46ba51 on master.


parallel parking

Hi, All,
We are trying to use teb_local_planner for parallel parking application, anyone has tried this before?  What would be the good set of parameters to start with? Thank you very much.
Regards
Ben

Kindly interested in that matter too. I'm rather targeting perpendicular parking, but I guess the idea stays the same. So far, I'm struggling with preventing teb_planner from asking the car to switch motion directions like 10 times on a 3m long path..

@GuillaumeHauss I fixed a crucial bug today which led to a huge difference between the planned and actually controlled trajectory and hence introducing lots of motion traversals. I would be happy, if you can test this again and let me know if the performance is better :)

Hi @croesmann,
Thanks for your continuous work on that, then!
Is the new code on a specific branch in the repo, or can I jush pull from the master branch?

just pull from the default branch. It's kinetic-devel. I haven't cherry-picked it yet for other distros.


Add alias for git pull --prune

Adds a new alias for pulling changes with Git.
Description
From the git-pull man page:

-p, --prune
Before fetching, remove any remote-tracking references that no longer exist on the remote.

Motivation and Context
When working with feature branches it's necessary to clean up branches from time to time. The alias makes this recurring task easier.
How Has This Been Tested?
I have the exact same changes integrated in a local, fresh installation of Bash-it on my developer laptop.
I grepped for "glp" over the current repository HEAD to verify that there are no conflicting aliases.
Types of changes

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

Checklist:

[x] My code follows the code style of this project.
[ ] If my change requires a change to the documentation, I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[ ] If I have added a new file, I also added it to clean_files.txt and formatted it using lint_clean_files.sh.
[x] I have added tests to cover my changes, and all the new and existing tests pass.

On macOS 5 tests are not run, that's why the test job fails:
...
ok 237 plugins ruby: PATH includes ~/.gem/ruby/bin
ok 243 themes base: battery_percentage should not exist
...
# bats warning: Executed 257 instead of expected 268 tests

On Ubuntu those seem to be run:
...
ok 237 plugins ruby: PATH includes ~/.gem/ruby/bin
ok 238 plugins xterm: shorten command output
ok 239 plugins xterm: full command output
ok 240 plugins xterm: shorten dirname output
ok 241 plugins xterm: full dirname output
ok 242 plugins xterm: set xterm title
ok 243 themes base: battery_percentage should not exist
...

The tests on xterm seem to be affected. I can't spot why and why this would be a problem. - Any ideas?


Image is not uploading due to XMP data.

Please suggest how to remove it through the code.

@BhargaviVenkatesh
I have the same problem this seems to be a bug in code introduced lately.
JPG is no longer working but PNG is still working fine.

My solution was to roll back the non locally stored js files via waybackmachine.
Could be a problem in the template, some js files are pulled from github others are stored locally, I guess that is where the problem comes from.

Thanks for your report, @BhargaviVenkatesh  and @Goldenflamer.
Could you provide a sample image with XMP data that does not work?
And can you reproduce this issue on the demo site?
If not, this is probably due to an outdated blueimp-load-image dependency.
If you're installing via NPM, you should have have a version of this dependency that works with the jQuery File Upload version installed.
Otherwise, you could also update both libraries to their latest version.

Same Problem for me. A few days (weeks) ago all my sites worked with jpg. Now none of my sites is able to upload jpg Images. (PNG work fine thanks to @BhargaviVenkatesh

Hi @listprocessor, it would be nice if you could also provide answers to the questions I posted above:
Could you provide a sample image with XMP data that does not work?
And can you reproduce this issue on the demo site?

I tested it with one of the photos that  failed for me on your demo site and your demo site worked.
Unfortunately I haven't got any jpg file that works on any of my sites.

Thanks for your reply.
Are you using the latest versions of both jQuery File Upload and JavaScript-Load-Image (which is the dependency used to load image files)?
Note: If you install jQuery File Upload  via
npm install blueimp-file-upload

you should have a compatible blueimp-load-image dependency in the ./node_modules/blueimp-load-image directory.

No I use sn old one.  According to blueimp-file-upload.jquery.json:
"name": "blueimp-file-upload",
"version": "9.8.0",
It worked great for several years now and for some unknown reason it does not work anymore. I did not change any of my sites and all use the same version.

OK, please check how you are including the JavaScript-Load-Image dependency.
You might be including them straight from GitHub like this, which is not recommended:
https://github.com/blueimp/jQuery-File-Upload/blob/1c84ab1ed9e7547701222484e4e770bfeaa7862e/index.html#L304
From the setup guide

Although the demo implementations contained in this repository include source files from remote servers, it is recommended to download all dependencies and upload them to your own server.
This excludes script files hosted on Google's Content Delivery Network, which is a more reliable source than GitHub demo pages.

Thanks @blueimp . as always its an RTFM case :-). That's it! I managed to download an older Version that worked.
I still have to upgrade to your latest version but that will take some time.
Thank you so much for your work!

You're welcome. :)
@BhargaviVenkatesh and @Goldenflamer:
I assume that this is a similar issue and we can close this?

Closing this as resolved.


Bugfix/579 test to show completion exception not un wrapped

Add test to show failure to unwrap exception.
Unwrap CompletionException on failure for async result.
remove test that shows CompletionException not unwrapped.

Now unwraps completion exception on failure from async result this makes it much easier to write exception handlers as no longer need to manually unwrap the cause from the CompletionException.

@bchristenson you worked a bit on this, do you have any input?

@tipsy -- We unwrap CompletionExceptions in our app code so I'm definitely in favor of the change.  I'm not sure exactly what the relationship is between #579 and #580, but the git commits for this issue look good at first glance.
src/main/java/io/javalin/http/JavalinServlet.kt does appear to have a minor indentation formatting inconsistency.

Great, thanks @bchristenson and @dancohensmith !


SIG box alignment

Describe the bug
The button needs to be aligned properly
To Reproduce
Steps to reproduce the behavior:

Go to 'https://faceaseb.com/ACMW#'
Scroll down to 'SIG @ AMRITA'
See error

Expected behavior
Should be aligned

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

@adithyaRocks Can you confirm if the issue still exists? Looks like it's been fixed.

Has been resolved localll. Changes haven't appeared online yet


Define new tag for atomic ABI

Alternative version of https://github.com/riscv-non-isa/riscv-elf-psabi-doc/pull/383
Defined 4 atomic abi variant.

unknown, nonatomic, A6C and A6S

Unknown is compatilbe with exising object file.
Nonatomic is used when A-extension is absent
A6C is the table A.6 mapping defined in ISA spec.
And the A6S is the mapping defined in psABI spec.

Do we want this in e_flags or do we want this in .riscv.attributes? TSO is there, but that's because it predates .riscv.attributes (and the existence of the psABI TG). I don't see a good reason why it needs to be in e_flags.

@enh-google

do we need a definition of "6c" and "6s" to go with the "tso" definition?

I would like defer this to @hboehm, but I think we might need also include the TSO mapping into the psABI spec.

Why are you defining e_flags bits and an attribute? The whole point of the attribute is to not use up flags bits for this minor thing.

Changes:

Define new attribute rather than new flag in e_flags
Include one more atomic ABI: nonatomic, should be only used when A-extension is absent.

@jrtc27 my bad, I am not intend to define both, but just git operation error, will fix soon

Changes:

Remove e_flags part, which should remove when introduce attribute.

I'm not sure what NON_ATOMIC_ABI means. Possible interpretations:

The source code uses no atomic operations. I would prefer to just claim compatibility in that case.
Atomics are somehow implemented with kernel support, Linux armv5 style. I don't see how that could be made compatible with anything else. And we would have to define that ABI to make it compatible with itself.
Atomics are implemented in terms of locks, which are implemented with just loads and stores an fences. Same comment as (2).
The code only works in a single-threaded executable. I don't think it makes sense to define such an ABI anymore.

My preference would be just to have two bits, defined as follows, using roughly kito-cheng's terminology:

This object is compatible with the A6 classical atomic mappings, as defined by table A.6 in <>.
Uses mappings from that table, or mappings from  <<Mappings from C/C++ primitives to RISC-V primitives>> that do not specify Note 3.
This object is compatible with all mappings defined in <<Mappings from C/C++ primitives to RISC-V primitives>>. May use any mapping from that table.

UNKNOWN_ATOMIC_ABI would correspond to both bits clear. We would probably make that compatible with itself, though that's not guaranteed to be valid.
Any implementation that uses the recommended, non-Note-3 mappings would have both bits set, and would be compatible with anything other than UNKNOWN. An A.6 implementation would only set bit 1. A future A.7 implementation would set only bit 2.
In an ideal world, the linker check would be to and all bit pairs together, and check for a nonzero value, indicating that all objects are compatible with one of the two conventions. As a concession to practice, we would also accept all 0 "UNKNOWN" values, on the optimistic assumption that they all use the same "UNKNOWN" convention.
Interpretation (1) of NON_ATOMIC_ABI above would map to both bits (vacuously) set. The others would map to UNKNOWN (0).
I cannot think of a kind of system that would (a) really care about ABI compatibility, but (b) not support the A extension. Getting a conforming and practical C or C++ atomics implementation on a multicore processor without the A extension seems somewhere between very difficult and impossible.

@hboehm let me explain my thought behind the design, and start from the 0/UNKNOWN_ATOMIC_ABI:
The 0 value is kind of special value in RISC-V attribute, object without define this tag will treat as define this tag as 0, which is little bit implementation detail, but it's de facto on both LLVM and GNU toolchain, and mostly this spec has rely on this  de facto, I think we should have more word to describe this on the spec.
Then what's NON_ATOMIC_ABI? the 4 is my target for this value, and why I define that is because RISC-V is a highly configurable ISA, so we could have a configuration without atomic instruction (e.g. -march=rv32imc), and that's the target user of this value/atomic ABI, and this configuration is existing in embedded world, but it's not fit in either A6C or A6S, and using UNKNOWN_ATOMIC_ABI might also misleading - since this could mixed with other situations like @ilovepi listed, so I think we need a NON_ATOMIC_ABI to present this; I agree a system without A-ext won't care about the atomic ABI, but this could help let linker has some guidance to prevent those stuffs beginning mixed, and that's the issue I face during handle multi-lib issue for bare-metal GNU toolchain.
So why not just using two bits? NON_ATOMIC_ABI and UNKNOWN_ATOMIC_ABI will fail into same category in two bits scheme, and that's what I want to prevent, also I could imagine two bit scheme would be very cheap on checking compatibly - but this mostly happened on static link time, and might be happened on dynamic link time, but it will check once at start time, so I would like to keep the extensibility here, and my understanding is this scheme should have the expressiveness of the two-bit solution and can be extended even further, that's the reason why I didn't use bit vector scheme.

And I would like to prevent mention A7 mapping at this moment in spec, it's stable for a while, but not ratified, so...I would be conservatively on this, since everything could be changed before ratified :P

Thanks for the clarification on Tag 0. That now makes sense to me.
On the number of different attribute values:
Concretely, I think that we really need to be able to distinguish three flavors of A6C and A6S compliance, in addition to the UNKNOWN/none option we have:
a) A6C compliant, but incompatible with A6S executable that uses the Note 3 mappings (e.g. that use the A.7 mappings).
b) A6C and A6S compliant  (and hence also A.7 compatible)
c) A6S compatible, but not A6C compatible (i.e. uses the Note 3 / A.7 mappings).
The current gcc mapping should be described as (b), so that it can be linked against either A.6 classic (a) or A.7 (c) object files. Future A6S executables that use the Note 3 mappings should be described as (c), to prevent linkage against A.6 classic files. Currently, I don't think we have a way to make that necessary distinction.
Not all of the Note 3 mappings require new hardware. Thus this distinction is likely to be relevant soon for code compiled on platforms that never supported A6C.
NON_ATOMIC_ABI:
To what extent do embedded processors without the A extension rely on a standard ABI? I always thought of micro-controller code as being sufficiently self-contained that standard ABIs are much less of a concern.
My concern is that currently I have no idea what the NON_ATOMIC ABI looks like. Which one of the 4 options at the top of my first message are used? How is x.fetch_add(1) or flag.test_and_set() implemented? I don't think that implementing fetch_add as simply load; add; store is neither thread- not interrupt-/signal-safe. So it doesn't strike me as a useful implementation of atomics.
Thus I still feel that we need another value to identify "both A6C and A6S compatible", but I'm not yet convinced that NON_ATOMIC is useful. If it is, I would really like to see a more precise definition.

What's the point of 0? Can that not just be encoded as "not present", given that is how every binary to date is?

Thanks for the clarification on Tag 0. That now makes sense to me.
On the number of different attribute values: Concretely, I think that we really need to be able to distinguish three flavors of A6C and A6S compliance, in addition to the UNKNOWN/none option we have:
a) A6C compliant, but incompatible with A6S executable that uses the Note 3 mappings (e.g. that use the A.7 mappings). b) A6C and A6S compliant (and hence also A.7 compatible) c) A6S compatible, but not A6C compatible (i.e. uses the Note 3 / A.7 mappings).
The current gcc mapping should be described as (b), so that it can be linked against either A.6 classic (a) or A.7 (c) object files. Future A6S executables that use the Note 3 mappings should be described as (c), to prevent linkage against A.6 classic files. Currently, I don't think we have a way to make that necessary distinction.
Not all of the Note 3 mappings require new hardware. Thus this distinction is likely to be relevant soon for code compiled on platforms that never supported A6C.
NON_ATOMIC_ABI: To what extent do embedded processors without the A extension rely on a standard ABI? I always thought of micro-controller code as being sufficiently self-contained that standard ABIs are much less of a concern. My concern is that currently I have no idea what the NON_ATOMIC ABI looks like. Which one of the 4 options at the top of my first message are used? How is x.fetch_add(1) or flag.test_and_set() implemented? I don't think that implementing fetch_add as simply load; add; store is neither thread- not interrupt-/signal-safe. So it doesn't strike me as a useful implementation of atomics.
Thus I still feel that we need another value to identify "both A6C and A6S compatible", but I'm not yet convinced that NON_ATOMIC is useful. If it is, I would really like to see a more precise definition.

Anything that's RMW will be a libcall, so there's no memory model baked into the binary there. The only issue is that I think atomic loads and stores that just need fences will not use a libcall and just emit the fences directly, given the fences are RVI (which is a bit weird... but they do have a purpose outside of atomics). So non-A code still needs to encode what it's doing.

It seems to me that we would need a specification for those library calls someplace?
The assumption is that those library calls internally use some combination of locks/kernel support/vendor-specific hardware magic? (Or presumably just the last two where lock-freedom is required by language standards.)
I still don't see how to make that work on a somewhat vanilla multiprocessor while using ordinary stores as atomic stores. How do you ensure atomicity between a fetch_add library call and a store instruction, making sure that the concurrent store isn't seen between the load and the store of the fetch_add? Certainly that doesn't work for a user-space lock-based implementation.
E.g. with (x initially zero), how do you preclude
Thread 1: x.store(5);
Thread 2: r = x.fetch_add(1);
with final outcome r == 1 && x == 1, thus "losing" the store?
Can you point to a working example for this sort of thing?
Normal lock-based C++ atomics implementations also lock for load/store. Aside from atomic_flag/atomic_signed_lock_free/atomic_unsigned_lock_free, that's fine. But I think you also need more magic of some sort to support those three without the A extension.

@hboehm

It seems to me that we would need a specification for those library calls someplace?
The assumption is that those library calls internally use some combination of locks/kernel support/vendor-specific hardware magic? (Or presumably just the last two where lock-freedom is required by language standards.)
I still don't see how to make that work on a somewhat vanilla multiprocessor while using ordinary stores as atomic stores. How do you ensure atomicity between a fetch_add library call and a store instruction, making sure that the concurrent store isn't seen between the load and the store of the fetch_add? Certainly that doesn't work for a user-space lock-based implementation.

Yes, I agree with that, we should add a spec for those library calls IF we going to define that as NON_ATOMIC_ABI, but I realized that is kind of broken for existing non-A code gen, because we are kind mixing two flavor now - expanding atomic load/store to ordinary load/store, and expanding other atomic operation to library calls, so here is two options for this case IMO: 1) expand all atomic operations to ordinary operation, including fetch_add, expand it to load, add and store, 2) expand all atomic operations to library call, including atomic_load/store.
First option means NO atomic at all, which is used for single processor code gen, that should be the scenario of non-A.
And the second one could be used to those system which used system has provide some syscall doing that, but honestly I don't think it's useful RISC-V world since RISC-V has A-extension.
So IMO we should define NON_ATOMIC_ABI as expand all atomic operation as ordinary operation, but this is an incompatible change again, so we need more inputs for this.
cc. @asb @patrick-rivos

Lowering atomic loads/stores to load/store+fences while lowering other atomic operations to libcalls is a gcc issue. We don't do that in LLVM (see llvm/test/CodeGen/RISCV/atomic-load-store.ll). We do as of LLVM 16 support a forced-atomics option which will lower atomic load/store to load/store+fence and lower other atomic operations to __sync_* libcalls.

@asb Thanks for the info, seems LLVM is going to expand all atomic operations to library call, then I think might be reasonable to rename that into SOFT_ATOMIC_ABI, fix gcc land and document that down the library functions into ABI.

Fixing GCC to only emit library calls or ordinary ops & __sync_* libcalls makes sense.
Afterwards, we'll have 2 cases:

Only library calls (LLVM binaries)
Ordinary operations & __sync_* libcalls (LLVM's forced-atomics binaries)

@asb @kito-cheng These two cases are incompatible, so how do we represent this in the ABI?

I found the last section in https://llvm.org/docs/Atomics.html. They give two example uses of --forced-atomics, the first one of which doesn't apply to RISC-V. The second one applies only to uniprocessors, and has the _sync primitives implemented as user-level functions known to the kernel, so that they can be restarted from the beginning on a context switch. That's a well-known technique (dating back to at least a 1992 paper by Bershad et al). I can't think of another context in which library functions could be implemented like this while maintaining atomicity with respect to load and store instructions. The question in my mind is whether it's worth supporting a uniprocessor-only convention in 2023. In my context, if you want to be able to link code to something else, you want to be able to link it to code runs on multiple cores. Android has been removing old uniprocessor optimizations since about 2015.
I don't understand why "only library calls" would require a separate tag here. Such code is compatible with any other atomics ABI under consideration (so long as the library implementing the _sync primitives also is). It's essentially code that just doesn't use atomics, and is thus ABI-independent in this respect.
Expanding all atomic operations to non-atomic instruction sequences takes us from a single HART world to one in which there is only a single thread and there are no asynchronous signals or interrupts. I don't think any of those are required by the C standard, so you could probably have a conforming implementation under those conditions. But that seems even less interesting to me than the uniprocessor case. Certainly atomics support in this scenario would be useful only if the code is also used on a platform that actually supports concurrency.
It seems to me that if we really want NON_ATOMIC_ABI at all, it should target the single HART, restartable code sequences implementation. I'm not at all convinced that's warranted, but on very low-end embedded devices, I think it makes more sense than the others.

I don't understand why "only library calls" would require a separate tag here. Such code is compatible with any other atomics ABI under consideration (so long as the library implementing the _sync primitives also is). It's essentially code that just doesn't use atomics, and is thus ABI-independent in this respect.

IIUC, "only library calls" isn't guaranteed to be compatible unless it only uses __sync_* calls (guaranteed to be lock-free). Otherwise there could be a lock-based implementation that gets mixed with regular loads/stores (from the load/store & __sync_* case).
It's mentioned here: https://llvm.org/docs/Atomics.html

Code using +forced-atomics is ABI-incompatible with code not using the feature, if atomic variables cross the ABI boundary.

If it doesn't make sense to support this case in the psABI, then my point is moot :)

https://reviews.llvm.org/D130621 is the context for why this was added to LLVM. If it does not make sense then please take it up with the author of the patch.

The question in my mind is whether it's worth supporting a uniprocessor-only convention in 2023. In my context, if you want to be able to link code to something else, you want to be able to link it to code runs on multiple cores. Android has been removing old uniprocessor optimizations since about 2015

forced-atomics is a niche feature that you'd definitely never use on a modern application class core, and yes, only makes any sense on an embedded uniprocessor system as far as I can see.
In terms of whether this needs representing in ELF attribute in some way...I've got no objection, but I'm also not sure it's a worthwhile endeavour to try to protect people from every conceivable case of linking together code that shouldn't be linked. Handling cases people are likely to run into on Linux-capable systems and getting the low-hanging fruit for common cases on embedded targets (mismatched ABIs or -march) seems sensible, but perhaps it's diminishing returns beyond that.

I don't understand why "only library calls" would require a separate tag here. Such code is compatible with any other atomics ABI under consideration (so long as the library implementing the _sync primitives also is). It's essentially code that just doesn't use atomics, and is thus ABI-independent in this respect.

IIUC, "only library calls" isn't guaranteed to be compatible unless it only uses __sync_* calls (guaranteed to be lock-free). Otherwise there could be a lock-based implementation that gets mixed with regular loads/stores (from the load/store & __sync_* case).

That seems to depend on how you read this? I read it as "the compiler calls _sync functions, which are implemented by a user-provided library". With that reasoning, compatibility depends on whether the _sync library is compatible with the other ABI. Which presumably should be indicated by the tag associated with the _sync library. I don't really see the difference between this and the user code explicitly calling into a library that implements atomics.
Loads and stores would hopefully be implemented as specified by our ABI, i.e. with fences on both sides.

It's mentioned here: https://llvm.org/docs/Atomics.html

Code using +forced-atomics is ABI-incompatible with code not using the feature, if atomic variables cross the ABI boundary.

If it doesn't make sense to support this case in the psABI, then my point is moot :)

https://reviews.llvm.org/D130621 is the context for why this was added to LLVM. If it does not make sense then please take it up with the author of the patch.

I think it makes sense, but only if the _sync functions are atomic with respect to ordinary load and store instructions. And I know of only one plausible implementation that satisfies that constraint. And that implementations is only correct on uniprocessors.
So it sounds like we're kind of, generally,  in agreement that the question here is "Is that niche large enough to support?"

https://reviews.llvm.org/D130621 is the context for why this was added to LLVM. If it does not make sense then please take it up with the author of the patch.

I think it makes sense, but only if the _sync functions are atomic with respect to ordinary load and store instructions. And I know of only one plausible implementation that satisfies that constraint. And that implementations is only correct on uniprocessors.
So it sounds like we're kind of, generally, in agreement that the question here is "Is that niche large enough to support?"

@nikic?

That seems to depend on how you read this? I read it as "the compiler calls _sync functions, which are implemented by a user-provided library". With that reasoning, compatibility depends on whether the _sync library is compatible with the other ABI. Which presumably should be indicated by the tag associated with the _sync library. I don't really see the difference between this and the user code explicitly calling into a library that implements atomics.
Loads and stores would hopefully be implemented as specified by our ABI, i.e. with fences on both sides.

Ah. I had it in my mind that __atomic_* library calls could depend on a globally shared lock or other shenanigans. I forgot that the library will have its own tag that could be checked against other library's tags. Since we can perform those checks with the existing bits, I don't have concerns about the __atomic_* vs __sync_* cases anymore. Sorry for the noise :)

Changes:

Drop NON_ATOMIC_ABI

I think we do need atomic ABI for non-A configuration, but their is no spec yet, so let drop that and define that once we have spec for that.

Changes:

Adjust merge rule, made it more clearly on the merge result
Add note for the program without A ext.

Changes:

Added A7_ATOMIC_ABI

Changes:

Suffix _ATOMIC_ABI dropped.
Applied several suggestion from @hboehm

Looks good to me. Thanks!

binutils PoC: https://github.com/kito-cheng/riscv-binutils-gdb/commit/30207822354a605ccac368e2e86940475f27dec0

Changes:

Rebase and squash patches.

Gonna merge because we reached a consensus and have a PoC now.


🛤 RFD System 2.0 - Tracking Issue

[ ] Convert list of RFDs into table
[ ] Make the table...

[ ] Filterable
[ ] Sortable
[ ] Searchable

[ ] Add RFD metadata to RFD pages, including:

[ ] Superseded by
[ ] Authored by
[ ] Last updated on
[ ] Labels (list of strings)

For now won't invest time on more complex system. The website now has a table with metadata plus site-wide search that includes RFDs. More features may make sense in a future with more RFDs.


UI , cant see when you've got StroomQL errors when you press Run

I rarely ever get StroomQL queries wrong, especially as the documentation is fantastic, however on the odd occasion it actually happens like that, can the Ui show me that I have an error, and point me in the right direction.

Things have now moved on, so closing this


Most examples fail on Ubuntu 16.04 Nvidia GTX680 Geforce 375.66 driver

Most examples fail on Ubuntu 16.04 Nvidia GTX680 Geforce 375.66 driver
After setting:
#define ENABLE_VALIDATION true
on all examples I get the error:

Could not create Vulkan instance :
ERROR_LAYER_NOT_PRESENT

for the following examples:

computenbody
computerparticles
computershader
debugmarker
deferred
deferredmultisampling
deferredshadows
displacement
distancefieldfonts
dynamicuniformbuffer
geometryshader
instancing
mesh
multisampling
multithreading:
numThreads = 4
raytracing
scenerendering
shadowmapping
skeletalanimation
specializationconstants
sphericalenvmapping
ssao
terraintessellation
tessellation
texture
texture3d
texturearray
texturemipmapgen
texturesparseresidency
vulkanscene

vulankinfo attached.
info.txt

Are you sure that the validation layers are actually installed? Looking at your info.txt the only layers listed are those from steam, and not one single validation layer:
Layers: count = 2
=======
VK_LAYER_VALVE_steam_overlay_64 (Steam Overlay Layer) Vulkan version 1.0.3, layer version 1
	Layer Extensions	count = 0
	Devices 	count = 1
		GPU id       : 0 (GTX 680)
		Layer-Device Extensions	count = 0

VK_LAYER_VALVE_steam_overlay_32 (Steam Overlay Layer) Vulkan version 1.0.3, layer version 1
	Layer Extensions	count = 0
	Devices 	count = 1
		GPU id       : 0 (GTX 680)
		Layer-Device Extensions	count = 0

How do I install the Validation Layers?

Either build and install from source (https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers) or install a current version of the LunarG SDK for linux and follow the instructions at https://vulkan.lunarg.com/doc/view/latest/linux/getting_started.html.


Time out error running BWA

I getting an error running BWA: The job seems to finish ok, with output files being written och log files indicating no error. But somehow the job is not recognized as done, so it keep on running until it's killed due to the time limit.
This was run on Uppmax/bianca, using singularity and nextflow v 0.30.1 and v0.31.0.
The last lines in .command.log
main] Version: 0.7.17-r1188
[main] CMD: bwa mem -M BWAIndex/genome.fa BEA17P061a_103_trimmed.fq.gz
[main] Real time: 219866.716 sec; CPU: 220966.991 sec
slurmstepd: error: *** JOB 7269 ON sens2017533-b107 CANCELLED AT 2018-09-30T16:10:57 DUE TO TIME LIMIT ***

Here's the corresponding row in the trace file:
440	e6/1e6649	7269	bwa (BEA17P061a_103)	FAILED	-	2018-09-26 16:10:18.603	4d 15m 52s	4d 15m 47s	276.9%	6.2 GB	6.4 GB	47.4 GB	41.9 GB
This looks very similar to this issue in the RNA-seq pipeline: https://github.com/nf-core/rnaseq/issues/81

Might be related to https://github.com/nf-core/chipseq/issues/56 and https://github.com/nf-core/rnaseq/issues/81

I found a zombie process related a bwa job
jacke    10397  0.0  0.0 113180   808 ?        S    Oct12   0:00      \_ /bin/bash /var/spool/slurmd/job08859/slurm_script
jacke    10400  0.0  0.0  19704  1640 ?        S    Oct12   0:00          \_ /bin/bash -c cd <proj dir>/accb27c4a175d11cdca82d54ba428a; eval export PATH="/home/jacke/bin/chipseq/bin:$PATH"; /bin/bash <proj dir>/accb27c4a175d11cdca82d54ba428a/.command.stub
jacke    10421  0.0  0.0  19912  1824 ?        S    Oct12   0:00              \_ /bin/bash <proj dir>accb27c4a175d11cdca82d54ba428a/.command.stub
jacke    10432 81.0  0.0  20008  1476 ?        R    Oct12 3140:10                  \_ /bin/bash <proj dir>accb27c4a175d11cdca82d54ba428a/.command.stub
jacke     4625  0.0  0.0      0     0 ?         But apparently nextflow didn't like that, so the bwa job was restarted:
Oct-15 09:19:34.325 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[jobId: 8859; id: 431; name: bwa (BEA17P061a_75); status: COMPLETED; exit: 137; error: -; workDir: <proj dir>/accb27c4a175d11cdca82d54ba428a started:<PHONE_NUMBER>686; exited: 2018-10-15T07:19:35Z; ]
Oct-15 09:19:34.614 [Task monitor] INFO  nextflow.processor.TaskProcessor - [07/accb27] NOTE: Process `bwa (BEA17P061a_75)` terminated with an error exit status (137) -- Execution is retried (1)
Oct-15 09:19:35.098 [Task submitter] DEBUG nextflow.executor.GridTaskHandler - [SLURM] submitted process bwa (BEA17P061a_75) > jobId: 9313; workDir: <proj dir>/999c5ca65214f24f41b5359ba83a64
Oct-15 09:19:35.099 [Task submitter] INFO  nextflow.Session - [c9/999c5c] Re-submitted process > bwa (BEA17P061a_75)


feat: BTC signature

Introductory documents for the two signature methods of BTC, including examples of ecdsa signatures, the combination of Transaction and PSBT, and examples of schnorr signatures

pls add math formula of schnor

done