grcov: init at 0.8.7

Motivation for this change
Add grcov to nixpkgs.
Things done
I tested this by generating grcov coverage reports. Seems to work fine. There are a couple failing integration tests which I've disabled. These tests are looking for grcov in the target/(debug|release)/grcov and not finding them. The application itself seems to work.

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[x] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Thanks for the feedback! I've made some changes.

I ran the grcov through nixfmt. It doesn't look like there's a standardized way to format, so hopefully this is "good enough"TM. The formatting didn't change much, really (a 3 line difference).

Looks fine and readable to me.


When destroy LottieAnimation, should call destroy on LottieResource

LottieAnimation will destroy all texture but the LottieResource resource will leave in the cache of resource manager. when load the same url again, the cache will work without texture
Now I have to call it by hand:
this._currentEntity.getComponent(LottieAnimation).resource.destroy();
this._currentEntity.destroy();

That's right. In this PR https://github.com/ant-galaxy/engine-lottie/pull/49 we only destroy textures, the resource should also be destroyed.


Paper user test of live preview

The visible change in with the live preview will be the new location of the preview, and the workflow for previewing.
The major change will simply be that previews are automatically available.
Need to make sure that users feel that the new preview workflow feels natural and easy.
Need to make sure that users can recognize the difference between a live preview that updates automatically and a regular preview that needs to be rebuilt.
Present new preview location to autotune users using mocks.

Timeline: https://drive.google.com/a/voxmedia.com/file/d/0B3nFdKjvjwBPeE1aZ0dtaVBUMkk/view?usp=sharing
Charts: https://drive.google.com/a/voxmedia.com/file/d/0B3nFdKjvjwBPck8yUnFCQjBDc28/view?usp=sharing

These mockups are different from what you posted on the other issue - is this changed based on user feedback?

No. I also updated the other issue. I realized this morning that it really needed more indication of whether or not it had a live preview ability, so I added a few things to it before I started testing this afternoon. I also realized that I should use a different blueprint for live/not live.

Notes from user tests are here: https://docs.google.com/document/d/1RwWIWklqUkX9mS6GGJmJ-A2ojuOIZDHvHWEpAED0IeA/edit


Broken formatting on the Polish BY 4.0 translation

As you can see at this link (https://creativecommons.org/licenses/by/4.0/legalcode.pl), the formatting is off on this particular translation. I assume it happened during the redesign launch.
This is typically something Rob would handle, so I will assign @aldenstpage for now. It's also possible that Affinity Bridge might be able to help. @ericsteuer do you know if they have access and/or willingness to help fix license files?
I think this is probably relatively high priority given that it substantially affects a live translation. Thank you!

Thanks for this, @sarahpearson. I'm adding @mackh and @robinpuga from AB to take a look.

It looks as though somebody copied and pasted HTML from the 3.0 translation into 4.0, creating the mashed up page we see now. I will look into this.

Thx Alden!
Sent from my iPhone

On Sep 24, 2018, at 7:48 AM, Alden Page<EMAIL_ADDRESS>wrote:
It looks as though somebody copied and pasted HTML from the 3.0 translation into 4.0, creating the mashed up page we see now. I will look into this.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.


[FEAT] ctrlclick event

Hi!
It would be really great to implement a ctrl + click event on nodes, edges and paths.
Adding some more events such as keydown/up may be a good idea too!

Hi @Julien-cpsn,
Thanks for the feature request!
Currently, it is still possible to detect Ctrl key presses in click events such as "node:click".
An example of obtaining Ctrl+click is shown below, which changes the color of the node.
<script setup lang="ts">
import { reactive } from "vue"
import { EventHandlers } from "v-network-graph"
import data from "./data"

const nodes = reactive({ ...data.nodes })

const eventHandlers: EventHandlers = {
  "node:click": ({ node, event }) => {
    if (event.ctrlKey) {
      // toggle
      nodes[node].active = !nodes[node].active
    }
  },
  "node:contextmenu": ({event}) => {
    // Disable the context menu that appears when pressing the Ctrl-key
    // and clicking at the same time in some browsers.
    event.preventDefault();
  }
}
</script>

<template>
  <v-network-graph
    :nodes="nodes"
    :edges="data.edges"
    :layouts="data.layouts"
    :configs="data.configs"
    :event-handlers="eventHandlers"
  />
</template>

// data.ts
import { Nodes, Edges, Layouts, defineConfigs } from "v-network-graph"

const nodes: Nodes = {
  node1: { name: "Node 1", active: false },
  node2: { name: "Node 2", active: false },
  node3: { name: "Node 3", active: true },
  node4: { name: "Node 4", active: false },
}

const edges: Edges = {
  edge1: { source: "node1", target: "node2" },
  edge2: { source: "node2", target: "node3" },
  edge3: { source: "node3", target: "node4" },
}

const layouts: Layouts = {
  nodes: {
    node1: { x: 0, y: 0 },
    node2: { x: 80, y: 80 },
    node3: { x: 160, y: 0 },
    node4: { x: 240, y: 80 },
  },
}

const configs = defineConfigs({
  node: {
    normal: {
      color: n => n.active ? '#ff5555' : '#4466cc'
    },
    hover: {
      color: n => n.active ? '#ff5555' : '#4466cc'
    }
  }
})

export default {
  nodes,
  edges,
  layouts,
  configs,
}

The v-network-graph library does not support key events, but they can be obtained using the standard HTML/Vue ways. Therefore, it is currently considered unnecessary or of low priority for the library to support them.
Below is an example of deleting a selected node/edge using the delete key's up event. In the future, if there are any use cases that are difficult to achieve with these standard ways, key events might be supported.
<script setup lang="ts">
import { reactive, ref } from "vue";
import data from "./data";

const nodes = reactive({ ...data.nodes });
const edges = reactive({ ...data.edges });

const selectedNodes = ref([]);
const selectedEdges = ref([]);

function onDeleteKeyUp() {
  if (selectedNodes.value.length > 0) {
    const names = selectedNodes.value.map((n) => data.nodes[n].name).join(", ");
    const confirmed = confirm(`Are you sure you want to delete [${names}]?`);
    if (confirmed) {
      selectedNodes.value.forEach((n) => delete nodes[n]);
    }
  } else if (selectedEdges.value.length > 0) {
    const ids = selectedEdges.value.join(", ");
    const confirmed = confirm(`Are you sure you want to delete [${ids}]?`);
    if (confirmed) {
      selectedEdges.value.forEach((e) => delete edges[e]);
    }
  }
}
</script>

<template>
  <!-- The `tabindex` attribute is required to fire key events. -->
  <v-network-graph
    tabindex="0"
    :nodes="nodes"
    :edges="edges"
    :layouts="data.layouts"
    :configs="data.configs"
    v-model:selectedNodes="selectedNodes"
    v-model:selectedEdges="selectedEdges"
    @keyup.delete="onDeleteKeyUp"
  />
</template>

<style lang="scss" scoped>
.v-network-graph:focus {
  // focus style
  outline: 1px dashed #aaa;
}
</style>

import { Nodes, Edges, Layouts, defineConfigs } from "v-network-graph";

const nodes: Nodes = {
  node1: { name: "Node 1", active: false },
  node2: { name: "Node 2", active: false },
  node3: { name: "Node 3", active: true },
  node4: { name: "Node 4", active: false },
};

const edges: Edges = {
  edge1: { source: "node1", target: "node2" },
  edge2: { source: "node2", target: "node3" },
  edge3: { source: "node3", target: "node4" },
};

const layouts: Layouts = {
  nodes: {
    node1: { x: 0, y: 0 },
    node2: { x: 80, y: 80 },
    node3: { x: 160, y: 0 },
    node4: { x: 240, y: 80 },
  },
};

const configs = defineConfigs({
  node: {
    selectable: true,
  },
  edge: {
    selectable: true,
  },
});

export default {
  nodes,
  edges,
  layouts,
  configs,
};

I will post these codes in the docs soon.
Thank you!

I close this issue for now.
If you have any other question/comment, please reopen this issue.

I will post these codes in the docs soon.

I have added the following URL and will close this issue.
https://dash14.github.io/v-network-graph/examples/event.html#handle-user-clicking-on-a-node
https://dash14.github.io/v-network-graph/examples/event.html#keyboard-events


validation for radio buttons

I want t apply validation for two radio buttons...belonging in the same group...lines 68 and 8 http://jsbin.com/qudaro/edit?js,output
The radio buttons come under the heading same day app-in the HTML.
I cannot make it work despite trying various solutions.

I have made some progress...

this is how things are-a behavior of the code I cannot explain:
As I said there are two radio buttons....the problem is that if a check the first button no validatior errors are emitted(as it should)....but if I check the second button validation error is emitted(while it should not)
http://jsbin.com/qudaro/edit?html,console,output

found it...


What does the Change Emails "With Issues" option mean under notification settings?

Under notification settings, I set Change Emails to be "With Issues" and set EMAIL_AUDIT_REPORTS_INCLUDE_JUSTIFIED=False in the config.  I assumed this meant it would only email me on changes with unjustified issues, however I still get emails for changes that have no issues at all (e.g. creating / deleting RDS snapshots, updating route 53 records, etc.).  Is this a bug or am I not understanding what "With issues" means?  Also, I am using the code in the develop branch fetched 2-14.
Thanks!

Probably a bug

Yeah, I'm wondering if that whole notifications panel isn't working or something else is not working on my system.  I just set the change emails to "None" and restarted the supervisor (I also rebooted the system just to make sure there were no old processes still hanging around), however I still continue to get change emails.  Also, I have "Daily Email" checked and I receive no daily emails.  It's almost as if it's ignoring my choices in the notifications panel and using some set of defaults instead.


[WIP] Onyx Connection Manager

Details

This PR includes the necessary changes when bumping Onyx after this PR is merged.
Most of the changes here are just renaming variables and changing types.
Fixed Issues

$ https://github.com/Expensify/App/issues/47143
PROPOSAL:
Tests

[x] Verify that no errors appear in the JS console

Offline tests

QA Steps

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native
https://github.com/user-attachments/assets/50be6be1-2c50-42f7-9391-9dd69a83a482

Android: mWeb Chrome
https://github.com/user-attachments/assets/1ea6619a-4d0c-46c2-837e-25f22ed5555a

iOS: Native
https://github.com/user-attachments/assets/3b22f7b3-ac14-4b15-aa74-23958f07dcdb

iOS: mWeb Safari
https://github.com/user-attachments/assets/1fb78001-0af4-4b92-88ee-67633a6e0020

MacOS: Chrome / Safari
https://github.com/user-attachments/assets/c9aba202-f624-4949-9ada-eb7ada944d1c
https://github.com/user-attachments/assets/f6c18ade-659c-44a0-bfd1-9f3b0fc641d1

MacOS: Desktop
https://github.com/user-attachments/assets/7a589a65-9444-4a15-9f5b-8351a3fab776

From the Onyx PR's description I tested the following:
✅ 1. Open a chat, send a message, react to that message and reply to that message in a thread
✅ 2. Submit an expense and open that expense
✅ 2. Assign a task, open that task and mark it as complete
✅ 3. Go to Settings and change the App theme
Additionally, I tested the following flows:
✅ Track expense, Submit expense, Split expense, Pay someone, Send invoice, Assign task and Quick action for these.

Tested some from a list of previously triaged issues from https://github.com/Expensify/App/pull/42057#issuecomment-2118617952, which was a similar onyx bump related PR, triaged by QA:

✅ Web - Chat - Sluggish transition between main chat and transition thread
✅ Web - Chat - URL is not hyperlinked on chat composer
✅ Web - Receipt - Delete receipt is not displayed
✅ Web - Receipt - Its not here page is displayed when trying to replace a receipt
✅ Web - Distance - Distance receipt only shows the map
I selected the issues in the above list because out of the entire list, these seem to me to be potential issues on this PR since it's related to onyx connections, but they all passed. Therefore, as @fabioh8010 requested:

Could we have full regression test here?

I think it would be very helpful to have an ad-hoc build here now that the E/App PR is ready and have the QA team's results to go off and triage before moving forward with merging this.
cc @mountiny

Asked QA for testing but it will take some time, probably next week it should be completed.

@ikevin127 @mountiny I've updated the PR to target Onyx v2.0.65 and opened to review.

Not sure what to test here (again), I thought we're merging without QA testing and triaging based on https://github.com/Expensify/react-native-onyx/pull/567#issuecomment-2302950332 and https://github.com/Expensify/react-native-onyx/pull/567#pullrequestreview-2251976682 🤔

@ikevin127 I think you just need to fill checklist then and we proceed to engineer review?

@ikevin127 Can you please add the checklist mainly, you have tested already and we are going to see how this behaves in staging

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

@fabioh8010 do you think this PR could introduce performance regression? According to history commits it looks like this:

So we have 3 PRs that potentially could introduce a regression:

increasing characters limit (but it's related to other page);
removing storybooks builds;
this PR with onyx that affects a lot of places of the app 🙈

I can not say precisely yet whether this PR exactly introduce a regression (I had to run e2e tests locally and compare results), but just technically - could these changes introduce something that could affect performance in negative side?

That was probably this PR indeed out of the options 🙈

Being discussed here.

🚀 Deployed to staging by https://github.com/mountiny in version: 9.0.25-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/mountiny in version: 9.0.25-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅


Additions: "change the world" and "disrupt"

Thanks. I have to figure out how to have a ligature that's a subset of another before I can merge this (disrput/disruptive).


How to capture callbacks?

I installed this great plugin and trying to capture authenticated user data. How to define methods in it? and how to use slots?
 Fresher to Vue.

See #7. Read the docs for everything else. You can pick up examples from the demo site source.

Thanks. Found it


CLASSPATH warning in leiningen

Issue description
Problem: CLASSPATH warning when using lein repl in nix-shell
This is not advisable for leiningen usage, as can be seen from the warning :)
I'm not a nix expert, but we discussed this on #leiningen /freenode, here's a small chat log:
>> Nix operates with things in unconventional places (which allows it to do all that it does). In this case, my CLASSPATH gets set to: /nix/store/rs5d0hp4idpkhs0gcvl0s3imy3s5pzmm-leiningen-2.8.1/share/java/leiningen-2.8.1-standalone.jar
> the lein warning is correct
> if you export CLASSPATH that'll infect all your lein invocations
> rather than finding lein that way, I suggest you patch the lein location in the bin/lein script instead
> (not to mention other things that care about exported CLASSPATHs)
> https://salsa.debian.org/clojure-team/leiningen-clojure/blob/master/debian/patches/0003-Update-LEIN_JAR-location-to-match-installed-jar.patch
> I think what you probably want is to template that value out and set it at install time

As far as I can see the relevant file is
https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/tools/build-managers/leiningen/default.nix but if I got this right this won't actually help here as CLASSPATH is not set by the wrapper script, but by nix-shell or the jdk package? So not sure how to proceed here, except maybe unset CLASSPATH in that wrapper script?
Tagging @bendlas for having touched the lein nix expression last, sorry :)
Steps to reproduce
$ cat test.nix
{ pkgs ? import <nixpkgs> {} }:

