flip [leds] syntax?

Currently, the secion leds looks like:
[leds]
# add labels in the UI, and access specific LEDs programmaticly. Ex: red=B or uv380=C
ir_led=A
ir_led2=B
UV=C

In the current style, it's easy to make the mistake of double entry:
[leds]
ir_led=A
ir_led2=B
UV=A

which will confuse the UI, and something will be wrong in the Python software (ex: too many jobs interacting with a single channel).

Since we have a set number of LED channels, does it make sense to flip the order here? Ex:
[leds]
# add labels in the UI, and access specific LEDs programmaticly. Ex: B=red
A=ir_led
B=ir_led2
C=UV
D=

Since this is easier to visually scan, it's much harder to make a mistake. Okay, but it's harder to work with in Python now - it requires a lookup on the values, and not the key. For example, if I want ir_led, I have to iterate through the channels until I find it.

I would also need to flip other sections in the config.ini:
[PWM]
# map the externals to the PWM.
# hardware PWM are available on channels 1 & 3.
0=stirring
1=heating
2=alt_media
3=waste
4=media

which looks a lot better, and again, easier to scan and check.

What about the following change as well?  From
[od_config.photodiode_channel]
od_angle_channel=90,0|135,1

to
[od_config.photodiode_channel]
0=90
1=135

