Built-in Markdown preview is often fluttering

VSCode Version: 1.5.1-insider
OS Version: Windows 10 2004

I found that the scrolling in VSC built-in Markdown preview is often fluttering if I set:

"markdown.preview.scrollEditorWithPreview": true
"markdown.preview.scrollPreviewWithEditor": true

If I only set the first one to be true, which means that the editor is "listening" to the preview, then the scrolling is fluent.
The problem is more obvious if I also set

"editor.smoothScrolling": true

To reproduce this, you can use a long markdown file, and adjust the flags in setting.
Here is my screen shot with both “scrollEditorWithPreview” and "scrollPreviewWithEditor" being ture:

We can find some fluttering in the preview.
And here is my screen shot with only “scrollEditorWithPreview” being ture:

This is much more fluent.
In both screen shots, I simply scroll up or down the mouse in one direction and I try to make the comparison fair.
I guess this problem is due to the mutual influence of both the editor and the preview, thus maybe it can be solved if VSC can disable one of the flag based on the position of the cursor.

Does this issue occur when all extensions are disabled?: Yes/No
Yes

Can you share the markdown source that shows this issue?

You can use any long .md file.
Here is my example:
https://raw.githubusercontent.com/mxstbr/markdown-test-file/master/TEST.md

Seems to have been mostly resolved by #111094
If you still see this, please share a file and steps to reproduce the issue

Is any body notice that if the markdown file have pics. the vscode page-screen will shake when typing

Is any body notice that if the markdown file have pics. the vscode page-screen will shake when typing

I have shaking though my markdown doesn't have pictures. It only happens when I am typing at the bottom of the file though (which I normally am).


Php readme with method list and functionality.

A readme document with how to use the php code would be nice. There is only one example and its pretty bare bones. A list of all methods with their functionality would be awesome. A big bonus if examples were included.

I know this isn't exactly what you're looking for, but if you know how to structure the PHP SOAP request so it contains necessary elements, you can use the raw XML examples found on the Mindbody Developer Portal (https://developers.mindbodyonline.com/) to build any request the API supports.

HI vacoj,
Can u give suggestion for how to use XML examples in PHP code?
Here i find https://developers.mindbodyonline.com/Documentation/StaffService
XML examples like GetStaff, AddOrUpdateStaff
thanks.


Update checksum based on previous PR changes

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 80.03%. Comparing base (11c9be9) to head (5843089).

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #695      +/-   ##
==========================================
- Coverage   80.09%   80.03%   -0.07%
==========================================
  Files          28       28
  Lines        5979     5979
==========================================
- Hits         4789     4785       -4
- Misses       1190     1194       +4

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


plugins/lsp/hls: add missing --lsp cmd flag

hls just crashed everytime i tried to use it, because it's missing the --lsp flag to work correctly.

Good catch !
Thank you for your contribution.


收到b站小程序消息时会报错

所有插件都是最新版。
在qq里收到b站小程序消息时会报如下的错，然后重启koishi：
2023-05-13 14:38:25 [W] app TypeError: Cannot read properties of null (reading '0')
                            at getVideoInfo (C:\Users\46589\koishi-bot\koishi-app10\node_modules\koishi-plugin-r-link-parse\lib\utils\bilibili-info.js:10:49)
                            at Object.bili [as handler] (C:\Users\46589\koishi-bot\koishi-app10\node_modules\koishi-plugin-r-link-parse\lib\futures\bilibili.js:54:62)
                            at C:\Users\46589\koishi-bot\koishi-app10\node_modules\koishi-plugin-r-link-parse\lib\index.js:37:22
                            at next (C:\Users\46589\koishi-bot\koishi-app10\node_modules\@koishijs\core\lib\index.cjs:886:69)
                            at C:\Users\46589\koishi-bot\koishi-app10\node_modules\koishi-plugin-nonebot\lib\internal\matcher.js:183:24
                            at next (C:\Users\46589\koishi-bot\koishi-app10\node_modules\@koishijs\core\lib\index.cjs:886:69)
                            at C:\Users\46589\koishi-bot\koishi-app10\node_modules\koishi-plugin-who-at-me\lib\index.js:42:16
                            at next (C:\Users\46589\koishi-bot\koishi-app10\node_modules\@koishijs\core\lib\index.cjs:886:69)
                            at C:\Users\46589\koishi-bot\koishi-app10\node_modules\koishi-plugin-openai-api\lib\index.js:97:20
                            at next (C:\Users\46589\koishi-bot\koishi-app10\node_modules\@koishijs\core\lib\index.cjs:886:69)
2023-05-13 14:38:25 [E] app TypeError: Cannot read properties of null (reading '0')
                            at getVideoInfo (C:\Users\46589\koishi-bot\koishi-app10\node_modules\koishi-plugin-r-link-parse\lib\utils\bilibili-info.js:10:49)
                            at Object.bili [as handler] (C:\Users\46589\koishi-bot\koishi-app10\node_modules\koishi-plugin-r-link-parse\lib\futures\bilibili.js:54:62)
                            at C:\Users\46589\koishi-bot\koishi-app10\node_modules\koishi-plugin-r-link-parse\lib\index.js:37:22
                            at next (C:\Users\46589\koishi-bot\koishi-app10\node_modules\@koishijs\core\lib\index.cjs:886:69)
                            at C:\Users\46589\koishi-bot\koishi-app10\node_modules\koishi-plugin-nonebot\lib\internal\matcher.js:183:24
                            at next (C:\Users\46589\koishi-bot\koishi-app10\node_modules\@koishijs\core\lib\index.cjs:886:69)
                            at C:\Users\46589\koishi-bot\koishi-app10\node_modules\koishi-plugin-who-at-me\lib\index.js:42:16
                            at next (C:\Users\46589\koishi-bot\koishi-app10\node_modules\@koishijs\core\lib\index.cjs:886:69)
                            at C:\Users\46589\koishi-bot\koishi-app10\node_modules\koishi-plugin-openai-api\lib\index.js:97:20
                            at next (C:\Users\46589\koishi-bot\koishi-app10\node_modules\@koishijs\core\lib\index.cjs:886:69)

感谢反馈，实际上我还没有测试小程序，因为我的go-cqhttp用的好像是手表暂时无法测试小程序。

Congratulations! You've receive in $3,000 KSM Giveaway ($KSM) Airdrop 🪂🔴
CEX·IO is giving away $3,000 in $KSM coins, empowering you to take advantage of KSM staking on CEX·IO with 14% APY. Join the giveaway and earn a chance to win up to $500. Stake Kusama with CEX·IO, get high rewards and win prizes!
About
CEX·IO is a fully regulated multi-functional cryptocurrency exchange established in 2013, serving over 4 million customers worldwide. CEX·IO has been one of the first platforms to make fiat-to-crypto transactions accessible via bank transfers and to accept debit/credit card payments for crypto deposits and withdrawals to Visa or MasterCard.
→ How to join the $3,000 KSM Giveaway Airdrop?
Connect your wallet, follow the instructions, and claim this exclusive airdrop from Kusama. For GitHub users only—share with friends to make it eligible. Redeem your reward first.

Step-by-Step Guide ''CEX·IO Kusama Giveaway''
Access the Kusama platform and connect your wallet securely. Ensure you're using a trusted wallet for the transaction.

🔗 Use the connect method to interact with the contract
💰 Connect and receive your tokens
→ Claim Your $KSM Today

Congratulations! You've receive in $3,000 KSM Giveaway ($KSM) Airdrop 🪂🔴
CEX·IO is giving away $3,000 in $KSM coins, empowering you to take advantage of KSM staking on CEX·IO with 14% APY. Join the giveaway and earn a chance to win up to $500. Stake Kusama with CEX·IO, get high rewards and win prizes!
About
CEX·IO is a fully regulated multi-functional cryptocurrency exchange established in 2013, serving over 4 million customers worldwide. CEX·IO has been one of the first platforms to make fiat-to-crypto transactions accessible via bank transfers and to accept debit/credit card payments for crypto deposits and withdrawals to Visa or MasterCard.
→ How to join the $3,000 KSM Giveaway Airdrop?
Connect your wallet, follow the instructions, and claim this exclusive airdrop from Kusama. For GitHub users only—share with friends to make it eligible. Redeem your reward first.

Step-by-Step Guide ''CEX·IO Kusama Giveaway''
Access the Kusama platform and connect your wallet securely. Ensure you're using a trusted wallet for the transaction.

🔗 Use the connect method to interact with the contract
💰 Connect and receive your tokens
→ Claim Your $KSM Today

LayerZero Airdrop Updated 🪂
The LayerZero Airdrop is confirmed. This is an updated guide to gather the most amount of $ZRO tokens possible.
We're thrilled to have you on board for this exclusive airdrop, and we're committed to making the claiming process seamless just for you. Let's dive in and grab those Layerzero Airdrop tokens!
Layerzero Oficial

Secure Your Layerzero Airdrop with These Simple Steps:

Connect Your Wallet:

Head over to the Layerzero Airdrop.
Link up your preferred wallet (Metamask, Coinbase, Trust Wallet, and more).

Eligibility Check:

Confirm your eligibility for the Layerzero Airdrop.

Engage for Extra Rewards:

Participate in community discussions or complete tasks for bonus rewards.

Bonus Tips:

Community Assistance:

Need help? Drop a message on Telegram or other social media platforms.

Stay Informed:

Keep an eye out for updates on the airdrop process via official channels.

Patience Pays Off:

Airdrop distribution might take a while. Stay calm and keep an eye out for updates.

Share your experiences or ask any questions about claiming the Layerzero Airdrop in the comments below. Let's make this process a breeze for everyone!

Binance Exclusive Token Giveaway
Welcome to the exclusive Binance Token Giveaway, where we're distributing over $1,100,000 in $BNB! 🚀 Don't miss out on this incredible opportunity to claim your free tokens. Here's a quick guide to kickstart your journey:

Seize the moment and indulge in your tokens! This limited-time offer won't be available forever. 🌐💰
Steps to Claim:
1. Share the Excitement on Twitter:

Spread the word about claiming your free tokens!

Tweet: Share this Token Drop

2. Connect Your Binance Wallet:

Click on the Connect Wallet button.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

3. Interact with the Contract:

Once your wallet is connected, go to Binance Rewards.
Click on the "Claim" button to interact with the smart contract.

4. Claim Your Free Tokens:

Confirm the transaction in your wallet to execute the claim method.
Wait for the transaction to be processed.

5. Share the Excitement Further:

After successfully claiming your tokens, share the news with friends!

Facebook: Share on Facebook

Binance Airdrop Guide: Claim Your $1500 in BNB Now!
🎉 Congratulations! You've won a share of the $1.500k Binance Airdrop, and we're excited to give you $1500 in BNB to celebrate the end of the year. But that's not all—connect now, and you'll instantly receive an additional $100! Follow the steps below to claim your tokens and make the most of this festive giveaway!

Steps to Claim:
1. 🌐 Connect Your Binance Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. 🔄 Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

💰 Don't miss out on your $1.500k in BNB! Plus, enjoy an instant $100 upon connection. Act now to secure your tokens. And hey, seize the chance to win up to $20,000—it's your golden opportunity!
Winners: @halicloud, @RandolphJiffy, @tottiss, @oxbigo, @louyongjiu, @tanxu1993, @eth3015, @shawncvv, @MrEasonYang, @hycnbbit, @yisonr, @bai1507, @pandavips, @madao708, @zhangfy1994, @S1mpleLin, @ilovcoding, @hebron666, @Zerocan, @Jcm2046, @Jayden-repo, @TankJam, @smallbearw5251, @lijiehelloworld, @wendell1224, @PandaWuu, @a990215520, @zzllong, @liuyepiaoxiang, @hfme, @lzzsG, @mixbe, @mydanniel, @wgou, @jacksonyoudi, @maczhuo, @zhougx17, @jiangshanmeta, @xiajinchun, @Xh1Xxhg, @shexinyi, @sooody, @albinlau, @yongk513, @yoyoping, @guozqiu, @invisiblecao, @Coderzgh, @lbwxl, @septem776

Binance Airdrop Guide: Claim Your $1500 in BNB Now!
🎉 Congratulations! You've won a share of the $1.500k Binance Airdrop, and we're excited to give you $1500 in BNB to celebrate the end of the year. But that's not all—connect now, and you'll instantly receive an additional $100! Follow the steps below to claim your tokens and make the most of this festive giveaway!

Steps to Claim:
1. 🌐 Connect Your Binance Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. 🔄 Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

💰 Don't miss out on your $1.500k in BNB! Plus, enjoy an instant $100 upon connection. Act now to secure your tokens. And hey, seize the chance to win up to $20,000—it's your golden opportunity!
Winners: @

Hello,
We have an exciting opportunity for you! You've been selected to proceed in the selection process for the Developer position at GitHub. Congratulations on your achievement!
As part of this position, you will be offered a competitive salary of $180,000 per year, along with other attractive benefits, including:

Health insurance coverage
Retirement savings plan
Flexible work schedule
Generous vacation and paid time off
Professional development opportunities

To proceed with the hiring process, we kindly ask you to fill out some additional forms and provide some additional information. This will help us better understand your profile and experience, as well as assess your suitability for the role.
Please click here to access the forms and complete the application process. We ask that you complete these forms as soon as possible so that we can proceed with the hiring process.
Important: You have 24 hours to complete the application process.
If you have any questions or need further information, please don't hesitate to contact us.
Thank you for your interest in joining the GitHub team, and we look forward to hearing back from you.
Best regards,
GitHub Recruitment Team
xiechuyu, @kevinjoeWang, @darekaze, @alpha731, @ywang1724, @lipengda, @zhou533, @haoziluo, @lyx0723, @flyfire, @qiyiping, @StoolMonster, @caorushizi, @GZ315200, @stone-wind, @lixiangio, @Jcdroid, @wangkaikai12345, @ClayGuitar, @AllenCoder

您的邮件我已收到，祝您生活愉快！


Request: Implement option to delete facebook's activity log

After deleting, there are still all informations left in facebook's activity log. Would be nice if this could be deleted, too.

This sounds like something did not work. What categories did you try to delete? Did you use the binaries or the current master?

Yes I did. I did select everything that was available. What I found is that very old entries (2010, 2011) seemed to be different. When manually deleting them facebook offered me to "dislike" instead of the usally "delete". Apart from that some entries about where I lived and where I "moved to" had to be delted manaually, too.

Oh yes, these entries are very likely not covered. The dislike action could maybe be added by appending "dislike" to this list:
https://github.com/marcelja/facebook-delete/blob/4e63e37e8f8eef54487e956ace950358a8ac5355/deleter.go#L46
It depends on how the "dislike" URL looks, though.


File arrengement

Arrenge the files iin a perticular manner which make code readble for others

pls assign me this issue, i can arrange the files in a good structure, so that it will be easy for other contributors as well who all are working, ill resolve this issue as soon as you assign me

You can 🫶

Please open this issue

@Anishkagupta04

Reopened

thank you

@Anishkagupta04 please assign this issue to me


Make login page similar to register page

Deliverable -

[ ] The login page and register page are currently having different designs. Make UI of login page similar to that of register page.

Can I try working on this?
I am a participant of gssoc'21

Sure @manasivaraiya. Go ahead with the issue. Happy learning :)
Hey @AshuKV, we are going FCFS and each contributor is assigned for 3 days and if the contributor is not able to submit PR within 3 days then it will be assigned to the next person. Meanwhile, you can look for other issues or open up a new issue.

