rna-seq star/hg38 issue

Hi,
I'm trying to run rna-seq using star and hg38 but I'm running in to trouble.
First I get this error:
FATAL error, could not open file sjdbGTFfile=None
Nov 24 17:05:57 ...... FATAL ERROR, exiting
[E::hts_open] fail to open file '/home/zahra/rnaseq/151016_D00458_0118_AC7NCBANXX/calling/work/align/08-253/08-253_star/tx/tmpaYQDam/08-253.bam'
If I run the command and remove the "sjdbGTFfile=None" setting, I get this output:
Transcriptome.cpp:13:Transcriptome: exiting because of INPUT FILE error: could not open input file /usr/local/share/bcbio/genomes/Hsapiens/hg38/star//transcriptInfo.tab
Solution: check that the file exists and you have read permission for this file
          SOLUTION: utilize --sjdbGTFfile /path/to/annotantions.gtf option at the genome generation step or mapping step
Should there be some annotations there? This is the first time running rna-seq, so this is all new to me. Sorry if the error is on me.

I should have mentioned that I'm running the latest development version of bcbio-nextgen

Hi Par,
Sorry-- we don't support hg38 yet for RNA-seq. The main issue is that there aren't any ready-to-go spliced aligners that are alt-aware. We have support in place for hisat2 which should be able to handle it, but we've been having troubles getting it to not hang during a run of any real data. We'll be putting up a stopgap in place of including hg38-noalt for RNA-seq soon. I'm just testing it to make sure it works.

Okay! Then I'll switch to hg19. Thanks for a fast reply!

Thanks, sorry it has taken us a while to get going on this. I'm going to close this issue, but I'll post in https://github.com/chapmanb/bcbio-nextgen/issues/817 when this is straightened out, so if you follow that issue you'll get updated.


Add note or annotation in Chart.js

How can I add note or annotation in ChartJs. Something like this:

I tried some keywords ChartJs annotation or ChartJs note but could not find any plugin or document about that.
Thank you!

It's the #1 result on Google for charts annotation
https://github.com/chartjs/chartjs-plugin-annotation


segmentation-based controlled image generation

Thank you for your contributions. Could you please tell me how to do segmentation-based controlled image generation

Please check this #8

@jiangzeyinzi Thank you for your answer. I made the modification on the yaml file based on canny, but now I have encountered some problems. My data collection format Source: FILE, Target: FILE, Prompt. Source:FILE indicates the original image; Target:FILE indicates the segmentation image; Prompt: Convert to a segmentation map based on the prompt. But the result is similar to Target:FILE. I want to generate images that are similar to Source:FILE and based on the conditions of Target:FILE

Based on your description, I'm still a bit confused about which task you would like to execute:

Conditional generation task: Generate an image from a caption + segmentation map.
Editing Task A: Generate an image from a segmentation map + natural language instruction.
Editing Task B: Generate a segmentation map from an image + natural language instruction.

Our framework can handle all of these tasks, but the methods of use differ.

What I'm going to do is Conditional generation task, Generate an image from prompt+ segmentation map.

The data set format is similar to that of scepter_img2img_hed_example.
Your description is Source:FILE,Target:FILE,Prompt
images/src_002.jpeg,images/tar_002.png,Convert to an edge map based on the prompt:  A Seamless pattern with different cupcakes.
Where your Source:FILE is the source FILE, Target:FILE is the hed edge processing file,。Your goal is to generate a file that is similar to the source file based on the hed boundary

My description is Source:FILE,Target:FILE,Prompt
images/src_R2407(1).png,images/tar_R2407(1).png,Convert to a segmentation map based on the prompt: disk and cup segmentation map
My Source:FILE is a source FILE, and Target:FILE is a segmentation file. My goal is to generate a file similar to the source file based on segmentation conditions

@jiangzeyinzi
What I'm going to do is Conditional generation task, Generate an image from prompt+ segmentation map.

The data set format is similar to that of scepter_img2img_hed_example.

Your description is Source:FILE,Target:FILE,Prompt
images/src_002.jpeg,images/tar_002.png,Convert to an edge map based on the prompt: A Seamless pattern with
different cupcakes.
Where your Source:FILE is the source FILE, Target:FILE is the hed edge processing file,。Your goal is to generate a file
that is similar to the source file based on the hed boundary

My description is Source:FILE,Target:FILE,Prompt
images/src_R2407(1).png,images/tar_R2407(1).png,Convert to a segmentation map based on the prompt: disk and cup
segmentation map
My Source:FILE is a source FILE, and Target:FILE is a segmentation file. My goal is to generate a file similar to the source
file based on segmentation conditions

The scepter_img2img_hed_example YAML or data format you are using is supported by another work, stylebooth, for image editing tasks.
In SCEdit, we extract image conditions through on-the-fly operation by registering ANNOTATORS, so the inputs are just the prompt and the target image, as shown in the several methods/scedit/ctr/xxx.yaml files you used earlier. The CONTROL_ANNO field in the corresponding YAML file is the operation of the condition we used.
You can achieve the required functionality by registering the ANNOTATORS of segment algo, such as Uniformer, in the modules/annotator directory, then use it in the yaml.


SOV-1006: trove adjusting

Resolves https://sovryn.atlassian.net/browse/SOV-1006

@creed-victor I also noticed that I should see a simplified version of the UI in case I am opening a LoC but I see the normal version with disabled buttons instead.

Yep, opening actually is an another task SOV-1089, reused same one here so testing would be possible


Binary build of example app?

Edited

We're not currently plan to provide such binary builds, but they are rather simple to build yourself.

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


failFast configuration

What's the conclusion?
I'd like to avoid having to maintain different options in my Gradle Plugin.
Is only allowing it to be configured via the CLI the way to go now? Personally, I liked that I was able to configure this via the YML file.

Personally I didn't liked it in the config file. For example failFast was rather cryptic.
I think the cli is the right place for such boolean based flags next to existing --disable-default-rulesets, --debug, --parallel, '--create-baseline`.
You can create tasks which are independent of any configuration file (detektFailFast with failFast gradle property or detektAutoFormat with autoCorrect and disableDefaultRuleSets gradle properties).
Stuff like test-pattern and reports should be in the config file because they are highly configurable (partly custom reports can only be configured through the config when using the gradle plugin).
I am for migrating the top level autoCorrect property to the cli and leave these flags in the cli.

I agree with Artur here. In my opinion this should also be a command line option.
I also think we should be better at communicating the change to our users.
With version 1 coming closer I think that breaking changes should be avoided if they are not really necessary.

Alright. Thanks :)

I'd still like an easy way to have all rules turned on, and then the remainder of the config file adjusts/disables those I'm not interested in. Is there currently an option like that in the config file?
I believe if I have an empty config file, then I am using the default, correct? But the default doesn't have all rules turned on?
I believe that's what failFast does, but I want that to be the default for all my projects w/o having to define all the rules in a file.
Even if it was some form of option like all-rules-enabled, I'd like it to be in the config so it doesn't matter how detekt is run, I get the same result.

@mikezx6r
Have you tried using --fail-fast from the cli or failFast in the detekt gradle extension?
detekt {
     ...
    failFast = true
    ....
}
Its the same as the removed failFast property in the yaml file.

