text:
connect response doesn't indicate support for Enhanced RTMP

the client can indicate support for Enhanced RTMP by including a fourCcList member of the connect command's argument/command object (though see #10 about the name of that member).
however, clients can't tell if servers support Enhanced RTMP. while an unaware server can simply forward Enhanced RTMP messages as they come in, this won't have the desired effect for clients subscribing to a stream after its publish has started. in particular, servers unaware of Enhanced RTMP won't have special treatment of PacketSequenceStart, PacketTypeMetadata, and PacketTypeMPEG2TSSequenceStart messages, remembering them and sending them to new subscribers before the coded frames.
a publishing client should be able to tell that the server will or won't perform the special sequence/metadata processing for subscribers, and subscribing clients should be able to tell that they may not receive the sequence/metadata messages for enhanced messages. this could be accomplished by echoing the fourCcList (and/or others as appropriate) back in the connect transaction's _result Info Object.

this should probably be a separate Issue, but on the subject of the fourCcList property: the spec says "supported by the client". given the meaning of the videoCodecs and audioCodecs bitmap properties, one would assume the fourCcList indicates the codecs that the client is capable of receiving, vs ones that it can or might send. if that's the case, that distinction should be made clear.

this should probably be a separate Issue, but on the subject of the fourCcList property: the spec says "supported by the client". given the meaning of the videoCodecs and audioCodecs bitmap properties, one would assume the fourCcList indicates the codecs that the client is capable of receiving, vs ones that it can or might send. if that's the case, that distinction should be made clear.

Really good feedback, thank you!
I don't believe that indicating which codecs the client can receive vs send is not in the original spec?
fourCcList adopts current behavior while indicating what codecs are supported in the list
That said that does not mean we should not add more info in the connect command in the next version of the enhancement to indicate clients capabilities to send vs receive any particular fourCc item.
And yes, agreed this should be a separate issue. Perhaps if you get a chance open an additional issue and provide more color to the behavior?

the client can indicate support for Enhanced RTMP by including a fourCcList member of the connect command's argument/command object (though see #10 about the name of that member).
however, clients can't tell if servers support Enhanced RTMP. while an unaware server can simply forward Enhanced RTMP messages as they come in, this won't have the desired effect for clients subscribing to a stream after its publish has started. in particular, servers unaware of Enhanced RTMP won't have special treatment of PacketSequenceStart, PacketTypeMetadata, and PacketTypeMPEG2TSSequenceStart messages, remembering them and sending them to new subscribers before the coded frames.
a publishing client should be able to tell that the server will or won't perform the special sequence/metadata processing for subscribers, and subscribing clients should be able to tell that they may not receive the sequence/metadata messages for enhanced messages. this could be accomplished by echoing the fourCcList (and/or others as appropriate) back in the connect transaction's _result Info Object.

Nice catch especially since this is so nuanced. To echo the 'fourCcList' is of course straight forward and probably would be a good addition to the spec. BTW: Shouldn't this already potentially be an issue? AVCPacketType has same challenges, although by now most servers support AVC codec id and the AVC sequence header... this is still not guaranteed since today the RTMP spec does not require a server to echo it's set of support codecs?

in retrospect i don't think echoing the fourCcList is the right answer, since that might imply additional unintended semantics (like which codecs the server is capable of handling). but some indication that the server understands Enhanced RTMP and will do something appropriate especially with the new enhanced start/init/metadata messages i think would be useful for feature & codec negotiation.

I don't believe indicating which codecs the client can receive vs send is in the original spec?

the original spec is missing a lot of things (i wish i had had the time way back then for a full rewrite instead of just editorial cleanup). :)
the behavior of Adobe Media Server (at least) is to use the videoCodecs and audioCodecs bitmaps as selectors/filters for what can be sent to the client. AMS won't send video or audio messages to a client unless the codec being used has its bit set in the bitmap. AMS doesn't care which codecs a client can send, since AMS can record & forward all (traditional) codecs. also, many clients have asymmetric capabilities (for example, Flash Player can receive & play back AAC, but i don't think it can encode & send AAC) and this asymmetry isn't signaled in the connect/_result handshake.

And yes, agreed this should be a separate issue. Perhaps if you get a chance open an additional issue and provide more color to the behavior?

i opened #14

the "Enhancing NetConnection connect Command" section of the latest spec appears to address this Issue, and technically this issue could be closed. however, it's a bit hard to tell with the current wording of the last paragraph of that section:

As you can see, the client declares to the server what enhancements it supports. The server responds with a command, either _result or _error, to indicate whether the response is a result or an error. During the response, the server provides some properties within an Object as one of the parameters. This is where the server needs to state its support for E-RTMP. The server SHOULD state its support via attributes such as videoFourCcInfoMap, capsEx, and similar properties.

i think it'd be valuable for a future revision to reword this section, and perhaps have a separate paragraph for the server's response that explicitly lists that an Enhanced RTMP server should be sending one or more of the enhanced connect properties back to the client in the NetConnection.Connect.Success _result, and how a client should be interpreting such an enhanced response from the server.
also, specifically for capsEx, one could reasonably assume that a missing capsEx means 0, but it'd be good to call that out explicitly.

meanwhile, i've modified my tcserver to answer thus:
connection onStatus: {
    "audioFourCcInfoMap": {
        "*": 4
    },
    "capsEx": 0,
    "code": "NetConnection.Connect.Success",
    "connectionID": "5c052b8e63ffcf1a12f89b6657ab3bb1b55c08a1321489c139fe4b066394cceb",
    "description": "you connected!",
    "fourCcList": [
        "*"
    ],
    "level": "status",
    "objectEncoding": 0,
    "serverFingerprint": "264886da312d618a82dd3ef57e5d3900126a95eade7c713d551e084e3132d75a",
    "serverInfo": "welcome to REDACTED",
    "videoFourCcInfoMap": {
        "*": 4
    }
}

to say that it can forward any video or audio codecs, but does not support Multitrack, nor will it ever send a NetConnection.Connect.ReconnectRequest to the client.

Thank you for the thoughtful feedback! I'll take a closer look at the wording and make the necessary adjustments. For now, I'll keep this issue open until we've had a chance to polish the wording.

authors: veovera zenomt

repo: veovera/enhanced-rtmp


text:
Failed to fetch table from database

Following the tutorial instructions, I created a tasks table with the following seed
async function seedTasks(client) {   try {     await client.sqlCREATE EXTENSION IF NOT EXISTS "uuid-ossp";     // Create the "tasks" table if it doesn't exist     const createTable = await client.sql
CREATE TABLE IF NOT EXISTS tasks (
id UUID DEFAULT uuid_generate_v4() PRIMARY KEY,
name VARCHAR(255) NOT NULL,
status VARCHAR(255) NOT NULL,
date DATE NOT NULL
);
;     console.log(Created "tasks" table);     // Insert data into the "tasks" table     const insertedTasks = await Promise.all(       tasks.map(         (task) => client.sql
INSERT INTO tasks (id, name, status, date)
VALUES (${task.id}, ${task.name}, ${task.status}, ${task.date})
ON CONFLICT (id) DO NOTHING;
,       ),     );     console.log(Seeded ${insertedTasks.length} tasks);     return {       createTable,       tasks: insertedTasks,     };   } catch (error) {     console.error('Error seeding tasks:', error);     throw error;   } }
I put the following data in the data placeholder
const tasks = [   {     id: '410544b2-4001-4271-9855-fec4b6a6442a',     name: 'task1',     status: 'done',     date: '2023-11-04',   }, ];
The table was created successfully and I could examine it in the vercel postgres data
but when I try to fetch data with the following function
export async function fetchTasks() {   try {     const tasks = await sql
SELECT
tasks.id,
tasks.name,
tasks.status,
tasks.date,
FROM tasks;     return tasks.rows;   } catch (error) {     console.error('Failed to fetch tasks:', error);     throw new Error('Failed to fetch tasks.');   } }
It failed to fetch data and give me the following message:
`ailed to fetch tasks: NeonDbError: db error: ERROR: syntax error at or near "FROM"
Caused by:
ERROR: syntax error at or near "FROM"
at execute (webpack-internal:///(rsc)/./node_modules/@neondatabase/serverless/index.js:4713:70)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async fetchTasks (webpack-internal:///(rsc)/./app/lib/data.ts:231:23)
at async Page (webpack-internal:///(rsc)/./app/dashboard/tasks/page.tsx:18:19) {
code: '42601',
sourceError: undefined
}
⨯ app/lib/data.ts (264:10) @ fetchTasks
⨯ Error: Failed to fetch tasks.
at fetchTasks (./app/lib/data.ts:241:15)
at async Page (./app/dashboard/tasks/page.tsx:18:19)
262 |   } catch (error) {
263 |     console.error('Failed to fetch tasks:', error);

264 |     throw new Error('Failed to fetch tasks.');
|          ^
265 |   }
266 | }
267 |`
In the

Maybe the extra comma before FROM cause the error 🤔

The problem is solved .... Thank you

source: gharchive/issue

authors: OsamaSokrab ffxixslh

repo: vercel/next-learn

license: MIT

license_type: permissive

license_source: github-api


text:
Unable to seed the data due to connection error

Getting error while using the seed command
Please tell if someone has any idea of what's happening...

I am using Node.js v20.11.1

I also have the same error...Can someone help please?

I also have the same error...Can someone help please?

I don't exactly how it worked out but i tried to remove the database and again add the environment variables two - three times.
That worked for me.
Hope it also works for you

I also have the same error...Can someone help please?

I don't exactly how it worked out but i tried to remove the database and again add the environment variables two - three times. That worked for me. Hope it also works for you

I found the error. I had to remove the "." from the ".seed" command found in the package.json file

there is nothing .seed in package.json

try running vercel dev instead of npm run dev
that did the magic for me
https://github.com/orgs/vercel/discussions/2350#discussioncomment-5850746

When I copied the contents of .env.local, I found that removing the line 'POSTGRES_URL_NO_SSL="************"' solved the issue for me

I was able to get through this issue by nvm use 18.17.1 and made sure .env was correctly configured. It took me more than 8 hours 😂.

nvm use 18 worked for me too

Worked for me thnx @Suitec9 and @ianMuchesia

my ndoe version is v20.12.2 and have the same issue. So i changed the seed script to 'bun -r dotenv/config ./scripts/seed.js', and it works now.

authors: Akashrajark FlyntDenzel Suitec9 bclovecoding gauravkumar5089 ianMuchesia prats24 sojinsamuel vignxs


text:
feat: fixing next-css for webpack 5

Beyond the repo be way out of date with what's on NPM. You're using a really old version of mini-css.
This PR works fine with webpack 4 but also enables css processing in webpack 5

Hey! We're deprecating this repository hence why this PR hasn't been merged. I just updated the readme. The built-in CSS support is fully compatible with webpack 5 and being used in production.

source: gharchive/pull-request

authors: ScriptedAlchemy timneutkens

repo: vercel/next-plugins


text:
Can't see my Stripe products on Supabase & on my site

