Uncaught TypeError: Cannot read property 'trim' of undefined

When i type in the search bar this show me the results, but when i click on a value the console give me this 'Uncaught TypeError: Cannot read property 'trim' of undefined', and my app don't reload the view until I deleted the value on search bar.
This error could appear if somehow inputProps.value ends up not being a string. Could you verify that it is always a string?
If you still can't figure this out, could you create a Codepen that reproduces the issue?

@moroshko where i could verify that is always a string?,this is mi full code:
import React, { Component } from 'react'
import ReactDom from 'react-dom'
import Axios from 'axios'
import Sound from 'react-sound'
import update from 'react-addons-update'

import Details from '../components/Details'
import Player from '../components/Player'
import Progress from '../components/Progress'
import Search from '../components/Search'

export default class App extends Component {
    constructor() {
        super()
        this.clientId = 'H1mb6cSHjS0dg9AvapNHmczj9zFtbcgJ'
        this.state = {
            track: {
                stream_url: '',
                title: '',
                artwork_url: ''
            },
            playStatus: Sound.status.PLAYING,
            elapsed: '00:00',
            total: '00:00',
            position: 0,
            playFromPosition: 0,
            autoCompleteValue: '',
            tracks: []
        }
    }

    componentDidMount() {
        this.randomSong();
    }

    onSuggestionsClearRequested() {

    }

    handleChange(event, value) {
        this.setState({ autoCompleteValue: value.newValue })
        let _this = this

        Axios.get(`https://api.soundcloud.com/tracks?client_id=${this.clientId}&q=${value.newValue}`)
            .then((res) => {
                _this.setState({ tracks: res.data })
                console.log(_this.state.track)
            })
            .catch((err) => {
                console.log(err)
            })
    }

    handleSelect(value, item) {
        this.setState({ autoCompleteValue: value.item, track: value })
    }

    handleSongPlaying(audio) {
        this.setState({
            elapsed: this.parseMilliseconds(audio.position),
            total: this.parseMilliseconds(audio.duration),
            position: audio.position / audio.duration
        })
    }

    handleSoundFinished() {
        this.randomSong()
    }

    parseMilliseconds(time) {
        let hours = Math.floor(time / 3600000)
        time = time % 3600000

        let minutes = Math.floor(time / 60000)
        time = time % 60000

        let seconds = Math.floor(time / 1000)
        time = Math.floor(time % 1000)

        return (
            (minutes < 10 ? '0' : '') + minutes + ':' +
            (seconds < 10 ? '0' : '') + seconds
        )
    }

    togglePlay() {
        if (this.state.playStatus == Sound.status.PLAYING) {
            this.setState({ playStatus: Sound.status.PAUSE })
        } else {
            this.setState({ playStatus: Sound.status.PLAYING })
        }
    }

    stop() {
        this.setState({ playStatus: Sound.status.STOPPED })
    }

    forward() {
        this.setState({ playFromPosition: this.state.playFromPosition += 1000 * 10 })
    }

    backward() {
        this.setState({ playFromPosition: this.state.playFromPosition -= 1000 * 10 })
    }

    randomSong() {

        let _this = this
        Axios.get('https://api.soundcloud.com/playlists/126995930?client_id=' + this.clientId)
            .then((res) => {
                const trackLength = res.data.tracks.length
                const randomNumber = Math.floor((Math.random() * trackLength) + 1)

                _this.setState({ track: res.data.tracks[randomNumber] })

                let track = _this.state.track
                track['artwork_url'] = _this.state.track.artwork_url.replace('large', 't500x500')
                _this.setState({ track: track })

            })
            .catch((err) => {
                console.log(err)
            })
    }

    formatUrl(url) {
        return `${url}?client_id=${this.clientId}`
    }

    render() {
        return (

            <Sound
                url={this.formatUrl(this.state.track.stream_url)}
                playStatus={this.state.playStatus}
                onPlaying={this.handleSongPlaying.bind(this)}
                playFromPosition={this.state.playFromPosition}
                onFinishedPlaying={this.handleSoundFinished.bind(this)} />
            <Search
                autoCompleteValue={this.state.autoCompleteValue}
                tracks={this.state.tracks}
                handleSelect={this.handleSelect.bind(this)}
                handleChange={this.handleChange.bind(this)}
                onSuggestionsClearRequested={this.onSuggestionsClearRequested.bind(this)}
            />

                    <Player
                        togglePlay={this.togglePlay.bind(this)}
                        stop={this.stop.bind(this)}
                        forward={this.forward.bind(this)}
                        backward={this.backward.bind(this)}
                        random={this.randomSong.bind(this)}
                        playerStatus={this.state.playStatus}
                    />

                <Progress
                    position={this.state.position} />

        )
    }

}

i am a bit new on react

You can check this in your AutosuggestContainer.js, or maybe your Search.js file.
What you should be checking is that the value that you pass as an argument to inputProps is a string value.
If you followed the examples in the doc, you should have something like this :
const inputProps = {
      placeholder: 'Type a programming language',
      value,
      onChange: this.onChange
};

where value is set by
const getSuggestionValue = suggestion => suggestion.name;
If you find the place where the value is set, you can check that you never return a value that is not a string. As an example, I had the same problem because I was returning suggestion.name but my data was on a different model, so I had to change to something like suggestion.myobject.myproperty.

I'm having the same issue as described here, except I'm 100% correct that my inputProps.value is always string. Using 9.1.0 version of react-autosuggest.

@Mateusz-Czarnik Could you create a Codepen that reproduces the issue?

Yes, I will try tomorrow.

I stumbled accross the same error. In my case was not a bug, but a misunderstanding of the onChange handler:
I used an onChange handler as I would on every other input:
onChange = (event) => {
  this.setState({ value: event.target.value })
}

While the Autosuggest component provides the new value not within event.target, but in the second parameter:
onChange = (event, { newValue }) => {
  this.setState({ value: newValue })
}

I just submitted a minor PR that includes a hint in the documentation: https://github.com/moroshko/react-autosuggest/pull/396

I am also getting the same error even I am using the same code.

@paliwalgaurav can you show your onChange handler?

Throwing this up here for anyone else that may run into this error. I ran into this and it ended up being my getSuggestionValue const. I had:
const getSuggestionValue = suggestion => {
  suggestion.username;
};

but it should have been:
const getSuggestionValue = suggestion => suggestion.username;

This worked for me , in case somebody needs it
    onChange = (event, { newValue }) => {         this.setState({             value: typeof newValue !== 'undefined' ? newValue : '',         });     };

Hi @philipstanislaus i got undefined variable newValue. This is my code:
<Input type="text" placeholder="Username" autoComplete="username" name="username" onChange={(e, {newValue}) => this.setState({username: newValue})}/>

@dafapramudya code looks fine – did you try this solution? https://github.com/moroshko/react-autosuggest/issues/368#issuecomment-341709014

I've been getting this error on the getSuggestionValue callback.  Turned out, this.setState wasn't updating my state variable for some reason.  The callback got invoked.  The context is correct.  Everything should work, but this.setState just wasn't working properly.  Perhaps, it's the async nature of this.setState and my call got queued, but I don't know for certain if it was or not.
I ended up assigning the value to my state variable directly and calling this.forceUpdate() directly afterwards in my callback.  I know it's not the cleanest solution, but it works.  Anyone else running into this problem should check to make sure this.setState is actually updating your variable.
I don't know if the issue is being caused by this component, but I post this in case someone else runs into this problem.

Throwing this up here for anyone else that may run into this error. I ran into this and it ended up being my getSuggestionValue const. I had:
const getSuggestionValue = suggestion => {
  suggestion.username;
};

but it should have been:
const getSuggestionValue = suggestion => suggestion.username;

this solved my case, thank you , can you explain what is the difference between them, i am new in react and cant see any difference

@fozerol IIRC in the first example, the arrow function is just executing suggestion.username, which does nothing since it's a string.  Without the braces, like in the second example, suggestion.username gets returned, which is why it works and the first one doesn't.  I never use the non-braced version and explicitly return my values; so, I might not be the best to explain this, but that's how it works if memory serves.

What fixed it for me is the following:
const getSuggestions = (input:any) => {     const inputValue = input.value.trim().toLowerCase();     const inputLength = inputValue.length;     return inputLength === 0 ? [] : data.filter(lang =>       lang.name.toLowerCase().slice(0, inputLength) === inputValue     ); };

What fixed it for me is the following:
 const getSuggestions = (input:any) => {
     const inputValue = input.value.trim().toLowerCase();
     const inputLength = inputValue.length;
     return inputLength === 0 ? [] : data.filter(lang =>
       lang.name.toLowerCase().slice(0, inputLength) === inputValue
     );
 };

tried this solution but I still have the same error

The issue is the with onChange handler only. I changed it to the following:
<Autosuggest
         suggestions={nameSuggestions}
         onSuggestionsFetchRequested={onSuggestionsFetchRequested}
         onSuggestionsClearRequested={onSuggestionsClearRequested}
         getSuggestionValue={getSuggestionValue}
         renderSuggestion={renderSuggestion}
         inputProps={{
           value: name,
           onChange: (e, { newValue }) => setName(newValue),
         }}
       />

having the same problem dont know how to solve this
function checkRequired(input) {
input.forEach(function(input) {
if (input.value.trim() === '') {
showError(input, ${getFieldName(input)} is required);
} else {
showSuccess(input);
}
});
}


Channel candidate selection issue in getChannelCandidates

I just noticed there is an issue with picking source channels if the intended source channel is in the exclude_channels_in list.
If I specify --from xyz and --exclude-channel-in xyz the xyz channel will be skipped completely. The reason is the continue in the 			if _, ok := r.excludeIn[c.ChanId]; ok check in getChannelCandidates (line 50 atm). It will skip all the code underneath it and not add the channel to the from list.
I also think that piece of code should be brought up before the balance check since it's not needed to check the balance if the channel is excluded.

Thank you, it's a known issue. It will be addressed in #24 as soon as it's merged. Stay tuned! Regarding the balance, agree, would be better to check that first.

Fixed in v1.7.0


mWeb Android - Profile - Removed avatar did not display semitransparent in offline

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Issue found when executing #10393
Action Performed:

Go to URL https://staging.new.expensify.com/
Login with any account
Click on Profile
Click on the avatar edit icon
Click on upload photo
Select any image of your choice>save
Kill the internet connection
Remove the photo

Expected Result:
The deleted avatar should appear semitransparent offline
Actual Result:
Removed avatar did not display semitransparent offline
Workaround:
Unknown
Platform:

Where is this issue occurring?

Mobile Web

Version Number: 1.1.92-0
Reproducible in staging?: Y
Reproducible in production?: Y
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos:
https://user-images.githubusercontent.com/43996225/186948286-49e46041-d5c7-4496-995f-fa6f3d993362.mp4
Expensify/Expensify Issue URL:
Issue reported by: Applause internal team
Slack conversation:
View all open jobs on GitHub