As soon as failFast was deprecated in config, I removed it and added the failFast in Gradle.
Please correct me if I'm wrong. If I have some exclusions and testPatterns in my config but no failFast in the config file and run Detekt without setting the failFast flag, what rules are used?
I believe the answer is whatever is defined in the default config, correct?
If I don't make any changes, but run with the failFast flag, is it correct that all existing rules are then enabled unless it's explicitly mentioned in the config file?
This means that I can use the exact same config file and have different execution results depending on how I run it.
Bottom-line is if the team has decided they just want all rules activated, and only turn off those they don't want rather than relying on the default config, then failFast in the config file seemed like a good way to ensure everyone was getting that regardless of how they run Detekt.
Generally, the team will be running it through Gradle and won't change the build.gradle, but I prefer much more consistency.
And what if I'm using the config file in the IntelliJ plugin and forget to turn on failFast? Then again, I'm not applying the same rules as the build.
I know one concern was the naming. I don't have a problem with deprecating the failFast flag as it isn't clear from it's name what it does, and it does a lot.
Perhaps introduce a new config property for controlling the ruleset used.
Something like a property base-ruleset that can have values of none, 'default', all`?
For the warnings/errors portion, just make people explicitly specify that in the config file. failFast was a convenience but it's very little extra config to manually turn on zero tolerance, and is very clear in the config file anyway.
Bottom-line: I want some way of consistently configuring that all rules are on and the team has to turn off those they don't find value in. That's the main feature I use/want from failFast.
Aside: the plugin is currently missing a failFast option.


[Discussion] setPage should not trigger onPageSelected event

Bug
We are storing and updating the active index of the ViewPager in Redux. When the user swipes to another page the onPageSelected event is correctly triggered and the active index will be updated like that:
<ViewPager
      ref={pager}
      pageMargin={0}
      onPageSelected={({ nativeEvent }) => setActiveIndex(nativeEvent.position)}
      style={[styles.pager, { width }]}
      initialPage={0}
>

But we also want to set the page programatically when the active index is changed by some other component. To achieve this we are using an useEffect hook like this:
useEffect(() => {
    pager.current && pager.current.setPageWithoutAnimation(activeIndex);
}, [activeIndex]);

Unfortunately calling setPageWithoutAnimation triggers another onPageSelected event which updates the active index which triggers the useEffect hook and so on.
We think that there should be no onPageSelected event triggered when setting the page programatically.
Environment info
React native info output:
System:
    OS: macOS Mojave 10.14.6
    CPU: (4) x64 Intel(R) Core(TM) i5-7360U CPU @ 2.30GHz
    Memory: 5.96 GB / 16.00 GB
    Shell: 3.2.57 - /bin/bash
  Binaries:
    Node: 10.16.3 - ~/.nvm/versions/node/v10.16.3/bin/node
    Yarn: 1.19.1 - /usr/local/bin/yarn
    npm: 6.13.1 - ~/.nvm/versions/node/v10.16.3/bin/npm
    Watchman: 4.9.0 - /usr/local/bin/watchman
  SDKs:
    iOS SDK:
      Platforms: iOS 13.2, DriverKit 19.0, macOS 10.15, tvOS 13.2, watchOS 6.1
    Android SDK:
      API Levels: 21, 22, 23, 24, 25, 26, 27, 28
      Build Tools: 23.0.1, 25.0.2, 25.0.3, 26.0.1, 26.0.2, 26.0.3, 27.0.3, 28.0.1, 28.0.3, 29.0.2
      System Images: android-19 | Google APIs Intel x86 Atom, android-21 | Google APIs Intel x86 Atom_64, android-22 | Intel x86 Atom_64, android-22 | Google APIs Intel x86 Atom_64, android-23 | Google APIs Intel x86 Atom_64, android-26 | Intel x86 Atom_64, android-27 | Google APIs Intel x86 Atom, android-28 | Google APIs Intel x86 Atom
      Android NDK: 20.1.5948944
  IDEs:
    Android Studio: 3.5 AI-191.8<IP_ADDRESS>10548
    Xcode: 11.3/11C29 - /usr/bin/xcodebuild
  npmPackages:
    react: 16.9.0 => 16.9.0
    react-native: 0.61.5 => 0.61.5

Library version: 3.3.0

This would be useful to have.

It's always going to cause an infinite loop when your dependency is the thing you are changing (activeIndex). It sounds like you are using one variable to reference two distinct values: the current state, and the desired state.
It probably makes more sense to use a separate variable for the desired state (desiredIndex), and then you can check if (activeIndex !== desiredIndex) before you call setPage.

What do you think about using a desiredIndex value as the useEffect dependency, so you have no infinite loop?
To be clear, I disagree with removing the onPageSelected event, because in this example, "current" and "desired" page values are not properly separated.

That's actually an interesting idea. We will give it a try.

I have the same issue. Distinguishing between desiredIndex and currentIndex isn't really possible, because we can't distinguish between a user initiated page scroll and programmatically initiated one, at least without some transitioning state variable.
You can see in the code below, if a user changes the segmented control index from 0 to 1, then back to 0 before the pager has finished transitioning to 1, then the onPageSelected event will fire with '1' after the page has transitioned to 0. Since we can't distinguish that from a user scroll, we switch the segmented control to 1, however when the page finally transitions to 0 from the user tap on the segmented control, the infinite loop continues.
  const [pageIndex, setPageIndex] = useState(0)

  useEffect(() => {
    console.log('useEffect setPage '+pageIndex)
    viewPager.current?.setPage(pageIndex)
  }, [pageIndex]);

...

        <SegmentedControlIOS
          selectedIndex={pageIndex}
          onChange={event => setPageIndex(event.nativeEvent.selectedSegmentIndex)}
        />
        <ViewPager initialPage={pageIndex} ref={viewPager}
            onPageSelected={e => setPageIndex(e.nativeEvent.position)}
            >
...

@oliverdolgener Did you find an effective workaround?

@crystalneth not yet. what you describe is exactly our problem. I'll take a closer look this week and let you know.

I could not find a viable workaround to the event firing.
I later found more severe bugs in the firing of page selected events after adding a RN SectionList to a page. I was getting a pageselected event for every rendering of each list item, which caused the UI to lock up and go into infinite loops on initial render. Who knows why. Sure enough when I changed the number of list items it changed the number of event firings, and at zero list items it worked properly.
I've torn out this component and am now using react-navigation tab view. I was already using react-navigation (although I was considering react-native-navigation, and can no longer do that).
It's working well so far, and basically what I wanted except with a material design look instead of iOS, which I can live with (and also override if needed).

@crystalneth

I later found more severe bugs

Could you provide a example and create a separate issue for those bugs ?

I'm the sole dev on my project rn and have pulled the module out of the
codebase, so I'm unlikely to get around to that. Sorry!
If you'd like to try what I had, it was two pages, one had a FlatList and
the other a SectionList, and the interaction with the segmented controller
is as specified above.
Sorry, I can't help more rn.
On Thu, Apr 16, 2020 at 12:03 AM troZee<EMAIL_ADDRESS>wrote:

@crystalneth https://github.com/crystalneth
I later found more severe bugs
Could you provide a example and create a separate issue for those bugs ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/react-native-community/react-native-viewpager/issues/129#issuecomment-614454668,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAGFJMFKNFGIX3Y5SZMA5DRM2UULANCNFSM4JZ22DBA
.

I am running into a similar problem. Issue #149 mentions this as well, but the examples provided only work if the selected index is only needed for ViewPager. When the active page is needed by multiple components and each of them can update the index, you will trigger an infinite loop.
In my example, I have two components that use this value. A Map component with MapMarkers, and a ViewPager that shows details for the selected MapMarker.
We always need to use onPageSelected to keep track of the selectedIndex. In our case, we are dispatching an action each time the user swipes to a page. This is so Map can update to select the same MapMarker. We dispatch the same action from the Map component when a MapMarker is selected.
When a user selects a MapMarker, that updates the selectedIndex. The ViewPager component receives a new prop, and we use that to call setPageWithoutAnimation. Because it triggers onPageSelected, it dispatches that same action again.
If we swipe to a page once, it calls onPageSelected, dispatches the action, props are updated, we use that to setPageWithoutAnimation, and it triggers onPageSelected again. If that was the only action the user took, then it works fine. We can compare the current and previous versions of the selectedIndex, and not call setPageWithoutAnimation since they are the same.
But, when the user swipes between two pages rapidly it dispatches two actions, A and B.

Props are updated based on Action A, we call setPageWithoutAnimation, onPageSelected is triggered, and it dispatches Action A again.
Props are updated based on Action B, we call setPageWithoutAnimation, onPageSelected is triggered, and it dispatches Action B again.
Props are updated based on Action A, and since the selectedIndex from A is not equal to the selectedIndex from B we call setPageWithoutAnimation again. This goes on forever.

If there were an option to not trigger the event handler when we call one of the setPage methods, then all of this could be avoided. But, the current behavior makes it potentially impossible to reconcile state across multiple components.

@ryanjwessel Thanks man, this is exactly the problem that we have. I would appreciate a solution like you suggested

@oliverdolgener the only solution I found that actually kept the selectedIndex in-sync between multiple components was to provide a key prop to ViewPager that would force a re-render if the selectedIndex was changed by a component other than ViewPager. This came with significant performance drawbacks though, as it would re-render the entire ViewPager and it's children each time that happened. It would take several seconds to re-render with the correct index.
I am trying to figure out another solution now, but it is still in-progress!

@oliverdolgener So I think @razzfox's suggestion is the only way to accomplish this without completely re-rendering the component.
I added activeIndex as a component state field. The prop I receive from the Redux store is now the desiredIndex. If I receive new props and the desiredIndex does not match the activeIndex, then update activeIndex in state and as a part of your setState callback, you can execute setPageWithoutAnimation.
In your onPageSelected handler, you need to also check if activeIndex does not match desiredIndex (event.nativeEvent.position), before dispatching the action.
This appears to be working as expected.

If I understand correctly, you are passing setActiveIndex to other components that need it, and you have a useEffect that depends on that, which calls setPageWithoutAnimation to change the page of the ViewPager.
If you pass setPageWithoutAnimation directly (or inside a helper function) to the other components, and they call that instead of setActiveIndex, would your useEffect still need to call setPageWithoutAnimation?
For example, these are the helper functions that I pass as props to child components (e.g. next/prev buttons):
const setPagePrev = () => (activeIndex > 0) && pager.current.setPage(activeIndex - 1)
const setPageNext = () => (activeIndex < slides.length - 1) && pager.current.setPage(activeIndex + 1)

Hey @razzfox, I'm not sure if this would work in my case. There are other components that are relying on this index being provided as a value. If we called setPageWithoutAnimation directly, say by pressing a MapMarker on a Map component, then there would be no way to indicate that the MapMarker is selected too.
This is because this component is pure React Native, so it makes a comparison between the selectedIndex and the MapMarker's index. Does that make sense?
If we were able to provide the selectedIndex directly to ViewPager then this value could be tracked purely in React Native/Javascript-land, but I don't know if it is possible given the native functionality for this package.

setPage is not working at all for me the page is not being changed

Hi,
I also test this very simple code in iOS: onPageSelected={(e) => { console.log(e) }}
When doing movement between pages, the app start crashing aleatory without any error.
I am using the latest version : 4.0.1

Ideally would be good to have react-native-viewpager as controlled component. Instead of initialPage might be better to have page which will control selected page.

Ideally would be good to have react-native-viewpager as controlled component. Instead of initialPage might be better to have page which will control selected page.

But in this solution, you have 2 source of truth which is state inside the component and the current native. So let me describe your solution for better understanding:

VP has not got a onPageSelected callback
React component keeps state of VP current page
User swipes to the next page using gesture
Current page number is 2 and your state has not been updated

So the question is, how we should sync the current displayed page ? For now, it makes sense bc the state is updated in once callback and it does not matter, if you swipe programmatically or using a gesture

So the question is, how we should sync the current displayed page ?
• VP has not got a onPageSelected callback
Without callback which will be executed after VP it wouldn't be possible.

For the controlled components https://reactjs.org/docs/forms.html#controlled-components will need some onChange callback which will update parent state usually.

Hello everyone,
We have collected all yours suggestions and created a new PoC https://github.com/callstack/react-native-viewpager/pull/268
Feel free to comment

@troZee  : I am still facing issue where setPage triggers onPageSelected event in version 5.1.10
is there a work around that I can use ?

@troZee is there any update on this issue? It seems that the pull request #268 is not merged yet. Any advice on how to use the new api would be great!

I still have the issue in 5.4.9.  It looks like it's still going to exist in 6.0.  In my case, I have the same PagerView component on multiple pages and a global state specifying (more or less) the selected index.  I need a change on one screen to effect a change on all of the screens.
But, when the other screens switch pages programmatically following the global state change, they fire the onPageSelected.  I was able to deal with this by not calling setPageWithoutAnimation if the global page index was the same as the current index.
But, as the app has grown and more work is being done, there's a race condition and the user is able to switch pages fast enough that the PagerView does get caught in an infinite loop and I can't do much about it because I can't tell when onPageSelected is being called due to user interaction or when it is being called because of a call to setPage*.
:(


PopupView fields visibility is ignored

The PopupView FieldsPopupElement does not display fields as configured on ArcGIS Online. All popupElement values are displayed using popupElement.labels and popupElement.formattedValues. popupElement.fields is not used to populate the popup which means fields with the isVisible = false condition is ignored so the field is shown in the popup.
This results in inconsistencies between popups defined on ArcGIS Online and how they are displayed using the PopupView as reported  by a user on esri community. This inconsistency could be fixed at the toolkit or api level.

Here is the GeoNet issue: https://community.esri.com/t5/swift-maps-sdk-questions/issue-with-popups-in-arcgis-swift-sdk-200-x-for/m-p/1529362#M372

This is likely a bug in our logic to upgrade from the old popup spec to the new one internally

Ref Apollo 906
@mhdostal can this be closed?

I will verify that it is fixed.


syncer: skip hash resolution bore node processed all layers

Motivation
part of #4552
Changes
do not engage in hash resolution when node hasn't process all layers during sync

bors try

bors merge

bors merge


[Feature Request]: REST2CARML PoC

Description
Idea: Automatically generate new CARML modules from the Azure REST API.
To elaborate a bit further:

The end result will likely be a utility - like a PowerShell script
An approach could be to crawl data from

https://docs.microsoft.com/en-us/azure/templates OR
https://docs.microsoft.com/en-us/rest/api/azure/toc.json
https://github.com/Azure/bicep-types-az
https://github.com/Azure/azure-rest-api-specs

Using these sources, it should be possible to determine the parameters for PUT/POST commands and as such use the data to generate the CARML module structure.
This structure should contain

The module folder structure & files
Input parameters with metadata
The resource implementation itself
Child resources (referenced in the parent)
Extension resources (like RBAC, Private Endpoints, Diagnostics, Locks,...)

We should further try to adhear certain design descision we follow such as

If a resource property is only an object with a single value, the corresponding input parameter should be a simplified combination of the two. For example the property something: something where something is an object with only an id property should be simplified to something: { id: somethingId }.
In general, we should follow the guidlines specified in the Module Design section of the Wiki

Note: The end result will likely not get us 100% of the way as modules usually always have some specifics to them. However, if it gets us already 70% of the way, it would be a big win.

Stretch goal: Have the utility give you a 'diff' - i.e., would there be anything to update for a new API version
Stretch goal: In an ideal world we may even be able to run the function idempotently to add new properties to an existing template (e.g. if a new API version was released).

Implementation takes place in branch users/hack-REST2CARML.

Given that the modules were migrated to AVM by now, I'll close this issue in CARML. If we were to reapproach the topic, it will definitely be in there.
cc: @matebarabas (for awareness)


feat: non-blocking scanning of dependencies

Description
For context, first read:

https://github.com/vitejs/vite/pull/6758

#6758 moved the pre-bundling of dependencies after the server start. But the initial scan phase was still blocked. The scanning is fast thanks to esbuild, but the time it takes will grow with the user code. Depending on what dependencies the project uses, the scanning phase could take longer than the pre-bundling itself.
This PR completes the work started by #6758 by moving scanning after the server start, and letting the requests flow and be processed in parallel.
A refactoring was needed to implement this feature. I think how the different pieces interact are more clear after this PR, and even if the scanning will be blocking, I would advocate merging the refactoring.
Main changes:

Moving from server._optimizeDepMetadata and server._registerMissingImport to server._optimizedDeps which is an object where we can have the metadata and related functions. I think we could move some of the free functions that takes the metadata to this object (like we do with moduleGraph), but I wanted to keep the changes focused on the feat in this PR. We can do other refactorings in future PRs.
Before this PR, we used _registerMissingImport as a flag to know if we were scanning (if it was null, then we were resolving for the scan phase). We can no longer use this scheme as we are processing requests in parallel and we will have some resolve calls from the scan process intermixed with the regular requests. So, there is a new scan option passed to resolveId (as we do with ssr) and we have a server._optimizedDeps.scanProcessing promise which lets us await until scanning is over when resolving bare imports.
The PR also Updates the log messages for the initial scan phase and pre-bundling. The old messages were more verbose, and it wasn’t a problem because they appeared before the server start message and the console was cleared. The new messages occupy only three lines to avoid hiding the server URLs.

Note: Since we are processing requests in parallel to the scan phase we could allow their resolution to progress (or some of them) and register them as missing imports. Then we can aggregate the scan phase dependencies with the discovered deps potentially saving a page reload. I found this problematic though, as we can't safely cache in the browser the resulting deps. See related explanation at https://github.com/vitejs/vite/pull/7378. Maybe this could be further explored.
Tested with Vaadin Start and with Ladle.
More testing is still required, but we may want to merge this one during the 2.9 beta so we only test the changes to pre-bundling in this minor and we don't need to repeat these again for 3.0.

What is the purpose of this pull request?

[ ] Bug fix
[x] New Feature
[ ] Documentation update
[ ] Other

✅ all green vite-ecosystem-ci run against this PR

full run, only fail was vite-plugin-ssr, doesn't look like a Vite error
retry vite-plugin-ssr, so seems like a flaky test

We could make the new scan option to resolveId as @experimental or @internal so people don't start relying on it if we would like to merge this one to test. I think the option makes sense though in the same way as we currently have ssr.

This might break https://github.com/antfu/vite-plugin-optimize-persist since it's relying on some internals. But what is great is that we might be able to completely deprecate it in favor of these improvements! 🚀

This might break antfu/vite-plugin-optimize-persist since it's relying on some internals. But what is great is that we might be able to completely deprecate it in favor of these improvements! 🚀

Oh, interesting. IMO it may not be needed anymore as you said. FWIW, I checked the code of vite-plugin-optimize-persist, and looks like it will not fail with a hard error, it will just not update since _optimizeDepsMetatada never gets assigned. We could avoid the change but I think it is good that the metadata starts to be controlled by _optimizedDeps so we can avoid leaking this abstraction into the server with time (like we do with the module graph). A new version of optimize persist could check for both _optimizeDepsMetadata and _optimizedDeps.metadata if the plugin isn't going to be deprecated.

Not at all. I mean the good side, it's much better not needing it :)

This PR is now ready to be merged.
New vite-ecosystem-ci run here:
https://github.com/vitejs/vite-ecosystem-ci/actions/runs/2019124256
Also tested it in Laddle and Vaddin Start.
I ended up removing alteredFiles as it can now be calculated directly as needsReload in optimizer/registerMissing.ts. The coupling between this file and optimizer/index.ts has been reduced. I hope that the flow is more clear now, probably better to look at the end result than the changeset for this one.

Since the scanning is performed after the server start, this PR needs to update the way we log dependencies, here is an example:

Thank you for the improvement!
It was also working well with my project.

I'm not enough deep into this as I could make a real review, but from a code review I can accept this ^^

This is how it looked before for icones (beta.1):

And how it looks now for icones:

Interesting that a page reload isn't needed, but it makes sense as that two dependencies are unrelated to Vue. In beta.1, the check for altered files was broken due to paths mismatch
I wonder if it would make sense to add a delay before logging the optimized deps so we avoid the multiple lines in case there are missing deps

Looks like some tests are failing because of timeouts, maybe 30sec isn't enough. I will try to raise it in another PR.
CI was working better though lately compared to the fails we are getting in this PR, so we may still need to squash a bug here. I think we should merge it though and get people to test it to have more time during the beta

I think it's nice to have for DX as long as in debug mode, we can see the separation of deps pre-bundled, as it may help with debugging some issues/support in the future.

Indeed, when debugging with vite:deps, the timeout isn't there and we get all the verbose logs from before, including separated logs for each discovered batch

Example of new logs running Laddle and opening a few stories (each story will discover a new set of dependencies). I still think that we should only show the last message, but maybe it is too much of a change for 2.9 and we can discuss it for 3.0. I don't think that it is useful to a regular user to know when their dependencies were optimized, it is an implementation detail for Vite.

Merging this now so we can do a new beta patch and get some more testing.

Thanks for the feedback @zheeeng! If you have a screenshot before and after, please share. And if you are interested we are discussing hiding the logs in the normal case https://github.com/vitejs/vite/pull/7419


Windows 10 error ; and raspi error

C:\Users\61240\Downloads\weimo_ws\src>python mouse.py
Traceback (most recent call last):
  File "C:\opt\ros\noetic\x64\lib\site-packages\easyhid\easyhid.py", line 53, in <module>
    hidapi = ffi.dlopen('hidapi.dll')
  File "C:\opt\ros\noetic\x64\lib\site-packages\cffi\api.py", line 150, in dlopen
    lib, function_cache = _make_ffi_library(self, name, flags)
  File "C:\opt\ros\noetic\x64\lib\site-packages\cffi\api.py", line 832, in _make_ffi_library
    backendlib = _load_backend_lib(backend, libname, flags)
  File "C:\opt\ros\noetic\x64\lib\site-packages\cffi\api.py", line 827, in _load_backend_lib
    raise OSError(msg)
OSError: cannot load library 'hidapi.dll': error 0x7e.  Additionally, ctypes.util.find_library() did not manage to locate a library called 'hidapi.dll'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "mouse.py", line 1, in <module>
    import pyspacemouse
  File "C:\opt\ros\noetic\x64\lib\site-packages\pyspacemouse\__init__.py", line 1, in <module>
    from .pyspacemouse import *
  File "C:\opt\ros\noetic\x64\lib\site-packages\pyspacemouse\pyspacemouse.py", line 1, in <module>
    from easyhid import Enumeration
  File "C:\opt\ros\noetic\x64\lib\site-packages\easyhid\__init__.py", line 8, in <module>
    from easyhid.easyhid import *
  File "C:\opt\ros\noetic\x64\lib\site-packages\easyhid\easyhid.py", line 55, in <module>
    hidapi = ffi.dlopen(ctypes.util.find_library('hidapi.dll'))
  File "C:\opt\ros\noetic\x64\lib\site-packages\cffi\api.py", line 150, in dlopen
    lib, function_cache = _make_ffi_library(self, name, flags)
  File "C:\opt\ros\noetic\x64\lib\site-packages\cffi\api.py", line 832, in _make_ffi_library
    backendlib = _load_backend_lib(backend, libname, flags)
  File "C:\opt\ros\noetic\x64\lib\site-packages\cffi\api.py", line 821, in _load_backend_lib
    raise OSError("dlopen(None) cannot work on Windows for Python 3 "
OSError: dlopen(None) cannot work on Windows for Python 3 (see http://bugs.python.org/issue23606)

On Raspi
ubuntu@plum:~$ chmod +x mouse.py
ubuntu@plum:~$ ./mouse.py
Traceback (most recent call last):
  File "./mouse.py", line 5, in <module>
    success = pyspacemouse.open()
  File "/home/ubuntu/.local/lib/python3.8/site-packages/pyspacemouse/pyspacemouse.py", line 656, in open
    all_devices = list_devices()
  File "/home/ubuntu/.local/lib/python3.8/site-packages/pyspacemouse/pyspacemouse.py", line 598, in list_devices
    hid = Enumeration()
  File "/home/ubuntu/.local/lib/python3.8/site-packages/easyhid/easyhid.py", line 366, in __init__
    self.device_list = _hid_enumerate(vid, pid)
  File "/home/ubuntu/.local/lib/python3.8/site-packages/easyhid/easyhid.py", line 428, in _hid_enumerate
    start = hidapi.hid_enumerate(vendor_id, product_id)
  File "/home/ubuntu/.local/lib/python3.8/site-packages/cffi/api.py", line 912, in __getattr__
    make_accessor(name)
  File "/home/ubuntu/.local/lib/python3.8/site-packages/cffi/api.py", line 908, in make_accessor
    accessors[name](name)
  File "/home/ubuntu/.local/lib/python3.8/site-packages/cffi/api.py", line 838, in accessor_function
    value = backendlib.load_function(BType, name)
AttributeError: function/symbol 'hid_enumerate' not found in library '<None>': python3: undefined symbol: hid_enumerate

I get, win10 only installed the interface，no module or lib found. could please the url for easyhid lib.

sudo apt install libhidapi-dev, thanks.

Does it work right now?

Yes, It worked. Thans

I tested it two years ago, and if I remember correctly, the Windows version didn't work for me, but since the primary goal was to make it work on Linux, I didn't bother with it further.
If I'm looking at the easyhid source code correctly. The library is trying to find hidapi.dll
Look at it there on line 53

I have also updated readme with a better install process. But I have not tested it yet.

this is the log
ubuntu@plum:~$ pip show easyhid
Name: easyhid
Version: 0.0.10
Summary: A simple interface to the HIDAPI library.
Home-page: http://github.com/ahtn/python-easyhid
Author: jem
Author-email<EMAIL_ADDRESS>License: MIT
Location: /home/ubuntu/.local/lib/python3.8/site-packages
Requires: cffi
Required-by:
ubuntu@plum:~$ apt list libhidapi-dev
Listing... Done
libhidapi-dev/focal,now 0.9.0+dfsg-1 arm64 [installed]
ubuntu@plum:~$ uname -a
Linux plum 5.4.0-1070-raspi #80-Ubuntu SMP PREEMPT Thu Sep 8 15:35:01 UTC 2022 aarch64 aarch64 aarch64 GNU/Linux
ubuntu@plum:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.5 LTS
Release:        20.04
Codename:       focal
ubuntu@plum:~$ ./m
mouse.py       ms5837-python/
ubuntu@plum:~$ vim mouse.py
ubuntu@plum:~$ ls
PCA9685.py  catkin_ws  ina226.py      openocd      pigpio-master  ser_with.py       socket_server.py       tcp_serial_redirect.py
SSD1306     emio_ws    mouse.py       openocd.cfg  rpi-backup     servo_demo.c      stm32flash-0.6         temp_DHT11.py
USART.axf   hello      ms5837-python  pi_ina226    ser_read.py    socket_client.py  stm32flash-0.6.tar.gz  test_mouse.py
ubuntu@plum:~$ vim mouse.py
ubuntu@plum:~$ python3 mouse.py
Traceback (most recent call last):
  File "mouse.py", line 2, in <module>
    import pyspacemouse
ModuleNotFoundError: No module named 'pyspacemouse'
ubuntu@plum:~$ pip install pyspacemouse
Collecting pyspacemouse
  Using cached pyspacemouse-1.0.3-py3-none-any.whl (10 kB)
Requirement already satisfied: easyhid in ./.local/lib/python3.8/site-packages (from pyspacemouse) (0.0.10)
Processing ./.cache/pip/wheels/5e/5d/01/3083e091b57809dad979ea543def62d9d878950e3e74f0c930/typing-<IP_ADDRESS>-py3-none-any.whl
Requirement already satisfied: cffi in ./.local/lib/python3.8/site-packages (from easyhid->pyspacemouse) (1.15.1)
Requirement already satisfied: pycparser in ./.local/lib/python3.8/site-packages (from cffi->easyhid->pyspacemouse) (2.21)
Installing collected packages: typing, pyspacemouse
Successfully installed pyspacemouse-1.0.3 typing-<IP_ADDRESS>
ubuntu@plum:~$ python3 mouse.py
SpaceMouse Compact found
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
^CTraceback (most recent call last):
  File "mouse.py", line 10, in <module>
    time.sleep(0.01)
KeyboardInterrupt

ubuntu@plum:~$

setenv
HID= C:\Users\admin\Documents\Hardware\hidapi\x64
PATH= %PATH%;%HID%

Good Results

Excellent, so now is everything working?
Could you please add a pull request with a better installation process?

Might I ask you in which project do you want to use this library?
My motivation was in controlling my computer (apps) using this SpaceMouse. Especially for Inkscape - moving canvas and rotating objects.

robot motion control

That sounds nice 😍
So, is everything working correctly right now, might I close this issue?


Player stops before playing last song

The player stops playing with one song left in the queue. It will not begin playing again once another song has been added. It requires a page refresh to start playing again.

to add to this issue when rdiodj stops playing it stops for all users connect to room .

I believe this issue has been fixed in the latest code (deployed on http://rdioparty.com/).  Please reopen if that's not the case.


fix(runtimes): Remove unused Pydantic dependencies

These runtimes don't explicitly use Pydantic. Remove the dependency then to make that clear, and to increase flexibility. A step towards Pydantic v2.

I also see no pyproject.toml changes for some runtimes e.g. alibi-explain so I am not sure if they were missed?

This is for unused Pydantic dependency declarations. Alibi Explain uses Pydantic [1].
[1] https://github.com/jesse-c/MLServer/blob/02268574ff8cb5d330edfeb8cc10b64896472e22/runtimes/alibi-explain/mlserver_alibi_explain/common.py#L7


Speedup using Transformer-XL

Prediction in CPU takes about 1 sec for a paragraph. Would using transformer-xl speedup predictions on CPU?

Also interest

also interest


Unexpected / Inconsistent behaviour for out-of-bounds access

JAX outputs hard to debug error-messages in some situation if an array is accessed out-of-bounds.
I created a minimal example illustrating the issues:
import jax
import jax.numpy as jnp

def loss(params, obs):
  network_output = params * obs # Network output has shape [4, 10]
  network_output = network_output[20]  # Bug! 20 is out-of-bounds
  # Weird stop-gradient is required to trigger the error.
  loss = jnp.sum(jax.lax.stop_gradient(params[0]) * network_output)
  return loss

def update(params, obs):
  grad = jax.grad(loss)(params, obs)
  return params + grad

params = jnp.ones((10,))
obs = jnp.ones((4, 10))

If I run the code without jit compiling, it actually works because JAX does not raise an error on out-of-bound accesses (see https://github.com/google/jax/issues/1451).
update(params, obs)
But if I jit compile it I do get an error, but a very hard to interpret one:
jax.jit(update)(params, obs)

RuntimeError: Internal: Expected instruction to have shape equal to f32[21,10]{1,0}, actual shape is f32[4,10]{1,0:T(4,128)}:
%pad.6 = f32[4,10]{1,0:T(4,128)} pad(f32[1,10]{1,0:T(2,128)} %param_1.12, f32[]{:T(256)} %constant.54), padding=20_0x0_0, metadata={op_type="scatter-add" op_name="jit(update)/scatter-add[ dimension_numbers=ScatterDimensionNumbers(update_window_dims=(0,), inserted_window_dims=(0,), scatter_dims_to_operand_dims=(0,))\n                         update_consts=() ]" source_file="" source_line=6}

I only get the error if I have the stop-gradient piece in the loss-function.
Honestly, I don't know what the expected behavior should be, but I figured I report it anyway, since the behavior seems to be inconsistent.
Ideally jax would raise always an error on out-of-bound access, or alternatively throw an error without jit as well. But the current situation makes this kind of bug incredibly hard to debug (since it only shows up with jit).

Thank you so much for reporting this! I think there might be a couple things going wrong here. We must improve it!

It looks like this has been fixed, in that there is no longer an inscrutable error. out-of-bound indices are clipped by default; see https://jax.readthedocs.io/en/latest/notebooks/Common_Gotchas_in_JAX.html#out-of-bounds-indexing


Update the gendocs.sh script to allow reading from HEAD

This change allows the gendocs.sh script to update the
generated documentation for SPF from the latest commit instead
of only from an existing tag.  This will allow updating the
documentation for an upcoming release before it is tagged.
Progress on #406

LGTM :+1:


SuspendTenant not working in global or sitename scope

What Operating System are you seeing this problem on?
Ubuntu
What Hardware is this system running?
VM
KumoMTA version
Latest Dev
Did you try the latest release to see if the issue is better (or worse!) than your current version?
Yes, and I updated the version box above to show the version that I tried
Describe the bug
As reported by a customer:
We have clear evidence that SuspendTenant doesn't work in the global default scope or in a sitename scope. Even though this tenant gets suspended, it still seems to be attempting deliveries every 1s or so.
    [["default".automation]]
    regex = "unusual rate of mail originating from your DKIM domain"
    trigger = "Immediate"
    action = "SuspendTenant"
    duration = "15 minutes"

This graph is showing gmail.com only errors for things like Gmail has detected an unusual rate of mail originating from your DKIM domain that match the above TSA and create the 5m (known bug) suspensions. Graph is showing one specific account, with only those deferral error types, and one egress IP. The pattern is consistent across other IPs that this sender is sending from.

To Reproduce
Configure a SuspendTenant automation in a Global or Sitename Scope
Configuration
See above
Expected Behavior
Should suspend, does not properly suspend.
Anything else?
No response

Fixed in https://github.com/KumoCorp/kumomta/commit/12b3ae51aca5fdc27a540f2ba6f72cc7c342c6a8


Update age test within examples

The current form of these tests is ageist and not something that I feel ought to be joked about. It would be a shame if anyone using this library came across this example and felt excluded or discriminated against as a result! 😞
This change switches the test to be a more common example: ensuring that an individual filling out a form meets a particular legal age requirement.

👏 👏 👏

Codecov Report

Merging #3885 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master   #3885   +/-   ##
======================================
  Coverage     100%    100%
======================================
  Files          70      70
  Lines        1627    1627
======================================
  Hits         1627    1627

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 c45867b...8a84eaf. Read the comment docs.

Thanks for this. 👍
Is making fun of AOL users still acceptable? 😄


Can't eval html2canvas.min.js

I want to add html2canvas to the code without downloading from a URL. I tried using eval on this code  but it didn't work. I get the error Uncaught SyntaxError: Invalid or unexpected token.  I tried the accepted answer from this SO post, but I got the same error.
Can you help me, please?

It seems to eval it without issue: https://jsfiddle.net/L95y83ut/1/


0 24 1 12 0 seems to pass

hour's value should be 0-23.
But $result = CronExpression::isValidExpression("0 24 1 12 0") seems to return true

Fixed in b9f4588 as part of the validation updates


Remove Duplicate Sentence

The 2nd and 3rd paragraph were basically the same sentence.

r? @brson
(rust_highfive has picked a reviewer for you, use r? to override)


Upgrade stylelint version to 7.8.0

👎

Coverage remained the same at 100.0% when pulling 2f75afbdea62121ffcf4384eb849d6d970d86458 on onedesert:master into 164052195b1d3ebe8019858e1d5c777df92b865f on shinnn:master.


runtime error

hi,
have you successfully run the train.py?
I encountered a runtime error saying: "div_ only supports scalar multiplication" from line "x/=norm.expand_as(x)" in modules/l2norm.py
Then I changed this line to "x = x.div(nor.expand_as(x))" but got another cuda runtime error "device-side assert triggered" from line "return torch.cat([g_cxcy, g_wh], 1)" in box_utils.py
BTW, i am using python 2.7 instead of python3.

Yes I've successfully trained several models.  For some reason I cannot reproduce this error on my machine.  Did you make sure your repo is up to date with the current master branch?

I am using Python 3, and have not tested it using 2.7, so that is the only thing I can think of at the moment if you're local repo is up to date.  I will add the lack of 2.7 support to the README if that's the issue.

I didn't build from the source but installed pytorch from pip. I have also made some changes to adapt your code to python 2.7 (link star expression)
I checked the latest master branch and found that https://github.com/pytorch/pytorch/blob/master/torch/autograd/variable.py#L317-L320 still only supports scalar division. In the case of your code "x/=norm.expand_as(x)", it is clearly an element-wise division. But I don't understand how the python version can affect this.

BTW, could you please give me a rough time estimation for running one epoch ( with machine specs)?

Yeah I agree I don't understand how it is working on my computer if that's the case.  I'll look into it more after my classes today, sorry I don't have an answer right this second.  As for the time estimate, it takes ~1.4 seconds to run a batch of size 32 forward and backward, but I'm not in my lab right now so I can't remember the exact time per batch.  Will get back to you on all of this right after class.

And that's on a single Tesla K80 ^

I think if you update to the latest version of Pytorch you will see that element-wise division with .div_() is supported.  I do remember that it was originally not supported, but they added it not too long ago.  When I run something as simple as:
x = torch.Tensor([1,2,3,4,5,6])
y = torch.Tensor([2,2,2,2,2,2])
x/=y

the correct result is returned.  With a batch size of 32, on 1 Tesla K80, it takes me ~ 109 sec. per epoch.

As I stated in the previous post, in the latest github pytorch source code (master branch), it still shows:
def div_(self, other):         if not isinstance(other, Variable) and not torch.is_tensor(other):             return DivConstant(other, inplace=True)(self)         raise RuntimeError("div_ only supports scalar multiplication")
I still don't understand how it works for you case. But I will try to update my pytorch to the latest version.
Thanks a lot.

As I mentioned in the previous post, in the latest github pytorch source code (master branch), it still shows:
def div_(self, other):
    if not isinstance(other, Variable) and not torch.is_tensor(other):
        return DivConstant(other, inplace=True)(self)
    raise RuntimeError("div_ only supports scalar multiplication")

I still don't understand how it works for your case. But I will try to update my pytorch to the latest version.
Thanks a lot.

Yeah, I apologize for lack of a better answer, but since I cannot reproduce I am closing the issue for now.  Let me know if updating PyTorch fixes the issue, I will try to see if I can figure out more info myself in the mean time..

Ah, figured it out.  That line in the source code is referring to Variables, so it is just saying Variables cannot be divided by Tensors, but Variables can be divided by other Variables of the same size (which is the case here) and Tensors can be divided by other Tensors of the same size.
torch/csrc/generic/methods/TensorMath.cwrap line 1038 has what looks like the place that bridges the python and C for the tensor div_ definition, and it's implied in torch/tensor.py 378: return self.div_(other) even though it doesn't seem like self.div_ is defined.
So again, not sure what the exact source of the problem is in your case, but my best bet is your version of PyTorch.  Hopefully that helps.

Also, update on training time: it takes approx. 37.5 sec. per batch with a gtx1060 and batch size of 16, which is what I am currently using (ran out of money to afford the K80 EC2 instance :P).

Thanks a lot. I will definitely update my Pytorch.
Regarding the training time, it only takes 37.5 sec for one epoch? (I suppose you were training using VOC2007 with about 10000 images, right?). I have tried training a mxnet SSD implementation which takes about 270 sec for one epoch using both VOC2007 and VOC2012 data on my titan x gpu card. Does this mean this pytorch ssd is even faster than the mxnet implementation, which doesn't seem to be true.

Yeah, that's my bad. Disregard that number, its late here.  Training on purely the training set (~2501 images) from VOC07 it takes on average ~138 sec. per epoch on my GTX 1060... So yeah the previous number was off by alot.  I would be curious to see how it compares on a Titan X though.

one more question ;-)
I am wondering how you got the fc-reduced VGG-16 weights?

Hahah of course... I converted them to Chainer and then from Chainer to PyTorch.  I also was able to convert them to Torch and then from Torch to PyTorch, but the specific weight file I supply was one that took the Chainer route.

hi, i just updated the pytorch to the latest version (0.1.11_5) and had the train.py run.
luckily, i didn't get the div_ error.
but this time, I got "RuntimeError: cuda runtime error (59) : device-side assert triggered at /b/wheel/pytorch-src/torch/lib/T1" at "conf = labels[best_truth_idx] + 1 " from the box_utils.py
any idea about this? it seems like something to do with tensor add

Is this on the first feed forward or were you able to get through some iterations?  The only time that line has every been an issue was a while back when I had an explicit 'background' label in the voc labelmap and it just became an index out of range issue for softmax.  But I'm currently training as I type this and can't think of what could be causing that.  Have you pulled the most recent update of master?  Or maybe you're on a different branch?

I faced this issue as well, with PyTorch version ( 0.1.12_4 ) which is very recent.
I fixed it by changing the forward() function in L2Norm.py as follows:
    def forward(self, x):
        norm = x.pow(2).sum(1).sqrt()+self.eps
        norm_stretch = norm.expand_as(x)
        x = x / norm_stretch
        out = self.weight.unsqueeze(0).unsqueeze(2).unsqueeze(3).expand_as(x) * x
        return out

I then am facing the same issue as @HRG-CDL about the indices.

I get exactly the same error. Trying to figure out why. It happens in the line
matches = truths[best_truth_idx]
when truths is of dimension [torch.cuda.FloatTensor of size 1x4 (GPU 0)], but works when the first dimension of truths is > 1 (2x4 or 5x4).

great suggestion @superhans . adding from __future__ import division to most of the files, gets rid of any nan, inf in the loss for python 2.7


Investigating the source of invalid gene identifiers in the genetics pipeline

It has been noticed that a small number of disease/target evidence is failing the validation when ingested by the OpenTargets Platform ETL due to invalid target identifiers. (39 genes and ~200 evidence)
The full list of all genes and their source can be found in the attached table under issue #1554

[x] Inverstigating why these genes are failing? When was the last time they were in the canonical Esnembl release?
[ ] Invetstigate where the genetics portal pipeline fetches the gene list when generating l2g scores or other steps.

The following table summarises the history of those Ensembl gene identifiers, which were failing the platform ETL check:

targetFromSourceId
evidenceCount
status
version

ENSG00000269881
48
retired
97

ENSG00000130489
45
retired
97

ENSG00000254462
43
retired
99

ENSG00000283932
42
retired
97

ENSG00000278272
36
retired
97

ENSG00000270898
34
retired
97

ENSG00000278500
32
retired
97

ENSG00000261833
23
retired
97

ENSG00000274267
22
retired
97

ENSG00000204683
20
retired
101

ENSG00000285258
20
retired
100

ENSG00000267545
20
retired
97

ENSG00000286169
18
retired
102

ENSG00000263264
17
retired
103

ENSG00000181013
14
retired
98

ENSG00000243444
14
retired
98

ENSG00000241978
13
retired
98

ENSG00000268861
13
retired
103

ENSG00000183729
11
retired
101

ENSG00000260300
8
retired
98

ENSG00000130723
8
retired
103

ENSG00000286094
6
retired
101

ENSG00000183791
5
retired
101

ENSG00000284041
5
retired
97

ENSG00000267697
5
retired
100

ENSG00000213865
4
retired
97

ENSG00000274897
4
retired
101

ENSG00000285441
3
retired
101

ENSG00000260869
2
retired
97

ENSG00000277669
2
retired
97

ENSG00000213029
2
retired
100

ENSG00000281028
2
retired
97

ENSG00000274744
2
retired
101

ENSG00000262621
2
retired
98

ENSG00000278674
2
retired
101

ENSG00000272949
1
retired
97

ENSG00000286261
1
retired
102

ENSG00000277726
1
retired
103

ENSG00000255863
1
retired
97

Apparently all failed IDs were retired at some point in the past. The earliest release where any of the IDs were retired was v97, suggesting the gene set for the last Genetics Portal release was based on v96. Ensembl released v96 on April 2019.

Where is the data coming from?
I identified the source of this information the V2G pipeline, more specifically the snakemake configuration:
# Gene information
genes: gs://genetics-portal-input/luts/19.06_gene_symbol_synonym_map.json

The creation date of the file (19.06) is in accordance with the suspected v96 origin of the file set. This file is a simple JSON file with some gene related information on genomic location and the gene names/synonyms.
{
  "gene_id": "ENSG00000205002",
  "gene_name": "AARD",
  "gene_synonyms": [
    "LOC441376",
    "C8orf85"
  ],
  "gene_chrom": "8",
  "gene_start": 116938199,
  "gene_end": 116944487
}

When joining this dataset with the retired gene identifiers, we get perfect match: all retired ids can be found in this file.

targetFromSourceId
evidenceCount
status
version
gene_name
gene_chrom
gene_start
gene_end

ENSG00000269881
48
retired
97
AC004754.1
16
249547
269943

ENSG00000130489
45
retired
97
SCO2
22
50523568
50525606

ENSG00000254462
43
retired
99
TMX2-CTNND1
11
57712605
57791586

ENSG00000283932
42
retired
97
AL121722.1
20
22560553
22584261

ENSG00000278272
36
retired
97
HIST1H3C
6
26045411
26045821

ENSG00000270898
34
retired
97
GPR75-ASB3
2
53670293
53860160

ENSG00000278500
32
retired
97
AC009336.2
2
176151085
176173097

ENSG00000261833
23
retired
97
AC104151.1
16
76553417
76819624

ENSG00000274267
22
retired
97
HIST1H3B
6
26031650
26032060

ENSG00000204683
20
retired
101
C10orf113
10
21125763
21146559

ENSG00000285258
20
retired
100
ATXN7
3
63864557
64003462

ENSG00000267545
20
retired
97
AC005779.2
19
45179822
45202444

ENSG00000286169
18
retired
102
AHRR
5
271670
438291

ENSG00000263264
17
retired
103
AC119396.1
19
7348943
7383385

ENSG00000181013
14
retired
98
C17orf47
17
58541587
58544368

ENSG00000243444
14
retired
98
PALM2
9
109640788
109951476

ENSG00000241978
13
retired
98
AKAP2
9
110048598
110172512

ENSG00000268861
13
retired
103
AC008878.3
19
7382834
7472477

ENSG00000183729
11
retired
101
NPBWR1
8
52938431
52941117

ENSG00000260300
8
retired
98
AC009119.2
16
83908132
83951445

ENSG00000130723
8
retired
103
PRRC2B
9
131373636
131500197

ENSG00000286094
6
retired
101
AC026740.3
5
716808
766919

ENSG00000183791
5
retired
101
ELOA3
18
47028202
47030078

ENSG00000284041
5
retired
97
AC073111.3
7
150368790
150396915

ENSG00000267697
5
retired
100
LUZP6
7
135927274
135927450

ENSG00000213865
4
retired
97
C8orf44
8
66667615
66685564

ENSG00000274897
4
retired
101
PANO1
11
797511
799185

ENSG00000285441
3
retired
101
SOD2
6
159679119
159762529

ENSG00000260869
2
retired
97
AC002310.4
16
30534227
30558279

ENSG00000277669
2
retired
97
AC009086.2
16
29663279
29695144

ENSG00000213029
2
retired
100
SPHAR
1
229304857
229305504

ENSG00000281028
2
retired
97
AC104662.2
4
25160663
25277306

ENSG00000274744
2
retired
101
ELOA3D
18
46962768
46964408

ENSG00000262621
2
retired
98
AC025283.2
16
3382113
3397745

ENSG00000278674
2
retired
101
ELOA3B
18
47022287
47023927

ENSG00000272949
1
retired
97
AC093668.2
7
102483344
102543764

ENSG00000286261
1
retired
102
AC022137.3
19
53431984
53461862

ENSG00000277726
1
retired
103
AL109811.3
1
11012662
11030528

ENSG00000255863
1
retired
97
AC073610.2
12
48921963
48939663

There's one caveat of this analysis: I cannot tell for sure where else this file is used. However given the simplicity of this file, I would suggest to add and extra rule to the pipeline to generate the gene_symbol_synonym_map.json.

It's worth noting that there may be other locations where a specific version of the gene mapping has been used. E.g. this is in Miguel's config file:
ensembl {
lut = ${input}"/lut/homo_sapiens_core_96_38_genes.json"
}
It's located here:
gs://genetics-portal-data/lut/homo_sapiens_core_96_38_genes.json
This file is also used in the L2G pipeline:
https://github.com/opentargets/genetics-l2g-scoring/blob/master/1_feature_engineering/1_prepare_inputs.py


Is it possible to save the probeselector to a file?

Hi, thank you for the tool and congratulations on the preprint.
I am running spapros on the command line.
After a run is finished I want to plot the selector, masked_dotplot, plot_gene_overlap()  ect in a separate file.
Is the selector object saved somewhere in the results folder or how do I archieve that?
I tried to pickle it but ran into some problems related to the multiprocessing

Hi!
You can reload the saved output by creating another ProbesetSelector object with the same save_dir and running select_probeset (this method loads results if they already exist). Importantly also the arguments adata and celltype_key need to be the same as in the initial selection.
Example:
# first run
import spapros as sp
adata = sp.ut.get_processed_pbmc_data()
selector = sp.se.ProbesetSelector(adata, "celltype", n=30, verbosity=0, save_dir="./selection/")
selector.select_probeset()
sp.pl.masked_dotplot(adata,selector)

del selector

# Load from save_dir
selector = sp.se.ProbesetSelector(adata, "celltype", n=30, verbosity=0, save_dir="./selection/")
selector.select_probeset()
sp.pl.masked_dotplot(adata,selector)

You mentioned you're running spapros on the command line though. The cli functions are not maintained atm, did you use those or did you wrap the Selector similar to my code example?

[ ] I guess it would be good to add some function load_selector(save_dir, adata).

I think saving the whole selector e.g. via pickle is unfortunately not the way to go since it would include the data object selector.adata.

Thank you, that works fine.
I wrapped the functions like in your example


Roll Flutter Engine from f79030440948 to 78a68b9dfe11 (2 revisions)

https://github.com/flutter/engine/compare/f79030440948...78a68b9dfe11
2023-01-15<EMAIL_ADDRESS>Roll Skia from c64a10d525d1 to aa99fa0bdd31 (10 revisions) (flutter/engine#38886)
2023-01-15<EMAIL_ADDRESS>Roll Dart SDK from 645fd748e79e to 0097dcbada06 (3 revisions) (flutter/engine#38883)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Commit queue failed; closing this roll.


new title

Current title is 143 characters, max is 75. (Ack!)
Current:
"Warmer spring temperatures in temperate deciduous forests advance the timing of tree growth but have little effect on annual woody productivity"
Ideas:

"Warm springs affect temperate deciduous tree growth timing but not extent" (73 char)  -does "extent" sound weird? (and "affect" is boring)
"Warm springs impact temperate deciduous tree growth timing but not extent" (73 char)
"Warm springs impact temperate deciduous tree growth timing but not magnitude" (76 char 👎  )
"Warm springs alter temperate deciduous tree growth timing but not magnitude" (75 char 🥇   )
"Warm springs alter timing but not magnitude of temperate deciduous tree growth" (I like this better, but 78 char 👎 )
"Warm springs alter timing but not amount of temperate deciduous tree growth" (75 char 🥇  )
"Warm springs alter timing but not extent of temperate deciduous tree growth" (75 char 🥇  - think I'm changing my mind on "extent" sounding weird...)

I think the three in bold are the best I can come up with for now. @camerondow35 , which do you prefer? Or do you have other suggestions?
I think my favorite is the 3rd option.

I think "Warm springs alter timing but not amount of temperate deciduous tree growth" is ok.

"Warm springs alter timing but not extent of temperate deciduous tree growth" (75 char 🥇 - think I'm changing my mind on "extent" sounding weird...)

"Extent" does sound a bit off to me. It seems like more of a spatial term to me.
I wonder if they're going to have a problem with us saying "amount/total of temperate deciduous tree growth" since we're only looking at stem growth?
How about:
"Warm springs alter timing of but not total stem growth in deciduous trees" - 73

Or do we even need to include the "timing" part?
Warm Springs do not lead to increased stem growth in temperate deciduous trees - 78... a little over
or
Warm Springs do not lead to increased growth in temperate deciduous trees - 73 if you want to get rid of the stem part

I think the best option we both accept is still  Warm springs alter timing but not amount of temperate deciduous tree growth.
I feel that it's essential to include timing, as that's half the story. I also know some of the dendro coauthors would say that the lack of effect of spring temperatures is unsurprising (we've done the biggest analysis of this to date, but they have a strong sense of what to expect.)
I also think it's important to include "temperate". This makes a critical distinction from, say, tropical deciduous forests.
Another option:
Warm springs alter timing but not volume of temperate deciduous tree growth.  This would also help to address the comment of reviewer 2, although it's not necessary to put volume in the title to give an adequate response.

@camerondow35 , @rudeboybert , @ValentineHerr, we need to settle on a title. Cam & I have discussed options and at the moment it comes down to two options:

Warm springs alter timing but not amount of temperate deciduous tree growth. (75 char)
Warm springs alter timing but not volume of temperate deciduous tree growth. (75 char)
other?

It would be good to hear opinions.

I'd prefer magnitude, but that puts us over the 75 char limit.

updated:

Warm springs alter timing but not amount of temperate deciduous tree growth. (75 char)
Warm springs alter timing but not volume of temperate deciduous tree growth. (75 char)
Warm springs alter timing but not extent of temperate deciduous tree growth (75 char)

from offline chat, @rudeboybert  and I both think 3 is a better option than 1 or 2. @camerondow35 , you weren't so sure about "extent", but what do you think in this context?

I am not a fan of "extent" but probably because I encounter that word more in the GIS world.
I just looked a some synonyms  and found "breadth". Would that work?
Or, would putting growth before help? like "... total growth of temperate deciduous trees"? or "... overall growth of temperate deciduous trees"?
These are just some other suggestions, I'd be fine with any of 1.2.3 above.

I agree with Valentine about "extent", to me it's used more to describe the spatial extent of something.

Or, would putting growth before help?

I actually like this idea! So: "Warm springs alter timing but not total growth of temperate deciduous trees" but removing the "of" could be weird.
Since I have the least experience with picking titles, i'm fine with whatever you all think is best.

I think we have the solution!
"Warm springs alter timing but not total growth of temperate deciduous trees" is perfect.

CLEAN

I loved all your reactions, @rudeboybert !


Kafka cluster not recognizing Blob

I spun Kafka cluster with blob storage (general purpose v1) as primary storage. No other storage attached. However kafka nodes not able to access blob files on same storage. Spark/R clusters can access files on same blob.
I created another kafka cluster but issue is still there. I have provided different container names for each cluster.
Command: hdfs dfs -ls<EMAIL_ADDRESS>Error:
ls: org.apache.hadoop.fs.azure.AzureException: No credentials found for account demostoragepoc.blob.core.windows.net in the configuration, and its container elckafka2 is not accessible using anonymous credentials. Please check if the container exists first. If it is not publicly available, you have to provide account credentials.
Thanks!

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

ID: 86061ff8-2c49-bccb-0550-4950094e08b4
Version Independent ID: e6f22286-e23a-364d-6e1d-4e39baf7f983
Content: Cluster setup for Hadoop, Spark, Kafka, HBase, or ML Services - Azure HDInsight
Content Source: articles/hdinsight/hdinsight-hadoop-provision-linux-clusters.md
Service: hdinsight
GitHub Login: @mumian
Microsoft Alias: jgao

@HemantChandurkar Thank you for posting your question. We are using github for addressing doc issue. Since this is an issue faced on product our MSDN forum is best suited for this. Please kindly post your question here for help.


Add gitsigns recommended keymaps

Some of the gitsigns keymaps were already present but not all.
Among the missing was the visual stage hunk which I find extremely useful.
The keymaps are copied directly from gitsigns readme, stylua applied and descriptions added.

Stupid question but these key apps don't conflict with any existing maps do they?

They don't conflict, I checked on kickstart master these maps:
map <leader>h
map <leader>t
vmap <leader>h
omap ih

and the only output is:
n  <Space>hp   *@<Lua 6: ~/.local/share/nvim-ksm/lazy/gitsigns.nvim/lua/gitsigns/actions.lua:689>
                 Preview git hunk
n  <Space>hÞ   * <Nop>

So, the only one is hunk-preview which was already configured in kickstart.
With the added keymaps, the output is:
n  <Space>hD   *@<Lua 174: ~/unison/_config/nvim-ksm/init.lua:177>
                 git diff against last commit
n  <Space>hd   *@<Lua 6: ~/.local/share/nvim-ksm/lazy/gitsigns.nvim/lua/gitsigns/actions.lua:1058>
                 git diff against index
n  <Space>hb   *@<Lua 268: ~/unison/_config/nvim-ksm/init.lua:173>
                 git blame line
n  <Space>hp   *@<Lua 59: ~/.local/share/nvim-ksm/lazy/gitsigns.nvim/lua/gitsigns/actions.lua:689>
                 preview git hunk
n  <Space>hR   *@<Lua 21: ~/.local/share/nvim-ksm/lazy/gitsigns.nvim/lua/gitsigns/actions.lua:352>
                 git Reset buffer
n  <Space>hu   *@<Lua 161: ~/.local/share/nvim-ksm/lazy/gitsigns.nvim/lua/gitsigns/async.lua:184>
                 undo stage hunk
n  <Space>hS   *@<Lua 18: ~/.local/share/nvim-ksm/lazy/gitsigns.nvim/lua/gitsigns/async.lua:184>
                 git Stage buffer
n  <Space>hr   *@<Lua 7: ~/.local/share/nvim-ksm/lazy/gitsigns.nvim/lua/gitsigns/repeat.lua:4>
                 git reset hunk
n  <Space>hs   *@<Lua 289: ~/.local/share/nvim-ksm/lazy/gitsigns.nvim/lua/gitsigns/repeat.lua:4>
                 git stage hunk
v  <Space>hr   *@<Lua 288: ~/unison/_config/nvim-ksm/init.lua:163>
                 reset git hunk
v  <Space>hs   *@<Lua 303: ~/unison/_config/nvim-ksm/init.lua:160>
                 stage git hunk
n  <Space>hÞ   * <Nop>
n  <Space>td   *@<Lua 277: ~/.local/share/nvim-ksm/lazy/gitsigns.nvim/lua/gitsigns/actions.lua:142>
                 toggle git show deleted
n  <Space>tb   *@<Lua 46: ~/.local/share/nvim-ksm/lazy/gitsigns.nvim/lua/gitsigns/actions.lua:127>
                 toggle git blame line
n  <Space>tÞ   * <Nop>
v  <Space>hr   *@<Lua 288: ~/unison/_config/nvim-ksm/init.lua:163>
                 reset git hunk
v  <Space>hs   *@<Lua 303: ~/unison/_config/nvim-ksm/init.lua:160>
                 stage git hunk
o  ih          *@:<C-U>Gitsigns select_hunk<CR>
                 select git hunk

I excluded from the above output the single <space> which-key.show entries such as:
n  <Space>     * <Cmd>lua require("which-key").show(" ", {mode = "n", auto = true})<CR>

for easier comparison.


Mark Downward API VolumeMount as readonly.

Changes
This is effectively a no-op change, since the Downwards API Volume is
already readonly. This simply updates the VolumeMount to also mark the
volume as read-only for completeness.
Tests are repetitive, and would probably benefit from some refactoring to
simplify the common volumes, but considering that out of scope for this change.
This is part of #4227 to lock down step volumes as much as possible.

Submitter Checklist
As the author of this PR, please check off the items in this checklist:

[x] Docs included if any changes are user facing
[x] Tests included if any functionality added or changed
[x] Follows the commit message standard
[x] Meets the Tekton contributor standards (including
functionality, content, code)
[x] Release notes block below has been filled in or deleted (only if no user facing changes)

/release-note-none

/lgtm
Nice!

/approve


W3TotalCache config folder - I think it should be added to .gitignore

Submit a feature request or bug report

[x] I've read the guidelines for Contributing to Roots Projects
[x] This is a feature request
[x] This is a bug report
[x] This request isn't a duplicate of an existing issue
[x] I've read the docs and followed them (if applicable)

What is the current behavior?
W3TC save it's config in web/app/w3tc-config folder and bedrock keeps this folder in repository.
What is the expected or desired behavior?
I think that this should be added to gitginore. I think that most of user developers have different cache config on dev, staging and production. I know that this is quite speciffic cacse, but this is a realy popular plugin and pushing wrong config to production might be suprising.
I just add web/app/w3tc-config to gitignore to every project of mine.

Like I said - I'm not fully sure should this be in the .gitignore or should the developer decide to put thi line there. On the other hand maybe this should be mentioned in docs.
Of course W3TC isn't probably the only plugin that keep config that way. If you think this should should be mentioned in any way I would gladly test caching plugins and prepare a list of what should be add to gitgnore

Ok - I understand - that's why I asked. Thanks for quick response.
Still I think that maybe some section in docs would be useful. But I think first I'll collect some data about other caching plugins.


Ошибка при генерации ключей Unexpected end of JSON input

SyntaxError: Unexpected end of JSON input
    at JSON.parse (<anonymous>)
    at parseJSONFromBytes (node:internal/deps/undici/undici:4747:19)
    at successSteps (node:internal/deps/undici/undici:4718:27)
    at fullyReadBody (node:internal/deps/undici/undici:1433:9)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async specConsumeBody (node:internal/deps/undici/undici:4727:7)
    at async file:///app/app/services/BaseKeyGenerateService.js:60:26
    at async GangsWarsKeyGenerateService.login (file:///app/app/services/BaseKeyGenerateService.js:51:26)
    at async GangsWarsKeyGenerateService.generateKey (file:///app/app/services/BaseKeyGenerateService.js:116:9)
    at async Promise.all (index 2)

В релизе v1.5.1


Contributors section added

I have added the contributor's section (for now only it has dummy data).
@smaranjitghose Have a look at it.

ss:

@Adyasha8105
Please have a look at the suggested UI for the contributors. This does not match the requirements at all

It's very unappealing to have social media above one's head in a picture. Please do the necessary changes


Add support for SELECT DISTINCT ON?

Have you considered adding support for SELECT DISTINCT ON? See here for an example.

There is now support for DISTINCT ON since esqueleto-2.2.4, released a few moments ago.

Thank you! :D


Inactive Project Managers

Hi Folks,
I think it would be good if there was some method to weed out projects from inactive managers. I have seen a few projects from folks with very low OSM edit counts and no edits in many months, if not years. Maybe its even an email to managers on a six monthly basis with stats or reports on project progress and maybe suggestions on re-engaging with their projects.
I just hate seeing projects that look to be abandoned by the project managers.
An alternate would be to automatically archive projects after a set period of non activity, and advise managers of that action. I think this would keep projects much 'fresher'. They could restart their projects if they still have an interest and if the challenge is still up to date and relevant.
Cheers

Hi @tastrax - we do auto-archive Challenges that have no tasks that have been updated in 6 months. This is part of an effort to achieve exactly what you are after. Challenge managers are advised of this.
You bring up an interesting point: letting 'inexperienced' OSM mappers create MapRoulette challenges. While OSM editing is not necessarily needed to create meaningful MapRoulette challenges, it is probably the best proxy we have. I will add the 'discussion' tag to this issue to get some feedback about this from others. Thanks for the suggestion.


Building librealsense on Mac OSX with network device support

Required Info

Camera Model
D400

Firmware Version
N/A

Operating System & Version
MacOS

Kernel Version (Linux Only)
N/A

Platform
PC

SDK Version
2.40.0

Language
C

Segment
N/A

Issue Description
With the following CMake flags,
cmake .. -DBUILD_EXAMPLES=true -DBUILD_WITH_OPENMP=false -DHWM_OVER_XU=false -DBUILD_NETWORK_DEVICE=ON

I am getting the following errors during the build process:
[ 94%] Building CXX object src/ethernet/CMakeFiles/realsense2-net.dir/__/__/third-party/live/liveMedia/uLawAudioFilter.cpp.o
[ 94%] Building CXX object tools/rs-server/CMakeFiles/rs-server.dir/RsServer.cpp.o
[ 95%] Building CXX object tools/rs-server/CMakeFiles/rs-server.dir/RsServerMediaSession.cpp.o
clang: warning: -latomic: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: -latomic: 'linker' input unused [-Wunused-command-line-argument]
[ 95%] Building CXX object tools/rs-server/CMakeFiles/rs-server.dir/RsServerMediaSubsession.cpp.o
clang: warning: -latomic: 'linker' input unused [-Wunused-command-line-argument]
[ 95%] Building CXX object tools/rs-server/CMakeFiles/rs-server.dir/RsSimpleRTPSink.cpp.o
clang: warning: -latomic: 'linker' input unused [-Wunused-command-line-argument]
[ 95%] Building CXX object src/ethernet/CMakeFiles/realsense2-net.dir/__/ipDeviceCommon/RsUsageEnvironment.cpp.o
[ 95%] Building CXX object tools/rs-server/CMakeFiles/rs-server.dir/RsSource.cpp.o
clang: warning: -latomic: 'linker' input unused [-Wunused-command-line-argument]
[ 95%] Building CXX object src/ethernet/CMakeFiles/realsense2-net.dir/RsMediaSession.cpp.o
2 warnings generated.
[ 95%] Building CXX object src/ethernet/CMakeFiles/realsense2-net.dir/RsRtspClient.cpp.o
[ 95%] Building CXX object src/ethernet/CMakeFiles/realsense2-net.dir/RsSink.cpp.o
/Users/adrian/librealsense/tools/rs-server/RsRTSPServer.cpp:67:7: error: no matching constructor for initialization of 'RTSPServer::RTSPClientConnection'
    : RTSPClientConnection(t_ourServer, t_clientSocket, t_clientAddr)
      ^                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/adrian/librealsense/build/third-party/live/liveMedia/include/RTSPServer.hh:157:5: note: candidate constructor not viable: no known conversion from 'struct sockaddr_in' to
      'const struct sockaddr_storage' for 3rd argument
    RTSPClientConnection(RTSPServer& ourServer, int clientSocket, struct sockaddr_storage const& clientAddr);
    ^
/Users/adrian/librealsense/build/third-party/live/liveMedia/include/RTSPServer.hh:135:9: note: candidate constructor (the implicit copy constructor) not viable: requires 1 argument, but 3 were
      provided
  class RTSPClientConnection: public GenericMediaServer::ClientConnection {

Hi @adrian-at-spectatorhealth   Intel's open-source ethernet white paper states that rs-server can only be compiled on Linux at the time of writing this.
https://dev.intelrealsense.com/docs/open-source-ethernet-networking-for-intel-realsense-depth-cameras#section-3-2-building-from-source


Will Default Model Binder support array binding for form datas like: numbers[]?

When I post my form data as numbers[0]=1&numbers[1]=1&numbers[2]=2&numbers[3]=3 or numbers=1&numbers=1&numbers=2&numbers=3 the default model binder binds my array.
But as I know many frameworks support as numbers[]=1&numbers[]=1&numbers[]=2&numbers[]=3. So by default jQuery ajax functions use this format too.
When I send a simple data with ajax:
$.ajax({
    url: '@Url.Action("Test1")',
    data: { numbers: [1, 1, 2, 3, 5] },
    method: 'POST'
});

It sends this as numbers[]=1&numbers[]=1&numbers[]=2&numbers[]=3&numbers[]=5.
Because of that its a little hard to post array data using ajax. I have to convert my arrays to objects whose parameters are indexes like {"0": 1, "1": 1, "2": 2, "3": 3} or make some changes in jQuery's ajax functions.
So will MVC support this type of binding by default?

@dougbu Can you confirm we don't support this syntax in MVC 5 & 6?

@danroth27 will do

@danroth27 I have confirmed we do not support the requested parameter syntax in MVC 6. It works in MVC 5. So this is a gap compared to MVC 5.
FYI neither MVC 5 nor 6 support the [] syntax in query strings. For example submitting to ...?Numbers%5B%5D=1&Numbers%5B%5D=2 does not work though ...?Numbers%5B0%5D=1&Numbers%5B1%5D=2 is fine (in both versions).

Updated title because this is no longer a question.

bda8501


[REGRESSION?] empty AQL result after creating a composition

Steps to reproduce

pulled the last develop branch of EHRBASE
tested the last develop branch of FHIR bridge and one test was failing
manually tested EHRBASE with the same requests sent from FHIR bridge to verify it's a problem of EHRBASE
generated this Insomnia script with requests:
POST template
POST ehr
POST composition (compliant with the template, for the EHR just created)
POST AQL to get the composition created for that template
the AQL result is empty

body_temp_Insomnia_2020-10-01.json.txt
Actual result
Empty AQL result.
Expected result
The AQL result should include the composition just created.
Success criteria

[ ] The defect has been fixed
[ ] The defect is checked by an unit or an integration test (Robot)
[ ] Merge Request approved
[ ] Unit tests passed
[ ] Build without errors
[ ] Release notes prepared
[ ] Runtime warnings

I deleted the database and run it again, the test worked. I guess the migrations are not applied automatically until the database is destroyed.


Make doesn't compile anything

Hi im new to this but i'm having an issue and after serious research i still lost. I'm on windows and installed mingw as welll as all the other things that is needed, changed the settings so the gcc and g++.exe is in the correct location and the make.exe as well but when i want to compile a pretty basic c program it always generates an empty folder and leaves no error that i could recognise and solve.
As i said i'm pretty noob in this.

Based on your screenshots i do not see if the build directory is empty or not.
Could you provide a screenshot?
And what behaviour did you expect on the second screenshot?

that it will build the program, the second screenshot was just a retry wether if it would magically be good but it just doesnt do anything after it generated the folders

Inside the build folder there is the debug folder a d there is the executable. But you can just click on the play button in the blue status bar. Everything works as expected for you

there is no such file

and no errorr as well

https://files.fm/u/gfh368jxf#/view/jmy3rcam8

Okay, very interasting.
Currently i cannot image what the problem might be.
Could you try this with a different make/compiler setup (if you have installed something else than msys/mingw64)

im currently installing cygwin

i dont know what is the issue but still with cygwin as well its just bad

Its probably fixed but i dont think it is the best solution, so i tried everything and so i ran the command what the vscode is using when generating the file in a command promt and that generated the files successfully. The generate button still doesnt work it does not change or modify the exe and the run does not start the program but at least i can generate the file manually.
I dont know wether this is an issue with the compiler or smt else but from vscode its still bad.
If i can provide anything to further investigate what could be the issue please ask.

What is the output of this command in the CMD when you are in the current workspace dir?
tree /F

I dont know if it is maybe a permission problem on your PC with creating the exe.

its the same as in the vs code terminal but here it is working
i guess i could be but i dont see why it cant build a file on my desktop

Can you try to start VSCode as admin and then retry?

It did the same, nothing changed still the directories are the only things that are being created.

Do you have by any chance WSL installed on your windows pc?
If so, you could try it on the WSL.
I still have the feeling that the issue has something to do with user permissons.

No I don't have that.

Can you try to use the experimental setting (after setting this VSCode restart is needed).
This should work then.

I will add a fix that for MinGW Users, Makefile is not used anymore but instead the currently called "experimental setting" is used.

it makes a different errorr but its something

PowerShell really sucks again.
I will try to add a fix for the PowerShell.

thank you for all i really apreaciate and i will wait then for the fix, and thank you for your patience

The issue with PowerShell will be fixed in todays release 1.4.0.
For the MinGW problem i still dont have a solution.

The experimental thing fixed it so the only issue was the power shell. The new version works well thank you!


Create main.js script

We should create a main.js script to test real world functionality. It should contain the code we would then put in the frontend, ie parsing some example geometries and doing a shading calculation.

[x] add small file with geometries in test folder
[x] add small file with height model, ie small GeoTIFF

This was done at the new repo https://github.com/open-pv/minimalApp


Update combineReducers.js

This may not seem obvious to many of us, but we can write
const bootstrapDataReducer = (state = null, event) => {
  switch (event.name) {
    case APPLICATION_STARTED:
      return event.data.bootstrapData;
    default:
      return state;
  }
};

instead of
const bootstrapDataReducer = (state = {}, event) => {
  switch (event.name) {
    case APPLICATION_STARTED:
      return event.data.bootstrapData;
    default:
      return state;
  }
};

Assigning an empty object as initial state looks to me an anti-pattern, yet many people tend to do this to satisfy Redux
I think it would give a better developer experience to document the ability to use "null" instead of "undefined" as reducer state in error messages

Erm... not sure I follow what you're saying here.  Can you give some more details on the background and intent?

@markerikson I mean that sometimes you want to create a reducer, but you don't want it to have an initial value assigned. And current error message does not really explain that "null" can be used for such usecase, it only explains that undefined is an illegal value

More detailed error messaging isn't a bad thing. Thanks!


Contenttemplates are left behind when validation is not succesfull

i use Umbraco 8.6.1 with DTGE 1.2.2.
When the validation of the a DTGE form is not succesfull, for example, because a required field has been left blank, the node under "Content Templates" is not getting deleted and stays behind.

They should be deleted by this line... https://github.com/skttl/umbraco-doc-type-grid-editor/blob/develop/src/Our.Umbraco.DocTypeGridEditor/Web/UI/App_Plugins/DocTypeGridEditor/Js/doctypegrideditor.controllers.js#L254
Needs to investigate this - if you'd like to help, it's appreciated :)

Found and fixed in d211de9cd58a12b5faa6f2cadf34af3a8223d6b2


Fix formatting issues

Purpose
fixing formatting issues mentioned in PR #19667
Fixes #
Approach

Describe how you are implementing the solutions along with the design details.

Samples

Provide high-level details about the samples related to this feature.

Remarks

List any other known issues, related PRs, TODO items, or any other notes related to the PR.

Check List

[ ] Read the Contributing Guide
[ ] Required Balo version update
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@10abae9). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master   #19810   +/-   ##
=========================================
  Coverage          ?    19.9%
=========================================
  Files             ?       55
  Lines             ?     1437
  Branches          ?      218
=========================================
  Hits              ?      286
  Misses            ?     1138
  Partials          ?       13

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 10abae9...e3b045b. Read the comment docs.


fix #59

stick to folder.
unable to find how to ban "directory" in aspell, so I banned "subdirectory" only.

@alex-cit just replaced directory -> folder


KtLint: Make functions needed to calculate line / column public

In order to avoid duplicating code, make these functions public for use
by tools that use KtLint programmatically and need to convert an offset
to line / column, like detekt.

@sschuberth Apologies for the delay. Can you try rebasing and re-pushing your PR? looks like something went wrong with the checks.

Done @shashachu.


Crash loading exes/dlls on Win 7

I get a crash loading any file, it seems to be something systemic. I'm on Windows 7 x64 SP1 which I would guess is important.
I was able to build and debug a bit, here's what I found so far:
It crashes with System.ArgumentOutOfRangeException: 'Length cannot be less than zero.' here. The reason being that ApiSetEntryName is empty and so the LastIndexOf is returning -1.
ApiSetEntryName is empty because ApiSetEntryIterator->NameLength is 0. The rest of ApiSetEntryIterator doesn't look quite right, I think the struct is different in memory because ValueCount seems too high. Likewise ApiSetEntryNameBuffer contains the API set but not at the right offset - it has the filename before:
-		ApiSetEntryIterator
		Flags	1	unsigned long
		NameOffset	500	unsigned long
		NameLength	0	unsigned long
		HashedLength	500	unsigned long
		ValueOffset	24	unsigned long
		ValueCount	6619243	unsigned long
+		ApiSetEntryNameBuffer	0x000007feff6c01f4 L"kernel32.dllMS-Win-Core-DateTime-L1-1-0"	wchar_t *

Even fixing that up though, after that point things quickly go off the rails - the value entries seem to be pointing nonsense, and the subsequent ApiSetEntryIterator after 0 are all wrong.
It looks like maybe the struct size is different and contains different elements, but I wouldn't know where to begin figuring out the difference.

btw, I ran into some issues building. When I tried to build out of a plain checkout I was missing ntstatus.h. It seems for some reason that has been removed in the 10.0.15063.0 SDK, so I switched the C++ projects to 10.0.14393.0. I was then missing atlstr.h and I'm not sure where that should come from - some MFC thing and I don't know whether I didn't install that or it's something with my configuration or what.
In case you're interested, I applied this patch below to remove the use of CString and eliminate that dependency based on this page. If you don't care then just ignore this :smile:.
diff --git a/ClrPhlib/src/managed/PE.cpp b/ClrPhlib/src/managed/PE.cpp
index 26c5c7f..775d663 100644
--- a/ClrPhlib/src/managed/PE.cpp
+++ b/ClrPhlib/src/managed/PE.cpp
@@ -1,6 +1,5 @@
 #include <ClrPhlib.h>
 #include <UnmanagedPh.h>
-#include <atlstr.h>

 using namespace System;
 using namespace System::Text;
@@ -10,12 +9,16 @@ PE::PE(
     _In_ String ^ Filepath
 )
 {
-    CString PvFilePath(Filepath);
     m_Impl = new UnmanagedPE();

-       this->LoadSuccessful = m_Impl->LoadPE(PvFilePath.GetBuffer());
+       using namespace Runtime::InteropServices;
+       wchar_t* PvFilepath = (wchar_t*)(Marshal::StringToHGlobalUni(Filepath)).ToPointer();
+
+       this->LoadSuccessful = m_Impl->LoadPE(PvFilepath);
        this->Filepath = gcnew String(Filepath);

+       Marshal::FreeHGlobal(IntPtr((void*)PvFilepath));
+
        if (LoadSuccessful)
                InitProperties();

@@ -135,7 +138,7 @@ String^ PE::GetManifest()
        // Converting to wchar* and passing it to a C#-recognized String object
        UTF8Encoding Utf8Decoder;

-       array<byte> ^buffer = gcnew array<byte>(rawManifestLen + 1);
+       array<unsigned char> ^buffer = gcnew array<unsigned char>(rawManifestLen + 1);
        for (int i = 0; i < rawManifestLen; i++)
        {
                buffer[i] = rawManifest[i];
diff --git a/ClrPhlib/src/managed/PhSymbolProvider.cpp b/ClrPhlib/src/managed/PhSymbolProvider.cpp
index a05c549..2c5b5e3 100644
--- a/ClrPhlib/src/managed/PhSymbolProvider.cpp
+++ b/ClrPhlib/src/managed/PhSymbolProvider.cpp
@@ -1,6 +1,5 @@
 #include <ClrPhlib.h>
 #include <UnmanagedPh.h>
-#include <atlstr.h>

 using namespace System;
 using namespace ClrPh;
@@ -32,19 +31,22 @@ String^ PhSymbolProvider::UndecorateName(
 {
        String ^ManagedUndName;
        PPH_STRING UndecoratedName = NULL;
-       CString PvDecoratedName(DecoratedName);

        if (!m_Impl) {
                return gcnew String("");
        }

+       using namespace Runtime::InteropServices;
+       wchar_t* PvDecoratedName = (wchar_t*)(Marshal::StringToHGlobalUni(DecoratedName)).ToPointer();

        UndecoratedName = PhUndecorateNameW(
                m_Impl->m_SymbolProvider->ProcessHandle,
-               PvDecoratedName.GetBuffer()
+               PvDecoratedName
        );

+       Marshal::FreeHGlobal(IntPtr((void*)PvDecoratedName));
+
        if (!UndecoratedName) {
                return gcnew String("");
        }
diff --git a/ClrPhlib/src/managed/Phlib.cpp b/ClrPhlib/src/managed/Phlib.cpp
index 3b96e0a..3d0797a 100644
--- a/ClrPhlib/src/managed/Phlib.cpp
+++ b/ClrPhlib/src/managed/Phlib.cpp
@@ -1,6 +1,5 @@
 #include <ClrPhlib.h>
 #include <UnmanagedPh.h>
-#include <atlstr.h>
 #include <ApiSet.h>

Unfortunately, the ApiSet listing rely on an undocumented behaviour (seed this blog post of mine : https://lucasg.github.io/2017/10/15/Api-set-resolution/) and I currently only support ApiSet v6 (targeting win10).
On an older system, the ApiSetIterator is not correct and we are wrongly parsing data. I've added a safeguard in the last commit : https://github.com/lucasg/Dependencies/commit/ddf3a6ba22a13700e06e4fb8442870656d877214. I'll test in a Win7 box later this week.
Thanks for the patch, i have to admit I do not found the atlstr.h solution satisfying but it worked. I'll try to look into it this week.

Yep that fix works for me, at least as far as listing the API sets. For 90% of my uses this is enough, but it would certainly be nice to fully support Win7 if possible :smile:.

I've added support for Win7 apiset parsing : fbae9ee64790e02962d8fcbccff2a04a47b3bfe4

Works great, thanks :+1:. FYI regarding 308a49f60fbba81800bd920a7edc661ef9b951d2 there's still an include in ClrPhlib/src/managed/Phlib.cpp which doesn't seem to be used.

Thanks for spotting it. I've removed the include.


ionic cli stopped working: undefined:0 error

I tried to upload source code with ionic cli command and after that ionic cli command is no longer working. I have removed npm ionic package, deleted the .ionic folder in my user folder... almost tried everything but same issue...
Here is the error message:
undefined:0
^
SyntaxError: Unexpected end of input
at Object.parse (native)
at C:\Users\Frank\AppData\Roaming\npm\node_modules\ionic\node_modules\ionic-app-lib\lib\io-config.js:179:28
at fs.js:334:14
at FSReqWrap.oncomplete (fs.js:95:15)

Looks like the issue is because of my local project... i created a new project, then copy my source files and it looks fine...
Wondering which local files got corrupted and why?


postfix: Add submissions option for postfix and test

RFC 8314 suggests, for end user submission of
mails, SMTP over TLS on port 465 should be used.
So let't support running that directly.
Closes #91690
Motivation for this change
Provide an easy way to offer SMTP over TLS via direct nixos configuration option. See
RFC 8314.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[x] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

I was looking for a solution to this. Thanks for looking into it! I deployed it to my server and it works as expected. The only problem I noticed was some options missing from the submissionsOptions, because the nixos-mailserver module only sets the submissionOptions, but this can be easily added over there.

FYI I created an MR based on this for the Simple NixOS Mailserver project:
https://gitlab.com/simple-nixos-mailserver/nixos-mailserver/-/merge_requests/183