pkgs.stdenv.mkDerivation
{
  name = "asdf";
  buildInputs = with pkgs;
  [
    # Clojure
    jdk8
    leiningen
  ];
}
$ nix-shell test.nix
##############
[nix-shell:~/tmp]$ lein version
WARNING: You have $CLASSPATH set, probably by accident.
It is strongly recommended to unset this before proceeding.
Leiningen 2.8.1 on Java 1.8.0_192 OpenJDK 64-Bit Server VM

Technical details
$ nix-shell -p nix-info --run "nix-info -m"
these paths will be fetched (0.00 MiB download, 0.00 MiB unpacked):
  /nix/store/wsqynhnll3nybp9wn02j66qd5x9xvxsx-nix-info
copying path '/nix/store/wsqynhnll3nybp9wn02j66qd5x9xvxsx-nix-info' from 'https://cache.nixos.org'...
 - system: `"x86_64-linux"`
 - host os: `Linux 4.15.0-39-generic, Ubuntu, 18.04.1 LTS (Bionic Beaver)`
 - multi-user?: `no`
 - sandbox: `no`
 - version: `nix-env (Nix) 2.1.3`
 - channels(florian): `"nixpkgs-19.03pre160658.1bf18e4c852"`
 - nixpkgs: `/home/florian/.nix-defexpr/channels/nixpkgs`

rather than finding lein that way, I suggest you patch the lein location in the bin/lein script instead

that's actually what we do https://github.com/NixOS/nixpkgs/blob/e42d10957d87a5837085cd3273f97e50b67e987d/pkgs/development/tools/build-managers/leiningen/default.nix#L39
CLASSPATH is set as a side effect of the java setup hook https://github.com/NixOS/nixpkgs/blob/master/pkgs/build-support/setup-hooks/set-java-classpath.sh
There is an argument to be had on whether it's more correct to unset CLASSPATH in the wrapper script or leave it.
Depending on how leiningen constructs its classloaders, leaving in the CLASSPATH should make leiningen use Nix' dependencies instead of its own, which, in a nix-shell, is arguably the desired behavior. Also the 'infectious' behavior is part of the expectation in a nix-shell.

So I guess what you're saying that it would be expected behaviour for regular nix-shell users, while being unexpected for leiningen users.
So maybe it would be best to patch out the warning in nix then?

So I guess what you're saying that it would be expected behaviour for regular nix-shell users, while being unexpected for leiningen users.

I would say so.

So maybe it would be best to patch out the warning in nix then?

That would be to the detriment of Nix users not in a nix-shell, which could not benefit from the warning any more.
Thinking about it again, the best course of action would be to move the leiningen jar from share/java to a place where it's not picked up by set-java-classpath.sh.
Its proper place isn't in share/java anyway, since it's an uberjar containing all its dependencies.
In all the remaining cases, where you actually compose your classpath via nix, but then still run leiningen, the warning is appropriate.


[Improvement]: improve optimizing status display

Search before asking

[X] I have searched in the issues and found no similar issues.

What would you like to be improved?
The optimizing page display on MBP would be like this:

This presentation has following shortcomings：

minor/major/full optimizing status terms was not fully presented
there's no highlighting between optimizing and no optimizing status
if a lot of tables under pending status, there should be warning

How should we improve?

change title of status to optimizing status
add dots of different color before optimizing status items with optimizing green, pending yellow and idle grey
change item of MinorOptimizng, MajorOptimizing and FullOptimizing to minor, major and full, change Pending to pending and change Idle to idle

Are you willing to submit PR?

[X] Yes I am willing to submit a PR!

Subtasks
No response
Code of Conduct

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

Should we capitalize the first letter for status like :
Idle Pending Minor Major and Full?

Should we capitalize the first letter for status like : Idle Pending Minor Major and Full?

I don't think so, because this is content, not title or specific

Okay, Displaying the status in lower case seems good to me.


Cannot Revoke Token

From the API I can revoke a token using it's jti (jwt token id) and passing -dtoken_id=<jti>, but I cannot revoke the token using the actual token value.  In those cases I get:
{
"errors" : [ {
"status" : 500,
"message" : "HTTP response status 400:Failed on executing /api/v1/oauth/token/revoke, with response: {\n  "code" : "BAD_REQUEST",\n  "message" : "Token not revocable"\n}"
} ]}
It's worth noting that even though the Artifactory API says it's revoked the token, it's still usable. This may have to do with it having an expiration timestamp.

Creating a non-expiring token seems honour the revoke request. However, at least on 6.18.1, the token remains usable for a few minutes even after it's revoked. Filed RTFACT-22519.

Otherwise this seems to be working.


App crashing in Win 7 on startJVM

My script runs without an error from the command line but when I run it after creating a single file executable with PyInstaller it crashes without generating an exception that I can catch (Win 7/64, Python 2.7.10/32):
jar = getattr(sys, '_MEIPASS', os.getcwd()) + os.sep + 'ojdbc6.jar'  # So PyInstaller knows where to find the jar file
args = '-Djava.class.path=%s' % jar

print 'jaydebeapi version = ' + jaydebeapi.__version__
print 'jpype version = ' + jpype.__version__
print args

jvm_path = jpype.getDefaultJVMPath()
print "JVM Path: " + jvm_path
try:
    jpype.startJVM(jvm_path, args)

except Exception, e:
    print e.message
    print e.args
    sys.exit()

In the command window I get:
jaydebeapi version = 0.2.0
jpype version = 0.6.0
-Djava.class.path=C:\Temp\_MEI141242\ojdbc6.jar
JVM Path: C:\Program Files (x86)\Java\jre7\bin\client\jvm.dll

At this point I immediately get a window "Agile test has stopped working"
I'm not a sw developer and I'm struggling to figure out how to debug this further, any suggestions?  I tried hard coding the jar path to point outside of the temp directory created by PyInstaller but it still failed.
This used to work with a previous version of jpype, pyinstaller and probably java in that the application would run (and query an Oracle database).
Edit:
I found that I have an older version of _jpype.pyd in the directory where I'm running the command line version.  This was left over with problems I was having with the older PyInstaller not finding it.  However, when I deleted the _jpype.pyd file, the command line version dies on the same startJVM line.  Put it back and the command line version runs...  I looked in the temp folder created by PyInstaller and it has the new version of _jpype.pyd.  Unfortunately I can't recover the version, last time I used it was around May of 2015.
Edit 2:
I went back to jpype 0.5.7 with no luck.  The _jpype.pyd file is a different size than the one that is working (working=340k), I found a 0.5.4 zipfile on my system, maybe it came from that install?  I've probably done a horrible thing but it works so...  I renamed the _jpype.pyd file in the JPype1-0.5.7-py2.7-win32.egg directory, moved the 340k one there and I'm now working both at the command line, IDE and my single file PyInstaller exe...  I tried installing 0.5.4 but I don't have the JDK anymore and I didn't want to potentially break anything by installing it.  I'm only doing queries to an Oracle database using their OJDBC6.jar file.