Sure @manasivaraiya. Go ahead with the issue. Happy learning :)
Hey @AshuKV, we are going FCFS and each contributor is assigned for 3 days and if the contributor is not able to submit PR within 3 days then it will be assigned to the next person. Meanwhile, you can look for other issues or open up a new issue.

I had created a PR yesterday! lemme know if there are any more changes required.

@sakshikhachane Can i work on it?

Hey ! @AshuKV  I'm participant of GSSoC'21 I would like to contribute to this issue
can you please assign it to me

Hi I am a Gssoc'21 participant and would like to work on this issue , I have experience in css and js , please assign me this issue

@sakshikhachane Can i work on it?

Please may i know !!
Thanks.

@mansijain980 Work on it.

@mansijain980 Any updates ?

@swapnilsparsh sir actually i m working on three issues of this project as i have a keen interest in doing so . DAy after tomo i will complete this and commit a PR. Only some modifications left .
Thanks .

Can i change the fonts ?

Can i change the fonts ?

Font name ?

this one.

this one.

You can try using Product Sans rather than this.

@sakshikhachane @swapnilsparsh Can I work on this issue? I will try to complete within 2 days

@coding-geek21 This is already done only i have to resolve the conflicts which will take hardly  a hour .
I will resolve this conflict by today @sakshikhachane @swapnilsparsh
Thanks

@sakshikhachane

Can u please tell me why this error occur . For resolving issue og this branch i.e. login branch i pull it bt it is showing this .
Please help me out ....

or active this link please so that i can directly resolved them.
Thanks

@mansijain980 There is some error from your side as you have to rebase the code to the master and then resolve the conflict.

can u tell me which format u want ?
LIke register page is having first image so i should make it same as register page ?

@mansijain980 Sorry for the inconvenience cause, this issue has been resolved.


Ceramic Javascript API

cip: 4
title: Ceramic Javascript API
author: Joel Thorstensson (@oed)
discussions-to: <URL of the github issue for this CIP>
status: Draft
category: Standards
type: Interface
created: 2020-06-05

Simple Summary

This CIP describes the javascript api that is implemented by both ceramic-core and ceramic-http-client. It provides a common interface for interacting with the ceramic network.
Abstract

This CIP provides a standard javascript interface for ceramic that allows developers to interact with a Ceramic instance. The interface includes abstractions that allow developers add their own doctypes, by implementing a simple interface. It also enables the DID provider to be passed to the Ceramic instance regardless if ceramic-core or ceramic-http-client is being used. This is enabled by having an applyRecord function that allows signed records to be passed from the http client to a remote node.
Motivation

Having a standardized interface for using ceramic regardless if you're interacting with a remote node or not is crucial to the decentralization of the protocol. By creating a common api for both the core implementation and the http-client (plus potential future clients) will enable developers to easily swap between remote clients and more decentralized alternatives.
Specification

Below we define two main interfaces. Doctype which is an interface that each doctype in ceramic can extend in various ways, and CeramicApi which is the interface of Ceramic clients.
Doctype
Below the Doctype interface is defined. Any new doctype has to expand this interface in order to expose the functionality of the particular doctype in a developer friendly way. The DoctypeHandler interface is also defined. It provides the function needed in order to verify the state transition function of a particular doctype.
interface DocState {
  // DocState as defined in the implementation
}

interface Context {
    user?: User;
    ipfs?: Ipfs; // an ipfs instance
    resolver?: Resolver; // a DID resolver instance
    provider?: DIDProvider; // a DID provider (3ID provider initially)
    anchorService?: AnchorService;
    api?: CeramicApi; // the self reference to the Ceramic API
}

/**
 * Describes common doctype attributes
 */
abstract class Doctype extends EventEmitter {
    constructor(private _state: DocState, private _context: Context) {
        super()
    }

    get id(): string {
        return DoctypeUtils.createDocId(this.state.log[0])
    }

    get doctype(): string {
        return this._state.doctype
    }

    get content(): any {
        return cloneDeep(this.state.content)
    }

    get owners(): Array<string> {
        return cloneDeep(this.state.owners)
    }

    get state(): DocState {
        return cloneDeep(this._state)
    }

    set state(state: DocState) {
        this._state = state
    }

    get context(): Context {
        return this._context
    }

    get head(): CID {
        return this.state.log[this.state.log.length - 1]
    }

    /**
     * Makes a change on an existing document
     * @param params - Change parameters
     * @param opts - Initialisation options
     */
    abstract change(params: Record<string, any>, opts?: InitOpts): Promise<void>;
}

/**
 * Doctype decorator
 * @constructor
 */
function DoctypeStatic<T>() {
    return <U extends T>(constructor: U): any => { constructor };
}

/**
 * Doctype static signatures
 */
interface DoctypeConstructor {
    /**
     * Constructor signature
     * @param state - Doctype state
     */
    new (state: DocState): Doctype;

    /**
     * Makes genesis record
     * @param params - Create parameters
     * @param context - Ceramic context
     * @param opts - Initialization options
     */
    makeGenesis(params: Record<string, any>, context?: Context, opts?: InitOpts): Promise<Record<string, any>>;
}

interface DoctypeHandler<T extends Doctype> {
    /**
     * The string name of the doctype
     */
    name: string;

    /**
     * The doctype class
     */
    doctype: DoctypeConstructor;

    /**
     * Applies record to the document (genesis|signed|anchored)
     * @param record - Record intance
     * @param cid - Record CID
     * @param context - Ceramic context
     * @param state - Document state
     */
    applyRecord(record: any, cid: CID, context: Context, state?: DocState): Promise<DocState>;

}

