feat: Expose an API for external applications to push statuses

Describe the feature request
A API write option to perform adding (first), modify and delete endpoints from curl or requests library.
Why do you personally want this feature to be implemented?
I'm working to integrate gatus in my already setup integration tool you perform automatic configuration (like DNS or folder setup). It should be nice if we can add a new endpoint through the API to avoid modify manually the configuration file.
How long have you been using this project?
almost 6 months
Additional information
No response

This is a duplicate of #95, but considering this PR uses the new issue template, I'm going to close #95 in favor of this.

It really seems like these two issues are asking for something different. One wants to be able to modify the list of endpoints, one wants to do outbound health checks.

I also need this heartbeat behaviour. Maybe we can orient at the behaviour in uptime kuma?

It would be fantastic to have outbound health check, replacing functionality of nagios or (super-heavy-on-resources-because-of-bad-programis-and-technology-choices) uptime-kuma.

What I'd want to see for this would be:

The ability to configure a token for the admin API:

admin:
  token: "some-token"

An API (e.g. /api/v1/admin/endpoints/statuses) that can be used to create (POST) a new endpoint status using one of the aforementioned token through the Authorization: Bearer <token> header
The ability to mark an endpoint as "self-managed" to prevent the auto-clean system https://github.com/TwiN/gatus/blob/f6a621da285dd43b3207ec21e4101b4b11eff6c5/storage/store/store.go#L39-L42 from wiping endpoint statuses that are directly monitored by Gatus. Something like:

endpoints:
  - name: "example"
    self-managed:
      enabled: true

(we need self-managed to be a struct/object here to future-proof this. I know we could just make it self-managed: true, but in the future, we might want to add certain behaviors unique to self-managed endpoints)
I'm open to other suggestions, but this is how I'd probably go about implementing this at the moment.

Hello Chris, sounds perfect!

Any progress on this? :) I declare testing and documentation write up :)

I'm pretty keen on this one too.  The ability to have a few applications call an uptime-kuma heartbeat check is the only thing stopping me from replacing UK with gatus!


No Module name torch

while trying to run the setup.py, i got an error no module name torch

you need to install pytorch before using this repo.

Hello Benjin,
Thank you for your response. You do not know how glad I am to hear from you.
Can I mail you again for in case I run to another problem on this project
Thanks.
On Fri, Sep 24, 2021, 6:18 AM Benjin Zhu @.***> wrote:

Closed #153 https://github.com/poodarchu/Det3D/issues/153.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/poodarchu/Det3D/issues/153#event-5353831938, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ARIHG5LKRQ2VPXOYZU5OBC3UDQC4DANCNFSM5EOHCENA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.


TestGazeProviderTargetNotNull is failing intermittently

Overview
We aim to fix intermittent failures right away so they do not block people
TestGazeProvierNotNull is failing intermittently, for example see https://dev.azure.com/aipmr/MixedRealityToolkit-Unity-CI/_build/results?buildId=5608&view=ms.vss-test-web.build-test-results-tab

Also I saw ScaleViaHL1Interaction failing


Idea: Better handling of templates in CreateFrame?

I have code like this:
frame = CreateFrame("Frame", nil, UIParent, "BackdropTemplate")
(...)
frame:ApplyBackdrop()
frame:Show()

The definition for CreateFrame makes Frame of type BackdropTemplate|Frame which means it triggers param-type-mismatch on frame:ApplyBackdrop() because BackdropTemplate|Frame != BackdropTemplate. I also can't cast frame to the template type because it doesn't inherit from Frame, so it would then fail on frame:Show() instead.
Suggestion for a fix in two steps:

explicitly define all templates as classes inheriting from Frame. Given that only BackdropTemplate exists this is just:

---@class BackdropTemplate: Frame
Now you can cast frame to BackdropTemplate or add an @type annotation :)

Ideally CreateFrame would already return the correct type, but I don't think "return type is arg4 if it exists, arg1 otherwise" can be fully modeled in the type system.