I followed the ReadMe perfectly to set up the project. However, even though everything is configured on Vercel, Supabase & Stripe (with registered products), I can't see my subscriptions and I'm left with the message: "No subscription pricing plans found. Create them in your Stripe Dashboard. "
I noticed that the products are not updating from Stripe and the Webhook is not working. I have the following error message on Stripe:
Webhook Error: No signatures found matching the expected signature for payload. Are you passing the raw request body you received from Stripe? https://github.com/stripe/stripe-node#webhook-signing
Thanks for any help :)

I'm having the same issue. When I deploy the project the webhook either isn't created in Stripe, or fails authentication and I have to retry the webhook from the stripe dashboard.

Having a similar problem I don't see any webhook created in stripe. I guess there is a way to manually add this step?

@joaogarin I found that if you click the "Skip this form" during setup of the stripe integration, the webhook is not created.
I also discovered if you don't allow some time between supabase setup and then configuring products in Stripe - the integration will fail. I can't reproduce an exact use case.

Thank you, will try it again see if I can get a different result.

Sorry for this. We've added some instructions on how to set up the webhooks manually: https://github.com/vercel/nextjs-subscription-payments#configure-webhook

authors: anthonyjacquelin joaogarin sam-cousins thorwebdev

repo: vercel/nextjs-subscription-payments


text:
Yarn Berry Turbo Prune minor incorrectness

What version of Turborepo are you using?
v1.5.1
What package manager are you using / does the bug impact?
Yarn v2/v3 (node_modules linker only)
What operating system are you using?
Mac
Describe the Bug
First, congrats to @chris-olszewski on implementing this feature; it is a challenging engineering problem!
I tried to prune my pretty extensive monorepo, and it was so close to supporting --immutable. Here is the diff after running yarn:
-"@types/node@npm:*, @types/node@npm:>=12, @types/node@npm:>=12.12.47, @types/node@npm:>=13.7.0, @types/node@npm:^16.11.59":
+"@types/node@npm:*, @types/node@npm:>=12.12.47, @types/node@npm:>=13.7.0, @types/node@npm:^16.11.59":
  version: 16.11.59
  resolution: "@types/node@npm:16.11.59"
  checksum: b3a2986ef8f8216bb7fd1187dcf2e69aca3e6b6b5fdfd6abf4cf11c44e3cdd587fae875a28dc4ef257e2b369e2c5290642aff6a0a9d702f3385a78f561293259
  languageName: node
  linkType: hard

Where the usages of @types/node >= 12 are as follows:
"@commitlint/load@npm:>6.1.1":
  version: 17.0.0
  resolution: "@commitlint/load@npm:17.0.0"
  dependencies:
    "@commitlint/config-validator": ^17.0.0
    "@commitlint/execute-rule": ^17.0.0
    "@commitlint/resolve-extends": ^17.0.0
    "@commitlint/types": ^17.0.0
    "@types/node": ">=12"
    chalk: ^4.1.0
    cosmiconfig: ^7.0.0
    cosmiconfig-typescript-loader: ^2.0.0
    lodash: ^4.17.19
    resolve-from: ^5.0.0
    typescript: ^4.6.4
  checksum: c35f7c5d7a8e2812a62b2d10f304c4b4ab8754923b0e59c66f3d9ce5ff3ea84502539c905b82fafbe666b02db5e7d818c119764af5d46485532a8bb73dba0661
  languageName: node
  linkType: hard

"meros@npm:^1.1.4":
  version: 1.2.0
  resolution: "meros@npm:1.2.0"
  peerDependencies:
    "@types/node": ">=12"
  peerDependenciesMeta:
    "@types/node":
      optional: true
  checksum: 95ec2dc352ad4ffe7a8572676d0399e8cfe67bb3ebe03ce5b03ebb4d990527994528260ff47a7efedc1348a8ee46bfe782564127bd1566d4790e1189b0a1ed29
  languageName: node
  linkType: hard

It also got a patch slightly incorrect, but you noted that in the feature PR description. The patch does not seem to be related to the @types/node issue.
Expected Behavior
The prune to produce a lockfile that supports the --immutable flag.
To Reproduce
Unfortunately, I can't share the lockfile over here. If you're interested in a proper reproduction it will take some time to isolate the specific issue.
Best of luck!

Thanks for the report. Is there any chance you could get me the entries that reference the other versions of @types/node?

Are the entries for @commitlint/load@npm:>6.1.1" and meros@npm:^1.1.4 that you gave above from the pruned lockfile?

Pre-prune, there are no references to >=12, meros/commitlint post-prune.
I will try and put together a better reproduction if possible tomorrow/this weekend.
Thanks!

Hey @quinnturner, any chance you could get me all of the pre-prune lockfile entries that reference @types/node? I've been trying to repro this and haven't had any luck.

@chris-olszewski I have created a documented reproduction and invited you to the private GitHub repository. Expect an email for approval! The reproduction is on v1.5.6.

@quinnturner, thank you so much for the reproduction. I just put up #2269 which fixes 2/3 changes, the final one comes from the turbo not fully understanding how the resolutions section of package.json impacts yarn.lock. It's doable to fix this, but it'll be a more involved PR.

(Targeting 1.6.1 with this one.)

@chris-olszewski Appreciate the good work! We're also running into the same issue as mentioned above, with both resolutions and peerDependencies. This is currently blocking our transition into Yarn 2, are there any easy workarounds in the meanwhile?

I am closing this ticket now as the issues initially outlined have been resolved except for resolutions. For resolving the resolutions, there's #2791.

authors: PatrickLef chris-olszewski nathanhammond quinnturner

repo: vercel/turborepo


text:
Amend proxy instructions for Apache

Hi.
I had issues regarding to resources when accessing Verdaccio through Apache proxy.
I found out that removing ending slashes at ProxyPass and ProxyPassReverse settings solved it.
I also set Verdaccio's config url_prefix to match the proxy location.
Hope it helps.
Type: bug / documentation

Nice catch @RodrigoBalest !! Very welcome PR 👍

authors: RodrigoBalest juanpicado

repo: verdaccio/verdaccio


text:
Updated colors to support the 8 'bright' variants

The 'bright' variants of the 8 standard ANSI colors are required to get a good-looking color on many terminals. This update adds codes for those colors. It also adds a style 'none', corresponding to the 'no style' ANSI code. The test program was updated to accomodate this larger set of colors.

This PR closed in favor of forthcoming major update.

repo: verigak/colors

license: isc

license_source: bigquery


text:
Multiple Background Images for a Single Element

Is there a way to support the lazy loading of multiple background images for a single element.
EG: https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Backgrounds_and_Borders/Using_multiple_backgrounds
Not critical but wondering if it is possible or too compicated

Hi @vigoren,
thank you for your kind request.
That wouldn’t be possible at the moment.
What would you need this feature for?

Yeah this is interesting.
The data-srcdet attribute is currently unused for background images, maybe we can do something with it. Let me think.

What do you think about this solution:

You put whatever you’d put in the background-image CSS property inside the data-srcset HTML attribute, like this:

The script then copies whatever it finds in the data-srcset inside the element’s style using background-Image.
It’s different from what the data-src does. The script doesn’t just copy the  data-src  content to the style background, it also wraps the image url inside a url() CSS directive. The data-srcset would be copied as is.
I like it because:

The script wouldn’t have to parse the data-srcset
You could also use a gradient background image together with the real images
We would use a pre-existing option

I don’t like it because

You would have to put CSS code in the HTML attribute which should be mapped to the srcset attribute. Not this mapping wouldn’t be strict anymore.

Probably this “dislike“ could be solved creating a new data-bg option.

That sounds like a good solution to me. I share your dislike with putting CSS in the attribute but like you said could be solved with a custom attribute.  Though that does take away the like of using a pre existing option.
I think to start using data-srcset would be great. Then can always look at transitioning to a different attribute later.
Thanks again

Actually it can’t. When the users start to use it, you can’t change the API without changing the version by a major.
It’s better to start directly using data-bg. It’s no big deal to have a new option.
Thank you for your reply and your issue.
I’m vacationing now, as soon as I get my hands on a computer again, I’ll develop it.
Or if you prefer, you can fork and pull request this :)

In case you want to fork and PR, you just need to edit the files:

lazyload.defaults.js to add the new data_bg option,
lazyload.setSources.js limited to the setSourcesBg function.

Once you’re done, you can build the minified files using gulp and test it using the files in the demos folder.
When everything is working, open a Pull Request towards the development branch.
Thanks!

Sounds good, I have something put together just need to test it a bit more then I will make the pull request.

Great! Thank you very much

Hey guys,
I'm also interested in this new feature !
Hope you will find something soon.
Good work !

Looking forward for this feature also! LazyLoad is great! :)

Thank you very much.
The feature is in under the final checks in the development branch, waiting to be released!

Now released also in version 8.16.0.
Closing this.

Hey @vigoren,
things changed on version 15.
I found a way to manage background images's load/error event, so now background images are now getting the loaded or error class and calling callback_loaded and callback_error, but multiple background images should now be loaded via the data-bg-multi attribute.
Take a look at the changelog and to the upgrading guide if you're interested.
Have a nice day.

Hey @vigoren,
things changed on version 15.
I found a way to manage background images's load/error event, so now background images are now getting the loaded or error class and calling callback_loaded and callback_error, but multiple background images should now be loaded via the data-bg-multi attribute.
Take a look at the changelog and to the upgrading guide if you're interested.
Have a nice day.

HI Verlok, I have tried using multi background, and it isnt working. I have passed the following to the div.

Advice is appreciated.

Hey @KirstyMarks-Roar ,
could you post the rendered div with the final data-bg-multi attribute?
And the JS code you used to initialize LazyLoad?
Also please check the related demo and the related code.

PS: This is a closed issue, if you still need support please open a new one as a question. Thanks

PS: This is a closed issue, if you still need support please open a new one as a question. Thanks

Hi, apologies. I thought it was open as i could reply to it, and it was relevant to the question :) I managed to get it working with the data-bg option instead. However should you still need me to, Im happy to open a new Question.
Thanks
Kirsty

@KirstyMarks-Roar you mean you used data-bg instead of data-bg-multi?

@KirstyMarks-Roar you mean you used data-bg instead of data-bg-multi?

Hi Verlok, yes. When I used the data-bg-multi option, it didnt seem to pick up multiple backgrounds (I am passing an image, and a gradient). However when I used data-bg and passed the background image and linear gradient, it seemed to render :)

Wait, which version of the script you're using?
I totally forgot to ask.

The documentation you can find here on GitHub are valid only for the latest version.

@KirstyMarks-Roar , in addition, note that the data-bg option will cease working if you update the version of lazyload to a newer one. In the latest version, data-bg-multi should be used to set multiple backgrounds.

authors: KirstyMarks-Roar ligne13 salespageshark verlok vigoren

repo: verlok/lazyload

license: mit


text:
4401版本ipfack模式无法登入和平精英服务器

以上如题，之前都好好的，现在一进游戏就提示无法进行游戏服务器！

大概是分流出错加上udp崩溃吧，期待后续可以解决

repo: vernesong/OpenClash


text:
版本：OpenClash-0.44.28-beta，内核无法正常识别和启动