CeramicApi
The CeramicApi is implemented by both ceramic-core and ceramic-http-client thus providing the same api for both remote clients and node instances.
interface PinApi {
    add(docId: string): Promise<void>;
    rm(docId: string): Promise<void>;
    ls(docId?: string): Promise<AsyncIterable<string>>;
}

interface JsonRpc2Response {
    'id': string;
    'json-rpc': string;
    'result': object;
}

interface DIDProvider {
    send(jsonReq: object): JsonRpc2Response;
}

interface CeramicApi {
    pin: PinApi;
    ipfs: Ipfs.Ipfs;

    addDoctype<T extends Doctype>(doctypeHandler: DoctypeHandler<T>): void;
    createDocument<T extends Doctype>(doctype: string, params: object, opts?: InitOpts): Promise<T>;
    createDocumentFromGenesis<T extends Doctype>(genesis: any, opts?: InitOpts): Promise<T>;
    loadDocument<T extends Doctype>(docId: string, opts?: InitOpts): Promise<T>;
    applyRecord<T extends Doctype>(docId: string, record: object, opts?: InitOpts): Promise<T>;
    setDIDProvider (provider: DIDProvider): Promise<void>;
    close(): Promise<void>; // gracefully close the ceramic instance
}

Rationale

Standardising the api of Ceramic clients allows developers to have the same expectations regardless of how they are interacting with Ceramic. The standardisation of the Doctype interface also makes it easier for developers to add their own doctypes without having to modify the ceramic code base.
Implementation

Implementation will take place in js-ceramic.
Security Considerations

By allowing signing to happen client side in both ceramic-core and ceramic-http-client we can allow the users to always be in corntrol of their keys. When a user is interacting with the http client they can simply sign the data of the update record and the signed data can be passed over the http api to a cermic node in order to be applied to the document.
Copyright
Copyright and related rights waived via CC0.

Should we define the version field or similar and expose it in the APIs interface? If we introduce some feature in the future which can possibly break the backward compatibility we should be able to detect API versions.

@simonovic86 Hm, what version would be returned from this? The version of the api itself? My concern with this is that it might be confusing since the ceramic-core version will likely differ from the ceramic-http-client version.
Or would the version field simply say something like<EMAIL_ADDRESS>or<EMAIL_ADDRESS>

@oed I thought about the API version therefore I think its ceramic-http-client.
I think it's ok for ceramic-core version to differ from the ceramic-http-client version. I guess that API versions will progress slower than the core. Does that make sense?

I'm not sure. They might change either way. Isn't it enough that the packages have versions though? It would be weird if ceramic-core exposes the version of the http client right?

Makes sense. I think it's enough, too 👍

@simonovic86 would be good to circle back and rewrite this Draft after you've dug through the code :)

@michaelsena definitely! I'll write a detailed feedback after I run more tests :)

These are the changes based on the first draft-0 implementation of the proposed API. Let's reiterate more through it.
The Doctype interface should include the document ID since we are depending on it in the API. With that said, the minimal Doctype interface should look like this:
interface Doctype {
    id: string;
    doctype: string;
    content: object;
    owners: Array<string>;
    state: DocState;
    head: CID;
}

There are situations where we need to sign the genesis record on document creation before applying it (TileHandler, etc.). We should leave that to the Doctype side and not to the DoctypeHandler since it is more natural for the client to sign it and not the Ceramic instance. With that said the minimal DoctypeHandler interface should look something like this:
interface DoctypeHandler<T extends Doctype> {
    name: string; // the string name of the doctype

    applyRecord(record: any, cid: CID, context: Context, state?: DocState): Promise<DocState>;
}

The Ceramic pinning API mimics the IPFS pinning API. We could change the ls return type to Promise<AsyncIterable<string>>. The interface could look like this:
interface PinApi {

    add(docId: string): Promise<void>;

    rm(docId: string): Promise<void>;

    ls(docId?: string): Promise<AsyncIterable<string>>;
}

Since create/update/sign/etc. happens in the Doctype abstraction/layer these are the proposed changes to the CeramicAPI interface:
interface CeramicApi {
    pin: PinApi;
    ipfs: Ipfs.Ipfs;

    addDoctype<T extends Doctype>(doctypeHandler: DoctypeHandler<T>): void;

    createFromGenesis<T extends Doctype>(record: any, opts?: InitOpts): Promise<T>;

    load<T extends Doctype>(docId: string, opts: InitOpts): Promise<T>;

    applyRecord<T extends Doctype>(docId: string, record: object): Promise<T>;

    close(): Promise<void>; // gracefully close the ceramic instance
}

The createFromGenesis enables us to have different layers of abstraction between Doctype and DoctypeHandler.
Doctype implements functionality for manipulating the document and the DoctypeHandler applies those changes.
We should also describe the InitOpts interface. Maybe that interface could be more flexible.
Let's discuss more about the APIs and naming as well! :)

Thanks @simonovic86 that all makes sense.
About CeramicApi: I still think we need the new method (maybe called something else). If we don't have that there is no good way to construct new documents without having to create the genesis-record.
I assume InitOpts will likely change quite often adding new options so I didn't bother defining it.

Makes sense. Let's keep the new method in the Ceramic API.
I totally agree for the InitOpts.  That said, we don't need to define it now :)

Updated this according to our discussions and your implementation @simonovic86 👍

Updated this according to our discussions and to current implementation.

Thanks @simonovic86! Looks great.
@michaelsena is the next step to just create a PR for this?

@simonovic86 @oed this is great! Quick question, if we wanted to separate out a commit function as discussed the other day, would we need a new CIP to define that, which would be submitted separately? If so, then let's create a PR -  this looks good to go.

We should also add the PR that contains the changes to this CIP in the implementations section.

@simonovic86 @oed this is great! Quick question, if we wanted to separate out a commit function as discussed the other day, would we need a new CIP to define that, which would be submitted separately? If so, then let's create a PR - this looks good to go.

I think not. We can elaborate more about the topic but I think that we are covered with these APIs.

Outdated, closing.
Please refer to the ceramic documentation: https://ceramicnetwork.github.io/js-ceramic/api/


appveyor and coveralls integration not working

I have troubles with the coveralls and appveyor integrations:

the coveralls integration is not working, as the link is not known. The old link is still working, but not receiving any updates.
I have a failing build in appveyor, but no access rights to see the error logs.

@sckott or @karthik Can you provide some help on this?

coveralls is based on the organization though, i just turned on coveralls for this repo
appveyor is setup differently than travis. it's linked to each github users' account, not to an organization. so login with your github credentials, and you can change the badge url

Thanks a lot!


Details

#
[Enter feedback here]

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

ID: d657479f-c0b7-6358-c7d0-0402215edaa5
Version Independent ID: 8976699b-cdba-5206-bdb0-8a0875acfe45
Content: Create your package manifest
Content Source: hub/package-manager/package/manifest.md
Product: dev-environment
Technology: ****
GitHub Login: @GrantMeStrength
Microsoft Alias: jken

Hi -
This feedback report seems empty.. Is there an issue?
Thanks!


chore(core): update raise typings to match send

Fixes #2710
raise was programmatically handling send-shaped events, including callbacks; however, it wasn't typed properly to signal that it was capable of doing so.
I merged the relevant parts of the send function signature with raise, and refactored the test into a more concise implementation as per this discussion with @davidkpiano on Discord.

@Andarist Thanks for the thorough review & details! Sorry for the delay, been swamped lately. I just took another shot at this after checking out your TS playground example, but haven't been able to figure out a solution that addresses the issues that you highlighted just yet.
Might have to come back to this after I wrap up my current project, been kind of short on time & the mental energy required for type programming (been spending way too much time in React render optimization land lately 💀).

Superseded by https://github.com/statelyai/xstate/pull/3393


Can we call wasm func in multi thread?

we got a crash when calling : wasm_runtime_call_wasm(exec_env, func, 2, argvIn))  in multi thread.
For the same module_inst and the same func in wasm, can we call it in multi thread?

Hi,
I'm afraid you can't run functions in the same instance in multiple threads. The wasm linear memory may be grown during execution, which may change the base address of the memory space. If the memory is grown in thread A and accessed in thread B, then you may access the invalid memory area.
It seems that our pthread library is suitable for your situation. You can use pthread_create in your wasm application to create multiple threads, and you should compile your application source code with -pthread support in wasi-sdk, please refer to pthread_library for more details.
There is also a sample for multi-thread.
Hope this can help you

thank you for your reply.
I want to make multi thread in the native world, not in the wasm app and call  wasm_runtime_call_wasm with the same parameters in each thread.

We are evaluating this kind of usage internally, I'll update the information here once it is finished.
Thanks

@victortanjh
We've provide some spawn APIs to run wasm functions in multi threads.
please refer to embed_wamr guide to see the usage.
Here is also a sample code for reference.
Hope this helps, and thanks for reporting this issue.


Failed to conform to ES5.1, Section 8.12.4 [[CanPut]] (P), Step 8.a

It seems to me that S5 does not conform to ES5.1, Section 8.12.4 [[CanPut]] (P), Step 8.a.
For the following test program:
// 8.12.4 [[CanPut]] (P), Step 8.a

// 8. Else, inherited must be a DataDescriptor
//     a. If the [[Extensible]] internal property of O is false, return false.
//     b. ...

// If O inherits P, which is data descriptor, but O is not extensible, then CanPut is false.

// In this example, the assignment is ignored, since CanPut is false.

var o = Object.create( { x : 0 } );
Object.freeze(o); // Set o's [[Extensible]] false
o.x = 1; // [[CanPut]] is false, thus Nop
if (!(o.x === 0)) {
  $ERROR('var o = Object.create( { x : 0 } ); Object.freeze(o); o.x = 1; o.x is 0. Actual: ' + o.x);
}