@Gonals It seems this should be working after you implemented this. Any idea why the QA passed when @Julesssss tested it but now it's not working?

Ah, wait! This is for the user's profile pic! Mine was for the workspace one! I think the profile one is still in the works.
@jasperhuangg, you were working on this, right?

Yep, I'll take a look!

Yeah, good spot @Gonals, this is a different issue.


Replace deprecated accessor argument

Existing Sample Changes
Description
The previous source code triggers a deprecation warning from the compiler.
This fix makes for a clean compile.
External Dependencies
List any external dependencies created as a result of this change.
Type of change
Please delete options that are not relevant. Add a 'X' to the one that is applicable.

[x] New feature (non-breaking change which adds functionality)

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration

[x] Command Line (oneAPI tutorial regression test in HLD team)
[ ] oneapi-cli
[ ] Visual Studio
[ ] Eclipse IDE
[ ] VSCode
[ ] When compiling the compliler flag "-Wall -Wformat-security -Werror=format-security" was used

@beltaurus - Please take a look at the error logs and fix accordingly

@beltaurus - Please take a look at the error logs and fix accordingly

This is actually the problem: this syntax is deprecated in the NEW release of dpcpp++.
That begs the question: when/how do we fix deprecated syntax in a coordinated fashion with the updates of the compiler.
I will see if this can be fixed by doing a compiler version check, and update the syntax when the compiler has a recent enough version....

@beltaurus please contact me directly via teams in regards to this


Fix generated links in Firefox

This fixes #181

Codecov Report

Merging #184 into master will decrease coverage by 0.4%.
The diff coverage is 0%.

@@            Coverage Diff             @@
##           master     #184      +/-   ##
==========================================
- Coverage   60.59%   60.19%   -0.41%
==========================================
  Files          35       35
  Lines        1774     1786      +12
  Branches      135      135
==========================================
  Hits         1075     1075
- Misses        699      711      +12

Impacted Files
Coverage Δ

lib/component/catalog_table.es6.js
6.19% <0%> (-0.12%)
:arrow_down:

lib/controller/api_confluence.es6.js
7.79% <0%> (-0.21%)
:arrow_down:

lib/client/api_service.es6.js
26.82% <0%> (-6.51%)
:arrow_down:

Continue to review full report at Codecov.

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


Add sample app and guide

Add a sample app to demonstrate use of the ILCompiler NuGet package now that we publish it for all target runtimes.
This doesn't work under non-Windows platforms - we don't yet statically link to CoreFX libraries (with the exception of System.Native). When we do, this can be merged.

The new CoreRT and CoreFX packages have been published with their respective daily builds and the sample works out of the box on Windows, Linux and OSX.


wrong/missleading comment for linux/macOS

This comment is copied from windows script:
https://github.com/devonfw/devon-ide/blob/02b7493440e987fdfcc516a67e754807dcb8b412/scripts/src/main/resources/variables#L3
It needs to adopted to linux/macOS

Done.


Add Update the return-status of a single return action to ReturnResource

Update the exising follow_up action to follow_up_multiple_lines
Add follow_up action to update the return-status of a single return

Can you also help bump the version of the gem?

In lib/monta_api/version.rb, update it to 0.1.4
Then run bundle in your terminal, it should update the gemfile.lock

After that, when this is merged, I will publish this to RubyGem, and then you can install the new version in project-tapir.

On project-tapir, we install monta_api gem from github repo. So i guess we don't need to install the new version?

Can you also help bump the version of the gem?

In lib/monta_api/version.rb, update it to 0.1.4
Then run bundle in your terminal, it should update the gemfile.lock

After that, when this is merged, I will publish this to RubyGem, and then you can install the new version in project-tapir.

On project-tapir, we install monta_api gem from github repo. So i guess we don't need to install the new version?

Ohh then yeah, but you still need to do bundle update monta_api


[Bug]: Convert Images to WebP Format for Improved GitHub Project Performance

Give a brief about the bug ✍
Currently, the images in our GitHub project are stored in the PNG/JPG image format. However, we would like to convert them to the more efficient WebP format. This conversion will help us reduce file sizes while maintaining image quality, leading to improved website performance and faster loading times. This issue aims to update the entire project's image assets from PNG/JPG to WebP format.
What is the expected behavior? 🤔
In order to optimize our project's image assets and enhance user experience, we propose converting all the PNG/JPG images to WebP format. WebP is a modern image format that offers superior compression capabilities without compromising visual quality. By leveraging this format, we can significantly reduce file sizes, resulting in faster load times and reduced bandwidth usage.
Provide step by step information reproduce the bug 📄

Start by identifying all the PNG/JPG images currently present in the project. This includes images used in HTML, CSS, JavaScript, or any other relevant files.

Utilize image conversion tools or libraries to convert each PNG/JPG image to the WebP format. Ensure that the conversion process maintains the original image quality as much as possible.

Once the images have been converted, update the references to the PNG/JPG images in the project's codebase. Replace the references with the corresponding WebP image paths to ensure seamless integration.

Thoroughly test the project after the conversion process to ensure that all images are displayed correctly and maintain their original quality. Verify that the project's functionality remains intact and that there are no broken image references or display issues.

Submit a pull request with the changes, making sure to include a clear description of the modifications made, the reasoning behind the conversion, and any relevant performance improvements observed.

Select program in which you are contributing
GSSoC23
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

Please assign me this issue so that I can work on this issue under GSSOC'23.

Hey @Avinash905 !
Thank you for raising an issue 💗
You can self assign the issue by commenting /assign in comment 😀
Make sure you follow CODE OF CONDUCT and CONTRIBUTING GUIDELINES 🚀
Don’t Forget to ⭐ our GameZone🎮
Make sure you join our Discord🕹

/assign

Hey @Avinash905 ! Thank you so much for your raising the issue💗
It’s all yours, you can come anytime again and make some contributions! 🚀
Alone, we can do little, but together we can do so much! 😇


Querydsl 4.2.1

hmm build failures?
(at least the output itself looks alright)

Core, codegen, apt?
Also, shouldn't it be --also-make (-am) not --also-make-dependents (-amd)?
Or did the quoting mean it didn't end up in the command line correctly?

I will clean it up, once the build passes

@Shredder121 Ready for merge?

👍 sorry figured I'd wait for the ping but missed it.

Released


Add metrics when history service writes activity task failed to even history

https://github.com/temporalio/temporal/blob/master/service/history/api/respondactivitytaskfailed/api.go#L124-L131
It would be imo useful to add counter metric here so that user can track how often service has failed activity for retries exhausted

Thanks for the feature request!
Right now, it's not possible to add a counter metric for failed retries but you can:

Use the Temporal CLI to inspect individual Workflow Execution histories to see the retry count.
Leverage custom metrics to track retries.
Use the Temporal UI to view retry attempts.

Let me know if you have any other questions!


stored proc support?

Is there a way to use stored procedures for crud operations in a Repository? This would likely help in cases where we have procs that do unique things and still need to be supported, but we also have repositories using plain generated SQL. The idea is we want to present a single, consistent crud interface to an application but give internal flexibility on how it's implemented.

You can already achieve this I believe by overriding these methods, supplying proc implementations instead of using the generated SQL.


Allow PCs to undo paper withdrawals

Program Chairs should have the ability to delete withdraw notes in order to un-withdraw submissions. The withdraw invitations need these changes in order to allow this:

The PCs need to be made invitees of the withdraw invitations, and
The PCs need to be made potential signatures of the withdraw invitation replies

@purujitgoyal and @nlbahy:
With @carlosmondra we discussed that only the PCs should be able to undo the withdrawal. If the author needs to undo the action, they should contact the PCs and make the request.
In NeurIPS we found several cases where authors undo withdrawn submissions that were not complete and they were taken into account in the paper matching.

The UI checks if the note is writable to show the edit/trash button, it doesn't read the signatures info.


Race condition during initramfs image creation in 1FA mode can lead to data loss

I just found a nice failure mode. I've been using this piece of software for a while on archlinux. Yesterday, I did a system upgrade, and the system hard crashed while pacman was re-building the initramfs images. The result was that the old images were deleted, but the new images were not yet written to disk.
On a normal arch setup, this is easily fixed by rebooting into a rescue image, then re-building the initramfs images. This does not work here, since the 1FA challenge is only stored inside the initramfs image, and inside the (encrypted) root partition. Thus, this system crash effectively shredded the disk encryption key.
I have a few suggestions on solutions for this.

Store a backup of the 1FA challenge in a plain text file on the boot partition, that is never touched or deleted afterwards.
Store the 1FA challenge somewhere in the LUKS header, or generate it from persistent data such as the volume UUID.
Ensure the old initramfs images are never ever deleted before the new images have been built. (ideally, after the new images have successfully booted at least once)

Hi, that's unfortunate situation, backups in some form (challenge, whole passkey, alternate password) are always strongly recommended for such cases I hope you had one of them.
Beside that I don't really see reasonable action on ykfde side - storing challenge on boot partition means where exactly - /boot, /boot/efi``/efi? Any of them may be used for boot. This is more a tip for user action who knows their system setup rather than the project.
Touching luks header is asking for trouble - imagine hard system crash while writing to it...only header backup could save you. Persistent challenge may be some idea although changing it would be hard then.
Initramfs creation process is something to discuss in https://gitlab.archlinux.org/archlinux/mkinitcpio/mkinitcpio . I'm surprised the old image was gone before the new was done or maybe it was extreme bad timing for crash.

I think storing a backup of the challenge in /boot during enrollment would be a reasonable action on the ykfde side. You can look at the output of mount(8) to find the right place:
$ mount|grep boot|cut -d' ' -f3|sort|head -n 1
/boot
$ echo $CHALLENGE > $(mount|grep boot|cut -d' ' -f3|sort|head -n 1)/ykfde_challenge_backup_$(date +%Y-%m-%d-%H-%M-%S).txt

You could even put a little shell script next to the backup file that contains the right invocation of ykfde-open to mount the disk from a live rescue system.
Additionally, a big fat warning in the README would be in order until this has been conclusively fixed given the chance of catastrophic data loss. I know it sucks when people get upset about something you consider a hobby project, but if your hobby project is the custodian to terabytes of users' data, you have some responsibility to get things right. "I hope you have a backup" is not an appropriate policy for software with a critical role like ykfde.
I'm not going to raise an issue over at mkinitcpio for two reasons, one is that I don't have the time to take on this fix. The other is that I'm reasonably sure they would respond that you just shouldn't store the only copy of a critical key in these images, and that ensuring this can't happen is out of scope for their project.

$ mount|grep boot|cut -d' ' -f3|sort|head -n 1
/boot

On my system /boot isn't boot partition and it's encrypted so storing challenge there will be useless. Solution that sometimes will work for someone isn't something we can rely on.