However, there is a work-around, we can duplicate the definition with different parameter numbers!
---[Documentation](https://warcraft.wiki.gg/wiki/API_CreateFrame)
---@generic T
---@param frameType `T` | FrameType
---@param name? string
---@param parent? any
---@return T frame
function CreateFrame(frameType, name, parent) end

---[Documentation](https://warcraft.wiki.gg/wiki/API_CreateFrame)
---@generic Tp
---@param frameType FrameType | string
---@param name? string
---@param parent? any
---@param template? `Tp` | TemplateType
---@param id? number
---@return Tp frame
function CreateFrame(frameType, name, parent, template, id) end

It's a bit ugly because template isn't the last parameter, but no one uses id anyways I think.
The class definition together with the duplicate CreateFrame make my example work correctly without any annotations :)

Well, I guess the static definition is not enough if a non-base type inherits from a template, so what would really be needed is a dynamic class definition based on the generic parameters :(

I can confirm these steps fix the param-type-mismatch warning but it's indeed a bit ugly. I have to admit I still don't really understand how luals works >.<
Dynamic class definitions would be cool, something like https://github.com/LuaLS/lua-language-server/issues/1861

I think the "proper" solution would be a luals plugin that transforms CreateFrame calls and adds "---@class : frametype, template(s)". Actually shouldn't be too hard. Unfortunately I've now already done that by hand for all of our code :(

proof of concept plugin, works for trivial cases; unfortunately LuaLS only allows for text -> text transformations, having the syntax tree available would be much better. And given how fragile this is I don't think anyone should use it, just playing around with plugins here.
function OnSetText(uri, text)
	local diffs = {}
    for start, var, arg1, arg2, arg3, arg4 in text:gmatch('\n()([^=\n]-)=%s*CreateFrame%(%s*["\']([^"\']-)["\']%s*,([^,)\n]*),([^,)\n]*),%s*["\']([^"\']-)["\']%s*,?%s*[^)]*%)') do
		local ins = ("---@diagnostic disable-next-line:undefined-doc-class\n---@class Frame%s: %s,%s\n"):format(
			uri:gsub("[^%l%u]", "") .. start, arg1, arg4
		)
        diffs[#diffs+1] = {
            start  = start,
            finish = start - 1,
            text   = ins,
        }
    end

    return diffs
end

FWIW LuaLS added AST transformations for plugins recently and I built a plugin for Deadly Boss Mods which has a somewhat similar problem, maybe this can be an inspiration on how to resolve the template problem in a somewhat neat way: FWIW I built a somewhat similar plugin for

Thanks, I will surely look into your luals plugin example. I have no experience with the AST, but it looks interesting.


Change material color of Selected 3d item

Can we change the material color of selected item in realtime? if yes then how?

In model.ts, there is a private property emissiveColor. You can set it as per your preference, to get your prefered colour.


Stub page for hardware

Need a page to satisfy the link from the "Choose your Hardware" dialog. I have a stub page here...suggestions, additional info welcome.
RE: #525

We probably shouldn't be including images of prototypes, with improper branding. Also, there's only one Linux board - the RPi, the rest is Cortex-M4 (much smaller).


doc: add link to pull request tempate in README

Checklist:

[ ] The lines end with a .. This is to conform to awesome-list linting and requirements.
[ ] The title of the pull request is Add/Update/Remove `username/repo`  (notice the backticks around `username/repo`)
[ ] The format of the line is [username/repo](link) - description.
[X] The description doesn't contain emojis.
[X] Acronyms should be fully capitalized.

Sorry for the late reply, thanks for the PR!


Torrent Searcher

Description

[ ] Get the torrent magnet links of the movie.
[ ] Get the movie name as input from the user.
[ ] Copy the link  to the clipboard

Technologies and Languages

Python
javascript
APIs

Any other language and technology is also fine
Aditional Work
Make a GUI for this application

Hey I would like to work on this


[Do not merge!] Line endings and .gitattributes

Fixes #2335

Here is the result after normalizing end of lines by adding a .gitattributes file (see #2335).
This PR is not to be merged, a new clean PR would have to be made, this is just an example.
With this I'll be first in the repo stats in category huge commit and most modified lines! :laughing:

We should set a date for this

Well someone should stop creating so many new PR so that we can freely break everything with line endings ! :stuck_out_tongue_winking_eye:
More seriousely, the PR itself is very easy to recreate. I'll put the steps here for reference (to be done from a clean repo):

Create .gitattributes witht the following content:

# Set the default behavior, in case people don't have core.autocrlf set.
* text=auto

Commit the file
Remove every files from git index: git rm --cached -r .
Restore the repo: git reset --hard
Commit every changed files: git add . && git commit -m "Normalize all the line endings"

(Meh, the list number is restarted after the code block...)
These steps are taken from https://help.github.com/articles/dealing-with-line-endings/#per-repository-settings.

If we set a date, we can stop making PRs :-p.

I would really like this to get in after the new icons since I modify over 60 files. It will be a pain to rebase.

Any tentative roadmap for the icons?

I pushed some changes where icons are called via a simple icon manager. Next commit will be re-enabling the old theme using the same icon names and having an option in the preferences to choose for the theme. Then it should be merge-able.
I would prefer not to get into too much bikeshedding over individual icon design besides the main toolbars and improve the Spyder font incrementally. There are over 160 icon names overall.

Sure, as long as a simple icon manager is in place we can merge and improve from there, otherwise we will never merge or progress

I want to make a non backward compatible change to qtawesome and reflect it in the pr as well (Make the list of icons be pargs rather than an array in case of a stack).

@Nodd, this PR only changes line endings, right? We must not touch blanks at all because that will make things a real nightmare for current contributors.
I read somewhere that there's a simple way to rebase a PR so as to make line endings compatible with gitattributes, but I don't remember which one was :-)

@SylvainCorlay The plugin modifications modifies 40+ files, I fully understand your point!
@ccordoba12 Yes, it only changes line endings.
But in #2335 many of us were in favor of normalizing the repo, including blank space. Why is it more problematic for the blank spaces than the line endings ?

I'm in favor of razed earth on the trailing whitespace.  I've had to undo so many PR changes where my editor trimmed trailing whitespaces.

I'm in favor of razed earth on the trailing whitespace. I've had to undo so many PR changes where my editor trimmed trailing whitespaces.

The proper way is to that option to Spyder, so that it doesn't save modified lines with trailing whitespaces.

@nodd, we should close this, right?
I still think is a good idea, but could we tackle it in small pieces? and then activate the .gitattrributes

@Nodd, what's your final word on this one? Should we close it or not?

I agree with @goanpeca, no one wants a big PR modifying almost every file in the repo for maodifications on whitespace that are not visible anyway. We should first fix the files little by little, then add .gittattributes or travis checks (or both).
Maybe it should be taken into account in the roadmap or something, and guidelines for code style (do we have one?) should state that we'll get there little by little.
In the meantime I'm closing it, it's not mergeable anyway.

Maybe it should be taken into account in the roadmap or something, and guidelines for code style (do we have one?) should state that we'll get there little by little.

+1 for LF milestone and guidelines with Travis style checker for commits with modified lines.

@Nodd yes we do... its called the wiki and you can search for info there :laughing:
Ok... it is not super complete but it is a starting point, what should the guideline say??
https://github.com/spyder-ide/spyder/wiki/Dev%3A-Coding-Style

@spyder-ide/core-developers is there a way to add a check on linefeed and spaces only on added or modified lines in git? like the diff only?

I opened up an issue for the checks.
The wiki states what we want, but doesn't talk about keeping trailing whitespaces to not clutter PRs or things like this, or how we want to migrate towards a clean codebase.

Well the general not so intrusive approach is... make sure the new code does not introduce spaces or problems and adapt the surrounding code up to a defined limit for cleaning. Like this we start to get patches of clean code.
I am more than willing to make single file PRs where we do line and import cleanup.


General RN fixes - chat dumb placeholders - conversation list refactor

While getting conversation list working I had to fixup a bunch of general stuff

[x] Added watchman config (this should enable watchman vs the fallback node watcher)
[x] Don't auto select convos in mobile
[x] Placeholders for dumb chat screen
[x] Text was eating taps so lots of buttons didn't work
[x] Split out shared conversation-list logic up a level

This is split into various commits for easier consumption

The commits 6f75f6550acc...47d6a02b0273 introduce visual changes on linux. :mag_right: 9 changed

Changed: Chat_Conversations_List-You_Rekey_Selected (before) (after)

Changed: Chat_Conversations_List-You_Rekey (before) (after)

Changed: Chat_Conversations_List-Selected_Normal (before) (after)

Changed: Chat_Conversations_List-Selected_Muted (before) (after)

Changed: Chat_Conversations_List-Part_Rekey_Selected (before) (after)

Changed: Chat_Conversations_List-Part_Rekey (before) (after)

Changed: Chat_Conversations_List-Normal (before) (after)

Changed: Chat_Conversations_List-Long_Top (before) (after) (diff)
Changed: Chat_Conversations_List-Long_Bottom (before) (after) (diff)

[ ] fix visdiffs

The commits 466bd68a2c01...dd7cd552cd0c introduce visual changes on linux. :mag_right: 9 changed

Changed: Chat_Conversations_List-You_Rekey_Selected (before) (after)

Changed: Chat_Conversations_List-You_Rekey (before) (after)

Changed: Chat_Conversations_List-Selected_Normal (before) (after)

Changed: Chat_Conversations_List-Selected_Muted (before) (after)

Changed: Chat_Conversations_List-Part_Rekey_Selected (before) (after)

Changed: Chat_Conversations_List-Part_Rekey (before) (after)

Changed: Chat_Conversations_List-Normal (before) (after)

Changed: Chat_Conversations_List-Long_Top (before) (after) (diff)
Changed: Chat_Conversations_List-Long_Bottom (before) (after) (diff)

The commits 466bd68a2c01...33dfdfde4706 introduce visual changes on linux. :mag_right: 10 changed

Changed: Chat_Conversations_List-You_Rekey_Selected (before) (after)

Changed: Chat_Conversations_List-You_Rekey (before) (after)

Changed: Chat_Conversations_List-Selected_Normal (before) (after)

Changed: Chat_Conversations_List-Selected_Muted (before) (after)

Changed: Chat_Conversations_List-Part_Rekey_Selected (before) (after)

Changed: Chat_Conversations_List-Part_Rekey (before) (after)

Changed: Chat_Conversations_List-Normal (before) (after)

Changed: Chat_Conversations_List-Long_Top (before) (after) (diff)
Changed: Chat_Conversations_List-Long_Bottom (before) (after) (diff)
Changed: Chat_Conversations_List-Empty (before) (after) (diff)

The commits 466bd68a2c01...6f7178840b95 introduce visual changes on linux. :mag_right: 10 changed

Changed: Chat_Conversations_List-You_Rekey_Selected (before) (after)

Changed: Chat_Conversations_List-You_Rekey (before) (after)

Changed: Chat_Conversations_List-Selected_Normal (before) (after)

Changed: Chat_Conversations_List-Selected_Muted (before) (after)

Changed: Chat_Conversations_List-Part_Rekey_Selected (before) (after)

Changed: Chat_Conversations_List-Part_Rekey (before) (after)

Changed: Chat_Conversations_List-Normal (before) (after)

Changed: Chat_Conversations_List-Long_Top (before) (after) (diff)
Changed: Chat_Conversations_List-Long_Bottom (before) (after) (diff)
Changed: Chat_Conversations_List-Empty (before) (after) (diff)


Wrong strings being printed in some circumstances in z8 game

baking-with-lizzie.z8
Presumably those are print_obj or print_paddr and I'm misunderstanding something about v8

Seems like other z8 games are doing the same thing, maybe it's outputting table to another stream and then the table back on the primary one. Just guessing, haven't tried debugging.


Next js 15 with dynamicIO: true returned server error

Describe the bug
Running the "React Example: Nextjs App Prefetching"  from the docs with dynamicIO: true setting on next.config.ts return this error shown below. The code is available here.

Your minimal, reproducible example
https://github.com/yudistiraashadi/next15-tanstack-query-canary
Steps to reproduce

Install next.js 15 canary npx create-next-app@canary
Install tanstack query and devtools pnpm add @tanstack/react-query and pnpm add -D @tanstack/react-query-devtools
Copy all the code from the "React Example: Nextjs App Prefetching" here, to replace all the code inside src folders on the nextjs app folder (or /src folder, I'm using src folder btw)
Run dev server pnpm run dev and open localhost:3000

Expected behavior
No error
How often does this bug happen?
Every time
Screenshots or Videos
https://github.com/user-attachments/assets/54bbb464-f4a2-4030-b307-04df16852898
Platform

OS: Ubuntu 22.04
Browser: Chrome
Tanstack Query version: 5.59.20
Next.js 15 canary: 15.0.4-canary.5

Tanstack Query adapter
None
TanStack Query version
5.59.20
TypeScript version
5.6.3
Additional context
No response

Not sure if I discussed this with you, but it came up on Discord as well. The reason is likely that we initiate our mutationIds with Date.now:
https://github.com/TanStack/query/blob/24f1d45cbd3a252e2c8bb3471591502a2418b6ad/packages/query-core/src/mutationCache.ts#L91
It doesn’t have to be Date.now, but it needs to be a unique id that we can increment and that doesn’t overlap with ids when they become restored them from localStorage.
If you have an idea what that could be, please file a PR.

Actually, we only serialize the scope, which defaults to String(mutation.mutationId):
https://github.com/TanStack/query/blob/24f1d45cbd3a252e2c8bb3471591502a2418b6ad/packages/query-core/src/mutationCache.ts#L205-L207
So we can also initialize mutations with 0 (like it was before we had that feature) IF we find a way to generate a unique string as a scope for mutations. We sadly can’t use crypto.randomUUID because it’s not available in all the browsers we support.

Honestly, I can't think of any way to consistently generate unique strings for older browsers. Currently, I tried to use await connection() based on the Next.js docs here. Basically creating 2 getQueryClient(), one for server and one for browser. I'm not sure what the await connection() does or the performance implication of awaiting before new QueryClient(queryClientConfig) but at least it doesn't throw any error now.
import {
  QueryClient,
  defaultShouldDehydrateQuery,
  type QueryClientConfig,
} from "@tanstack/react-query";
import { connection } from "next/server";

const queryClientConfig: QueryClientConfig = {
  defaultOptions: {
    queries: {
      staleTime: 60 * 1000,
    },
    dehydrate: {
      // include pending queries in dehydration
      shouldDehydrateQuery: (query) =>
        defaultShouldDehydrateQuery(query) || query.state.status === "pending",
    },
  },
};

let browserQueryClient: QueryClient | undefined = undefined;

export async function getServerQueryClient() {
  await connection();
  return new QueryClient(queryClientConfig);
}

export function getBrowserQueryClient() {
  // Browser: make a new query client if we don't already have one
  // This is very important, so we don't re-make a new client if React
  // suspends during the initial render. This may not be needed if we
  // have a suspense boundary BELOW the creation of the query client
  if (!browserQueryClient) {
    browserQueryClient = new QueryClient({
      defaultOptions: {
        queries: {
          staleTime: 60 * 1000,
        },
        dehydrate: {
          // include pending queries in dehydration
          shouldDehydrateQuery: (query) =>
            defaultShouldDehydrateQuery(query) ||
            query.state.status === "pending",
        },
      },
    });
  }

  return browserQueryClient;
}

Apologies for commenting on a closed issue, but do we have a final (and official) verdict on what to do to be able to use TanStack Query with Next.js 15 Canary? I understand that it is an experimental build and so the package maintainers should not spend their time and effort to support something that is not finalized and stable, but if there is any way to utilize TanStack Query with the dynamicIO and PPR features and test it to be ready for an upgrade once they land in main, I would love to learn how.

crypto.randomUUID() also throws the same error according to https://nextjs.org/docs/messages/next-prerender-crypto.
Perhaps performance.timeOrigin + performance.now() is a good option, just like the error suggests? It's generally equal to Date.now() and it seems to have pretty good browser support.

Didn’t know about performance.timeOrigin. The suggestion to use performance.timeOrigin + performance.now() seems good 👍 . Would you want to create a PR for this @ali-idrizi ?

Absolutely! I just created the PR that fixes this.

Before the fix is released, adding a Suspense boundary w/ null fallback directly above your Providers works.

I implemented a temporary fix for this issue until ali-idrizi PR is merged using the code below
import { MutationCache } from '@tanstack/react-query';

export class MutationCache_TEMP_FIX extends MutationCache {
  constructor() {
    const old = Date.now;
    Date.now = () => Math.round(performance.timeOrigin + performance.now());
    super();
    Date.now = old;
  }
}

Then, I applied the new implementation as follows:
return new QueryClient({
    mutationCache: new MutationCache_TEMP_FIX(),
    defaultOptions: {
     ...
    },
  });

I know this solution isn't ideal, but it works as a stopgap measure while waiting for the official fix.


Update more devteam tools

This are the now migrated galaxy_sequence_utils tools and an update to picard

@galaxybot deploy this

Thanks @mvdbeek!


Instead of having long list of items in the Data Tables menu, have long page with 2nd level menu

@kepaik suggests that instead of listing a single page for each data table as shown in the image below, we should display the details in a single longer page (with a menu to find items within the page). I agree this would work better, so will update the template.

A 2nd level 'table of contents' menu is now listed on the right hand side of the page for all pages with toc="true" in the header. The style/colouring could be improved, but we can sort that out later.

@kepaik. Your suggestion of combining the shorter pages into a condensed single page was a good idea, I think. I have done this for the table descriptions.


lines: 'auto' for css max-height:val and overflow:hidden elements

Includes basic ability to determine line_height from .el { max-height: val; overflow:hidden }.
If lines is set to 'auto' we use $(element).height() as the line_height and use $(element).prop('scrollHeight') as the content height. Otherwise default (previous) behaviour is used.
Default value of lines is still 1.
Check the demo. This works 'fine for me'. Thanks a lot for this plugin, it's very efficient.
Feedback/improvements welcomed.

Cool feature, thanks for working on it.


[hotfix] error display

Test

confirm error message appears as above

This branch is fixed now, should be ready to merge.

LGTM :+1:


added BogoSort in sorting algorithms and changed mistakes in heap sort

📥 Pull Request
Description
added BogoSort in sorting algorithms,explained bogosort and changed a minor mistake in heapsort

Fixes #167
Type of change

[ ] 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)
[ ] Documentation update

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] Any dependent changes have been merged and published in downstream modules

@mastansayyad please review this PR


Add Lambda Synchronous processor support

Description
Adds AWS lambda as a remote processor for dataprepper.
Further details mentioned in #4699
Issues Resolved
Resolves #4699
Check List

[x] New functionality includes testing.
[ ] New functionality has a documentation issue. Please link to it in this PR.

[ ] New functionality has javadoc added

[x] Commits are signed with a real name per the DCO

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@srikanthjg white source check is failing. I am ready to approve this.

Did you look into moving some of the null check validations from the plugin into Config ? Other than this the changes look good to me


Pug language plugin transparent installation method

Thank you for providing this very nice plugin!
Since version 1.0, in order to use volar with the "pug" language, we have to install the @volar/vue-language-plugin-pug dev dependency and configure TypeScript to use the additional vueCompilerOptions.
This has been done in order to separate the support for a feature that not everybody uses, which is a legitimate concern and works out well when following the upgrade instructions.

I have a minor concern, though, regarding the method of installing the support for pug support/capability, as it requires adding configuration related to the IDE I'm using to the repository, which I would prefer not to do. For example, If I chose to use Sublime Text, Jetbrains products, or VsCode; I would usually not have to commit configuration files for those editors to my repo. That way, people contributing to the repo can choose whatever IDE works best for them as long as they follow the lining/prettier/TS rules. But by adding some configuration explicitly referencing Volar, I would now imply that the expected editor for the repo is VsCode+Volar.
Thus, while I understand this would most likely be seen as a low-priority matter, I would like to ask If there would be an alternative way to use Volar + its pug plugin that would rely for example on installing the plugin globally, or if there are some changes planned in the future that would allow not to change the dependency/TS configuration in order to use it? Or maybe this was already considered and there was no acceptable solution found to do this so far?

Hi @CamilleDrapier, @volar/vue-language-plugin-pug and vueCompilerOptions is not related to IDE, it's about how @volar/vue-language-core resolve SFC file, and it will affect to @volar/vue-language-server, vue-tsc, coc-volar... and all downstream modules. (Just for clearer, if you don't have @volar/vue-language-plugin-pug, vue-tsc can't type check for pug template)
So don't worry you have not pushing VSCode specific stuff to the repo. :) (And I did take this into consideration when designing the architecture.)

I guess you see the problem is @volar/vue-language-plugin-pug current depend with some modules that related to LSP (@volar/pug-language-service...), this a implement problem of @volar/vue-language-plugin-pug, we will abstract pug parsing logic from @volar/pug-language-service to a basic module to avoid this problem.

@johnsoncodehk Thanks for your prompt reply and detailed explanations!
Sorry, I was not using vue-tsc so far, so I incorrectly thought the @volar/vue-language-plugin-pug and vueCompilerOptions was only meant to be used by the volar extension, but indeed after installing vue-tsc I can check the errors in CI and such by running vue-tsc --noEmit. This is incredibly useful as I was looking for a way to better validate templates automatically (having it in the editor is nice, but having it checked by CI is even better!)
As for the second problem you rose, I wasn't really aware of it, but if you want to use this issue to track it, then please do.


[$500] Dev: Web - Console error on login with deep link

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

Version Number: Dev <IP_ADDRESS>
Reproducible in staging?: n
Reproducible in production?: n
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: @gadhiyamanan
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1696674423317959
Action Performed:

Go to any chat
Copy the url
Logout
Paste that url and login

Expected Result:
It should not show console error
Actual Result:
Console error appears (The action 'NAVIGATE' with payload ....)
Workaround:
Unknown
Platforms:

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

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

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

https://github.com/Expensify/App/assets/93399543/e6f6b654-e895-4433-a06c-af2f34d2ee57

MacOS: Desktop

View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01160b225ff407edeb
Upwork Job ID:<PHONE_NUMBER>987979776
Last Price Increase: 2023-10-11

Proposal
Please re-state the problem that we are trying to solve in this issue
Console error appears with The action ‘NAVIGATE’ with payload {name: ‘CentralPaneNavigator, params: {initial: true, screen: Report, params: {reportID: 329846325}, path: ‘r/329846325}} was not handled by any navigator. upon sign-in with deep link redirect to report.
What is the root cause of that problem?
https://github.com/Expensify/App/blob/aff40fe54218d196f620d983cf9acb6d6c73bba8/src/libs/actions/Report.js#L1896-L1905
The issue seems to stem from part of the openReportFromDeepLink function listed above, specifically the async operations that happen during the re-signin flow.
When openReportFromDeepLink is called, it immediately calls openReport for a report ID if one was found in the URL and the user is not authenticated. It then waits for interactions to finish before calling waitForUserSignIn() to hold the process until the user has re-authenticated, after which it attempts navigation.
The problematic scenario might be happening this way:

User copies URL r/:reportID.
User logs out.
User pastes URL. At this point, openReportFromDeepLink is called from the Expensify.js component:

https://github.com/Expensify/App/blob/aff40fe54218d196f620d983cf9acb6d6c73bba8/src/Expensify.js#L168-L171

Because user is not authenticated, openReport is called.
When openReport fails with 404 because user is not authenticated, nothing happens, user remains on sign-in page.
When user authenticates and openReport is called again, when it gets to the waitForUserSignIn() part, the Navigation.navigate(route, CONST.NAVIGATION.TYPE.PUSH) is ran, but there's no valid route to navigate to (or the route from the copied URL is not yet available because openReport hasn't finished or failed), hence the NAVIGATE error.

What changes do you think we should make in order to solve the problem?
Since navigation and opening of the report is already handeled in the Expensify.js component:
https://github.com/Expensify/App/blob/aff40fe54218d196f620d983cf9acb6d6c73bba8/src/Expensify.js#L168-L171
we can add a condition for the Navigation.navigate(route, CONST.NAVIGATION.TYPE.PUSH) that checks if user is already on the r/:reportID route and if so, don't call the navigate which will avoid the caused error:
    // Navigate to the report after sign-in/sign-up.
    InteractionManager.runAfterInteractions(() => {
        Session.waitForUserSignIn().then(() => {
            if (route === ROUTES.CONCIERGE) {
                navigateToConciergeChat();
                return;
            }
-           Navigation.navigate(route, CONST.NAVIGATION.TYPE.PUSH);

+           // Navigate to route only if not already there
+           if (route !== ROUTES.REPORT_WITH_ID.getRoute(reportID)) {
+               Navigation.navigate(route, CONST.NAVIGATION.TYPE.PUSH);
+               return;
+           }
         });
    });

What alternative solutions did you explore? (Optional)
N/A
Videos

MacOS: Chrome / Safari
https://github.com/Expensify/App/assets/56457735/cbad47ff-fbdf-42cb-aaf7-6cd9909d7347


Distance - App crashes when creating distance request quickly after changing date

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

Version Number: v1.4.24-4
Reproducible in staging?: Y
Reproducible in production?: N
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
Action Performed:
Precondition: App location access is enabled

Go to workspace chat > + > Request money
Go to Distance
Enter addresses and proceed to confirmation page
Click Date and change the date
When the map is still rendering from current location tApp does not crash

Expected Result:
App does not crash.
Actual Result:
App crashes
Workaround:
Unknown
Platforms:

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

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

Screenshots/Videos
Add any screenshot/video evidence

logs.txt
https://github.com/Expensify/App/assets/78819774/289125a9-dde8-4b5d-9b1d-8fa0a0a96ca8
View all open jobs on GitHub

Regression from https://github.com/Expensify/App/pull/33529
Being fixed in https://github.com/Expensify/App/pull/34336

merged https://github.com/Expensify/App/pull/34336

Should be fixed!

closing


Error running test.py

I'm getting this:
$ py test.py
Traceback (most recent call last):
  File "test.py", line 11, in <module>
    index.insert(v)
TypeError: insert(): incompatible function arguments. The following argument types are supported:
    1. (self: puffinn.Index, arg0: list) -> None

Invoked with: <puffinn.Index object at 0x103f544f0>, array([-0.78503973, -0.33426136, -1.10496011,  0.36873416, -0.42192833,

Changing index.insert(v) to index.insert(v.tolist()) and index.search(query, 10, 0.8) to index.search(query.tolist(), 10, 0.8) fixes the problem.

Thanks @thomasahle.
I couldn't find test.py in the repo, is this a file that you created? And yes, it doesn't accept a numpy array at the moment as an argument. Was there any particular reason for this, @mvesterli ? (It's the same in ann-benchmarks at https://github.com/erikbern/ann-benchmarks/blob/master/ann_benchmarks/algorithms/puffinn.py which looks a bit inefficient.)

Sorry, my bad. I think it's based on the example on the github page, but that doesn't use numpy arrays either, so I've just confused myself.


Add Disconnect() method to client connections

Resolves #91
This enables OpAMP to close the network connection to an agent from the server side

I think Disconnect() is a better name and it is fine to make it an error to call Disconnect() for plain http connections.

I think Disconnect() is a better name and it is fine to make it an error to call Disconnect() for plain http connections.

I was going to suggest that it be a no-op, but an error sound good. I would suggest creating an error like ErrDisconnectHttpConnection or something similar that can be easily checked and ignored by the caller in the event that the calling code is unaware of the type of connection be used.

I think Disconnect() is a better name and it is fine to make it an error to call Disconnect() for plain http connections.

I was going to suggest that it be a no-op, but an error sound good. I would suggest creating an error like ErrDisconnectHttpConnection or something similar that can be easily checked and ignored by the caller in the event that the calling code is unaware of the type of connection be used.

Yes, sorry, I want's clear. I meant it is good to return an error from Disconnect(), wasn't suggesting that it panics or anything.

@andykellr please take another look and if it looks good please merge.

Merged. Thanks @nemoshlag!


Installing the latest version of hygen (5.0.3) leads to yarn audit vulnerabilities (yargs-parser)

yarn audit

I've just updated all deps resulting in perf boost and security patches.
Will release v6.x later on, thanks!


style passed in during bind

Amazing library.  Silly question, can style be defined during bind?  I have a ton of buttons and I want them all styled the same way.  So I am trying to define style during bind and it doesn't seem to work, it seems to default still to expand-right.
Ladda.bind('button.ladda-button', {timeout: 2000, style: "zoom-in"});
If style during bind doesn't work, then this is an enhancement request.
Thanks!

Have you considered creating your own function which adds a data-style attribute to the buttons and then calls Ladda.bind? I'd like to avoid having multiple APIs for doing the same thing.

No, but that seems like a very sensible workaround.   Since bind takes timeout, I figured it might be easy to let it take in more options but if there is a reason that passing in style as a default parameter to bind isn't a no brainer we can totally close this issue.

Dang was hoping the options param in the Ladda.bind() method would accept a default style parameter.


Feature/enabling p2 repository build

New P2 Repository for build.
Sorry for this /.settings files they should maybe come to .gitignore?
The following files are important:

extlib/lwp/pom.xml
extlib/lwp/product/runtime/updatesite/org.openntf.extlib.p2/pom.xml
extlib/lwp/product/runtime/updatesite/org.openntf.extlib.p2/category.xml
-------------> This file prevents commiting files under /target
extlib/lwp/product/runtime/eclipse/features/org.openntf.extlib.feature/.gitignore

We have included p2 repository build artifacts as part of v17 Extlib release


Ignorerepo not working

pacaur --ignorerepo=repo-ck -d linux-ck
:: linux-ck is available in repo-ck (ignore this with --ignorerepo=repo-ck)
Tried arranging parameter, but it doesn't work.
Searched code but nothing matches ignorerepo.
Is it stub?

Thanks, the ignorerepo flat Isn't supported by pacaur. You might want to
use cower directly here .
Le jeudi 14 mai 2015, ishitatsuyuki<EMAIL_ADDRESS>a écrit :

pacaur --ignorerepo=repo-ck -d linux-ck
:: linux-ck is available in repo-ck (ignore this with --ignorerepo=repo-ck)
Tried arranging parameter, but it doesn't work.
Searched code but nothing matches ignorerepo.
Is it stub?
—
Reply to this email directly or view it on GitHub
https://github.com/rmarquis/pacaur/issues/334.

Implemented in eb104995dd4118f4270d5b8a7b33e96ccc85cb87.


use new SDK tagging scheme

Update the SDK tag Android build action to catch vulkan-sdk-*

CI gfxreconstruct build queued with queue ID 52519.

CI gfxreconstruct build # 3302 running.

You are going to need to update your CMake code as well:

Excellent catch.  Thanks!  We probably don't need to detect "^sdk" and "^vulkan-sdk" but it may be helpful for someone - getting the right regex incantation to catch both may not be that hard but testing it will be annoying.  For now I may just update to "vulkan-sdk" and then after a "vulkan-sdk" tag exists  and I can test it I'll go back and figure out detecting both forms.

CI gfxreconstruct build queued with queue ID 52535.

CI gfxreconstruct build # 52535 cancelled.

CI gfxreconstruct build queued with queue ID 52548.


Import OIIO in Nuke with OCIO support - error: undefined symbol: _ZTIN11OpenColorIO2v19ExceptionE

We compiled OIIO with OCIO support and try to import it in Nuke. We get the following error:
ImportError: .../openimageIO/1.6.18/centos-6_x86-64/lib/libOpenImageIO.so.1.6: undefined symbol: _ZTIN11OpenColorIO2v19ExceptionE
I suppose the error raise because Nuke has it's own OCIO build.
Is there a way to compile OIIO with OCIO support and import it in Nuke?
Versions

OIIO branch/version: 1.6.18
OS: centOS 6
C++ compiler: 4.4.7
OCIO version: 1.0.9
Nuke version: 10.0v3

Is it possible that the OCIO build that is compiled into Nuke itself is a different version than the 1.0.9 that you used when you built OIIO?

I checked the version of the OCIO build into Nuke itself and is the same version, version 1.0.9.

I also asked on Nuke Forum, but unfortunately the Forum is quite dead...
http://community.thefoundry.co.uk/discussion/topic.aspx?f=191&t=128290

The OCIO library distributed with Nuke uses a custom build namespace of FnOpenColorIO, so you either need to roll a separate OIIO build that accounts for that, or provide your own OCIO libraries at runtime.

The conversation seems to have died on this one, and in any case it references outdated versions of OIIO, OCIO, and Nuke. Presuming that it's not an ongoing issue. Closing. Please re-open or re-file if it's a continued problem for anybody with modern versions of those packages.


Broken link to CASIA-WebFace model

Link to CASIA-WebFace model (https://github.com/davidsandberg/facenet/blob/master) on the main page is broken.

This should have been fixed now. Closing...


make it using Persian numbers for Jalalian system

it causes changing date in text can't performs well.


New Crowdin updates

@Clstroud , @SashankPatel
I don't know what to test in this PR. It looks like the English note in each localization was changed but it doesn't appear the corresponding translation changed.
Is there a 1-to-1 correlation?
Does someone else take on the task of translating each language?
Is this just a backend change?

@rowildcard: These PRs are auto generated based on our updates in develop.  Theres really no testing required, its just crowdin syncing up the language updates.  Yes someone else and or auto translation service takes care of translating the strings.  i.e. if we remove/update strings, crowdin will update the language files and accordingly to remove the translation.

@rowildcard : Yup, with these PRs its typically an approve and merge - The PR title and Branch name will always be the same so we know that its a Crowdin auto generated PR.  Chris and I have been trying to figure out the CI failure and experimenting solutions.

Closing this and will delete the branch so a new one can be created.


[Automation] Generate Fluent Lite from mysql#package-flexibleserver-2021-12-01-preview

[Automation] Generate Fluent Lite from mysql#package-flexibleserver-2021-12-01-preview

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-resourcemanager-mysqlflexibleserver


fix only report load stream profile in the end

Proposed changes
Only report LoadStream profile in the last CLOSE_LOAD response.
Also fix error in RuntimeProfile::to_thrift because it's not thread-safe.
Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


fixed import issue with streaming

Fixes #25

I don't think the pull request is necessary, see the comment to issue #25 .


It does not work with nativescript 5.0 on the android platform.

It does not work with nativescript 5.0 on the android platform. Nothing happens! Also, nothing appears on the console. On Nativescript 5.0, does work only on IOS platform.
Here the Url repo. You just need generate a android build and install it on your device or simulator, after load the app, in home screen, push the button: "Call Feedback". Note that nothing will happen, even on console, nothing appear.
https://github.com/marcelbonfim182/sidedrawertest
Thanks for support!

Thanks for sharing that repo, very helpful!
Looks like the convenience methods (success, warning, etc) are broken on Android. This works though:
  feedback2.show({
    title: "Awesome",
    message: "That was great!",
    duration: 2000
  });
``

I'll investigate this further today.

Aha, it has to do with the icons not being found when a type is set (which is implicit for the sucess (etc) functions. And that's because the resource folder may be in a different location than what the plugin expects it to be.

Please update to 1.3.3 and remove the platforms folder, then run tns run android and it should work again.


fix picker when close to bottom

It now automatically adds bottom padding on pageContent when the picker
is close to the bottom.
Will eventually make a picker keyboard. Maybe.

Merged, but also did some modifications as it didn't work always correctly

I noticed... I also saw you added it to calendar... i was about to do that.


Seems like I might increase YouTube Center's file size by 26 MB

I just found out by a friend of mine that some guys have converted ffmpeg into JavaScript using Emscripten (Mozilla you're awesome) and the file size of that said file is at about 26 MB.
ffmpeg is a commandline tool used to convert media files into other media files. You could merge two files into one where one of the files contains a video source and the other file an audio source. This I will use to make it possible to download 4k videos (or lower) again by downloading both the video source and the audio source and merging them together into a single file that will be playable in your media player.
I will soon release a developer version with a beta version of this where I plan to make it possible to select the quality of the video, the quality of the audio and the output file's format (mp4, webm, avi, mkv, mp3, m4a and etc).
Link to ffmpeg: https://www.ffmpeg.org/.
Link to the JavaScript version of ffmpeg: https://github.com/bgrins/videoconverter.js/.

Hi YePpHa, any news about this feature or you dropped it already ?
To be honest it is really interesting, just make a sister version with @resource and everything will be okay :)


Offline installation and some issues...

CodeCombat seems really interesting.. :) , so I went ahead and tried to install into windows... When I failed, I tried to install it inside Ubuntu Studio...
Heres what I did and what happened on windows...

I followed all instructions and it couldn't download some files from npm registry despite of using both http and https connection...

Heres what happened on Linux...

I installed all dependencies and it stuck on node-gyp rebiuld...
In linux, there was no such error downloading from npm registry...

So basically, the problem lied on NodeJS... Its not CodeCombats fault.
Now what I wanted to say,
People are trying and succeeding but I'm not, So, I guess I'm at fault and its only me. Someday I'll succeed running CodeCombat from localhost...Maybe soon, maybe in distant future...
When I use Atom, Brackets, Netbeans, Aptana, Ruby/Mean/Lamp stacks, or thousand other automatic/portable solutions, they are painless to install, fast to run... but this is the first game in my life, Which downloaded some files over and over for whole night and still ran through errors...
I mean, there is no simple way,
say, I want to learn Python by playing CodeCombat, I had to do a lot of other things "just to learn python basics"? Then it becomes just another irritating pain...
I am submitting this as an issue with the following problems on my hand,

It downloads and rebuilds node (and some other packages), over and over again (on Linux).
It stuck on http/https problem when downloading files from npm registry (on Windows).

Suggestions:

Create a virtualbox with everything set up inside. Maybe add some update script too to update the database dump. Maybe use port-forwarding and minimize the vbox size too. (ref: Bitnami Ruby Stack Virtual Machines...), or try vagrant/docker too??
Create All-in-one setup file or Archive file with everything in it...So user can excute a single start script and navigate in the browser/use chrome-shell...
Remove unnecessary file download codes, ask to install everything globally to remove basic problems.
Maybe take advantage of Chocolatey...?

Why not I fork and do everything myself?

Yeah, thats a clever idea, maybe I'll try it someday, and if I succeed, I'll not allow others to see it. I think some other person already has it installed in their virtualbox, they just don't feel to share it. You are super genius, ask them to help through your website... ;) ...

Sorry for my poor english, I guess you would understand what I'm saying if you are a genius.

Hello!
But there is all-in-one installers already for win and linux. do you try them?
there may be some problems for win like installing sass or not working SCOCODE.bat. but there are workarounds also.

See, I tried every possible way, ended up same and listed my problems exactly how it occurred.
All in one installer means not a single script file, I meant a big archive with everything inside it...
I suggested some other things that would make it super easy as a noob could do.
Maybe you could do it and release a VBox tomorrow, it really could be done that fast.

but you need some configuration to pulling new code from gh, to make commits.
you could easily do a snapshot of working dev-enviroment. but if you want to contribute you must do some config-things.
but i agreed with you that ready-to-go snapshot with single config is better then setup script.

There are people who want to test things and not contribute first-hand, if they want to contribute, they would have to do something that an archmage does. You wouldn't make a nice game only for those who want to contribute...now, would you?
Note: Still unsolved. There's no way I would give it another try after trying for a whole day... Maybe I will try the online version and just wonder why it didn't work here...
Anyway, Maybe you can close the issue if you feel like it.

What about #2106?

Might it be easier just to fix the node-gyp problems and http problems you are facing?  Even a person with no computer skills is able to copy and paste six commands from the wiki into their command line (if it works).  Also, it's better to have one solution for everyone, so that we don't have to consistently update numerous auxiliary builds.  For example, the windows build isn't working for anyone, which will mean that it has to be updated, which takes time away from working on the core aspects of the website.

The most problems with installations were related to nodeJS mostly, like 'bower install' and stuff.
So no matter what strategy you try, if a small dependency didn't install, you get a lot of bug while running your CodeCombat.
Thats why I asked for if someone has any compiled/portable file/ISO/Virtualbox disks file. Because someone could have bad internet connection to wait for the installation to finish. I know its hard, but,
its like, building Ubuntu from Source vs Downloading ISO or Virtualbox disks, and using it right away and I could always update whatever I need and revert back if there is any problem.
This issue was dragged for a long time and it still remains open.
I wish CodeCombat releases some better solution so that we can recommend it better. ^_^

Sorry for the lack of updates, I haven't been available due to personal reasons.  There is a virtual box currently being made, soon to be released.  I haven't had any updates, but we've already got it to have CoCo installed by default and are looking into networking, so that it can be accessed outside the box.
You can see the current version in this repo.

I think this issue will never be solved if no one builds a box and makes that public. Node repo can have problems all the time, but a box/iso file wouldn't hurt anyone. Linux distros does this all the time, they makes things easier, they don't tell people to build a distro from scratch.
Vagrant is useful but sometimes, building from base has huge downside. Running a vagrant is pretty much same as building codecombat from scratch. It takes hours and hours compared to just downloading and distributing the packed file among several person.
Sadly, I couldn't recommend codecombat to any of my friends who wanted to play it offline. They couldn't just get it right. If they have to be a master of programming and bug testing even before starting the game, then there are no point of them playing the game to learn programming.

:( No one shared a box/image even after all these months.
I'm very disappointed.

Up, Sorry for the up, but I search for a virtualbox image of a CodeComat working server... do yu know one image somewhere ?


Preview should handle updates itself

We can remove the necessity for the consumer to call render() after updating public props. This way the lib can decide what type of update is needed.
Outline
Whenever a prop is changed, we queue the change.
Every tick, the queue is read and processed and emptied.
Update types

scene changes can be done immediately w/o requiring the model to be rerendered. Examples:

build volume changes
clipping planes
? toggling groups on and off ?

incremental parsing

a new chunk of gcode is parsed and translated into a geometry
only the new chunk is added to the scene

full render of the model

the model is removed from the scene
the parsed gcode is rendered anew and added to the scene
example: extrusion width was changed

I agree so much with this!

Some thoughts:
Should we go as far as making the whole render() method private? I don't think so but let's get into that thought experiment.
Not having to call .render() at all is a huge improvement. What would happen if we don't make it private and it's called all over the place? Would we lose some optimization opportunities?
If we're forced to break something or have a subpar experience, maybe we should consider having this as part of the v2->v3 transition. Or plan for v4.
If you ask me, this should be included in the initial v3 release. v3-alpha3 or v3.0. But I'm open to leave that for later.

We can make it private now and evaluate before we publish. I want to at least update the examples before we publish so that should be a good test.

Btw where I said 'publish' I meant the final v3.

Threejs has the option to toggle the update behavior from automatic to explicit. We could adopt the same strategy but I'd prefer to just choose approach that always works. Our lib isn't that generic hopefully.

I'd prefer to just choose a single approach that always works

Me too! There's incredible benefits both for us and for the lib client dev.
There are options that requires a re-render, and some other that don't. The application integrating the lib does not have to know that. The lib knows everything about it's internals and can make that call. I don't see why there would need to be a .render() call externally, even if we have an "explicit" mode. I don't see a use case for an explicit mode, do you?


Explicitly document ability to implement multiple of the same hook

As above, added notes to documentation and docstrings to highlight ability to specify multiple hooks of the same spec in the same file. I didn't add a heap of detail, happy to expand more if it's deemed necessary.

Ok great, thanks for those changes @DragaDoncila I will merge this now!!


Save inference images

If i want to save the inference images to the folder given,waht should i do?

 Otherwise, if you just want to do inference with a pretrained model you can just load the model and do test(), see PyTorchLightning docs

OK,i get it,thank you!


Cross namespace resource references

Currently ACK controllers only allow within-same-namespace resource references . It would be nice to extend this feature to allow cross-namespace references and have a similar experience to resources secret fields. This is technically not very complicated to implement.
Runtime changes:

https://github.com/aws-controllers-k8s/runtime/blob/main/apis/core/v1alpha1/identifiers.go#L72-L76

Code generator changes:

After https://github.com/aws-controllers-k8s/code-generator/pull/435 merge - we need to stop passing the parent resource namespace and use the one mentioned in the ref field.

If anyone wanna give this a stab feel free to drop questions in this thread
/good-first-issue
/help-wanted

Hi!
I'll take a stab at this!
/assign @the-cybersapien


[Feature] Support read postion delete file for iceberg v2

What type of PR is this：

[ ] BugFix
[x] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

implementation for iceberg v2 table reading of parquet-format
related with: [https://github.com/StarRocks/starrocks/issues/3452]
Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[ ] I have checked the version labels which the pr will be auto backported to target branch

[ ] 2.5
[ ] 2.4
[ ] 2.3
[ ] 2.2

run starrocks_admit_test

Please add some test cases.

run BE UT


Add never-stale label

Why:
Stalebot is ignoring issues with the never-stale label.

What's being changed:
This updates the workflow to respect that label so that issues don't get automatically closed by stalebot.

Check off the following:

[ ] I have reviewed my changes in staging (look for "Automatically generated comment" and click Modified to view your latest changes).
[ ] For content changes, I have completed the self-review checklist.

Writer impact (This section is for GitHub staff members only):

[ ] This pull request impacts the contribution experience

[ ] I have added the 'writer impact' label
[ ] I have added a description and/or a video demo of the changes below (e.g. a "before and after video")

I'm going to close this out in favor of a PR made to our internal docs.


Add support for GET.WATCH in HTTP/Websocket server

I was going through the codebase for this. I can take this up

Hey @lucifercr07 Can I work on this?

Started work on this.

Hello @lucifercr07,
There has been no activity on this issue for the past 5 days.
It would be awesome if you keep posting updates to this issue so that we know you are actively working on it.
We are really eager to close this issue at the earliest, hence if we continue to see the inactivity, we will have to reassign the issue to someone else. We are doing this to ensure that the project maintains its momentum and others are not blocked on this work.
Just drop a comment with the current status of the work or share any issues you are facing. We can always chip in to help you out.
Thanks again.


Use thunar as default file manager (with respect to archinstall)

Problem
I find the file-manager dolphin which is set on the keybindings section in the config (default) to be bloated.
If someone is installing hyprland on minimal arch, it's installation can be decided to the user's preference.
But if someone like me installing/setuping arch using archinstall with hyprland profile, it automatically installs dolphin which depends on too many kde dependencies...
It's a pain to remove dolphin and finding and removing it's dependencies, removing dolphin's deps using pacman leads to the warning of the dep is a dep of another packages and goes on...
Dependencies I need to find when removing dolphin:-

Dependencies of dolphin when installing it:-

Fix/Improvement
We could request there (archinstall  repo) to change dolphin -> other, But I think it would be inconsistent...
So I planned first requesting here to use thunar as default on hyprland, then opening a PR on archinstall repo
Dependencies of thunar is minimum & can be uninstalled easily by removing orphaned packages:-

First of all, I find that you will only install arch once anyways and this is kinda the struggle of arch...
Second of all, if we decide on an alternative file manager why not choose Nemo?
It's the most minimal GTK you can possibly get, while also being native to Wayland!
I've tried literally every graphical file manager and found Nemo to be the least bloated while staying the most functional!

First of all, I find that you will only install arch once anyways and this is kinda the struggle of arch...
Meaning I am kind of against this...
Second of all, if we decide on an alternative file manager why not choose Nemo?
It's the most minimal GTK you can possibly get, while also being native to Wayland!
I've tried literally every graphical file manager and found Nemo to be the least bloated while staying the most functional!

Having experimented with Nemo, I find it minimal and fast and am now convinced. If the reviewer/maintainer consider it superior to Thunar, let's make the switch to Nemo.
PS: I haven't had much experience with PRs in the past, so I would welcome assistance or mentorship from others to successfully complete this one.

if archinstall perfers a different file manager they can edit their profile.
You don't need to install a file manager at all for hyprland to run.
Dolphin is there because I use it and guarantee it to work.

TL;DR: No.


minor bug with generic daw gui when Consolidated plugin gui is turned off

If Consolidated gui is turned off, generic daw gui of Consolidated plugin works wrong:
if daw is playing at the time when I am tweaking a parameter, the 3rd digit after the point switches to an adjacent value when I release my mouse button. If I am increasing the value, it jumps to an adjacent higher number. If I am decreasing – it jumps to an adjacent lower number. If daw is not playing, there is no such problem.
This problem is specific to VST3 format, in CLAP there is no such problem. I am using Reaper 7 on Windows 10 x64.
I discovered one more little problem with generic daw gui. This one is specific for CLAP. VST3 doesn’t have this problem:
If at the time when I launch my daw, my audio interface hardware device is unplugged from my computer, then daw generic gui of Consolidated doesn’t work: sliders moving doesn’t affect the values of parameters.
In order to make it work again, I have to connect my audio interface hardware device to computer and start playback of my daw for at least one second.

This functionality already exists. I discovered it too late, my bad.

Thanks
mind sharing your os?
This won’t make a “this week” cut to fix but I’ll poke at it soon indeed

Oh you said windows sorry!

I discovered one more little problem with generic daw gui. This one is specific for CLAP. I edited my first comment to describe it there.

thank you
there have been a lot of fixes this week to deal with running without audio threads and different problems (this is tricky for a technical reason involving the way vst2 vs 3/clap/au render strings). I'll definitely look at this in my next sweep of the plugin but if you could share the version or build date you are running that would be great, and if it is older than yesterday, perhaps give another try with the latest?
Appreciate the help. The community bug hunting this week has been outstanding!

I updated to the newest version:
AirwindowsConsolidated-2024-05-09-872b7c8-Windows-64bit-setup
bugs I am describing are still present in it.
I am glad my feedback helps. I was afraid I am being annoying.

Well I can at least confirm that I see the VST3 bug in reaper. Wonder what it is!!

Ahh I found it. Ha. What an excellent bug report.

Alright I am quite sure these are the same thing but I couldn't replicate the CLAP one just the VST3
It takes about 30 minutes to make a build; If you can pull the build when it updates and test again I would appreciate it. If you still see the problem please reopen this issue.
Best

I tested the new updated version. Both bugs that I have described are fixed now.

Wonderful! Thank you for the super detailed report. It helped me catch a more fundamental bug.
Enjoy the plugin!


benchmarks fail to build with ghc-9.10.1

For stackage nightly ghc-9.10.1:
       Building benchmark 'bench-comparison' for bencoding-<IP_ADDRESS>...
       [1 of 1] Compiling Main
       /home/curators/work/unpack-dir/unpacked/bencoding-<IP_ADDRESS>-0abaab18199db37819d55369538778fe7e99c5c1c78c0f4a658a71d0b565b9bb/be
nch/Main.hs:58:23: error: [GHC-87543]
           Ambiguous occurrence ‘List’.
           It could refer to
              either ‘L.List’,
                     imported from ‘Data.List’ at bench/Main.hs:22:1-21
                     (and originally defined in ‘GHC.Types’),
                  or ‘Main.List’, defined at bench/Main.hs:58:1.
          |
       58 | data List a = Cons a (List a) | Nil
          |                       ^^^^

       /home/curators/work/unpack-dir/unpacked/bencoding-<IP_ADDRESS>-0abaab18199db37819d55369538778fe7e99c5c1c78c0f4a658a71d0b565b9bb/be
nch/Main.hs:61:36: error: [GHC-87543]
           Ambiguous occurrence ‘List’.
           It could refer to
              either ‘L.List’,
                     imported from ‘Data.List’ at bench/Main.hs:22:1-21
                     (and originally defined in ‘GHC.Types’),
                  or ‘Main.List’, defined at bench/Main.hs:58:1.
          |
       61 | instance C.BEncode a => C.BEncode (List a)
          |                                    ^^^^

       /home/curators/work/unpack-dir/unpacked/bencoding-<IP_ADDRESS>-0abaab18199db37819d55369538778fe7e99c5c1c78c0f4a658a71d0b565b9bb/be
nch/Main.hs:63:30: error: [GHC-87543]
           Ambiguous occurrence ‘List’.
           It could refer to
              either ‘L.List’,
                     imported from ‘Data.List’ at bench/Main.hs:22:1-21
                     (and originally defined in ‘GHC.Types’),
                  or ‘Main.List’, defined at bench/Main.hs:58:1.
          |
       63 | instance NFData a => NFData (List a) where
          |                              ^^^^

       /home/curators/work/unpack-dir/unpacked/bencoding-<IP_ADDRESS>-0abaab18199db37819d55369538778fe7e99c5c1c78c0f4a658a71d0b565b9bb/be
nch/Main.hs:67:27: error: [GHC-87543]
           Ambiguous occurrence ‘List’.
:
:

Thanks for the report, fixed in <IP_ADDRESS>.


New release?

Describe what you want to achieve.

Stay more current with the developments in this library.

Describe what you tried.

Depending on the git repo instead of the released include.zip. This repo is pretty large so I'd rather depend on the released version.

Describe which system (OS, compiler) you are using.

Debian GNU/Linux. Clang.

Describe which version of the library you are using (release version, develop branch).

Release 3.7.3.

Version 3.8.0 is planned, but I cannot say when it will be released. I'm afraid "when it's done" is as accurate as it can get...

That's when you mark it "alpha", because then people have the expectation that it'll break at any moment. The alpha release doesn't need to go away, but people can choose to either stick with the stable API or move along with the API changes. This doesn't need to hinder your development, but it allows people to follow along and be ready for the release when it comes.

I will do this before breaking changes, i.e. major releases. But the next release will just add some features.

@iphydf Version 3.8.0 has been released today: https://github.com/nlohmann/json/releases/tag/v3.8.0


isFeatureEnabled is failing some times

Our app checks if a feature is enabled at the Splash Screen. If it's the first time it's running, the method isFeatureEnabled might return a different value than it was supposed to return.
Could it be a synchronization issue?
Optimizely version: 3.10.1
Android Versions: 12+
Vendors: Xiaomi, POCOPHONE

Do you initialize the SDK synchronously (with a local datafile) or asynchronously?  If you use async-init, make sure that you call isFeatureEnabled after init completed.


[SP-4947] - Fixed missing error message in Abort step

@pentaho-lmartins please review

Build Completed
:x: This pull request has errors. They will need to be addressed before it can be accepted. See below for more details. Some links are also available below for further assistance in addressing those issues.
Build Commands
ant -Dtestreports.dir=bin/reports/unit-test -f core/build.xml clean-all resolve jacoco && ant -f core/build.xml checkstyle publish-local

Cleanup Commands
rm -r ~/.ivy2/local || echo no publish local to remove

Changed files
  core/src/org/pentaho/di/core/row/RowMeta.java

Unit Test Coverage
These statistics help you identify how your changes have affected the coverage of the following files. If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation.

:warning: Coverage Changes (click to expand)
org.pentaho.di.core.row.RowMeta

Branch Change: -0.5% :small_red_triangle_down:
Complexity Change: -0.2% :small_red_triangle_down:
Instruction Change: -0.2% :small_red_triangle_down:

Checkstyle violations
The code submitted is not complying with one or more of our guidelines. To perform these checks locally, please use this tool.
/home/buildguy/project/core/src/org/pentaho/di/core/row/RowMeta.java

:heavy_exclamation_mark: '(' is not followed by whitespace. at Line: 862 Column: 39

:heavy_exclamation_mark: ')' is not preceded with whitespace. at Line: 862 Column: 41

Build Completed
:fire: This pull request has some issues. It would be preferable to fix them in order for it to be just perfect. See below for more details. Some links are also available below for further assistance in addressing those issues.
Build Commands
ant -Dtestreports.dir=bin/reports/unit-test -f core/build.xml clean-all resolve jacoco && ant -f core/build.xml checkstyle publish-local

Cleanup Commands
rm -r ~/.ivy2/local || echo no publish local to remove

Changed files
  core/src/org/pentaho/di/core/row/RowMeta.java

Unit Test Coverage
These statistics help you identify how your changes have affected the coverage of the following files. If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation.

:warning: Coverage Changes (click to expand)
org.pentaho.di.core.row.RowMeta

Branch Change: -0.5% :small_red_triangle_down:
Complexity Change: -0.2% :small_red_triangle_down:
Instruction Change: -0.2% :small_red_triangle_down:


Update log4j-core dependency

Please update log4j-core due to exploit

As a commenter stated in another ticket, this dependency is only for the unit tests. Not really a risk.

Should still be updated.


Inline audio is not allowed with LongRunningRecognize. Please use a GCS URI.

Users are no longer able to process audio inline. When attempted, they receive the following error:
Google::Cloud::InvalidArgumentError: 3:Inline audio is not allowed with LongRunningRecognize. Please use a GCS URI.
This has been working before last Friday, when the API behavior changed.

This change has been reversed.  No code changes are required ~ tests should now be passing again.

Thanks @remi!

Sir I still get the same error (using R functions to connect to the API) : (my file is 6.68 MB and 8 min length)
async <- gl_speech(audio, asynch = TRUE)
Request failed [400]. Retrying in 1.6 seconds...
Request failed [400]. Retrying in 1 seconds...
2018-05-05 16:02:10> Request Status Code: 400
Scopes: https://www.googleapis.com/auth/cloud-platform
Method: service_json
Error: API returned: Inline audio exceeds duration limit. Please use a GCS URI.

@Bellman281 The error you describe is different than the one discussed on this issue. Your error is because the audio (8 minutes) is too long for being inline. See audio limits.


SelectMany ignores filter of other Entity

Steps to reproduce
I have following method that combines feedback of meeting invitation
        public FeedbackListModel GetFeedbackForVoting(Guid meetingId)
        {
            Expression<Func<Database.Meeting, bool>> filter =
                meeting => !meeting.Deleted && meeting.MeetingId == meetingId;
            using (var context = contextFactory.Create())
            {
                var result = context.Set<Database.Meeting>().Where(filter)
                    .Select(Expressions.FeedbackListModelSelector())
                    .SingleOrDefault();

                if (result != null)
                {
                    result.AttendeeFeedbacks = context.Set<Database.Meeting>().Where(filter)
                        .SelectMany(meeting => meeting.Attendees)
                        .Select(Expressions.AttendeeFeedbackSelector())
                        .ToList();
                }

                return result;
            }
        }

And following selector container class:
        private static class Expressions
        {
            public static Expression<Func<Database.Attendee, FeedbackListModel.AttendeeFeedback>> AttendeeFeedbackSelector()
            {
                return attendee => new FeedbackListModel.AttendeeFeedback
                {
                    Accepted = attendee.Accepted,
                    Answer = attendee.Answer,
                    AttendeeId = attendee.AttendeeId,
                    Email = attendee.AttendeeEmail,
                    Voted = attendee.Voted,
                };
            }

            public static Expression<Func<Database.Meeting, FeedbackListModel>> FeedbackListModelSelector()
            {
                return meeting=> new FeedbackListModel
                {
                    DateCreated = meeting.DateCreated,
                    DateStart = meeting.DateStart
                };
            }
        }

The issue
First query works properly - returns single entry.
Second query ignores filter - Selects all attandees from database (141 entries) instead of attendees for given meeting (2 entries)
Further technical details
EF Core version: "7.0.0-rc1-final" (from nuget install-package)
Operating system:
Visual Studio version: VS 2015 Pro
Other details about my project setup:
Database: LocalDB
Connection string: "Server=(localdb)\Projectv12;Database=SchoolRooms;Trusted_Connection=True;MultipleActiveResultSets=true;"

Please upgrade do Rac2. There was a bug around SelectMany that was fixed for RC2 that was the likely cause of the problem. If the problem persists in RC2 please reopen this issue and provide some additional info: Code listings for all the classes involved and the contents of OnModelCreating method on the DbContext


"Select for Compare" is available for WebView tabs

This PR fixes #113703

Looks great, merging in


feat(ui-markdown-editor): center align h1 tags - I146

Signed-off-by: Udbhavbisarya23<EMAIL_ADDRESS>

Closes #146

Changed Heading and Made changes to font sizes of ui-markdown-editor
Changes

Center Aligned the H1 tags
Changed font size and line height of h4,h5 and h6tags to 15,14 and 13 px respectively (As it is in PDF)

Screenshots or Video

Author Checklist

[x] Ensure you provide a DCO sign-off for your commits using the --signoff option of git commit.
[ ] Vital features and changes captured in unit and/or integration tests
[x] Commits messages follow AP format
[ ] Extend the documentation, if necessary
[x] Merging to master from fork:branchname
[ ] Manual accessibility test performed

[ ] Keyboard-only access, including forms
[ ] Contrast at least WCAG Level A
[ ] Appropriate labels, alt text, and instructions

Thank you @irmerk and @dselman !


How to use chart by url

Hello
Help me please. I want to use chart fluentd from https://charts.bitnami.com/bitnami
I created file fluentd.helm.yaml and added string "charts: https://charts.bitnami.com/bitnami"
But it doesn't work.
What I need to add to do for charts working ?

Sorry, the documentation should make this more clear- kubeapply doesn't support the official helm repository API; in the http case, it expects an archived version of the chart files.
The easiest thing to do here is to just copy the chart files from https://github.com/fluent/helm-charts/tree/main/charts/fluentd into whatever source repository you're using for your cluster config (this is how we do it at Segment).
As an alternative, you can add the following header comments into your fluentd.helm.yaml file:
# kubeapply__chart: git-https://github.com/fluent/helm-charts?ref=main
# kubeapply__chartsSubdir: charts/

and then set charts: in your cluster config to an empty local directory.
Hope this helps.

 It doesn't help.


Can't directly deal with Northern Hemisphere latitudes

It might be good to add a statement to the readme pointing out that this code employs a coordinate system in which Y axis values decrease from bottom to top. Thus, it will choke (silently) in conventional geomapping applications using lat/lon coordinates (because latitude increases from bottom to top of a north-at-top map).
Short of wading into the code to patch that, users can quickly and easily transform their sites and bbox latitudes via this function so that they will work with this library. Just use this function to transform your latitudes:
y2 = min + max - y1
where y1 = latitude, y2 = transformed latitude, min = minimum latitude (of the sites or bbox) and max = maximum latitude (of the sites or bbox). What this function does, in essence, is to flip your map vertically, so that the transformed map's y axis direction corresponds to the coordinate system the code expects. Then, after calculating the voronoi cells, transform their vertices' y coordinates back to map latitudes using the same function (i.e., flip the voronoi cells vertically, to conform to 'north up').
Note that no transformation of longitudes is required; this code's coordinate system expects x values to increase from left to right, which is what longitude does too, and the code handles negative longitudes just fine as is. But I have not looked into what happens if your map spans the equator or the prime meridian, nor have I checked whether it handles negative latitudes (okay, okay: I'm obviously U.S.-centric).
I know I would have found a sentence in the readme to this effect to be a real time-saver. But that said, thanks so much for this great code.

You're spot on about the problem. But the solution is even simpler that you describe. All you need to transform is the bbox by swapping bbox.yt and bbox.yb. There's no need to transform and later untransform sites.


Adding an option for bypassing the actionability checks of Playwright

Hi, I have one suggestion.
I am using robocorp framework.
I am trying to set the value of an hidden input with "Type Text" Keyword, but it is throwing the error: "element is not visible".
I have seen here (https://robocorp.com/docs/libraries/rpa-framework/rpa-browser-playwright#Implicit waiting) and here (https://playwright.dev/docs/actionability) what is auto-waiting and the actionability, and I understand why I am getting this error.
The auto waiting is enabled by default in Playwright, but it provides ways to bypass that actionability. For example in page.fill (https://playwright.dev/docs/api/class-page#page-fill), which I think is the equivalent to the "Type Text" Keyword, there is an option for bypassing those actionability checks.
I think it would be nice to have this option avaliable in the Keyword side, or an option in the Browser or the Context for enabling it globally.
Thanks!

@allcontributors please add @mgarcibu  for bugs.

Seems were missing the force option for all the input keywords other thank click


zh: update /zh/docs/concepts/scheduling/kube-scheduler.md

Add zh to the link in the document to make it jump to the Chinese page.
And fix a translation error.
ref: #18593

It would be nice to take out the https://kubernetes.io but that can happen in a different PR. This PR is not making things worse.


[Backend API] Implement endpoint for update event details

Based on #202
Implement the endpoint

ASSUMPTION: You've logged in as admin

해당 이슈 작업하겠습니다~ PR은 아직 열지 않았습니다!


Don't check the tuner on every CreateVO

Checking the tuner on every CreateVO is really expensive and slow.  With
a lot of cable channels the Plex channel will time out.  We should only
be checking if the tuner is alive if include_container is true.

Thanks!


Using otter for markdown files and not just .qmd

Is it possible to configure otter for use in markdown files. I have registered it with cmp can only get it tow work in .qmd files.

Yes that's the idea of having otter.nvim as a separate plugin. You can create an autocommand that calls otter.activate when a md file is opened or call it manually. Here is how it is done for quarto: https://github.com/quarto-dev/quarto-nvim/blob/0f2b3f6f0e1a856378f0fd6551d45d16920089fd/lua/quarto/init.lua#L163

Is there a way to use otter without installing quarto? Quarto is currently too coupled for my use-case. Are there plans to break out the LSP from the actual quarto app so it could be used in the regular way with lspconfig.[quarto].setup{}

Like I said, that's why otter.nvim exists. All quarto-nvim doe is create an autocommand to do otter.activate when a quarto file is opend and pass some configuration to it. You can pretty much just copy and paste this part and do the same for markdown. In fact this function from otter.nvim does exactly that for testing!
https://github.com/jmbuhr/otter.nvim/blob/e32e432988fddc7fc96f08300e56750a838f0893/lua/otter/init.lua#L72
M.dev_setup = function()
  api.nvim_create_autocmd({ "BufEnter" }, {
    pattern = { "*.md" },
    callback = function()
      M.activate({ 'r', 'python', 'lua' }, true)
      vim.api.nvim_buf_set_keymap(0, 'n', 'gd', ":lua require'otter'.ask_definition()<cr>", { silent = true })
      vim.api.nvim_buf_set_keymap(0, 'n', 'K', ":lua require'otter'.ask_hover()<cr>", { silent = true })
    end,
  })
end

Not sure what you mean by LSP. There currently is no quarto lsp. You might want to read about what otter.nvim does in the readme.


Question (epoch): How to avoid Miri to report data race on an Atomic pointer?

Hi. Some time ago, we implemented a lock-free concurrent hash table using crossbeam-epoch and it has been working fine. However, a user of our hash table library discovered that running cargo +nightly miri test on it reports a data race error during concurrent read/write on a crossbeam_epoch::Atomic pointer.
Since it is a lock-free data structure, we expect such a data race to occur. Readers may see stale data, which is okay, and reading the data will never cause use-after-free problem because the data is retained by crossbeam_epoch's Guard.
However, Miri's error raised some questions:

Are we using Atomic pointer and Guard correctly?
If yes, how can we avoid Miri to report the error?
If no, how can we fix our code?

Below is a minimized version of the code that causes the same Miri error:

src/bin/main1.rs
// Cargo.toml
//
// [dependencies]
// crossbeam-epoch = "0.9.15"
// rand = { version = "0.8.5", features = ["small_rng"] }

fn main() {}

#[cfg(test)]
mod tests {
    use std::{
        sync::{atomic::Ordering, Arc},
        thread,
        time::Duration,
    };

    use crossbeam_epoch::{pin, Atomic, CompareExchangeError, Owned};
    use rand::{rngs::SmallRng, Rng, SeedableRng};

    struct Container {
        v: Atomic<usize>,
    }

    impl Drop for Container {
        fn drop(&mut self) {
            let guard = pin();
            let v_ptr = self.v.load_consume(&guard);
            if unsafe { v_ptr.as_ref() }.is_some() {
                unsafe {
                    guard.defer_destroy(v_ptr);
                }
            }
        }
    }

    #[test]
    fn concurrent_read_and_modify() {
        const NUM_THREADS: usize = 16;
        const NUM_OPERATIONS: usize = 100;

        let container = Arc::new(Container { v: Atomic::null() });
        let mut thread_rng = rand::thread_rng();

        let handles = (0..NUM_THREADS)
            .map(|n| {
                let data = Arc::clone(&container);
                let mut rng = SmallRng::from_rng(&mut thread_rng).unwrap();

                thread::Builder::new()
                    .name(format!("thread-{}", n))
                    .spawn(move || {
                        for _ in 0..NUM_OPERATIONS {
                            read_and_maybe_replace(&data, &mut rng);
                        }
                    })
                    .unwrap()
            })
            .collect::<Vec<_>>();

        handles.into_iter().for_each(|h| h.join().unwrap());
    }

    fn read_and_maybe_replace(container: &Container, rng: &mut SmallRng) {
        let guard = pin();

        // Read the usize.
        let v_ptr = container.v.load_consume(&guard);
        if let Some(v_ref) = unsafe { v_ptr.as_ref() } {
            thread::sleep(Duration::from_millis(rng.gen_range(0..50)));
            std::hint::black_box({
                let _ = *v_ref;
            });
        }

        if rng.gen_bool(0.25) {
            // Replace the usize.
            let v = rng.gen();
            let mut v_ptr = v_ptr;
            loop {
                match container.v.compare_exchange_weak(
                    v_ptr,
                    Owned::new(v),
                    Ordering::AcqRel,
                    Ordering::Relaxed,
                    &guard,
                ) {
                    Ok(old_v) => {
                        unsafe {
                            guard.defer_destroy(old_v);
                        }
                        break;
                    }
                    Err(CompareExchangeError { .. }) => {
                        v_ptr = container.v.load_consume(&guard);
                    }
                }
            }
        }
    }
}

Here is the result:

Miri test
$ cargo +nightly miri test --bin main1

(Omitted some warnings about integer-to-pointer cast)

error: Undefined Behavior: Data race detected between (1) Write on thread `thread-1` and (2) Read on thread `thread-2` at alloc106668. (2) just happened here
   --> /Users/tatsuya/.cargo/registry/src/index.crates.io-6f17d22bba15001f/crossbeam-epoch-0.9.15/src/atomic.rs:204:9
    |
204 |         &*(ptr as *const T)
    |         ^^^^^^^^^^^^^^^^^^^ Data race detected between (1) Write on thread `thread-1` and (2) Read on thread `thread-2` at alloc106668. (2) just happened here
    |
help: and (1) occurred earlier here
   --> src/bin/main1.rs:82:21
    |
82  |                     Owned::new(v),
    |                     ^^^^^^^^^^^^^
    = help: this indicates a bug in the program: it performed an invalid operation, and caused Undefined Behavior
    = help: see https://doc.rust-lang.org/nightly/reference/behavior-considered-undefined.html for further information
    = note: BACKTRACE (of the first span):
    = note: inside `<usize as crossbeam_epoch::Pointable>::deref::<'_>` at /Users/tatsuya/.cargo/registry/src/index.crates.io-6f17d22bba15001f/crossbeam-epoch-0.9.15/src/atomic.rs:204:9: 204:28
    = note: inside `crossbeam_epoch::Shared::<'_, usize>::as_ref` at /Users/tatsuya/.cargo/registry/src/index.crates.io-6f17d22bba15001f/crossbeam-epoch-0.9.15/src/atomic.rs:1518:18: 1518:31
note: inside `tests::read_and_maybe_replace`
   --> src/bin/main1.rs:68:39
    |
68  |         if let Some(v_ref) = unsafe { v_ptr.as_ref() } {
    |                                       ^^^^^^^^^^^^^^
note: inside closure
   --> src/bin/main1.rs:53:29
    |
53  | ...                   read_and_maybe_replace(&data, &mut rng);
    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

note: some details are omitted, run with `MIRIFLAGS=-Zmiri-backtrace=full` for a verbose backtrace

error: aborting due to previous error; 5 warnings emitted

I replaced v_ref: &usize with *const usize, but Miri reported the same error on the line let _ = unsafe { *v_raw.ptr } of our src/bin/main2.rs

diff
--- src/bin/main1.rs	2023-06-17 17:37:09
+++ src/bin/main2.rs	2023-06-17 17:40:15
@@ -14,7 +14,7 @@
         time::Duration,
     };

-    use crossbeam_epoch::{pin, Atomic, CompareExchangeError, Owned};
+    use crossbeam_epoch::{pin, Atomic, CompareExchangeError, Guard, Owned, Shared};
     use rand::{rngs::SmallRng, Rng, SeedableRng};

     struct Container {
@@ -33,6 +33,20 @@
         }
     }

+    struct GuardedPointer<'g> {
+        ptr: *const usize,
+        _guard: &'g Guard,
+    }
+
+    impl<'g> GuardedPointer<'g> {
+        fn new(shared: Shared<'g, usize>, guard: &'g Guard) -> Self {
+            Self {
+                ptr: shared.as_raw(),
+                _guard: guard,
+            }
+        }
+    }
+
     #[test]
     fn concurrent_read_and_modify() {
         const NUM_THREADS: usize = 16;
@@ -65,10 +79,11 @@

         // Read the usize.
         let v_ptr = container.v.load_consume(&guard);
-        if let Some(v_ref) = unsafe { v_ptr.as_ref() } {
+        let v_raw = GuardedPointer::new(v_ptr, &guard);
+        if !v_raw.ptr.is_null() {
             thread::sleep(Duration::from_millis(rng.gen_range(0..50)));
             std::hint::black_box({
-                let _ = *v_ref;
+                let _ = unsafe { *v_raw.ptr };
             });
         }

Versions:

crossbeam-epoch v0.9.15
rustc 1.72.0-nightly (6bba06146 2023-06-16)
miri 0.1.0 (6bba0614 2023-06-16)

What platform did you run the test? (I'm thinking about #992)

macOS arm64
$ rustc +nightly -Vv
rustc 1.72.0-nightly (6bba06146 2023-06-16)
binary: rustc
commit-hash: 6bba061467f7c2cab04b262b95eb67bf89265587
commit-date: 2023-06-16
host: aarch64-apple-darwin
release: 1.72.0-nightly
LLVM version: 16.0.5

Thanks. Yeah. It seems #992 is related. I tried the following dependency and the error has changed.
crossbeam-epoch = { git = "https://github.com/crossbeam-rs/crossbeam.git", branch = "taiki-e/consume" }

So, Miri does not seem to understand load_consume impl.
Now it is detecting a stacked borrow violation...
error: Undefined Behavior: trying to retag from <221231> for SharedReadWrite permission at alloc96329[0x8], but that tag does not exist in the borrow stack for this location
   --> /Users/tatsuya/.cargo/git/checkouts/crossbeam-5d5b005504a37dac/39da3f8/crossbeam-epoch/src/internal.rs:552:9
    |
552 |         &*local_ptr
    |         ^^^^^^^^^^^
    |         |
    |         trying to retag from <221231> for SharedReadWrite permission at alloc96329[0x8], but that tag does not exist in the borrow stack for this location
    |         this error occurs as part of retag at alloc96329[0x0..0xb8]
    |
    = help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
    = help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information
help: <221231> was created by a SharedReadWrite retag at offsets [0x0..0x8]
   --> src/bin/main1.rs:64:21
    |
64  |         let guard = pin();
    |                     ^^^^^
    = note: BACKTRACE (of the first span):
    = note: inside `<crossbeam_epoch::internal::Local as crossbeam_epoch::sync::list::IsElement<crossbeam_epoch::internal::Local>>::element_of` at /Users/tatsuya/.cargo/git/checkouts/crossbeam-5d5b005504a37dac/39da3f8/crossbeam-epoch/src/internal.rs:552:9: 552:20
    = note: inside `<crossbeam_epoch::sync::list::Iter<'_, crossbeam_epoch::internal::Local, crossbeam_epoch::internal::Local> as std::iter::Iterator>::next` at /Users/tatsuya/.cargo/git/checkouts/crossbeam-5d5b005504a37dac/39da3f8/crossbeam-epoch/src/sync/list.rs:290:37: 290:53
    = note: inside `crossbeam_epoch::internal::Global::try_advance` at /Users/tatsuya/.cargo/git/checkouts/crossbeam-5d5b005504a37dac/39da3f8/crossbeam-epoch/src/internal.rs:237:22: 237:45
    = note: inside `crossbeam_epoch::internal::Global::collect` at /Users/tatsuya/.cargo/git/checkouts/crossbeam-5d5b005504a37dac/39da3f8/crossbeam-epoch/src/internal.rs:202:28: 202:51
    = note: inside `crossbeam_epoch::internal::Local::pin` at /Users/tatsuya/.cargo/git/checkouts/crossbeam-5d5b005504a37dac/39da3f8/crossbeam-epoch/src/internal.rs:436:17: 436:46
    = note: inside `crossbeam_epoch::LocalHandle::pin` at /Users/tatsuya/.cargo/git/checkouts/crossbeam-5d5b005504a37dac/39da3f8/crossbeam-epoch/src/collector.rs:81:18: 81:37
    = note: inside closure at /Users/tatsuya/.cargo/git/checkouts/crossbeam-5d5b005504a37dac/39da3f8/crossbeam-epoch/src/default.rs:40:26: 40:38
    = note: inside closure at /Users/tatsuya/.cargo/git/checkouts/crossbeam-5d5b005504a37dac/39da3f8/crossbeam-epoch/src/default.rs:60:23: 60:27
    = note: inside `std::thread::LocalKey::<crossbeam_epoch::LocalHandle>::try_with::<[closure@crossbeam_epoch::default::with_handle<[closure@crossbeam_epoch::pin::{closure#0}], crossbeam_epoch::Guard>::{closure#0}], crossbeam_epoch::Guard>` at /Users/tatsuya/.rustup/toolchains/nightly-aarch64-apple-darwin/lib/rustlib/src/rust/library/std/src/thread/local.rs:270:16: 270:31
    = note: inside `crossbeam_epoch::default::with_handle::<[closure@crossbeam_epoch::pin::{closure#0}], crossbeam_epoch::Guard>` at /Users/tatsuya/.cargo/git/checkouts/crossbeam-5d5b005504a37dac/39da3f8/crossbeam-epoch/src/default.rs:59:5: 60:28
    = note: inside `crossbeam_epoch::pin` at /Users/tatsuya/.cargo/git/checkouts/crossbeam-5d5b005504a37dac/39da3f8/crossbeam-epoch/src/default.rs:40:5: 40:39
note: inside `tests::read_and_maybe_replace`
   --> src/bin/main1.rs:64:21
    |
64  |         let guard = pin();
    |                     ^^^^^

SB errors from epoch should be fixed in https://github.com/crossbeam-rs/crossbeam/pull/871.

Wow! That was super quick. Thank you so much!
I tried epoch-fix-sb-violations branch and found that Miri no longer reports any errors and warnings on macOS arm64 :tada:
$ rustc +nightly -Vv
rustc 1.72.0-nightly (6bba06146 2023-06-16)
binary: rustc
commit-hash: 6bba061467f7c2cab04b262b95eb67bf89265587
commit-date: 2023-06-16
host: aarch64-apple-darwin
release: 1.72.0-nightly
LLVM version: 16.0.5

$ cargo +nightly miri test --bin main1
Preparing a sysroot for Miri (target: aarch64-apple-darwin)... done
WARNING: Ignoring `RUSTC_WRAPPER` environment variable, Miri does not support wrapping.
    Finished test [unoptimized + debuginfo] target(s) in 0.04s
     Running unittests src/bin/main1.rs (target/miri/aarch64-apple-darwin/debug/deps/main1-5aa366f684d43212)

running 1 test
test tests::concurrent_read_and_modify ... ok

test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out

p.s.
I ran miri test on my library and confirmed Miri no longer emits errors and warnings.

crossbeam-epoch: The current head of master branch #ce31c186.

It has #995.
It does not have #871.

Used -Zmiri-tree-borrows instead of -Zmiri-disable-stacked-borrows (#996)
macOS arm64 (aarch64-apple-darwin)

Cargo.toml
crossbeam-epoch = { git = "https://github.com/crossbeam-rs/crossbeam.git", branch = "master", optional = true }

Terminal Log
$ cargo tree -i crossbeam-epoch
crossbeam-epoch v0.9.15 (https://github.com/crossbeam-rs/crossbeam.git?branch=master#ce31c186)
└── moka v0.11.2 (...)

$ MIRIFLAGS="-Zmiri-tree-borrows" cargo +nightly miri test --lib cht::segment::tests::concurrent_overlapped_removal
Preparing a sysroot for Miri (target: aarch64-apple-darwin)... done
WARNING: Ignoring `RUSTC_WRAPPER` environment variable, Miri does not support wrapping.
    Finished test [unoptimized + debuginfo] target(s) in 0.08s
     Running unittests src/lib.rs (target/miri/aarch64-apple-darwin/debug/deps/moka-451ea5dfd08c9c07)

running 1 test
test cht::segment::tests::concurrent_overlapped_removal ... ^C

## Pressed Ctrl + C after ~1 minute. Otherwise it can take few hours to complete.


Refactor client to make it responsive and testable

Rewrite client in typescript
Make client responsive
Improve UI
Add tests to the client
Update endpoints

@clems4ever Just a thought - better not to use Gmail logo (replace it with something generic)? Might upset Google, and it kinda "locks you in" for one notification provider  when later on one might introduce several others (eg. SMTP, Push etc.)
Just a thought :smile: Awesome work otherwise!

Hello @jkaberg , you are right. I will find another icon. Thank you for your feedback.

Hello @jkaberg, I changed the mail icon :)

@clems4ever Much better! 😄


Enhance handle SKR Event

This PR enhanced the handleSKREvent method with the following:

Introduce Request limit size
Split Marshal JSON into watcher and convert to generic event, thus the already parsed Watcher event can be given as an input into the Verify function

/test pull-tests-listener


[docs] added note about the spoiled probabilities

What about sample_weight/weight_column params?

The weights over samples indeed will affect the probabilities as well. However, it depends on the user's purpose. If the samples indeed have different weights, then the probabilities are right; if the weights are for imbalance purpose, users should aware of this.

@guolinke Thank you for the clarification! Then I think it's ready for review.
Closed #2107.


Instagram First page clone(desktop view)

Project title
(Write project title over here)
Project Description
(Describe the project over here)
Stack:
[ ] Html
[ ] CSS
[ ] JavaScript

I would like to work on this issue


T/sfx tweaks

Summary

Softens main menu click-through ding to 10%
Adds a shortened (~0.5sec) sfx for the laser to use instead.

Linked Issues
Closes #367

Obsolete now that Aiden's added fmod, closing PR.