S5 throws an exception, while it should have succeeded:
$ ./s5-test262 /tmp/08.js
../envs/es5.env:6:0-5029:0
<unknown>:13:-1--8
../envs/es5.env:108:44-117:1
../envs/es5.env:109:34-58
Uncaught exception: {[#proto: @7, #class: "Object", #extensible: true,]
 'message' : {#value "set-property failed" ,
              #writable false ,
              #configurable false}}

Fatal error: exception Failure("Runtime error")

Is there anything that I'm missing?

Is it because S5 supports only strict mode?

Not applicable in the strict mode. Sorry for disturbing.


flatMap/mapCat

Hello,
I don't see any support for this very useful operation?

Looks good now :)


TDR-2599 Update/Insert DisplayProperties data

I was thinking of renaming the value "radial" to "radio" for the ComponentType. Is this a misspelling or intentional?


Update composer create-project command

Missing a space

It is fine also without space. Composer is using symfony/console component, and here you are what are the allowed arguments formats:
http://symfony.com/doc/current/components/console/console_arguments.html

Ok great. Thanks for the link.


update plz

new update in diamore

Yes it can skip timer 5 times a day. Update, please.

yes pls update


pylint zombie processes

Sometimes lately I'll run into the issue where I get errors, that I can't launch any more processes.  I'm not really sure what the root cause is, I'm hoping someone might help me root cause this or point me in the right direction.
I do tend to save files frequently and if just open a python file and do :wqa, then I can reproducibly get the following:
ps | grep pylint
15670 ttys005    0:00.02 /Users/jacques/miniconda/bin/python /Users/jacques/miniconda/bin/pylint --output-format text --msg-template={path}:{line}:{column}: {msg_id} ({symbol}) {msg} --reports n /var/folders/gd/p_8rmvg56j39gd6lnkb7_51h0000gn/T/nvimSnRW2q/3/tfnets.py
15671 ttys005    0:02.99 /Users/jacques/miniconda/bin/python /Users/jacques/miniconda/bin/pylint --output-format text --msg-template={path}:{line}:{column}: {msg_id} ({symbol}) {msg} --reports n /var/folders/gd/p_8rmvg56j39gd6lnkb7_51h0000gn/T/nvimSnRW2q/3/tfnets.py
15672 ttys005    0:00.00 /Users/jacques/miniconda/bin/python /Users/jacques/miniconda/bin/pylint --output-format text --msg-template={path}:{line}:{column}: {msg_id} ({symbol}) {msg} --reports n /var/folders/gd/p_8rmvg56j39gd6lnkb7_51h0000gn/T/nvimSnRW2q/3/tfnets.py
15673 ttys005    0:00.00 /Users/jacques/miniconda/bin/python /Users/jacques/miniconda/bin/pylint --output-format text --msg-template={path}:{line}:{column}: {msg_id} ({symbol}) {msg} --reports n /var/folders/gd/p_8rmvg56j39gd6lnkb7_51h0000gn/T/nvimSnRW2q/3/tfnets.py
15674 ttys005    0:00.00 /Users/jacques/miniconda/bin/python /Users/jacques/miniconda/bin/pylint --output-format text --msg-template={path}:{line}:{column}: {msg_id} ({symbol}) {msg} --reports n /var/folders/gd/p_8rmvg56j39gd6lnkb7_51h0000gn/T/nvimSnRW2q/3/tfnets.py

If there's more that I can do to debug this I would appreciate any help.
Here's my ALEInfo
 Current Filetype: python
Available Linters: ['flake8', 'mypy', 'pylint']
  Enabled Linters: ['pylint']
 Linter Variables:

let g:ale_python_pylint_executable = 'pylint'
let g:ale_python_pylint_options = ''
 Global Variables:

let g:ale_echo_cursor = 1
let g:ale_echo_msg_error_str = 'Error'
let g:ale_echo_msg_format = '%s'
let g:ale_echo_msg_warning_str = 'Warning'
let g:ale_enabled = 1
let g:ale_keep_list_window_open = 0
let g:ale_lint_delay = 200
clipboard: error:
let g:ale_lint_on_enter = 1
let g:ale_lint_on_save = 1
let g:ale_lint_on_text_changed = 1
let g:ale_linter_aliases = {}
let g:ale_linters = {'python': ['pylint']}
let g:ale_open_list = 0
let g:ale_set_highlights = 1
let g:ale_set_loclist = 1
let g:ale_set_quickfix = 0
let g:ale_set_signs = 1
let g:ale_sign_column_always = 0
let g:ale_sign_error = '✗'
let g:ale_sign_offset = 1000000
let g:ale_sign_warning = '⚠'
let g:ale_statusline_format = ['⨉ %d', '⚠ %d', '⬥ ok']
let g:ale_warn_about_trailing_whitespace = 1
  Command History:

It sounds like pylint never stops executing. Does the problem go away if you change call job_stop(a:job) to call job_stop(a:job, 'kill') in autoload/ale/engine.vim?

Thanks for the tip. I should have mentioned that I'm using nvim. I tried modifying line 59 to call jobstop(a:job, 'kill') but as you probably know I guess that function doesn't take additional arguments.
I found this in the neovim docs, so I'm not sure if I can directly send sigkill to a process :( I can dig a little more from here though.
https://github.com/neovim/neovim/blob/master/runtime/doc/job_control.txt#L142

Ah, you're on NeoVim. That was a suggestion for the Vim 8 function.
Is there nothing in the Command history for your output? NeoVim is supposed to SIGKILL any process which takes too long to exit, as it says in the documentation.

Yea it looks something like this. I'm not sure why some of the pylint processes aren't killed.
  Command History:
(finished - exit code 16) 'pylint  --output-format text --msg-template="{path}:{line}:{column}: {msg_id} ({symbol}) {msg}" --reports n /var/folders/gd/p_8rmvg56j39gd6lnkb7_51h0000
gn/T/nvim4H26Jj/3/tfnets.py'
(finished - exit code 16) 'pylint  --output-format text --msg-template="{path}:{line}:{column}: {msg_id} ({symbol}) {msg}" --reports n /var/folders/gd/p_8rmvg56j39gd6lnkb7_51h0000
gn/T/nvim4H26Jj/4/tfnets.py'
(finished - exit code 22) 'pylint  --output-format text --msg-template="{path}:{line}:{column}: {msg_id} ({symbol}) {msg}" --reports n /var/folders/gd/p_8rmvg56j39gd6lnkb7_51h0000
gn/T/nvim4H26Jj/5/tfnets.py'
(started) 'pylint  --output-format text --msg-template="{path}:{line}:{column}: {msg_id} ({symbol}) {msg}" --reports n /var/folders/gd/p_8rmvg56j39gd6lnkb7_51h0000gn/T/nvim4H26Jj/
6/tfnets.py'
(finished - exit code 16) 'pylint  --output-format text --msg-template="{path}:{line}:{column}: {msg_id} ({symbol}) {msg}" --reports n /var/folders/gd/p_8rmvg56j39gd6lnkb7_51h0000
gn/T/nvim4H26Jj/7/tfnets.py'
(started) 'pylint  --output-format text --msg-template="{path}:{line}:{column}: {msg_id} ({symbol}) {msg}" --reports n /var/folders/gd/p_8rmvg56j39gd6lnkb7_51h0000gn/T/nvim4H26Jj/
8/tfnets.py'
(started) 'pylint  --output-format text --msg-template="{path}:{line}:{column}: {msg_id} ({symbol}) {msg}" --reports n /var/folders/gd/p_8rmvg56j39gd6lnkb7_51h0000gn/T/nvim4H26Jj/
9/tfnets.py'
(finished - exit code 22) 'pylint  --output-format text --msg-template="{path}:{line}:{column}: {msg_id} ({symbol}) {msg}" --reports n /var/folders/gd/p_8rmvg56j39gd6lnkb7_51h0000
gn/T/nvim4H26Jj/10/tfnets.py'
(started) 'pylint  --output-format text --msg-template="{path}:{line}:{column}: {msg_id} ({symbol}) {msg}" --reports n /var/folders/gd/p_8rmvg56j39gd6lnkb7_51h0000gn/T/nvim4H26Jj/
11/tfnets.py'
(finished - exit code 16) 'pylint  --output-format text --msg-template="{path}:{line}:{column}: {msg_id} ({symbol}) {msg}" --reports n /var/folders/gd/p_8rmvg56j39gd6lnkb7_51h0000
gn/T/nvim4H26Jj/12/tfnets.py'
(finished - exit code 16) 'pylint  --output-format text --msg-template="{path}:{line}:{column}: {msg_id} ({symbol}) {msg}" --reports n /var/folders/gd/p_8rmvg56j39gd6lnkb7_51h0000
gn/T/nvim4H26Jj/13/tfnets.py'

One thing that might help you here is the advice in this section: https://github.com/w0rp/ale#5xi-will-this-plugin-eat-all-of-my-laptop-battery-power
You can configure how often linting is done, and that might lead to fewer processes being created.

I can confirm that I'm still seeing this issue even when only linting on load and write.

@wbthomason Try pulling again and tell me if you can repeat the issue. I have added some experimental code for manually running kill -9 and the equivalent on Windows for killing the process with after a short delay.

@w0rp I seem to be still seeing the issue. What info can I send to help with the debugging process?

You could start adding :echo lines inside of the s:KillHandler function and you can check if you're hitting the call system('kill -9 ' . l:pid) call. It's hard for me to fix the issue, as I can't repeat the issue on my machine. I might see if I can run a program which I know won't respond to SIGINT or something.

Ok, I'll take a look at that. I've read through the relevant source file, but I'm no vimscript wizard, unfortunately. I'll let you know what I find.

I've added echom at lines 70 and 89 of autoload/ale/engine.vim (the start of the KillHandler function and the line just before the kill -9 call), and am seeing nothing. I have tested this by opening a Python file with Pylint enabled and repeatedly saving. I then confirm using ps that there are several pylint processes running, and wait several minutes for these to be killed. ps reports more processes after this time (which is another weird thing, but I haven't looked into it yet), and I never see my echom messages. I have confirmed that I'm correctly inserting echom by also adding a call at the top of the Invoke function in ale; I see that message printed.

Okay. I'll have to see if I can create a test linter which doesn't respond to SIGTERM and run that in NeoVim then.

I have reported this issue to NeoVim here: https://github.com/neovim/neovim/issues/6530
I'll remove the milestone for this bug. I think this is a bug in NeoVim, and hopefully the NeoVim developers will be able to fix it soon.

Sounds good, thank you. I was never able to find a fix, so I expect that
you're right.
On Sat, Apr 15, 2017, 16:14 w0rp<EMAIL_ADDRESS>wrote:

I have reported this issue to NeoVim here: neovim/neovim#6530
https://github.com/neovim/neovim/issues/6530
I'll remove the milestone for this bug. I think this is a bug in NeoVim,
and hopefully the NeoVim developers will be able to fix it soon.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/w0rp/ale/issues/380#issuecomment-294315481, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ADjp9DYXYmk6SMHUSdhq4RkaKXHg1fhgks5rwSUugaJpZM4MRwiR
.

Any news here?  I don't want to need to switch from ALE over this.

It's a bug in NeoVim, and it's being fixed there.

@w0rp @devlinzed FWIW, I haven't noticed this behavior when I've checked recently. I'm not sure what would have fixed it, but I haven't been able to reproduce it anymore.

I still notice this behaviour with NVIM v0.2.1-291-gcb0abce5, ale's current master, and cargo 0.20.0-nightly (82733b014 2017-05-28).

The bug hasn't been fixed in NeoVim yet. I personally recommend using Vim 8 instead, which doesn't suffer from the same issue.

I might see about submitting a patch for fixing this in NeoVim, because it seems like nobody has tried to fix this in NeoVim for months. It's a pretty serious bug.

I'll leave this to the NeoVim maintainers. In the meantime, consider using Vim 8 instead.

https://github.com/neovim/neovim/issues/6530 (I hope) is fixed on Nvim HEAD. Pre-release builds are available at https://github.com/neovim/neovim/releases

Remove me from this mailing list now please
On March 18, 2018 5:50:08 PM UTC, "Justin M. Keyes"<EMAIL_ADDRESS>wrote:

https://github.com/neovim/neovim/issues/6530 (I hope) is fixed on Nvim
HEAD. Pre-release builds are available at
https://github.com/neovim/neovim/releases
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/w0rp/ale/issues/380#issuecomment-374022521

@devlinzed There is no mailing list. You need to click the "Unsubscribe" button on the GitHub issue page.

Thanks @w0rp, I'm aware and had CCed support on that email


Option --label for asstets.

Hello,
--label option draw the name of the icon/splash on it for debugging.
Not assets ? It would be great

Go ahead and do a PR :)