如题 大佬求助首先我更新主程序前fakeip（tun混合模式）是正常的，更新后启动不正常，
内核更新页面显示未知，我点了页面上的删除内核，删除/etc/openclash/core/下所有内核文件。
重新手动下载（自动更新会提示更新失败，/tmp/下clash_tun下载4kb就断了，只能手动下载。。。）tun核心改名clash_tun，
放到/etc/openclash/core/下，chmod设置权限如下
-rwsr-xrwx    1 root     root       3868680 Feb 28 22:22 clash_tun*
从调试日志中可以发现

Tun内核版本:
Tun内核文件: 存在
Tun内核运行权限: 正常

tun内核版本不显示有问题。
启动tun混合模式日志如下就报错，大佬求助。

2022-02-28 22:24:12 Tip: Detected The Exclusive Function of The TUN Core, Use TUN Core to Start...
2022-02-28 22:24:12 Step 5: Check The Core Status...
nohup: failed to run command '/etc/openclash/clash': Exec format error
2022-02-28 22:24:15 Step 6: Wait For The File Downloading...
2022-02-28 22:24:15 Error: OpenClash Can Not Start, Try Use Raw Config Restart Again...
2022-02-28 22:24:15 Tip: Detected The Exclusive Function of The TUN Core, Use TUN Core to Start...
nohup: failed to run command '/etc/openclash/clash': Exec format error

具体调试日志如下
OpenClash 调试日志.txt

检查架构是不是选错了

不要更新，最近有点翻车倾向

是的呢，以前点更新就好了，这次第一次翻车。。回不去了。

检查架构是不是选错了

架构是不是要选amdx64?我的是软路由，3865u。

好哒我换个git代理看看

谢谢大大 解决啦，问题是刚更新时候架构不是自动选择，我自己选了第一个，选错了，
第二就是换上大大的github地址修改，下载了正确的内核就修复啦。

authors: vernesong zorroforever


text:
Add support for the graphics accelerator

The latest Linux SDK from TI supports the 1.17.* series kernel module and user mode driver to run the Power VR graphics accelerator on the Beaglebone am335x systems. This PR builds in support for these driver / modules and also enables Weston and libglfw 3.

Just annotated some stuff I didn't recognize, LGTM. Great work Justin.

authors: danielspofford mobileoverlord


text:
Log request body for failing request

FYI @bjorncs

This is logged as debug I hope?

Host-admin logs exceptions thrown by this as warning. The presence of such log entries indicates that the client is not conforming to the API, and in that case you want some details.
Please correct me if I'm wrong, @hakonhall or @freva.

... or server-side HTTP errors

authors: bjorncs hakonhall mpolden

repo: vespa-engine/vespa


text:
Catch Throwable instead of just RuntimeException

@bjorncs please review.

I think you should only catch LinkageError+RuntimeException and let the rest pass through.

Yes, this is only for debugging.

authors: bratseth jonmv


text:
Send orchestratorState dimension to metrics proxy

node-admin/src/test/resources/expected.container.system.metrics.txt shows what node-admin will send to metricsproxy.

👍 Merge at will

authors: freva gjoranv


text:
HEALTHCHECK

Description
Create a HEALTHCHECK that will verify that both docker-flow-proxy and haproxy are up and running.
Steps to reproduce the issue:

Stop the haproxy process

Describe the results you received:
Containers are still running
Describe the results you expected:
Containers should be rescheduled.
Additional information you deem important (e.g. issue happens only occasionally):
None
Additional environment details (AWS, VirtualBox, physical, etc.):
Any

might be also nice to be able to have reconfigure/reload docker-flow-proxy on service health checks too (think swarm health checks could help here?).

I already added HEALTHCHECK to the image but forgot to close this issue. Can you please try one of the newer releases. Feel free to reopen this issue if it does not work as expected.

authors: johnjelinek vfarcic

repo: vfarcic/docker-flow-proxy


text:
support for polymer 2

Hi @vguillou, are the plans to upgrade the element to support polymer 2, making it hybrid?

Yes and no. I will make a Polymer 2 version, but it will likely not be hybrid. And I can't announce a schedule for that unfortunately... Might come very soon, or in several months.
Sent from my Motorola XT1562 using FastHub

@vguillou polymer 2 class based version is even better

authors: cordovapolymer vguillou

repo: vguillou/poly-filter


text:
Filtered Django resources

Added new documentation for Django.
Removed http://gettingstartedwithdjango.com as the site is down for a long time.
Updated the Tango with Django book
Removed the "The Django Book" as it was very old version of Django

Nice, thanks!

authors: Shafiul-Hasan-tareq vhf

repo: vhf/free-programming-books


text:
matchengine kafka topic不可配置

matchenine会向kafka中写入数据，然而写入的topic名字是代码中写死的。而作为topic的消费者，marketprice, accessws服务器，topic的名字是配置文件中可配置的。 是否是matchengine疏忽了？

作为生产者，写死是没有问题的。topic 消费者可配，只要是为了是线上的方便。


text:
[RSDK-4484] Make an installer for board canaries

This is a shell script that installs a systemctl config and a crontab. The systemctl config will run the RDK server with the canary config, and the crontab will run the hardware tests on this board every night at 2:30 AM.
Not yet tried out thoroughly, but I think this is done besides minor debugging. The main issue still to debug is how to pull the latest version of a private repo in a cron job. The paths forward I see are:

Don't pull the latest version. If you make updates, manually update each board. Blech.
Give each board credentials to pull from a private repo. Feels like a security issue waiting to happen.
Make the repo public. First rotate the keys on the Orin Nano canary, since they were briefly mentioned in a draft of PR #1. and also think through the other implications of making this public, before we do it.

I'm leaning towards that last option, but want to mull it over a little more first.
and beyond that, I think the rest of this should work! My plan for testing is to set up 2 more canaries with this, except the cron job should run every 5 minutes until I'm satisfied.
Things that are still not included in this PR, and will be in a future one:

Logging the results properly, and uploading the logs somewhere convenient
Monitoring the uploaded logs and sending notifications when something goes wrong

Okay, I've gotten it to install on both an Orin Nano and an Up 4000! Take another look, I like this version.
Sorry it's taken me so long to get back to this.

I've run the installer on an Orin, an Orin Nano, and an Up 4000. We'll see if we get results tomorrow...

There was a typo in the crontab entry. I've hopefully fixed it, and temporarily changed it to run once per hour, instead of once per day. Assuming I like the results, I'll revert that last part and merge around lunchtime.

Well, it works well enough that I've reverted the "once an hour" part. I've also redirected the Python file's stderr to stdout so it might get written to file, too, and updated the shell script to pull the latest version of this repo before running the Python test. There are probably more tweaks to come, but they can be in another PR.


text:
Retry connection if it fails

The changes are:

Reporting stuff to Slack has been refactored into a new file, slack_reporter.py
If the canary board tests are unable to connect to the RDK, report that to Slack and then try a second time before failing the test.

I suspect the easiest way to review this is commit-by-commit, though there were a few mistakes I made in early commits that I fixed in later ones without reworking the history.
I haven't tried this out yet, but intend to put it through its paces in the un-archived #temp_to_remove channel...

Tried on my local laptop in the #temp_to_remove channel: I've made another commit of bugfixes, and then the parts I'm able to run seem to work! If there's a bug in the tests themselves, we'll find out tonight...


text:
Hardcoding \n in Stdin

hi,
When in am looking into your java support source code you had appended \n to stdin. What is the necessity of appending \n to stdin!! What happens when we remove \n .

It is just for leaving a line blank after the input.

It is just for leaving a line blank after the input.

what happens when we remove that \n

I believe it should work as expected. Its just personal preference of myself to leave an empty line.

Thanks a lot,
On Sat, Oct 6, 2018 at 9:34 PM vibhor agrawal notifications@github.com
wrote:

I believe it should work as expected. Its just personal preference of
myself to leave an empty line.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/vibhor1997a/compile-run/issues/4#issuecomment-427585419,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AJ2XsVhKQP8rl6Z1_xbbWyjmbyWbuhwuks5uiNSbgaJpZM4XBXp2
.


text:
Getting Webhook Object

I'm struggling to get webhooks setup with my application. I can setup my webhook url with any items created and Plaid will make attempts to send webhooks to the endpoint I directed it to, however, I can't get the webhook object that Plaid sends to my API. I tried using WebhookBase as the object type it receives in my API endpoint method:
[HttpPost("webhook")]
public async Task<IActionResult> ReceiveWebhook(WebhookBase webhook)

But anytime Plaid sends a webhook to this endpoint I get the following error:
System.NotSupportedException: Deserialization of types without a parameterless constructor, a singular parameterized constructor, or a parameterized constructor annotated with 'JsonConstructorAttribute' is not supported. Type 'Going.Plaid.WebhookBase'. Path: $ | LineNumber: 0 | BytePositionInLine: 1.
       ---> System.NotSupportedException: Deserialization of types without a parameterless constructor, a singular parameterized constructor, or a parameterized constructor annotated with 'JsonConstructorAttribute' is not supported. Type 'Going.Plaid.WebhookBase'.
         --- End of inner exception stack trace ---
         at System.Text.Json.ThrowHelper.ThrowNotSupportedException(ReadStack& state, Utf8JsonReader& reader, NotSupportedException ex)
         at System.Text.Json.Serialization.Converters.ObjectDefaultConverter`1.OnTryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value)
         at System.Text.Json.Serialization.JsonConverter`1.TryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value, Boolean& isPopulatedValue)
         at System.Text.Json.Serialization.JsonConverter`1.ReadCore(Utf8JsonReader& reader, JsonSerializerOptions options, ReadStack& state)
         at System.Text.Json.Serialization.Metadata.JsonTypeInfo`1.ContinueDeserialize(ReadBufferState& bufferState, JsonReaderState& jsonReaderState, ReadStack& readStack)
         at System.Text.Json.Serialization.Metadata.JsonTypeInfo`1.DeserializeAsync(Stream utf8Json, CancellationToken cancellationToken)
         at System.Text.Json.Serialization.Metadata.JsonTypeInfo`1.DeserializeAsObjectAsync(Stream utf8Json, CancellationToken cancellationToken)
         at Microsoft.AspNetCore.Mvc.Formatters.SystemTextJsonInputFormatter.ReadRequestBodyAsync(InputFormatterContext context, Encoding encoding)
         at Microsoft.AspNetCore.Mvc.Formatters.SystemTextJsonInputFormatter.ReadRequestBodyAsync(InputFormatterContext context, Encoding encoding)
         at Microsoft.AspNetCore.Mvc.ModelBinding.Binders.BodyModelBinder.BindModelAsync(ModelBindingContext bindingContext)
         at Microsoft.AspNetCore.Mvc.ModelBinding.ParameterBinder.BindModelAsync(ActionContext actionContext, IModelBinder modelBinder, IValueProvider valueProvider, ParameterDescriptor parameter, ModelMetadata metadata, Object value, Object container)
         at Microsoft.AspNetCore.Mvc.Controllers.ControllerBinderDelegateProvider.<>c__DisplayClass0_0.<<CreateBinderDelegate>g__Bind|0>d.MoveNext()
      --- End of stack trace from previous location ---
         at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
         at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeFilterPipelineAsync>g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
         at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Logged|17_1(ResourceInvoker invoker)
         at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Logged|17_1(ResourceInvoker invoker)
         at Microsoft.AspNetCore.Routing.EndpointMiddleware.<Invoke>g__AwaitRequestTask|7_0(Endpoint endpoint, Task requestTask, ILogger logger)
         at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
         at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
         at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
         at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddlewareImpl.Invoke(HttpContext context)

