Atom crash with low system memory message

Prerequisites

[ ] Can you reproduce the problem in safe mode?
Not so far, although I am now using Atom in safe mode

[x] Are you running the latest version of Atom?
Atom 1.8.0

[x] Did you check the debugging guide?

[x] Did you check the FAQs on Discuss?

[x] Are you reporting to the correct repository?

[x] Did you perform a cursory search to see if your bug or enhancement is already reported?

For more information on how to write a good bug report or enhancement request, see the CONTRIBUTING guide.
Description
Atom crashed twice in a week with multiple open tabs during editing of simple text file.
The cursor stops responding to commands, then stops blinking, then a warning message appears informing that 'The editor has crashed'. The second time a system warning message informed that there was not enough memory to analyse the problem and send a report.
At present I am trying Atom in safe mode and monitoring it.

Steps to Reproduce
Before I did not experience any issue.
Moreover I did not change my usual configuration, and the editor started to crash during simple tasks, like editing a text file.
My installed packages are:
Core Packages (77)
Community packages: file-icons, linter, linter-ruby
Installed themes:
Core themes (12)
Community themes: dark-flat-ui, outlander-syntax
Along with Atom, other running applications are:
Firefox: two windows with about 12 tabs each
terminal (inactive)
Files (file manager)
Document viewer (pdf viewer)
SMPlayer
Audacious
Only Atom actually crashes
Expected behavior: normal functioning
Actual behavior: crash
Versions
me@SATELLITE-L50-A-161:~ $ atom --version
Atom    : 1.8.0
Electron: 0.36.8
Chrome  : 47.0.2526.110
Node    : 5.1.1
me@SATELLITE-L50-A-161:~ $ apm --version
apm  1.9.2
npm  2.13.3
node 0.10.40
python 2.7.6
git 2.9.2
OS: Ubuntu 14.04.4 LTS
Memory: 5,7 GiB
hard disk: 16,4 GB used, 444,3 GB free
me@SATELLITE-L50-A-161:~ $ top
KiB Mem:   5983776 total,  4000268 used,  1983508 free,   302832 buffers
KiB Swap:  6163452 total,   202924 used,  5960528 free.   901984 cached Mem
Notebook: Toshiba satellite L50-A-161