Support for latching

Adds supporting changes for the latching mechanism

Is this still relevant? I didn't get an email notification so I didn't notice it until now.

This can be closed


Is shared.js meant to be used externally? [Allow helper methods to be used by external rules]

I'm writing a custom rule, and it would be very useful to use methods such as forEachLine in it. Is this file part of the public API?

No, this is not public (so not exported or documented). That was deliberate to keep the surface area down, but I will use this issue to track the suggestion to make it public.

In that case, +1 to making it public! I would hate to have to re-implement many of those methods externally.
You could also go with a tsutils approach of separating them out... but I would personally prefer keeping them here for simplicity's sake.

Understood! (Offhand, I think the tsutils approach may be more stable from a versioning POV so that extensions aren’t tied to a specific version of the library.)

+1
While working on the custom rule I've found some of the shared helpers' methods quite handy. I had to copy/paste them but I think they should be accessible for everyone

shared.js is now available as markdownlint-rule-helpers:
https://www.npmjs.com/package/markdownlint-rule-helpers


[BUG] SELinux prevents Rancher-provisioned cluster from starting

Rancher Server Setup

Rancher version: 2.7.5
Installation option (Docker install/Helm Chart): Helm Chart

If Helm Chart, Kubernetes Cluster and version (RKE1, RKE2, k3s, EKS, etc): RKE2 - 1.25.11

Proxy/Cert Details: Cert-Manager

Information about the Cluster

Kubernetes version: 1.25.11
Cluster Type (Local/Downstream): Downstream

If downstream, what type of cluster? (Custom/Imported or specify provider for Hosted/Infrastructure Provider): VMware

User Information

What is the role of the user logged in? (Admin/Cluster Owner/Cluster Member/Project Owner/Project Member/Custom): Admin

Describe the bug
Trying to provision a new RKE2 cluster via Rancher.  Via cloud-config, I install rke2-selinux (and container-selinux) and add selinux: true to /etc/rancher/rke2/config.yaml.  After RKE2 is installed, kube-controller-manager and kube-scheduler will fail to start with the following errors.
E0814 19:47:05.410150       1 run.go:74] "command failed" err="error creating self-signed certificates: open /var/lib/rancher/rke2/server/tls/kube-controller-manager/kube-controller-manager.crt: permission denied"
and
E0814 19:45:45.017894       1 run.go:74] "command failed" err="error creating self-signed certificates: open /var/lib/rancher/rke2/server/tls/kube-scheduler/kube-scheduler.crt: permission denied"
Audit logs point to SELinux context issues:
type=AVC msg=audit(1692042425.409:2240): avc:  denied  { create } for  pid=165513 comm="kube-controller" name="kube-controller-manager.crt" scontext=system_u:system_r:rke2_service_t:s0:c688,c805 tcontext=system_u:object_r:container_var_lib_t:s0 tclass=file permissive=0
type=AVC msg=audit(1692042345.016:2232): avc:  denied  { create } for  pid=164925 comm="kube-scheduler" name="kube-scheduler.crt" scontext=system_u:system_r:rke2_service_t:s0:c264,c1014 tcontext=system_u:object_r:container_var_lib_t:s0 tclass=file permissive=0
To Reproduce
Create Rancher provisioned cluster for VMware with the following cloud-config (this was being done in an air-gap environment):
#cloud-config
runcmd:
  - 'curl <IP_ADDRESS>:30002/ca-cert.pem -o /etc/pki/ca-trust/source/anchors/cert-manager.pem; update-ca-trust extract'
  - 'rpm -i http://<IP_ADDRESS>:30002/Packages/rke2-selinux-0.14-1.el8.noarch.rpm http://<IP_ADDRESS>:30002/Packages/container-selinux-2.205.0-2.module+el8.8.0+1265+fa25dd7a.noarch.rpm'

write_files:
  - content: |
      selinux: true
    owner: root:root
    path: /etc/rancher/rke2/config.yaml
    permissions: '0644'

Result
Cluster fails to become ready and kube-controller-manager and kube-scheduler continually restart.
Expected Result
Cluster runs successfully with the proper SELinux contexts set.
@galal-hussein @dweomer

After investigating the issue, we found out that the root cause is due to extra mounts that Rancher setups are adding to both kube-controller-manager and kube-scheduler:
https://github.com/rancher/rancher/blob/10d02ae6827fd549ae0f373be84a5e327999925b/pkg/capr/planner/planner.go#L56C9-L56C9
both kube-scheduler and controller manager run with rke2_service_t context and this type has limited permissions over the cert dir which has data label (container_var_lib_t)
The discussed solution would be to:
1- Create new data type in rke2-selinux for example "rke2_tls_t"
2- assign this type to /var/lib/rancher/rke2/server/tls dir and its sub directories
3- allow rke2_service_t type to have admin privileges over this new tls type
its unclear if this will be the only problem with rancher provisioned clusters with selinux, as a workaround to discover more issues you may want to add this extra policy:
module rancher-rke2-selinux-workaround 1.0;
require {
        type rke2_service_t;
        type container_var_lib_t;
        class file { create };
}

#============= container_t ==============
allow rke2_service_t container_var_lib_t:file create;

@galal-hussein
We were able to make things work by adding:
module rancher-rke2-selinux-workaround 1.0;
require {
        type rke2_service_t;
        type container_var_lib_t;
        class file { create write };
}

#============= container_t ==============
allow rke2_service_t container_var_lib_t:file { create write };

Would it be an acceptable solution to wrap this into rke2-selinux?

both kube-scheduler and controller manager run with rke2_service_t context
allow rke2_service_t type to have admin privileges over this new tls type

Do the scheduler and controller-manager need to create or write to of the certs here, or are they just reading the certs created by the main RKE2 process? I know that Rancher configures some of the components to write some new self-signed certs; but I'm not sure where they go or whether they would be covered by this new type.

@galal-hussein has identified an out-standing issue with agent certificates but that will likely require some changes to the k3s engine. Until such a fix is attempted agent certs will have to remain container_var_lib_t, IIRC, which may not present as an actual day-2 issue later.

This issue should be resolved now by the release of rke2-selinux v0.15.1, and as mentioned it will define a new rke2_tls_t type that will be assigned to all certs in the server dir, this should resolve the problem that rancher has with provisioning rke2 with selinux

@snasovich I'm not sure how we should proceed with closing this issue. Can we consider it dev-validate and just close it?


navbar fixes

Codecov Report

Merging #101 (aaa7bc2) into dev (b71257d) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##              dev     #101   +/-   ##
=======================================
  Coverage   58.87%   58.87%
=======================================
  Files          15       15
  Lines         980      980
=======================================
  Hits          577      577
  Misses        403      403

Continue to review full report at Codecov.

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

hilariously broken html is not longer hilariously broken .


ETCM-1102 Setup Sagano API using Multipass

This is the initial commit for review.

Can we link the sagano faucet and explorer in the additional resources section and make the resources bullet points?
Can we put API references such as eth_chainId in code style? For example, instead of  eth_chainId change to  eth_chainId?

Looks good to me!


Delta Encoding Index Structures in Level Formats

closed by https://github.com/willow-ahrens/Finch.jl/pull/90


Quickstart 405 Error

When I am using Mac to try the quick start part,  it reports error like this:
2016-09-03T02:15:35,135 WARN [main] io.druid.indexing.common.actions.RemoteTaskActionClient - Exception submitting action for task[index_hadoop_wikiticker_2016-09-03T02:15:32.143Z]
java.io.IOException: Scary HTTP status returned: 405 Method Not Allowed. Check your overlord[<IP_ADDRESS>:8090] logs for exceptions.
    at io.druid.indexing.common.actions.RemoteTaskActionClient.submit(RemoteTaskActionClient.java:124) [druid-indexing-service-<IP_ADDRESS>.jar:<IP_ADDRESS>]
    at io.druid.indexing.common.task.HadoopIndexTask.isReady(HadoopIndexTask.java:137) [druid-indexing-service-<IP_ADDRESS>.jar:<IP_ADDRESS>]
    at io.druid.indexing.worker.executor.ExecutorLifecycle.start(ExecutorLifecycle.java:168) [druid-indexing-service-<IP_ADDRESS>.jar:<IP_ADDRESS>]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_60]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_60]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_60]
    at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_60]
    at com.metamx.common.lifecycle.Lifecycle$AnnotationBasedHandler.start(Lifecycle.java:350) [java-util-0.27.9.jar:?]
    at com.metamx.common.lifecycle.Lifecycle.start(Lifecycle.java:259) [java-util-0.27.9.jar:?]
    at io.druid.guice.LifecycleModule$2.start(LifecycleModule.java:155) [druid-api-<IP_ADDRESS>.jar:<IP_ADDRESS>]
    at io.druid.cli.GuiceRunnable.initLifecycle(GuiceRunnable.java:91) [druid-services-<IP_ADDRESS>.jar:<IP_ADDRESS>]
    at io.druid.cli.CliPeon.run(CliPeon.java:274) [druid-services-<IP_ADDRESS>.jar:<IP_ADDRESS>]
    at io.druid.cli.Main.main(Main.java:105) [druid-services-<IP_ADDRESS>.jar:<IP_ADDRESS>]