(The reminds me, in the future, a single PD could represent multiple angles, see #124)


Integration/swagger

Complete Swagger Work Done
BDD Tests to be fixed.

Currently I noticed an interesting behavior that 404 returns additional information in the message of the response. This was not considered in our bdd testing before.
I am working on a fix soon for this.
In the mean time, it seems that it might be worth it to impleemnt namespaces for the wishlists / items endpoints to prevent swagger from suggesting other irrelevant ones.

There seems to be a bug on the "copy" and "paste" methods in the Delete BDD test case while debugging

I have made a story and a fix regarding the BDD test for Delete. See #150 and check if you're okay with the merge / review the code.
Otherwise, everything looks like it should be functional based on the initial browsing and the automated tests on the api endpoints.


[io][url] fix path() when data_slice is not an iterable.

if data_slice is not an iterable simply convert it to str instead of calling '",".join([slice_to_string(s) for s in self.__data_slice])' which fails if data_slice is not an iterable
closes #2972

Sounds good to roundtrip, maybe best to use slice_to_string rather than str.


Separate report name and icon configuration from personal details

Details

Solve the issue of report names and icons.
Fixed Issues

$ https://github.com/Expensify/App/issues/7261
Tests

Create New Room (Private) and check report name and icon
Create New Room (Restricted) and check report name and icon
Create New Group and check report name and icon
Create New Chat and check report name and icon

QA Steps

Create New Room (Private) and check report name and icon
Create New Room (Restricted) and check report name and icon
Create New Group and check report name and icon
Create New Chat and check report name and icon

Tested On

[x] Web
[x] Mobile Web
[ ] Desktop
[ ] iOS
[x] Android

Screenshots

Web

Mobile Web

Desktop

iOS

Android

Could you please also update the template?

Still....

Please follow the template. It is necessary for automation.

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

🚀 Deployed to staging by @tgolen in version: 1.1.32-1 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

Heyo, this is causing https://github.com/Expensify/App/issues/7417 so this will be reverted.

@parasharrajat I have updated the branch which should probably solve the issue. It solves the issue in my side. Could you please verify it? Should I create a new PR?

Yeah, please create a new PR

🚀 Deployed to production by @roryabraham in version: 1.1.33-3 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Does YOLOX support Copy-Paste aug?

thx for your work!
Copy-Paste is mentioned in YOLOX paper, but i dont find it in this project. So does it support to use Copy-paste?

@HIT-ShuWei Hi, copypaste is only an ablation study in our report. It is not released because it will bring some extra codes which are not related to object detection.


spellcheck

These are definitely not intentional:
https://github.com/NixOS/nixpkgs/search?utf8=✓&q=propogatedBuildInputs&type=Code

I wonder: would that be from a Dvorak user?


update  List for just one player

Hi i look all doc and who to update inventory for just one player.

Create an instance of the GUI for every player.


Fix unsupported names in docker compose

please squash commits here too - the log on main is becoming a mess, and it was really annoying while trying to build the changelog for the last release


Icon of DMG file

The icon of the dmg file should be that of a disk image with the ghost logo superimposed on it, not the actual logo of the app itself. This becomes confusing as the disk image on the desktop can become confused with the actual app itself. I've attached a sample image of a disk image that respects this rule.

Hey! Thank you for giving the app a try - and your suggestion. While there's no rule as to what the image has to look like, I think it's a good idea.
Would you be interested in giving it a go? I'd love to see a pull request!

PR already merged


adding more starter files and DB code.

PR to add additional starter folders and adding DB code.

comment first


Added check and failure mark tint color attrs

Summary

Added checkMarkTintColor and failureMarkTintColor to the attrs.xml so one can edit those directly from the xml, maybe this should also be done in code (?) .
Changed FinishedView to render the drawable using a LightingColorFilter with the user specified color to tint the drawable.
Added a null check when attempting to resetLoading to avoid a NPE being thrown if viewAnimator was not set

Please, resolve conflicts.
Thanks!

Ah! Both of us reformatted the code, hence the conflicts! Will merge your new commits now.

Done. One shouldn't reformat the code when submiting PR's I think. My fault. Now it's merged and including both check mark, failure mark tint color and percentage text color!


Updating progress on my DevOps journey

Thanks for this amazing roadmap.
Here's my first update on things I learnt yesterday.

Awesome, Keep learning and keep sharing , let's see how many people get benefit from this roadmap! I want you all to succeed massively!


feat: support non-english characters and responsive design

Features

Add <meta charset="UTF-8"> to html template to be able to render non English characters on Jest Preview Dashboard.
Add <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no, viewport-fit=cover"> to support responsive design on Jest Preview Dashboard.

I added new component Translate and add test to it.

@nottyo Thanks for your PR. I leave some comments. Could you please look into it?

@nvh95 Thanks. I've fixed it. https://github.com/nottyo/jest-preview/commit/9c391798b339f7fb13dab952b339102a0d8bfdcf

@all-contributors please add @nottyo for code

@nottyo Thank you again. This change will land in 0.1.5

Welcome to contributors!


Feature/143

This patch rebases against develop, and incorporates the feedback I provided in zendframework/zend-expressive#143.
However, you have new commits on your branch since I started my work, so I may need to rebase against your code again to make this work.

Fixed the conflicts; ready to review and merge now, @kynx .


[Feature]: 🚀 Proposal for File Detection in Jest

🚀 Feature Proposal
The proposal is to introduce a built-in functionality in Jest that can detect files in a project that do not have corresponding test files. This enhancement will enable Jest to provide better support for various types of projects, allowing developers to maintain better test coverage across their codebases.
Motivation
The motivation behind this proposal is to enhance Jest's usability and value by providing developers with an automated way to identify files that lack test coverage. Currently, Jest has excellent support for testing various JavaScript projects, but it lacks a built-in mechanism to detect untested files. By integrating this functionality into Jest's core platform, it will become a powerful and versatile testing framework for a wide range of JavaScript projects.
Example
Once implemented, developers would have the option to enable the file detection feature by running Jest with a specific configuration. Jest would then analyze the project's file structure and report any files that are missing corresponding test files. The configuration options could be set to suit the specific project's needs, such as specifying the file extensions to check, defining exclusions, and setting up exclusion rules based on content.
Example Command:

jest --detect-untested-files

Output:

The following files are missing test coverage:

* src/components/ExampleComponent.js
* src/utils/helperFunctions.js
* ...

Pitch
The proposed feature aligns perfectly with Jest's philosophy of being a developer-friendly and versatile testing framework. Jest's design has always focused on providing a comprehensive and straightforward testing experience for developers. By adding this native file detection capability, Jest will become even more powerful, adaptable, and widely applicable to various types of projects.
Benefits:

Reduce the need for external plugins or custom solutions for file detection.
Bring consistency and standardization to how developers analyze and ensure test coverage across their projects.
Make Jest a more appealing choice for developers working on any JavaScript project with Jest support.

Note to the Jest team
While Jest currently offers excellent support for testing Angular projects through plugins like 'jest-angular-test-verifier', this proposal aims to enhance Jest's core functionality to make it more inclusive and applicable to all types of projects. By adding file detection capabilities, Jest can become a powerful and generic testing solution, benefiting developers from various backgrounds and project setups.
I hope this proposal is helpful in conveying the potential benefits of adding this feature to Jest. Let me know if you need any additional information or have any questions. Thank you for considering this enhancement!

Can you create a test coverage reporter that does this for you? I think that'd work


The job went missing!

it works for the first time when i restart the comfyUI Server or use a new workflow json
if i use the same workflow again, it will reply : the job went missing .

this is my server.js
import express from 'express';
import { ComfyApi, PromptBuilder, CallWrapper } from '@saintno/comfyui-sdk';
import fs from 'fs';
import { v4 as uuidv4 } from 'uuid';
const app = express();
const port = 3000;
const unique_id = uuidv4();
const api = new ComfyApi("http://localhost:8188", "unique_id");
// Load the custom workflow JSON
const workflowJson = JSON.parse(fs.readFileSync('D:/Sites/photobooth/simple.json', 'utf-8'));
app.use(express.json());
// Initialize ComfyUI API
api.on("log", (ev) => console.log(ev.detail)); // Debug logs
await api
.init(1000, 1000) // Retry settings
.waitForReady();
// POST endpoint for generating images based on promptText, positivePrompt, and optional negativePrompt
app.post('/generate', async (req, res) => {
console.log("Request received at /generate");
console.log("Request body:", req.body);
let responseSent = false;

try {
    const { positivePrompt, negativePrompt } = req.body;

    const promptBuilder = new PromptBuilder(
        workflowJson,
        ["postext"],
        ["negtext"],
        ["output_image"]
    )
    .setInputNode("postext", "7.inputs.text")
    .setInputNode("negtext", "8.inputs.text")
    .setOutputNode("output_image", "11.outputs.images")

    // Disable cache check
    CallWrapper.prototype.handleCachedOutput = async function() { return null; };

    const workflowExecution = new CallWrapper(api, promptBuilder);

    workflowExecution
        .onFinished((data) => {
            if (!responseSent) {
                responseSent = true;
                console.log("Workflow finished, sending response");
                res.set('Cache-Control', 'no-store');
                res.json({ result: "success" });
            }
        })
        .onFailed((err) => {
            if (!responseSent) {
                responseSent = true;
                console.error("Workflow failed:", err);
                res.status(500).json({ error: `Workflow failed: ${err.message}` });
            }
        })
        .run();

} catch (error) {
    if (!responseSent) {
        responseSent = true;
        console.error("Server error:", error);
        res.status(500).json({ error: `Server error: ${error.message}` });
    }
}

});
// Start the server
app.listen(port, () => {
console.log(Server running on http://localhost:${port});
});

I have a push request waiting that solves an issue where the original workflow json being used gets mutated by the inputs in memory.
The other possibility might be a caching issue, does it only do it with the same inputs, including seed, or different inputs as well?

@btaens I saw @jingpe have this line
CallWrapper.prototype.handleCachedOutput = async function() { return null; };

maybe it is the problem ?

Oh, yeah, that'd do it.

I have a pull request waiting that solves an issue where the original workflow json being used gets mutated by the inputs in memory.
The other possibility might be a caching issue, does it only do it with the same inputs, including seed, or different inputs as well?
Looking at your code you don't seem to be providing any inputs though, you're only defining the input and output nodes.

yes.. i am trying to accept input parameters from postman..
i actually tried to take out the cache check... but still doesn't work..
it only happens when i use the same workflow, if i edit the workflow a little bit, save with the same filename, it will proceed...
if i use the same workflow, no matter what i have for the input, (and i have a random seed in the workflow), it will give me the same error...


OpenEBS provisioner HA

What this PR does / why we need it:
openebs-provisioner should be available all the time even if any node goes down.
What is changed?
This will increase the replicas count and will add affinity to the pod spec.
Which issue this PR fixes:
fixes #267

Added PodAntiAffinity  and removed nodeAffinity

  podAntiAffinity:
        requiredDuringSchedulingIgnoredDuringExecution:
          - weight: 100
            podAffinityTerm:
              labelSelector:
                matchExpressions:
                  - key: provisioner
                    operator: In
                    values:
                    - P1
                    - P2
              topologyKey: "kubernetes.io/hostname"

@kmova I haven't updated the doc yet. I will do it today.

@kmova Please check the updated document.
Thanks

Closing this PR in favor of https://github.com/openebs/openebs/pull/814


[broker] Topic loading in rest-api should time out in zooKeeperOperationTimeoutSeconds

Motivation
With https://github.com/apache/pulsar/pull/4616, topic-loading in rest-api now time out in zooKeeperSessionTimeoutMillis. However, I think we should use zooKeeperOperationTimeoutSeconds rather than zooKeeperSessionTimeoutMillis as the timeout time, because most rest-api calls by broker time out in zooKeeperOperationTimeoutSeconds (cf. https://github.com/apache/pulsar/pull/4484).

run integration tests

run integration tests


attrs() are no longer merged in v4

Description
👋 Hello. I've been investigating a migration from v3 to v4 and have been seeing some different results with the .attrs() method while extending other styled-components.
Within our component library we have several styled components that use CSS classes applied via the attrs() method. Example
We also have components that "wrap" (not using the .extend() API) to apply additional classNames.
const Tooltip = styled.div.attrs({ className: 'tooltip' })``;
const LightTooltip = styled(Tooltip).attrs({ className: 'tooltip--light' })``;

In v4 it doesn't seem that this type of attrs() merging is possible. Doesn't seem to be possible even with a .attrs(props => ({})) callback. Is this expected?
It seems some attributes are shallow merged (like styles in #1877). Should this have the same treatment if it's a common pattern?
Environment
CodeSandbox default create-react-app environment.
Reproduction

<EMAIL_ADDRESS>with attr merging

https://codesandbox.io/s/o52l69rkwy

<EMAIL_ADDRESS>without attr merging

https://codesandbox.io/s/z2k437v4r3

Steps to reproduce

Create a styled-component with a className provided via the attrs() method
Create another styled-component that wraps the original component styled(InnerComponent) which also provides a className via the attrs() method
Only the outer className is being provided.

Expected Behavior
Similar to v3 of styled-components, the attrs are merged if a component is extended.
Actual Behavior
Only the outer attrs() methods are respected.

Huh this is very interesting—I'm not sure why we merged attrs like that before! I don't think we should be doing that, as you should manually be opting into letting an attribute being overriden, so I think the behavior in v4 is correct.
If you think about it, if we always automatically merge you can't turn off the lower-level className, which is probably not what you want. Right now, your lower-level component basically has to explicitly allow overriding the attr, which is exactly what attrs is for

I don't think we should be doing that, as you should manually be opting into letting an attribute being overriden, so I think the behavior in v4 is correct

Agreed! I'm assuming the behavior worked for us since we were using the styled(Component)``` syntax rather than Component.extend```.

Right now, your lower-level component basically has to explicitly allow overriding the attr, which is exactly what attrs is for

Is there a "best" approach to reliably allow className to be overridden in the lower component? I've updated the v4 Codesandbox to include another example with the new props callback in attrs() and I'm still unable to get className to be provided.
export const InnerComponent = styled.div.attrs(props => ({
  className: classNames(props.className, "component-inner")
}))``;

export const OuterComponent = styled(InnerComponent).attrs({
  className: "component-outer"
})``;

Because attrs doesn't work this way (see discussion here https://github.com/styled-components/styled-components/pull/2258)
https://codesandbox.io/s/wyvljmw4k7 works starting from 4.1.2

That makes much sense! Thanks for the diagram at the end of #2258
Thanks for the help. Closing.

I'd vote for this to be reopened. This change really makes the DX for using something like Tachyons or TailwindCSS that much worse. I've loved mixing Tachyons and Styled Components ever since attrs were introduced.
I can write a simple component like
export const TextLink = styled.a.attrs({
  className: 'no-underline bb nowrap',
})`
  padding-bottom: 0.2rem;
  border-color: ${props => props.theme.c30};
  color: ${props => props.theme.c50};
  &:hover {
    cursor: pointer;
    color: ${props => props.theme.blue};
    border-color: ${props => props.theme.blue};
  }
`;

and then if I need to bespoke style it, I would just append new classes on to it like so:
const DifferentTextLink = styled(TextLink).attrs({
  className: 'f6',
})`
  color: ${props => props.theme.c80};
`;

Since the appended classes would come after the first classes, I could also override classes provided through attrs this way as well.
I think the new paradigm is a significant step backward as far as DX for using attrs.


WebApp:az webapp up by default resets the Python version to 3.7

Describe the bug
When running az webapp up without the "runtime" flag, the Python version of my webapp is always reset to 3.7, although my Python app is running in Python 3.8.
While az webapp up does store other default values from the first deployment in the config file, it does not do so with the runtime version.
Command Name
az webapp up
To Reproduce:

Put any pre-requisite steps here...
az webapp up --runtime "PYTHON|3.8 --other-args"
az webapp up

Expected Behavior
Running az webapp up with a new flag should always store that setting as a standard in the config file. This should include the runtime, Python version etc.
Environment Summary
Linux-5.4.72-microsoft-standard-WSL2-x86_64-with-debian-bullseye-sid
Python 3.6.10
Installer: DEB

azure-cli 2.18.0

Extensions:
db-up 0.2.0

Additional Context

webapp

Looking in to it.

@larsschellhas - az webapp up will just create a webapp with default or specified configuration. here default means the default azure configuration. please find more details here.
To clarify your questions

az webapp up will create  a new app all the times. It cannot be used for deployment in to the existing apps. So it does create a new webapp all the times.
if we don't specify the --runtime  argument then the az webapp up command will take the default runtime versions from az webapp list-runtimes

Hope it clarifies your question.

Hey @Kotasudhakarreddy ,
thank you very much for your answer! This does explain why the command acts as it does. However, wenn az webapp up is used to redeploy, it does seem to update the existing app. After all:

During the deployment it does say Updating runtime from Python 3.8 to Python 3.7
Previously set environment variables on the webapp are kept and not deleted.
In this tutorial in the MS Docs it literally says this:

This command uses the parameters cached in the .azure/config file. Because App Service detects that the app already exists, it just redeploys the code.

Hey @Kotasudhakarreddy ,
thank you very much for your answer! This does explain why the command acts as it does. However, wenn az webapp up is used to redeploy, it does seem to update the existing app. After all:

During the deployment it does say Updating runtime from Python 3.8 to Python 3.7
Previously set environment variables on the webapp are kept and not deleted.
In this tutorial in the MS Docs it literally says this:

This command uses the parameters cached in the .azure/config file. Because App Service detects that the app already exists, it just redeploys the code.

Hi @larsschellhas - agreed on your points. Thanks for correcting me. Parameters cached under .azure/config will just store the info related to the azure configuration of your app like RG, SKU etc. Regarding -runtime as per the implementation if we don't specify the -runtime by default it  consider and set as python|3.7.
we will look in to the feasibility of considering the runtime version from previous deployment and set as default if we don't specify in the latest deployment.

@calvinsID for an existing app we shouldn't override the run-time version if the language is the same right? Is this a regression with --runtime support?

Closing as it looks like the associated work has been done. Please re-open if this is still an issue.


Include a fuzzy finder in the list command. Show seconds until OTP is invalid.

This is a crude attempt to make it easier to navigate through Namespaces and accounts.
Haven't yet figured a clean way to periodically refresh the finder screen.

Hey...Is this something you are interested in ?

Fair enough. I can imagine that use case for myself as well. Thanks.  How about a --interactive flag in the list command ?

I would prefer the "search" instead of list, because that reflect the functionality better. Maybe it can even search the whole stuff together with fuzzy search like an aggregated "namespace/account" list, that way we don't even have to select the namespace first. It can get a --generate flag and it can generate the key on select. Idea?


Added block for logic app naming

Added missing object for logic app name
logicApp: {
name: endsWith(take(replace(nt, ph, "logic"), 60), d)
? take(replace(nt, ph, "logic"), 60 - 1)
: take(replace(nt, ph, "logic"), 60);
nameUnique: endsWith(take(replace(nut, ph, "logic"), 60), d)
? take(replace(nut, ph, "logic"), 60 - 1)
: take(replace(nut, ph, "logic"), 60);
slug: "logic";
}

resolves nianton/azure-naming#5

The generation of the module is driven by the data files,  so the /datafiles/resourceDefinitions.json should be amended first, according to the naming rules of the respective ARM provider (in this case: Microsoft.Logic workflows, most importantly the length constrains of the name string allowed and whether it can contain dashes as delimiter), using the abbreviation (when available) from the official documentation article.  The data files then drive the code generation of the module in bicep and ARM, while it also updates the README.md file via the bash execution of build.azcli.
As PRs are very welcome, I will create very soon a guide to make this process simpler moving foward. Thank you!


raven service setup not called in development

Because of the early return (L14). What's the thought behind this?
https://github.com/damiencaselli/ember-cli-sentry/blob/bb85f46aeeecafc8b9aec32294559811078ad36a/app/instance-initializers/raven-setup.js#L10-L23

why would it be called if development is true?

why would it be called if development is true?

What else is the purpose of the sentry.development flag? Right now it does nothing.

I think the purpose is to disable sentry for development and testing


Date picker year list goes off the top of the screen

Reproduction: register as an applicant, add a language exam and open its date picker.  Observe the year/month dropdowns rendering incorrectly.
In Safari:

In Chrome:
Opening the button scrolls the page behind the date picker modal every time.
https://github.com/user-attachments/assets/355ca929-f83a-4d17-bc6b-60d125cb238e
Looks like there is a workaround published here: https://github.com/Dogfalo/materialize/issues/6388

I don't think that's a priority, our materialize package is outdated (I plan to update it but that's harder than expected) which will probably solve the issue. Otherwise, we can use the default html date picker


Jetty server to use HOST system env variable if available

Allows setting Jetty HOST in a fashion similar to setting of PORT
Needed to be able to deploy to Openshift

Thanks, @JamesSullivan!


Spatial reference error box is persistent even after corrected.

Environment tested on:
ArcMap 10.6
Steps to reproduce:
Start with a blank map, DO NOT ADD A BASEMAP.
From the line tab, enter the following:
Starting Point: 34.73N 116.948W
Ending Point: 60.236869N 24.895304E
Observe the following error message about the spatial reference:

Add a basemap.

Error persists until either enter is pressed or ending point values are cleared out and re-entered.

After some digging, without a basemap present, the supplied coordinates for the starting and ending points are still valid (the CC parser categorizes it as DD). The validation error message was produced by the SDK and not one of our custom messages. The exception message is thrown during the creation of a geodetic line. A workaround can be applied to check if a layer is present with a valid spatial reference.

@kgonzago I would not call that a work around. The tool is designed to draw a graphic on a map and it needs a map in order to draw that line.

@topowright Current logic allows users to create a line graphic without the presence of a basemap. I added additional logic to handle for that scenario.
A listener was implemented to check for layers added to the map. This will re-validate the the End Point. If a valid spatial reference is present, the validation error will disappear.
Fix is in this PR


Add fast approximate antialiasing (FXAA) to Viewport

This backports FXAA from the master branch.
Preview
GLES3

GLES2

@Calinou why did you move the config from the environment to project settings?

@capnm This was done at clayjohn's request for consistency with MSAA (and how settings will work in 4.0).

Now an project without a def. environment shows a black screen ...

@capnm probably just a missed if statement. Is that happening in GLES2 or GLES3?

:bug: is in GLES3.

Pictures

@capnm Thanks for the images! However, I can't reproduce. Have you merged this into a custom version of Godot? I see you have some project settings that I don't have.

Have you merged this into a custom version of Godot?

Yes, but that shouldn't interfere here, I'll test it again with the current 3.2 tip.
After deactivating the default environment, you have to restart the editor!

I see you have some project settings that I don't have.

They accumulate and sometimes get stuck in the UI from older 3.2 versions. I'll create new project...

After deactivating the default environment, you have to restart the editor!

I didn't do that. I will try again tonight and see if I can reproduce! I'm sure it will be an easy fix. :)

I didn't do that. I will try again tonight and see if I can reproduce! I'm sure it will be an easy fix. :)

Checked again 3.2 tip + this PR (Linux), removed all old Godot's caches and configs, same issue ;)
test-FXAA2.zip

Pictures

I'm sure it will be an easy fix. :)

In fact it was :+1: Thank you both.

Thanks!


Update sdk 34, built with gradle 8.7 in terminal

So I finally figured out:
gradle  clean build publishToMavenLocal
and
gradlew  clean build publishToMavenLocal
Had successful builds. (Still cannot figure out how to successfully gradlew build with Gradle 8.0 in terminal.)* fixed
Was able to output files to localMaven and then import into another Android Studio app.
Within Android Studio can Run OpenStreetMapViewer with
android.targetSdkVersion=   33 or 34
can also change
android-plugin.version= from 7.4.2 to 8.5.2
gradle-7.6.4-bin.zip to 8.7
and then sync and Run OpenStreetMapViewer with
android.targetSdkVersion=   33 or 34
Set target to 34 in this pull request.
Updated: (because of build fail)
set android:maxSdkVersion="28" for WRITE permission

Updated: Figured out Gradle 8.7 enough to compile. Add "dependsOn" in build.gradle files after each build fail.

Run this gradle command with version 8.10 to update gradlew file
gradle wrapper --gradle-version 8.10
I was able to build with
plugin 8.6.0
gradle 8.10

Set compileSdk to 35 and ran gradle build (with GarbageCollectorTest commented out) and updated my local maven repo. My own app used the repo.
Within Android Studio can Run OpenStreetMapViewer with
android.targetSdkVersion= 35
and launch on api  35 virtual device


Solution is to change ZWrite Off to ZWrite On at line 36.  (I see your existing inline comment asking whether this should be a property.)

if zwrite is on though, it will also show up through any object, right?
i wonder why a skybox blocks the outline, i would have thought it would be at the back of the z index :(

I wondered about that too. But it doesn't seem to be an issue. The controller (for example) is still drawn on top of the outline.

But if you put the controller behind another object does the outline still draw on top so you see the outline through other objects (like wall hack)

"should" be fixed with https://github.com/thestonefox/SteamVR_Unity_Toolkit/commit/336cf787a75ebea05f4e0193e583a9a97e7ed2ca

The fix you came up with seems to work as well (and makes more sense).  Thank you!


tabular of a specific attribute of all individuals of a given stage

probably throughout all time

solved by https://github.com/ReMobidyc/ReMobidyc/pull/244


Stance towards original repo

This was originally a fork of https://github.com/imartinez/privateGPT/. However the development speed on the main repo is very slow, and we're way ahead now.
In itself that's not an issue; even if they pick up the pace on privateGPT, they may go into another direction.
What's bothering me is the huge amount of issues and PRs opened over there and left hanging, most of which are already solved here.
I really don't know what the right thing to do is - I'm not a pro of Github etiquette at all, but I guess that going over there and telling the issue openers "hey actually it's already fixed in our version" without prior authorisation from @imartinez isn't a great idea. Also, our repo has diverged a tad too much to be able to just merge it into privateGPT.
What do you think ?

This has been in my mind too lately. In the beginning I was hopping onto their issues to add some support but it seems like he wants to keep a simple boilerplate to offer a quick demo.
It's just a prototype to get you started and less akin to our toolkit approach. We could ask to request a mention of our page for an more embedded approach, where most issues have been fixed also.
Other than simplicity there's no real reason to use privateGPT due to it's lower compatibility and performance.

Let's craft an PR and I'm gonna ping the original repo to add us inside their README

Gonna do this tomorrow. Everyone feel free to add to this conversation.

I was doing some PRs over there but seemed like I was going to end up doing all the work. Going my own way as everyone kind of seems slow. https://github.com/alxspiker/AI-X
Planning to use your console script instead of my own so I can focus on the database and UI part of the development. Going to use my own at this moment as its already purposed towards what I need right now.
Its not actually in a working state right this second but I am planning to have it useable tonight. I just started working on the API so the python script can poll the web server to see if it needs to do anything. I am probably an hour or two away from having the chat working on a que system and streaming to the database so the users can see their message as its written.
Using a PHP server allows me to bypass a lot of the restrictions and dependencies python requires and speeds up development heavily for me.

@alxspiker I can relate to your preference of PHP over Python. Personally, I've started my journey with a PHP-based open-source project over 20 years (PostNuke CMS), and PHP remains my language of choice. I completely understand the benefits of using PHP over PY with the dependencies. ;)
I'm really impressed by your progress so far and the whole current explosion of open source AI solutions reminds me of the time when I started!
I own a small hosting business and if you're interested, I'd be happy to donate any resources you may need for the public facing side of your projects. If you're interested, just drop me an email at<EMAIL_ADDRESS>or contact me on Wire messenger at @atxcowboy.

Keep us updated when the issue is up :)

https://github.com/imartinez/privateGPT/issues/303

He's a masochist:
https://github.com/imartinez/privateGPT/pull/305
I'll close this for now. Maybe on my spare time writing a bot that repsonds to the issues over there.


General protection fault while serving exceptions

Problem:
The iret instruction in isr_handler_stub generates a general protection fault after returning from the fault_handler.
To Reproduce:

Remove the abort() call from fault_handler() and run the kernel, general protection faults will flood the screen.

Expected Result:

Ideally, the kernel should hang because of the infinite loop in boot.s and not because of the abort()

Proposed Solution:

Look into interrupts vs. traps. There are subtle differences in the way iret restores state after each of these
Use different fault handlers for different exceptions

References:

https://stackoverflow.com/questions/25540913/x86-interrupt-service-routine-causes-general-protection-fault
https://stackoverflow.com/questions/10581224/why-does-iret-from-a-page-fault-handler-generate-interrupt-13-general-protectio

Shouldn't happen now in the Rust implementation (0e60a5a666dbb839d51f33f1f2b1d1cca602a120). Eventually, I'll have to write the x86_64 crate myself and that's when this might come up again. Until then, this can be considered to be fixed.


Jenkins plugins.txt Permission denied

Hello
First, many thanks for the project
Any solution for this error in jenkins/Dockerfile?
RUN /usr/local/bin/install-plugins.sh < /usr/share/jenkins/plugins.txt
ERROR: Permission denied

could not found /usr/local/bin/install-plugins.sh in container


bug/FI-1616-badge-overflow

FI-1616
Sets badge count max to single digit to prevent overflow (spacing solutions are too extreme).
Also converts all instances of == to === and simplifies Box component styling.

Codecov Report

Merging #230 (3017e53) into main (35e1a03) will decrease coverage by 0.01%.
The diff coverage is 38.88%.

@@            Coverage Diff             @@
##             main     #230      +/-   ##
==========================================
- Coverage   76.30%   76.28%   -0.02%
==========================================
  Files         184      184
  Lines        4288     4289       +1
  Branches      413      415       +2
==========================================
  Hits         3272     3272
- Misses       1013     1014       +1
  Partials        3        3

Impacted Files
Coverage Δ

client/src/components/Header/Header.tsx
75.00% <ø> (ø)

client/src/components/Header/styles.tsx
100.00% <ø> (ø)

client/src/components/LandingPage/LandingPage.tsx
45.45% <0.00%> (ø)

...c/components/SuiteOptionsPage/SuiteOptionsPage.tsx
3.03% <0.00%> (ø)

...estSuite/TestRunProgressBar/TestRunProgressBar.tsx
58.82% <0.00%> (ø)

...components/TestSuite/TestRunProgressBar/styles.tsx
100.00% <ø> (ø)

...nt/src/components/TestSuite/TestSessionWrapper.tsx
0.00% <ø> (ø)

...nents/TestSuite/TestSuiteDetails/TestGroupCard.tsx
70.00% <ø> (ø)

...ite/TestSuiteDetails/TestListItem/ProblemBadge.tsx
7.14% <ø> (ø)

...ite/TestSuiteDetails/TestListItem/RequestsList.tsx
3.33% <0.00%> (ø)

... and 9 more

Continue to review full report at Codecov.

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


Comment your JavaScript Code fails with Unsafe error when we have function word in comment.

Challenge Comment your JavaScript Code has an issue.
User Agent is: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:46.0) Gecko/20100101 Firefox/46.0.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:
 //This line will be ignored function by Java Script

/* This is a multi-line comment in
    for documenting the functio behaviour.
*/

The test is throwing the following error.When we have a comment with the word function in it.
e.g
//This line will be ignored function by Java Script.
Error: SyntaxError: Unsafe or unfinished function declaration

In "client/commonFramework/detect-unsafe-code-stream.js" we have
if (
code.match(/function/g) &&
!code.match(detectFunctionCall)
) {
return Observable.throw(
new Error('SyntaxError: Unsafe or unfinished function declaration')
);
}
where detectFunctionCall = /function\s*?(|function\s+\w+\s*?(/gi;
So anytime the word "function" appears in your code without an open parenthesis after it, you'll get the above error.
I don't see how this makes your code any safer, since if you really had an exploit that used the naked word "function", you could easily get around this check by putting the string "function(" in a comment above it.

This challenge does not require writing the word function into a comment. Seeing how this is an old challenge and this is the first time someone opened an issue for this, does this require a fix?

It's certainly a low priority, but it's a strange behavior of the code runner that could confuse someone.

Agree it is a low priority. But it certainly is an issue. Specially for a beginner taking this course he/she has no way of identifying the cause of the issue.  Even though the challenge does not require writing the word function. It is natural to describe the behaviour using the word function. If not a code fix I think we should have a note saying do not use the word function in comment. Thanks.

Someone will need to come up with some regex magic ✨  to get this fixed.


Uniform Complement operation

Returns the structural complement of a vector or matrix, filled with a uniform value.

Use this new operation to fix application classification
Add test for application classification

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

43 of 44 (97.73%)  changed or added relevant lines in 3 files are covered.
5 unchanged lines in 2 files lost coverage.
Overall coverage increased (+0.1%) to 85.196%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

mlir_graphblas/ops.py
15
16
93.75%

Files with Coverage Reduction
New Missed Lines
%

mlir_graphblas/engine.py
1
75.84%

mlir_graphblas/tests/test_profile.py
4
51.32%

Totals

Change from base Build<PHONE_NUMBER>:
0.1%

Covered Lines:
4270

Relevant Lines:
5012

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

43 of 44 (97.73%)  changed or added relevant lines in 3 files are covered.
5 unchanged lines in 2 files lost coverage.
Overall coverage increased (+0.1%) to 85.196%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

mlir_graphblas/ops.py
15
16
93.75%

Files with Coverage Reduction
New Missed Lines
%

mlir_graphblas/engine.py
1
75.84%

mlir_graphblas/tests/test_profile.py
4
51.32%

Totals

Change from base Build<PHONE_NUMBER>:
0.1%

Covered Lines:
4270

Relevant Lines:
5012

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

43 of 44 (97.73%)  changed or added relevant lines in 3 files are covered.
5 unchanged lines in 2 files lost coverage.
Overall coverage increased (+0.1%) to 85.196%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

mlir_graphblas/ops.py
15
16
93.75%

Files with Coverage Reduction
New Missed Lines
%

mlir_graphblas/engine.py
1
75.84%

mlir_graphblas/tests/test_profile.py
4
51.32%

Totals

Change from base Build<PHONE_NUMBER>:
0.1%

Covered Lines:
4270

Relevant Lines:
5012

💛  - Coveralls


Update bloodhound.md

Error in the doc

Duplicate of https://github.com/twitter/typeahead.js/pull/1275

Hey, can you close this if it's a dup of #1275??
/cc @antonkatz, @jcrben

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


FeatureSet not changing when Updated

So when I run DataToFeaturesHeavy and use an output name of a FeatureGroup that already exists. It's not properly updating the schema of the FeatureGroup.

This was due to flawed logic that pulled a sample dataframe from the input DataSource, but if the query to build the FeatureSet only contains some of the columns that was wrong. This is now fixed.


Better parsing and output of mod + key press

Currently, ZMK key presses like &kp LG(GRAVE) and &kp LS(LC(TAB)) are output verbatim. It would be nice if they were parsed and output in a prettier way. I am currently modifying my keymap YAML file so they look something like:
  - {t: GRAVE, h: LGUI}
  - {t: TAB, h: LSFT, LCTL}

I think t is supposed to be tap and h hold. maybe there's another thing, m that could place the modifier at the top of the key instead of the bottom?

Ah this looks like it would be fixed by closing https://github.com/caksoylar/keymap-drawer/issues/9#issue-1607529929 too

Hey, that is true, cleaner legends for keys with modifiers is one of the motivations for #9. However I don't know a cleaner way to display them without using icons -- let me know if you have any ideas. Maybe we could at least chop off the L/R prefix from modifier functions.
By the way sublegends at the top of the key is currently supported with shifted/s field, see the key spec here. They are supposed to represent shifted version of keys, e.g. {t: 1, s: !} or alternative functions via mod-morph, but they aren't parsed from the keymaps yet. You are free to reuse them to display other things, of course 😄

I think the icons is a good idea. Do you think that we could build it into the config the ability to customize what modifiers are output as?
parse_config:
  mod_map:
    GUI: ⌘
    CTRL: ⌃
    ALT: ⎇
    SHIFT: ⇧

Then the parser could then map the various representations of mods, e.g. &kp LG(GRAVE) to
⌘`

And &kp LS(LC(TAB)) to ⇧⌃ TAB

Yeah, that sounds good. I'll close this and copy your comment to #9.


Does this work for older MacOS?

Hi Yeboster,
I have installed and enabled this plugin in my Obsidian, but unfortunately I can't seem to get it to work - I don't see any autocomplete options pop up as I type :(
I have an older Macbook that is running an older OS - macOS Catalina 10.15.7.
Do you think this older OS might be the issue perhaps?
Thanks so much for the help!
Matt

I seem to have this issue on an older linux laptop as well. I think in some cases it may just not work though I have a feeling it may be because of conflicts with other plugins.

I am on windows and I don't get any results as well

I am on Windows 10, Obsidian v0.15.6 and this plugin doesn't seem to work for me either.

Same here, nothing happening. M1 macbook


Change name of field in the client

Is your feature request related to a problem? Please describe.
Related to other discussions, I'm trying to change the name of the "Structure level" field in the user-detail view to be "pronouns" instead. I feel like I'm missing something obvious that means the change isn't reflected in the browser.
Describe the solution you'd like
Any way for it to show "pronouns" as the field header. Using custom translations doesn't work because the base language is English.
Describe alternatives you've considered
I've been trying to change this, as follows:
In client/src/app/site/users/components/user-detail/user-detail.component.html I have updated the <ng-template #showView> section like so

Pronouns

        {{ user.structure_level }}

I then run ./build.sh client from within the docker folder, and docker-compose restart client. However when I refresh the browser, the change is not shown.
I feel like it's something very obvious that I've missed, sorry - just a step I forgot but can't work out.
Additional context
OS is Ubuntu 18.04 . Using OpenSlides v3.4

Any way for it to show "pronouns" as the field header. Using custom translations doesn't work because the base language is English.

This is a bug, but a minor one. English does not support custom translations yet. This will most likely not change with 3.4.1 but in 4.0.
Custom pronoun support will would be added as a custom field on 4.1 oder later (if, any), as described in the other issue.
For changing the template, you need to get into developing OpenSlides and building your custom version.
You will want to use 3.4 for the time being (just trust me on this).
Thus, follow this documentation until until make run-dev.
Effectively, you are adjusting your client (and nothing else). The client is static code. You will need to build the client and deliver it on your own web server.


DM/WebUI: ignore-tables is empty in task details

What did you do?
As described in https://asktug.com/t/topic/1028447.
Config as follows:
block-allow-list:
bw-rule-1:
do-dbs: [“next_"]
ignore-tables:

db-name: "next_”
tbl-name: “tmp*”
db-name: “next_"
tbl-name: "temp”

Start task:

What did you expect to see?
There are rules as below in ignore tables:

db-name: "next_”
tbl-name: “tmp*”
db-name: “next_"
tbl-name: "temp”

What did you see instead?
Check task details in WebUI

Versions of the cluster
DM version (run dmctl -V or dm-worker -V or dm-master -V):
(paste DM version here, and you must ensure versions of dmctl, DM-worker and DM-master are same)

Upstream MySQL/MariaDB server version:
(paste upstream MySQL/MariaDB server version here)

Downstream TiDB cluster version (execute SELECT tidb_version(); in a MySQL client):
(paste TiDB cluster version here)

How did you deploy DM: tiup or manually?
(leave TiUP or manually here)

Other interesting information (system version, hardware config, etc):
>
>

v8.1.0
current status of DM cluster (execute query-status <task-name> in dmctl)
(paste current status of DM cluster here)

/severity moderate

/found comminity

/found community


Rez pip install package errors and warnings on Linux

Using Rez 2.100.0 and commit 1fc378b trying to install the package locally:
$ rez pip -i .

Everything is working well but I have the warnings:
21:49:20 WARNING  Metadata: missing: ['Author'], warnings: []
21:49:20 WARNING  Metadata: missing: ['Home-page', 'Author'], warnings: []
21:49:21 WARNING  Ignoring extras requested on 'python-socketio[client]==5.4.0' - this is not yet supported

And this error:
Traceback (most recent call last):
  File "/home/josephhenry/rez/bin/rez/rez", line 8, in <module>
    sys.exit(run_rez())
  File "/home/josephhenry/rez/lib/python3.7/site-packages/rez/cli/_entry_points.py", line 80, in run_rez
    return run()
  File "/home/josephhenry/rez/lib/python3.7/site-packages/rez/cli/_main.py", line 202, in run
    returncode = run_cmd()
  File "/home/josephhenry/rez/lib/python3.7/site-packages/rez/cli/_main.py", line 194, in run_cmd
    return func(opts, opts.parser, extra_arg_groups)
  File "/home/josephhenry/rez/lib/python3.7/site-packages/rez/cli/pip.py", line 84, in command
    extra_args=opts.extra)
  File "/home/josephhenry/rez/lib/python3.7/site-packages/rez/pip.py", line 357, in pip_install_package
    name_casings=dist_names
  File "/home/josephhenry/rez/lib/python3.7/site-packages/rez/utils/pip.py", line 396, in get_rez_requirements
    is_pure_python = is_pure_python_package(installed_dist)
  File "/home/josephhenry/rez/lib/python3.7/site-packages/rez/utils/pip.py", line 338, in is_pure_python_package
    wheel_data = setuptools_dist.get_metadata('WHEEL')
AttributeError: 'NoneType' object has no attribute 'get_metadata'

The error might be due to the missing tractor package but we need to make a package out of this.
Then if I try to run the env with silex_client, I get the following:
$ rez env silex_client
21:57:30 ERROR    PackageFamilyNotFoundError: package family not found: typing_extensions, was required by: aiohttp (searched: /home/josephhenry/packages; /home/josephhenry/.rez/packages/int; /home/josephhenry/.rez/packages/ext)

Finally trying to install typing_extensions with rez-pip gives me an error:
=> Here is the related issue: https://github.com/nerdvegas/rez/issues/1159#issue-1063846767
I am running Python 3.7.9 on Linux pop-os 5.13.0-7620-generic

It works now with the latest fixed from Rez (v2.103.1): https://github.com/nerdvegas/rez/commit/5c6c8eb78beb02fe8902d39e313cceafb8a0bd66
I was able to do rez pip -i . from silex_client and then rez env silex_client successfully!


Fix return of user list. - [closed]

In GitLab by @wknet123 on Mar 20, 2018, 10:24
Merges dev-devops -> dev-devops

In GitLab by @wknet123 on Nov 13, 2019, 10:42
The test coverage for backend is  %   and for frontend is 38.11%   check console log

In GitLab by @wknet123 on Nov 13, 2019, 10:42
the it is failed check console log

In GitLab by @wknet123 on Nov 13, 2019, 10:42
The test coverage for backend is  %   and for frontend is 38.11%   check console log

In GitLab by @wknet123 on Nov 13, 2019, 10:42
the it is failed check console log

In GitLab by @wknet123 on Nov 13, 2019, 10:42
closed


SAMZA-1132: LocalApplicationRunner for StreamApplication

LocalApplicationRunner runs the StreamApplication locally on every node that the application is deployed to. LocalRunner.start() is blocking until the process is killed or user invoke LocalRunner.stop() from another thread. It can be configured to use Zk for coordination.

I have tested with an integration tests (https://github.com/xinyuiscool/examples/blob/master/TestZkLocalApplicationRunner.java). Tried partionBy() and map() and then sendTo(). All works now.
I will add unit tests to this soon.

I consolidated the processorId generation part into StreamProcessor constructor, and then pass it into Coordinator and ContainerController. Now the logic should be much cleaner.

I consolidated the processorId generation part into StreamProcessor constructor, and then pass it into Coordinator and ContainerController. Now the logic should be much cleaner.

I am currently working on refactoring the interaction between StreamProcessor/JobCoordinator/Container. I think the goal is for the StreamProcessor to listen to JobCoordinator events and accordingly, manage the container lifecycle. This way, we de-couple jobcoordinator from container lifecycle. While it makes sense for processorId to come from StreamProcessor to make it for LocalApplicationRunner, I think the change to JobCoordinatorFactory to include processorId is incorrect and should have been called out explicitly in the PR.
In future, please document motivations for changing samza-core apis as well. It impacts other developers relying on the samza-core interface.
In general, please seek for explicit approvals from committers who have explicitly given a -1 in the PR before committing the code. While it defies the general commit policy followed in Apache projects, more importantly, it impacts the productivity of other project developers, and ultimately, the progress of the project itself. Thanks!

Apologies for committing it before +1 form everyone in the reviews. Chatted with @navina offline and this patch is the first attempt to define the contract between ApplicationRunner and StreamProcessor. @navina will have a much better implementation of the life cycle management of StreamProcessor and its components.

@xinyuiscool @nickpan47 Also, looks like LocalApplicationRunner is managing StreamProcessor directly. Is the plan to add the (no-op) LocalJobRunner layer later? If not, can we update SEP-2?


Add README.md

We kind of nead that :D

Yes, 13 months later, you really do.  Especially since other projects, such as simdjason are now linking to your project.  I'm particularly curious, as a casual rust dabbler, why there appear to be only subdirs in the src/ directory that (by name) only seem to target ARM architecutres.  (See, a good README.md would make this clear)


Use latest changesets, fix changesets config

@dotansimha
Some errors occurred when validating the changesets config:
The package or glob expression "integration-tests" is specified in the `ignore` option but it is not found in the project. You may have misspelled the package name or provided an invalid glob expression. Note that glob expressions must be defined according to https://www.npmjs.com/package/micromatch.


NoMethodError: undefined method `[]' for nil:NilClass

https://github.com/nervosnetwork/ckb-demo-ruby-sdk#user-defined-token-which-uses-only-one-cell-per-wallet
[130] pry(main)> bob_cell_token2.send_tokens(12345, alice_cell_token2)
NoMethodError: undefined method `[]' for nil:NilClass
from /home/u2/nervos/ckb-demo-ruby-sdk/lib/ckb/udt_wallet.rb:242:in `block in get_unspent_cells'

@u2 @classicalliu Is this not able to reproduce? Should we close this?

@u2 @classicalliu Is this not able to reproduce? Should we close this?

@u2 Do you have more informations, and does the node get any error?


Provide enable information on Finalize Build Cache Configuration Build Operation

This information is required on the Build Scan Plugin. The implementation respects the fact that Build Cache Service instances need to be not instantiated when the configuration disable them somehow.

LGTM.


Naming: min/max horizontal reductions.

Currently the min/max horizontal reductions are named: min and max.
That is: a.max() returns the largest element in the vector.
However, it isn't unthinkable that we might want to add vertical min/max methods some day: a.max(b) returning lane-wise min/max.
I would be more comfortable with giving the horizontal min/max reductions a different name.

These have been named min_element/max_element to differentiate them from the vertical min/max reductions.


Fix app icon(s)

After deployment of version 1.0.0 to Splunk Enterprise, no app icons appear.

Issue has been validated as resolved; result of several re-deployments and service restarts.


Error setting the vlan when using cloudlab

2024-01-04 09:49:27,253 [controller.py:171] [ERROR] [exitval=255,code=2,output=Could not apply parameter set to script
Traceback (most recent call last):
File "/tmp/genilib/50747.py", line 104, in
lan.setVlanTag(params.vlan)
AttributeError: 'Link' object has no attribute 'setVlanTag'
Jail py-cage-50753 execution failed with exit code 1
*** start-experiment:
Traceback (most recent call last):
File "/tmp/genilib/50747.py", line 104, in
lan.setVlanTag(params.vlan)
AttributeError: 'Link' object has no attribute 'setVlanTag'
Jail py-cage-50753 execution failed with exit code 1

@disprosium8
cc: @xi-yang
There is a new issue with cloudlab. The error looks like it is on the sever side.
Please see above. Who do we need to talk to?

Leigh Stoller<EMAIL_ADDRESS>is the point of contact for CloudLab. You can ask him directly or ask Ezra to relay the message.

@disprosium8 cc: @xi-yang
There is a new issue with cloudlab. The error looks like it is on the sever side. Please see above. Who do we need to talk to?

@xi-yang Yes I have slacked him and cced Ezra.

Issue fixed on cloudlab side.


exercising submission in the dev container doesn't leave the submission in the app container's files.

When exercising submitting a draft, the xml and generated formats do not land in a place the app container can see.
In the celery container they appear to be in /workspace/test/id/

Trying to reproduce, I see the files being uploaded to /workspace/test/staging/, then moved to /workspace/test/id/ when the draft is posted. These are visible in these locations both in the celery container and in the app container, but they do not show up on the draft page.
Is that what you're experiencing?

I'd have to repeat the exercise as I've destroyed that set of containers in the interim, but I don't think there was anything in /workspace/test/id/ in the app container. But even if there was, why is it landing there?
But yes, "does not show up on the draft page" is the underlying motivation for figuring this out.

It's in submit/utils.py:
def move_files_to_repository(submission):
    for ext in settings.IDSUBMIT_FILE_TYPES:
        source = os.path.join(settings.IDSUBMIT_STAGING_PATH, '%s-%s.%s' % (submission.name, submission.rev, ext))
        dest = os.path.join(settings.IDSUBMIT_REPOSITORY_PATH, '%s-%s.%s' % (submission.name, submission.rev, ext))

where those settings, in the default settings_local.py that a clean vscode checkout sets up, are
IDSUBMIT_REPOSITORY_PATH = "test/id/"
IDSUBMIT_STAGING_PATH = "test/staging/"

whereas, in doc/models.py,
    def get_file_path(self):
        if not hasattr(self, '_cached_file_path'):
            if self.type_id == "draft":
                if self.is_dochistory():
                    self._cached_file_path = settings.INTERNET_ALL_DRAFTS_ARCHIVE_DIR
                else:
                    if self.get_state_slug() == "rfc":
                        self._cached_file_path = settings.RFC_PATH
                    else:
                        draft_state = self.get_state('draft')
                        if draft_state and draft_state.slug == 'active':
                            self._cached_file_path = settings.INTERNET_DRAFT_PATH
                        else:
                            self._cached_file_path = settings.INTERNET_ALL_DRAFTS_ARCHIVE_DIR

is using entirely different paths for drafts. If I change settings.INTERNET_DRAFT_PATH to settings.IDSUBMIT_REPOSITORY_PATH in that method, the draft view finds the file.

Good diagnostic change, but not the change to make to fix the issue.
As I feared, we really need to fix this by fixing #6186.

Yes, the change was just diagnostic. Short of fixing #6186 we can probably change the values of the paths in settings_local.py to match in a way that makes this work. There's some risk that will encourage incorrect use of those variables but it might be a tolerable stopgap until we untangle that.

If I change settings_local.py to keep IDSUBMIT_REPOSITORY_PATH = INTERNET_DRAFT_PATH after the latter is modified and merge the fix in #6217, posting a submission seems to work cleanly for me. That causes posted drafts to end up in /assets/ietf-ftp/internet-drafts/ in the app-assets Docker volume.

closing this - reopen if there's some action implied that's not already captured by another issue


Taylor/readme tests

:tada: This PR is included in version 1.32.0 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Recursion depth exceeded

So I am pretty sure that this is an issue on my end, therefore sorry for bothering.
I am using a very limited SQL grammar and I run into recursion depth errors rather quickly when testing Mixtral 8x7b on a SQL-benchmark named EHRSQL (https://github.com/glee4810/EHRSQL)
Versions
Python 3.11.7
transformers-CFG, sha 651dca0265d159b6207838da5d0012e53fdb2f0d
Reproduce
Please note the recursion limit and the resource increase at the top of the reproduction script. Feel free to comment it out, I just wanted to point out that this issue can not be solved by simply increasing the recursion limit - I suppose the underlying recursion is infinite.
import torch
from transformers import AutoTokenizer, BitsAndBytesConfig, GenerationConfig
from transformers.models.mixtral import MixtralForCausalLM
from transformers_cfg.grammar_utils import IncrementalGrammarConstraint
from transformers_cfg.generation.logits_process import GrammarConstrainedLogitsProcessor
import resource, sys

resource.setrlimit(resource.RLIMIT_STACK, (2**29, -1))

sys.setrecursionlimit(10**4)

PROMPT = """
   [INST] You are a natural language to SQL translator.
For the given schema, output the SQL query you need to answer the problem.

The problem is given below in natural language.
If part of the problem can not be accomplished using SQL queries, for example visualization requests,
only output the most meaningful sql query that returns the data required for the problem.
Additionally, here are the CREATE TABLE statements for the schema:
{create_tables}

Do not include the CREATE TABLE statements in the SQL query. Do not write anything after the SQL query.
Do not write anything other than the SQL query - no comments, no newlines, no print statements.

Problem: {problem}
[/INST]
   """

MIMIC_III_TABLES = """
CREATE TABLE PATIENTS
(
   ROW_ID INT NOT NULL PRIMARY KEY,
   SUBJECT_ID INT NOT NULL UNIQUE,
   GENDER VARCHAR(5) NOT NULL,
   DOB TIMESTAMP(0) NOT NULL,
   DOD TIMESTAMP(0)
);

CREATE TABLE ADMISSIONS
(
   ROW_ID INT NOT NULL PRIMARY KEY,
   SUBJECT_ID INT NOT NULL,
   HADM_ID INT NOT NULL UNIQUE,
   ADMITTIME TIMESTAMP(0) NOT NULL,
   DISCHTIME TIMESTAMP(0),
   ADMISSION_TYPE VARCHAR(50) NOT NULL,
   ADMISSION_LOCATION VARCHAR(50) NOT NULL,
   DISCHARGE_LOCATION VARCHAR(50),
   INSURANCE VARCHAR(255) NOT NULL,
   LANGUAGE VARCHAR(10),
   MARITAL_STATUS VARCHAR(50),
   ETHNICITY VARCHAR(200) NOT NULL,
   AGE INT NOT NULL,
   FOREIGN KEY(SUBJECT_ID) REFERENCES PATIENTS(SUBJECT_ID)
);

CREATE TABLE D_ICD_DIAGNOSES
(
   ROW_ID INT NOT NULL PRIMARY KEY,
   ICD9_CODE VARCHAR(10) NOT NULL UNIQUE,
   SHORT_TITLE VARCHAR(50) NOT NULL,
   LONG_TITLE VARCHAR(255) NOT NULL
);

CREATE TABLE D_ICD_PROCEDURES
(
   ROW_ID INT NOT NULL PRIMARY KEY,
   ICD9_CODE VARCHAR(10) NOT NULL UNIQUE,
   SHORT_TITLE VARCHAR(50) NOT NULL,
   LONG_TITLE VARCHAR(255) NOT NULL
);

CREATE TABLE D_LABITEMS
(
   ROW_ID INT NOT NULL PRIMARY KEY,
   ITEMID INT NOT NULL UNIQUE,
   LABEL VARCHAR(200) NOT NULL
);

CREATE TABLE D_ITEMS
(
   ROW_ID INT NOT NULL PRIMARY KEY,
   ITEMID INT NOT NULL UNIQUE,
   LABEL VARCHAR(200) NOT NULL,
   LINKSTO VARCHAR(50) NOT NULL
);

CREATE TABLE DIAGNOSES_ICD
(
   ROW_ID INT NOT NULL PRIMARY KEY,
   SUBJECT_ID INT NOT NULL,
   HADM_ID INT NOT NULL,
   ICD9_CODE VARCHAR(10) NOT NULL,
   CHARTTIME TIMESTAMP(0) NOT NULL,
   FOREIGN KEY(HADM_ID) REFERENCES ADMISSIONS(HADM_ID),
   FOREIGN KEY(ICD9_CODE) REFERENCES D_ICD_DIAGNOSES(ICD9_CODE)
);

CREATE TABLE PROCEDURES_ICD
(
   ROW_ID INT NOT NULL PRIMARY KEY,
   SUBJECT_ID INT NOT NULL,
   HADM_ID INT NOT NULL,
   ICD9_CODE VARCHAR(10) NOT NULL,
   CHARTTIME TIMESTAMP(0) NOT NULL,
   FOREIGN KEY(HADM_ID) REFERENCES ADMISSIONS(HADM_ID),
   FOREIGN KEY(ICD9_CODE) REFERENCES D_ICD_PROCEDURES(ICD9_CODE)
);

CREATE TABLE LABEVENTS
(
   ROW_ID INT NOT NULL PRIMARY KEY,
   SUBJECT_ID INT NOT NULL,
   HADM_ID INT NOT NULL,
   ITEMID INT NOT NULL,
   CHARTTIME TIMESTAMP(0),
   VALUENUM DOUBLE PRECISION,
   VALUEUOM VARCHAR(20),
   FOREIGN KEY(HADM_ID) REFERENCES ADMISSIONS(HADM_ID),
   FOREIGN KEY(ITEMID) REFERENCES D_LABITEMS(ITEMID)
);

CREATE TABLE PRESCRIPTIONS
(
   ROW_ID INT NOT NULL PRIMARY KEY,
   SUBJECT_ID INT NOT NULL,
   HADM_ID INT NOT NULL,
   STARTDATE TIMESTAMP(0) NOT NULL,
   ENDDATE TIMESTAMP(0),
   DRUG VARCHAR(100) NOT NULL,
   DOSE_VAL_RX VARCHAR(120) NOT NULL,
   DOSE_UNIT_RX VARCHAR(120) NOT NULL,
   ROUTE VARCHAR(120) NOT NULL,
   FOREIGN KEY(HADM_ID) REFERENCES ADMISSIONS(HADM_ID)
);

CREATE TABLE COST
(
   ROW_ID INT NOT NULL PRIMARY KEY,
   SUBJECT_ID INT NOT NULL,
   HADM_ID INT NOT NULL,
   EVENT_TYPE VARCHAR(20) NOT NULL,
   EVENT_ID INT NOT NULL,
   CHARGETIME TIMESTAMP(0) NOT NULL,
   COST DOUBLE PRECISION NOT NULL,
   FOREIGN KEY(HADM_ID) REFERENCES ADMISSIONS(HADM_ID),
   FOREIGN KEY(EVENT_ID) REFERENCES DIAGNOSES_ICD(ROW_ID),
   FOREIGN KEY(EVENT_ID) REFERENCES PROCEDURES_ICD(ROW_ID),
   FOREIGN KEY(EVENT_ID) REFERENCES LABEVENTS(ROW_ID),
   FOREIGN KEY(EVENT_ID) REFERENCES PRESCRIPTIONS(ROW_ID)
);

CREATE TABLE CHARTEVENTS
(
   ROW_ID INT NOT NULL PRIMARY KEY,
   SUBJECT_ID INT NOT NULL,
   HADM_ID INT NOT NULL,
   ICUSTAY_ID INT NOT NULL,
   ITEMID INT NOT NULL,
   CHARTTIME TIMESTAMP(0) NOT NULL,
   VALUENUM DOUBLE PRECISION,
   VALUEUOM VARCHAR(50),
   FOREIGN KEY(HADM_ID) REFERENCES ADMISSIONS(HADM_ID),
   FOREIGN KEY(ICUSTAY_ID) REFERENCES ICUSTAYS(ICUSTAY_ID),
   FOREIGN KEY(ITEMID) REFERENCES D_ITEMS(ITEMID)
);

CREATE TABLE INPUTEVENTS_CV
(
   ROW_ID INT NOT NULL PRIMARY KEY,
   SUBJECT_ID INT NOT NULL,
   HADM_ID INT NOT NULL,
   ICUSTAY_ID INT NOT NULL,
   CHARTTIME TIMESTAMP(0) NOT NULL,
   ITEMID INT NOT NULL,
   AMOUNT DOUBLE PRECISION,
   FOREIGN KEY(HADM_ID) REFERENCES ADMISSIONS(HADM_ID),
   FOREIGN KEY(ICUSTAY_ID) REFERENCES ICUSTAYS(ICUSTAY_ID),
   FOREIGN KEY(ITEMID) REFERENCES D_ITEMS(ITEMID)
);

CREATE TABLE OUTPUTEVENTS
(
   ROW_ID INT NOT NULL PRIMARY KEY,
   SUBJECT_ID INT NOT NULL,
   HADM_ID INT NOT NULL,
   ICUSTAY_ID INT NOT NULL,
   CHARTTIME TIMESTAMP(0) NOT NULL,
   ITEMID INT NOT NULL,
   VALUE DOUBLE PRECISION,
   FOREIGN KEY(HADM_ID) REFERENCES ADMISSIONS(HADM_ID),
   FOREIGN KEY(ICUSTAY_ID) REFERENCES ICUSTAYS(ICUSTAY_ID),
   FOREIGN KEY(ITEMID) REFERENCES D_ITEMS(ITEMID)
);

CREATE TABLE MICROBIOLOGYEVENTS
(
   ROW_ID INT NOT NULL PRIMARY KEY,
   SUBJECT_ID INT NOT NULL,
   HADM_ID INT NOT NULL,
   CHARTTIME TIMESTAMP(0) NOT NULL,
   SPEC_TYPE_DESC VARCHAR(100),
   ORG_NAME VARCHAR(100),
   FOREIGN KEY(HADM_ID) REFERENCES ADMISSIONS(HADM_ID)
);

CREATE TABLE ICUSTAYS
(
   ROW_ID INT NOT NULL PRIMARY KEY,
   SUBJECT_ID INT NOT NULL,
   HADM_ID INT NOT NULL,
   ICUSTAY_ID INT NOT NULL,
   FIRST_CAREUNIT VARCHAR(20) NOT NULL,
   LAST_CAREUNIT VARCHAR(20) NOT NULL,
   FIRST_WARDID SMALLINT NOT NULL,
   LAST_WARDID SMALLINT NOT NULL,
   INTIME TIMESTAMP(0) NOT NULL,
   OUTTIME TIMESTAMP(0),
   FOREIGN KEY(HADM_ID) REFERENCES ADMISSIONS(HADM_ID)
);

CREATE TABLE TRANSFERS
(
   ROW_ID INT NOT NULL PRIMARY KEY,
   SUBJECT_ID INT NOT NULL,
   HADM_ID INT NOT NULL,
   ICUSTAY_ID INT,
   EVENTTYPE VARCHAR(20) NOT NULL,
   CAREUNIT VARCHAR(20),
   WARDID SMALLINT,
   INTIME TIMESTAMP(0) NOT NULL,
   OUTTIME TIMESTAMP(0),
   FOREIGN KEY(HADM_ID) REFERENCES ADMISSIONS(HADM_ID)
);
"""

def generate_one(
   model,
   tokenizer,
   processors,
   question: str,
   identifier: str,
   device="cpu",
):
   gen_config = GenerationConfig(**(model.generation_config.to_dict()))
   prompt = PROMPT.format(
       create_tables=MIMIC_III_TABLES,
       problem=question,
   )
   input_ids = tokenizer(
       [prompt], add_special_tokens=False, return_tensors="pt", padding=True
   )["input_ids"].to(device)
   output = model.generate(
       input_ids,
       max_new_tokens=200,
       logits_processor=processors,
       num_return_sequences=1,
       generation_config=gen_config,
   )
   return {identifier: tokenizer.batch_decode(output, skip_special_tokens=True)[0]}

if __name__ == "__main__":
   # Detect if GPU is available, otherwise use CPU
   device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
   print(f"Using device: {device}")

   model_id = "mistralai/Mixtral-8x7B-Instruct-v0.1"
   quantization_config = BitsAndBytesConfig(
       load_in_4bit=True,
       bnb_4bit_quant_type="nf4",
       bnb_4bit_compute_dtype="float16",
   )
   model = MixtralForCausalLM.from_pretrained(
       model_id, quantization_config=quantization_config, device_map="auto"
   )

   # Load model and tokenizer
   tokenizer = AutoTokenizer.from_pretrained(model_id)
   tokenizer.pad_token = tokenizer.eos_token
   model.generation_config.pad_token_id = model.generation_config.eos_token_id

   # Load sql grammar
   with open("examples/grammars/sql_query.ebnf", "r") as file:
       grammar_str = file.read()
   grammar = IncrementalGrammarConstraint(grammar_str, "root", tokenizer)
   grammar_processor = GrammarConstrainedLogitsProcessor(grammar)

   # Generate
   question = "what is lidocaine 5% ointment's way of ingesting it?"

   generate_one(
       model,
       tokenizer,
       [grammar_processor],
       question,
       "qid",
       device=model.device,
   )

Grammar
# Grammar for subset of SQL only allowing SELECT queries
# String doesn't support unicode and escape yet

root ::= query

query ::= "SELECT" ws attributes ws "FROM" ws tables ws ("WHERE" ws condition)? ws ("GROUP BY" ws attribute)? ws ("ORDER BY" ws order)? ws ("LIMIT" ws number)? ws ("OFFSET" ws number)? ws ";"

attribute ::= string

attributes ::= attribute ("," attribute)*

table ::= string

join ::= "JOIN" | "LEFT JOIN" | "RIGHT JOIN" | "FULL JOIN" | "INNER JOIN"

join_condition ::= attribute "=" attribute

tables ::= table (join table "ON" join_condition)*

condition ::= attribute "=" value | attribute "<" value | attribute ">" value | attribute "<=" value | attribute ">=" value | attribute "!=" value | attribute "LIKE" value | "(" condition ")" | condition "AND" condition | condition "OR" condition | attribute "IS" "NULL" | attribute "IS" "NOT" "NULL" | attribute "IN" "(" value ("," value)* ")"

order ::= attribute ("ASC" | "DESC")?

value ::= string | number

string ::= [ \t!#-\[\]-~]* ws

number ::= ("-"? ([0-9] | [1-9] [0-9]*)) ("." [0-9]+)? ([eE] [-+]? [0-9]+)? ws

ws ::= (" " | "\t" | "\n")

After messing around with, here's a SQL grammar that works
# Grammar for subset of SQL only allowing SELECT queries
# String doesn't support unicode and escape yet

root ::= query

query ::= "SELECT" ws attributes ws "FROM" ws tables ws ("WHERE" ws condition)? ws ("GROUP BY" ws attribute)? ws ("ORDER BY" ws order)? ws ("LIMIT" ws number)? ws ("OFFSET" ws number)? ws ";"

attribute ::= string

attributes ::= attribute ("," attribute)*

table ::= string

join ::= "JOIN" | "LEFT JOIN" | "RIGHT JOIN" | "FULL JOIN" | "INNER JOIN"

join_condition ::= attribute "=" attribute

tables ::= table (join table "ON" join_condition)*

condition ::= attribute "=" value | attribute "<" value | attribute ">" value | attribute "<=" value | attribute ">=" value | attribute "!=" value | attribute "LIKE" value | attribute "IS" "NULL" | attribute "IS" "NOT" "NULL" | attribute "IN" "(" value ("," value)* ")"

order ::= attribute ("ASC" | "DESC")?

value ::= string | number

string ::= [ \t!#-\[\]-~]* ws

number ::= ("-"? ([0-9] | [1-9] [0-9]*)) ("." [0-9]+)? ([eE] [-+]? [0-9]+)? ws

ws ::= ([ \t\n] ws)?

Please note that the only difference is the absence of conditions in the condition definition

@sorgfresser Thanks for reporting! You are absolutely right. The reason you get this error is due to the condition statement being "left-recursive," for example:
S ::= S "abc" | ε      # left-recursive
S ::= "abc" S | ε     # right-recursive

Our parser, a recursive descent parser, does not support left-recursion, which is indeed a known limitation.
The general solution is to rewrite the rules to remove left-recursion (this is always possible).
For example, for the rule S ::= S "abc", you can rewrite it as:
S ::= "abc" S'
S' ::= "abc" S' | ε

In this transformation:

The original left-recursive rule S ::= S "abc" has been eliminated.
S now derives S' after starting with "abc".
S' handles repetition by allowing further derivations of "abc" followed by S' or terminating with ε (epsilon), which represents an empty string.

This transformation ensures the grammar can be parsed by a recursive descent parser, which cannot handle left-recursive rules.

Thank you very much for the detailed explanation, I learned quite a lot this way! I will close the issue now as this problem can be solved easily by rewriting parts of the grammar - after doing this, the issue does not occur anymore for me.
My SQL grammar is supposed to be limited to SELECT queries (as this is what I'm interested in) and is therefore definitely not a complete grammar for the SQL language. Nonetheless: should I add a PR for the grammar? It's quite useful for text-2-SQL tasks for me.

@sorgfresser Yep, definitely, feel free to create a PR and I will be happy to merge it :)


📃: Quiz App using Typescript

:red_circle: Title :Quiz App using Typescript
:red_circle: Aim :To build a  quiz application  with help of typescript
:red_circle: Tech Stack Used : Typescript,React and Tailwind
Screenshots 📷
N/A

:white_check_mark: To be Mentioned while taking the issue :

Full name : Madhavan V
What is your participant role? GSSOC24

Happy Contributing 🚀
All the best. Enjoy your open source journey ahead. 😎

@Madhavan112 go ahead.


Tilde ~ not working anymore - German Keyboard Layout

I confirm (by marking "x" in the [ ] below: [x]):

[x] This is not a troubleshooting question. Troubleshooting questions go here: http://www.mattermost.org/troubleshoot/.
[x] This doesn't reproduce on web browsers (such as in Chrome). If it does, issue reports go to the Mattermost Server repository.
[x] I have read contributing guidelines.

Summary
Tilde [~] used for strike-through is not generated anymore when pressing Alt Gr and + on German keyboard.
Environment

Operating System: Win 10 x64 Enterprise - 10.0.17134 Build 17134
Mattermost Desktop App version: 4.2.3
Mattermost Server version: 5.14.2

Steps to reproduce
Make sure you have German keyboard layout and press Alt Gr and + to input ~ character. (Does not matter if in Edit Post or directly in chat window.)
Expected behavior
Alt Gr and + should input ~ character.
Observed behavior
Focus is switching between multiple parts of the window.
Possible fixes
None
Work around
At the moment, I have to input the tilde character in another window and copy paste it to Mattermost to be able to strike text. This is very frustrating and inconvienient.

Same Problem here with Desktop App version: 4.2.1

Opened a bug ticket here: https://mattermost.atlassian.net/browse/MM-19659.

Hi @th-joerger @HighwindProject can you please upgrade to v5.15 or later and this issue should be fixed

@esethna Thanks for the update!
The commit in question, for those interested


Wrong or non-portable path to 'env'

The opeth executable as installed by luarocks has #!/bin/env moon as shebang. On my Debian 9 system, the path to env is /usr/bin/env.

The path where some distros points to env is /usr/bin and others point to is/bin.
So I'm ambivalent about either #!/usr/bin/env or #!/bin/env.
Are there any ideas?

On macos, the path is also #!/usr/bin/env


Columns that appear in both insert and returning sections are not inserted

Version: 2.5.4
Module: probably all, but quill-jdbc for sure
Database: Postgres
Example:
final case class Customer(email: String, customerId: UUID)

def findOrInsert(email: String): Customer = {
  val customerId = run(
      query[Customer]
      .insert(
        _.email -> lift(email),
        _.customerId -> infix"uuid_generate_v4()".as[UUID]
      )
      .onConflictIgnore(_.email)
      .returning(_.customerId)
  )
  Customer(email = email, customerId = customerId)
}

The above generates the following:
INSERT INTO customers (email) VALUES (?) ON CONFLICT (email) DO NOTHING

I tried removing the onConflictIgnore as well as passing the value for customerId via lift(UUID.randomUUID()). No change in behavior was observed until I removed the .returning(_.customerId) clause, at which point I get:
INSERT INTO customers (email,customer_id) VALUES (?, uuid_generate_v4()) ON CONFLICT (email) DO NOTHING

Expected behavior
Columns that appear in insert should be included in the generated insert, even when they also appear in returning sections.
Actual behavior
Steps to reproduce the behavior
Here's a scastie that shows the missing insert when returning is present
Workaround
None that I can find.
@getquill/maintainers

After browsing around, I found this:
https://github.com/getquill/quill/blob/5b11a6ac78da8577d918b33a9f4f4b2785bc1aad/quill-core/src/main/scala/io/getquill/norm/NormalizeReturning.scala#L21
Which means this isn't just a weird edge case I can fix, but rather an intentional design decision that I'm guessing is there to enable inserting a whole case class but ignoring the primary key column. I see the utility of being able to do that, but question the decision since it would seem to also assume that returning could only ever function on a single column which isn't true for postgres.
@mentegy - do you have any ideas about how these two cases might be distinguished from one another to remove this limitation? I don't know the Ast model well enough to have any reasonable guesses about how to go about removing this limitation.

Hello, sorry for a delayed response, a workaround for this issue would be like:
def findOrInsert(email: String): Customer = {
  val uuid = UUID.randomUUID
  val customerId = run(
      query[Customer]
      .insert(
        _.email -> lift(email),
        _.customerId -> lift(uuid)
      )
      .onConflictIgnore(_.email)
  )
  Customer(email = email, customerId = uuid)
}

And then regarding returning. Returning is quill which is described in http://getquill.io/#quotation-schema-database-generated-values is implemented in jdbc as https://docs.oracle.com/javase/7/docs/api/java/sql/Statement.html#getGeneratedKeys().
However the postgres returning https://www.postgresql.org/docs/9.5/static/dml-returning.html has different underlying logic and most significantly - the api, hence I doubt that one could be used as another.
Feel free to reopen the issue it is neede or open a new one for postgres returning feature


npm WARN<EMAIL_ADDRESS>No repository field.

Actual behaviour:
npm i tmi.js
message on CMD npm WARN<EMAIL_ADDRESS>No repository field.
Expected behaviour:
npm i tmi.js
download tmi.js
create folder called node_modules
Error log:
C:\arduino\ejemplo>npm i tmi.js
npm WARN<EMAIL_ADDRESS>No repository field.

<EMAIL_ADDRESS>updated 1 package and audited 119 packages in 1.478s

5 packages are looking for funding
run npm fund for details
found 0 vulnerabilities
Insert your error log here

Server configuration

Operating system:
Edición	Windows 10 Pro
Versión	20H2
Instalado el	25/11/2020
Versión del sistema operativo	19042.746
Experiencia	Windows Feature Experience Pack 120.2212.551.0

Node version (if applicable): v15.4.0

NPM version (if applicable):6.14.10

tmi.js version:1.7.1

This has nothing to do with tmi.js at all. ledjs is either your own package.json or something from somewhere else.

This has nothing to do with tmi.js at all. ledjs is either your own package.json or something from somewhere else.


Map of mobile data squashed with smaller window size

The issue with the map and text has been fixed for the top two panels but for the mobile data, the mobile map (on the left) is now not only displaying as a thin and tall window. I've included a screen shot of this:

For reference, my laptop is a Latitude 7390 (slimline university laptop) with screen size:

Height:165.08 mm
Width: 293.47 mm
Diagonal: 13.3 inch
Resolution: 1920 x 1080

This was fixed with #94.


 Above it with the text "Clue"?

This will be solved with #1313


About the DIV2K test dataset

Hi, the performance of EDSR is impressive, and I am new to super-resolution.
Here, I have two simple questions:

README declares that:

We measured PSNR using DIV2K 0801 ~ 0900 ...

But the test dataset in DIV2K, which I download from the official link, contains only 0901~1000. Is that a problem to reproduce the reported results in README? Or the performance of super-resolution methods is consistent?

The DIV2K pre-trained model can be directly used on Set5, Set14, etc. or fine-tuning is required? Is this a domain adaptation problem?

Thanks~

Please forgive me for my carelessness. After a quick view of your codes, I find --data_range argument.
I leave this problem open for the authors to confirm and close.

Where did you download the DIV2K constaining 0901~1000?

Please refer to the NTIRE 2017 competition.

Where did you download the DIV2K constaining 0901~1000?

Hello，have you resolved this question？I didn’t find the  DIV2K constaining 0901~1000 too.

FYI.
The official download link contains images from 1st to 900th. The training dataset consists of 800 images (0001~0800). 0801~0900 images are used as a validation set. 0901~1000 are not included in the above download link, but can still be downloaded from NTIRE 2017 competition. However, since 0901~1000 is the test set, the ground truths (i.e., high-resolution images) have not been released.


Short solution needed: "Using hash tables" (lua)

Please help us write most modern and shortest code solution for this issue:
Using hash tables (technology: lua)
Fast way
Just write the code solution in the comments.
Prefered way

Create pull request with a new code file inside inbox folder.
Don't forget to use comments to make solution explained.
Link to this issue in comments of pull request.

Hash tables usage example


Fixing relative build reference in docker-compose for IdentityServer.

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot

@tugberkugurlu please review

This seems to be for the nodejs sample but I can see that it makes sense, :shipit:

@AlexZeitler

Makes sense.

thanks!


style! or console::format! macro

I might be nice to have a fancy style! (or console::format!) macro to replace format! usage.
Example
This is how I could make a progress string now.
let progress = 100.0 / 3.0;
let elapsed = Duration::from_secs(66);

let progress = format!(
    "{:.1}% in {:?}",
    style(progress).bold(),
    style(elapsed).green().italic(),
);

The macro could work something like:
let progress = 100.0 / 3.0;
let elapsed = Duration::from_secs(66);

let progress = style!("{:.1.bold}% {:?.green.italic}", progress, elapsed);

Or with argument capture:
let progress = 100.0 / 3.0;
let elapsed = Duration::from_secs(66);

let progress = console::format!("{progress:.1.bold}% {elapsed:?.green.italic}");

I would consider it out of scope for this repo personally. But I also want to note that I am only maintaining this, not actively developing.
I would actually suggest that you implement the macro in a separate crate but also to allow it to play nice with all kinds of color libraries. That would be great contribution to the ecosystem.

Saw this and wanted to note that I'm working on a very small crate that wraps around console called tiny-console that trims down on the boilerplate. I'm planning to publish it this week (I haven't even pushed  it to Github yet - I'll link it here when I do).


Update index.html

Issues:

Unclosed  tag
 tag was not properly written
Due to the above two issues, if we remove intro div, it will create 2 vertical scroll bars.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Added reporting slowest tests

Just a thought - could this be done as a boolean flag with optional parameter of number of slowest tests to log? We could get i.e. min(tests_ran, 10) as a default value

The same functionality can be achieved with one flag as it is now.


Add domain msun.study

@max-lukshitc Thank you for your patience while waiting for a review and processing your request. Pull request merged.

Thanks!


Fix Readme

This pull request adds Patrick Alvin Luwum to the list of contributors.

Hi  @pluwum, I'm quite elated about your pull request. I wanna evolve this project to addresses various problems faced by first-time contributors. I'd love to learn about your journey in open source community, the problems, pain points you had etc.
Could you explain how you felt when you went through the tutorial, made a pull request and learned that I merged it?
We’ve recently added social share  to our web app. Could you please go to https://roshanjossey.github.io/first-contributions/#social-share and share your first contribution to open source?
Also, check out projects with easy issues while you’re there.

First let me say this project is awesome! It was quite easy to make a first contribution because the instructions are quite clear and the task to complete is very simple.

@pluwum, I’d urge you to continue contributing to other open source projects.
We also have a slack team to help/mentor people trying to contribute to open source projects.
You can join the team by going to https://firstcontributions.herokuapp.com


Associated type bounds

Summary
Figure out a plan around stabilization (or removal) of assoc type bounds

the current implementation
issues of the current approach
what's needed to make progress here

Rationale
These are a key part of the story for associated return types (neé Return Type Notation, or RTN). They've been RFC'd and (sort of) implemented for a while. What does it take to feel comfortable stabilizing? Is there a clear MVP?

This deep dive will be taking place on 21/8/2023. It was scheduled here

I'm working on splitting out a feature gate for associated type bounds in associated types. Other than that, I think we concluded in the meeting that we're comfortable moving forward with stabilization. Don't think we need another meeting.


STY: comply with the documented line length limit

Is your feature request related to a problem? Please describe.
Following gh-19461, it would help reviewers if CI could catch when lines exceed 88 characters.
We can't enable this in CI right now, since linting is done on whole files at once, so CI would fail on PRs due to violations in untouched lines. This is undesirable since the docs say that:

It is recommended to leave existing style issues alone unless they exist in lines of code you are already modifying. This practice ensures that the codebase is gradually cleaned up without dedicating precious review time to style-only cleanups.

Describe the solution you'd like.
To reach a point where we can enable the check in CI, we will need to deal with the ~2500 current violations (the number is so large mainly due to scipy/constants/_codata.py - adding a few noqas there reduces the number to about 1000). I propose that we do so by:

Reducing line length or adding line breaks where appropriate.
Otherwise, adding # noqa: E501 where we allow lines to exceed the limit.

I think that this should be done one submodule at a time. Perhaps a candidate for 'good first issue' (cleaning up one submodule)?
Describe alternatives you've considered.

Do nothing. Feel free to close this issue if anyone feels strongly for this option. This would require no extra immediate effort and may be preferable if the time to review PRs for this just doesn't seem worth it. This option will, however, inevitably lead to more violations of the limit creeping in as it is unrealistic to expect reviewers to check every line of every PR for violations manually.
Have one big PR to deal with them all at once. It might be easier to keep it isolated to one PR although the diff could get scarily large.

Additional Information

Not every violation would have to be dealt with - some of them occur in vendored git submodules, and others could be left alone if it is unlikely that any PRs will be touching that file any time soon. I would estimate that there are about 500 separate places which need a change, since many of the violations are the same structure across multiple lines or in files that won't be modified regularly.
# noqa: E501 is already used 18 times in SciPy.

noqa: E501 is already used 18 times in SciPy.

There are other uses of generic # noqa for this purpose. I am guilty.

I would estimate that there are about 500 separate places which need a change, since many of the violations are the same structure across multiple lines or in files that won't be modified regularly.

This sounds managable. I'd be willing to help.

I am also +1 on this. I agree breaking this up into submodules sounds like a good idea then we can enable E501 module by module as the work is completed

This sounds managable. I'd be willing to help.

I am also +1 on this. I agree breaking this up into submodules sounds like a good idea then we can enable E501 module by module as the work is completed

Great! I’ll leave this open for a while but if there are no objections then I’m happy to get the ball rolling with a few PRs.
If we want to enable module by module then sounds like the first step is to switch from the blanket ignore to per-module ignores in lint.toml. I’m happy to set up a tracker issue if that’s wanted.

Proof of concept for the submodule-by-submodule approach at gh-19489.

Just to clarify, it doesn't looke like this means "vendored git submodule" as in the top post, but rather SciPy "subpackage"?
So you are making fixes to a few subpackages so that you don't have to except 501 for these subpackages. That's fine, since it doesn't look like much is needed, but can we see a commit where the linting fails in at least one of these packages so that we know that the line limit check is really working when it's supposed to?
Can we start reviewing that PR?

Just to clarify, it doesn't looke like this means "vendored git submodule" as in the top post, but rather SciPy "subpackage"?

What I meant was that I assume we don't need to fix errors in highs or array_api_compat. Either that or they will just stay ignored in the linter. I propose that we fix or noqa the errors in SciPy subpackages so that the linter can check them automatically in future.

On second thought, can we take those out to keep things organized, and really go through one subpackage at a time?

Yeah, I split them all into separate commits because I imagined that we might want separate PRs. I put them all together into the proof of concept since they are all of the sub packages with only a few changes needed - the rest are more substantial and definitely deserve PRs of their own.

Also, can we see a commit where the linting fails when the 501 exceptions are removed so that we know that the line limit check is really working when it's supposed to?

Sure, I can split the submodule commits into two in that case.

Can we start reviewing that PR?

Fine with me! Just didn't want to waste anyone's time if a different direction is taken.

What I meant was that I assume we don't need to fix errors in highs or array_api_compat. Either that or they will just stay ignored in the linter. I propose that we fix or noqa the errors in SciPy subpackages so that the linter can check them automatically in future.

Right. That's fine. Git submodules are out of scope. Really, I am suggesting we use "subpackage" here when it's not immediately obvious that "submodule" doesn't mean "vendored git submodule".

I put them all together into the proof of concept since they are all of the sub packages with only a few changes needed.

OK, that's fine. But if they require any changes, I'd suggest taking them out of the real PR. You can open them up one by one as follow-up PRs, even though they're easy.

I put them all together into the proof of concept since they are all of the sub packages with only a few changes needed.
OK, that's fine. But if they require any changes, I'd suggest taking them out of this first PR. You can open them up one by one as follow-up PRs, even though they're easy.

Okay, I'll sort that out and open the follow-ups now.

If you're willing, I'd just create the branches, but hold off on opening all the PRs. I think it is better for lessons learned on the first to be applied to the second, etc. Once we have a few under our belt we can consider opening a few at a time, but I think things will get done just as fast if we go sequentially.

My comment on this now that ~5 PRs have been merged: with this kind of topic, once it's decided that we go ahead and do it (which is the case here now), I'd appreciate thinking about how to get it out of the way as quickly as possible. There is no need for this to be 20 or more PRs, with multiple commits and CI runs for each. Rather, try bunching in larger chunks and not trying to review / second-guess every single decision on individual lines. If it's overall a significant improvement and CI is green, just merge it.
My meta concern here is that between linting, tweaking deprecation messages, bike-sheddy topics like the >>> import numpy as np line, etc., there is a very high a level of activity and notifications on these topics, and it detracts from more important things (new features, bug fixes, docs, performance improvements, and more structural maintenance related topics like dealing with unmaintainable Fortran code and build & packaging topics).
tl;dr thank you for dealing with this, and let's try to close the book on this as efficiently as possible.

Rather, try bunching in larger chunks and not trying to review / second-guess every single decision on individual lines. If it's overall a significant improvement and CI is green, just merge it.

I'll submit one final PR for now for constants, then perhaps someone can try to take the rest on all in one go.

It was separate PRs by my request, so that's on me. But now that things are rolling, it's fine with me to combine.

With all of the linked PRs now merged, we are left with these ignores in lint.toml (to deal with in a minimal number of separate PRs):
# E501 (line length) ignores
"benchmarks/benchmarks/**" = ["E501"]
"scipy/_lib/**" = ["E501"]
"scipy/cluster/**" = ["E501"]
"scipy/constants/_codata.py" = ["E501"]
"scipy/integrate/**" = ["E501"]
"scipy/interpolate/**" = ["E501"]
"scipy/io/**" = ["E501"]
"scipy/linalg/**" = ["E501"]
"scipy/ndimage/**" = ["E501"]
"scipy/optimize/**" = ["E501"]
"scipy/signal/**" = ["E501"]
"scipy/sparse/**" = ["E501"]
"scipy/spatial/**" = ["E501"]
"scipy/special/**" = ["E501"]
"scipy/stats/**" = ["E501"]
"tools/**" = ["E501"]

I should be able to do the remaining in one PR

I should be able to do the remaining in one PR

I would hold off until gh-19516 is in, but go for it after that!

@j-bowhay have you started work on this? I'm happy to take it on if you want, your choice.


Use different dispatchers for cache vs code

The cache needs to be thread-isolated.
QuickJS needs to be thread-isolated.
But they don't need to be the same threads. This makes that possible.
This is working towards https://github.com/cashapp/zipline/issues/1385

I started writing a test for this and decided that the easiest way to implement this is via new EventListener events for cache hits. I’m going to do that in a separate PR as it requires its own tests!