Additionally, a big fat warning in the README would be in order until this has been conclusively fixed given the chance of catastrophic data loss. I know it sucks when people get upset about something you consider a hobby project, but if your hobby project is the custodian to terabytes of users' data, you have some responsibility to get things right. "I hope you have a backup" is not an appropriate policy for software with a critical role like ykfde.

I agree that we should additionally warn about necessary backups in README. To clarify: backups aren't specific to ykfde usage - the challenge and/or password, the yubikey, the data itself MUST  be backed up otherwise you risk data loss regardless of what ykfde does. It doesn't matter if it's hobby or professional project  - having backup policy is pretty fundamental everywhere.

The other is that I'm reasonably sure they would respond that you just shouldn't store the only copy of a critical key in these images, and that ensuring this can't happen is out of scope for their project.

Well, leaving system without initramfs is certainly in scope and quite critical issue for mkinitcpio. Whether you used ykfde or not is isn't relevant  - you may have used encrypted keyfile stored in initramfs for unlocking. The issue you report is very serious but it's generic rather than ykfde specific.


ReconnectApp is called after sending or receiving message with reliableUpdates beta

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:
Break down in numbered steps

Be on an account with reliableUpdates beta - internal only
Send, or receive a message
Notice a ReconnectApp command is called
Its even triggering a full OpenApp which is bad for large accounts

Expected Result:
Describe what you think should've happened
Reconnect app should not be called
Actual Result:
Describe what actually happened
Reconnect app is called and triggers getting all the updates
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

Version Number: v1.3.71-6
Reproducible in staging?: Y
Reproducible in production?: N
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
Expensify/Expensify Issue URL:
Issue reported by: @mountiny
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1695109019955889
View all open jobs on GitHub

Its coming from https://github.com/Expensify/App/pull/27180 and @danieldoglas si trying ot find a fix, if he cant in next hour or so we would revert it

:wave: Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open StagingDeployCash deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:

Identify the pull request that introduced this issue and revert it.
Find someone who can quickly fix the issue.
Fix the issue yourself.

Good to close this then?

I think so! It's deployed to staging!

and prod


Switch to toml_edit from toml-rs for bevy_macro_utils

What problem does this solve or what need does it fill?
toml-rs is unmaintained and it's a TOML 0.5 compliant parser.
What solution would you like?
It would be nice to use toml_edit. It's a drop-in replacement, actively maintained and supports TOML 1.0. For example, Cargo now use it.

I'd be happy to tackle the PR for this.
But before starting, I'd like to have a confirmation from a more senior bevy-dev that this is a meaningful move. ( seems so to me).

Makes sense to me to follow cargo 👍


Add commander logic

This PR adds commander logic

@marabooy I don't have write access to this repo so I can't merge this PR


Facet wiring boxplot

Resolves #658
I have tested it fairly extensively

Will be good to use the variablesAreUnique function in all vizs after this is merged

thanks @bobular for your updates! 👍 So I have two choices to work with your faceted boxplot viz for adding custom legend: a) asking you to review/approve my custom legend works at both web-eda and web-components, then I can work with this branch for legend work; b) alternatively, approving this PR at first, then merge this work into my custom-legend branch. Actually I prefer the former because it would give more time to Jamie to work with layout and other works: as you know well, my custom-legend branch is ready for both histogram and barplot vizs.
If you agree with my opinion, can you please review/test/approve my cusom-legend branches ? Dave already approved my PRs at both web-eda and web-components


PSMDB-1487 Docs for 8.0

Change in docs/index.md missing - it still displays 7.0

Please remove distro ;)

@radoslawszulgo we don't list distro in this doc set


torchode for score-based models

Hi there, I have been trying to use this library for computing the likelihood of score based models as done in https://github.com/yang-song/score_sde_pytorch/blob/main/likelihood.py, but without success. Woudl it be possible to provide a working example?

I am sorry, but I don't have the capacity at the moment to implement a full score-based model as an example. I see that it might not work because torchode is only made for ODEs and I believe this requires an SDE solver, though you might be able to extend torchode to also solve SDEs. However, I cannot help you with that. Where exactly are you having problems? What is the error message you get?

Hey, no it does not update the model. It just lets you compute gradients with the adjoint method. But if you don't care about gradients and training, you can also just use the normal to.AutoDiffAdjoint.


[Test] Add conv2d Integrated test

~#678 [Test/Util] Update ini / debug info~
~#678 [IntegratedTest] Add batch normalization test~
~#703 [Test/Py] Add translayer~
[Conv] Fix convlayer backwarding

There was a miscalculation doing conv2d backwarding.

This patch fixes the issue.

With this patch, some test fails. I'll take a look and fix accordingly
within this commit

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee<EMAIL_ADDRESS>

[Test] Add conv2d Integrated test

dfc268a
This patch add conv2d integrated test

Model test passes, layer test failes due to bug fix

**Changes proposed in this PR:**
- add conv2d integrated test/generator
- add transLayer for channelfirst <-> channel last conversion

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee<EMAIL_ADDRESS>
resolves #705, #544

:memo: TAOS-CI Version: 1.4.20191203. Thank you for submitting PR #708. Please a submit 1commit/1PR (one commit per one PR) policy to get comments quickly from reviewers. Your PR must pass all verificiation processes of cibot before starting a review process from reviewers. If you are new member to join this project, please read manuals in documentation folder and wiki page. In order to monitor a progress status of your PR in more detail, visit http://nnsuite.mooo.com/.

:octocat: cibot: @zhoonit, A builder checker could not be completed because one of the checkers is not completed. In order to find out a reason, please go to http://nnsuite.mooo.com/nntrainer/ci/repo-workers/pr-checker/708-202011042033230.65910410881042-dfc268a3b48b75e73aec9b30cb719a6cd5332bd0/.

:octocat: cibot: @zhoonit, A builder checker could not be completed because one of the checkers is not completed. In order to find out a reason, please go to http://nnsuite.mooo.com/nntrainer/ci/repo-workers/pr-checker/708-202011051351050.80152606964111-30ac7ed2f8ae35c7198a170ed071aa4dc2bdd183/.

:octocat: cibot: @zhoonit, A builder checker could not be completed because one of the checkers is not completed. In order to find out a reason, please go to http://nnsuite.mooo.com/nntrainer/ci/repo-workers/pr-checker/708-202011051405530.36434006690979-c7dc477f08fdf04492d1437a0ebe9409c5d29536/.

:octocat: cibot: @zhoonit, A builder checker could not be completed because one of the checkers is not completed. In order to find out a reason, please go to http://nnsuite.mooo.com/nntrainer/ci/repo-workers/pr-checker/708-202011051635300.81852889060974-ac4060616bab8b0b6120d2baeead37634543aae2/.

:octocat: cibot: @zhoonit, A builder checker could not be completed because one of the checkers is not completed. In order to find out a reason, please go to http://nnsuite.mooo.com/nntrainer/ci/repo-workers/pr-checker/708-202011051716110.77599406242371-f734f407923bdbb49634955a1681f042bb122181/.

:octocat: cibot: @zhoonit, A builder checker could not be completed because one of the checkers is not completed. In order to find out a reason, please go to http://nnsuite.mooo.com/nntrainer/ci/repo-workers/pr-checker/708-202011051906370.30816006660461-d6f379e3b4d2fa8b1a55b55f0c777e263057a504/.

LGTM. Once this is merged to main, I recommend to run MNIST Test again.

@zhoonit Please run the MNIST test once and ensure that it reaches the ballpark of desired accuracy. Matching with tf is good but can be done after merging this PR too.

LGTM. Once this is merged to main, I recommend to run MNIST Test again.

@zhoonit Please run the MNIST test once and ensure that it reaches the ballpark of desired accuracy. Matching with tf is good but can be done after merging this PR too.

Do you have the number or how to generate a reference? Should I just match with tf result in confluence accuracy?

You can match with tf accuracy in confluence, or just train with tf locally and match.

reference:            #1500/1500 - Training Loss:   0.042008 >> [ Accuracy:  99.596774  - Valiadtion Loss :   0.04159 ]
previous (09/25): #1500/1500 - Training Loss: 0.0254604 >> [ Accuracy: 99.7984% - Validation Loss : 0.0251934 ]
this patch:           #1500/1500 - Training Loss: 0.0183812 >> [ Accuracy: 99.8992% - Validation Loss : 0.0181687 ]


no-array-index-key not triggered when spreading props

There's no warning or error when doing something like this:
people.map(({ name, email }, key) => {
  const props = {
    key,
    name,
    email,
  };

  return <Person {...props} />;
});

I realize this is a bit of an edge case, but maybe we can find a way to catch these uses as well.

No key here is being set to an array index; we don’t have a rule that checks for this.
I don’t believe it’s possible to get anything but undefined from props.key anyways, so it’d be the same as not passing it.

Sorry, I goofed the syntax on the example; key is not undefined, it was meant to be the second parameter on .map. When using this in real life scenarios, I don't get an eslint error nor does react complain about my iterables having no key.


Flipper plugin getting failed on android

The Flipper plugin was getting failed on android, when I tried to debug it I could see somehow the plugin which sets the reactContext is getting null, I couldn't draw any more points beyond that. can you folks please help me to solve this?

android config
// build details
versions.compileSdkVersion = 28
versions.buildToolsVersion = '30.0.3'
versions.minSdkVersion = 21
versions.targetSdkVersion = 31
versions.flipper = '0.125.0'

RN deps
"react": "17.0.2",
"react-native": "0.66.4",
"react-native-flipper": "0.125.0",
"react-native-flipper-performance-plugin": "^0.3.1",

Good debugging skills!
Interesting that the Flipper plugin instance is null here, we added a weird hack for Expo projects to pass the React Context from the bridge (https://github.com/bamlab/react-native-flipper-performance-monitor/pull/56)
Basically this plugin is also a native RN module, which is automatically linked and pass the react context to the current Flipper plugin when instantiated. So that's why I had removed the line to pass in the reactInstanceManager
But in your case, the bridge seems to be instantiated before the Flipper plugin, so safer to change the doc like you did!
Thanks for the PR!

Actually, even after reactInstanceManager as param. the flipper plugin is getting null. so it's still not solved for me. though reactInstanceManager is passed correctly still the flipper plugin gets null. can you help me with where to look at?

Oh my bad for closing then!
Yeah I've just realized passing reactInstanceManager doesn't actually do anything anymore
Can you try version 0.2.1 of the plugin?

Sorry I was sick, couldn't try it.
I will try this on Monday and will update soon

I tried it, but it didn't work.
we create our react context in the background, with createReactContextInBackground can that cause any issue?

Hey @AdityaPahilwani, hope you're feeling better!!
Ah indeed that might be the cause!
There's a simple example on the repo https://github.com/bamlab/react-native-flipper-performance-monitor/tree/master/example, if you have time, would you be able to check if it works if we use createReactContextInBackground?
That could at least make for a minimal reproduction example if it doesn't

I am really really sorry, recently moved to a new city so was busy with some problems here.
I will check this asap

Hey @AdityaPahilwani no worries of course! ☺
it's open source (and it's not even your repo), you don't have to feel obligated to do anything! I also didn't have the bandwidth to try it out
Hope you settle in well in your new environment then! ☺