In my API project Program.cs I added the PlaidConverters to hopefully fix this error but it results in the same error
builder.Services.Configure<JsonOptions>(o => {
    o.SerializerOptions.AddPlaidConverters();
});

What am I missing to be able to get the webhook that Plaid sends?

You're close. Instead of Configure<JsonOptions>(), do:
builder.Services
  .AddMvc()
  .AddJsonOptions(o =>
    o.SerializerOptions.AddPlaidConverters());

That worked, thank you! However, I am coming across a new problem now. I'm creating a new item which causes Plaid to send 2 webhooks, HistoricalUpdate and InitialUpdate both for Transaction. The HistoricalUpdate webhook request Plaid sends looks like this
{
    "environment": "sandbox",
    "error": null,
    "item_id": "wag1dBKe9rfqA9gzb98EH63JedemqycrQ8VWn",
    "new_transactions": 190,
    "webhook_code": "HISTORICAL_UPDATE",
    "webhook_type": "TRANSACTIONS"
}

Which makes sense to me and is what I am expecting. However, apparently the webhook converting is attempting to convert this into a ProcessorHistoricalUpdateWebhook instead of just a HistoricalUpdateWebhook which is what I would expect it to be. Because it's trying to convert it to this processor webhook, it's expecting an account_id instead of the item_id and then causes a bad request
{
    "type": "https://tools.ietf.org/html/rfc9110#section-15.5.1",
    "title": "One or more validation errors occurred.",
    "status": 400,
    "errors": {
        "AccountId": [
            "The AccountId field is required."
        ]
    },
    "traceId": "00-dcac59d3186de5168ae06b3de4d80a02-a07f664856c46a02-00"
}

Is there something I'm supposed to do to get it to not convert to a Processor webhook or am I going about something wrong? Looking at the src/Plaid/Converters/WebhookBaseConverter.Map.cs file it doesn't seem like there is a way to get a non-processor webhook for webhooks like the Initial Update, Historical Update, Sync Updates Available, etc.

Looks like this is a bug in the spec, specifically here. I've opened a ticket on the spec repo; they should get an update this month, at which point I can update Going.Plaid and we can get this fixed for you.
At the moment, your alternative is to use JsonElement as the controller parameter type, check the webhook_type field, and handle accordingly.
Sorry for the issue.

I could definitely be wrong about anything I'm about to say but I don't see that as being the issue, at least with my understanding of Plaid.
Looking at the Plaid documentation Processor webhooks are in fact a thing and they do indeed take an account_id instead of the item_id. If I was receiving a processor webhook from Plaid, I would definitely expect it to contain the correct data. However, these Processor webhooks are only sent to Plaid processing partners. I am not a Plaid processing partner and thus am not expecting any processor webhooks from them. What I am doing is creating a new item with the transaction product, which starts Plaid on retrieving the transaction data. When Plaid has received some of this transaction data, I am expecting to receive a regular InitialUpdate Transaction webhook from them. The request they send me does line up with what I expect to be receiving from them as the regular initial update webhook, since I am not a processing partner. Thus, I expect the webhook base to be interpreted as a InitialUpdateWebhook, which contains the fields the expected request is in fact sending. However, the webhook I receive is instead being interpreted as a ProcessorInitialUpdateWebhook, which is a webhook I should never be receiving. The converter seems to be mapped in a way that I will never be able to convert a webhook to the correct InitialUpdateWebhook, as it only converts to the processor version if it exists.
While I could definitely be wrong about any of this, my understanding leads me to think that the spec lines up correctly with the Plaid documentation and what I expect it to be. The only unexpected thing is Going.Plaid converting the webhook to a processor version of the webhook when I have not received a processor's version of a webhook.
I'll definitely look into implementing that alternative for now.

Ah, you're right. My apologies. I've not worked with the webhooks at all, I only added them upon request, and did not research deeply. I assumed that all (type, code) were unique, which does not appear to be the case.
Looks like I really need to have two different webhook bases, one for regular webhooks and one for processor webhooks. The (type, code) would be unique for each base type, I'm guessing. This will be a bit more involved, so I will have to spend some time researching how to parse the openapi for this.

From what I can tell, the Code and Type are indeed unique for either regular or processor webhooks. However, it seems the processor webhooks are only sent to Plaid processing partners like Stripe and Square, where Plaid integrates with their systems, and are never sent to regular applications that use Plaid. Even the Plaid Academy Webhooks Tutorial makes it seem like going on just the Type and Code is sufficient. Unless any Plaid partners are using this package, I would just change the Mapping to map to the regular webhooks instead of the processor ones. But that is of course not my decision to make and totally reasonable to go the extra mile

I know that at least one of the processor partners is using Going.Plaid, because I've gotten bug reports from them. As such, I'll do my best to accommodate them.

I see, in that case absolutely do accommodate them. I've overwritten the converter class to use the non-processor varients for my application, so I've got it working at the moment.

Fixed with v6.14.0. You can use WebhookBase and it'll select only regular webhook types now. Anyone using processor webhooks will have to switch to ProcessorWebhookBase.

authors: SudoWatson viceroypenguin


text:
Templates are missing in 0.4.4 PyPI Package

Templates are not bundled with current release.

Thanks for the report, @mbrunthaler .
I'll fix this tonight.

Fixed in v0.4.5 .
Already on PyPI.
Thanks again!

authors: mbrunthaler victor-o-silva


text:
how to train for real ESRGAN

hi
how can I use your model for train super resolution whit ideas of real ESRGAN(2 stage degradation)??

Hello! There are a few ways to use the pipeline, but the easiest would be to use the presets and fine-tune to get results closer to what you need: https://github.com/victorca25/traiNNer/blob/master/codes/options/presets/README.md


text:
Lack of documentation: use cases, sequence diagrams, etc.

Great tool, but not clear how to use it.
It would be great to have some basic explanation, which kind of problems may be solved by means of this. At least to start with and to decide either I need to use id or search for another solution.
Some sequence diagrams of what is executed in which order would improve documentation too.

@ilyakaznacheev, I added a description in Russian and English. The English description probably contains many grammatical errors. I can't fix them until I learn English...😅

authors: ilyakaznacheev victorizbitskiy


text:
No output file while no error message

tried both solver.m and my own m files

I have the same issue. Tried with both python3.6 and python2.7

I have the same issue. Did you resolve it?

i too couldn't solve. Please help

use command:
python run.py matlab_file_name.m
I finally get matlab_file_name.py.
The python code is generated then but the code is not good enough to work.

Can someone please elaborate more on how to successfully run this on any .m file?

Facing the same issue
no error message and output .py file is generated

I am not sure about others, but for me, I had the same issue. So basically main.py does not have a line main() to call the main function. After I added it, it ran.
Also, the author forgot to mention that this only works in python2. At least for me, python3 did not work but python2 did.

repo: victorlei/smop


text:
Make maven part of travis build

To make sure the Maven build keeps green, it would be great to have the maven build run as part of the travis build. This would catch problems such as the one caused by pull request #22

Will try to deal with this issue soon

First of all need to separate tests for unit and  integration because  travis do not have android device on board

@vidstige here is the cross-repo compare - it solves task of separating unit tests from integration tests

This is already handlet - You can see the log from latest master here: https://travis-ci.org/vidstige/jadb
As you can see travis picked up the pom.xml file and now builds only using maven. In the RealDeviceTest on line 40, there is a line that makes junit ignore all tests in that fixture if the setup cannot be performed.

I think it is not the best practice to mix unit tests and integration test - because:

Attaching real device to computer - which can be done accidentally  will result in changing test results
Unit tests are extremely quick in comparison to integration tests and may be used for TDD practice - as control that all is ok. If tests are mixed you will not be able see "regression"

So I Strongly propose to separate them

Yeah, sure. But it's evidently not needed for maven on travis as that's already working. ^^ I'll check cross fork diffs, but go ahead and make the pr. :+1:

repo: vidstige/jadb


text:
Gaston ignores my changes

Once in a while, Gaston(#dev) decides to ignore what I do.
Symptoms:

I make a change in a certain file
Gaston sees the change (ie. it reloads the page automatically and we see the logs in the gaston window)
But the changes are not visible in the browser (aka in the bundle.js)
From this point this behaviour persists

Restarting Gaston fixes this.
log sample:
info -----------------------------------------------------------
info socket-server new client Roundhound Flame ios safari
info watcher changed /Users/youzi/dev/directv-fl/src/components/active/channel/index.js
info socketServer reloading the browser in all clients
info bundler compiling JS
info bundler compiling JS
info socket-server client disconnected Roundhound Flame ios safari
info bundler JS compiled successfully
info browserify css compiled successfully
info bundler compilation process finished successfully
info -----------------------------------------------------------
info socket-server new client Splashsinger Lantern ios safari
info watcher changed /Users/youzi/dev/directv-fl/src/components/active/channel/index.js
info socketServer reloading the browser in all clients
info bundler compiling JS
info bundler compiling JS
info bundler JS compiled successfully
info socket-server client disconnected Splashsinger Lantern ios safari
info browserify css compiled successfully
info bundler compilation process finished successfully
info -----------------------------------------------------------
info socket-server new client Bushrider Glazer ios safari

have you tried refreshing the browser manually?
When there is an error compiling, the browser doesn't load gaston so it's impossible to reload from the server.

is this still an issue?

Haven't seen this in a while. Closing.

authors: andrepadez youzi

repo: vigour-io/gaston


text:
No BD found

Xcode 7.3
Last version plugin
Simulator iPad running app with a .db inside
Plugin doesn't find the DB, but plugin said "Automatically load all databases in simulator directory".
The .db file is in /Users/myuser/Library/Developer/CoreSimulator/Devices/5F03978F-AA14-4995-8C85-8651BA8D8681/data/Containers/Data/Application/3AAD2DC0-BF70-4284-AEEF-86BE89E2D48F/Documents/Application Support/offline/store.db

Thank you very much for your feedback ! I will check and repair it as soon as possible. ;-)

authors: josluimg viktyz

repo: viktyz/SQLPlugin


text:
Revert "base16-theme: Revert changes for active statusline"

This reverts commit 04f4b0f77863582bf3da42441d41220472c144a3.

What problem does this fix? Please squash into a single commit.