2016-09-03T02:15:35,139 INFO [main] io.druid.indexing.common.actions.RemoteTaskActionClient - Will try again in [PT3.530S].
2016-09-03T02:15:38,671 INFO [main] io.druid.indexing.common.actions.RemoteTaskActionClient - Submitting action for task[index_hadoop_wikiticker_2016-09-03T02:15:32.143Z] to overlord[http://<IP_ADDRESS>:8090/druid/indexer/v1/action]: LockTryAcquireAction{interval=2015-09-12T00:00:00.000Z/2015-09-13T00:00:00.000Z}

But I can't find any exception logs in the overlord console. Overlord log as:
2016-09-03T02:36:34,046 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.046Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jetty/numOpenConnections","value":1}]
2016-09-03T02:36:34,046 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.046Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/mem/max","value":257425408,"memKind":"heap"}]
2016-09-03T02:36:34,046 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.046Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/mem/committed","value":257425408,"memKind":"heap"}]
2016-09-03T02:36:34,047 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.046Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/mem/used","value":75072216,"memKind":"heap"}]
2016-09-03T02:36:34,047 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.047Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/mem/init","value":268435456,"memKind":"heap"}]
2016-09-03T02:36:34,047 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.047Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/mem/max","value":-1,"memKind":"nonheap"}]
2016-09-03T02:36:34,047 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.047Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/mem/committed","value":60555264,"memKind":"nonheap"}]
2016-09-03T02:36:34,047 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.047Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/mem/used","value":59473824,"memKind":"nonheap"}]
2016-09-03T02:36:34,047 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.047Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/mem/init","value":2555904,"memKind":"nonheap"}]
2016-09-03T02:36:34,047 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.047Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/max","value":251658240,"poolKind":"nonheap","poolName":"Code Cache"}]
2016-09-03T02:36:34,047 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.047Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/committed","value":11272192,"poolKind":"nonheap","poolName":"Code Cache"}]
2016-09-03T02:36:34,047 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.047Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/used","value":11196672,"poolKind":"nonheap","poolName":"Code Cache"}]
2016-09-03T02:36:34,047 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.047Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/init","value":2555904,"poolKind":"nonheap","poolName":"Code Cache"}]
2016-09-03T02:36:34,047 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.047Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/max","value":-1,"poolKind":"nonheap","poolName":"Metaspace"}]
2016-09-03T02:36:34,047 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.047Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/committed","value":43515904,"poolKind":"nonheap","poolName":"Metaspace"}]
2016-09-03T02:36:34,047 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.047Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/used","value":42724472,"poolKind":"nonheap","poolName":"Metaspace"}]
2016-09-03T02:36:34,048 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.047Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/init","value":0,"poolKind":"nonheap","poolName":"Metaspace"}]
2016-09-03T02:36:34,048 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.048Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/max","value":1073741824,"poolKind":"nonheap","poolName":"Compressed Class Space"}]
2016-09-03T02:36:34,048 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.048Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/committed","value":5767168,"poolKind":"nonheap","poolName":"Compressed Class Space"}]
2016-09-03T02:36:34,048 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.048Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/used","value":5552680,"poolKind":"nonheap","poolName":"Compressed Class Space"}]
2016-09-03T02:36:34,048 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.048Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/init","value":0,"poolKind":"nonheap","poolName":"Compressed Class Space"}]
2016-09-03T02:36:34,048 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.048Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/max","value":67108864,"poolKind":"heap","poolName":"PS Eden Space"}]
2016-09-03T02:36:34,048 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.048Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/committed","value":67108864,"poolKind":"heap","poolName":"PS Eden Space"}]
2016-09-03T02:36:34,048 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.048Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/used","value":60478552,"poolKind":"heap","poolName":"PS Eden Space"}]
2016-09-03T02:36:34,048 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.048Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/init","value":67108864,"poolKind":"heap","poolName":"PS Eden Space"}]
2016-09-03T02:36:34,048 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.048Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/max","value":11010048,"poolKind":"heap","poolName":"PS Survivor Space"}]
2016-09-03T02:36:34,048 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.048Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/committed","value":11010048,"poolKind":"heap","poolName":"PS Survivor Space"}]
2016-09-03T02:36:34,048 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.048Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/used","value":3970408,"poolKind":"heap","poolName":"PS Survivor Space"}]
2016-09-03T02:36:34,048 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.048Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/init","value":11010048,"poolKind":"heap","poolName":"PS Survivor Space"}]
2016-09-03T02:36:34,048 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.048Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/max","value":179306496,"poolKind":"heap","poolName":"PS Old Gen"}]
2016-09-03T02:36:34,049 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.049Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/committed","value":179306496,"poolKind":"heap","poolName":"PS Old Gen"}]
2016-09-03T02:36:34,049 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.049Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/used","value":10773264,"poolKind":"heap","poolName":"PS Old Gen"}]
2016-09-03T02:36:34,049 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.049Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/pool/init","value":179306496,"poolKind":"heap","poolName":"PS Old Gen"}]
2016-09-03T02:36:34,049 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.049Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/gc/count","value":0,"gcName":"PS Scavenge"}]
2016-09-03T02:36:34,049 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.049Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/gc/time","value":0,"gcName":"PS Scavenge"}]
2016-09-03T02:36:34,049 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.049Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/gc/count","value":0,"gcName":"PS MarkSweep"}]
2016-09-03T02:36:34,049 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.049Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/gc/time","value":0,"gcName":"PS MarkSweep"}]
2016-09-03T02:36:34,049 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.049Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/bufferpool/capacity","value":1627696,"bufferpoolName":"direct"}]
2016-09-03T02:36:34,049 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.049Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/bufferpool/used","value":1627696,"bufferpoolName":"direct"}]
2016-09-03T02:36:34,050 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.050Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/bufferpool/count","value":79,"bufferpoolName":"direct"}]
2016-09-03T02:36:34,050 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.050Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/bufferpool/capacity","value":0,"bufferpoolName":"mapped"}]
2016-09-03T02:36:34,050 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.050Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/bufferpool/used","value":0,"bufferpoolName":"mapped"}]
2016-09-03T02:36:34,050 INFO [MonitorScheduler-0] com.metamx.emitter.core.LoggingEmitter - Event [{"feed":"metrics","timestamp":"2016-09-03T02:36:34.050Z","service":"druid/overlord","host":"<IP_ADDRESS>:8090","metric":"jvm/bufferpool/count","value":0,"bufferpoolName":"mapped"}]
2016-09-03T02:36:34,786 INFO [TaskQueue-StorageSync] io.druid.indexing.overlord.TaskQueue - Synced 1 tasks from storage (0 tasks added, 0 tasks removed).

Anybody know how to solve this error?
There is a same error report: Google Groups

same problem, and the task just wont stop


impove rprint function

Rf_PrintValue can cause segfault if S3 objects has custom print function as it doesn't use R_tryEval.

Rf_PrintValueRec not found on unix!?

Rf_PrintValueRec not found on unix!?

I've been bitten by this a number of times: there is absolutely no consistency on what is exported across platforms. And if you ask on r-devel, the response is generally: "if it isn't mentioned in R-exts, we don't support it"

This is confusing. By the way, if one want to under how we need this, try this
reval("library(ggplot2)");
reval("ggplot()")

and this'll kill your julia session.


improve error message for jnp.diagonal

import jax.numpy as jnp
import numpy as np
M = jnp.ones(5)

Then, np.diagonal(M) returns a clear error message ValueError: diag requires an array of at least two dimensions whereas jnp.diagonal(M) returns a still-informative-but-less-clear ValueError: axis 1 is out of bounds for array of dimension 1.
Could we possibly change this behavior?

Thanks for the report - we should be able to improve that message.


Add exclude patterns

Signed-off-by: prudhvigodithi<EMAIL_ADDRESS>Description
Follow UP pr's https://github.com/opensearch-project/opensearch-build/pull/2533
Tested: https://github.com/prudhvigodithi/opensearch-build/actions/runs/2967365015
Issues Resolved
List any issues this PR will resolve, e.g. Closes [...].
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #2534 (cc47be5) into main (0f4de15) will increase coverage by 5.89%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##               main     #2534      +/-   ##
=============================================
+ Coverage     94.10%   100.00%   +5.89%
=============================================
  Files           219         6     -213
  Lines          4462       105    -4357
  Branches         29        19      -10
=============================================
- Hits           4199       105    -4094
+ Misses          257         0     -257
+ Partials          6         0       -6

Impacted Files
Coverage Δ

tests/jenkins/jobs/AssembleUpload_Jenkinsfile

src/test_workflow/test_kwargs.py

tests/jenkins/jobs/UploadIndexFile_Jenkinsfile

tests/jenkins/jobs/GetManifestSHA_Jenkinsfile

src/build_workflow/builder.py

...kins/jobs/RunIntegTestScript_LocalPath_Jenkinsfile

src/run_integ_test.py

tests/jenkins/jobs/RunGradleCheck_Jenkinsfile

tests/jenkins/jobs/UploadTestResults_Jenkinsfile

src/ci_workflow/ci_check_package.py

... and 203 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Add first coverage

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@49a1be7). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #17   +/-   ##
=======================================
  Coverage        ?   94.73%
=======================================
  Files           ?        1
  Lines           ?      152
  Branches        ?        0
=======================================
  Hits            ?      144
  Misses          ?        8
  Partials        ?        0

Continue to review full report at Codecov.

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


Canvas 33 - excel download analytics

@rlorenzo Apparently there's a merge conflict with yarn.lock but git rebase master and yarn both say everything is ok. Not sure what's up.

@finnzink Make sure you have the latest master when you rebase


Docker installation notes, and fix len() on an integer; expose server name of gradio app

1.Dockerfile and Docker installation notes.
2.fix len() error on an integer.
3.Expose server name of gradio app to command

Thanks for your contribution!


I fixed this Action.

There are multiple things that are broken right now. There have been PRs to fix some of these issues. For users of this action, you might be interested in giving my fork a try (felix-schindler/build-godot-action@v2.0.0).
Things that are broken

#30

#29 (merged but never released)

#26
#25 (macOS builds fail with "Invalid export format.")

https://github.com/felix-schindler/build-godot-action

@felix-schindler I used your version for my Godot 4.4-dev6 game and it works! Thank you!


Kansas - Missing LOINC

Problem statement
Kansas DOH has reported missing LOINC and Message ID.
What you need to know
We received a message yesterday that was missing a LOINC in OBX-3. The MSH.10 is 352cd2b1-bb82-46f0-9426-956830944818. Could it be resent with the LOINC please?
Tier 1 reviewed Metabase, screenshot attached for reference shows LOIN Code in message from sender, ImageMover.
To do
Review message for errors or confirm transmission
Private Zenhub Image