v17: Migrate SubDAOs from distribution module -> gov

Closes #829
Ill be testing this locally to confirm with a mock upgrade and contract
Since this only runs on mainnet, there would be no way to test on Uni

cc @JakeHartnell lmk if there are any missing subdaos

cc @JakeHartnell lmk if there are any missing subdaos

List looks good.


ResumableInvocation doesn't implement Sync

I have the impression that all types of wasmi implement Send and Sync.
One notable exception is ResumableInvocation, that doesn't implement Sync.
In smoldot, I have to go through some hoops in order to bypass this problem, but maybe it's just an oversight?

I just checked it.
The ResumableInvocation is not Sync because its inner Stack field is not Sync which isn't Sync because CallStack is not Sync which is not Sync because CallFrame is not Sync due to holding raw pointers to stuff in the Engine. However, since ResumableInvocation is owning an Engine handle I think it should be safe to assume that it is Sync, right?

Well, I don't know the internals of wasmi.
Sync simply means that the same &ResumableInvocation can be accessed from multiple different threads at the same time.
To me the question isn't really whether ResumableInvocation should be Sync, but at which level in the stack of types the Sync implementation is missing.
The reason why raw pointers in Rust don't automatically implement Send and Sync is because the language designers want library unsafe code users to the fact that they should be aware of Send and Sync. Raw pointers themselves are completely Send and Sync.

Sync simply means that the same &ResumableInvocation can be accessed from multiple different threads at the same time.

That should be totally fine, especially since you cannot even do much with a mere & reference.


FlatButton linkButton label alignment

When I use <FlatButton linkButton label="Link" ... />, the label text is not centered within the button.

Closing this in favor of the PR.


How to add params for indexing document data

I am using injest-attachment plugin for ES and i want to index data(as shown below)
PUT my_index/my_type/my_id?pipeline=attachment
{
"data": "e1xydGYxXGFuc2kNCkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0DQpccGFyIH0="
}
how we can use the param(pipeline=attachment) with the jest plugin to index same data?

@ravichaudharylnt I was looking through the code and found that what you need to work with is Index
The problem with this abstraction is that you cannot access the setURI method. This means that once you have created the my_index/my_type/my_id internally, you cannot touch the URI.
I think if the code still needs to be shielded from the messing with the exact URI, there should at least be some functionality that allows you to set the pipelines you wish (if any).

Same thing goes for _/bulk requests.

Maybe something like this https://github.com/searchbox-io/Jest/pull/513

Hi @alexanderzafirov, is there any update on this issue, we also need the pipeline option for the bulk ingest :)

Hey all , any news about adding pipline support for Jest bulk operation ?

Hopefully, we will get our hands on new features after dealing with issues & bugs with Jest v6. Closing the issue for now.


Cleanup dependencies

Many of the dependencies could be optional, wildmatch, lazy_static, regex. Also not too sure about the use for the log crate. And the thiserror crate is only used once, so I don't think that is even necessary.
The currently optional dependencies could be removed and put into separate crates as described in #5.

Hi,
Optional dependencies make sense actually. Some of them are not optional in my opinion. Wildmatch is required for executing find, which could be made into a feature, but it's not really a huge crate, so I'm not going to make it a feature.
Thiserror is used once, but I use it as a standard in my projects, so I'll keep it anyway.

I think it's best to have as much modularity and optionality as possible; let the user take full advantage of what they possibly can.
I'd suggest making wildmatch optional behind a feature flag and setting it as a default feature (questionable?). I'm sure most people aren't going to be using the find method anyways so it could help get rid of unnecessary code and lower compile times.

I made find as a feature, so wildmatch is now an optional dependency. I'd say everything is fine for this issue.


[BUG] Stuck at capturing

Version
1.7.1 build 71
What platform are you using?
Android
OS Version
Android 11 degoogled
What happened?
When trying to scan the page below, the app is getting stuck in capturing. If switching the app and coming back, it is fully stuck without any movement.

Relevant log output
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

@cd-FileX are you scanning by importing that image? or are you using the camera?
if you are using the camera, what are your settings? Like autoscan, batch mode ...
Does it only happen when scanning this page? Or does the app always "hang" while scanning?

@cd-FileX btw in your issue you mention 1.7.1 which is quite an old build. Could you try and upgrade to latest?


Voice message board v1.4.2 | speech feature is broken when switching to landscape mode

Expected behavior
The speech feature should still work when switching to landscape mode
Actual behavior
When switching to landscape mode, the Speech feature is broken and no longer works
How to reproduce

Download app on playstore
Open the app
click on "TAP HERE" to talk
please speak in portrait mode and  get the result
wait a moment and please switch to landscape mode
please talk, it does not work anymore

Device: ONE PLUS 2 OxygenOS Version 3.6.1
Operating System:Android 6.0.1
App Version :1.4.2
Recording of the bug
https://youtu.be/8Odr4DYplNc

Fixed. https://github.com/ohmae/VoiceMessageBoard/commit/8f8363b1c64ee0150a879fa1c0f7613c59460c54
Wait a while for the release.

Is this a bug of this application!?


Fixed bugs in benchmark, and speed up testing

Fixed div-by-zero bugs in column map testing, primary key detection, and foreign key detection
Optimized output table layouts
Implemented data sampler to speed up testing

address #28 #20 #27 #23 #22 #19 #17 #15


buildFHSEnv misses dconf profile

Describe the bug
GTK program built with build-fhsenv-bubblewrap like Lutris misses profile created via programs.dconf.profiles
Steps To Reproduce
Steps to reproduce the behavior:

Install Lutris
Provide settings like theme via programs.dconf.profiles
Run Lutris