I believe this change messed up the status line for some base16 themes, including base16-ocean (which I'm using)

Squashed..
I'm using a slightly changed solarized airline theme by now.
So I do not really care that much, but @diegs could check which commit breaks it (using git bisect), and if e.g. https://github.com/vim-airline/vim-airline/pull/893 by itself broke it.

I actually bisected it to a different issue (https://github.com/vim-airline/vim-airline/issues/1067). Thanks!

So what problem does this fix? I still don't understand what you are trying to fix here.

@chrisbra
See https://github.com/vim-airline/vim-airline/pull/948#issuecomment-184644276 and around.
Feel free to close it and not revert the revert - I just felt it's better to not use a different bg/style for the filename part with normal/focused windows.

I don't think we should change this now back. Some people seem to like this behaviour, other the old one. At the very least, this should be configurable but as the current solution I am not merging. Sorry.

authors: blueyed chrisbra diegs

repo: vim-airline/vim-airline-themes


text:
Remove suffix (tani's articles)

100回目おめでとうございます。自分のウェブサイトの生成ツールを変えた影響でリンクが死んでしまったので、更新のほどよろしくお願いします。

vim-artemisの記事の方がリンク切れになってるっぽいです

ご指摘ありがとうございます。slugが間違っていました。修正しました。

authors: kuuote tani

repo: vim-jp/ekiden


text:
PHPStan - require version 0.8.5 or higher

Version number is then correctly displayed by executables from composer.
https://github.com/phpstan/phpstan/issues/160#issuecomment-322040877

Merged, thank you.

repo: vim-syntastic/syntastic

license: WTFPL


text:
Stacktest improvements

Make sure these boxes are checked before submitting your pull request:

[x] Add fixtures and spec when implementing or updating a test runner
[ ] Update the README accordingly  (not applicable)
[ ] Update the Vim documentation in doc/test.txt (not applicable)

Improvements to the stacktest runner

Add support for projects with subpackages
Detect fully-qualified module name when running TestFile
Add pattern for detection of hspec prop (property) tests
Modify test patterns so that they work for qualified imports

Something I would like to add eventually, but don'.t have the time for right now:
(I have prepared test cases, which I have commented out for now)

Support for detecting the spec tree, for example:

describe "Given ..." $
  describe "And..." $
   it "Then..." $ do
    x `shouldBe` y

would result in
stack test --test-arguments "-m \"/Given.../And.../Then...\""

I am not sure about the implementation of the module name detection, because it abuses the get_nearest function, and might fail if there is a comment before the module declaration that matches the search pattern.
An alternative approach could be to  analyse the directory tree until a folder that starts with a lower case character is found.

Thank you for this and apologies it has taken me a while to review. Could you confirm if you want to leave in the TODO bits and I'll merge accordingly

No pressure :)
Yes, it will probably be a while before I have time to try and implement the rest. It is currently in a stable state and can be merged. If you like, I can remove the TODO comments for now.

Always glad to contribute to an awesome project :)

repo: vim-test/vim-test


text:
runtime/autoload/zig/fmt.vim is missing from unix-like system distribution

Steps to reproduce

Open any file with extension ".zig" (it's ok if the file does not exist yet): vim /tmp/t.zig;
:w<CR> to save it.

Expected behaviour
No error occurs.
Version of Vim
9.0.1632
Environment
Operating system: Alpine Linux Edge
Logs and stack traces
running :msg<CR> gets error info:
Error detected while processing BufWrite Autocommands for "<buffer=1>":
E117: Unknown function: zig#fmt#Format

I guess src/Makefile needs update, so runtime/autoload/zig/fmt.vim would not be skipped?

:mes<CR> instead of :msg<CR>; sorry for the typo.

repo: vim/vim

license: Vim


text:
:tabm 1 and :tabm 2 move current tab to the same position

Both :tabm 1 and :tabm 2 move current tab to the same position.
That is, :tabm 1 moves current tab to the second position.
And :tabm 2 also moves current tab to the second position.
gVim 8.1.239 x64 on Windows 10 x64
Regards~

It is expected behavior.
See document on Vim.
:h :tabm

Probably, it is easy to understand by checking three or more tab pages.
Best regards,
Hirohito Higashi (h_east)

I am not so sure. There might be a problem here. Try vim --clean -p file1 file2 file3 and go to the 2 tab and enter :tabmove 2 (which should move the current tab to the end) according to :help :tabmove:

Move the current tab page to after tab page N.

So if I am on tab 2 and enter :tabmove 2 I expect the current tabpage to be moved one further back.
That is not what is happening, because it will return here early because tp == curtab.
https://github.com/vim/vim/blob/3cb4448b8a5c0192988f4e349aba6d7a91a9a4bd/src/window.c#L4100-L4105

No.
Before curtab is removed, the tab page number of the move destination is determined.
So, in that case it is correct not to move the tab page.
If you assign a number to the tab page after removing curtab, the relative movement logic such as :tabm - and :tabm + will be broken.
I examined it carefully and wrote a patch by v8.0.0259

The associated vim_dev's thread  is here.

I see, thanks. But it contradicts documentation. So perhaps we need to amend the documentation then?

Hmm, I don't think that is contradictory.

Move the current tab page to after tab page N.

Example:

Start Vim with three tabpages and cuurent tabpage is 2.
$ vim --clean -p 1 2 3 +tabn

Now tabpages are 1|(2)|3.
(2) is current tabpage.

DO :tabm 2
:tabm 2

Move the current tab page to after tab page 2.

Immediately after tab page 2 and just before the tab page 3.
(after tab page 2 is not tab page 3)
tab page 2 move to "immediately after tab page 2".
That is, the tab page 2 does not change from its original position.

There is no objection to changing the document in an easy-to-understand manner.
But I am not native, so it is difficult to express in English.
Thanks.

Okay, so how about the following doc patch (which also includes a test just to make sure):
diff --git a/runtime/doc/tabpage.txt b/runtime/doc/tabpage.txt
index a80d7c3b4..fcc2d2930 100644
--- a/runtime/doc/tabpage.txt
+++ b/runtime/doc/tabpage.txt
@@ -252,7 +252,12 @@ REORDERING TAB PAGES:
                    :tabmove    " move the tab page to the last
                    :$tabmove   " as above
                    :tabmove $  " as above
-
+<
+               Note: Moving the tabpage after index N does not necessarily
+               mean, the current tabpage will become index N + 1, e.g. if one
+               is on tabpage is 2 and one uses `:tabmove 2` this will be a
+               no-op (since it would be moved to after 2, but before 3) and
+               therefore behaves like `:tabmove 1` .
 :tabm[ove] +[N]
 :tabm[ove] -[N]
                Move the current tab page N places to the right (with +) or to
diff --git a/src/testdir/test_tabpage.vim b/src/testdir/test_tabpage.vim
index f4fbf28d1..45ccc2f7f 100644
--- a/src/testdir/test_tabpage.vim
+++ b/src/testdir/test_tabpage.vim
@@ -105,6 +105,16 @@ function Test_tabpage()
   call assert_equal(4, tabpagenr())
   7tabmove 5
   call assert_equal(5, tabpagenr())
+  " The following is a no-op
+  norm! 2gt
+  tabmove 2
+  call assert_equal(2, tabpagenr())
+  2tabmove
+  call assert_equal(2, tabpagenr())
+  tabmove 1
+  call assert_equal(2, tabpagenr())
+  1tabmove
+  call assert_equal(2, tabpagenr())
   call assert_fails("99tabmove", 'E16:')
   call assert_fails("+99tabmove", 'E16:')
   call assert_fails("-99tabmove", 'E16:')

Oh, Thanks for the write a document.

Moving the tabpage after index N does not necessarily mean, the current tabpage will become index N + 1

Umm, I am confused... Just making sure, let me check your perception.
Perhaps you think that the tab page number starts at zero?
The tab page number starts at 1.
Zero has a special meaning that moves to before the first tabpage.

Mentioning that N is counted before the move explains a lot.  I'll add something to the docs.

Hmmm
If current tab page is tab page N, then :tabm N and :tabm N-1 do nothing, and this is an expected behavior, right?

Hi h-east,
How about changing ":tabm N" -> Moving the current tab page and make it become index N+1? It is consistent with ":tabm 0". For example, 1|2|3|[4]|5|6, [4] is current tab page, ":tabm 2" will move current tab page to page 3. ":tabm 5" will move current tab page to page 5. It is hard to comprehend.

Hi,
Please refer to the latest document.
:tabm's document was updated by https://github.com/vim/vim/commit/d473c8c101262702ea9eeb14907ee20a786942b2#diff-c845c52c8b97208632000afd11291282 on 2018-08-11
            Move the current tab page to after tab page N.  Use zero to
            make the current tab page the first one.  N is counted before
            the move, thus if the second tab is the current one,
            :tabmove 1 and :tabmove 2  have no effect.
            Without N the tab page is made the last one.

I think that consistency is obtained by the following specifications.

N is counted before the move

--
Best regards,
Hirohito Higashi (h_east)

Hi h_east,
Thanks for your explanation! The latest help document makes sense. For example, 1|2|3|[4]|5|6, [4] is current tab page, ":tabm 0" makes the current page tab index as 1, how about ":tabm 2" makes the current page tab index as 3, and ":tabm 4" makes the current page tab index as 5. it is consistent.

authors: brammool chrisbra codenara h-east wurunjian


text:
Repeatly 'Join' miscount when n>2

Hi,
I'm using vim for quite a while, on recent versions, there seems
an issue for repeatly "Joinning" next row to current row.
for example,
if I type "J"  , vim joins next row to current row once.
if I type "1J" , vim joins next row to current row once.
if I type "2J", it still Join only once.
if I type "3J", it join twice.
seems the join number is not [n] but [n-1].
This seems not an intended behavior.

See :help J

Join [count] lines, with a minimum of two lines.

3J joins 3 lines, so this is intended.

See :help J

Join [count] lines, with a minimum of two lines.

3J joins 3 lines, so this is intended.

Yeah?
so, n[key] does not mean typing [key] for n times...
I see...

OT: this is one more example where 'relativenumber' is off-by-one.  And there is no work-around, because J is not an operator.

See :help J

Join [count] lines, with a minimum of two lines.

3J joins 3 lines, so this is intended.

Yeah?
so, n[key] does not mean typing [key] for n times...
I see...

Yep, this is what vi has always done.
--
From "know your smileys":
%	Bike accident.  A bit far-fetched, I suppose; although...
o      _     _         _
o     /_   _ \o  ()_/o  ()
< _   >() ()/<_    _| \   |/' /
()>() ()        ()   ()    (_)'  \o
/// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

authors: Houl brammool hukangha k-takata


text:
Relative line number is underlined if cursorlineopt includes number even if cursorline is off

Relative line number is always underlined if cursorlineopt includes number
Seems to be caused by this commit.
To Reproduce

vim --clean
:set relativenumber

Expected behavior
No cursor line should be displayed if cursorline is off.
Screenshots

Environment (please complete the following information):

Vim version:

VIM - Vi IMproved 8.1 (2018 May 18, compiled Sep 29 2019 22:27:49)
Included patches: 1-2102
Compiled by Arch Linux
Huge version with GTK3 GUI.  Features included (+) or not (-):
+acl               -farsi             -mouse_sysmouse    -tag_any_white
+arabic            +file_in_path      +mouse_urxvt       +tcl/dyn
+autocmd           +find_in_path      +mouse_xterm       +termguicolors
+autochdir         +float             +multi_byte        +terminal
-autoservername    +folding           +multi_lang        +terminfo
+balloon_eval      -footer            -mzscheme          +termresponse
+balloon_eval_term +fork()            +netbeans_intg     +textobjects
+browse            +gettext           +num64             +textprop
++builtin_terms    -hangul_input      +packages          +timers
+byte_offset       +iconv             +path_extra        +title
+channel           +insert_expand     +perl/dyn          +toolbar
+cindent           +job               +persistent_undo   +user_commands
+clientserver      +jumplist          +postscript        +vartabs
+clipboard         +keymap            +printer           +vertsplit
+cmdline_compl     +lambda            +profile           +virtualedit
+cmdline_hist      +langmap           +python/dyn        +visual
+cmdline_info      +libcall           +python3/dyn       +visualextra
+comments          +linebreak         +quickfix          +viminfo
+conceal           +lispindent        +reltime           +vreplace
+cryptv            +listcmds          +rightleft         +wildignore
+cscope            +localmap          +ruby/dyn          +wildmenu
+cursorbind        +lua/dyn           +scrollbind        +windows
+cursorshape       +menu              +signs             +writebackup
+dialog_con_gui    +mksession         +smartindent       +X11
+diff              +modify_fname      +sound             -xfontset
+digraphs          +mouse             +spell             +xim
+dnd               +mouseshape        +startuptime       -xpm
-ebcdic            +mouse_dec         +statusline        +xsmp_interact
+emacs_tags        +mouse_gpm         -sun_workshop      +xterm_clipboard
+eval              -mouse_jsbterm     +syntax            -xterm_save
+ex_extra          +mouse_netterm     +tag_binary
+extra_search      +mouse_sgr         -tag_old_static
   system vimrc file: "/etc/vimrc"
     user vimrc file: "$HOME/.vimrc"
 2nd user vimrc file: "~/.vim/vimrc"
      user exrc file: "$HOME/.exrc"
  system gvimrc file: "/etc/gvimrc"
    user gvimrc file: "$HOME/.gvimrc"
2nd user gvimrc file: "~/.vim/gvimrc"
       defaults file: "$VIMRUNTIME/defaults.vim"
    system menu file: "$VIMRUNTIME/menu.vim"
  fall-back for $VIM: "/usr/share/vim"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/lib/libffi-3.2.1/include -I/usr/include/harfbuzz -I/usr/include/fribidi -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/gio-unix-2.0 -I/usr/include/libdrm -I/usr/include/atk-1.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -pthread  -D_FORTIFY_SOURCE=2  -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -D_REENTRANT  -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
Linking: gcc   -L. -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-E -Wl,-rpath,/usr/lib/perl5/5.30/core_perl/CORE  -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -L/usr/local/lib -Wl,--as-needed -o vim   -lgtk-3 -lgdk-3 -lz -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0  -lSM -lICE -lXt -lX11 -lXdmcp -lSM -lICE  -lm -ltinfo -lelf -lnsl    -lcanberra  -lacl -lattr -lgpm -ldl   -Wl,-E -Wl,-rpath,/usr/lib/perl5/5.30/core_perl/CORE -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -fstack-protector-strong -L/usr/local/lib  -L/usr/lib/perl5/5.30/core_perl/CORE -lperl -lpthread -ldl -lm -lcrypt -lutil -lc   -L/usr/lib -ltclstub8.6 -ldl -lz -lpthread -lm

OS: Arch Linux
Terminal: termite, kitty

I assume the patch fixed this problem, so closing.

authors: brammool ngenisis


text:
Make error - error: ‘DBL_MAX’ undeclared (first use in this function)

Hello, I'm new to filing issues on Github. I ran into an issue with running make install on patch 7.4.1143. When I move to the previous commit, it worked fine.
Here's the log:
$ make install
Starting make in the src directory.
If there are problems, cd to the src directory and run make there
cd src && make install
make[1]: Entering directory `/home/iskim/tmp/vim/src'
mkdir objects
CC="gcc -Iproto -DHAVE_CONFIG_H       " srcdir=. sh ./osdef.sh
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1       -o objects/buffer.o buffer.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1       -o objects/blowfish.o blowfish.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1       -o objects/charset.o charset.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1       -o objects/crypt.o crypt.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1       -o objects/crypt_zip.o crypt_zip.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1       -o objects/diff.o diff.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1       -o objects/digraph.o digraph.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1       -o objects/edit.o edit.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1       -o objects/eval.o eval.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1       -o objects/ex_cmds.o ex_cmds.c
ex_cmds.c: In function ‘ex_sort’:
ex_cmds.c:560:48: error: ‘DBL_MAX’ undeclared (first use in this function)
       nrs[lnum - eap->line1].st_u.value_flt = -DBL_MAX;
                                                ^
ex_cmds.c:560:48: note: each undeclared identifier is reported only once for each function it appears in
make[1]: *** [objects/ex_cmds.o] Error 1
make[1]: Leaving directory `/home/iskim/tmp/vim/src'
make: *** [install] Error 2

Hi, yes this is already discussed in the vim-dev ml. I am sure, it will be fixed pretty soon.


text:
Vim9: cannot use backtick expansion in :folddoopen command in :def function

Describe the bug
In Vim9 script, we cannot use a backtick expansion in a :folddoopen command, nor in a :folddoclosed command.
To Reproduce
Run this shell command:
vim -Nu NONE -S <(cat <<'EOF'
    vim9
    def Func()
        var name = 'test'
        folddoopen echo '`=name`'
    enddef
    Func()
EOF
)

This is echo'ed:
`=name`

Expected behavior
test is echo'ed.
Environment

Vim version: 8.2 Included patches: 1-2301
OS: Ubuntu 16.04.7 LTS
Terminal: xterm(363)

Additional context
The same backtick expansion works fine in a global command:
vim9
def Func()
    var name = 'test'
    g/^/echo '`=name`'
enddef
Func()

test

Describe the bug
In Vim9 script, we cannot use a backtick expansion in a :folddoopen command, nor in a :folddoclosed command.
To Reproduce
Run this shell command:
vim -Nu NONE -S <(cat <<'EOF'
    vim9
    def Func()
        var name = 'test'
        folddoopen echo '`=name`'
    enddef
    Func()
EOF
)

This is echo'ed:
`=name`

Expected behavior
test is echo'ed.

I don't think =expr is evaluated for an :echo command.  But the
problem does reproduce when using :edit, where it is supposed to be
evaluated.  This works:
def Edit()
var name = 'xxx'
edit =name
enddef
This does not work:
def Edit()
var name = 'xxx'
folddoopen edit =name
enddef
--
From "know your smileys":
[:-)	Frankenstein's monster
/// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Describe the bug
In Vim9 script, we cannot use a backtick expansion in a :folddoopen command, nor in a :folddoclosed command.
To Reproduce
Run this shell command:
vim -Nu NONE -S <(cat <<'EOF'
    vim9
    def Func()
        var name = 'test'
        folddoopen echo '`=name`'
    enddef
    Func()
EOF
)

This is echo'ed:
`=name`

Expected behavior
test is echo'ed.

I don't think =expr is evaluated for an :echo command.  But the
problem does reproduce when using :edit, where it is supposed to be
evaluated.  This works:
def Edit()
var name = 'xxx'
edit =name
enddef
This does not work:
def Edit()
var name = 'xxx'
folddoopen edit =name
enddef
--
From "know your smileys":
[:-)	Frankenstein's monster
/// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

I don't think =expr is evaluated for an :echo command.

Yes, in Vim script legacy, I think a backtick expansion is only evaluated for a command which expects a filename, like :edit and :vimgrep.  :echo does not expect a filename but an expression, therefore a backtick expansion should not work after :echo.
Nevertheless, I still thought it would work for several reasons.
First, it already works in a global command:
vim9
def Func()
    var name = 'test'
    g/^/echo '`=name`'
enddef
Func()

test

Second, it was mentioned in this comment:

The value of the variable is inserted in place, thus if you want to use
it as a string you need to add quotes:
def Func()
var name = 'test'
g/^/echo "=name"
enddef

Third, it is documented as working in the replacement field of a substitution command:
https://github.com/vim/vim/blob/b23279d7a2d28de5df942924b77cf23672fc684f/runtime/doc/vim9.txt#L800-L805
And indeed, it works as documented:
vim9
def Replace()
  setline(1, 'pattern')
  var newText = 'blah'
  g/pattern/s/^/`=newText`/
enddef
Replace()
echo getline(1)

blahpattern

But this doesn't work in Vim script legacy:
fu Replace()
  call setline(1, 'pattern')
  let newText = 'blah'
  g/pattern/s/^/`=newText`/
endfu
call Replace()
echo getline(1)

`=newText`pattern

Which means that the syntax has been made valid in more contexts than it was initially designed for.  As I didn't know which contexts it was valid in, I assumed it was valid everywhere.
Fourth, we can no longer access a function-local variable in a command which is executed in the global context like :g or :s.  For those cases, the backtick expansion could be useful.
That being said, I can understand that we don't allow the syntax to work in too many places, to avoid unexpected expansions.  And I don't mind if it's limited to commands expecting filenames as arguments and the replacement field of :s.  That's because it doesn't always work anyway.  For example, the last time I was tempted to use it, I had to execute an assignment in a :folddoclosed and a :folddoopen command; but the assignment involved a function-local dictionary variable:
" inside a function
let state = {'open': [], 'closed': []}
folddoclosed let state.closed += s:get_state('closed')
folddoopen let state.open += s:get_state('open')

The code worked fine in Vim script legacy, but not in Vim9.  I wasn't able to use a backtick expansion either.  So, in the end, I moved the function-local variable to the script-local namespace:
# at the script level
var state: dict<list<number>>

# inside a function
...
state = {open: [], closed: []}
folddoclosed state.closed += GetState('closed')
folddoopen state.open += GetState('open')
...

I think this is the general solution for this kind of issue.  I have yet to find a single case where it didn't work.

I don't think =expr is evaluated for an :echo command.

Yes, in Vim script legacy, I think a backtick expansion is only evaluated for a command which expects a filename, like :edit and :vimgrep.  :echo does not expect a filename but an expression, therefore a backtick expansion should not work after :echo.
Nevertheless, I still thought it would work for several reasons.
First, it already works in a global command:
vim9
def Func()
    var name = 'test'
    g/^/echo '`=name`'
enddef
Func()

test

Second, it was mentioned in this comment:

The value of the variable is inserted in place, thus if you want to use
it as a string you need to add quotes:
def Func()
var name = 'test'
g/^/echo "=name"
enddef

Third, it is documented as working in the replacement field of a substitution command:
https://github.com/vim/vim/blob/b23279d7a2d28de5df942924b77cf23672fc684f/runtime/doc/vim9.txt#L800-L805
And indeed, it works as documented:
vim9
def Replace()
  setline(1, 'pattern')
  var newText = 'blah'
  g/pattern/s/^/`=newText`/
enddef
Replace()
echo getline(1)

blahpattern

But this doesn't work in Vim script legacy:
fu Replace()
  call setline(1, 'pattern')
  let newText = 'blah'
  g/pattern/s/^/`=newText`/
endfu
call Replace()
echo getline(1)

`=newText`pattern

Which means that the syntax has been made valid in more contexts than it was initially designed for.  As I didn't know which contexts it was valid in, I assumed it was valid everywhere.
Fourth, we can no longer access a function-local variable in a command which is executed in the global context like :g or :s.  For those cases, the backtick expansion could be useful.
That being said, I can understand that we don't allow the syntax to work in too many places, to avoid unexpected expansions.  And I don't mind if it's limited to commands expecting filenames as arguments and the replacement field of :s.  That's because it doesn't always work anyway.  For example, the last time I was tempted to use it, I had to execute an assignment in a :folddoclosed and a :folddoopen command; but the assignment involved a function-local dictionary variable:
" inside a function
let state = {'open': [], 'closed': []}
folddoclosed let state.closed += s:get_state('closed')
folddoopen let state.open += s:get_state('open')

The code worked fine in Vim script legacy, but not in Vim9.  I wasn't able to use a backtick expansion either.  So, in the end, I moved the function-local variable to the script-local namespace:
# at the script level
var state: dict<list<number>>

# inside a function
...
state = {open: [], closed: []}
folddoclosed state.closed += GetState('closed')
folddoopen state.open += GetState('open')
...

I think this is the general solution for this kind of issue.  I have yet to find a single case where it didn't work.

authors: brammool lacygoill


text:
Proposal: Add 'cursorlineopt' option

The continuation of https://groups.google.com/forum/#!topic/vim_dev/dQ-5znirV4Y
I created this pull-req in order to update the patch and test on CI.
Summary:
'cursorlineopt' changes the behavior of 'cursorline'.
'cursorlineopt' accepts one of the following string values:

line: Highlight the screen line of the cursor with CursorLine.
number: Highlight only the line number of the cursor with CursorLineNr.
both (default): line and number. This is the current behavior.

can we add an option, that makes CursorLine highlight only the current screen line (in contrast to the complete physical line that might span several screen lines). This can be annoying. I have an old patch for that behaviour (that introduces the cursorscreenline option).
https://groups.google.com/d/msg/vim_dev/1Yc9Z-82Z80/GXrCoPSdi3IJ
https://github.com/chrisbra/vim-mq-patches/blob/master/cursorscreenline

There is the user request that want to highlight only the current line number but not line.
It can do by hi CursorLine clear but setting a highlight is somewhat complicated (e.g. when revert previous highlighting).

Looks ready to include.  Christian: You could add the "screenline" option to 'cursorlineopt' and merge in your old patch.  Hmm, only question is what to use for "both" then, for highlighting the line number and the screen line? Or would you never highlight the line number and one screen line?

authors: brammool chrisbra ichizok


text:
Current Temperature warning when temp returns null

Hey there,
Great plugin. Love the 'plug and play' ease of use.
In the Homebridge logs, I am getting a number of entries where the Spa returns a null value for the temperature. This is because the Spa is set to Rest mode, and the temp is not reported in the BWA app.
Is it possible to set a null value to an arbitrary temp when you receive a null value? or just hide the warning in the logs.
Another great feature would be the option to switch full debug logs on/off - when it is off, it just shows the basics of the current Spa state. Also a poll time option would also be great to minimise the number of logs there are.
[16/05/2023, 07:35:47] [homebridge-balboa-spa] This plugin generated a warning from the characteristic 'Current Temperature': characteristic was supplied illegal value: null! Home App will reject null for Apple defined characteristics. See https://homebridge.io/w/JtMGR for more info.

Hi - these are good suggestions, thanks. I'll work on these at some point,
although (as you'll have noticed) haven't felt a need to make changes to
the plugin recently. But I certainly agree the logs could be better, and
that some kind of control over logging could be useful. If you have more
specific suggestions there, that would be appreciated.
On Mon, 15 May 2023 at 20:50, danieljbnz @.***> wrote:

Hey there,
Great plugin. Love the 'plug and play' ease of use.
In the Homebridge logs, I am getting a number of entries where the Spa
returns a null value for the temperature. This is because the Spa is set to
Rest mode, and the temp is not reported in the BWA app.
Is it possible to set a null value to an arbitrary temp when you receive a
null value? or just hide the warning in the logs.
Another great feature would be the option to switch full debug logs on/off

when it is off, it just shows the basics of the current Spa state. Also a
poll time option would also be great to minimise the number of logs there
are.

[16/05/2023, 07:35:47] [homebridge-balboa-spa] This plugin generated a
warning from the characteristic 'Current Temperature': characteristic was
supplied illegal value: null! Home App will reject null for Apple defined
characteristics. See https://homebridge.io/w/JtMGR for more info.
—
Reply to this email directly, view it on GitHub
https://github.com/vincedarley/homebridge-plugin-bwaspa/issues/25, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AGGHRYVQTMR2MH2QQIMHU4TXGKCJZANCNFSM6AAAAAAYCU3434
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

authors: danieljbnz vincedarley

repo: vincedarley/homebridge-plugin-bwaspa


text:
Expose flow rate and weather updates

Very interested to see this progressing and the Home Assistant integration.
Wanted to suggest exposing flow rate and weather updates as they are big beneficiaries of automation, e.g. leak detection and stale watering level.
Happy to adjust as required. For example, I did wonder whether to convert the weather call timestamps to python datetime objects but have followed the existing design pattern.

Can you use the master branch as the base

Yep. Moved across to master branch

authors: PeteBa vinteo

repo: vinteo/py-opensprinkler


text:
Fix precondition of processSCION

I will prove the assumptions on a separate PR.

This PR does not fully address the precondition error in calling process, but I will merge it already, given that it contains other helpful changes

repo: viperproject/VerifiedSCION


text:
Improve Searching in Linked List

I would like to add a code to improve linear searching in Linked List. Can you assign this issue to me ? @viralvaghela

Added the code #179 , Please review and merge it


text:
Which preferred fills have been used

I might be being dumb, but when I autofill, I see how many of my preferred fills have been used but not which. If I have 100 preferred fills, that's quite hard to work out manually. If the feature doesn't exist already, wouldn't it make sense to highlight the preferred fills that are in the grid?
Amazing app tho Viresh, hats off to you

That feature does not exist right now, and it makes sense to add it, sure. Will add soon!

This is done now, with v0.75.

Amazing
Jonathan Sykes
+61404719997
On Sun, 21 Aug 2022, 07:04 Viresh Ratnakar, @.***>
wrote:

Closed #26 https://github.com/viresh-ratnakar/exet/issues/26 as
completed.
—
Reply to this email directly, view it on GitHub
https://github.com/viresh-ratnakar/exet/issues/26#event-7226800741, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AGBJIAMKS4G7YGHY3Q7OYQDV2FB65ANCNFSM56X45ENQ
.
You are receiving this because you authored the thread.Message ID:
@.***>

authors: ballantynedewolf viresh-ratnakar

repo: viresh-ratnakar/exet


text:
Null pointer exception while sending message that is placed in different Assembly

Describe the bug
Sending Messages from different Assembly causing error
NullReferenceException: Object reference not set to an instance of an object
Mirror.NetworkWriter.Write[T] (T value) (at Assets/Mirror/Runtime/NetworkWriter.cs:178)
Mirror.MessagePacker.Pack[T] (T message, Mirror.NetworkWriter writer) (at Assets/Mirror/Runtime/MessagePacker.cs:47)
Mirror.NetworkServer.SendToAll[T] (T msg, System.Int32 channelId, System.Boolean sendToReadyOnly) (at Assets/Mirror/Runtime/NetworkServer.cs:326)
GameScripts.GetThisBallOutFromHere.GameplayManager+<startGame>d__42.MoveNext () (at Assets/GameScripts/GetThisBallOutFromHere/GameplayManager.cs:301)
UnityEngine.SetupCoroutine.InvokeMoveNext (System.Collections.IEnumerator enumerator, System.IntPtr returnValueAddress) (at <4cc8ec075538416496e5db5d391208ac>:0)

To Reproduce
Steps to reproduce the behavior:
To reproduce, just create some NetworkMessages in different Assembly. Then try to send them with NetworkServer.SendToAll(new CustomNetworkMessage() )
Expected behavior
Before update where MessageBase was Base class for all messages, it was sending messages correctly. Now when using NetworkMessage as a base, sending messages causing throwing exceptions
Screenshots

OS: Windows
Build target: Android
Unity version: 2020.1.0f1
Mirror branch: master, 23.0.3(downloaded through Package Manager in Unity)

Additional context
When removed assembly definition, everything seems to work just fine

Have you tried updating to the latest release? I ran into a similar issue when I was trying to put some of our code into a dll, but just having the code in a different assembly worked.

Have you tried updating to the latest release? I ran into a similar issue when I was trying to put some of our code into a dll, but just having the code in a different assembly worked.

No i haven't but I'll try after work and I will give a feedback

@Piflik
Update to the most recent version seems to fix this issue.


text:
SetHostVisibility() function is not working correctly

Describe the bug
Host a game, then a client connect, and everything works perfectly. But if client go far away from host, and go out of interest management zone, when client come back, spriterenderers of the side client was looking when went out of interest management are disabled...
[IMPORTANT] How can we reproduce the issue, step by step:

In one computer start Host.

In another computer start Client.

Host player and client Player are in the same zone, then client go away in any direction and go out of interest management zone, when client come back with host player, host player can't see client's spriterenderers of the player side he was looking when went out of interest management zone.

Expected behavior
player's sprite renderers of all sides should be enabled when SetHostVisibility() function is called. But I don't know why it is not happening.
Desktop (please complete the following information):

OS: Ubuntu 20.04 LTS
Build target: Linux
Unity version: 2020.3.15f2
Mirror branch: v44.0.3

which of the built in examples should we you use to reproduce this?

closing for lack of reply.
need to know how to reproduce.


text:
Fix #182,  use Stopwatch to keep track of NetworkTime

DateTime has potential issues with daylights savings time,  it is not as accurate and is very slow.
Use Stopwatch instead to keep track of server uptime and calculate NetworkTime

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


text:
How to wait for multiple ports to be ready?

Having quickly skimmed through the script, I couldn't find a way to wait for multiple host+port combinations to be ready. Any pointers on the best way to do this?
One way I can imagine is one wait-for-it starting another wait-for-it.
This is probably not a common situation, but in my case I need to wait for two independent databases to get ready before launching my app.

Could wait work for your case?
wait-for-it.sh foo &
wait-for-it.sh bar &
wait-for-it.sh baz &

wait

That's a good idea. I'll give it a shot.

I'm sorry that I haven't been able to test this out yet. I will close this issue for now, and reopen if necessary whenever I manage to start looking into this again.

authors: deiga gkotian

repo: vishnubob/wait-for-it


text:
Update README.md

PR to  close the issue.

Fixes #1


text:
Timeout error object doesn't include .timeout property

I am getting an error triggered by a timeout, but the error object doesn't have a timeout property.
My code:
superagent
    .post(window.location.pathname+'query/')
    .set('Content-Type','application/x-www-form-urlencoded')
    .timeout({
        response: 300
        ,deadline: 10000
    })
    .send({query:$input.value})
    .then(
        Response=>{
            if(Response.text == ''){
                this.replaceContent("I wasn't able to find an answer to that.");
            }
            else{
                this.replaceWith(Response.text);
                $input.value = '';
            }
        },
        Error=>{
            console.log(Object.keys(Error));
            if(Error.timeout){
                this.replaceContent("Sorry for taking so long.  I wasn't able to find an answer.");
            }
        }
    );

If I remove the call to .timeout(), or set the response timeout to something sensible - I've set it short for testing - then the error function doesn't get called.  Otherwise, it does get called, but Error only has code,status,method,url - no timeout.

same here

PR welcome

It's something specific to the promise interface. If you wrap request.end with util.promisify, it will work as expected:
const request = superagent.get('/').timeout(300);
const promise = util.promisify(request.end.bind(request));

promise.then(successFn, rejectFn) // Timeout error
request.then(successFn, rejectFn) // Abort error

I suspect it is an issue with the timeoutError function passing the error to the callback which only gets set when end() is called.

The issue is here
RequestBase.prototype.then = function (resolve, reject) {
  var _this = this;

  if (!this._fullfilledPromise) {
    var self = this;

    if (this._endCalled) {
      console.warn('Warning: superagent request was sent twice, because both .end() and .then() were called. Never call .end() if you use promises');
    }

    this._fullfilledPromise = new Promise(function (resolve, reject) {
      self.on('abort', function () {
        var err = new Error('Aborted');
        err.code = 'ABORTED';
        err.status = _this.status;
        err.method = _this.method;
        err.url = _this.url;
        reject(err);
      });
      self.end(function (err, res) {
        if (err) reject(err);else resolve(res);
      });
    });
  }

  return this._fullfilledPromise.then(resolve, reject);
};

The problem is that the _timeoutError function calls abort at https://github.com/visionmedia/superagent/blob/master/src/request-base.js#L717 so this is emitting an 'abort' event before end is being called.

thanks @a631807682 	for the PR #15140
PR merged and version bumped
released to npm as v5.1.4
npm install superagent@latest

or with yarn:
yarn add superagent@latest

authors: buccfer niftylettuce quasipickle unglud webarnes

repo: visionmedia/superagent


text:
Generate warning message to try alternate MIR for degenerate cases

Randy Settgast had a test dataset for something he was working on in Ale3d. I've attached it here. It is 3 hexs in a row. The two outer hexes have material A and the middle hex has a mix of materials B & C. So, the one and only mixing zone doesn't have any materials in common with the (few) neighboring zones. Default MIR gets it wrong and displays the middle hex as a clean zone. PLIC gets it right. I am thinking it would be good to add logic to MIR to check that if MIR did not cut any zones but that the input mesh does indeed have mixed zones (with significant volume fractions) then issue a warning that it is a possible degenerate case and to attempt an alternate MIR.
-----------------------REDMINE MIGRATION-----------------------
This ticket was migrated from Redmine. As such, not all
information was able to be captured in the transition. Below is
a complete record of the original redmine ticket.
Ticket number: 1650
Status: Pending
Project: VisIt
Tracker: Feature
Priority: Normal
Subject: Generate warning message to try alternate MIR for degenerate cases
Assigned to: -
Category: -
Target version: -
Author: Mark Miller
Start: 11/07/2013
Due date:
% Done: 0%
Estimated time:
Created: 11/07/2013 06:53 pm
Updated: 11/26/2013 02:32 pm
Likelihood:
Severity:
Found in version: 2.12.3
Impact: 2 - Low
Expected Use: 3 - Occasional
OS: All
Support Group: Any
Description:
Randy Settgast had a test dataset for something he was working on in Ale3d. I've attached it here. It is 3 hexs in a row. The two outer hexes have material A and the middle hex has a mix of materials B & C. So, the one and only mixing zone doesn't have any materials in common with the (few) neighboring zones. Default MIR gets it wrong and displays the middle hex as a clean zone. PLIC gets it right. I am thinking it would be good to add logic to MIR to check that if MIR did not cut any zones but that the input mesh does indeed have mixed zones (with significant volume fractions) then issue a warning that it is a possible degenerate case and to attempt an alternate MIR.
Comments:

1657_feusion05_001.00001.zip

repo: visit-dav/visit


text:
Rename 'Token.h' (conflict with Python's 'Token.h')

Describe the bug
I've been mucking around with our CMake build system, and occasionally run across a problem where instead of getting VisIt's Token.h from common/parser, Python's version of Token.h is included instead.
There are a couple of ways to avoid the conflict:

ensure python is in the include list only for targets that actually need it (We use VTK_INCLUDE_DIRS everywhere, which for VTK-8.1 lists python include as well)
ensure python include is always last in the include list for a target,

Probably best to  rename our file to remove the conflict altogether.
NOTE: The problem doesn't evidence with the current state of the CMake build system ... but attempts to modernize will encounter it.

common/parser/Grammer.h needs to be renamed as well.


text:
paradis boost build error on lassen

Describe the bug
paradis plugin fails to compile due to boost:
[ 95%] Building CXX object databases/paraDIS/CMakeFiles/MparaDISDatabase.dir/paraDISCommonPluginInfo.C.o
In file included from /usr/workspace/wsa/visit/visit/thirdparty_shared/3.4.1-test/blueos/boost/1_67_0/linux-ppc64le_gcc-8.3/include/boost/optional.hpp:15,
                 from /usr/include/boost/format/internals.hpp:20,
                 from /usr/include/boost/format.hpp:38,
                 from /usr/workspace/cyrush/2024.01.build_visit/visit/src/databases/paraDIS/RC_cpp_lib/stringutil.h:9,
                 from /usr/workspace/cyrush/2024.01.build_visit/visit/src/databases/paraDIS/RC_cpp_lib/Point.h:18,
                 from /usr/workspace/cyrush/2024.01.build_visit/visit/src/databases/paraDIS/avtparaDISFileFormat.h:19,
                 from /usr/workspace/cyrush/2024.01.build_visit/visit/src/databases/paraDIS/paraDISCommonPluginInfo.C:6:
/usr/workspace/wsa/visit/visit/thirdparty_shared/3.4.1-test/blueos/boost/1_67_0/linux-ppc64le_gcc-8.3/include/boost/optional/optional.hpp:28:10: fatal error: boost/core/addressof.hpp: No such file or directory
 #include <boost/core/addressof.hpp>
          ^~~~~~~~~~~~~~~~~~~~~~~~~~

Desktop

OS and version: blueos
VisIt Version: 3.4RC
Server info : lassen

we will skip building boost for BlueOS

resolved in #9331


text:
Help resolving missing functionality

I don't understand the RCS story about what is happening with this file between the develop and 3.1RC branches.
I updated this file on December 10th, 2019 (more than a year ago) in this commit to remove customization of the help target there and add the targets 7z-help and 7z-more-help. I believe every RC that was created after that change on develop should have contained this newer code.
However, when I browse to this file on 3.1RC (which was created well after I changed that file on develop), I still see the older code there with the customization of help. I think I should see the newer code because I think I did the work on develop before the 3.1RC was ever created. How can I find when a branch was created? -- I tried gitk and laboriously found the earliest commit in 3.1 to be around November 12, 2019. If that is correct, that was a month before I did my work on develop and would explain why none of the 3.1 stuff sees it.

I used
git log develop..3.1RC --decorate | tail -10
and got
commit c12ea91ba9cd833ba1e81e6d5dde4def48b22bb4
Author: Kathleen Biagas biagas2@llnl.gov
Date:   Tue Nov 12 19:10:23 2019 -0700
Revert a change I made to avtTransparencyActor::InputWasModified. (#4051)

It could cause a parallel engine crash.

as the first commit, which is consistent with what you got. So, I would say the 3.1RC was created before your commit on Dec 10th, 2019.

I used
git log develop..3.1RC --decorate | tail -10
and got
commit c12ea91ba9cd833ba1e81e6d5dde4def48b22bb4
Author: Kathleen Biagas biagas2@llnl.gov
Date:   Tue Nov 12 19:10:23 2019 -0700
Revert a change I made to avtTransparencyActor::InputWasModified. (#4051)

It could cause a parallel engine crash.

as the first commit, which is consistent with what you got. So, I would say the 3.1RC was created before your commit on Dec 10th, 2019.


text:
Issues with mili derived variables.

Doug Faux tried out the new derived variables and reported a few issues. Here is his e-mail.
Eric,
I was able to launch and see Derived/brick/stress and Derived/brick/strain
A few issues

There is no Derived/brick/stress/prin_stress/1
There is no Derived/brick/strain/prin_strain/1
There is a Derived/brick/strain/pressure                Should not be there, don’t know what was plotted

Thanks
Doug

@brugger1 Do you know what Doug is expecting prin_strain and prin_stress to contain? If it's the "principal deviatoric tensor", then these are "prin_dev_stress" and "prin_dev_strain". These all were copied directly from the old Mili plugin.

It sounds like pressure should only be added for stress, and the prin_dev_strain is missing the first component.


text:
visjs-network#40: fix type of zoomSpeed

This is an original contribution from @geminoa: https://github.com/visjs-community/visjs-network/pull/40
this is an addition to https://github.com/almende/vis/pull/3657 that is already merge here.
partially fixes #7

This solved the following error:

repo: visjs/vis-network


text:
How to use confirm with xeditable?

Hi, I love your library.. :)
Is it possible to combine angular-editable with confirm library like https://github.com/mattlewis92/angular-bootstrap-confirm ?

This is not an actual issue with the project. Questions such as this are better suited to be posted on sites like stackoverflow.com, using their Q/A format. Thanks.

authors: mitcht rahmatawaludin

repo: vitalets/angular-xeditable


text:
Question:What is the Priority of Tags stated in the playwright BDD run command vs Playwright Config using grep

I have my tests split up by Tag into Smoke, Regression, and Dev which I then use different run commands to kick off based on the environment/situation
Eg.
"e2e:smoke": "npx bddgen --tags '@smoke' && npx playwright test --reporter=line",
"e2e:regression": "npx bddgen --tags '@regression' && npx playwright test --reporter=line",

However I now also want to use the Grep functionality in playwright config to set up certain tests to be mobile or web, or both,
{
     grep:[/@web/, /@all/],
     name: "chromium",
     use: { ...devices["Desktop Chrome"] },
   },
   {
     grep:[/@web/,/@all/],
     name: "webkit",
     use: { ...devices["Desktop Safari"] },
   },
   {
     name: "Iphone",
     grep:[/@mobile/,/@all/],
     use: { ...devices["iPhone SE"] },
   },

However, I want to make sure that I still only run my Smoke or Regression tests

For instance below, I want to be able to only run the Smoke or Regression test, and then only run that against the Mobile device, not have both tests run for every mobile test.
@smoke
 @mobile
 Scenario: some smoke test

 @regression
 @mobile
 Scenario: some regression test

Does Playwright BDD filter out tests via tags first and then run the playwright.config filter against each test. Or will it just run all the tests that are tagged regardless of if the tag is in the Playwright BDD run command, or the Playwright Config?
is there an alternative way you would suggest setting up these kinds of scenarios?

Tags passed to bddgen command filter which features/scenarios will be generated.
Tags passed to playwright grep filter which of generated tests will run.
For this example:
@smoke
@mobile
Scenario: some smoke test

@regression
@mobile
Scenario: some regression test

Command to run smoke on mobile should be:
npx bddgen --tags '@smoke' && npx playwright test --project=Iphone

Closing as answered. Feel free to re-open if needed.

authors: RichardCariven vitalets

repo: vitalets/playwright-bdd