This thread is very out of date and likely not relevant to the current master.


[BanSync] Option to Specify Which Servers to Sync

Please add an option to specify which servers to sync bans instead of just syncing bans across all servers that the bot is in.

Already exists. See the syndicatebans command
Additionally, the bansync command only syncs all servers without selection if you give it a "yes" for the auto parameter (otherwise, it prompts for which servers to sync)


Implement channel-based persistent subscriptions.

Docker containers are hit or miss
Starting docker container...
Started container with id: 98816dbb8c5f9c52b2a86d4751a2ca69fcf51f18e83cdfcd74198600f746dd70, name: /stoic_mahavira
panic: test timed out after 10m0s

Docker containers are hit or miss
Starting docker container...
Started container with id: 98816dbb8c5f9c52b2a86d4751a2ca69fcf51f18e83cdfcd74198600f746dd70, name: /stoic_mahavira
panic: test timed out after 10m0s

This might be a legitimate timeout in the test rather than the docker container. When running it locally, I don't seem to receive any events from the persistent subscription connection

TODO: Expose the Close function to the persistent subscription interface

Done @hayley-jean

@hayley-jean done


My code does not pass the challenge even though h1 is blue on the console

Challenge Override Styles in Subsequent CSS has an issue.
User Agent is: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:

Hello World!

Your code is not correct. If you have multiple classes they all should be inside one string (separated by space).

@ComfortCodes
Thanks for reporting this. But your code is incorrect.
GitHub Issues are for reporting bugs on the website only.
Please use the Help chat room for getting challenge related help.
Happy Coding.

Thanks a lot finally passed the challenge. Again thanks techstonia


Cannot delete rule which does not bind to a box

The REST API from the Cell Manager.
https://pds-dev.areas-yui.com/u-naka11/__ctl/Rule(Name='logout',_Box.Name='null')

Expected REST API.
https://pds-dev.areas-yui.com/u-naka11/__ctl/Rule(Name='logout')

OR.
https://pds-dev.areas-yui.com/u-naka11/__ctl/Rule(Name='logout',_Box.Name=null)

Where to fix:

createChunkedRuleTable
uRule.prototype.getMultipleRuleNames
uRule.prototype.deleteMultipleRules


syzkaller is not finding a kernel commit in the upstream kernel, even though the patch title is an exact match

From<EMAIL_ADDRESS>Date: Thu, 15 Dec 2022 21:11:22 -0500
From: Theodore Ts'o<EMAIL_ADDRESS>Subject: Re: kernel BUG in ext4_free_blocks (2)
Message-ID<EMAIL_ADDRESS>On Thu, Dec 15, 2022 at 08:34:35AM -0800, syzbot wrote:

This bug is marked as fixed by commit:
ext4: block range must be validated before use in ext4_mb_clear_bb()
But I can't find it in any tested tree for more than 90 days.
Is it a correct commit? Please update it by replying:
#syz fix: exact-commit-title
Until then the bug is still considered open and
new crashes with the same signature are ignored.