Expected behavior
dconf profile linked in FHS environment of Lutris, so Lutris applies theme or other GTK settings
Additional context
build-fhsenv-bubblewrap should link /etc/dconf into FHS like these
Metadata
 - system: `"x86_64-linux"`
 - host os: `Linux 6.6.32, NixOS, 24.05 (Uakari), 24.05.20240531.805a384`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.18.2`
 - channels(root): `""`
 - nixpkgs: `/nix/store/i1aw9jjgxcvyd642s12kw3iasmarwd42-source`

Notify maintainers
@K900 @SuperSandro2000 @Atemu
Note for maintainers: Please tag this issue in your PR.

Add a :+1: reaction to issues you find important.

Can you name an example gtk program? What is the path of such a file?

Example gtk program is Lutris
Path is /etc/dconf/profile/user. The db is generated by NixOS module programs.dconf for example:
      programs.dconf.profiles.user.databases = [{
        settings."org/gnome/desktop/interface" = {
          gtk-theme = "Adwaita";
          icon-theme = "Adwaita";
          cursor-theme = "Adwaita";
          font-name = "Cantarell 11";
          cursor-size = gvariant.mkInt32 24;
        };
      }];

The settings are not picked by Lutris unless I manually add dconf value into etcBindEntries of buildFHSEnv

If that fixes it, just shoot a quick PR :)

@atemu sure https://github.com/NixOS/nixpkgs/pull/359595


Add one-step syntax to encode & print with an implicit Printer

In most of my use of Circe I'm moving directly back and forth between string-encoded JSON and the matching case classes.  Since all of the configuration options for Circe's JSON serialization are in Printer and there's currently no way to globally set the default serialization options it would be nice to have a quick, easy, safe and idiomatic way to use/reuse a single Printer without having to remember to explicitly wrap every piece of io.circe.Json -- i.e.: to be able to myObj.printJson rather than always myPrinter.pretty(myObj.asJson).
To solve this I'm proposing the addition of something like this to EncoderOps in the syntax package:
    final def printJson(implicit encoder: Encoder[A], printer: Printer): String =
      printer.pretty(encoder(wrappedEncodable))

PS: It might also be worth renaming the pretty method one day, since it is used to print both prettily and compactly and various shades in between.

Closing in cleanup run, If anyone cares about this, please comment and I'll reopen.


More than 10 arguments in R.lift?

I'm making an app to convert sets of array from user input into a cartesian product. Example on http://typography.philipyoungg.com
Based on schema below...
title: {
      type: 'text',
      properties: {
        fontFamily: ['Lato', 'Playfair Display', 'Open Sans'],
        fontSize: ['3rem'],
        fontWeight: [500, 'bold'],
        fontStyle: ['normal'],
        textTransform: ['none', 'uppercase'],
        color: ['#333', 'mediumblue'],
        lineHeight: ['1.2'],
        marginBottom: ['8px'],
        letterSpacing: ['-0.025em'],
        text: ['Guns, Germs, and Steel'],
      },
    },

R.compose(R.apply(R.liftN(10, R.unapply(R.identity))), R.values, R.prop('properties'))(title)  // <— works well

I tried to add more than 10 array and got an error.
First argument to _arity must be a non-negative integer no greater than ten
I've tried to read the source code and it seems LiftN limit this to 10.
So I tried this.
const arg12 = (a, b, c, d, e, f, g, h, i, j, k, l) => [a, b, c, d, e, f, g, h, i, j, k, l];
R.lift(arg12))(title)

and the same error still produced.
How do I solve this?

Back in #372 and #373, Ramda made the decision not to support functions of more than ten parameters.  We thought that overgenerous, thinking that more than three or four was already on pretty shaky grounds.
Although we'd certainly never thought about a case like yours, I also don't see an easy way to relax the constraints to allow it.
Any suggestions are welcome.

@CrossEye Just looked at the source code. Now understand that it'll change Ramda's arity function. Guess it's easier to use another library to create the cartesian product.
Appreciate your help! Ramda is a fantastic library. 💪

@philipyoungg:
I'm glad you found something that works.  That looks like a nice implementation.  Ramda's xprod is meant only for two lists.  But you can fold over it with something like
const xproduct = lift(reduce(pipe(xprod, map(flatten))))(head, tail)

(That would take a list of lists.  To get the same variadic API, just wrap it in an unapply.)
Or you could create a version much like the one shown using Ramda functions with something like
const xproduct = unapply(reduce(
  (acc, set) => unnest(map(x => map(y => [ ...x, y ], set), acc)),
  [[]]
));

I'm not suggesting either.  The function you found looks nice.  I just wanted to point out some of the Ramda options.

@CrossEye that's cool! Gonna change it to yours.
Could you help me understand the first xproduct?
const xproduct = lift(reduce(pipe(xprod, map(flatten))))(head, tail)

Been stuck for hours trying to understand it...

I would, except that it's the horrible result of sleepiness.  I solved the same problem twice in two different ways in that solution.  A much, much better version is the simpler:
const xproduct = reduce(pipe(xprod, map(unnest)), [[]])

Again, this could be wrapped in unapply if you don't like making a list out of your inputs.

If you really want to understand what was going on in that solution, a naive version would be to wrap up the results of xprod in some sort of fold.  Since this is xprod:
xprod(['small', 'medium', 'large'], ['red', 'green']);
//=> [["small", "red"], ["small", "green"], ["medium", "red"] /*,  ... */]

would this be enough?:
const xproduct = reduce(xprod, [[]])

No, because with this version,
xproduct([['small', 'medium', 'large']])
//=> [[[], "small"], [[], "medium"], [[], "large"]]

And here I went down the wrong path.  Ramda has not had foldl1 since way back in #20.  But it's a clear thing to want, a fold that takes its initial accumulator from the head of the list.  I wrote a quick wrapper to allow this function to grab the initial accumulator from the head, rather than supplied as [[]] separately.
const xproduct = lift(reduce(xprod))(head, tail)

I do this with lift, with the interpretation that I lift a function (reduce(xprod)) that operates on two values into one which operates on functions which return those values.  So I will pass one list into the result, which will be passed to both head and tail and then lift will pass the two resulting values into reduce(xprod).  I could have done something very similar with converge, which is slightly more powerful.  But converge is very much Ramda-specific, whereas lift is well known in the FP world.  If I don't need converge's additional power, I will stick with lift.
This now works as expected for that first case:
xproduct([['small', 'medium', 'large']]);
//=> ["small", "medium", "large"]

And it works for the next case:
xproduct([['small', 'medium', 'large'], ['red', 'green']);
//=> [["small", "red"], ["small", "green"], ["medium", "red"] /*,  ... */]

So I could hope I was done....  However, there was a problem:
xproduct([
  ['small', 'medium', 'large'],
  ['red', 'green'], //, 'blue']
  ['shirt', 'jeans', 'shoes']
]);
//=> [[["small", "red"], "shirt"], [["small", "red"], "jeans"], [["small", "red"], "shoes"],
//    [["small", "green"], "shirt"] /*, ... */]

I could see a fix for this problem.  I had to do one level of flattening as I went.  Ramda has flatten and unnest for this.  I'll blame sleepiness for my not realizing that I could have just chosen the simpler unnest.   I sent my note (forgetting to note that this wouldn't work properly for the empty case because of the head call), responded to a few more issues and went to bed.
But what I didn't think about was that this second fix, adding the flatten, also fixed the initial problem I had as well.  I didn't need the whole lift/converge solution at all!
So this is a much better solution:
 const xproduct = reduce(pipe(xprod, map(unnest)), [[]])

(unnest doesn't try to delve deeper to flatten nested lists, so it's probably better than flatten here, although I haven't looked back at the implementation in a while.)
So the moral of the story is not, "Don't code when you're sleepy."  It's just "Don't publish your code when you're sleepy!"  :smile:

@CrossEye fantastic. Thank you for dissecting the function step by step. Read it several times, and now starting getting hang of it. Really appreciate your help for this!
By the way, wouldn't change xprod to
const xproduct = unapply(reduce(
  (acc, set) => unnest(map(x => map(y => [ ...x, y ], set), acc)),
  [[]]
));

...makes more sense ? It accept n number of arguments and return the cartesian product, while xprod limit it to two. ☺

@philipyoungg:
It might make sense to have such a function in place of or alongside our simple xprod.  We would definitely not want exactly that version (with the unapply) as Ramda avoids variadic functions.  But one that took a list of lists might be a good idea.
I don't get the sense, though, that this is one used much in Ramda.  It's there because in the early days there was no one to stop me putting in functions I personally found useful even if they weren't generally applicable.  :smile:
So perhaps the best bet would be to get this on in the Cookbook and then think about moving it to the main library if there are further requests for it.

@CrossEye
Agree with your view. The unapply isn't really needed. 😊
Yes, I believe xprod is a very specific case and not very general function (unlike map, reduce, etc). But I think it'll helps a lot of people using this in the future.
My reasoning:

There's already xprod in Ramda.
xprod only take 2 arguments, meanwhile eddmann's implementation took n number of list. Hence: more flexible.

…therefore, there's actually no loss at all implementing this one.
By the way, I'm really intrigued by your xproduct function before and explore it more deeply—especially the lift function. So I took my time to learn it and try to help the community back by answering this http://stackoverflow.com/questions/39545916/how-come-i-can-pass-functions-to-a-lifted-r-divide/41411109#41411109.
All credits to you, @CrossEye! 🤘
p.s. Happy New Year!

My application is built in react redux which has more than 10 properties in the state. When I tried to bind the redux state with ramda, I see the above error.
I have looked on the source code, changing the default switch in _arity.js and nAry.js seems fixed the issue.
default:
        return function (...args) {
          return fn.call(this, ...args);
        };

@venba: We will switch to something like that after v1.0.  Current versions of Ramda still support ES3/ES5.

I had trouble trying to type this function in TypeScript. Here's my best attempt that actually works:
const nxprod = <T>(list: T[][]) =>
  list.reduce(
    (newlist, domain) => R.xprod(newlist, domain).map(([xs, y]) => [...xs, y]),
    [[]] as T[][]
  );

It's not point-free, and I had to replace unnest with an explicit append function. (Which should be equivalent to flip(append)), but somehow isn't)


JMS implementation seems incompatible with RabbitMQ JMS

Current Behavior
When using the JMS provider for rabbitMQ, java.lang.UnsupportedOperationException is thrown when attempting to send messages to queues or topics.
This seems to be caused by the rabbitMQ JMS that is missing method implementations that the JMSFacade and JMSPoolSession are expecting, such as setMessageListener() in RMQSession.java:
public void setMessageListener(MessageListener listener) throws JMSException {     // not implemented     throw new UnsupportedOperationException(); }
The above might be caused by RMQ JMS not supporting server side sessions (https://rabbitmq.github.io/rabbitmq-jms-client/2.x/stable/htmlsingle/index.html, limitations) but I'm not sure.
Stack trace is attached.
ff stacktrace.txt
Expected Behavior
Successfully send messages to AMQP queues or topics on rabbitMQ.
Environment Information

ff 9.0 latest
amqp-client-5.23.0.jar
rabbitmq-jms-3.4.0.jar

Steps To Reproduce
Run framework with attached config, setup resources.yml:
  - name: "rabbitmq"
    type: "com.rabbitmq.jms.admin.RMQConnectionFactory"
    url: "amqp://host.docker.internal:5672/"
    properties:
      virtualHost: "/"
      host: "host.docker.internal"
      username: "admin"
      password: "password"

Open http://localhost/api/test/ in your browser, receive the attached stack trace.
Configuration
<Configuration name="Config">
	<JmsRealms>
		<jmsRealm realmName="jms" queueConnectionFactoryName="jms/rabbitmq" topicConnectionFactoryName="jms/rabbitmq"/>
	</JmsRealms>

    <Adapter name="Adapter">
        <Receiver name="ApiReceiver">
            <!-- This listener is used when the API is called as specified in OpenAPI 3.0 at the Webservices page -->
            <ApiListener
                name="ApiReceiverListener"
                uriPattern="test"
            />
        </Receiver>
        <Pipeline>
            <EchoPipe name="OutputNoOpenZismuts" getInputFromFixedValue="blaat">
            </EchoPipe>

            <SenderPipe name="event-payload-sender">

                <JmsSender transacted="false" synchronous="true" jmsRealm="jms" deliveryMode="PERSISTENT" messageClass="TEXT" lookupDestination="false" destinationParam="destination" jndiProperties="jndi.properties" acknowledgeMode="auto" destinationType="QUEUE">

                    <Param name="destination" value="zismut" />
                </JmsSender>
            </SenderPipe>
        </Pipeline>
    </Adapter>
</Configuration>

Input
No response
What database are you using?
No response
What browsers are you seeing the problem on?
No response
Relevant Log Output
No response
Anything else?
No response

UPDATE:
When I remove the explicit UnsupportedOperationException() throws from the rabbitmq JMS package, I do get valid messages in my queue, but the frank!framework still throws because it does not get valid responses:
rg.frankframework.core.ListenerException: Pipe [event-payload-sender] caught timeout-exception: did not receive reply on [RMQDestination{destinationName='jms-temp-queue-649e8867-238d-4b38-862b-7a0165d1144f', queue(temporary)', amqpExchangeName='jms.temp.queues', amqpRoutingKey='jms-temp-queue-649e8867-238d-4b38-862b-7a0165d1144f', amqpQueueName='jms-temp-queue-649e8867-238d-4b38-862b-7a0165d1144f'}] requestMsgId [ID:a07c1c08-d2a8-4578-ba8d-7cc0da0c721b] replyCorrelationId [null] within [5000] ms
	at org.frankframework.core.Adapter.processMessageWithExceptions(Adapter.java:621) ~[frankframework-core-9.0.0-20241213.042326.jar:9.0.0-20241213.042326]
	at org.frankframework.receivers.Receiver.processMessageInAdapter(Receiver.java:1286) ~[frankframework-core-9.0.0-20241213.042326.jar:9.0.0-20241213.042326]
	at org.frankframework.receivers.Receiver.processRequest(Receiver.java:1060) ~[frankframework-core-9.0.0-20241213.042326.jar:9.0.0-20241213.042326]
	at org.frankframework.http.PushingListenerAdapter.processRequest(PushingListenerAdapter.java:106) ~[frankframework-core-9.0.0-20241213.042326.jar:9.0.0-20241213.042326]

RMQSession#setMessageListener, the problem function, is actually not called by us, but by org.messaginghub.pooled.jms.JmsPoolSession during the closing of a server side session. This is problematic, because I can't simply wrap a try catch around it and make it work. jms-client-compliance.md does indeed state that server side sessions are not supported.
The asynchronous variant not working seems to have something to do with setMessageListener not actually doing anything. It doesn't sent a response back, so a timeout is triggered within the framework. I've tried to implement this method myself, but I my attempt was sadly unsucesfull.

@thomaspj10 I think this means that using RMQ through JMS is simply not viable right now. I think moving towards a native RMQ Facade/Browser/Listener/Sender seem inevitable to me.

We do seem to have decent RabbitMQ support, but there are limitations. I can add messages to the queue and read messages from the queue using the following setup:
You do not have to modify the rabbitmq-jms-client for this.

ampq-client-5.23.0
rabbitmq-jms-3.4.0

rabbitmq-plugins enable rabbitmq_jms_topic_exchange is executed in a sh script in the Dockerfile entrypoint.
synchronous=true, is not possible, because selectors are not implemented in the JMS client. The Frank!Framework heavily depends on this, so that's why this breaks.
docker-compose.yml:
services:
  frankframework:
    volumes:
        - "./resources:/opt/frank/resources/"
    environment:
      transactionmanager.narayana.jms.connection.maxPoolSize: 1
    image: private.docker.nexus.frankframework.org/frankframework:9.0.0-SNAPSHOT
    ports:
      - "80:8080"

  rabbitmq:
    image: myrabbitmq:latest
    ports:
      - "5672:5672"
      - "15672:15672"
    volumes:
      - "./rabbitmq.conf:/etc/rabbitmq/rabbitmq.conf"

resources.yml:
jdbc:
  - name: "h2"
    type: "org.h2.jdbcx.JdbcDataSource"
    url: "jdbc:h2:mem:ibis4test;NON_KEYWORDS=VALUE;DB_CLOSE_ON_EXIT=FALSE;DB_CLOSE_DELAY=-1;TRACE_LEVEL_FILE=0;"
jms:
  - name: "rabbitmq"
    type: "com.rabbitmq.jms.admin.RMQConnectionFactory"
    url: "amqp://host.docker.internal:5672/"
    properties:
      virtualHost: "/"
      host: "host.docker.internal"
      username: "guest"
      password: "guest"

Configuration.xml:
<Configuration name="Config">
	<JmsRealms>
		<jmsRealm realmName="jms" queueConnectionFactoryName="jms/rabbitmq" topicConnectionFactoryName="jms/rabbitmq"/>
	</JmsRealms>

    <Adapter name="Adapter">
        <Receiver name="ApiReceiver">
            <ApiListener
                name="ApiReceiverListener"
                uriPattern="test"
            />
        </Receiver>
        <Pipeline>
            <SenderPipe name="event-payload-sender">

                <JmsSender synchronous="false" jmsRealm="jms" deliveryMode="PERSISTENT" messageClass="TEXT" lookupDestination="false" destinationParam="destination" destinationType="QUEUE">

                    <Param name="destination" value="nameOfTheQueue" />
                </JmsSender>
            </SenderPipe>
        </Pipeline>
    </Adapter>

    <Adapter name="Reader">
        <Receiver name="receiver">
            <JmsListener name="jmsListener" destinationName="nameOfTheQueue" jmsRealm="jms" destinationType="QUEUE">

            </JmsListener>
        </Receiver>
        <Pipeline>
            <EchoPipe name="hello">
            </EchoPipe>
        </Pipeline>
    </Adapter>
</Configuration>

Hope this is enough for you to use RabbitMQ :)


Hi, How do you calculate speed of sound?

Hi
I want to use the IAPWS_IF97 in matlab.
does it have any function for speed of sound?

Sadly I don’t remember how to calculate the speed of sound but luckily there are references

http://www.iapws.org/relguide/IF97-Rev.html says:

Appropriate combinations of derivatives from this equation can produce any thermodynamic property desired (density or specific volume, sound speed, heat capacity, enthalpy, entropy, etc.).

And Wikipedia:
c = sqrt(dpdrho_s)


Update AB Proxy URLs

We're (Instructure) migrating the AB Proxy to our new infrastructure. This means new URLs (domain names) for the proxy. We're going to support the existing ones for a while, though.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Balazs Gida seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

@gidabyte I tested these URLs yesterday and they are just returning 404. Are you still involved in this work for Instructure, or if not do you know whom I should contact? Please feel free to send me email stephen.fuqua at ed-fi.org.

@stephenfuqua I'm no longer involved. IIRC the root URL will always return 404, that's the expected behaviour. However, the API has a dedicated health check endpoint at /api/status which should return a 200 status code along with an empty response body.


Hangs on URL

Following URL hangs for > 10 mins:
http://dx.doi.org/10.5586/aa.2005.010

This is almost certainly a duplicate of #62


Build process can't find Catch2

I'm attempting to build Etaler with:

TBBROOT=/usr
export TBBROOT
cp ../Catch2/include/catch.hpp tests/.
cp -r ../cereal/. Etaler/3rdparty/.
mkdir build
cd build
cmake ..
make -j1

But I quickly get the following error:

-- Performing Test HAVE_CXA_DEMANGLE
-- Performing Test HAVE_CXA_DEMANGLE - Success
CMake Error at tests/CMakeLists.txt:4 (find_package):
By not providing "FindCatch2.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "Catch2", but
CMake did not find one.
Could not find a package configuration file provided by "Catch2" with any
of the following names:
Catch2Config.cmake
catch2-config.cmake

Add the installation prefix of "Catch2" to CMAKE_PREFIX_PATH or set
"Catch2_DIR" to a directory containing one of the above files.  If "Catch2"
provides a separate development package or SDK, be sure it has been
installed.
-- Configuring incomplete, errors occurred!
See also "/home/dstromberg/src/etaler/src/build/CMakeFiles/CMakeOutput.log".

Am I putting Catch2 in the wrong place?
Thanks!

Oh, and I'm on a Linux Mint 19.1 system, using an Etaler checked out earlier today.

@dstromberg You'll need to install Catch2 to system. As we initially decided that Catch2 is too big of a library to be included as a sub-module. The CMake script we wrote only works when Catch2 is installed to system. The following command should do the trick.
 $ git clone https://github.com/catchorg/Catch2
 $ mkdir build
 $ cd build
 $ cmake ..
 $ make
 $ sudo make install

Also, you might want to install cereal to system too. Though putting it in the 3rdparty directory should also work.
Or if you want a simpler solution. If you are not interested in running the tests, you can disable the tests using the ETALER_BUILD_TESTS flag.

Update: I believe the instructions are added for Windows support. And they might not work with Linux.

I'm trying to run this repo on ubuntu 18.04,
TBB dependency was easy with apt install libtbb-dev

As we initially decided that Catch2 is too big of a library to be included as a sub-module. The CMake script we wrote only works when Catch2 is installed to system.

as a dependency that likely needs building from source, it would be nice if you could automate the process. (ie installed during cmake)

as a dependency that likely needs building from source, it would be nice if you could automate the process. (ie installed during cmake)

Yeah.. I agree.. On my to-do list!

@dkeeney has implemented this for htm.core, cmake uses "downloadProject" to pull and build any other external deps during configuration phase. It works really nice
For example,
https://github.com/htm-community/htm.core/blob/master/external/eigen.cmake

@breznak BTW, if you just want to build the library and don't care about using it. You can use the docker build scripts.

ad docker: nice! :+1: I didn't see that's available. Yes, for start I want to just try to build and run a few examples.

@breznak  - I PR (few minutes ago) martin  with an updated docker with works on my linux machine and contains all dependencies (except the catch2 - which I disabled in cmake file) -

@alior101 Thank you! Review is in progress.

@alior101 Just double checking. Does your PR fix this issue?

yes, downloading and putting directly in place seems to fix it - at least
in my docker image ..
On Fri, Aug 2, 2019 at 5:56 AM Martin Chang<EMAIL_ADDRESS>wrote:

@alior101 https://github.com/alior101 Just double checking. Does your
PR fix this issue?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/etaler/Etaler/issues/33?email_source=notifications&email_token=AAXET3AEYILOFKVPTGDQRXTQCOO5LA5CNFSM4H6UI6OKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD3MNWUQ#issuecomment-517528402,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAXET3B5FXT7CVNFLRJ6MPTQCOO5LANCNFSM4H6UI6OA
.

I guess this issue is resolved. closing.
Feel free to re-open if anyone still have the problem.


Use file_get_contents when in CLI mode & no certs

Use file_get_contents when in CLI mode with no root certificates for cUrl. file_get_contents can natively use system root certificates.
Relates to #954

I've implemented the suggested changes and everything still works.

It would probably be neater if I put all the cUrl stuff in a conditional statement. Is this ok?

Thanks for the updates! You are right, separating implementation makes sense. The function has become very large, so it needs refactoring in the future, but we'll leave that for another time. Merging now...


Gnome Shell 45 support

Hi,
Would it be possible to add support for Gnome Shell 45.1?
I tried to load the current one with disabled version check but it fails anyway. I haven't dug into logs for a detailed error but may take a look if needed.
Regards,
Vlad

I think we just need to add 45 to this line:
https://github.com/Rheddes/vpn-toggler/blob/cb5344671ca336541e88a98cff624e9d2143054a/metadata.json#L7

@p-gonzo , I tried it, dosn't work. But... it allowed me to copy an error message from GUI without going into logs:
`SyntaxError: import declarations may only appear at top level of a module
Stack trace:
@file:.../gnome-shell/extensions/vpn-toggler@rheddes.nl/prefs.js:32:24
_init/GLib.MainLoop.prototype.runAsync/</<@resource:///org/gnome/gjs/modules/core/overrides/GLib.js:266:34
`


The limitation of Maximum supported IP ranges with this feature indicates customer can only use self-hosted agents with Azure DevOps

Background:
Customer wishes to enable the feature of authorized IP ranges when they are using Azure DevOps to manage their AKS cluster.
Issue:
The source IP with MS-hosted agents is randomly changed and the count of the IP ranges for most region is over 200. But there is a limitation with AKS that the upper limit for the number of IP ranges you can specify is 200 which means if customers want to enable this feature, they can only choose to use self-hosted agents.
Change needed.
There should be a notification here to let customer know it because I have seen several cases that customer can't use this feature because of using MS-hosted agents.

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

ID: 660320d4-fad5-3307-e29f-5f4cfad4b7f7
Version Independent ID: 85ac2e8b-633f-6e1a-e642-0645ca92e129
Content: API server authorized IP ranges in Azure Kubernetes Service (AKS) - Azure Kubernetes Service
Content Source: articles/aks/api-server-authorized-ip-ranges.md
Service: container-service
GitHub Login: @mlearned
Microsoft Alias: mlearned

@superstandy Thanks for the feedback! We are currently investigating and will update you shortly.

@superstandy Thanks for the feedback! We are currently investigating and will update you shortly.

@mlearned @zr-msft
Can you please check and add your comments on this doc update request as applicable.

@mlearned @zr-msft
Can you please check and add your comments on this doc update request as applicable.

Hi @superstandy,
In your release pipeline you can add AzureCLI and execute:
AGENT_IP=$(curl ifconfig.me) az aks update --resource-group <rg_name> --name <aks_name> --api-server-authorized-ip-ranges ${AGENT_IP}
before the deployment. This will authorize only the ip of the build agent only.
After that you should execute bash "sleep" for 2-3 minutes.

Hi @superstandy,
In your release pipeline you can add AzureCLI and execute:
AGENT_IP=$(curl ifconfig.me) az aks update --resource-group <rg_name> --name <aks_name> --api-server-authorized-ip-ranges ${AGENT_IP}
before the deployment. This will authorize only the ip of the build agent only.
After that you should execute bash "sleep" for 2-3 minutes.

Thank you for the feedback.
We've added a task to our backlog and will prioritize accordingly.
#please-close


Issue example requires yarn

Just thought I'd point out something that might be confusing to some.
In the README for the Issue example, there are instructions for both npm and yarn users:
    # npm users:
    npm start

    # yarn users:
    yarn start

When I went through the instructions without having yarn installed, I got an error:
$ npm start

> yarn run relay; concurrently --kill-others --names "react-scripts,relay" "react-scripts start" "yarn run relay --watch"

sh: yarn: command not found
[relay] /bin/sh: yarn: command not found
[relay] yarn run relay --watch exited with code 127

My point is, if yarn is required and yarn is not included as a dev dependency should the README include npm instructions at all?
Would recommend either:

Removing npm examples from the README
Adding yarn as a dev dependency

I think yarn run can be safely replaced with npm run here (if someone uses yarn, I think yarn automatically replaces npm with yarn for these scripts)


[azure] Error getting user email from external provider

Bug report
Describe the bug
I am not able to let users login through azure provider. I followed this guide.
To Reproduce
Follow the guide and you will see the following error in the Authentication Logs of the supabase project:
{"component":"api","error":"Unable to find email with Azure provider","level":"error","method":"GET","msg":"500: Error getting user email from external provider","path":"/callback","referer":"","remote_addr":"<IP_ADDRESS>","time":"2022-09-14T11:33:53Z","timestamp":"2022-09-14T11:33:52Z"}

Expected behavior
The user should be able to sign in with azure.
Additional context
I am trying to do the login in a flutter desktop application, but I don't think that matters, as it fails on the supabase server side.

Closing as a duplicate of #550

https://github.com/supabase/gotrue/issues/550#issuecomment-1299111066


[NETBEANS-54] Module Review db

external library derby-<IP_ADDRESS>.jar: ALv2 licensed, notice
added, Maven coordinates added.

checked Rat report; missing license headerd added,
unrecognized license headers manually changed, ignored
l10n.list, manifest.mf, org-netbeans-modules-db.sig and
*.form (see central problems)

skimmed through the module, did not notice additional problems

Can one of the admins verify this patch?

@svenreimers @jlahoda I reverted the fix for the unittest to get this merged at some point, but I don't agree with your assessment.

Matthias, you are an Apache Netbeans committer, right? So you should be able to push this directly to the apache repository (https://git-wip-us.apache.org/repos/asf/incubator-netbeans). (I would suggest to rebase the changes before merging so that there's no actual merge commit, but up to you, I am not a git expert.) Please let me know if you need any help.
Thanks for working on this!

@svenreimers @jlahoda thanks for taking time for review!
I merged the change into master. I'm manually closing this here, as the merge was done as a fast-forward merge and so no merge commit was created.


Restore rubocop

I have attempted to restore rubocop

I think I may have branched from an older version of your branch and potentially done double work.

Oh! nevermind. I just had the wrong base name. it is "real-rails-5.1-upgrade" :)


faster JIT hillas_parameters function

I did a quick profile of stage1.py with 8000 events, I found now that the dominant CPU usage is now in ImageProcessor, which is slower than the CameraCalibrator (when NeighborPeakWindowSum is used at least). One of the slower parts of that is the hillas_parameters function.
explore if using numba has a significant effect
(this PR may not be merged, it's just a "what if" scenario).  I suspect the overall speed of processing a run will not be largely affected, but this could be interesting for online analysis or RTA.
This PR refactors the hillas_parameters() function  (as in #1077) such that parts of it are compiled using Numba. Specifically it defines a hillas_parameters_fast() that takes only unitless numpy arrays (and that function is called by the usual hillas_parameters() function, so no change of API is made.
While doing this I discovered:

Numba doesn't support weighting in np.cov, so I implemented a very simplistic weighted 2d covariance function using numba (not generally useful, but just the bare minimum to work with the hillas_parameters funciton). Current implementation uses DOF=1, rather than 0
Numba doesn't support np.ma.masked arrays (so dropped support for them in hillas_parameters) - we didn't use those anyhow, and hillas_parameters(geom[mask], image[mask]) is preferred and faster
Numba doesn't support np.average, only np.mean which doesn't do weighed average, so implemented again a simplistic weighted_average function.

Results:
Tests make using an image of 100 pixels

covariance_matrix is about 13.5x faster than the numpy version

hillas_parameters is about 4x faster than the numpy version, but 35x faster in it's pure form (hillas_parameters_fast with no units overhead)

Line profile of the hillas_parameters function (that calls the fast version internally):
%lprun -f hillas_parameters_wrapped hillas_parameters_wrapped(g, w0)
Timer unit: 1e-06 s

Total time: 0.000513 s
File: <ipython-input-11-33005bf5af05>
Function: hillas_parameters_wrapped at line 7

Line #      Hits         Time  Per Hit   % Time  Line Contents
==============================================================
     7                                           def hillas_parameters_wrapped(geom, image):
    53         1         12.0     12.0      2.3      unit = geom.pix_x.unit
    54         1         56.0     56.0     10.9      pix_x = Quantity(np.asanyarray(geom.pix_x, dtype=np.float64)).value
    55         1         21.0     21.0      4.1      pix_y = Quantity(np.asanyarray(geom.pix_y, dtype=np.float64)).value
    56         1          7.0      7.0      1.4      image = np.asanyarray(image, dtype=np.float64)
    57         1         20.0     20.0      3.9      if np.ma.is_masked(image):
    58                                                   raise TypeError(
    59                                                       "np.ma.masked arrays are not supported by hillas_parameters(). "
    60                                                       "Use `hillas_parameters(geom[mask], image[mask])` instead."
    61                                                   )
    62         1          1.0      1.0      0.2      msg = "Image and pixel shape do not match"
    63         1          2.0      2.0      0.4      assert pix_x.shape == pix_y.shape == image.shape, msg
    64
    65                                               (
    66                                                   cog_x,
    67                                                   cog_y,
    68                                                   cog_r,
    69                                                   cog_phi,
    70                                                   size,
    71                                                   length,
    72                                                   length_uncertainty,
    73                                                   width,
    74                                                   width_uncertainty,
    75                                                   psi_rad,
    76                                                   skewness_long,
    77                                                   kurtosis_long,
    78         1         43.0     43.0      8.4      ) = hillas_parameters_fast(pix_x, pix_y, image)
    79
    80         1         11.0     11.0      2.1      if np.isnan(size):
    81                                                   raise HillasParameterizationError(
    82                                                       "intensity=0, cannot calculate HillasParameters"
    83                                                   )
    84
    85         1          1.0      1.0      0.2      return HillasParametersContainer(
    86         1         46.0     46.0      9.0          x=u.Quantity(cog_x, unit),
    87         1         21.0     21.0      4.1          y=u.Quantity(cog_y, unit),
    88         1         18.0     18.0      3.5          r=u.Quantity(cog_r, unit),
    89         1        105.0    105.0     20.5          phi=Angle(cog_phi, unit=u.rad),
    90         1          1.0      1.0      0.2          intensity=size,
    91         1         22.0     22.0      4.3          length=u.Quantity(length, unit),
    92         1         18.0     18.0      3.5          length_uncertainty=u.Quantity(length_uncertainty, unit),
    93         1         18.0     18.0      3.5          width=u.Quantity(width, unit),
    94         1         18.0     18.0      3.5          width_uncertainty=u.Quantity(width_uncertainty, unit),
    95         1         51.0     51.0      9.9          psi=Angle(psi_rad, unit=u.rad),
    96         1          1.0      1.0      0.2          skewness=skewness_long,
    97         1         20.0     20.0      3.9          kurtosis=kurtosis_long,
    98                                               )

So it looks like as expected units and the use of  Angle has a large performance hit.

@kosack I noted this before, the creating new Angle instances is one of the major things right now.
If you had profiled the hillas parameters before, you'd have seen not much time is spent in the actual computation that you tried to optimize via numba. At least that is what I saw when profiling the stage1 tool and looking at snakeviz output.
Also, not a small amount of time is spent in the rotation into shower coordinates. Which can for sure be made more efficient using numba and is not as much custom code compared to reimplementing cov and average

This version is already faster (4.5x), and it seems getting rid of the Angles and replacing them with just Quantity, I get another factor of 1.5 increase, to nearly 7 times the original speed.  I'll try removing the Angle and see what it breaks - I think it's not really needed anywhere.

Hi @kosack
We are cleaning up stale pull requests to get a better overview over PRs we want to merge before applying some larger refactorings, e.g. switching to src layout https://github.com/cta-observatory/ctapipe/issues/2078 or implementing CEP-002.
If you think this is still relevant, feel free to update your branch and re-open the pull request or continue discussion in an issue.


REM-25613 Send HTTP/S network request status information to backend.

Codecov Report

Merging #32 into master will increase coverage by 0.21%.
The diff coverage is 95%.

@@            Coverage Diff             @@
##           master      #32      +/-   ##
==========================================
+ Coverage   84.78%   84.99%   +0.21%
==========================================
  Files          24       24
  Lines        1275     1293      +18
==========================================
+ Hits         1081     1099      +18
  Misses        194      194

Impacted Files
Coverage Δ

RPerformanceTracking/Private/_RPTTracker.m
100% <100%> (ø)
:arrow_up:

...ng/Private/_RPTClassManipulator+NSURLSessionTask.m
100% <100%> (ø)
:arrow_up:

RPerformanceTracking/Private/_RPTEventWriter.m
89.15% <100%> (+0.19%)
:arrow_up:

RPerformanceTracking/Private/_RPTMeasurement.m
92.3% <66.66%> (+1.39%)
:arrow_up:

Continue to review full report at Codecov.

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


az network nic ip-config address-pool add command fails

Using the cli 2.0 to bind a nic to an address pool with the following command produces this error:
command:
az network nic ip-config address-pool add
--resource-group ${resource_group}
--nic-name ${nic_name}
--lb-name ${lb_name}
--address-pool ${lb_address_pool_name}
--ip-config-name ${lb_name}-binding
produces the following:
'NoneType' object has no attribute 'load_balancer_backend_address_pools'
Traceback (most recent call last):
File "/Users/marty.bell/lib/azure-cli/lib/python2.7/site-packages/azure/cli/main.py", line 37, in main
cmd_result = APPLICATION.execute(args)
File "/Users/marty.bell/lib/azure-cli/lib/python2.7/site-packages/azure/cli/core/application.py", line 157, in execute
result = expanded_arg.func(params)
File "/Users/marty.bell/lib/azure-cli/lib/python2.7/site-packages/azure/cli/core/commands/init.py", line 343, in _execute_command
raise ex
AttributeError: 'NoneType' object has no attribute 'load_balancer_backend_address_pools'
Below is the azure client version:
az --version
azure-cli (2.0.0)
acs (2.0.0)
appservice (0.1.1b5)
batch (0.1.1b4)
cloud (2.0.0)
component (2.0.0)
configure (2.0.0)
container (0.1.1b4)
core (2.0.0)
documentdb (0.1.1b2)
feedback (2.0.0)
iot (0.1.1b3)
keyvault (0.1.1b5)
network (2.0.0)
nspkg (2.0.0)
profile (2.0.0)
redis (0.1.1b3)
resource (2.0.0)
role (2.0.0)
sql (0.1.1b5)
storage (2.0.0)
vm (2.0.0)
Python (Darwin) 2.7.10 (default, Oct 23 2015, 19:19:21)
[GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-7<IP_ADDRESS>)]
There do seem to be a number of similar issues with other use cases with the cli, but the remediation wasn't clear.....
Marty

Hi @marty2bell thanks for the report. I have reproduced the issue and confirmed that it could potentially affect a number of child operations for app gateway, load balancer and nic.

Until the fix is in and released, the following command should unblock your scenario.  It uses the generic update advanced feature:
az network nic update -g ${resource-group} --name ${nic-name}
  --set ipConfigurations[name=${ip-config-name}].loadBalancerBackendAddressPools=[]
  --add ipConfigurations[name=${ip-config}].loadBalancerBackendAddressPools id=${backend-address-pool-id}

Once you have added one in this way, you can use the add command as you tried.

Great.....thanks Travis
Marty


feat(queries): add teal support

Thanks for great plugin! This PR adds teal (a typed dialect of Lua) language support. It's treesitter queries are analogous to Lua's.

Looks great! Thanks for adding tests!


fixing build errors

fixes

Docs Build status updates of commit c7b9064:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

Community/TOC.md
:white_check_mark:Succeeded
View

Community/index.yml
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


MySQL install from repos

I noticed that in vagrant_scripts/my56_bootstrap.sh you are pulling MySQL debs directly from dev.mysql.com.  Not to dissuade you if it works, but there are two alternatives that might work better:

The version of Ubuntu you are presumably using here (Trusty) has MySQL 5.6 packages under the name mysql-server-5.6.

There are official apt repos with support for MySQL 5.6/5.7.

As a third alternative, if you would like to bootstrap multiple MySQL instances in the same VM, there is also MySQL Sandbox.  I use this to bootstrap MySQL on my localhost.

I had a real hassle of a time finding a combination of steps that worked consistently, although it could be due to the fact that I originally started with precise instead of trusty (and precise had no mysql 5.6 packages). If you would like to try finding a simpler set of steps for getting the environment up and running (particularly if you think there may be a more reliable method over the long term).


Time input component

This PR adds a new Time input component. It's a text field which allows users to type in times in various formats and automatically formats them to a preferred format
View preview
Checklist
Preflight

[x] Prefix the PR title with the slug of the package or component - e.g. accordion: Updated padding or docs: Updated header links
[x] Describe the changes clearly in the PR description
[x] Read and check your code before tagging someone for review
[x] Create a changeset file by running yarn changeset. Learn more about change management.

Testing

[x] Manually test component in various modern browsers at various sizes (use Browserstack)
[x] Manually test component in various devices (phone, tablet, desktop)
[x] Manually test component using a keyboard
[x] Manually test component using a screen reader
[x] Manually tested in dark mode
[x] Component meets Web Content Accessibility Guidelines (WCAG) 2.1 standards
[x] Add any necessary unit tests (HTML validation, snapshots etc)
[x] Run yarn test to ensure tests are passing. If required, run yarn test -u to update any generated snapshots.

Creating new component

[x] Document the component for the website (docs/overview.mdx and docs/code.mdx at a minimum)
[x] Preconstruct entrypoint has been created (run yarn in the root of the repo to do this)
[x] Changeset file includes a minor
[x] Export components for docs site and Playroom (docs/components/designSystemComponents.tsx)
[x] Add component to Kitchen Sink (.storybook/stories/KitchenSink.tsx)
[x] Add snippets to Playroom (docs/playroom/snippets.ts)
[ ] Add pictogram to Docs (docs/components/pictograms/index.tsx)

We can still provide the ability to provide custom invalid validation. Checking if the value is a valid time should be hardcoded directly into the component though. It makes no sense to have the easiest implementation method to default to not throwing an error when the time value is invalid.

@Dan503 Does your scenario support validation on save only? I'm struggling to see how it can if we immediately mark it as invalid. The date picker also requires that you manually validate https://design-system.agriculture.gov.au/components/date-picker#tracking-the-input-value


⚠ Bofrost.es has degraded performance

In 4125a13, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1546 ms

Resolved: Bofrost.es performance has improved in 810ca5b after 18 minutes.


RuntimeError: memory access out of bounds on typescript + mocha

Summary
When running Stryker on a typescript project I get the following error message:
$ stryker run
16:00:09 (924) INFO ConfigReader Using stryker.conf.js in the current working directory.
16:00:09 (924) INFO TypescriptConfigEditor Loading tsconfig file /project/tsconfig.json
16:00:09 (924) INFO InputFileResolver Found 9 of 27 file(s) to be mutated.
16:00:09 (924) INFO InitialTestExecutor Starting initial test run. This may take a while.
16:00:16 (924) INFO InitialTestExecutor Initial test run succeeded. Ran 145 tests in 6 seconds (net 273 ms, overhead 475 ms).
16:00:19 (924) INFO MutatorFacade 4027 Mutant(s) generated (62 Mutant(s) excluded)
16:00:25 (924) ERROR StrykerCli an error occurred RuntimeError: memory access out of bounds
    at wasm-function[18]:1732
    at wasm-function[28]:81
    at BasicSourceMapConsumer._parseMappings (/project/node_modules/@stryker-mutator/core/node_modules/source-map/lib/source-map-consumer.js:335:44)
    at BasicSourceMapConsumer._getMappingsPtr (/project/node_modules/@stryker-mutator/core/node_modules/source-map/lib/source-map-consumer.js:315:12)
    at _wasm.withMappingCallback (/project/node_modules/@stryker-mutator/core/node_modules/source-map/lib/source-map-consumer.js:665:14)
    at Object.withMappingCallback (/project/node_modules/@stryker-mutator/core/node_modules/source-map/lib/wasm.js:95:11)
    at BasicSourceMapConsumer.generatedPositionFor (/project/node_modules/@stryker-mutator/core/node_modules/source-map/lib/source-map-consumer.js:663:16)
    at SourceMap.generatedPositionFor (/project/node_modules/@stryker-mutator/core/src/transpiler/SourceMapper.js:204:57)
16:00:25 (924) INFO StrykerCli Trouble figuring out what went wrong? Try `npx stryker run --fileLogLevel trace --logLevel debug` to get some more info.

I have another project with the same configuration that does not give this error.
Stryker config
module.exports = function(config) {
    config.set({
      mutator: {
          name: "typescript",
          excludedMutations: ["StringLiteral"],
      },
      transpilers: ["typescript"],
      tsconfigFile: "tsconfig.json",
      mutate: ["lib/**/*.ts"],
      reporters: ["clear-text", "progress"],
      testFramework: 'mocha',
      coverageAnalysis: "perTest",
      testRunner: "mocha",
      mochaOptions: {
          files: "dist/**/*.test.js"
      },
      packageManager: "yarn",
    });
  };

Stryker environment

├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>│  ├─<EMAIL_ADDRESS>│  ├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>│  ├─<EMAIL_ADDRESS>│  ├─<EMAIL_ADDRESS>│  ├─<EMAIL_ADDRESS>│  ├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>│  └─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>│  ├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>│  ├─<EMAIL_ADDRESS>│  ├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>

+--<EMAIL_ADDRESS>
Your Environment

software
version(s)

node
v11.8.0

yarn
1.13.0

Operating System
Ubuntu 18.04.3 LTS

Add stryker.log
stryker.log

Thanks for opening this issue! Is your project open source by any chance?
And how many mutants are generated on the successful project?

Unfortunately, it isn't open source.
The successful project only generates 364 mutants

Some more information: It seems like 2782 of the mutations happen in a single file. When excluding this file (thus leaving 1245 mutants) Stryker is able to run successfully.

It seems like there is some kind of upper limit to the .js.map files of about 40,000 characters. Stryker is able to run successfully when deleting enough code to remain under this limit.

@nicojs didn't we introduce a pushback mechanism on the transpiled mutants a while back to prevent a memory overflow?

I've created an example which also throws a RuntimeError: memory access out of bounds at https://github.com/peternedap/stryker_memory_bug, though I suspect it is caused by more than 511 branches in Broken.ts in this case. Removing line 517 makes Stryker run the tests properly (but still hang on the reporting step).

I belive this is fixed with @stryker-mutator/core version 2.2.0. I'm closing this issue for now. If you still have problems with the latest version, could you let me know/reopen the issue?

Upgrading to 2.2.0 did fix the example code, but in my larger (unfortunately not open source) project I still get this error:
08:56:08 (8914) ERROR StrykerCli an error occurred RuntimeError: memory access out of bounds
    at wasm-function[18]:0xf76
    at wasm-function[28]:0x3494
    at BasicSourceMapConsumer._parseMappings (/home/peter/Documents/workspace/geometry/node_modules/@stryker-mutator/core/node_modules/source-map/lib/source-map-consumer.js:335:44)
    at BasicSourceMapConsumer._getMappingsPtr (/home/peter/Documents/workspace/geometry/node_modules/@stryker-mutator/core/node_modules/source-map/lib/source-map-consumer.js:315:12)
    at /home/peter/Documents/workspace/geometry/node_modules/@stryker-mutator/core/node_modules/source-map/lib/source-map-consumer.js:665:14
    at Object.withMappingCallback (/home/peter/Documents/workspace/geometry/node_modules/@stryker-mutator/core/node_modules/source-map/lib/wasm.js:95:11)
    at BasicSourceMapConsumer.generatedPositionFor (/home/peter/Documents/workspace/geometry/node_modules/@stryker-mutator/core/node_modules/source-map/lib/source-map-consumer.js:663:16)
    at SourceMap.generatedPositionFor (/home/peter/Documents/workspace/geometry/node_modules/@stryker-mutator/core/src/transpiler/SourceMapper.js:204:57)
    at async TranspiledSourceMapper.transpiledLocationFor (/home/peter/Documents/workspace/geometry/node_modules/@stryker-mutator/core/src/transpiler/SourceMapper.js:54:23)
    at async MutantTestMatcher.enrichWithCoveredTests (/home/peter/Documents/workspace/geometry/node_modules/@stryker-mutator/core/src/mutants/MutantTestMatcher.js:41:36)

Hi! I'm closing this issue for now. If it still persists with Stryker version 4, please open a new issue. Thanks!


Questions about Cherrypi

We installed CUDA9.0 and corresponding CuDNN as you suggested and we tried to run Cherrypi again.  It still doesn't work and stuck like this.

And if we run Cherrypi.exe straightly, there is an error printed on the screen.

We don't know what's wrong with it. we appreciate it if you could tell us what to do next.

Sorry, but we do not have time to spend debugging individual bots. This is for the tournament manager software itself


Switch hex2bin to objcopy

Had some trouble with the current version of hex2bin outputting the wrong results. After some searching I found that objcopy worked just the same.

Seems good to me! Merging.


colcon build is not executed at all

For both linux/amd64 and linux/arm64, colcon build is not executed and the xarm_ros2 package is not built.

Invalid docker ARG: s/TARGETARCH/TARGETPLATFORM/