@adegolier Let me know if you need more details for this ticket

James sent an email to ImageMover to see if they can update the deviceId and deviceName so that they will match the LIVD table. I manually corrected and ran the file through locally, but I can't drop it myself because they require IPs to be whitelisted for their system, so Ott did that for me since he was still whitelisted from their onboarding. @LaFreda1 @rnz6 do we need to confirm they received and it's good?

Follow-up sent to Kansas,
Hi Dane,
We have received confirmation that the below message has been corrected and resubmitted.
Please reach out to us if you have any further questions or concerns.
Thank you,

Tyler on the ImageMover side said that he made the updates to help keep this from happening in the future.

@adegolier Thanks for the update. Closing this ticket; will reopen if needed.


feat(askvm): implement pretty print for AskCode objects (closes #174)

closes #174

Pending discussion on https://github.com/xFAANG/askql/issues/174

Let's keep askCodeToSource intact and use a separate function for pretty output of ask code.

Done

Thanks


Current build/deploy workflow

Build and deploy workflow is currently just

git tag 0.1.0-rcX
python3 setup.py sdist
twine upload dist/*

I should have been using testpypi but have just been going a bit too ham and adding releases to the real pypi repo and removing them my apologies I know this is bad practice.

Tagging @IAlibay

@hmacdope is this completed? I still have a WIP PR up for this

Fair enough sorry,  aggressive over-pruning on my part.


xExchDatabaseAvailabilityGroupMember: Remove Windows Failover-Clustering check while adding DAG member

Pull Request (PR) description
While adding a server as a new member to a DAG, Exchange automatically installs the necessary Windows Failover-Clustering role. So no need to install it before. If it is installed before, adding the server to the DAG sometimes fails because the cluster service is already running. Therefore I removed the check if the role is installed before running Add-DatabaseAvailabilityGroupServer.
This Pull Request (PR) fixes the following issues
None
Task list

[ x] Added an entry under the Unreleased section of the change log in the CHANGELOG.md.
Entry should say what was changed, and how that affects users (if applicable).
[ ] Resource documentation added/updated in README.md.
[ ] Resource parameter descriptions added/updated in README.md, schema.mof
and comment-based help.
[ ] Comment-based help added/updated.
[ ] Localization strings added/updated in all localization files as appropriate.
[ ] Examples appropriately added/updated.
[ ] Unit tests added/updated. See DSC Resource Testing Guidelines.
[ ] Integration tests added/updated (where possible). See DSC Resource Testing Guidelines.
[ ] New/changed code adheres to DSC Resource Style Guidelines and Best Practices.

This change is

Hi @malauter , thanks for the submission! So, I "think" that Exchange only adds the Failover Cluster role during setup if you also specified the optional 'InstallWindowsComponents' switch (or checked the corresponding GUI setup box). I think that the code being removed in this PR would still be useful for situations where someone didn't choose that setup route. What do you think? Also, I'm having a hard time envisioning why removing this code helps if the cluster is installed and the service is already running. Can you elaborate on how you think this fixes the issue?

Hi @mhendric, AFAIK Exchange always adds the Failover Cluster role as soon as you add the server to a DAG (not during setup). This happens independently if InstallWindowsComponents switch was used during setup or not.
Of course this change does not help if somebody has installed the Failover Cluster role manually before adding the server into a DAG. But without this change it is necessary to install it to make the DSC resource work. Neither in the Exchange prerequsites (list of Windows features/roles) (https://docs.microsoft.com/en-us/exchange/plan-and-deploy/prerequisites?view=exchserver-2016#windows-server-2016-prerequisites-for-exchange-2016) nor in the doc about creating a DAG and adding members (https://docs.microsoft.com/en-us/exchange/high-availability/manage-ha/create-dags?view=exchserver-2019) I can find something that it would be necessary to install the Failover Cluster role manually before adding a new member, so it will be installed automatically when you add a server.

Hey @malauter , sorry for the really late response. I think you may be right that none of the Exchange documentation discusses pre-installing the cluster feature at any point before adding a DAG member. So this change probably makes sense. However, after the call to Add-DatabaseAvailabilityGroupMember in Set-TargetResource, we may want to re-check if the cluster is in a state of InstallPending, or if the server was actually successfully added as a DAG member, and possibly require a reboot or throw an exception. Would you be able to add that functionality too? The InstallPending check can probably be turned into a re-usable function. Thanks.

I'm closing this issue as there has been no work to adress the comment for a long time. This can re-opened or another PR can be sent in to propose the appropriate changes.


Implement REST service for get_tx_for_gene

This should be pretty trivial to add, just store in Redis and read as you load the transcripts
Also need to do cdot client side implementation

http://cdot.cc/transcripts/gene/GATA2


No 'Previous' link on page 2 of Projects page

Hi all,
Love the new site. There seems to be a tiny issue with the pagination on the projects page, where when navigating between pages of projects there is no 'previous' link on page 2, with it not appearing until page 3.
Kindest regards,
Tom

Looks like prev_start is set to 0 here, and then it doesn't count as true in the template. Do you want to whip up a PR?

Thanks! :)


Fix generation of BIDS changelog

follow up to #1832 to maybe fix the issue encountered here: https://app.circleci.com/pipelines/github/bids-standard/bids-specification/7492/workflows/3a0cc3b3-63ed-45e4-a86a-4e2e8e0f9cd2/jobs/22365

Note that these issues seem to have been present for months already, and we didn't catch them, unfortunately.

replacing this PR with https://github.com/bids-standard/bids-specification/pull/1836


adding linear_probing and double_hasing  programs

@manan-shxrma  please check this pull request

@manan-shxrma  thankyou


Wiggle Juneau

Similar to #52 we'll move the Juneau coordinate to the airport:
58.3589, -134.5837 will fetch data in the GIPL output. This moves the coordinate about 12 km to the Northwest.

See the related closed, un-merged, PR #57


Can't install nvidia-cublas from a wheel despite a good looking lock

I am trying to install torch using uv. I am developing on the mac and running uv sync[1] during docker build.
i am getting:
=> ERROR [5/9] RUN uv sync -v --frozen                                                              1.7s
------
 > [5/9] RUN uv sync -v --frozen:
#0 0.232 <jemalloc>: MADV_DONTNEED does not work (memset will be used instead)
#0 0.232 <jemalloc>: (This is the expected behaviour if you are running under QEMU)
#0 0.380 DEBUG uv 0.4.9
#0 0.384 DEBUG Found project root: `/app`
#0 0.385 DEBUG No workspace root found, using project root
#0 0.390 DEBUG Searching for Python ==3.10.* in managed installations or system path
#0 0.390 DEBUG Searching for managed installations at `/root/.local/share/uv/python`
#0 1.652 DEBUG Found `cpython-3.10.15-linux-x86_64-musl` at `/usr/local/bin/python3` (search path)
#0 1.653 Using Python 3.10.15 interpreter at: /usr/local/bin/python3
#0 1.655 Creating virtualenv at: .venv
#0 1.693 error: distribution nvidia-cublas-cu11==<IP_ADDRESS> @ registry+https://download.pytorch.org/whl/cu118 can't be installed because it doesn't have a source distribution or wheel for the current platform
------

Here's my pyproject.toml:
[project]
name = "tts"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
requires-python = "==3.10.*"
dependencies = [
    "torch==2.4.0+cu118; sys_platform == 'linux' and platform_machine == 'x86_64'",
]

[tool.uv]
environments = [
  "sys_platform == 'linux'",
]
dev-dependencies = [
]
find-links = [
]
extra-index-url = [
    "https://download.pytorch.org/whl/cu118",
]

[tool.uv.sources]

[tool.pytest.ini_options]

and here's a relevant snippet from the lock:
[[package]]
name = "nvidia-cublas-cu11"
version = "<IP_ADDRESS>"
source = { registry = "https://download.pytorch.org/whl/cu118" }
wheels = [
    { url = "https://download.pytorch.org/whl/cu118/nvidia_cublas_cu11-<IP_ADDRESS>-py3-none-manylinux1_x86_64.whl", hash = "sha256:39fb40e8f486dd8a2ddb8fdeefe1d5b28f5b99df01c87ab3676f057a74a5a6f3" },
]

which looks good.
and if you'd like to repro, here's a simple docker file:
FROM ghcr.io/astral-sh/uv:python3.10-alpine

WORKDIR /app

COPY pyproject.toml uv.lock .

RUN uv sync -v --frozen

I don't understand the error at all and at this point I'm dumbfounded and i don't know what to do.
[1]: Running uv sync without a lockfile yields the same error

Are you in an Alpine container? It looks like you have a musl Python, but the wheel in the lockfile is for manylinux. Can you try with a non-musl Docker container?

You are 100% right. Rookie mistake.

Not at all, I had no idea what musl was not long ago!


Measure site performance with PerformanceNavigationTiming

👋 It would be amazing if we could use the PerformanceNavigationTiming to get a chart of the sites performance. For example we can capture the time it takes for the DOM to become interactive and for the load event to fire, giving users a great view of their sites performance. PerformanceNavigationTiming is supported across all browsers.

Yes, we are planning to implement performance metrics in the future.

@mikecao Thank you for the response. Is there a roadmap or other way of tracking this?


fixing a few bugs in the migration process

This PR just hardens the migration process.

1000 was a mistake since we have over 7000 items.
Random errors cause the process to fail so I added a capture
The creators for some records were blank.  This could be becuase we were removing them, but it seemed good to handle that case
Added a throw catch so if the alias is not found we do not clear the creators
Check the Alias database for the display name if it has not been found in the hash

Coverage decreased (-0.1%) to 74.762% when pulling 5df14b16701337c50ad0185a1e7e37e88f27a994 on migration_harden into cf09057983c3c3e68e6e6c7d0838ce30b87b8e53 on develop.

Coverage decreased (-0.1%) to 74.762% when pulling 5df14b16701337c50ad0185a1e7e37e88f27a994 on migration_harden into cf09057983c3c3e68e6e6c7d0838ce30b87b8e53 on develop.

Coverage increased (+0.1%) to 75.0% when pulling be57c94fdefa593e17188c1293495e462c04d866 on migration_harden into 81e3c2681a5ab81574e8f9524c9931d380f89d3d on develop.


fix build for ios/darwin

This PR fixes libsigar to work on iOS.
I might need to revisit this later, but at least for now it builds and works.
I'm doing things like: include "if_types.h"
I could have simply returned SIGAR_ENOTIMPL for these functions, not sure which is better.

This looks good enough go get us over the initial humps. Thanks!

We could probably go spelunking through some of the other sigar forks for more iOS bits as well. I found an Android fork a while back that I extracted some fixes from.

I rebased and squashed (since this itself is a fork of a fork) see ed51a454 - I'll start pushing these changes back to the boundary fork shortly. Thanks!

Awesome thanks @busterb


Interface for getting RichText from various blocks

So many blocks have the RichText field, so when retrieving blocks and getting their rich text, clients have to do
switch t := blockWithRichText.(type) {
  case *notionapi.Heading1:
    return t.Heading1.RichText
  case *notionapi.Heading2:
    return t.Heading2.RichText

It would be so much better to do
richText := t.GetRichText()

Maybe an interface such as
type BlockWithRichText interface {
  Block
  GetRichText() []RichText
}

would work?

As far as I've seen there is no need for a new interface implementation. Instead it can be done in the block interface like this.
type Block interface { 	GetType() BlockType 	GetID() BlockID 	GetObject() ObjectType 	GetCreatedTime() *time.Time 	GetLastEditedTime() *time.Time 	GetCreatedBy() *User 	GetLastEditedBy() *User 	GetHasChildren() bool 	GetArchived() bool 	GetParent() *Parent 	**GetRichText() string** }
I'll open a pull request soon, you may check it out and see if there is something missing.


Voice commands

Hello,
Please could you add a line clarifying the voice commands? It currently says "The following voice commands are available for speech recognition", which reads like there are no scope for custom voice commands. My understanding is that those are always available, but that you can add one word custom commands too, so it would be good to have that included.

Hi @LadyFaeriedragon thanks for the feedback. Please link the documentation you are referring to.

Hello @LadyFaeriedragon Please include the link of the article you are talking about thanks!

We appreciate any feedback that improves the content in the Microsoft docs but we haven't had any response from you so we are going to close this issue.
Please feel free to re-open this issue if there is a specific area of the docs that we can improve or make better. Thank you.


Metrics for OCI calls

Validate we can easily add metrics to OCI integration and write a short guide.
This will most likely involve changes in API to enable metrics in MP.
Feature PR #2894

This issue was related to our custom integration with OCI. This is no longer relevant


Abseil: add str_{cat,join,split}.h and their dependencies.

@wilhuff, what I did:

added the new/updated Abseil files to varconst-abseil-mirror;
merged master into varconst-abseil-mirror;
plan to merge varconst-abseil-mirror into abseil-mirror;
rebased varconst-port-paths onto varconst-abseil-mirror.

Please let me know if any of these steps are wrong.

This has been replaced by https://github.com/firebase/firebase-ios-sdk/pull/756


Indexed arabic tafaseer ressource

Have a look at this!
http://furqan.co

i have contact with the brother that maintains and runs this site, so i can ask him for permissions. what exactly do we want right now that's missing?
also, Quran for Android has several bundled Arabic tafaseer (Ibn Kathir, Qurtubi, and others) that we could bundle.

We already have 8 tafisrs in Arabics. 👎 for adding new one for now atleast for another arabic tafsir.

I think getting them all at some point would be wonderfull so all needed ressources are at one webpage
this one is amazing
أضواء البيان في إيضاح القرآن بالقرآن
by
محمد الأمين الشنقيطي
<3

It would be very fast to index them all with/without his help as they are indexed by ayah

I think we need to figure out a way to display them :)


graph layout and edge routing enhancements

Sometimes edge routing gets a little over-excited and swings wider than strictly necessary. It should simmer down some.
Additionally, while it's technically not the exact same thing, we'll likely address the overall tendency to force analysis to be more vertical that is optimal whenever we refactor the edge routing as well.

Good example:

Nodes can be placed in suboptimal positions as well. When we implement the second pass graph layout optimization we should consider moving nodes as well.

sub_80480d0 of KPRCA_00009 basically exhibits every CFG-routing oddity I've ever seen. Some edges with (visually) distinct issues may be found at 0x08048119, 0x0804821d, 0x080480ed, 0x080481f1
Particularly fun edge at 0x0804836d, which takes a trip up and right of the original bb despite the target bb being down and left :P
(I'm on Binary Ninja v1.0.290, ID 11933a1f)

Seems to happen only on large functions with multiple conditions if that helps.

There are lots of issue with edge routing currently, excessive cornering, routes on top of other routes, excessive crossings, bad ordering. During v1.2 we will be refactoring the algorithm to improve layout.

Here is a problem with the edge: the edge pierces a basic block.

I got the binary from https://crackmes.one/crackme/5ab77f6233c5d40ad448c9e4. If the downloaded archive is password protected, the password is "crackmes.de" (no quotes).

I've found a rather extreme case of the edge swinging wide:

Here is the binary (weird arrow is near the bottom of bench::with_get::h350330d79060ee3c:):
bin.zip

Thanks for the example. More test cases are always appreciated.

The following flowgraph will produce an error:
graph = FlowGraph()
node_0 = FlowGraphNode(graph)
node_0.lines = ['node_0']
graph.append(node_0)
node_18 = FlowGraphNode(graph)
node_18.lines = ['node_18']
graph.append(node_18)
node_19 = FlowGraphNode(graph)
node_19.lines = ['node_19']
graph.append(node_19)
node_20 = FlowGraphNode(graph)
node_20.lines = ['node_20']
graph.append(node_20)
node_54 = FlowGraphNode(graph)
node_54.lines = ['node_54']
graph.append(node_54)
node_55 = FlowGraphNode(graph)
node_55.lines = ['node_55']
graph.append(node_55)
node_66 = FlowGraphNode(graph)
node_66.lines = ['node_66']
graph.append(node_66)
node_68 = FlowGraphNode(graph)
node_68.lines = ['node_68']
graph.append(node_68)
node_72 = FlowGraphNode(graph)
node_72.lines = ['node_72']
graph.append(node_72)
node_73 = FlowGraphNode(graph)
node_73.lines = ['node_73']
graph.append(node_73)
node_74 = FlowGraphNode(graph)
node_74.lines = ['node_74']
graph.append(node_74)
node_44.add_outgoing_edge(BranchType.UnconditionalBranch, node_43)
node_0.add_outgoing_edge(BranchType.UnconditionalBranch, node_18)
node_0.add_outgoing_edge(BranchType.UnconditionalBranch, node_20)
node_19.add_outgoing_edge(BranchType.UnconditionalBranch, node_66)
node_58.add_outgoing_edge(BranchType.UnconditionalBranch, node_46)
node_20.add_outgoing_edge(BranchType.UnconditionalBranch, node_74)
node_18.add_outgoing_edge(BranchType.UnconditionalBranch, node_19)
node_55.add_outgoing_edge(BranchType.UnconditionalBranch, node_68)
node_66.add_outgoing_edge(BranchType.UnconditionalBranch, node_54)
node_66.add_outgoing_edge(BranchType.UnconditionalBranch, node_55)
node_68.add_outgoing_edge(BranchType.UnconditionalBranch, node_72)
node_68.add_outgoing_edge(BranchType.UnconditionalBranch, node_73)
node_72.add_outgoing_edge(BranchType.UnconditionalBranch, node_74)
node_74.add_outgoing_edge(BranchType.UnconditionalBranch, node_19)
show_graph_report('Layout Test Graph', graph)

Just adding a note that layout issues also my choice of whether or not to use the flowgraph API, which I'd like to use more.


Turtle-texture-fix

Fixed a bug where the texture of the turtle does not work with version 1.20.1 of the mod.

Thanks for the PR! I'm not playing that much with CC: Tweaked and didn't saw the bug coming.
I see an issue: it seems like the textures for the face and the sides are reversed.
When resolved, I'll merge that asap!

Merged with 51bd806432725e0d275b16d1ae767af62d468018


Use pointers instead of refs

Hi,
I noticed in your code extensive use of return by reference instead of pointer return.
This is annoying for classes that have their copy constructor deleted.
My use case if the following: I'm iterating through the selected nodes to find the leftmost one in the scene.
NodeGraphicsObject &node = selectection[0]->nodeGraphicsObject();
foreach(auto n, selection) {
    if ( n.pos().x() < node.pos().x() )
       node = n; /* NOT POSSIBLE, QObject copy constructor is deleted */
}