In the future, please completely fill out the provided issue template (it's there for a reason).
Now for a few questions:

Does this still happen in safe mode (atom --safe)?
How did you install Atom?
Did it crash while editing the same text file?  If so, can you share that file?

I added the missing part of the issue template to the original report message.
As for your questions:

I usually work in the weekend, but I started to use Atom in safe mode in my spare time.
So far (I started yesterday, after the last crash) I could not reproduce the problem in safe mode, though I would not be able to tell how to reproduce it in normal mode.
I installed Atom following the instructions reported in this depository. I also made several updates following the same instructions.
Atom crashed editing the same file. It is a file with no extension, called 'RailsTutorialComplement' of about 1300 lines, with size of about 40 KB that I use to jot down a tutorial for my Rails project. The file mixes up simple text instructions with Ruby code, using the same approach of M. Hartl Rails tutorial, which my project is largely based on. I made a screenshot of part of this file below, and something is also visible in my first screenshot in my original message. As you can see, as I said, the files mixes up text and code. Let me know if it is enough or if you still need a copy of this file and if it is possible to share it with chosen github users.

Thanks for the info!
If you feel uncomfortable with publicly sharing the text file, you can email it to<EMAIL_ADDRESS>(and be sure to direct them to this issue for context).

email with attached file sent to<EMAIL_ADDRESS>

Atom crashed today while it was running in safe mode

:(
I'll try to take a look at that file later today.


Fix #2487 - openmetadata-start with env vars

Describe your changes :

This PR fixes https://github.com/open-metadata/OpenMetadata/issues/2487
We were trying to install OpenMetadata using the dockerised server and took us a while to figure out that openmetadata-start.sh got stuck.
We are allowing env vars in the YAML config, which is super handy when working with external components, but openmetadata-start.sh was still pointing to the compose environment.
We are now allowing to use env vars and adding some verbosity to help debugging connectivity/naming issues.
Thanks! Happy to discuss

Type of change :

[ ] Bug fix
[x] Improvement
[ ] New feature
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation

Frontend Preview (Screenshots) :
For frontend related change, please link screenshots of your changes preview! Optional for backend related changes.

Checklist:

[x] I have read the CONTRIBUTING document.
[ ] I have performed a self-review of my own.
[ ] I have tagged my reviewers below.
[ ] I have commented on my code, particularly in hard-to-understand areas.
[ ] My changes generate no new warnings.
[ ] I have added tests that prove my fix is effective or that my feature works.
[x] All new and existing tests passed.

Reviewers

@pmbrull wget is not installed by default in all os. It wont be avaiable in osx and ubuntu by default. We shouldnt be making any dependencies on it.
Also can you give me a concrete example here. We don’t want use command line util to sleep . This command is modeled to work service init.d script. Its job is to start / stop the server. We shouldn’t be looking at adding sanity checks here. Other option is to add connection timeouts on mysql connection


CB-11384 android: Does not pass sonarqube scan

The problem is "Empty Catch Block", which sonarqube considers a blocker. Added
a log message to the empty block.

I've seen that the CB-11384 issue was closed, but source still have empty catchs.
I've tried using sonarqube locally on the plugin source and didn't get any problem related to empty catchs, how did you configure it?
BTW, you have to send the PR to the master branch of the apache plugin, right now you did a PR from your master branch to your CB-11384 branch, apache repo isn't aware of this PR


fix: deploy 63af0252cf02981a2ddd88ee

docs: added golang installation instructions
fix: removed dead tweet links

:tada: This PR is included in version 1.14.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


No file links created when using File: references in .NET Core projects

Description
When using File: references (in paket.references) with .NET Core projects, no file links are added to the .csproj file.
Repro steps
Given the following .Net Core .csproj file:
<Project Sdk="Microsoft.NET.Sdk">
    <PropertyGroup>
        <TargetFramework>net461</TargetFramework>
        <IsPackable>false</IsPackable>
    </PropertyGroup>
    <Import Project="..\..\.paket\Paket.Restore.targets"/>
</Project>

paket.dependencies:
source https://api.nuget.org/v3/index.json

github MiniProfiler/dotnet:v3 StackExchange.Profiling/Data/ExecuteType.cs
github MiniProfiler/dotnet:v3 StackExchange.Profiling/Data/IDbProfiler.cs

and paket.references:
File:ExecuteType.cs
File:IDbProfiler.cs

When running
paket install

no link is made to the IDbProfile.cs file in the project file.
...> dotnet --info
.NET Command Line Tools (2.0.0)

Product Information:
 Version:            2.0.0
 Commit SHA-1 hash:  cdcd1928c9

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.15063
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\2.0.0\

Microsoft .NET Core Shared Framework Host

  Version  : 2.0.0
  Build    : e8b8861ac7faf042c87a5c2f9f2d04c98b69f28d

...> .paket\paket.exe --version
Paket version 5.85.3

Expected behavior
I would expect the .csproj file to contain a link to the file:
<Project Sdk="Microsoft.NET.Sdk">
    <PropertyGroup>
        <TargetFramework>net461</TargetFramework>
        <IsPackable>false</IsPackable>
    </PropertyGroup>
    <ItemGroup>
        <Compile Include="..\..\paket-files\MiniProfiler\dotnet\StackExchange.Profiling\Data\ExecuteType.cs">
            <Paket>True</Paket>
            <Link>paket-files/ExecuteType.cs</Link>
        </Compile>
        <Compile Include="..\..\paket-files\MiniProfiler\dotnet\StackExchange.Profiling\Data\IDbProfiler.cs">
            <Paket>True</Paket>
            <Link>IDbProfiler.cs</Link>
        </Compile>
    </ItemGroup>
    <Import Project="..\.paket\Paket.Restore.targets"/>
</Project>

Actual behavior
The .csproj file does not contain any file links.
Known workarounds
You need to manually add any file links to the .csproj file.

Yes this part is not yet implemented for sdk projects. Thank you for sending a repro

ok the issue is simpler. there is not ItemGroup in the file so it doesn't know where to insert

fixed in latest alpha


NIFI-7669 Changed custom PBE AEAD algorithm to derive key once rather…

… than on every encrypt/decrypt operation, leading to substantial performance gains.
Updated documentation.
Added unit tests.
Thank you for submitting a contribution to Apache NiFi.
Please provide a short description of the PR here:
Description of PR
Improves performance of custom encryption algorithms by deriving key once during initialization rather than on-demand during frequent encryption/decryption operations.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

[x] Is there a JIRA ticket associated with this PR? Is it referenced
in the commit message?

[x] Does your PR title start with NIFI-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.

[x] Has your PR been rebased against the latest commit within the target branch (typically main)?

[x] Is your initial contribution a single, squashed commit? Additional commits in response to PR reviewer feedback should be made on this branch and pushed to allow change tracking. Do not squash or use --force when pushing to allow for clean monitoring of changes.

For code changes:

[x] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder?
[x] Have you written or updated unit tests to verify your changes?
[ ] Have you verified that the full build is successful on JDK 8?
[ ] Have you verified that the full build is successful on JDK 11?
[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
[ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly?
[ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly?
[ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties?

For documentation related changes:

[x] Have you ensured that format looks appropriate for the output in which it is rendered?

Note:
Please ensure that once the PR is submitted, you check GitHub Actions CI for build issues and submit an update to your PR as soon as possible.

 I'll ignore those tests with a comment that they can be enabled locally to prove the separation of the key derivation from the encrypt/decrypt operation.

@alopresto maybe just convert them to integration tests which we dont run in CI/CD but folks do tend to run for validating RCs....?

I see other unit test failures that could be related to #4434 (already merged into main)

Merged to main, thanks @alopresto


Update app_intro.md

Just added a warning about the version requirement. This is perhaps better using a predefined warning style from Documenter.jl?

Nice thank you


[MTSRE-870] creating backplane permissions to perform full blown OLM dance

Signed-off-by: Ankit Kurmi<EMAIL_ADDRESS>

@Ankit152 Do you have an OHSS card tracking this somewhere?

Not exactly @MitaliBhalla
If you want some context behind this PR, please feel free to have a look here: https://github.com/openshift/managed-cluster-config/pull/1402
Jira: MTSRE-870

/lgtm

/lgtm from my side as I see @cblecker 's comment on the PR you linked. Hence, we can extend this permission to MT-SRE.
cc : @feichashao @wanghaoran1988 for final approval.

/approve


Add set custom config

This will be open in big door for the happiness :grinning:

Very good my friend. It can be merged :smile:


Updated Module 09: Implement continuous feedback (Lab 16), to set the needed Web App Configuration settings

LAB16: Add description for adding Web App configuration settings
Related Issue
Link related Github Issue 🢂 #108
Checklist
Mark completed with "x" between brackets, "[x]", or checking the box once the PR is created:

[X] Has related GitHub Issue 💥 Create Issue 📝
[X] Tested it
[X] Read the PR collaboration guide 👓 Collaboration Guide 📝

Changes proposed in this pull request:
In order to get Module 09 Lab 16, to work, 2 Web App Configuration App Settings have to be added.
I have tried to write a proposal to the lab guide to inform the student about how to do it.

Hmm just noticed, that the deploy now fails, when I run it a second time, because the settings are already created.
Which confuses me, the description for the 'AzureAppServiceSettings@1' task says:
Updates or adds app service settings in an Azure Web App for Linux or Windows.
It looks like it can't update, since it now fails ?

I appreciate the contribution. For consistency with the other exercises and because we have experienced successful redeployments (where this solution had difficulty), we will update the instructions to update the AzureRmWebAppDeployment@4 task to include the appsettings statement so it looks like this:
    - task: AzureRmWebAppDeployment@4
      inputs:
        ConnectionType: 'AzureRM'
        azureSubscription: '<Subscription>'
        appType: 'webApp'
        WebAppName: 'az400eshoponweb177112039'
        packageForLinux: '$(Build.ArtifactStagingDirectory)/**/Web.zip'
        AppSettings: '-UseOnlyInMemoryDatabase true -ASPNETCORE_ENVIRONMENT Development'

I will close this pull request and create one to replace it.

Hi @rob-foulkrod
No problem at all :)
Your solution is of course way better than mine.
I am happy when the Labs work as they should, it makes my life as a MCT easier :-)

Thanks @theDiverDK improving our labs quality! That's the idea, having the labs working as it should and make your life easier.
@rob-foulkrod thank you so much for your PR, it fixed the issue!


Docs - update deprecated cssnext link

Please check if the PR fulfills these requirements

[ ] N/A - Tests for the changes have been added (for bug fixes / features)
[ ] N/A - Docs have been added / updated (for bug fixes / features)

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[x] Other... Please describe:
Docs

What is the current behavior? (You can also link to an open issue here)
Deprecated readme link (https://github.com/MoOx/cssnext-loader)
What is the new behavior?
Updated to new link (https://github.com/MoOx/postcss-cssnext)
Does this PR introduce a breaking change?

[ ] Yes
[x] No

If this PR contains a breaking change, please describe the following...

Impact:
Migration path for existing applications:
Github Issue(s) this is regarding:

Other information:

Thanks


[bug][svelte/indent] invalid indentation in some specific scenarios inside

Before You File a Bug Report Please Confirm You Have Done The Following...

[X] I have tried restarting my IDE and the issue persists.
[X] I have updated to the latest version of the packages.

What version of ESLint are you using?
9.4.0
What version of eslint-plugin-svelte are you using?
5.1.3
What did you do?

Configuration
import tsParser from "@typescript-eslint/parser";
import "eslint-plugin-only-warn";
import eslintPluginSvelte from "eslint-plugin-svelte";
import globals from "globals";
import svelteParser from "svelte-eslint-parser";

export default [
  {
    languageOptions: {
      globals: globals.browser,
      parser: tsParser,
    },
  },
  {
    files: ["**/*.svelte"],
    languageOptions: {
      ecmaVersion: 2022,
      parser: svelteParser,
      parserOptions: {
        extraFileExtensions: [".svelte"],
        parser: tsParser,
      },
      sourceType: "module",
    },
  },
  ...eslintPluginSvelte.configs["flat/recommended"],
  {
    files: ["**/*.svelte"],
    rules: {
      indent: "off",
      "svelte/indent": [
        "error",
        {
          alignAttributesVertically: false,
          ignoredNodes: [],
          indent: 2,
          switchCase: 1,
        },
      ],
    },
  },
  {
    ignores: [
      "postcss.config.cjs",
      "tailwind.config.js",
      "app/frontend/rails/",
      "node_modules/",
      "build/",
      ".svelte-kit/",
      "package/",
      "public/rcf-assets-dev/",
      "public/rcf-assets/",
      "tmp/",
      "coverage/",
    ],
  },
];

<script context="module" lang="ts">
  type GenericTypes = null | number | string | undefined;
  type GenericKeyType<Opt> = keyof Opt | never | null | undefined;
  type ValueType<Opt, VKey extends GenericKeyType<Opt>, VObj extends boolean> = Opt extends GenericTypes
    ? Opt
    : VKey extends keyof Opt
      ? VObj extends true
        ? Opt
        : Opt[VKey]
      : never;

  const dragDrop = (e: any) => {
    e.preventDefault();
    e.stopPropagation();
    /*
     * Warning: This event is called by the element the item was drop on top of.
     * Since we need to update the position of the dragged item (the source), we must use a
     * global context and the onEnd event.
     */
  };
</script>

What did you expect to happen?
Nothing the code is perfectly valid.
What actually happened?

Link to GitHub Repo with Minimal Reproducible Example
https://sveltejs.github.io/eslint-plugin-svelte/playground/#eJyNU01PwkAQ/SvjHgwQAonHAiVREg/G4MHgwXrY0mmpLrvN7pRIkP/uLKVVoCYmTTqzb96bN/uxE0uToAjE2C1tXhAsjSb8pEkk1iYpFUYClNQZ5+QiEUYagLYFwj1qtPnymWMHE9ClUvDFv3WMlgNHNtcZB6VOMM01JqNz6gNuPXs8LyhkhQ/cmhQ48TK4OagcVVs0FlKVWNP7sGAxYNuoE9emzxXz+L2piI1RKLVv6xueEQ8z+U4AU49XYXDapLFbob70pAXZEmvoRKfS4vTV673Vi0E1NE/oV/gUHIEza3xEWpmEjXYwAKm3XZiEsKtYOCgskzTNMJWlok53VAOOTPFkTSEzSbnRDTLsHRv24EVazWcUwK2S8eFroIuVoQ/2F+bmtEL74/C3tzyFTj1bpkws1czK7K66XYPUmjVcTY735vr670oy/6trFNskKlq39gaQMDwddNpl+q0a9Q7uD1sR6fGwejGh6AvLD8WJYCfcBhXhMOcLq0kEN/v9NwEAGd4=
Additional comments
No response

I don't think the indentation of the ternary operator is a bug, but the rest of it might be.

I had the same problem today with a switch case.
It expected 16, I had 12.
After adding 4 more spaces, it said expecting 12 but found 16.
Adding "svelte/indent": [ error, { "indent": 4, "switchCase": 0 }] and setting the switchCase to 0 helped me fix this annoying issue.


doc: build should work for non-github users

Fix https://github.com/coreos/etcd/issues/6526
/cc @heyitsanthony @gyuho

lgtm


doc and typo fixes

I fixed a few typos in the documentation and some string constants as well as added documentation to an undocumented function. :)

Probably due to changes on the website, the build now fails. It tried to access http://www.shopware.com/sites/default/files/assets/images/refsprite_dbahn.png, which doesn't exist (anymore?).

@orangecms, we are aware of that, will be fixed soon ;)

Dear Contributor,
Thank you for your contribution to Shopware. We value your engagement.
Unfortunately we have to close all existing Pull Requests.
This is due to the new Shopware 5 Major Release and a restructuring of the branch names.
If your contribution is still relevant for Shopware 5, a new pull request is highly appreciated.
We are very sorry for this inconvenience.
Greetings from the Shopware Team.


[FEATURE] Not case sensitive label to be added in Global

Description
rn the label as to be: EddieHub:good-first-issue, I made the h in Hub, lowercase and it didn't show up, I think it will be better if it shows up, regardless of the case, even if the full label is in lowercase?
Screenshots
No response
Additional information
No response

Idk if it already is has for the same issue seem to be facing another issue #111

At least in my opinion it's fine how it currently is. I wouldn't want to highjack too many possible labels. I think documenting properly, which Label needs to be added should be enough. What do you think about it @emmalearnscode @schmelto

Agree with that @Cahllagerfeld

closing this for now, see relevant discussion above


Phone Country Selector Added

Closes: #784

This pull request adds an international telephone input selector to the project. The selector allows users to choose their country, displaying the country flag and calling code. The telephone number format adjusts accordingly based on the selected country, ensuring correct formatting.
Changes proposed
Changes Made

Added the following code to src\Components\Signup\index.js:

import PhoneInput, {
  formatPhoneNumberIntl,
  isPossiblePhoneNumber,
} from "react-phone-number-input";

Added the import statement for "./PhoneInput.css".

Added the handleOnChangePhoneNumber function:

const handleOnChangePhoneNumber = (inputValue) => {
  setValue(inputValue);
  const countrySelect = document.querySelector(".PhoneInputCountrySelect");
  const selectedCountryCode = countrySelect.value;
  setData({
    ...data,
    countryCode: selectedCountryCode,
    contactNumber: formatPhoneNumberIntl(inputValue),
  });
};

Updated the component from:

<PhoneContainer>
  <FormInput
    onChange={(e) =>
      setData({ ...data, countryCode: e.target.value })
    }
    id="CountryCode"
    type="text"
    placeholder="+XXX"
  ></FormInput>
  <FormInput
    onChange={(e) =>
      setData({ ...data, contactNumber: e.target.value })
    }
    id="ContactNumber"
    type="text"
    placeholder="Phone Number"
    maxLength={10}
  ></FormInput>
</PhoneContainer>

to:
<PhoneContainer>
  <PhoneInput
    international
    defaultCountry="IN"
    countryCallingCodeEditable={true}
    placeholder="Phone number"
    value={value}
    onChange={handleOnChangePhoneNumber}
  />
</PhoneContainer>

Updated the validatecontactNumber function for validation from:

const validatecontactNumber = (contactNumber) => {
  // name should contain only alphabets
  const contactNumberRegex = /^\d{10}$/;
  return contactNumberRegex.test(contactNumber);
};

to:
const validatecontactNumber = (contactNumber) => {
  // name should contain only alphabets
  return isPossiblePhoneNumber(contactNumber);
};

Check List (Check all the applicable boxes)

[x] My code follows the code style of this project.
[ ] My change requires changes to the documentation.
[ ] I have updated the documentation accordingly.
[x] All new and existing tests passed.

Screen Shot

Hey @MonalikaPatnaik  Please Assign me to  issue

Hey @MonalikaPatnaik  Please Review my PR

Hii, looks good to me..could you make the icons responsive for smaller screens...

@MonalikaPatnaik Thanks for Reviewing , but I have assigned issued already #1005

@MonalikaPatnaik Thanks for Reviewing , but I have assigned issued already #1005
Please Update me regarding it

@MonalikaPatnaik Thanks for Reviewing , but I have assigned issued already #1005

Okok my bad..didn't see that


[FLINK-23877][connector/pulsar] Provide an embedded pulsar broker for testing.

What is the purpose of the change
The pulsar connector use TestContainers for all the pulsar related tests. We should have a lightweight embedded pulsar backend for performing all the Unit tests.
Brief change log

Add mocked MockPulsarService and NonClosableMockBookKeeper.
Design a PulsarRuntimeProvider for user to choose different pulsar backend.
Modify the test code for matching the new pulsar test tools.

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

Dependencies (does it add or upgrade a dependency): (yes)

We add the org.apache.pulsar:pulsar-broker and org.apache.pulsar:testmocks in test scope.

The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: (no)
The S3 file system connector: (no)

Documentation

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

@flinkbot run azure

@AHeise Can you review this PR.

Before doing a full-fledged review, I'd like to understand the scope a bit better since the PR is rather big as well.
Do you want to contribute the test utilities to improve

Test performance (avoiding unnecessary container spawns)
Improve test stability (why would it improve stability?)
Add more control over the system under test? (for example, to test more edge cases/failures)

Are parts of these sources already present in the Pulsar repo? (= have they already matured?)

I would like to answer these questions. Use an embedded pulsar is almost the same as using a container pulsar for tests. Therefore it can significantly improve the performance of the tests, avoid unnecessary container spawns.
Some pulsar tests failure in Flink Azure CI is caused by container hanging. I think this embedded server may improve the test stability.
Using a mocked pulsar broker can be operated by test. We truly add more control ability.
These codes don't existed in Pulsar repo, the mock test on Pulsar side have to use powermock and manually config the pulsar broker. I have used the common pulsar testmocks module for mocking bookie and zookeeper.


ArrayExpression and possibly ObjectExpression is treated as static for props.

I forgot to make an issue about this last month, this can easily be reproduced.
For expressions like
<For each={[...array()]}>

it is compiled into
each: [...array()]

which is like a false-positive. The hotfix would be to recursively check each item in the ArrayExpression to check for dynamic and static expressions. I believe ObjectExpression happens to behave like this.

I'm not sure I follow what the issue is?
<For each={[...array()]}></For>

//compiles to:
createComponent(For, {
    get each() {
      return [...array()];
    }
})

Is that not right?

Okay yeah I probably missed it, mb


exogui failing to launch in Ubuntu (24.04 LTS - Noble) while using eXoDOS collection on external NTFS drive

Note: external drive mount is as follows, this is the default mount there is no specific fstab entry.
[/dev/sda2 on /media/yourname/20TB2 type ntfs3 (rw,nosuid,nodev,relatime,uid=1000,gid=1000,iocharset=utf8,uhelper=udisks2)](url)
Steps to recreate issue and functioning workaround
Copy eXoDOS to external NTFS drive, attach drive to Ubuntu machine
run install_dependencies.command and Setup eXoDOS.command scripts - scripts complete without error
Note that desktop icon not executable

right click / Allow Launching
right click / properties / toggle Executable as Program

Icon is now executable
Execute from icon - observe that nothing happens
Open shell
go to eXoDOS external drive mount location
run ./exogui.command - receive the following error:
[21938:0818/140119.331405:FATAL:setuid_sandbox_host.cc(158)] The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I'm aborting now. You need to make sure that /media/yourname/yourdrive/eXoDOS/exogui/chrome-sandbox is owned by root and has mode 4755.
Execute commands as asked
sudo chown root /media/yourname/yourdrive/eXoDOS/exogui/chrome-sandbox
sudo chmod 4755 /media/yourname/yourdrive/eXoDOS/exogui/chrome-sandbox

run ./exogui.command - receive the following error:
The setuid sandbox is not running as root. Common causes:
  * An unprivileged process using ptrace on it, like a debugger.
  * A parent process set prctl(PR_SET_NO_NEW_PRIVS, ...)
Failed to move to new namespace: PID namespaces supported, Network namespace supported, but failed: errno = Operation not permitted
[22671:0818/140258.485751:FATAL:zygote_host_impl_linux.cc(202)] Check failed: . : Invalid argument (22)

Workaround to fix issues:
copy exogui directory to ~/eXoDOS/exogui
sudo chown root /home/yourname/eXoDOS/exogui/chrome-sandbox
sudo chmod 4755 /home/yourname/eXoDOS/exogui/chrome-sandbox

In external drive mount location execute following to link eXoDOS external drive directories to ~/eXoDOS/
for d in */ ; do d=${d%*/} ; ln -s ${PWD}/$d ~/eXoDOS/$d ; done
from ~/eXoDOS/exogui, execute exogui - Success

Not sure why this is happening. I'm unable to replicate. I tested exogui successfully with an NTFS drive mounted using the ntfs-3g driver on Ubuntu 22.04.4 LTS, and it worked as expected.
Talking to r3mowilliams, he had the NTFS drive mounted with the ntfs3 instead of ntfs-3g (the fuseblk driver). I had him retest (with a fresh reinstall) using ntfs-3g, but the same issue occurred.

Wondering if adding the --no-sandbox option will fix this. I've asked r3mowilliams to try that and report back.

Adding the --no-sandbox option does indeed work :)
With eXoDOS mounted from a remote Windows share I've launched exogui successfully directly from terminal and via modified exogui-command script.


Mapping of events and alarms

Is your feature request related to a problem? Please describe.
Currently only measurements are mapped via tedge/measurements. Gateways commonly send alarms or event information such that a mapping to e.g. tedge/events or tedge/alarms would be necessary.
Describe the solution you'd like
An event and alarm mapper on e.g. tedge/alarms and tedge/events that can be used to send alarms and events to Cumulocity. Since the measurement mapping also relays on json based payloads this can be adapted to events as well. For alarms this somehow needs to be extended for the lifecycle of alarms e.g. tedge/alarms/Alarm-ID or similar.
Describe alternatives you've considered
Currently thin-edge.io allows sending of alarms and events

Alarms was already handled in milestone: https://github.com/thin-edge/thin-edge.io/milestone/5
Development of events is going to be handled in https://github.com/thin-edge/thin-edge.io/milestone/10

https://github.com/thin-edge/thin-edge.io/issues/809


The DeepLearning AI course only has a 7-day probationary period

And then requires CN¥356 per month to continue learning.(The entire course takes three months)

suggest remove it!
Many people won't be aware of it from the page as the information is hidden.


Computing the Lp norm of a coefficient

I have a coefficient, computed in a certain way, and I would like to compute its L^p norm. I have seen the ComputeLpNorm function but I don't understand how it works, because of the
const IntegrationRule * | irs[] parameter in its definition. How could I use the ComputeLpNorm function?

The local L^p norm is computed differently depending on which type of element you are computing it on. The different integration rules allow you to integrate on different types of elements. If you want to be able to compute on any type of element, try:
int order_to_integrate = SET_THIS;
double p = SET_THIS;

const IntegrationRule *irs[Geometry::NumGeom];
for (int i=0; i < Geometry::NumGeom; ++i)
{
    irs[i] = &(IntRules.Get(i, order_to_integrate));
}

double norm = ComputeLpNorm(p, coeff, mesh, irs);

If you know what types of elements you have, then you only needs to give the function the irs corresponding to those types of elements.
If your mesh is a ParMesh, use ComputeGlobalLpNorm(), but it's syntactically identical.

I will always use the centroids of the elements, but the mesh may be different (triangles, quadrilaterals, tetrahedra or hexahedra).
Instead of a coefficient, I could use a GridFunction defined in an L2 space. Will it be easier to compute the Lp norm for the GridFunction? Is there any function like ComputeLpNorm for a GridFunction?
Thanks.

I'm not sure what you mean when you say you use the centroid of elements - do you mean that you are only considering order 2 polynomials on the different elements? If so, then set order_to_integrate = 2 in my above code snippet.
I do not know of a direct way to compute the Lp norm for a GridFunction, only to compute the Lp error compared to some "exact solution." The signature is: GridFunction::ComputeLpError(const double p, Coefficient &exsol, Coefficient *weight, const IntegrationRule *irs[]).
You can see how you could call this exactly the same as I previously described, except now you need a Coefficient describing the "true solution".  Note: weight is optional, so NULL here would still be valid. If you want to use this to compute the Lp norm of a function, use a ConstantCoefficient{0.0} in place of exsol. Obviously, this requires more code than simply directly computing the Lp norm of a Coefficient if you had your function already defined that way.

My coefficient is computed from GridFunctions defined in a piecewise constant function space. So in order to compute de Lp norm, I only need to evaluate the coefficient in the centroid of each element. I have tried with order of integrate = 0 and it seems to work.

Ah I see now - and yes order 0 is correct. Glad to hear it worked out.


ERROR WHILE BUILD SDK

IMPORTANT: Before you create an issue, please take a look at our Issue Reporting Guide.
Briefly summarize your issue:

from a guide for  macOs quickstart in step Build SDK I got following error
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px 'Helvetica Neue'}
jays-MacBook-Air:sdk-build jaysanjay$ make SampleApp -j2 >>jay.txt
In file included from /Users/jaysanjay/sdk-folder/sdk-source/avs-device-sdk/CapabilityAgents/DoNotDisturb/src/DoNotDisturbCapabilityAgent.cpp:16:
In file included from /Users/jaysanjay/sdk-folder/sdk-source/avs-device-sdk/ThirdParty/rapidjson/rapidjson-1.1.0/include/rapidjson/error/en.h:18:
In file included from /Users/jaysanjay/sdk-folder/sdk-source/avs-device-sdk/ThirdParty/rapidjson/rapidjson-1.1.0/include/rapidjson/error/../error/error.h:18:
In file included from /Users/jaysanjay/sdk-folder/sdk-source/avs-device-sdk/ThirdParty/rapidjson/rapidjson-1.1.0/include/rapidjson/error/../internal/../rapidjson.h:144:
In file included from /Library/Developer/CommandLineTools/usr/include/c++/v1/string:477:
In file included from /Library/Developer/CommandLineTools/usr/include/c++/v1/string_view:176:
In file included from /Library/Developer/CommandLineTools/usr/include/c++/v1/__string:56:
In file included from /Library/Developer/CommandLineTools/usr/include/c++/v1/algorithm:643:
/Library/Developer/CommandLineTools/usr/include/c++/v1/memory:2285:5: error: delete called on non-final
  'alexaClientSDK::settings::Setting<bool>' that has virtual functions but non-virtual destructor

  [-Werror,-Wdelete-non-virtual-dtor]

delete __ptr;

^

/Library/Developer/CommandLineTools/usr/include/c++/v1/memory:2598:7: note: in instantiation of member function
  'std::__1::default_delete<alexaClientSDK::settings::Setting<bool> >::operator()' requested here

  __ptr_.second()(__tmp);

  ^

/Library/Developer/CommandLineTools/usr/include/c++/v1/memory:2552:19: note: in instantiation of member function
  'std::__1::unique_ptr<alexaClientSDK::settings::Setting<bool>, std::__1::default_delete<alexaClientSDK::settings::Setting<bool> >

  >::reset' requested here

~unique_ptr() { reset(); }
              ^

/Library/Developer/CommandLineTools/usr/include/c++/v1/memory:4013:21: note: in instantiation of member function
  'std::__1::unique_ptr<alexaClientSDK::settings::Setting<bool>, std::__1::default_delete<alexaClientSDK::settings::Setting<bool> >

  >::~unique_ptr' requested here

unique_ptr<_Yp> __hold(__p);

                ^

/Users/jaysanjay/sdk-folder/sdk-source/avs-device-sdk/Settings/include/Settings/Setting.h:137:9: note: in instantiation of function
  template specialization 'std::__1::shared_ptr<alexaClientSDK::settings::Setting<bool>

  >::shared_ptr<alexaClientSDK::settings::Setting<bool> >' requested here

    std::shared_ptr<Setting<ValueT>>(new Setting(defaultValue, applyValueFn, std::move(settingProtocol)));

    ^

/Users/jaysanjay/sdk-folder/sdk-source/avs-device-sdk/CapabilityAgents/DoNotDisturb/src/DoNotDisturbCapabilityAgent.cpp:143:49: note:
  in instantiation of member function 'alexaClientSDK::settings::Setting<bool>::create' requested here

m_dndModeSetting = settings::Setting<bool>::create(false, std::move(protocol));

                                            ^

1 error generated.
make[3]: *** [CapabilityAgents/DoNotDisturb/src/CMakeFiles/DoNotDisturbCA.dir/DoNotDisturbCapabilityAgent.cpp.o] Error 1
make[2]: *** [CapabilityAgents/DoNotDisturb/src/CMakeFiles/DoNotDisturbCA.dir/all] Error 2
make[1]: *** [SampleApp/src/CMakeFiles/SampleApp.dir/rule] Error 2
make: *** [SampleApp] Error 2
jays-MacBook-Air:sdk-build jaysanjay$
What is the expected behavior?

What behavior are you observing?

Provide the steps to reproduce the issue, if applicable:

from MacOS QUICKSTART GUIDE
Tell us about your environment:

What version of the AVS Device SDK are you using?
  1.10

Tell us what hardware you're using:

[-] Desktop / Laptop
[ ] Raspberry Pi
[ ] Other - tell us more:

Tell us about your OS (Type & version):

[ ] Linux
[-] MacOS
[ ] Raspbian Stretch
[ ] Raspbian Jessy
[ ] Other - tell us more:

Hello patadia,
Thank you for bringing this to our attention!
From the error messages, it looks like this might be addressed by adding a default virtual destructor to SettingInterface.
We did not run across this in our testing on MacOS.  I wonder if your compiler is just configured differently.  Can you attach a copy of CMakeFiles/[your CMake's version]/CMakeCXXCompiler.cmake
from your build folder so that we might better understand this problem?
Best regards,
-SWH

Hello @scotthea-amazon, I am also having the same error, Please find enclosed the CMakeCXXCompiler.cmake.
CMakeCXXCompiler.cmake.zip
Thank you very much in advanced.

Hello,
Just an update.
I have added the default virtual destructor to the SettingInterface.h like so:
virtual ~SettingInterface() = default;

The build process almost finishes correctly.
There is an error at the end
[100%] Building CXX object SampleApp/src/CMakeFiles/SampleApp.dir/main.cpp.o
[100%] Building CXX object SampleApp/src/CMakeFiles/SampleApp.dir/PortAudioMicrophoneWrapper.cpp.o
make[2]: *** No rule to make target `/Users/fran/Downloads/ExplorationProjects/AVS_macOS/sdk-source/avs-device-sdk/third-party/portaudio/lib/.libs/libportaudio.a', needed by `SampleApp/src/SampleApp'.  Stop.
make[1]: *** [SampleApp/src/CMakeFiles/SampleApp.dir/all] Error 2
make: *** [all] Error 2

Still investigating what is going on.
Thank you very much again.

@visayamv Is there a timeline for that? It's been over two months since the issue was reported.

Thanks for opening this issue.  It has been fixed in our v1.12 release.  Thanks!


Getbloberror

Aggregate router exceptions at GetChunk operation based on the count of each exception. The majority will be returned. If there is no majority, then fall back to use precedence level function.
Next step, do the same thing for GetBlobIdOperation.

Codecov Report

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

@@            Coverage Diff            @@
##             master    #1190   +/-   ##
=========================================
  Coverage     83.62%   83.62%
  Complexity       57       57
=========================================
  Files             6        6
  Lines           348      348
  Branches         38       38
=========================================
  Hits            291      291
  Misses           45       45
  Partials         12       12

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 a98670c...cb929e9. Read the comment docs.


Carla's Geometric/Graph Model

Hi all,
I am currently working on customizing my own maps, but at the same time I want to make sure that Carla can interact with the maps that I design.
After I create a model for my map (geometric model), will I have to manually generate a graph that the A* algorithm can run on? I read the paper, but I have not being able to determine(and locate the code that can help me with this) if it will be possible to create a complex map (with multiple roads branching off an intersection) that can interact with Carla. Is this possible?
Thanks.

Hello @AftermathK ,
Regarding your first question, yes. Unfortunately you will have to manually
generate the graph. For now, CARLA lacks a more complete way to generate a city
and to have all the information sent to the planner. This is something we intend
to solve for Milestone "More flexible generation of Maps"
Also, regarding your second question. No it is not possible to create more complex maps
but this is a high priority issue for us.

Thank you for your reply @felipecode
I understand that at the moment Carla's map generator is limited on how customizable it may be, but assuming that I am able to design my own maps in UE4, where may I find the source code that interacts with the graph model that I need to create manually? Do you have any suggestions on creating the graph model manually? because I would probably need to find a way to interact with the planner after the graph is created.
I think these are the main challenges that I am coming across. Any help or guidance is truly appreciated.
Thanks.

hi @AftermathK  how do you get map information in the form of graph(edges and nodes)? I want to see if I can implement A* on map in CARLA


Add PHP 7.3 runtime support to default deployments

Title: Add php:7.3 runtime support to default deployments
1. Add php:7.3 to core ansible/vagrant deploy

Add php:7.3entry into ansible/files/runtimes.json
Update and add doc file into docs/action_node.md
Update unicode tests https://github.com/apache/incubator-openwhisk/tree/master/tests/dat/actions/unicode.tests

3. Add php:7.3 to docker-compose deploy

Add php:7.3 into runtime manifest
https://github.com/apache/incubator-openwhisk-devtools/blob/master/docker-compose/docker-whisk-controller.env#L64

4. Add php:7.3 to deploy-kube

Add nphp:7.3 into runtime manifest
https://github.com/apache/incubator-openwhisk-deploy-kube/blob/master/helm/openwhisk/runtimes.json

5. Update wskdeploy with php:7.3

Update spec, and tests for php:7.3
https://github.com/apache/incubator-openwhisk-wskdeploy/blob/master/runtimes/runtimes.go#L267
https://github.com/apache/incubator-openwhisk-wskdeploy/blob/master/specification/html/spec_actions.md#valid-runtime-names
https://github.com/apache/incubator-openwhisk-wskdeploy/blob/master/tests/src/integration/runtimetests/manifest.yaml#L5

6 Update website with php:7.3

Update js action section with php:7.3
https://github.com/apache/incubator-openwhisk-website/blob/master/_layouts/documentation.html
https://github.com/apache/incubator-openwhisk-website/tree/master/_includes/code

@akrabat will be working on this

All required PRs opened I believe.

All PRs have being merged, Thanks ❤ @akrabat  👍


Error: Cannot find module 'eslint-config-ember'

I have a standard ember-cli app and installed ember-cli-eslint with  ember install ember-cli-eslint. My .eslintrc contains the following:
{
    "parser": "babel-eslint",
    "extends": "ember"
}

But when I run eslint app/adapters/application.js I get the following error:
/Users/nicolas/.nvm/versions/node/v4.0.0/lib/node_modules/eslint/lib/config.js:209
                    throw e;
                    ^

Error: Cannot find module 'eslint-config-ember'
Referenced from: /Users/nicolas/development/dkz_website/.eslintrc
    at Function.Module._resolveFilename (module.js:336:15)
    at Function.Module._load (module.js:286:25)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at readConfigFromFile (/Users/nicolas/.nvm/versions/node/v4.0.0/lib/node_modules/eslint/lib/config.js:151:44)
    at loadConfig (/Users/nicolas/.nvm/versions/node/v4.0.0/lib/node_modules/eslint/lib/config.js:172:22)
    at /Users/nicolas/.nvm/versions/node/v4.0.0/lib/node_modules/eslint/lib/config.js:203:46
    at Array.reduceRight (native)
    at loadConfig (/Users/nicolas/.nvm/versions/node/v4.0.0/lib/node_modules/eslint/lib/config.js:187:36)
    at getLocalConfig (/Users/nicolas/.nvm/versions/node/v4.0.0/lib/node_modules/eslint/lib/config.js:317:23)

I'm using the following versions:
ember-cli: 1.13.8
ember-cli-eslint: 1.2.1
node: 4.0.0
npm: 2.13.4
os: darwin x64
Thanks for your help.

This is happening because you're executing the global eslint, but the eslint-config-ember module is installed locally to the project.
You need to install eslint locally to the project and execute the local version. For example:
$ node_modules/.bin/eslint app/app.js

Thank you for your answer. With your command i could execute eslint from the command line.

@roosnic1 and @kevintechie - installing the ember config globally should also fix this:
npm install -g eslint-config-ember

@jonathanKingston  Thanks for the tip. That way the linter in sublimeText works as well. :+1:


feat: Add ClusterVersion check to prober + wait for CVO

What this PR does / why we need it:
Added availability prober check to verify if release image is updated on the ClusterVersion resource and wait for CVO to fully roll out. Prevents situations in which the old CVO was reinstalling the incluster dns operator on control plane upgrades.
Which issue(s) this PR fixes:
Fixes #2128
Checklist

[ ] Subject and description added to both, commit and PR.
[ ] Relevant issues have been referenced.
[ ] This change includes docs.
[ ] This change includes unit tests.

Does this effectively prevent any new signalled upgrade from proceeding until this cvo wait is satisfied?
Would this reduce our ability to move forward in situations we might get stuck?
How would this affect/differ from now to HC upgrades when there's no workers and so cvo can't complete?

Does this effectively prevent any new signalled upgrade from proceeding until this cvo wait is satisfied?
It prevents the hcco from proceeding until the cvo has indicated that it recognizes a new payload via the clusterversion resource.

Would this reduce our ability to move forward in situations we might get stuck?
What do you have in mind? Like not being able to change a release image when you've tried a bad one? I don't think so.

How would this affect/differ from now to HC upgrades when there's no workers and so cvo can't complete?
The cvo signals its intent in the clusterversion resource regardless of workers

Wouldn't this be a matter of adjusting leader elections for CVO and DNS operator?
Hmm, I don't see how those could result in better coordination.

A less heavy-handed approach would be to simply skip deletes in the hcco while the cvo's intent has not been signaled in the clusterversion resource. So basically do the same check you're doing with the desired version but by adding a check before executing this block: https://github.com/openshift/hypershift/blob/a1c5b4cb4fc86dc0bd87bd283d4ece27693112fb/control-plane-operator/hostedclusterconfigoperator/controllers/resources/resources.go#L502-L518

Prevents situations in which the old CVO was reinstalling the incluster dns operator on control plane upgrades.
Hmm, I don't see how those could result in better coordination.

I thought the problem was two operators reconciling the same operand therefore leader election should set only one authoritative source

I thought the problem was two operators reconciling the same operand therefore leader election should set only one authoritative source

That is correct. So the reason for this coordination is that the dns operator does not do leader election. So that needs to be fixed in the product. However, it won't help IBM's upgrades to 4.12. In the meantime, the hcco deletes the existing deployment while the new deployment is blocked from starting until that deployment is gone. This last pr is to fix an issue where the deployment is deleted before the new cvo has started applying the new release payload, so the previous CVO will recreate the deployment.

@a-dsouza pls see my comment above.


⚠ Bofrost.de has degraded performance

In 8bde5a4, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1128 ms

Resolved: Bofrost.de performance has improved in 5ab17f2.


Fix resource leaks in load/save

Inner resource (File(Input|Output)Stream) was not closed. This is one place where dropping
source compatibility with 1.5 would help, allowing for try-with-resource.

I see!
Man, I still remember when 1.5 came out. And not it's antique ;) Ok, just checked, that was something like ten years ago ;D
-M


Error when encrypting

USAGE: python encrypt_model.py <INPUT_PB_MODEL> <OUTPUT_PB_MODEL> <KEY>

Traceback (most recent call last):
  File "encrypt_model.py", line 113, in <module>
    main()
  File "encrypt_model.py", line 104, in main
    nodes_binary_str = cipher.encrypt(nodes_binary_str)
  File "encrypt_model.py", line 26, in encrypt
    raw = self._pad(raw)
  File "encrypt_model.py", line 41, in _pad
    return s + (self.bs - len(s) % self.bs) * chr(self.bs - len(s) % self.bs)
TypeError: can't concat str to bytes

I fixed it with
return s + (self.bs - len(s) % self.bs) * chr(self.bs - len(s) % self.bs).encode('utf-8')

But now running code in C++ I am having issues.
Also does this code still work with Tensorflow 1.5?

I saw this issue on stack overflow and thought it might be related:
https://stackoverflow.com/questions/41889453/how-to-load-tensorflow-graph-from-memory-address
Because you are using
        if (!graph->ParseFromArray(bytes.data(), (int)bytes.size())) {
            return errors::DataLoss("Can't parse ", modelPath, " as binary proto");
        }

My graph is 164Mb in size.

My error everything is working fine, just need to deal with the performance issues of decrypting 160 odd Mb of data

@samhodge i have met the same issues, i use python script  to encrypt my frozen tensorflow1.6 model, then C++ code is used to decrypt it. "can not parse xxx as binary proto" error happened, so i change "ParseFromArray" function  in GraphDefDecryptor.hpp to "ReaBinaryProto" func, it did not work. my mode size: 167M, have you solved the problem?

An -O3 command was all that it took to use AES instructions on the hardware and performance went from 5 minutes to under ten seconds.

I am on A lower version of Tensorflow.

@samhodge so you mean that maybe the tf version leads to the error "can not parse proto", i have not run the code successfully. Are there any changes in your code, Or you just run the source code and nothing changed , everything is working fine?

I would have to diff to be certain but it was always working it just took over five minutes to decrypt.

@samhodge ok, many thanks, my model will be deployed on pc

My model is on Linux, Windows and MacOS just using the original code as far as I can remember using Tensorflow 1.5

You did encrypt and decrypt you model with the same key?

i am sure the same key

kaos-new:TFSecured sam$ git diff
diff --git a/python/encrypt_model.py b/python/encrypt_model.py
index 4d0873d..263c412 100644
--- a/python/encrypt_model.py
+++ b/python/encrypt_model.py
@@ -38,7 +38,7 @@ class AESCipher(object):
         return self._unpad(cipher.decrypt(enc[AES.block_size:]))#.decode('utf-8')

     def _pad(self, s):
-        return s + (self.bs - len(s) % self.bs) * chr(self.bs - len(s) % self.bs)
+        return s + (self.bs - len(s) % self.bs) * chr(self.bs - len(s) % self.bs).encode('utf-8')

     @staticmethod
     def _unpad(s):

Its still ParseFromArray.

yes, i changed as yours.

i found the question, model's name can not be changed, which is related to encryption algorithm. Thanks for your time

Glad it worked out, sorry I wasn’t helpful.


Extend DiskManager to manager other temp files like temp shuffle IPC files in Ballista, cached data files etc

Is your feature request related to a problem or challenge? Please describe what you are trying to do.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
(This section helps Arrow developers understand the context and why for this feature, in addition to  the what)
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

https://github.com/apache/arrow-ballista/issues/496

@alamb @tustvold @andygrove @yahoNanJing
I would like to extend the current DiskManager's functionality to not only manager the temp spill files but also the shuffle IPC files in Ballista, as well as the Cached data files generated by the System.
The current DiskManager is only used to hold the temp directories to store the temporary files generated by any spillable MemoryConsumers.  The DiskManager might be disabled in case that we do not want the MemoryConsumer to spill even under memory pressure.
But if I extend the capabilities of the DiskManager, it means it should never be disabled.  the spilling disable logic will have to be moved out from the DiskManager.
I'm not sure whether I should extend the current DiskManager's capabilities or keep it unchanged and add another new DiskFileManager. Want to hear your opinions on this.

I'm not sure whether I should extend the current DiskManager's capabilities or keep it unchanged and add another new PersistFileManager.

Given shuffling IPC files seems specific to Ballista, it would perhaps make more sense to be something that lives within that codebase?

Given shuffling IPC files seems specific to Ballista, it would perhaps make more sense to be something that lives within that codebase? So a ShuffleManager or PersistFileManager as you suggest

One reason it might make sense to extend DiskManager is so that Ballista / DataFusion could have a more complete view of disk file usage. For example, if Ballista wanted to be able to cap the total disk space used across IPC files and spill files it might be hard to do so with two different disk managers.

But if I extend the capabilities of the DiskManager, it means it should never be disabled. the spilling disable logic will have to be moved out from the DiskManager.

I suspect you could extend the API to distinguish between "is spilling allows" and "please keep track of and clean up these files made during execution" as well
I don't have a strong preference how you do it as long as there is still a way to limit memory used by SortExec -- there is a test for this in https://github.com/apache/arrow-datafusion/blob/master/datafusion/core/tests/memory_limit.rs so that should help guide the implementation

One reason it might make sense to extend DiskManager is so that Ballista / DataFusion could have a more complete view of disk file usage

Perhaps composition might be the solution here, i.e. a SpillManager that uses DiskManager under the hood

@tustvold @alamb
Thanks for your suggestion. I will try to add a different PersistFileManager in Ballista first to manage the temp shuffle files and temp cache files. After that, we can go further and merge the PersistFileManager functionality into DataFusion's DiskManager and the ultimate goal is to have one DiskManager which can have the complete view of disk usage, temp file management, working dir/disk health check etc.

I think we have made progress on this, though ultimate goal of a more full featured disk manager is likely not yet done. Let's close this ticket and open a new one if someone comes up with a new usecase


feat(orchestrator): verify availability and cache workflow definition IDs

https://issues.redhat.com/browse/FLPATH-962
Working around the fact that the Data Index is not cleaned up when a workflow CR is deleted. Similarly to what the template catalog does, now we have a cache of workflow definition IDs that periodically fetches the service URLs to confirm they are up (currently at 5-second intervals). If the service is not up, its definition ID is removed from the cache. Thus, the cache is verified on every call to Data Index and we can control if we want to skip or throw an error when an expected workflow definition ID is not in the cache. We can revisit this workaround once the SonataFlow Gateway API is implemented.
Also in this PR:

Change abort instance endpoint to /instances/<instanceId>/abort instead of /workflows/....
Change the response to void when the abort instance operation is successful. The returned object was not being used.
Add to the Workflow table the same polling mechanism we have for the instance table.
Group DevMode-related code from SonataFlowService into a new service named DevModeService.
Create OrchestratorService to encapsulate the communication between the backend plugin and SonataFlow infra.
Move V1 and V2 APIs to classes. This way, services don't need to be passed as arguments to every function.
Remove duplicated  api.register('executeWorkflow'....
Reorganize the backend router slightly to align with the other changes.
Remove legacy WorkflowService as it is not necessary anymore.
Fixed V2 tests to align with the other changes.
Update OpenAPI auto-generated code to align with the other changes.
Rename fetchProcessInstances to fetchAllWorkflowInstances to make it clear that this method is returning all instances. Ideally, this method should be removed in favor of paginated requests.

@gciavarrini I'm still validating this code but would appreciate it if you could help me with the review

@batzionb @JudeNiroshan please be aware of this code refactoring

This PR is ready for review. (I see 4 issues raised by SonarClould but they belong to another plugin)

@caponetto
it's hard to follow up on which change is related to which fix
Can you please split it to separate PRs?

Refactoring
Fix for https://issues.redhat.com/browse/FLPATH-962
Fix for https://issues.redhat.com/browse/FLPATH-1099

Especially since the caching solution is a workaround, it should be easy to remove it, and this would be easier to accomplish if it's clear to see which changes introduce the caching

What happens if the orchestrator is loaded before the cache is initialized?

@caponetto it's hard to follow up on which change is related to which fix Can you please split it to separate PRs?

Refactoring
Fix for https://issues.redhat.com/browse/FLPATH-962
Fix for https://issues.redhat.com/browse/FLPATH-1099

Especially since the caching solution is a workaround, it should be easy to remove it, and this would be easier to accomplish if it's clear to see which changes introduce the caching

Sorry @batzionb, the work is already done here. The PR is not big, so I don't see a reason to split it. Also, everything is somehow connected, that's why I've bundled all changes in one single PR.
It would be easy to remove the cache if we want to, since everything is done in the OrchestratorService.
The cache initialization is part of the router initialization, so there is no way the plugin is initialized before the cache.

@caponetto
I guess we have different definitions for what a large PR is...
I understand it's a lot of effort to split it so I'll review it as is

When running locally as static plugin, the scheduler needs to be passed in your packages/backend/src/plugins/orchestrator.ts:
import { Router } from 'express';

import { createRouter } from '@janus-idp/backstage-plugin-orchestrator-backend';

import { PluginEnvironment } from '../types';

export default async function createPlugin(
  env: PluginEnvironment,
): Promise<Router> {
  return await createRouter({
    config: env.config,
    logger: env.logger,
    discovery: env.discovery,
    catalogApi: env.catalogApi,
    urlReader: env.reader,
    scheduler: env.scheduler, // <----------------
  });
}


[Enhancement] remove unused codes for enable_lateral_view

Proposed changes
Issue Number: close #xxx
Problem Summary:
Remove unused codes for enable_lateral_view
Checklist(Required)

Does it affect the original behavior: (Yes/No/I Don't know)
Has unit tests been added: (Yes/No/No Need)
Has document been added or modified: (Yes/No/No Need)
Does it need to update dependencies: (Yes/No)
Are there any changes that cannot be rolled back: (Yes/No)

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

rebase to trigger FE UT and regression test again


product_plot.html: line lengths.

Hello! My name is Andrea and I am a Spanish bioinformatician. Currently, I am using Spear as one of the main tools within my study in order to obtain valuable results. Specifically, when analyziing the product_plot outputs, which are contained within the product_plots output directory, the following question comes to my mind:
Within this images, every mutation has associated a specific length for the line which links them to the protein representation. I have also observed how this line length tends to decrease as the gene position increases. What does this length specifically mean? In the following image the lines that I mentioned are better identified:

Hi Andrea, the line length varies purely to distinguish mutations from one another on parts of the plot where there are a lot of mutations close together (e.g. spike) - it has no functional meaning and is purely aesthetic. In the future we may change this to include some meaning, if we do this we will be sure to document it, but for now you can ignore it.


export data to an aleph instance

I know that I could use the command line alephclient tool to export datasets to an aleph instance, but is there a nice way to export data to an aleph instance within each crawler run?
In the previous framework, I was using the aggregator section in the crawler's configuration while having ALEPHCLIENT_API_KEY and ALEPHCLIENT_HOST exported in the container:
name: eu_fsf
description: "[OSANC] Financial Sanctions Files (FSF) published by EU Commision"
schedule: daily
expire: 1
pipeline:
  init:
    method: seed
    params:
      url: 'https://webgate.ec.europa.eu/europeaid/fsd/fsf/public/files/xmlFullSanctionsList_1_1/content?token=n00378os'
    handle:
      pass: fetch
  fetch:
    method: fetch
    handle:
      pass: parse
  parse:
    method: opensanctions.crawlers.eu_fsf:fsf_parse
aggregator:
  method: ftmstore.memorious:ftm_load_aleph

Can we use something similar to export data to aleph with the new framework?

That's a fair question, and I don't think I have an excellent answer. Aleph and OpenSanctions have been unbundled to some extent, and the OCCRP team now has scripts set up to pull in the data we generate nightly.
Honestly, I think you could go a long way just with a little shell script based on this pseudo-code:
DATASETS=`curl -s https://data.opensanctions.org/datasets/latest/index.json | jq -r ".datasets[].name"`
for DS in $DATASETS; do
  curl -s https://data.opensanctions.org/datasets/$DS/entities.ftm.json | alephclient write-entities -f opensanctions_$DS;
done;

Does that seem workable in your environment?
ps. I'm also curious about how you're using OpenSanctions nowadays. Are you piping it into Aleph just to get an API? In that case, would a more specific api server (#105) be relevant for you?

We are running our own opensanctions crawlers and it would be nice to have something integrated in the opensanctions workflow, I was thinking more of an aleph specific exporter, but I will settle for some kind of cron job running the script you proposed.
We need the search features that the aleph api offers. Are you planning to include an elasticsearch backend in https://github.com/pudo/opensanctions/issues/105 ?

hi @pudo
I have a dummy question about entities deduplication - are you expect that it will be done on Aleph's side or there is some way to fetch from opensanction the latest dataset records only (e.g. for the last day or from a specified date)?
Thanks for advance

@vikt0rs That question has me a tiny bit confused. FWIW the OpenSanctions API is now in operation and could e.g. be used to find the latest entities and then you can fetch the full data for them. But yes, this has a lot of weird dedupe-related complexity, see https://www.opensanctions.org/docs/identifiers/
Maybe we can clarify your question via Slack? https://join.slack.com/t/opensanctions/shared_invite/zt-xwnzvht1-9jPnHUwfCzW_Yw9MAG6vTA


fix: script not finding participant name

this was probably caused because google meet added an extra div between video and participant name
closes #25

Thanks for the PR @igoracmelo ! I've now submitted a new version of the extension for review 🎉


Fix friend notes not saving on display names with spaces

Resolves issue #8173
The display names were not being formatted correctly when utilizing the name as a key, as however the key is saved resulted in a format looking like "LordÂ Vionas" When it should be retrieving/saving a key of "Lord Vionas". Using Text.toJagexName resolved the formatting issue with the characters. I assume that would have been an issue with unicode or something, but I wasn't sure.

I'm not seeing where the original bug is in the code.

Note: I still need to add comments to explain the code change above via another commit, so I'll be doing that right now.
So this wouldn't actually break existing notes as notes made for names with spaces such as "Lord Vionas" wouldn't be saving properly anyway. Those without spaces and just numbers and letters are also unaffected as their characters aren't being modified when we use the .toJagexName method.
Just as a way to reproduce this with the current build to be more clear:

Log into the Runelite client with your runelite account/google account
Log into Runescape via the client
Find two friends, one with a name without spaces, e.g. "CluelessNoob", and then one with a space, e.g "Experienced Player"
Add a note for each player. Note that at this time, you will see the note for both players. You must log out for this bug to happen.
Log out of runescape, and close the runelite client.
Log back in (Follow steps 1 and 2 once again)
Hover over both names, find that only the non space name was working.

The way I noticed the issue was when the config value was being loaded upon login to runescape. You can see the non functioning and functioning config values in the image below:

Note how the ones with spaces were adding an extra character "Â" before the space, and that is the current result when using the current build. I wasn't 100% on it other than when you go and look at the char array after we format the display name with .toJagexName was utilizing a normal ASCII space, where prior it was using a non breaking space (Unicode?).
You can see how the key is correct when we utilize the .toJagexName now as well, avoiding that "Â" appended to the beginning, loading the correct config values.
Now what I was unsure about was the reason it was adding that specific character. Is it something with how it saves key values? I just know that the way that it is implemented in the fix it corrects the issue without breaking anything, since names with spaces don't save anyway.

This was fixed in d617d1960ffa9bc50aab478b3c4bef5ce9d35e7c


Added i18n + added support for Dutch

In order to make this work on your website, add the following to the config.toml:
defaultContentLanguage = "en"
or:
defaultContentLanguage = "nl"

Hi @dotkarl , thanks for your PR 👍  very much!  I will process it tomorrow.


Need Collaborators

Hi all,
as you might have noticed I've been struggling to maintain this library. Apologies for the inconvenience caused, I merged the PRs and updated the npm version.
If anyone would like to step up and help out with testing pull requests it would be an immense help to me and the community :)
Let me know if you are interested!
Thanks again for your patience.

@davodesign84  I would like to help out if that is okay with you.

Thanks @aakashsigdel I made you a collaborator :)
Would be good to have somebody else helping out on the android side perhaps?

Yes, that would be great. I will try to find someone as well.

Awesome, thanks for helping :)

@davodesign84  I'm adept in Java and objC.  I'd be happy to help with the Android or iOS side.  In fact I was just inside your Android module code.  Put me down as a contributor and feel free to assign me work

@davodesign84  I'm adept in Java and objC.  I'd be happy to help with the Android or iOS side.  In fact I was just inside your Android module code.  Put me down as a contributor and feel free to assign me work.
Also have you considered reaching out to mixpanel themselves?  You have thousands of downloads and it'll only grow as RN matures.

@StevePotter I think somebody here did that with no luck.

Yeah it was tried but the team didn't show much interest. Might be worth retrying though. I'll see if I can reach somebody there.
Thanks so much guys for helping!

@davodesign84 we are a heavy mixpanel user and I'll drop a line with them and see if anything comes back


File "/usr/lib/python3.8/site-packages/_pytest/config/__init__.py", line 470, in register
    self.consider_module(plugin)
  File "/usr/lib/python3.8/site-packages/_pytest/config/__init__.py", line 712, in consider_module
    self._import_plugin_specs(getattr(mod, "pytest_plugins", []))
  File "/usr/lib/python3.8/site-packages/_pytest/config/__init__.py", line 719, in _import_plugin_specs
    self.import_plugin(import_spec)
  File "/usr/lib/python3.8/site-packages/_pytest/config/__init__.py", line 748, in import_plugin
    raise ImportError(
  File "/usr/lib/python3.8/site-packages/_pytest/config/__init__.py", line 746, in import_plugin
    __import__(importspec)
ImportError: Error importing plugin "setuptools.tests.fixtures": No module named 'setuptools.tests'


Parallel execution cases with deeper suites

Copied from #106 (original comment by @pedgarcia)
@1999 I hope you still see this since it is closed... What happens when you have nested describes in terms of parallelization?
Imagine the following scenario:
describe('module', () => {
  describe('submodule A', () => {
    describe('feature B', () => { ... })
         it(A..)
         it(B..)
  });
  it(C...)
  it(D...)
})

Will A B C and D run in parallel, or A and B will, then C and D will, but only after A and B?
If you have better examples, please point me at them
Thanks
Paulo

@pedgarcia that's an interesting case since when mocha-parallel-tests has been started we didn't think of this case. Instead I was thinking only of the simpliest cases like one describe() per file or couple of them on the same level of depth. Only these cases are covered with tests and I can't even predict what's the mocha-parallel-tests behaviour for deeper cases.
Let's try to think on how this should be done in terms of parallel execution. We can run two parallel suites: ("featureB") and ("module" without "submodule A"). However there's often some code in between, for instance there can be a function declared right before "submodule A" and it should be accessible by both of our parallel execution tests. Also it often happens that developers use some variables to store data between the tests. This will definitely fail here because this variable can no longer serve as a data store and the execution will be parallel.
What's your opinion here?

I guess the whole issue is that I use describes not only to organize the suites but also as scope for variables and/or before/after hooks. My expectation on the scenario I gave is to have all its running in parallel....
But, I think it is a good feature to have same-level describes to be executed in series but not in parallel, like mocha-parallel-tests does today, so the only thing I can think of is an option where you simply ignore that.
For example, by default mocha-parallel-tests keeps doing like it does today. If some specific option is used, it could ignore the describes, running all it in parallel. I didn't check how this module is implemented or if that idea is doable, though.
On the other hand, I am re-evaluating my test structure to see if I could live with one since level of describe, for example....
What do you think?

@1999 I think the following is a more realistic example on how I write the tests:
  describe('Test suite #1', function () {

      describe('Test suite #1A', function () {
        it('#1A-1 should end in 5 second', function (done) {
            setTimeout(done, 5000);
        });

        it('#1A-2 should end in 5 second', function (done) {
          setTimeout(done, 5000);
        });
      });

      describe('Test suite #1B', function () {
        it('#1B-1 should end in 5 second', function (done) {
            setTimeout(done, 5000);
        });

        it('#1B-2 should end in 5 second', function (done) {
          setTimeout(done, 5000);
        });
      });

    it('#1-1 should end in 5 second', function (done) {
      setTimeout(done, 5000);
    });

    it('#1-2 should end in 5 second', function (done) {
      setTimeout(done, 5000);
    });

  })

So with this example above, I can see there is no parallel execution at all, as the full test takes 30 secs.
Maybe a clear behaviour (if possible) would have Test suite #1A and Test suite #1B running in parallel as they are at the same level. Also, the suites #2 and #3 (at root level) could be running.
It is still not clear in my mind, but maybe this scenario is possible: (??)

Root describes are initiated in parallel
On each root describe, the inner-most describes that are in the same depth would run in parallel
As they are completed, the execution would go up one level (towards root), executing all describes at that level in parallel
The last step would run its in the root level.

With this, there is still the need to think about functions or variables declared, etc...
How to do all this is above my head :) and maybe the current architecture wouldn't permit such implementation. It would be nice to have more people chiming in....

So today mocha-parallel-tests runs describes in parallel, but the its inside them in series, correct?

correct

cc @k03mad @kolontsov @mmotkina guys please take a look at discussion here and tell what you think.

I think that parallelization inside one file is not good way at all.
If test so capacious, that it need to run it parts in parallel, such parts should be in separate independent files.
This seems to be less confusing, less flaky and complies with the best practices "small + atomic + autonomous".

@k03mad that also makes sense.
@pedgarcia what do you think of this approach? Like "if you want to run your tests in parallel, adjust your test files to contain simplier code"

@1999, I spent more time thinking about my suggestion and reviewing my test code and I have to agree that it would turn everything way to complicated. I agree the approach to simplify the tests makes more sense....

UPD: The final idea is to run all files + all flat suites in these files in parallel.

Will it be optional?
I think it will break many mpt-users tests (not only kp:))

This will be a new major version of mocha-parallel-tests, not an option.


worker crash

neal-desktop:~/maelstrom[130]% cargo run --release --bin maelstrom-worker
Finished release profile [optimized] target(s) in 0.23s
Running target/release/maelstrom-worker
Jun 27 22:03:33.567 INFO started, pid: 2, config: Config { broker: <IP_ADDRESS>:1234, slots: 8, cache_root: "/home/neal/.cache/maelstrom/worker/", cache_size: 20.0 GB, inline_limit: 1000.0 KB, log_level: Info }
thread 'thread '' panicked at ' panicked at crates/maelstrom-util/src/io.rscrates/maelstrom-util/src/io.rs::945945::99:
:
assertion left == right failed
left: 778982
right: 1048576assertion left == right failed
left: 249856
right: 1048576
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace
zsh: IOT instruction (core dumped)  cargo run --release --bin maelstrom-worker

It looks like this failed doing a short write to the pipe via splice. Something I thought couldn't happen at the time for some reason

wow actually it kinda looks like this happened twice at once.  That probably means this was the path where we are download artifacts.
So yeah, here is a theory about this, perhaps this happens when your file-system is full. That would explain hitting this multiple times at once and you had mentioned you had that problem. That should be easy to fix, I'll just throw an error.


🐛 fix: detect git repo

close #1

@shahmeerzaidi this PR overwrites #3, which isn't what we want.


DSVM Issue: x2golistsession: command not found

After created DSVM with Ubuntu I cannot login with X2GO due to the following error:
x2golistsession: command not found
I followed the instructions at https://docs.microsoft.com/en-us/azure/machine-learning/data-science-virtual-machine/dsvm-ubuntu-intro
Cheers,
Lukasz

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

ID: 27c1a5f0-b0df-88f4-feaf-90bc17eeb69e
Version Independent ID: 3d5b36f7-e892-8d1d-fa14-a2e5d407a25c
Content: Create an Ubuntu Linux Data Science Virtual Machine - Azure
Content Source: articles/machine-learning/data-science-virtual-machine/dsvm-ubuntu-intro.md
Service: machine-learning
GitHub Login: @gopitk
Microsoft Alias: gokuma

@gopitk Hi Gopi, do you have any idea about this error? Thanks.

@YutongTie-MSFT please assign to @alexsuttonms

@YutongTie-MSFT is there a forum for technical support issues? @lmiroslaw are you still having this problem?

@lmiroslaw We'd like to work with you further on this issue if you still suffer from this issue, please email us at<EMAIL_ADDRESS>Please provide us with your subscription ID and the URL for this thread.
We will now proceed to close this thread. If there are further questions regarding this matter, please respond here and @YutongTie-MSFT and we will gladly continue the discussion.

I have the same problem under windows 10 .. any help please ?!!


Unify console names between ops & service UI - VM Console & Web Console

This comes from the discussion in https://bugzilla.redhat.com/show_bug.cgi?id=1441321 and https://github.com/ManageIQ/manageiq-ui-classic/pull/1429 - see details there.
But, per Cockpit intergration guidelines, "Cockpit Console" should be named "Web Console".
I'm also chaning the button from "Open * Console" to "* Console" for consistency with Ops UI.
https://bugzilla.redhat.com/show_bug.cgi?id=1441321
Cc @chriskacerguis, @Loicavenel

Will close https://www.pivotaltracker.com/story/show/146090327

I don't think that will close that PT. I think this is more a stop gap for that issue.

@chriskacerguis oh? do tell!  What else is needed to close it?

Changing to fine/yes as BZ 1441321 is for Fine.

@AllenBW the story that you presented was to make the design like UXD's proposed design:
https://github.com/cockpit-project/cockpit/wiki/Product-Integration

Fine backport details:
 $ git log -1
commit 6ff1ce3c4a7199a1368596f9c203ee12f043f5f9
Author: Chris Kacerguis<EMAIL_ADDRESS>Date:   Thu Jun 15 08:07:21 2017 -0500

    Merge pull request #819 from himdel/web-console

    Unify console names between ops & service UI - VM Console & Web Console
    (cherry picked from commit 077ec15363d4649cc70532498a2fea3a07dd9e25)

    https://bugzilla.redhat.com/show_bug.cgi?id=1441321


Recieve multiple files from mobile

I'm opening this issue because:

[ ] I want to request a feature

My Go version is: go1.13.8 linux/amd64

Hello @puneethkanna, could you please describe what is the feature you are requesting?
Thanks!

I tried to receive multiple files from mobile, but it is not working, so we can add this feature.

It should work, did you choose multiple files from the upload page? When you click the "Browse" button you can select multiple files. If the files are correctly selected, this is what you will see:

Okay, got it. It is not working with Google Photos app, when I select from the app it says memory is too low


Separating Sequential add/add_fn from initialization

I'm trying to port over some of my python code; however coming across some issues due to the way a Sequential currently works.
The current way it's programmed is doesn't allow to add tensors after it's initialization. I'm wanting to dynamically create a model via loops, so I have no idea of the input size or number of layers as it's set dynamically. A bare-bones example:
let mut model = tch::nn::seq();

model.add(tch::nn::linear(var_store / "layer_final", input_feature_size, output_size, Default::default()));;
model.add_fn(|xs| xs.sigmoid());

Comes up with the error:
error[E0382]: use of moved value: `model`
  --> src/main.rs:20:5
   |
17 |     let mut model = tch::nn::seq();
   |         --------- move occurs because `model` has type `tch::nn::sequential::Sequential`, which does not implement the `Copy` trait
18 |
19 |     model.add(tch::nn::linear(var_store / "layer_final", input_feature_size, output_size, Default::default()));;
   |     ----- value moved here
20 |     model.add_fn(|xs| xs.sigmoid());
   |     ^^^^^ value used here after move

Looking at the source, the reason this happens is that due to Copy not being implemented, when it returns 'Self' that moves everything meaning that it is no longer accessible further down the line if you're using it this way.
My first thoughts are to either:

Make Sequential copyable (probably not a valid option, due to variable stores etc.)
Adding separate non-builder functions that don't return 'Self'

I'm happy to work on putting something together and submit a PR, but thought it would be worth the discussion first as to the best way forward (if it's even wanted). I would think it would be better to add separate functions but I don't know how one would best differentiate them by name. I know some libraries have separate builder classes but that would create quite a breaking change to the API.

Sorry I don't have access to a computer this week so cannot comment into details or test my suggestion but what about doing the following ?
let mut model = tch::nn::seq();

model = model.add(tch::nn::linear(var_store / "layer_final", input_feature_size, output_size, Default::default()));;
model = model.add_fn(|xs| xs.sigmoid())

This is actually used for a bunch of examples e.g. mobilenet so that we can build the sequence through a for loop.
https://github.com/LaurentMazare/tch-rs/blob/81f6215c8f7a374b89591abbbd61ac3bfe24dc14/src/vision/mobilenet.rs#L59

Sorry for the lack of response. I've done a few tests.
In my particular case this doesn't work it seems as the actual modification is done inside an iterator's for_each method (after numerous other processes). While I can re-organise my code to not work with iterators, seems a bit of a shame that this can't be done with them.
error[E0507]: cannot move out of `model`, a captured variable in an `FnMut` closure
  --> src/main.rs:27:12
   |
19 |     let mut model = tch::nn::seq();
   |         --------- captured outer variable
...
27 |             model = model.add(tch::nn::linear(
   |                     ^^^^^ move occurs because `model` has type `tch::nn::sequential::Sequential`, which does not implement the `Copy` trait

For my own purposes for the time-being I just created my own sequential model that removed the return of self and used &mut for self to stop the move from occurring. I realise that this isn't necessarily going to work in the actual repository though.

Closing for now, feel free to re-open if you still have issues with this.


A better way to get an coarse position

On devices that haven't position yet, get the current approximate location.

If in locationmanager get last known location return null, then try to get current location.
http://developer.android.com/reference/android/location/LocationManager.html
http://stackoverflow.com/questions/17668917/how-to-get-the-coarse-location-using-wifi-or-gsm-or-gps-whichever-is-available

I added best provider criteria and handle exception with dialog if location is null.


Node js pt br

What does this PR do?
Add Resource(s) | Remove Resource(s) | Add info | Improve Repo
For resources
free-courses-pt_BR.md
Description
Javascript and NodeJS courses in pt-BR.
Why is this valuable (or not)
How do we know it's really free?
For book lists, is it a book?
Checklist:

[x] Not a duplicate
[x] Included author(s) if appropriate
[x] Lists are in alphabetical order
[x] Needed indications added (PDF, access notes, under construction)

Thanks, and welcome to free-programming-books!


Fixed the bug in Quiz App

Related Issue
There was a bug in the Quiz App due to which it was showing an incorrect score.
Closes: #1110
Describe the changes you've made
I have fixed the bug.
Describe if there is any unusual behaviour of your code(Write NA if there isn't)
NA
Checklist:

[x] My code follows the style guidelines of this project.
[x] I have performed a self-review of my own code.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have made corresponding changes to the documentation.
[x] New and existing unit tests pass locally with my changes.

Screenshots

@Vishal-raj-1  @urvashi-code1255  @ridsuteri  @harshgupta20  @991rajat
Please review the PR.
Thanks.


USDC v3

USDC v3 reduces gas costs for users by replacing blacklist checks on transfer, transferFrom, and approve with a freezeBalance admin function.
Please check out this post on mirror.xyz for more context about these proposed changes.

Thanks for the PR, this is really cool. We would really love to reduce gas fees. At this point though I'm not sure we can get rid of the blacklist functionality as-is. Such change will require a broader discussion including legal and regulatory compliance teams.
Packing it into the high bit as you suggested https://twitter.com/alex_kroeger/status/1485756038502510593?s=21 might be more appealing as it preserves the existing functionality and should provide similar gas savings.

.


npm ERR! not a package

I tried to use javascript-obfuscator at CLI using a non node.js project, but vanilla javascript, I tried this:
npm link javascript-obfuscator my_file.js

npm ERR! not a package my_file.js
npm ERR! addLocal Could not install my_file.js
npm ERR! Darwin 16.7.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "link" "javascript-obfuscator" "my_file.js"
npm ERR! node v4.4.4
npm ERR! npm  v2.15.1
npm ERR! path /var/folders/8g/p8wtd8g17z973rpjrz5dx4_h0000gn/T/npm-10644-a92af7c2/unpack-80dc7b7de7d6/package.json
npm ERR! code ENOENT
npm ERR! errno -2
npm ERR! syscall open

npm ERR! enoent ENOENT: no such file or directory, open '/var/folders/8g/p8wtd8g17z973rpjrz5dx4_h0000gn/T/npm-10644-a92af7c2/unpack-80dc7b7de7d6/package.json'
npm ERR! enoent This is most likely not a problem with npm itself
npm ERR! enoent and is related to npm not being able to find a file.
npm ERR! enoent

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/Apple/Documents/projects/my_project/npm-debug.log

How can I use javascript-obfuscator with non node.js projects?

You cannot use CLI as non-Node.js project, because CLI using few Node.js APIs.

So, how to use javascript-obfuscator with my none-node project?

Just install CLI with -g flag: npm install -g javascript-obfuscator

I tried so, kindly see below:
$ npm link javascript-obfuscator /Users/Apple/myapp-website-freelance/public/assets/lab/html5/bin/myapp.js /Users/Apple/myapp-website-freelance/public/assets/lab/html5/bin/myapp.js

But I got error:
/Users/Apple/Documents/projects/myapp/node_modules/javascript-obfuscator -> /usr/local/lib/node_modules/javascript-obfuscator

npm ERR! not a package /Users/Apple/myapp-website-freelance/public/assets/lab/html5/bin/myapp.js
npm ERR! addLocal Could not install /Users/Apple/myapp-website-freelance/public/assets/lab/html5/bin/myapp.js
npm ERR! addLocal Could not install /Users/Apple/myapp-website-freelance/public/assets/lab/html5/bin/myapp.js
npm ERR! Darwin 16.7.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "link" "javascript-obfuscator" "/Users/Apple/myapp-website-freelance/public/assets/lab/html5/bin/myapp.js" "/Users/Apple/myapp-website-freelance/public/assets/lab/html5/bin/myapp.js"
npm ERR! node v4.4.4
npm ERR! npm  v2.15.1
npm ERR! path /var/folders/8g/p8wtd8g17z973rpjrz5dx4_h0000gn/T/npm-93469-aa7ebb8a/unpack-2f218493bf49/package.json
npm ERR! code ENOENT
npm ERR! errno -2
npm ERR! syscall open

npm ERR! enoent ENOENT: no such file or directory, open '/var/folders/8g/p8wtd8g17z973rpjrz5dx4_h0000gn/T/npm-93469-aa7ebb8a/unpack-2f218493bf49/package.json'
npm ERR! enoent This is most likely not a problem with npm itself
npm ERR! enoent and is related to npm not being able to find a file.
npm ERR! enoent

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/Apple/Documents/projects/myapp/npm-debug.log

try just npm link javascript-obfuscator and then you can use it with javascript-obfuscator command


chore: Remove IDE files

Ignore and remove Visual Studio generated user files

Closing without merging; will take this up through our internal repo.


Checkpermission doesnt return deniedforever (Using Geolocator 7.0.1)

🐛 Bug Report
It's exactly the same issue as #626 #571

This is by design, detailed explanation can be found on our Wiki: https://github.com/Baseflow/flutter-geolocator/wiki/Breaking-changes-in-7.0.0#android-permission-update


v2 Rewrite

This wrapper is made for v1, since v1 is defunct, we should rewrite this to v2.

This wrapper is v2 compliant, skipping debt


Added EventHandler for IActiveMqClient to specifically handle consumer and producer errors

Hi @astro-phage,
Could you please share your reasoning behind this change? What is your use case?
Thanks

Closed as abandoned by the author.


Handling pandas Series and single column DataFrames

This PR adds support for handling pandas and dask Series and single column DataFrames by resetting their index, turning it into a dimension. It should not have any backwards compatibility issues, except that constructing a Dataset from a single column DataFrame will now use the index and make it a dimension, while previously it would have just had the single column as a dimension. In all other cases it would have previously errored.

This is really helpful, thanks!  Given that the output of so many Pandas operations is a single-column dataframe or series with an index, we can now plot these without having to reset the index or specify the dimensions explicitly.

So I've got some ideas on how to improve this a bit further. I'd suggest that if the user references an index as a key dimension by name we could also reset the index so it can be used by the interface. For dataframes with an index column with no name you should also simply be able to reference it by supplying 'index' as the key dimension.
So you might do something like this, a dataframe with three columns of which you want to plot one:
df = pd.DataFrame({'A': range(10), 'B': np.random.rand(10), 'C': np.random.randn(10)})
hv.Curve(df, 'index', 'A')

This also got me thinking about "wide" datasets and what the best way would be to let the user get them into HoloViews. I feel fairly strongly that data should generally be tidy when working with HoloViews, since each column in a wide dataset does not correspond to a value dimension, instead the column names represent values along a secondary dimension. I'd therefore suggest we provide an easy way to "melt" a dataset. pd.melt provides very useful functionality to make datasets tidy, but it's always confused me. By adding a simple .melt method to datasets I think we could make things much more intuitive, e.g. take the example above:
df = pd.DataFrame({'A': range(10), 'B': np.random.rand(10), 'C': np.random.randn(10)})
hv.Curve(df, 'index').melt()

It's gone from a wide to a tiny format and given the value dimension the name 'Value' and the columns have become individual Curve indexed by the 'Group' dimension. Now let's look at a more realistic example, here's a mock stock timeseries datasets with three columns:
df = pd.DataFrame(np.random.randn(30, 3), columns=['MSFT', 'IBM', 'AAPL'],
                  index=pd.date_range('2017-01-01', '2017-01-30', name='Date')).cumsum()

hv.Curve(df, 'Date').melt('Close ($)', 'Stock')

This time we've given the index, value and group dimensions actual names.

I'd suggest that if the user references an index as a key dimension by name we could also reset the index so it can be used by the interface. For dataframes with an index column with no name you should also simply be able to reference it by supplying 'index' as the key dimension.

Sounds good!

I'd therefore suggest we provide an easy way to "melt" a dataset.

Your examples look good, and I think they will help address #2162.  But it's hard for me to see what hv.Curve(df, 'Date') would do before the melting; is that a meaningful object?  I was expecting to see you propose for .melt to be a method on hv.Curve, not on hv.Dataset.

But it's hard for me to see what hv.Curve(df, 'Date') would do before the melting; is that a meaningful object?

It would display just the first column, so I do think it's meaningful. It's even useful for gridded data where you might have multiple value arrays in your xr.Dataset.
hv.Image(xrds).melt()

I was expecting to see you propose for .melt to be a method on hv.Curve, not on hv.Dataset.

Assume you meant a method on Dataset not Curve? Anyway, (almost) all elements except annotations are Dataset subclasses, so yes it is a method on Dataset and Curve.

Hmm.  It seems more natural to me to do that sort of data manipulation before the object is visualizable, but I'm not sure.  Can you make an example where you melt an hv.Dataset, then display it as a table, and only then make a Curve out of it, so that it's clear what the melting did?

These two would be equivalent:
hv.Dataset(df, 'index').melt().to(hv.Curve, 'index').overlay()

and:
hv.Curve(df, 'index').melt().overlay()

Makes sense, thanks!  Might be good to introduce it that way in the docs so that , then point out that the second way is more convenient and does the same thing.  Shouldn't melt() just assume that it should use the index column as the kdim, as the default?

I definitely support this feature though I would need to think carefully about how intuitive this behavior would be. The goal is to have things 'just work' without messing around people who might be making certain assumptions about the index on their dataframes.
Whatever we do, we need a new user guide talking about tidy vs wide formats and the melt method when it is introduced.

The goal is to have things 'just work' without messing around people who might be making certain assumptions about the index on their dataframes.

More complex and automatic handling of pandas indexes is going to have to wait a while longer as it has potential backward compatibility implications. For now this will allow using an index if supplied and automatically using it only in cases where it would have errored before. I'd be happy to rework the existing user guides with material on working with different datasets.

Let's deal with my suggestion for a melt method in another PR. For now I think we should merge this immediately.

Looks good and I agree it should be merged ASAP, just to get some real world testing.
It would be good to update the docs about this in the PR implementing the melt method.
Merging.


Weird Issue

Ionic version:  (check one with "x")
[ ] 1.x
[ X] 2.x
I'm submitting a ...  (check one with "x")
[X ] bug report
[ ] feature request
[ ] support request => Please do not submit support requests here, use one of these channels: https://forum.ionicframework.com/ or http://ionicworldwide.herokuapp.com/
Current behavior:
ionic platform update ios
Outputs:
mv: no such file or directory: /Users/myname/myproject/platforms/ios/myproject.xcworkspace/xcshareddata/xcschemes/__PROJECT_NAME__.xcscheme
I couldn't find anyting on google explaining this.
Does anybody know what's the reason for this?

I'm having this same issue.

this same issue...

+1 same issue

See if this issue helps.

Me too +1


Hyper ContentType hard-codes Mime<AsRef[Param]> as Mime<Vec<Param>>

In the mime crate, mimes can be created from &'static [Param], but defaults to Vec<Param>. In hyper, it's not possible to use &'static [Param].
The signature could be pub struct ContentType<T: AsRef[mime::Param] = Vec<mime::Param>>(pub Mime<T>); to avoid the heap.

I initially set the type for ContentType to a vec because allowing it to be generic means each different type ends up with a different TypeId, which is how the typed headers are stored internally in the Headers type. This means that you could have this code:
let mime_with_static: Mime<&'static [mime::Param]> = ...;
headers.set(ContentType(mime_with_static));
let mime_with_vec = headers.get::<ContentType<Vec<mime::Param>>();

And internally, it will have treat that as two different typed headers, so they will both be stored separately.
I suppose that's not the end of the world, but at the time it seemed like a bad idea. At the same time, one can create any struct MyDifferentContentType(Whatever) and implement Header, and it will work as well.

Closing as this was merged.


⚠ LPDM Handbook (hosted on Divio) has degraded performance

In 32540d7, LPDM Handbook (hosted on Divio) (https://repohubdev.tk) experienced degraded performance:

HTTP code: 500
Response time: 5374 ms

Resolved: LPDM Handbook (hosted on Divio) performance has improved in 1dbf52b.