I don't know what is going on with syzkaller's commit detection, but
commit 1e1c2b86ef86 ("ext4: block range must be validated before use
in ext4_mb_clear_bb()") is an exact match for the commit title, and
it's been in the upstream kernel since v6.0.
How do we make syzkaller accept this?  I'll try this again, but I
don't hold out much hope.
#syz fix: ext4: block range must be validated before use in ext4_mb_clear_bb()
Syzkaller, go home, you're drunk.
                                    - Ted

TL;DR: 1e1c2b86ef86a ("ext4: block range must be validated before use in ext4_mb_clear_bb()") is not in Stable.
Replied on the list<EMAIL_ADDRESS>

Yes, but it's in upstream.  And the dashboard lists "upstream"[1] as one of the kernels that Syzkaller is tracking.   So it's super-unclear why it's not one of the trees that Syzbot doesn't track per the e-mail.   Why does the e-mail says "none of the trees", when "upstream" is one of the trees listed on the Dashboard?
[1] https://syzkaller.appspot.com/bug?extid=15cd994e273307bf5cfa

More to the point, if syzbot is going to complain and cc upstream developers, it's unreasonable for upstream developers to understand why the Syzbot in the Android namespace doesn't care about uptsream.    It would be much more reasonable for Syzbot to understand that patches flow from upstream to LTS stable kernesl, to the Android kernels.  Or, don't bug the upstream maintainers since the upstream maintainers can't be expected to understand the somewhat arbitrary way that Syzbot android namespace is set up?
With apologies to Oliver Struck in his book, "The Elements of Styles", "Always write (program) with deep sympathy for the reader (user)".

And the dashboard lists "upstream"[1] as one of the kernels that Syzkaller is tracking.

Which part of the dashboard bug page do you mean in this case?

if syzbot is going to complain and cc upstream developers, it's unreasonable for upstream developers to understand why the Syzbot in the Android namespace doesn't care about uptsream

As was said in the LKML discussion, syzbot did not specifically intend to email upstream about this bug. Syzbot captures emails mentioned during the bug discussion and sends updates to those emails. Syzbot was Cc'd to the discussion it probably shouldn't have been Cc'd to (*) and the notification message failed to make the situation clear.
I fully agree with your points that

The notification message could be much better. I'll take a look into sharing the list of the trees in which syzbot tried to find the fixing commit. It's easy to do, but the only fear is that the bot tests quite a number of upstream trees, so such messages could get very big.
It would be very helpful if syzbot were aware of the flow of the fix patches. I think it will appear in some form next year, but likely no earlier than the proper subsystem management support is done and deployed.

(*) It could probably be prevented if syzbot only captured emails for messages belonging to the original bug reporting thread (i.e. if the sequence of In-Reply-To led to the syzbot's bug report). This will also help resolve this issue.


DB configuration per environment and several DB's per environment

Since _config.properties allows to have different environment configurations, the _database.configuration should allow database configuration per environment as well.
Since each environment might have more that one database (might be different database types as well), the configurations should allow to configure as many connections as required per environment.

it might be useful feature for every configuration properties file.
Based on mine understanding priorities starting from highest
CONFIG("config.properties") - DONE
DATABASE("database.properties")
TESTDATA("testdata.properties")
API("api.properties")
Seems not needed for:
EMAIL("email.properties")
REPORT("report.properties")


Post -> Unable to create or Edit post with a visibility of a 'week'

Open FP page and login using valid email/pwd
Click on  'Create post' to create new post -> enter all details and select time visibility = 'week' -> 'POST'
Click own 'edit' to view the post

Issue: You will observe that the post is created with Day visibility not week. Also when user try to edit with week, it change it to 'Day' hence unable to create/edit the post with 'Week' visibility.
Refer below GIF.

This issue does not exist in PROD, though it is displayed incorrect like '7,week'- known, but user is able to create and edit post with week visibility.

@rabbi08 please check this review build on different setup before merge
https://feature2008-cannot-create-weeklypost.fightpandemics.xyz/


GSSOC'23 : Volcanic Eruption Prediction

Description
As discussed in issue no #589 . this machine learning module has been  implemented using Random Forest Regressor.
Checklist

[x] I've read the contribution guidelines.
[x] I've checked the issue list before deciding what to submit.
[x] I've edited the README.md and link to my code.

(Add x in the [] to mark as completed.)
Related Issues or Pull Requests
(Link the Issue Number over here.)
#589

Please approv this pr . and give the label og GSSOC'23 with appropriate .

Updated Please LGTM !  and give the label og GSSOC'23 with appropriate level.

@khusheekapoor Please merge this pr


update example to support node-steam 1.0.0

Thanks for the hard work, and sorry I didn't get to it sooner. These changes should be included in the mega pull. If not, please make them again once it has been merged.


Make branches more intuitive to use

Ideally we'd have something in place like what xbyak does for managing jumps and labels to make it less of a pain to describe branching.
This should be looked into once the main base instruction set is fully implemented.
Ideally we'd use a label system like what xbyak has.

Implemented in 3b99a643eb38d420756aaf1e9c86f34ab13fa8b5


run on unsaved code?

I would like to run a syntax check on the source without saving (so if the syntax is broken, it'll keep working in the browser, where I might be testing other things at the same time).
Is this possible?

Unfortunately not—JSLintMate is designed to only support saved files. Internally, JSLintMate passes file paths to JSLint and JSHint; it could potentially pass around a huge string of unsaved source code, but could get messy.
When I've been in this situation in the past, I've copied the unsaved source code into a new file, then saved and iterated on that. (You might already be doing this.) It's not the same, but it works.


Add Telegram to project metadata & UI

What does this PR do and why?
Closes https://github.com/jbx-protocol/juice-interface/issues/1289
The only thing to look closer at if it is done well is a new ProjectMetadataV6 interface and implementation of it, I've changed all references in files from ProjectMetadataV5 to ProjectMetadataV6, lmk if that is ok but I guess it is the correct process to follow.
Lots of file changes but mostly adding telegram metadata where it is needed and adding a new version of metadata to files.
Screenshots or screen recordings

Acceptance checklist

[x] I have evaluated the Approval Guidelines for this PR.
[x] I have tested this PR in all supported browsers.
[x] I have tested this PR in dark mode and light mode (if applicable).

@NakedFool HEADS UP: pushed a rebase.


curl -k -L -X POST "https://h5.ha.chinamobile.com/h5-rest/customMade/checkout"   -H "Content-Type: application/json;charset=UTF-8"   -H "Cookie: hncmjsSSOCookie=61656162333436323335633934633263616265343238343330356639393330357c327c623033373936346531613764356336336163393336393966623936363365613530633262386139377c31363730393432353536323730;"   -d "{"customMadeCode":"X11202111126001,X11202111126002,X11202111126003,X11202111126004,X11202111126005","orderType":"1"}"

You’re trying to use double quotes in your double quotes, try using single quotes as the outer quote:
curl -k -L -X POST "https://h5.ha.chinamobile.com/h5-rest/customMade/checkout" -H "Content-Type: application/json;charset=UTF-8" -H "Cookie: hncmjsSSOCookie=61656162333436323335633934633263616265343238343330356639393330357c327c623033373936346531613764356336336163393336393966623936363365613530633262386139377c31363730393432353536323730;" -d '{"customMadeCode":"X11202111126001,X11202111126002,X11202111126003,X11202111126004,X11202111126005","orderType":"1"}'


Example of async getInitialProps with functional component

readme.md

When you need state, lifecycle hooks or initial data population you can export a React.Component (instead of a stateless function, like shown above):
import React from 'react'
export default class extends React.Component {
  static async getInitialProps ({ req }) {
    return req
      ? { userAgent: req.headers['user-agent'] }
      : { userAgent: navigator.userAgent }
  }
  render () {
    return

      Hello World {this.props.userAgent}

  }
}

You may use also functional component:
import React from 'react'
import 'isomorphic-fetch'
const Page = (props) => (

    Preact stars: {props.stars}

)
Page.getInitialProps = async ({ req }) => {
  const res = await fetch('https://api.github.com/repos/developit/preact')
  const json = await res.json()
  return { stars: json.stargazers_count }
}
export default Page

I think this is super useful info for our users. @rauchg ?

yuuuup. Let's add it!

A simple example returning a promise might be useful too?
import 'isomorphic-fetch'

const Page = ({ name, stargazers_count }) => (

    {name} stars: {stargazers_count}

)

Page.getInitialProps = () => {
  return fetch('https://api.github.com/repos/developit/preact')
    .then(res => res.json())
}

Page.propTypes = {
  name: PropTypes.string.isRequired,
  stargazers_count: PropTypes.number.isRequired
}

export default Page

How can I use multiple api in single page.
For example, my News website Left side has Latest news, and Right side has Popular news & Category wise 5 news. so how can I use multiple api's.
I had learned this code from :  https://nextjs.org/learn/basics/fetching-data-for-pages/fetching-data-for-pages
Sample code is attaching here.
import Layout from '../comps/MyLayout.js'
import Link from 'next/link'
import fetch from 'isomorphic-unfetch'
import Head from 'next/head'

const Index = (props) => (
  <Layout>

Batman TV Shows

      {props.shows.map(({show}) => (

          <Link as={`p/${show.id}`} href={`/post?id=${show.id}`}>

{show.name}

{show.summary}

          </Link>

      ))}

  </Layout>
)

Index.getInitialProps = async function() {
  const res = await fetch('https://api.tvmaze.com/search/shows?q=batman')
  const data = await res.json()

  console.log(`Show data fetched. Count: ${data.length}`)

  return {
    shows: data
  }
}

export default Index

Now I implemented these things in my news website, Now I want 2 dynamic things in 1 page,
Left side has Latest news, and Right side has Popular news & Category wise 5 news.
Kindly give me solution. thanks in advance :bowing_man: :+1: :fireworks:

@shurvirmori Hey you must be new here. This place is for Next.js issues, not support. You wont find help here.


Serde

This implements the serde serialisation and cleans up the related code for rustc-serialization as well.

Oh yeah, forgot to update .travis.yml


fix createCipher is deprecated bug

fix DeprecationWarning: crypto.createCipher is deprecated.

Thank you for your suggestion，formal parameter key of crypto.createDecipheriv ('aes-128-cbc', key, iv)  needs 32 bits, but the program （ sealtalk ） gives 15 bits, so it cannot receive your pull request


building mFAST in scope of other CMake project

Is it possible to add to mFAST include directories in case of building in scope of parent project?
I mean if I write in CMakeLists.txt something like below path to mfast.h automaticaly added to parent project include directories?
add_subdirectoy(deps/mFAST)
...
fasttypegen_target(protocol protocol.xml)
add_executable(parser main.cpp ${FASTTYPEGEN_protocol_OUTPUTS})
target_link_libraries(parser mfast_coder_static mfast_static)

I known it's possible via target_include_directories (https://cmake.org/cmake/help/v3.0/command/target_include_directories.html)

Possible solution 0ce7540


Update README with theme content description

Add a section briefing on the various files within the theme-gem
Addresses #87

looks good to me. then there is the general issue of how to actually find these files in case you want to copy/tweak them, but that is outside the scope of this particular issue.

there is the general issue of how to actually find these files in case you want to copy/tweak them

That is not specific to Minima.
Besides, its already covered by Jekyll Documentation here

Thank you for your feedback @joeydong. Pushed a couple of changes. :smiley:

Requesting a review from @DirtyF and anyone in @jekyll/documentation.

LGTM. @benbalter any thoughts?

Wow. Thanks for this @ashmaroli. Especially for a theme targeted at new Jekyll users, this is extremely helpful to giving them a starting point to grow, not just a website. Nice work.
@jellybot: merge +docs.


api for logs, updating user profile and listing top repositories

add api to get recent logs
add api to change user profile
add api to list top repositories,
change code in dao.ToggleUserAdmin
change post to put request for toggleUserAdmin and toggleProjectPublic
add comment on commonValidate function.

LGTM

OMG, big patch.


Landing page is needed to explain the prototype and the three views on the data

I can work on this. With mock-ups and later with programming it.


Stop suggesting sudo to install gems

Fastlane is great, thanks! However I don't feel it should suggest sudo to install itself. I'd rather see the guide recommend installation of rbenv (or another ruby version manager) and bundler, or anything else than relying on sudo. :)

Most iOS developers don't need rbenv or similar; for this reason, CocoaPods has avoided suggesting users install it. Instead, I think it would be nice if we followed their lead and make it optional sudo:
[sudo] gem install fastlane

Does that make sense?

I'd rather see it removed entirely but that's a fine compromise too.

Yeah, that's the decision we ended up with CocoaPods, should't force everyone to use a ruby manager, but we should at least note that it can be optional.
You can also link to our sued-less instructions: https://guides.cocoapods.org/using/getting-started.html#sudo-less-installation

@qrush I agree, it's not best practice, I use rbenv myself, but we must not forget who our target group is: We address iOS developers, that are not familiar with Ruby and the Ruby environment. They don't want to learn a technology, but want to get a job done. That is the only reason why I suggest sudo.
If we decided to tell the user how to use rbenv, I'm sure, we'd scare away a lot of users.
With the current solution, Ruby developers will use rbenv without sudo anyway and non-Ruby developers will just use sudo gem install.
Does that make sense?

I'll close this pull request, thanks for suggesting @qrush.

I have looked into [Releasy] on several occasions but my lack of esoteric ruby knowledge failed me. However, distribution as a binary that can be brew install'd, or a pkg, is definitely the ideal to strive for.

I don't know if I agree that homebrew or a binary is necessarily better. People who don't want to learn minimal ruby to automate things sound like the kind of iOS developers who don't want to automate things anyway.


COM-579: Add globals prop to mdxRenderer component

Please delete checklist items and sections that are not relevant
Checklist

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[x] This change requires a documentation update

Please check if the PR fulfills these requirements

[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Storybook or docs have been added / updated (for bug fixes / features)

What is the ticket / issue associated with this change? (Link to the ticket or issue)
https://impulsumvc.atlassian.net/browse/COM-579
Does this PR introduce a breaking change? (What changes might users need to make in their application due to this PR?)
Other information:
I have created this PR because the Buttons and Links use this format to set icons: <Link leadingIcon={Icon} and that causes the error  Icon is not defined when rendering mdx content by mdx-bundler, to fix this issue we need to pass a new object to getMDXComponent function as a global variables. https://github.com/kentcdodds/mdx-bundler#globals
Storybook Link (Link to a local storybook url to review new functionality)

Why do we need this?
I have created this PR because the Buttons and Links use this format to set icons: <Link leadingIcon={Icon} and that causes the error Icon is not defined when rendering mdx content by mdx-bundler, to fix this issue we need to pass a new object to getMDXComponent function as a global variables. https://github.com/kentcdodds/mdx-bundler#globals


Make fields readonly properties to avoid confusion, fixes #4811

fixes #4811

Could you give the same treatment to the copy of the attribute definition under src\Runtime.Base\src\System\Runtime\RuntimeImportAttribute.cs and delete the place where the compiler is trying to read the named argument initializer?
Here:
https://github.com/dotnet/corert/blob/a932997d294b189ed6b0e31ddec0fdbfaf9b6ffb/src/ILCompiler.Compiler/src/Compiler/MethodExtensions.cs#L24-L28
And here:
https://github.com/dotnet/corert/blob/a932997d294b189ed6b0e31ddec0fdbfaf9b6ffb/src/ILCompiler.Compiler/src/Compiler/MethodExtensions.cs#L44-L48
Thanks for looking into this!


new redirect and small updates

Issue
Link your PR to an issue
Fixes #___
Description
Please describe your pull request.
Testing
Describe the best way to test or validate your PR.

good to go


TestCacheExpire in ip_cache_test.go is flaky

Failed due to an apparently unrelated PR:
--- FAIL: TestCacheExpire (0.02s)
	ip_cache_test.go:41: Unexpected calls: [ip-address]
FAIL
coverage: 37.1% of statements
FAIL	github.com/GoogleCloudPlatform/kubernetes/pkg/master	0.138s

https://travis-ci.org/GoogleCloudPlatform/kubernetes/jobs/46919298

Problem here is that I left a small chance of a double-call in my parallelized cache. Didn't realize this was being tested. Will fix.


Please review typescript changes in master

@beepsoft
I've converted the js files to typescript but not the vue files yet. That will happen over time. Can you please review and provide feedback?

Closing - stale


Publish 1.5

Manual test

Date
2020-09-09

Operating system
Windows 10

IDEA version
2020.2.1 CE

Plugin version
1.5 (pre-release)

Tester
Olli

Note
-

When the software doesn't comply with the testing manual...

...it is marked with...
...if the reason for the incompliance is that...

FAILED!!!
there's a bug in the software.

REMARK.
the software should (perhaps) be changed.

normal
the testing manual should be changed.

Notes
(The issues that were reported already
in test for v1.2
are also copied here if they haven't been fixed.
They are marked with asterisks.)

0.1 IDEA version mentioned should be 2020.2.1.

1.4* This assertion should come after 1.5.

2.1* The button is now just New Project.

2.5* Move this after 2.10.

3.1* The menu item is now called About the A+ Courses Plugin.

3.5* What to do with the browser window?

4.6 The order of instruction steps here should be revised.

4.7* Instructions should tell which language to select.
Outdated screenshot.

4.9* There should be instruction to open the tool window.

4.10* FAILED!!! O1Library is marked [Double-click to install].

4.12* REMARK. Language must be selected first.

6.6* Outdated screenshot.

6.25* This would fit better after 6.26.

6.40* There could be hint to use File menu to easily restart.

6.41* The file must be from a module that compiles, e.g. O1Library.

6.46* See previous.

7.5* Should assert also that the status changes to Installed.


fix: update launch.json and webpack config

update outdated config for debugging in vscode and chrome
Note
This repository is for Vue 1.x and 2.x only. Issues and pull requests related to 3.x are managed in the v3 doc repo: https://github.com/vuejs/docs-next.

@yyx990803 @antfu @LinusBorg
It seems that you people are so busy, An hope good wishes for you, and we want to help you with pull requests. It will be great if you could check these pull requests.


Request to Dart VM Service timed out: _flutter.listViews({})

Steps to Reproduce
This is intermittent, but happens quite frequently on my new machine. When performing a hot reload, sometimes the hot reload takes forever to finish, and the app on the emulator just hangs.

Create new project in Android Studio
Replace contents of lib/main.dart with https://gist.github.com/filiph/e46084361c3c9c270695c760aa06d30d
Run in iOS Simulator (iPhone X)
Uncomment line 46 and save (performs hot reload automatically)

Hot reload (sometimes?) hangs for a minute...

... and then fails. The app is unresponsive. I have to stop and re-flutter run.
This happened several times during a Flutter Boring Show shoot today, with @Hixie.
Logs
Performing hot reload...
[+46129 ms] Refreshing active FlutterViews before reloading.
[        ] Sending to VM service: _flutter.listViews({})
[   +1 ms] Result: {type: FlutterViewList, views: [{type: FlutterView, id: _flutterView/0x7fd438806eb8, isolate: {type: @Isolate, fixedId: true, id: isolates/54694712, name: main.dart$main.dart-54694712, number: 54694712}}]}
Syncing files to device iPhone X...
[ +269 ms] DevFS: Starting sync from LocalDirectory: '/Users/filiph/dev/sliver_fbs'
[        ] Scanning project files
[        ] Scanning package files
[  +44 ms] Scanning asset files
[        ] Scanning for deleted files
[   +2 ms] Compiling dart to kernel with 1 updated files
[  +43 ms] Updating files
[   +3 ms] DevFS: Sync finished
[        ] Synced 0.0MB.
[        ] Sending to VM service: _reloadSources({pause: true, rootLibUri: file:///Users/filiph/Library/Developer/CoreSimulator/Devices/020C1218-499F-4C9F-A288-5B37E321BF7D/data/Containers/Data/Application/C2689256-1A0E-448E-BE56-B4C48B8E7404/tmp/sliver_fbsYGuiEz/sliver_fbs/lib/main.dart.incremental.dill, packagesUri: file:///Users/filiph/Library/Developer/CoreSimulator/Devices/020C1218-499F-4C9F-A288-5B37E321BF7D/data/Containers/Data/Application/C2689256-1A0E-448E-BE56-B4C48B8E7404/tmp/sliver_fbsYGuiEz/sliver_fbs/.packages, isolateId: isolates/54694712})
[  +31 ms] Result: {type: ReloadReport, success: true, details: {savedLibraryCount: 419, loadedLibraryCount: 1, finalLibraryCount: 420, shapeChangeMappings: []}}
[        ] reloaded 1 of 420 libraries
[        ] Sending reload events to iPhone X
[        ] Sending reload event to "main.dart$main.dart-54694712"
[        ] Sending to VM service: getIsolate({isolateId: isolates/54694712})
[   +5 ms] Result: {type: Isolate, fixedId: true, id: isolates/54694712, name: main.dart:main.dart(), number: 54694712, _originNumber: 54694712, startTime:<PHONE_NUMBER>976, _heaps: {new: {type: HeapSpace, name: new, vmName: Scavenger, collections: 389, avgCollectionPe...
[   +1 ms] Sending to VM service: _flutter.listViews({})
[+60007 ms] Request to Dart VM Service timed out: _flutter.listViews({})

flutter analyze
$ flutter analyze
Analyzing sliver_fbs...
No issues found! (ran in 1.2s)

flutter doctor -v
[✓] Flutter (Channel beta, v0.11.3, on Mac OS X 10.14.1 18B75, locale en-US)
    • Flutter version 0.11.3 at /Users/filiph/dev/flutter
    • Framework revision 72bf075e8d (12 days ago), 2018-11-09 20:36:17 -0800
    • Engine revision 5646e86a6f
    • Dart version 2.1.0 (build 2.1.0-dev.9.3 9c07fb64c4)

[✓] Android toolchain - develop for Android devices (Android SDK 28.0.3)
    • Android SDK at /Users/filiph/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-28, build-tools 28.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1136-b06)
    • All Android licenses accepted.

[!] iOS toolchain - develop for iOS devices (Xcode 10.0)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 10.0, Build version 10A255
    • ios-deploy 2.0.0
    ✗ CocoaPods installed but not initialized.
        CocoaPods is used to retrieve the iOS platform side's plugin code that responds to your plugin
        usage on the Dart side.
        Without resolving iOS dependencies with CocoaPods, plugins will not work on iOS.
        For more info, see https://flutter.io/platform-plugins
      To initialize CocoaPods, run:
        pod setup
      once to finalize CocoaPods' installation.

[✓] Android Studio (version 3.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 30.0.1
    • Dart plugin version 181.5656
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1136-b06)

[✓] Connected device (2 available)
    • Filip’s iPhone • eba005cd7bcf6a288a2af55721dfc16873335a15 • ios • iOS 12.1
    • iPhone X       • 020C1218-499F-4C9F-A288-5B37E321BF7D     • ios • iOS 12.0 (simulator)

! Doctor found issues in 1 category.

Aaah, I just noticed the ✗ in flutter doctor, and fixed it (by running pod setup). Now I can't reproduce this anymore.
I'll reopen the issue if I see this again, but it seems like the problem was between the keyboard and the chair. I just didn't finish Flutter's setup correctly, and then failed to run flutter doctor when I hit issues.

Cocoapods not being installed shouldn't cause this problem.

Looks like a dup of #23872

FYI @a-siva in case you have theories.

Are you seeing this with version 1.0, some recent fixes were made in flutter tools, if you still have a reproducible case would like to have a look at it.
/cc @aam


Detected first command for CodeActAgent

As swe commands are now Python functions, if execute_ipython comes before execute_bash,  execute_bash is only executing.

✨✨ Here's an AI-assisted sketch of how you might approach this issue saved by @SmartManoj using Copilot Workspace v0.19
Topic

Write test cases

Before

The repository contains integration tests for various agents in the tests/integration directory, including tests for BrowsingAgent, CodeActAgent, MonologueAgent, and PlannerAgent.
Unit tests are present in the tests/unit directory, covering various functionalities such as action serialization, observation serialization, response parsing, and sandbox operations.
The integration tests utilize mock responses to simulate interactions with language models, as seen in the tests/integration/mock directory.
The tests/integration/regenerate.sh script is used for regenerating integration tests, indicating a mechanism for updating tests based on changes in agent behavior or expected outcomes.
The tests/unit/test_sandbox.py file includes tests for sandbox environments, indicating the presence of sandboxing functionality testing.
No specific test cases are written for the changes introduced in the pull request within the provided code snippets or file list.

After

Unit tests are added for the changes in the pull request, specifically testing the prioritization logic for executing commands (<execute_bash>, <execute_ipython>, <execute_browse>) in agenthub/codeact_agent/codeact_agent.py.
The tests verify that the first command found in the action string is executed, and subsequent commands are ignored.
Integration tests are updated to reflect the new behavior of the CodeActAgent, ensuring that the agent correctly prioritizes and executes commands based on the order they appear in the action string.
Documentation in tests/unit/README.md is updated to include guidelines on writing tests for new agent behaviors, including the importance of testing command prioritization logic.

Plan

tests/unit/test_codeact_agent.py (ADD)

Add unit tests for CodeActAgent to verify command prioritization logic
Test that <execute_bash> command is executed when it's the first command in the action string
Test that subsequent commands are ignored if <execute_bash> is executed first
Test that <execute_ipython> command is executed when it's the first command in the action string
Test that <execute_browse> command is executed when it's the first command in the action string

tests/integration/test_codeact_agent_behavior.py (ADD)

Add integration tests for CodeActAgent to ensure correct behavior with new command prioritization
Test that the agent correctly executes the first command found in the action string in various scenarios
Verify that the agent ignores subsequent commands after executing the first command

tests/unit/README.md (CHANGE)

Update documentation to include guidelines on writing tests for new agent behaviors
Emphasize the importance of testing command prioritization logic in CodeActAgent

Sketch of implementation

An implementation sketch has not been generated or was not included
Details

Code analyzed at 01ad8a76ccee9bc7eb7aefb8dc5fe2e79dcee63c

I strongly recommend people who are interested in this use OpenDevin to write the test cases and compare them with the above one like #2224.

That looks pretty awesome!

Snapshot link

Seems there is a bug in committing.

Pushed to a new branch

This is due to stop sequences are not implemented in the proxy server for a custom model.


TFFC10Kingfisher10ImageCache41cleanExpiredDiskCacheWithCompletionHanderFS0_FGSqFT_T__T_U_FT_T

Crashed: com.onevcat.Kingfisher.ImageCache.ioQueue.my_cache
EXC_BAD_ACCESS KERN_INVALID_ADDRESS at 0xd16e38b6
EXC_BAD_ACCESS KERN_INVALID_ADDRESS at 0xd16e38b6
Thread : Crashed: com.onevcat.Kingfisher.ImageCache.ioQueue.my_cache
0  libswiftCore.dylib             0x009c7ab8 swift_getObjCClassMetadata + 199
1  libswiftCore.dylib             0x009b4125 findDynamicValueAndType(swift::OpaqueValue_, swift::Metadata const_, swift::OpaqueValue_&, swift::Metadata const_&) + 80
2  libswiftCore.dylib             0x009b4125 findDynamicValueAndType(swift::OpaqueValue_, swift::Metadata const_, swift::OpaqueValue_&, swift::Metadata const_&) + 80
3  libswiftCore.dylib             0x009b4883 dynamicCastToExistential(swift::OpaqueValue, swift::OpaqueValue_, swift::Metadata const_, swift::ExistentialTypeMetadata const_, swift::DynamicCastFlags) + 30
4  libswiftCore.dylib             0x009b46ad swift_dynamicCast + 484
5  libswiftCore.dylib             0x008a955c TFSs26_forceBridgeFromObjectiveCU__FTPSs9AnyObject_MQ__Q + 208
6  libswiftCore.dylib             0x008da780 TFOSs25_VariantDictionaryStorage8maybeGetUSs8Hashable___fGS_Q_Q0__FQ_GSqQ0_ + 176
7  libswiftCore.dylib             0x008da6c8 TFVSs10Dictionaryg9subscriptFQ_GSqQ0_ + 28
8  Kingfisher                     0x00450fc8 TFFC10Kingfisher10ImageCache41cleanExpiredDiskCacheWithCompletionHanderFS0_FGSqFT_T__T_U_FT_T + 2392
9  Kingfisher                     0x0044d3f0 TTRXFo__dT__XFdCb__dT_ + 56
10 libdispatch.dylib              0x32da32e3 _dispatch_call_block_and_release + 10
11 libdispatch.dylib              0x32dab729 _dispatch_queue_drain + 1468
12 libdispatch.dylib              0x32da5aad _dispatch_queue_invoke + 84
13 libdispatch.dylib              0x32dacf9f _dispatch_root_queue_drain + 394
14 libdispatch.dylib              0x32dae3c3 _dispatch_worker_thread3 + 94
15 libsystem_pthread.dylib        0x32f0adc1 _pthread_wqthread + 668
16 libsystem_pthread.dylib        0x32f0ab14 start_wqthread + 8

I'm seeing this issue as well. According to Fabric, it's on:

ImageCache.swift line 389
Kingfisher.ImageCache.(cleanExpiredDiskCacheWithCompletionHander (Kingfisher.ImageCache) -> (Swift.Optional<() -> ()>) -> ()).(closure #1)

Hi. @minikin  @marcelofabri
Thanks for the reporting. I will keep on eye on this.
@marcelofabri And may I get some more detail information on it? Would you please paste the full log, maybe it could tell more. Thanks!

Thread : Crashed: com.onevcat.Kingfisher.ImageCache.ioQueue.default
0  libswiftCore.dylib             0x00000001017e491c swift_getObjCClassMetadata + 240
1  libswiftCore.dylib             0x00000001017cb0bc findDynamicValueAndType(swift::OpaqueValue*, swift::Metadata const*, swift::OpaqueValue*&, swift::Metadata const*&) + 128
2  libswiftCore.dylib             0x00000001017cb0bc findDynamicValueAndType(swift::OpaqueValue*, swift::Metadata const*, swift::OpaqueValue*&, swift::Metadata const*&) + 128
3  libswiftCore.dylib             0x00000001017cbe20 _dynamicCastToExistential(swift::OpaqueValue*, swift::OpaqueValue*, swift::Metadata const*, swift::ExistentialTypeMetadata const*, swift::DynamicCastFlags) + 72
4  libswiftCore.dylib             0x00000001017cba94 swift_dynamicCast + 612
5  libswiftCore.dylib             0x00000001016d9238 _TFSs26_forceBridgeFromObjectiveCU__FTPSs9AnyObject_MQ__Q_ + 180
6  libswiftCore.dylib             0x0000000101703ca4 _TFOSs25_VariantDictionaryStorage8maybeGetUSs8Hashable___fGS_Q_Q0__FQ_GSqQ0__ + 244
7  Kingfisher                     0x0000000100dcfa64 Kingfisher.ImageCache.(cleanExpiredDiskCacheWithCompletionHander (Kingfisher.ImageCache) -> (Swift.Optional<() -> ()>) -> ()).(closure #1) (ImageCache.swift:389)
8  Kingfisher                     0x0000000100dccbcc reabstraction thunk helper from @callee_owned () -> (@unowned ()) to @callee_unowned @convention(block) () -> (@unowned ()) (ImageCache.swift)
9  libdispatch.dylib              0x0000000194649994 _dispatch_call_block_and_release
10 libdispatch.dylib              0x0000000194649954 _dispatch_client_callout
11 libdispatch.dylib              0x00000001946540a4 _dispatch_queue_drain
12 libdispatch.dylib              0x000000019464ca5c _dispatch_queue_invoke
13 libdispatch.dylib              0x0000000194656318 _dispatch_root_queue_drain
14 libdispatch.dylib              0x0000000194657c4c _dispatch_worker_thread3
15 libsystem_pthread.dylib        0x000000019482922c _pthread_wqthread + 816
16 libsystem_pthread.dylib        0x0000000194828ef0 start_wqthread + 4

Thanks for it. I will investigate what I can do with it.

I believe it should be OK now with ver 1.4.4. But we'd better to keep this issue open for a while, to see if there is new cases happen.

Got this bug in v1.4.5, here is the stack trace:
Thread : Crashed: com.onevcat.Kingfisher.ImageCache.ioQueue.default
0  libswiftCore.dylib             0x0000000101bc091c swift_getObjCClassMetadata + 240
1  libswiftCore.dylib             0x0000000101ba70bc findDynamicValueAndType(swift::OpaqueValue*, swift::Metadata const*, swift::OpaqueValue*&, swift::Metadata const*&) + 128
2  libswiftCore.dylib             0x0000000101ba70bc findDynamicValueAndType(swift::OpaqueValue*, swift::Metadata const*, swift::OpaqueValue*&, swift::Metadata const*&) + 128
3  libswiftCore.dylib             0x0000000101ba7e20 _dynamicCastToExistential(swift::OpaqueValue*, swift::OpaqueValue*, swift::Metadata const*, swift::ExistentialTypeMetadata const*, swift::DynamicCastFlags) + 72
4  libswiftCore.dylib             0x0000000101ba7a94 swift_dynamicCast + 612
5  libswiftCore.dylib             0x0000000101ab5238 _TFSs26_forceBridgeFromObjectiveCU__FTPSs9AnyObject_MQ__Q_ + 180
6  libswiftCore.dylib             0x0000000101adfca4 _TFOSs25_VariantDictionaryStorage8maybeGetUSs8Hashable___fGS_Q_Q0__FQ_GSqQ0__ + 244
7  Kingfisher                     0x00000001010a3668 _TFFC10Kingfisher10ImageCache41cleanExpiredDiskCacheWithCompletionHanderFS0_FGSqFT_T__T_U_FT_T_ + 1872
8  Kingfisher                     0x00000001010a07a4 _TTRXFo__dT__XFdCb__dT__ + 44
9  libdispatch.dylib              0x0000000195f81994 _dispatch_call_block_and_release + 24
10 libdispatch.dylib              0x0000000195f81954 _dispatch_client_callout + 16
11 libdispatch.dylib              0x0000000195f8c0a4 _dispatch_queue_drain + 1448
12 libdispatch.dylib              0x0000000195f84a5c _dispatch_queue_invoke + 132
13 libdispatch.dylib              0x0000000195f8e318 _dispatch_root_queue_drain + 720
14 libdispatch.dylib              0x0000000195f8fc4c _dispatch_worker_thread3 + 108
15 libsystem_pthread.dylib        0x000000019616122c _pthread_wqthread + 816
16 libsystem_pthread.dylib        0x0000000196160ef0 start_wqthread + 4

For reference
A similar issue is reported in https://github.com/SwiftyJSON/SwiftyJSON/issues/261
I would just keep trying to dig what happened with subscript + type casting.

It seems that this issue does not appear in current version of Kingfisher (2.0.4) and Swift (2.1). So I am closing it. If there is any further report on it, please leave a comment and I will reopen it.

I'm currently investigating this, but I am seeing this again. Especially when opening and closing my app very fast multiple times. It seems to be related to the backgroundTask running cleanExpiredDiskCacheWithCompletionHander. I'll dive into this right now

Alright, it seems to be in this method:
public static func kf_sharedApplication() -> UIApplication? {
        let selector = NSSelectorFromString("sharedApplication")
        guard respondsToSelector(selector) else { return nil }
        return performSelector(selector).takeRetainedValue() as? UIApplication
    }

If  I'm adding these lines to backgroundCleanExpiredDiskCache:
guard var sharedApplication = UIApplication.kf_sharedApplication() else { return }
        guard var sharedApplication1 = UIApplication.kf_sharedApplication() else { return }
        guard var sharedApplication2 = UIApplication.kf_sharedApplication() else { return }
        guard var sharedApplication3 = UIApplication.kf_sharedApplication() else { return }
        guard var sharedApplication4 = UIApplication.kf_sharedApplication() else { return }
        guard var sharedApplication5 = UIApplication.kf_sharedApplication() else { return }
        guard var sharedApplication6 = UIApplication.kf_sharedApplication() else { return }
        guard var sharedApplication7 = UIApplication.kf_sharedApplication() else { return }
        guard var sharedApplication8 = UIApplication.kf_sharedApplication() else { return }
        guard var sharedApplication9 = UIApplication.kf_sharedApplication() else { return }

The app crashes directly after going on background and back to foreground. Checking out how to fix this now.

@AvdLee Yes, it was an unrelated issue from this one.

I have Kingfisher v5.13.3 and I got this same crash in Firebase Crashlytics.
Here is the log from Crashlytics:
Crashed: com.onevcat.Kingfisher.ImageCache.ioQueue.DE773507-5415-432D-98FE-738E2AA6812F 0  ???                            0x20202018 (Missing) 1  Foundation                     0x1fb2eb954 -[NSConcreteData dealloc] + 72 2  libswiftFoundation.dylib       0x2284a190c specialized __DataStorage.withInteriorPointerReference<A>(_:_:) + 220 3  libswiftFoundation.dylib       0x2284a7b5c specialized Data._Representation.withInteriorPointerReference<A>(_:) + 352 4  libswiftFoundation.dylib       0x2284a99c4 Data.write(to:options:) + 84 5  Kingfisher                     0x101b472b8 $s10Kingfisher11DiskStorageO7BackendC5store5value6forKey10expirationyx_SSAA0C10ExpirationOSgtKF10Foundation4DataV_Tg5Tf4nxnn_n + 1120 6  Kingfisher                     0x101b59200 $s10Kingfisher10ImageCacheC15syncStoreToDisk33_1D90DE22DCEED43EC102CBF15F85A36ELL_6forKey19processorIdentifier13callbackQueue10expiration17completionHandlery10Foundation4DataV_S2SAA08CallbackT0OAA17StorageExpirationOSgyAA0cE6ResultVcSgtFTf4nxxnnnn_n + 448 7  Kingfisher                     0x101b51c04 $s10Kingfisher10ImageCacheC5store_8original6forKey7options6toDisk17completionHandlerySo7UIImageC_10Foundation4DataVSgSSAA0A17ParsedOptionsInfoVSbyAA0C11StoreResultVcSgtFyycfU0_ + 844 8  Kingfisher                     0x101b5efcc $s10Kingfisher10ImageCacheC5store_8original6forKey7options6toDisk17completionHandlerySo7UIImageC_10Foundation4DataVSgSSAA0A17ParsedOptionsInfoVSbyAA0C11StoreResultVcSgtFyycfU0_TA + 48 9  Kingfisher                     0x101b24ca8 $sIeg_IeyB_TR + 28 10 libdispatch.dylib              0x1fa3c8a38 _dispatch_call_block_and_release + 24 11 libdispatch.dylib              0x1fa3c97d4 _dispatch_client_callout + 16 12 libdispatch.dylib              0x1fa372324 _dispatch_lane_serial_drain$VARIANT$mp + 592 13 libdispatch.dylib              0x1fa372e40 _dispatch_lane_invoke$VARIANT$mp + 428 14 libdispatch.dylib              0x1fa37b4ac _dispatch_workloop_worker_thread + 596 15 libsystem_pthread.dylib        0x1fa5aa114 _pthread_wqthread + 304 16 libsystem_pthread.dylib        0x1fa5accd4 start_wqthread + 4


Shard the Appveyor tests.

Change the appveyor configuration to shard the appveyor tests into two jobs.

@goderbauer pointed out that since we're limited to 2 jobs simultaneously, we'll only be able to run one PR at a time instead of two PRs in parallel, so the backlog won't get any better, but at least we should be able to avoid timeouts.


ts.server.ProjectService.closeConfiguredProject returns true on success.

Fixes #17892
The if condition around the return value of that method in closeExternalProject indicates that this was the expected behavior.
I didn't find any tests (I searched for ts.server in path tests/cases). If one is required, where would it go?

@NaridaL,
Thanks for having already signed the Contribution License Agreement. Your agreement was validated by Microsoft. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot


Migrating the existing data from go-ssb

[x] migration mechanism
[x] migration mechanism tests
[x] message migration
[x] message migration tests
[x] test on other people's feeds
[ ] blob migration

We need to be aware that this bug exists and patch it when we migrate feeds: https://github.com/planetary-social/planetary-ios/issues/957

To be replaced by smaller tickets for specific issues.


Incorrect energy fluxes reported over lakes

Similar to issue #419 for albedo, several energy flux terms are reported incorrectly over lakes.  They've been scaled by the wrong area fraction.  The fix here is similarly trivial, and, as for albedo, the fix occurs in lakes.eb.c under vic_run.

This was addressed in PR #425 and can be closed


US193 acceptance tests to check for dynamic population of organisatio…

Two conveyancers with different organisation ids create deeds
Text for effective text element is now dynamic

Looks good, happy to :+1: though as an aside if we end up using both conveyancers in tests a fair bit it would be worth coming back to rewrite these tests to take the conveyancer as a variable in order to reduce the duplication of steps.

LGTM :+1:


A1 benchmark example

This PR adds an A1 example in order to create a benchmark for future improvements on the factor graph.
The example includes a main.cpp which builds the factor graph, optimizes and writes the results to a .csv file.
The example inclues also a python simulation script which takes the values and simulates the robot motion.

https://user-images.githubusercontent.com/67676161/143093504-359ff642-10b0-4ce0-8237-9d73267fd087.mp4


Add export timetable command

Solves #76 and #105

Pull Request Test Coverage Report for Build 264

21 of 53 (39.62%) changed or added relevant lines in 6 files are covered.
2 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-1.0%) to 91.899%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/main/java/seedu/ptman/commons/events/ui/ExportTimetableAsImageAndEmailRequestEvent.java
4
5
80.0%

src/main/java/seedu/ptman/logic/parser/ExportCommandParser.java
0
11
0.0%

src/main/java/seedu/ptman/ui/TimetablePanel.java
0
20
0.0%

Files with Coverage Reduction
New Missed Lines
%

src/main/java/seedu/ptman/logic/parser/PartTimeManagerParser.java
2
81.58%

Totals

Change from base Build 263:
-1.0%

Covered Lines:
2768

Relevant Lines:
3012

💛  - Coveralls

Pull Request Test Coverage Report for Build 265

21 of 53 (39.62%) changed or added relevant lines in 6 files are covered.
2 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-1.0%) to 91.899%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/main/java/seedu/ptman/commons/events/ui/ExportTimetableAsImageAndEmailRequestEvent.java
4
5
80.0%

src/main/java/seedu/ptman/logic/parser/ExportCommandParser.java
0
11
0.0%

src/main/java/seedu/ptman/ui/TimetablePanel.java
0
20
0.0%

Files with Coverage Reduction
New Missed Lines
%

src/main/java/seedu/ptman/logic/parser/PartTimeManagerParser.java
2
81.58%

Totals

Change from base Build 263:
-1.0%

Covered Lines:
2768

Relevant Lines:
3012

💛  - Coveralls

Coverage failed, please don't merge before settling the issue.


Remove dataset while hovered

Fixes #8180
Working example: https://codepen.io/leelenaleee/pen/ExgmXLo

Never wrote/made any regression test but I will look into it as soon as possible


Consolidate together Bevy's TaskPools

Objective
Fixes #1907. Spiritual successor to #4740.
Bevy currently creates a 50%/25%/25% split between the Compute, AsyncCompute, and IO task pools, meaning that any given operation can only be scheduled onto that subset of threads. This is suboptimal in the cases where apps are not using any IO or Async Compute, or vice versa, where available parallelism would be under utilized due to the split not reflecting the actual use case. This PR aims to fix that under utilization.
Solution

Do away with the IO and AsyncCompute task pools and allocate all of the threads to the ComputeTaskPool.
Move all of the non-blocking IO tasks to the Compute task pool.
Add TaskPool::spawn_blocking as an alternative for blocking IO operations and any task that would previously be spawned on the AsyncCompute task pool. This will be backed by blocking's dynamically scaled thread pool, which will spin up and down threads depending on the need.

This allows ECS systems and parallel iterators to be scheduled onto all CPU cores instead of artificially constraining them to half of the logical cores available, as well as for typical async IO tasks to interweave onto any thread.
The use of spawn_blocking to perform CPU-bound operations will have to rely on the OS's preemptive scheduler to properly schedule the threads when the main task pool's threads are sitting idle. This comes with potential context switching costs, but is generally preferable to choking out the entire app due the task not cooperatively yielding available threads or artificially limiting available parallelism.
Note: We're already using blocking through async-fs for loading assets from disk. This shift primarily moves all of the other blocking IO tasks, and the async compute tasks into blocking's thread pool.

Changelog
Added: TaskPool::spawn_blocking
Added: TaskPool::spawn_blocking_async
Removed: IoTaskPool
Removed: AsyncComputeTaskPool
Changed: ComputeTaskPool by default now spawns a thread for every available logical CPU core.
Migration Guide
IoTaskPool and AsyncComputeTaskPool have been removed and merged with ComputeTaskPool. Replace IoTaskPool::get and AsyncComputeTaskPool::get.
If you were spawning futures that are reliant on non-blocking IO (as in the task spends most of it's time yielding via await), just spawn the task onto the ComputeTaskPool:
// in 0.13
IoTaskPool::get().spawn(async move {
     while let Ok(item) = stream.next().await {
         // process the item here
     }
});
// in 0.14
ComputeTaskPool::get().spawn(async move {
     while let Ok(item) = stream.next().await {
         // process the item here
     }
});

If you were spawning futures that are reliant on blocking IO (i.e. std::fs::File::read_to_string), use ComputeTaskPool::spawn_blocking instead. This will spawn and/or reuse one of the dynamically scaled threads explicitly made for blocking operations.
// in 0.13
IoTaskPool::get().spawn(async move {
     let contents = File::open(path).unwrap().read_to_string().unwrap();
     // process the file contents here
});
// in 0.14
ComputeTaskPool::get().spawn_blocking(move || {
     let contents = File::open(path).unwrap().read_to_string().unwrap();
     // process the file contents here
});

If you were spawning futures for async compute, use ComputeTaskPool::spawn_blocking instead. This will spawn and/or reuse one of the dynamically scaled threads explicitly made for blocking operations.
If you were spawning futures that are reliant on blocking IO (i.e. std::fs::File::read_to_string), use ComputeTaskPool::spawn_blocking instead. This will spawn and/or reuse one of the dynamically scaled threads explicitly made for blocking operations.
// in 0.13
AsyncComputeTaskPool::get().spawn(async move {
     solve_traveling_salesman();
});
// in 0.14
ComputeTaskPool::get().spawn_blocking(move || {
     solve_traveling_salesman();
});

If you were spawning futures for long running tasks that used both blocking and non-blocking work, use ComputeTaskPool::spawn_blocking_async instead.
// in 0.13
AsyncComputeTaskPool::get().spawn(async move {
     let contents = async_fs::File::open("assets/traveling_salesman.json")
         .await
         .unwrap()
         .read_to_string()
         .await
         .unwrap();
     solve_traveling_salesman(contents);
});
// in 0.14
ComputeTaskPool::get().spawn_blocking_async(async move {
     let contents = async_fs::File::open("assets/traveling_salesman.json")
         .await
         .unwrap()
         .read_to_string()
         .await
         .unwrap();
     solve_traveling_salesman(contents);
});

There should probably be a spawn_blocking_async method too for convenience.

Is there an impending fix for the wasm build failure?

Is there an impending fix for the wasm build failure?

Fixed it with spawn_blocking_async, which should defer back to normal spawn on wasm targets now.

Would you consider renaming ComputeTaskPool to just TaskPool or ThreadPool or such?

I don't want to push that kind of breakage in this PR. The focus here is to get the functionality in place.

Tried to provide a more comprehensive changelog and migration guide.

Just noting that I have previously argued for starting with the ‘allow use of all hardware threads/cores’ rather than artificially limiting them and leaving lots of performance on the table and deal with contention problems in other ways. So, I support this.

Note that this seems to have a signficant performance regression as is during app startup. It seems that this change blocks rendering until the entire scene is loaded. Discussion: https://discord.com/channels/691052431525675048/749335865876021248/1211935807099895888

I'm on board for this general idea provided we have the numbers to back up the move in the scenarios we care about. I'd like to see comparisons for things like "heavy scene startup", "loading big scene assets while also doing heavy / highly parallel compute tasks in systems", etc.

Posted these traces in discord a few weeks ago, posting them here so they don't get buried.
This was loading a ~1-2GB gltf scene (I don't remember which specific one, it was either bistro with compressed textures or the synty fantasy castle scene, but both traces are for the same scene and iirc bevy main was at the time the same PR that this was branched off of).
With this PR

Bevy main

Had to zip the traces together because github only accepts a few different file types traces.zip

@Elabajaba with #12988 merged, it should now show the spans for IO tasks like loading/preprocessing assets. Could you try collecting another trace? If you don't have time, I'll go ahead and check against the Bistro load that I tried before.

Bistro with compressed textures

trace:
taskpoolconsolidation-IOspans-bistro.zip

The gltf loader is still using a scope to spawn some tasks. This is necessary since it's borrowing data for some of the tasks. We probably need a scope_blocking, that spawns tasks on the blocking threads for this use case. Another possibility is to somehow throttle the amount of tasks the asset loader is allowed to spawn at once.

Some care needs to be taken to ensure that blocking tasks or scopes are not used from the main task pool, or it'll be trivial to block as seen here.

@james7132 I don't think this makes sense for the 0.14 milestone in its current state. Removing, but feel free to argue with me if you disagree :)


💥FIX : Missing mouse animation on Profile page

Title of the Pull Request

[x] Have you renamed the PR Title in a meaningful way?

Related Issue

Closes: #1280
Description
Missing mouse animation added on Profile page.
How Has This Been Tested? ⚙
Go to profile page and see.
Screenshots 📷

Type of change
What sort of changes have you made:

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)

Checklist

[x] My code follows the code style of this project.
[x] I have followed the contribution guidelines
[x] I have performed a self-review of my own code.
[x] I have ensured my changes don't generate any new warnings or errors.
[x] I have updated the documentation (if necessary).
[x] I have resolved all merge conflicts.

@vishanurag Please review and merge the PR. Please add level 2 label .


Support for NPM 7 & 8

GUS: https://gus.lightning.force.com/lightning/_classic/%2Fa07AH000000UT3MYAW
Description
This PR contains changes required for npm 7 support.
Since the only change between npm 7 and npm 8 is the latter dropping support for node 11 and below, this PR should work for npm 8 as well.
Types of Changes

[X] Bug fix (non-breaking change that fixes an issue)
[ ] New feature (non-breaking change that adds functionality)
[ ] Documentation update
[ ] Breaking change (could cause existing functionality to not work as expected)
[ ] Other changes (non-breaking changes that does not fit any of the above)

Breaking changes include:

Removing a public function or component or prop
Adding a required argument to a function
Changing the data type of a function parameter or return value
Adding a new peer dependency to package.json

Changes

From #24, use new env var when bootstrapping lerna as the original env var used to identify the running npm script command was removed in npm v7
When preparing the list of files to include in /dist, use npx npm-packlist instead of npm pack --dry-run --json --ignore-scripts as npm pack --ignore-scripts no longer skips pre and post scripts on npm 7.

How to Test-Drive This PR

Update your npm version. Either run npm install -g npm@7 or npm install -g npm@8
At the root of the monorepo, run npx lerna clean to clear your node_modules
Run npm ci

Checklists

General

[ ] Changes are covered by test cases
[X] CHANGELOG.md updated with a short description of changes (not required for documentation updates)

Accessibility Compliance
You must check off all items in one of the follow two lists:

[X] There are no changes to UI

or...

[ ] Changes were tested with a Screen Reader (iOS VoiceOver or Android Talkback) and had no issues
[ ] Changes comply with WCAG 2.0 guidelines levels A and AA
[ ] Changes to common UI patterns and interactions comply with WAI-ARIA best practices

Localization

[ ] Changes include a UI text update in the Retail React App (which requires translation)

There are some conflicts to be resolved with the work done to support React 17

After synching with @kevinxh, the conflicts have been resolved.


Benchmark: Are the benchmarks done with jvm compilation enabled?

Well the title says it all and I've heard the jvm can inline reflection calls as these are cached.

JMH handles warmup and JIT compilation.


D-Pad Rotation

Video - Screen Rotation: 0, CW 90°, 180°, CCW 90°
Input - D-Pad Rotation: 0, CW 90°, 180°, CCW 90°
Doodle Jump GBA (Game Boy Micro)
Up is Left, Down is Right, Start/Select is Pause

The onscreen controller will work correctly by just rotating the phone (if the phones autorotate is turned off).
The input configuration settings can be used to rotate the dpad input appropriately.


Add renovate

I would suggest to add this default. (you can look at details here: https://github.com/jycouet/jycouet/blob/main/shared-config/renovate.json)
It's

[x] Extending their config:base
[x] Reducing noice (only minor)
[x] add a few groups for svelte

The best would be to:
1/ Merge this FIRST (to pick up directly the good default)
2/ Install https://github.com/apps/renovate for this repo
3/ Enjoy 🎉
What you will get?

An issue that will auto update for you to get an overview of what is going on. (usually I pin it)
Some PRs coming from time to time

What if?

It's too much? to noisy? => We can tweak configs 👍
It's really not for you? => We can remove the file renovate.json, remove the app, and renovate is gone!

I think that it's worth trying ✅

I think this is a great idea!
Let me get #146 closer to release (at least as next) before we enable this, just so I don't lose my focus.  I know I need to bump some deps already (SvelteKit 2, etc), but wanted to get that PR on main before I did so.

I would also like to add the full config in this repo instead of as an extends reference so I can modify it directly :)

I think this is a great idea!
Let me get #146 closer to release (at least as next) before we enable this, just so I don't lose my focus. I know I need to bump some deps already (SvelteKit 2, etc), but wanted to get that PR on main before I did so.

As you want, but you don't need to be up-to-date on everything to start & see. (BTW, if you update main with something else, renovate PRs will update themself 😉). You can also totally ignore PRs or even close them to say to renovate: "please don't update this one", it will appear in a dedicated section in the 📦 Dependency Dashboard.

I would also like to add the full config in this repo instead of as an extends reference so I can modify it directly :)

I totally get it, yes 👍. At the same time, you will not copy locally their "extends": ["config:base"] 😜
The idea was to share common practices and evolve config together on grouping. And locally, you can also add some dedicated things on top.
FYI: On my repos, I would be also hesitant to extend not the base, but someone else!
Let me know your final decision, I will update accordingly, (no issue for both options 🎉👍)

Sounds good.  I do think I'd rather have a local copy of the config, as I might also use it as a basis for my other repos (LayerChart being the most obvious).  While I know I could extend this one that extends yours, I'd like to stay as close to the source as possible.
I looked briefly as renovate and dependabot and they both look similar, but it does appear renovate is a little more flexible. I see dependabot supports grouping as well (but all manual ATM).  Part of me is wanting to use dependabot because there is a much lower change of it disappearing one day, but the extra flexibility in renovate looks like it's worth it.  We can always switch later if needed (just have to figure out how to do the same with the other tool, and likely will miss a feature or way a workflow the tool provides).
With that said, lets use renovate.  If you wouldn't care to change the config to use config:base directly , and feel free to use any of the groupings you have in yours if you want (we won't need things like Svelte UX & LayerChart, Houdini, and Envelop) and change the timezone to EST :), I'll activate it and see how it goes.  Thanks!

Cool feedback, we are not in hurry, I'll do the change following what you said 👍

Thanks for improved all the QOL improvements lately :)

Finally back, here is the update to local things, probably a good base?

Merged and setup.  A lot coming on the next schedule (this evening).

I do know we'll need to hold off on the vitest update (0.34) as I had to roll back a few months ago due to this issue.  It's still open but looks like directly installing @sveltejs/vite-plugin-svelte should fix the issue.

It's ok, not everything will be created, it's just the list 👍
For the one you know like vitest, you can just close the PR and it will show in a different section in the issue.


docs: add types to the relevant classes and methods used for the low-level API and render loop usage

Adding JSDocs for most of the relevant low-level API classes/methods used for integrating Rive. This should help document usage here, as well as for others using the low-level APIs with Typescript projects/VScode.
Need to run thru a linter with the new eslint config in a separate change

LGTM with a few nits
Wow, this really transformed the code into library that feels polished and high quality!
My major concern is line wrapping. Do you think we should manually wrap all the comments at 100 columns?

100-len column change: https://github.com/rive-app/rive-wasm/pull/258/commits/bb8fd735621bdc0a0eeaaa437a110a83dfe8b977
Wording changes: https://github.com/rive-app/rive-wasm/pull/258/commits/79c50f6067bdb119685f454b2fe51b4af9e16a93
WIll need to add ESLint config to enforce the max-len of 100 for a column, but might do it in a separate PR since it will most likely affect the other TS files as well.


fix(android): Use SCHEDULE_EXACT_ALARM instead of USE_EXACT_ALARM

See https://developer.android.com/develop/background-work/services/fg-service-types#system-exempted and https://developer.android.com/develop/background-work/services/alarms/schedule
We have to use SCHEDULE_EXACT_ALARM if we're not an alarm clock or calendar app.

What are we scheduling alarms for?

We're not -- it's just a required permission in order to start a VPN service 🤷🏻♂


Fix demo video in README.md

This seems to fix #1584. (See the rich diff; the video actually shows up and can be played).

Thank you!


Voice channel claim can be claimed by member not in voice

By spamming the reaction button the bot will give the spamming member the channel. We had multiple users spam it and in the end, one user did get it even though he isn't in the voice.
Recorded if you're interested in the video my discord Duck's friend#6969 :)

After investigating more into it, the issue is if a person not in the channel reacts and a member in the voice channel reacts to claiming the bot will take the first member who reacted and set them host

I spent a while looking into it, it seems to already be written in to check that the user has to be in the voice channel on line 498 in VoiceOnDemand.ts
  const filter = (reaction: MessageReaction, user: User) =>
    reaction.emoji.name === claimEmoji && getMemberIds().includes(user.id);

Not too well versed with how discord handles the user id of the person who reacts so I couldn't seem to rectify it other than encountering more bugs while testing 🤔

Lets say User A is in a channel where the host left the channel.
User B is not in said channel.
Yesbot sends the message asking if someone wants to claim, User B thinks he's funny and tries to claim it. Now because of the code travis send, yes the channel isn't claimed by User B
Now User A clicks on the reaction after User B clicked on it. And the channel is given to User B
I suspect this is the cause of the .first on this line
https://github.com/Yes-Theory-Fam/yesbot-ts/blob/9a3a4fbed7836f7c956cb2e3ce1caa5fc9f012c5/src/programs/VoiceOnDemand.ts#L529
The value returned is the User B who claimed it and it bypass the filter.
I think a good fix for this would be using arrays? if the first value isn't a member in the voice channel go to second value?

Yeah, that line is very likely to be the culprit. While the collector itself uses the filter function, claim.users will still contain all users who reacted, regardless of whether they are in the room or not. I guess replacing the filter checking for the bot with .filter((user) => getMemberIds().includes(user.id) should do the trick.

Im on it :)

Fixed with https://github.com/Yes-Theory-Fam/yesbot-ts/commit/4e9ad659de06c72537bbed207d1ddc96126cc60f


Fix #137 Add support to Django MSSQL Database Backend

Fix #137  ( Add support to Django MSSQL Database Backend a minimal wrapper for django-mssql to make it work with python-tds.)

I realized that the package is very old.


number of PS bigger than 4

as for the title,in the code, why the number of PS=[0,0,0,0,0] bigger than 4.Any response will be appreciated.thanks.
best regards.
lianlin

the last one is reserved for user customized if need.


Fixes nodes w/ a slash under a path-prefixed scope.

E.g. localhost:4043/scoped/{state:{label:"/zing"...
Double encode is solution!

https://github.com/visionmedia/page.js/issues/187

Fixes #1335

LGTM


problem in environment configuration

I have encountered many problems with environment configuration. Could you please provide me with your environment configuration？

It seems that you have found this issue https://github.com/tusen-ai/SST/issues/117.