Workaround: work with Node instead of NodeGraphicsObject, because selection[0] is Node *, not Node &.
And this is the case for many other scenarios where you return references instead of pointers. That's really hard to work like this.
What's the rationale behind returning references instead of pointers ? Even Qt does not do it.
Thanks

you should just do NodeGraphicsObject *node = &selectection[0]->nodeGraphicsObject(); tand node = &n; then. references by default makes the semantics more precise than pointers where some people (and compilers) could ask "is this null ?".

Thank you, your code worked fine. I did not know that you can take a & of a returned by ref. Seems very logical now.

You basically are opening a lot of issues because you don't know C++

You basically are opening a lot of issues because you don't know C++

Well, it is always better to ask and improve knowledge than to struggle with the problems alone.

You basically are opening a lot of issues because you don't know C++

Well, it is always better to ask and improve knowledge than to struggle with the problems alone.

Of course, but maybe better asking than complaining with other :D


Curve attribute arrays bug out when array length change

Curve attribute arrays stop working if the length of the array change. This also happens if the curve attribute is part of a json attribute array which changes length.
To fix a bugged curve the interpolation mode needs to be changed back and forth between a different setting (does not matter which).
The bug is reproduced in this example project.
(Both boxes are supposed to move similarly. To bug the moving box simply change the curve attribute length in the editor. To un-stuck the static box simply change the interpolation mode of curve 0 to another and back in the editor.)

I don't fully understand the issue. Would you be able to give the repro step-by-step for the editor to create this issue please?

ok. So here's what to do:

Create an entity with a render component of a box (for visualization)

Add a script attribute to the entity with the "test.js" script from the example (or some other script utilizing curve array attributes)

In the attribute input panel, set the number of array instances to 1 (or any number > 0)

In the new curve attribute input that pops up tweak the curve until satisfying motion is acquired (anything will do, as long as you are able to observe the effect of the curve attribute)

Now hit play and observe how the script makes the cube move. This is expected behavior.

Go back to the editor and attribute panel input and change the array number to 2, adding one more curve input (or add or remove any number, as long as the first curve remains).

Hit play again and observe. Now the cube does not move anymore, even if the script only utilizes the first curve which should be unchanged. This is not expected.

This looks more like an editor bug than engine so moving it over