Fix calling set on destroyed element issue for bs-tooltip

It's possible if you very quickly try and open a tooltip while changing
routes, to get a console error because the tooltip tries to call set
during the transition.
This can happen if the user quickly moves the cursor across a tooltip trigger on their way to click a link. Hard to reproduce reliably, but I can make it happen every so often in my app.

Thank you! 👍


Use synchronized lists in MockReporter

attempt to fix #1178

Codecov Report

Merging #1179 into master will decrease coverage by 4.37%.
The diff coverage is n/a.

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

:green_heart: Build Succeeded

Expand to view the summary

Build stats

Build Cause: [Pull request #1179 opened]

Start Time: 2020-05-12T07:38:57.165+0000

Duration: 38 min 37 sec (2256824)

Commit: 346696547f69a5ebff36d176d5bdb26f594602b5

Test stats :test_tube:

Test
Results

Failed
0

Passed
1263

Skipped
12

Total
1275


Made json = true with body and json = object equivalent

Made json = true with body and json = object equivalent and unified form processing.
PR Checklist:

[x] I have run npm test locally and all tests are passing.
[x] I have added/updated tests for any new behavior.
[x] If this is a significant change, an issue has already been created where the problem / solution was discussed: https://github.com/request/request/issues/2813

PR Description
Please see issue https://github.com/request/request/issues/2813 to see the objectives of this change, and why they were made.

Hmmm, wonder what's gone wrong here. All the tests passed on local, but not here, I wonder why.


Add inline and hot module replacement

Address https://github.com/webpack/grunt-webpack/issues/36

@sokra What would be missing for this to get merged?

@sokra the PR is here as well :)

Works great!

Well done @chiplay

@jcreamer898 thanks - merged :tada:

This doesn't appear to work anymore.


[feat] Request -- Reduce ability of whales to pump and dump

Feature Request
Outsized Influence / Market Manipulation
Large wallets have the ability to influence the price of doge.  While is probable that some of the whale wallets are exchanges, it is not the case that all are exchanges.  This wallet, for example, dumps and dumps and then buys at the lower price.  Each 'reload' increases the amount of doge in the wallet. https://bitinfocharts.com/dogecoin/address/DG2mPCnCPXzbwiqKpE1husv3FA9s5t1WMt
Describe Preferred Solution
Larger, more frequent transactions should have a greater fee than smaller transactions.
Allow me to use doge to buy coffee and a hammer but discourage people from dumping 1,000,000 doge every few minutes to lower the value of the currency.  Exchanges should be able to register to except themselves from these additional fees.
Lower fees for everyday people, higher fees for the ultra wealthy.
Thanks devs!  Appreciate all you do!

Need whales to be incentivized to participate. But I agree, if you can somehow keep their desire to participate, yet charge them for not holding (sort of like a gains tax), that can help reduce volatility.

I recommend you contact your local regulators and ask them if they can increase enforcement against market manipulation

As someone who can only contribute ideas I appreciate the time you took to read and answer.
I disagree that this can only be solved externally -- in an unregulated market, market improving mechanisms can be built into the "tokenonomics" of the coin.  Just as certain structures encourage use or hording I think variable mining fees could improve trading.
But, again, if I disagree I send my thanks for your work.  Doge to the moon!

Regulators are becoming more and more corrupted and less and less useful re: Gamestop SAGA, SEC did nothing and it was a complete heist co-ordinated by them and the banks and the media together, contacting the regulators for this is pointless we're doing DOGE with blockchain to remove their involvement altogether, please re-open and consider this ticket. Making DOGE at least resistant to whale manipulation is vitally important, perhaps a decentralised exchange like a metamask sort of swap, where swap DOGE with BTC p2p, and make so no wallets can hold more than say 1000 000 D per wallet. This would make market manipulation at scale virtually impossible... stabilize the price and make it the people choice, price volatility is what is harming the adoption of crypto, taming the influence that the whales have is arguably one of the most important things, and places DOGE in a league of it's own. Elon Musk would absolutely love this suggestion, because then the whales would find it extremely difficult to short.

As someone who can only contribute ideas I appreciate the time you took to read and answer.
I disagree that this can only be solved externally -- in an unregulated market, market improving mechanisms can be built into the "tokenonomics" of the coin. Just as certain structures encourage use or hording I think variable mining fees could improve trading.
But, again, if I disagree I send my thanks for your work. Doge to the moon!

This is absolutely true, and fundamentally important, please may you really look at this again.
Imagine a coin that does not follow the price trend of all of the other coins, and rather just goes up organically/naturally rather than pumped and dumped by the banks and hedgefunds like all of the others... This would make DOGE noticed and frankly stop no one from piling in, bringing the market cap up to trillions...

I really like that idea.  Perhaps you could submit a modified ticket in the future that combines my idea with yours since my powers of persuasion seem to have failed me :)

Done, see:
Prevent market manipulation buy whales using tokenomics


Support new backend implementation for rag-ai plugin

Feature Suggestion

Support new backend of backstage for rag-ai plugin

Possible Implementation
N/A
Context
I have added rag-ai plugin and used with new backend of backstage, but got an error during startup
2024-05-08T04:17:34.370765253Z /app/node_modules/@backstage/backend-app-api/dist/index.cjs.js:1806
2024-05-08T04:17:34.370773628Z           throw new errors.ForwardedError(
2024-05-08T04:17:34.370776545Z                 ^
2024-05-08T04:17:34.370789462Z
2024-05-08T04:17:34.370791337Z ForwardedError: Plugin 'rag-ai' startup failed; caused by Error: augmentationIndexer must be registered
2024-05-08T04:17:34.370792753Z     at /app/node_modules/@backstage/backend-app-api/dist/index.cjs.js:1806:17
2024-05-08T04:17:34.370794170Z     at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
2024-05-08T04:17:34.370795545Z     at async /app/node_modules/@backstage/backend-app-api/dist/index.cjs.js:1805:9
2024-05-08T04:17:34.370797045Z     at async Promise.all (index 9)
2024-05-08T04:17:34.370798378Z     ... 2 lines matching cause stack trace ...
2024-05-08T04:17:34.370799712Z     at async BackstageBackend.start (/app/node_modules/@backstage/backend-app-api/dist/index.cjs.js:1894:5) {
2024-05-08T04:17:34.370809295Z   cause: Error: augmentationIndexer must be registered
2024-05-08T04:17:34.370811170Z       at Object.init [as func] (/app/node_modules/@roadiehq/rag-ai-backend/dist/index.cjs.js:255:17)
2024-05-08T04:17:34.370813086Z       at /app/node_modules/@backstage/backend-app-api/dist/index.cjs.js:1805:31
2024-05-08T04:17:34.370814795Z       at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
2024-05-08T04:17:34.370816420Z       at async Promise.all (index 9)
2024-05-08T04:17:34.370818170Z       at async BackendInitializer.doStart_fn (/app/node_modules/@backstage/backend-app-api/dist/index.cjs.js:1766:3)
2024-05-08T04:17:34.370819920Z       at async BackendInitializer.start (/app/node_modules/@backstage/backend-app-api/dist/index.cjs.js:1626:5)
2024-05-08T04:17:34.370821378Z       at async BackstageBackend.start (/app/node_modules/@backstage/backend-app-api/dist/index.cjs.js:1894:5)
2024-05-08T04:17:34.370822836Z }
2024-05-08T04:17:34.370824086Z

My implementation
packages/backend/src/index.ts
import {legacyPlugin} from '@backstage/backend-common';
import {createBackend} from '@backstage/backend-defaults';

const backend = createBackend();

...
backend.add(legacyPlugin('ai', import('./plugins/ai')));
backend.add(import('@roadiehq/rag-ai-backend'));

packages/backend/src/plugins/ai.ts
import { createApiRoutes as initializeRagAiBackend } from '@roadiehq/rag-ai-backend';
import { initializeOpenAiEmbeddings } from '@roadiehq/rag-ai-backend-embeddings-openai';
import { createRoadiePgVectorStore } from '@roadiehq/rag-ai-storage-pgvector';
import { createDefaultRetrievalPipeline } from '@roadiehq/rag-ai-backend-retrieval-augmenter';
import { OpenAI } from '@langchain/openai';
import { CatalogClient } from '@backstage/catalog-client';
import { PluginEnvironment } from '../types';

export default async function createPlugin({
    logger,
    tokenManager,
    database,
    discovery,
    config,
}: PluginEnvironment) {
    const catalogApi = new CatalogClient({
        discoveryApi: discovery,
    });

    const vectorStore = await createRoadiePgVectorStore({ logger, database, config });

    const augmentationIndexer = await initializeOpenAiEmbeddings({
        logger,
        tokenManager,
        vectorStore,
        catalogApi,
        discovery,
        config,
    });

    const model = new OpenAI();

    const ragAi = await initializeRagAiBackend({
        logger,
        tokenManager,
        augmentationIndexer,
        retrievalPipeline: createDefaultRetrievalPipeline({
            discovery,
            logger,
            vectorStore: augmentationIndexer.vectorStore,
            tokenManager,
        }),
        model,
        config,
    });

    return ragAi.router;
}

package.json
  "dependencies": {
    "@backstage/backend-common": "^0.21.7",
    "@backstage/backend-defaults": "^0.2.17",
    "@backstage/backend-plugin-api": "^0.6.17",
    "@backstage/backend-tasks": "^0.5.22",
    "@backstage/catalog-client": "^1.6.4",
    "@backstage/catalog-model": "^1.4.5",
    "@backstage/config": "^1.2.0",
    "@backstage/plugin-app-backend": "^0.3.65",
    "@backstage/plugin-auth-backend": "^0.22.4",
    "@backstage/plugin-auth-backend-module-guest-provider": "^0.1.3",
    "@backstage/plugin-auth-node": "^0.4.12",
    "@backstage/plugin-catalog-backend": "^1.21.1",
    "@backstage/plugin-catalog-backend-module-gitlab": "^0.3.15",
    "@backstage/plugin-catalog-backend-module-gitlab-org": "^0.0.0-nightly-20240423021331",
    "@backstage/plugin-catalog-backend-module-scaffolder-entity-model": "^0.1.15",
    "@backstage/plugin-kubernetes-backend": "^0.17.0",
    "@backstage/plugin-permission-backend": "^0.5.41",
    "@backstage/plugin-permission-backend-module-allow-all-policy": "^0.1.14",
    "@backstage/plugin-permission-common": "^0.7.13",
    "@backstage/plugin-permission-node": "^0.7.28",
    "@backstage/plugin-proxy-backend": "^0.4.15",
    "@backstage/plugin-scaffolder-backend": "^1.22.5",
    "@backstage/plugin-search-backend": "^1.5.7",
    "@backstage/plugin-search-backend-module-catalog": "^0.1.23",
    "@backstage/plugin-search-backend-module-pg": "^0.5.26",
    "@backstage/plugin-search-backend-module-techdocs": "^0.1.22",
    "@backstage/plugin-search-backend-node": "^1.2.21",
    "@backstage/plugin-techdocs-backend": "^1.10.4",
    "@roadiehq/rag-ai-backend": "^0.3.0",
    "@roadiehq/rag-ai-backend-embeddings-openai": "^0.2.2",
    "@roadiehq/rag-ai-backend-retrieval-augmenter": "^0.3.0",
    "@roadiehq/rag-ai-storage-pgvector": "^0.1.1",
    "app": "link:../app",
    "better-sqlite3": "^8.0.0",
    "dockerode": "^3.3.1",
    "express": "^4.17.1",
    "express-promise-router": "^4.1.0",
    "pg": "^8.3.0",
    "winston": "^3.2.1"
  },

This configuration was able to get me to startup, and queries OpenAI, but there is an auth error when querying the search endpoint for RAG entries.
// rag ai plugin
backend.add(import('@roadiehq/rag-ai-backend'));
backend.add(
  createBackendModule({
    pluginId: 'rag-ai',
    moduleId: 'config',
    register(env) {
      env.registerInit({
        deps: {
          tokenManager: coreServices.tokenManager,
          logger: coreServices.logger,
          database: coreServices.database,
          discovery: coreServices.discovery,
          config: coreServices.rootConfig,
          indexer: augmentationIndexerExtensionPoint,
          pipeline: retrievalPipelineExtensionPoint,
          model: modelExtensionPoint,
        },
        async init({ tokenManager, logger, database, discovery, config, indexer, pipeline, model }) {
          const catalogApi = new CatalogClient({ discoveryApi: discovery });
          const vectorStore = await createRoadiePgVectorStore({
            logger: loggerToWinstonLogger(logger),
            database,
            config,
          });

          indexer.setAugmentationIndexer(await initializeOpenAiEmbeddings({
            tokenManager,
            logger: loggerToWinstonLogger(logger),
            discovery,
            catalogApi,
            vectorStore,
            config,
          }));

          pipeline.setRetrievalPipeline(createDefaultRetrievalPipeline({
            tokenManager,
            logger: loggerToWinstonLogger(logger),
            discovery,
            vectorStore,
          }));

          model.setBaseLLM(new OpenAI({
            model: 'gpt-4o',
            temperature: 0.9,
            apiKey: config.getString('ai.embeddings.openai.openAIApiKey'),
          }));
        },
      });
    },
  })
);

Logged request error:
2024-06-06T12:01:00.847Z rag-ai info Received 0 embeddings from Vector store
2024-06-06T12:01:00.851Z rootHttpRouter info ::ffff:<IP_ADDRESS> - - [06/Jun/2024:12:01:00 +0000] "GET /api/search/query?term=Hello%20world&types[0]=software-catalog HTTP/1.1" 401 812 "-" "node" type=incomingRequest
2024-06-06T12:01:00.851Z rag-ai warn Unable to query Backstage search API for embeddable results. label=rag-ai-searchclient
2024-06-06T12:01:00.852Z rag-ai info Received 0 results when querying augmentations from search.
2024-06-06T12:01:00.852Z rag-ai info Starting to prompt LLM.
2024-06-06T12:01:01.667Z rootHttpRouter info ::ffff:<IP_ADDRESS> - - [06/Jun/2024:12:01:01 +0000] "POST /backstage/api/rag-ai/query/catalog HTTP/1.1" 200 89 "[http://localhost:3000/"](http://localhost:3000/%22) "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36" type=incomingRequest


feat: Notification service monitor

What type of PR is this?

/kind bug

What does this PR do / why we need it:
Fixes #1194
Closes #1194
Have you updated the necessary documentation?

[x] Documentation update is required by this PR.
[x] Documentation has been updated.

Which issue(s) this PR fixes:
Fixes #1194
How to test changes / Special notes to the reviewer:

Added E2E tests and Unit tests that can help in validating the changes.

Thanks @iam-veeramalla, left a few comments


Feature/paypal permissions token auth for expresscheckout

Implemented merchant-token-authorization feature, but it needs testing

PermissionApi -> username, password, accessToken, accessTokenSecret options

PermissionApi extends Api and overwrite the part where we add auth details.

Deprecated method addAuthorizeFields and move the logic from it to a method authorizeRequest($request); which you call in doRequest

PermissionApi::authorizeRequest gets the signature and adds it as a header.

You have to add a new factory PapyalExpressCheckoutPermissionGatewayFactory. It extends basic one and overwrite the api logic part.

Open a PR on https://github.com/Payum/Payum repo


Extend User form to be able to enter Full Name #227

Fixes #227
Ability to enter users full name, also update and view. It is optional for user to have full name in account.

Looks great! Thank you so much for all your amazing work!
Best regards,
Karl Dahlgren


vim plugin press u "undo" not worked

IDE build number: 1.0 #1401
Java version: 1.8
OS name and version: OSX 10.11

when vim plugin is enabled, press u should work as command+z to execute undo operation, but failed.
It is very easy to reproduce.

Hi. Currently i am busy with next version of Consulo. Sorry.
Thanks

$moveto consulo-vim


'.' is not recognized as an internal or external command, operable program or batch file

I am having trouble starting relay-full stack project. Plz Help
https://stackoverflow.com/questions/44970484/is-not-recognized-as-an-internal-or-external-command-for-relay-full-stack/44983742#44983742

Did you try with the latest version of Relay Fullstack? Because the problem should have been solve with https://github.com/lvarayut/relay-fullstack/pull/96

I'm going to close this issue since the issue has been solved with #96 . Please feel free to continue the discussion here if you had more question.


[k8s-keystone-auth] Improve CI

Is this a BUG REPORT or FEATURE REQUEST?:
/kind feature
The binaries affected:

[ ] openstack-cloud-controller-manager
[ ] cinder-csi-plugin
[x] k8s-keystone-auth
[ ] client-keystone-auth
[ ] octavia-ingress-controller
[ ] manila-csi-plugin
[ ] manila-provisioner
[ ] magnum-auto-healer
[ ] barbican-kms-plugin

What happened:
Currently, the k8s-keystone-auth CI job is defined in openlab code repo, which is not controlled by CPO community.
What you expected to happen:
Improve the CI for k8s-keystone-auth, we should maintain the test script in this repo instead of in openlab code repo.
How to reproduce it:
Anything else we need to know?:
Environment:

openstack-cloud-controller-manager version:
OpenStack version:
Others:

@lingxiankong Thanks for reporting this. This is much needed , I think we need to move all the test scripts into our repo instead of openlab. Could we make this issue generic, to track all CI jobs.

@ramineni I'd prefer we track the tasks using different issues so we could have achievable task for each issue, instead of that a single issue keeps open for months if some service/binary may never get people interested.
However, I agree we should have a unified approach for how to define CI job scripts for each service/binary, just like what we did here https://github.com/kubernetes/cloud-provider-openstack/blob/master/tests/e2e/cloudprovider/test-lb-service.sh

@ramineni I'd prefer we track the tasks using different issues so we could have achievable task for each issue, instead of that a single issue keeps open for months if some service/binary may never get people interested.
However, I agree we should have a unified approach for how to define CI job scripts for each service/binary, just like what we did here https://github.com/kubernetes/cloud-provider-openstack/blob/master/tests/e2e/cloudprovider/test-lb-service.sh

@lingxiankong fine with me. Thanks.


Add "quote_style" option

UglifyJS2 v2.4.17 has a new option, "quote_style," which allows the preservation of quote marks. This is extremely helpful when writing a script that outputs JSON in a particular way.
I just did a PR for grunt-contrib-uglify, will port that to this later this afternoon.

Just curious why this needs to be a gulp-uglify option. You can pass compress, mangle and output options that are pass forward to UglifyJS.
(Obviously, the upgrade is still required)

@terinjokes No particular reason, other than the syntax (0 for original behaviour; 3 to preserve original quotes) is a bit unintuitive. It's probably not as necessary as the preserveComments helper option, though.

Have you suggested getting these options as aliases in UglifyJS first?

@terinjokes That... Is a much better approach. I'll close this request and do that instead. Thanks!

I'm not seeing a post from @aendrew in mishoo/UglifyJS2. Laking this functionality is very frustrating.

@jshado1 That should be supported as of the next version of gulp-uglify

@terinjokes IIRC, didn't quote_style already work, and my PR was simply to add some aliases?

You can prevents stripping quotes from property names in object literals by setting keep_quoted_props to true:
.pipe(uglify({
    output: {
      keep_quoted_props: true // when turned on, prevents stripping quotes from property names in object literals.
    }
  }))


No support for braces in globPatterns

Not critical and does not prevent the server from working in this case.
Jan 04 23:15:34.555 DEBG From server metals: {"jsonrpc":"2.0","id":"4","method":"client/registerCapability","params":{"registrations":[{"id":"1","method":"workspace/didChangeWatchedFiles","registerOptions":{"watchers":[{"globPattern":"file:///home/igor/magine/promo-codes/*.sbt"},{"globPattern":"file:///home/igor/magine/promo-codes/pom.xml"},{"globPattern":"file:///home/igor/magine/promo-codes/*.sc"},{"globPattern":"file:///home/igor/magine/promo-codes/*?.gradle"},{"globPattern":"file:///home/igor/magine/promo-codes/*.gradle.kts"},{"globPattern":"file:///home/igor/magine/promo-codes/project/*.{scala,sbt}"},{"globPattern":"file:///home/igor/magine/promo-codes/project/project/*.{scala,sbt}"},{"globPattern":"file:///home/igor/magine/promo-codes/project/build.properties"},{"globPattern":"file:///home/igor/magine/promo-codes/.metals/.reports/bloop/*/*"}]}}]}}, module: kak_lsp::language_server_transport:168
Jan 04 23:15:34.555 ERRO unsupported braces in glob patttern: 'file:///home/igor/magine/promo-codes/project/*.{scala,sbt}', module: kak_lsp::text_sync:249
Jan 04 23:15:34.555 ERRO unsupported braces in glob patttern: 'file:///home/igor/magine/promo-codes/project/project/*.{scala,sbt}', module: kak_lsp::text_sync:249

The issue comes from the upstream library: https://github.com/rust-lang/glob/issues/2
The library suddenly got a new release, looks like it's maintained again?

yeah it should interpret project/*.{scala,sbt} as two globs project/*.scala and project/*.sbt.
Shouldn't be too hard to implement. I don't have a solid opinion yet on whether this should be part of the glob library.
I don't know anything besides LSP that uses braces in that way. Gitignore-like patterns yes but that's another language with its own crate.
The concern I have with this feature is that it dilutes the meaning of { in a glob; it will be more difficult to predict the behavior if there are two competing meanings out there.
But I guess that's a mostly academic concern because filenames won't contain {.
So I think it's fine to add it to the library.


introduce git-flow-like dev-process

I have the feeling thats its confusing for users that the master branch shown on github does not reflect the latest released version but instead the current development snapshot.
I would propose to go into the direction of git flow http://nvie.com/posts/a-successful-git-branching-model/
So master always contains the latest release, and snapshot is developed in "development" branch. We then merge feature branches to develop. When it comes to releases, we have to see if we really need release-branches or if we just merge the final state to master and release from there.
Benefits: code, examples and readme shown on github in the default view work with the latest central repo version, ongoing development is better separated.
Requirements: we need an additional build pipeline for develop and we need to document the new approach so we do not get pull-request contriubutions to master.
Opinions?

Hi @jangalinski ,
I like the idea, but it seems to be not relevant any more, as Spring Boot Starter will now follow the Camunda practices, which imply development in master branch.
Will close the issue then.


HSEARCH-2496 Smarter dirty checking when using @ContainedIn with custom field bridges

https://hibernate.atlassian.net//browse/HSEARCH-2496
Based on #1794 , which should be merged first.
I only had to add a test, as this is already supported in Search 6.

Pull Request Test Coverage Report for Build 1

4 of 6 (66.67%)  changed or added relevant lines in 4 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.1%) to 86.665%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/model/impl/JavaBeanPropertyModel.java
0
2
0.0%

Totals

Change from base Build 58:
0.1%

Covered Lines:
11393

Relevant Lines:
13146

💛  - Coveralls

Merged, thanks!


Add circleci config with slack notification

Description
To help keep everyone within Big Bite informed of any releases that are happening with PHPCS configs, it might be a good idea to use Slack webhooks to notify specific channels of any releases. This has already been added to the Build Tools repo.
CircleCI will need enabling on the repo and SLACK_WEBHOOK needs to be set in the environment variables - I can provide the webhook url, just reach out.
Changelog

Adds a CircleCI config to the project to allow any releases to notify Big Bite slack channels.

Types of changes (if applicable):

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

Checklist (if applicable):

[x] All checks pass when running `composer run all-checks.

Thanks for the PR, this is a nice idea. Just one thing that will need addressing before we merge. Can you sort out the webhook URL for me as well, please, as I'm unfamiliar with Circle CI?

Ta, forgot it was in there twice. Yeah no problem I can sort out the webhook and so on.


Use ssl.external.enabled for UI alerts

This goes along with #161 and ssl.enabled being split into two properties in CDAP 4.0

LGTM


Cover Streetcode controller with integration tests, coverage >= 80%

Devided to two tasks #915, #916


Karma Bot 2.1

When I first made v2.0 of the bot I decided to build it around Docker. Since docker runs on everything, everyone will be able to use it! Well, not everyone knows docker as it turns out, and docker works a bit differently on every platform. So, back to the drawing board to simplify the bot.
Goals:

primarily run the bot natively with python once again
make docker optional
remove a lot of cruft

Environments to support:

Windows
Linux
MacOS
Android

Technically all the environments are supported right now, but it isn't easy to get it set up. need to make it easy for each env. update a shared config file, and then click a button. maybe a batch/PowerShell file for windows, bash for linux/mac/android.
Other things to improve:

remove nltk dependency. causes a big download every time the bot starts and isn't used
Have everything run self-contained in the cloned repo (brain database, config, etc) rather than the home folder
Have the bot reply to posts directly instead of other peoples comments.
have the bot repost stuff again

A lot of this was completed in a recent push. I've moved remaining items to this project tracker https://github.com/MrPowerScripts/reddit-karma-farming-bot/projects/1


BR: flush causal timestamp before backup start for rawkv apiv2

What is changed and how it works?

Issue Number: Close #12989
What's Changed:

1. Flush causal timestamp before backup start for rawkv apiv2
2. Address review comments: https://github.com/tikv/tikv/pull/12866#discussion_r904483116
   let cdc::Endpoint hold the causal ts provider instead of cdc::Observer.

Related changes
Check List
Tests

Unit test
Manual test (add detailed scripts or steps below)

Side effects
Release note
None

/cc @pingyu @zeminzhou

LGTM~


User.php error

Hello,
I have this in my User.php (model)
<?php

namespace App;

use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Bican\Roles\Traits\HasRoleAndPermission;
use Bican\Roles\Contracts\HasRoleAndPermission as HasRoleAndPermissionContract;

class User extends Authenticatable implements HasRoleAndPermissionContract
{
    use Notifiable, HasRoleAndPermission;

When I visit my website, I get this error:

FatalErrorException in User.php line 11:
Declaration of Illuminate\Database\Eloquent\Model::is() must be compatible with Bican\Roles\Contracts\HasRoleAndPermission::is($role, $all = false)

Hope someone can help me

We decided to update and maintain a copy of bican roles. This issue is fixed in this copy.
You can find it on packagist: https://packagist.org/packages/ultraware/roles


Extra bytes returned on revert("")

Calling revert(string) in Solidity should return abi-encoded string as if it were a call to Error(string) function (docs).
Therefore when calling revert with empty string revert("") I expect to receive correct abi-encoded Error(""):
0x08c379a0                                                          <- Error(string) selector
0000000000000000000000000000000000000000000000000000000000000020    <- string offset = 32
0000000000000000000000000000000000000000000000000000000000000000    <- string length = 0

However ganache-cli appends extra 32 bytes of zeroes in that case and returned bytes are
0x08c379a0                                                          <- Error(string) selector
0000000000000000000000000000000000000000000000000000000000000020    <- string offset = 32
0000000000000000000000000000000000000000000000000000000000000000    <- string length = 0
0000000000000000000000000000000000000000000000000000000000000000    <- unexpected extra 32 bytes

Those extra zeroes break the code that relies on the size of abi-encoded string.
Expected Behavior
Error("") should be abi-encoded as 68 bytes.
Current Behavior
Error("") is abi-encoded as 100 bytes.
Steps to Reproduce
contract RevertReasonParserTest {
    function emptyStringRevert() external pure  {
        revert("");
    }

    function test() external view {
        try this.emptyStringRevert() {
        } catch (bytes memory reason) {
            require(reason.length == 68, "Incorrect reason length");
        }
    }
}

Your Environment

Version used: 6.12.1

Can you open the same issue on https://github.com/ethereum/solidity? It seems to be belonging there and not here. (Also confirming this is happening.)

Sure. Thanks for suggestion.
https://github.com/ethereum/solidity/issues/10170
I also checked that the behaviour is consistent with mainnet, ropsten and ethereumjs-vm.
It is likely a Solidity bug so I'm closing the issue.


feat: Refactor integration tests 5-appinfra

Combine app infra tests in one file, enable running in paralalel.

/gcbrun

/gcbrun

retry
        	Error:      	Received unexpected error:
        	            	FatalError{Underlying: error while running command: exit status 1;
        	            	Error: Error waiting to create Feature: Error waiting for Creating Feature: Error code 13, message: an internal error has occurred

        	            	  with module.env.google_gke_hub_feature.poco_feature,
        	            	  on ../../modules/env_baseline/policy.tf line 17, in resource "google_gke_hub_feature" "poco_feature":
        	            	  17: resource "google_gke_hub_feature" "poco_feature" {
        	            	}
        	Test:       	TestFleetscope/production

FAIL: TestSourceCymbalBank/../../../6-appsource/cymbal-bank/ledger-ledgerwriter

Build time:
From 1h 23m without Cloud build parallel steps to 1h 16min enabling parallel steps.


Source declaration is ignored

My Gopkg.toml contains a source rule to overwrite the git repository from which a dependency should be fetched.
The corresponding Gopkg.lock entry looks like this:
[[projects]]
  branch = "master"
  name = "github.com/google/jsonapi"
  packages = ["."]
  revision = "ed520b3a37447a090eb36826364df8e06f3601d7"
  source = "https://github.com/CrushedPixel/jsonapi"

dep2nix ignores the lock file's source rule, generating the following entry in deps.nix:
    {
      goPackagePath  = "github.com/google/jsonapi";
      fetch = {
        type = "git";
        url = "https://github.com/google/jsonapi";
        rev =  "ed520b3a37447a090eb36826364df8e06f3601d7";
        sha256 = "00gl8j33mxbkh0wp064dgq74znai9gdm7kpp4vbhrya8q7zgxsf4";
      };
    }

Since a19f57909affd60b3e34cf43d999af0cbd9cce28, we're using dep itself to deduct sources, so we don't have to take care of the lock file entries anymore at all.


ColumnReduceKernel: min() type casting error and improvement

Issue type
Performance
Have you reproduced the bug with TensorFlow Nightly?
No
Source
source
TensorFlow version
2.13.0
Custom code
Yes
OS platform and distribution
Windows 10 22H2
Mobile device
No response
Python version
Anaconda 2023.07-1
Bazel version
6.2.1
GCC/compiler version
Visual Studio 2022 (build tools 14.36) + msys2-x86_64-20230718
CUDA/cuDNN version
CUDA 11.8 + CUDNN 8.6.0 + TensorRT 8.5.3
GPU model and memory
GTX 750 Ti 2GB
Current behavior?
There are two type casting errors in reduction_gpu_kernels.cu.h under MSVC. One of them is fixed in https://github.com/tensorflow/tensorflow/pull/61339. Another is related to a TODO.
in ColumnReduceKernel(), the TODO said the followings:

1D array necessary due to bug in CUDA 9 compiler.
TODO(nluehr) revert to 2D array when compiler is ready.
This is to mimic the following, but without constructors:
shared storage_type<value_type> partial_sums[TF_RED_WARPSIZE *
(TF_RED_WARPSIZE + 1)];

Since latest version required CUDA 11, it's time to address the TODO and apply bug fix together.
Standalone code to reproduce the issue
1. download https://github.com/tensorflow/tensorflow/archive/refs/tags/v2.13.0.zip and extract
2. comment out Windows CUDA build rejection code in configure.py
3. run `python configure.py` to configure Windows CUDA build
4. run `bazel build --config=opt --define=no_tensorflow_py_deps=true //tensorflow/tools/pip_package:build_pip_package`

Relevant log output
external/com_google_absl\absl/status/status.h(796): warning #2810-D: ignoring return value type with "nodiscard" attribute

.\tensorflow/tsl/platform/file_system.h(571): warning #611-D: overloaded virtual function "tsl::FileSystem::FilesExist" is only partially overridden in class "tsl::WrappedFileSyste
m"

.\tensorflow/tsl/platform/file_system.h(571): warning #611-D: overloaded virtual function "tsl::FileSystem::CreateDir" is only partially overridden in class "tsl::WrappedFileSystem
"

.\tensorflow/tsl/platform/env.h(500): warning #611-D: overloaded virtual function "tsl::Env::RegisterFileSystem" is only partially overridden in class "tsl::EnvWrapper"

.\tensorflow/tsl/platform/float8.h(936): warning #177-D: variable "aligned_highest" was declared but never referenced
          detected during:
            instantiation of "To tsl::float8_internal::ConvertImpl<From, To, kSaturate, kTruncate, std::enable_if_t<<expression>, void>>::run(const From &) [with From=tsl::float8_i
nternal::float8_e4m3b11, To=tsl::float8_internal::float8_e4m3fn, kSaturate=false, kTruncate=false]"
(1018): here
            instantiation of "Derived tsl::float8_internal::float8_base<Derived>::ConvertFrom(const From &) [with Derived=tsl::float8_internal::float8_e4m3fn, kSaturate=false, kTru
ncate=false, From=tsl::float8_internal::float8_e4m3b11]"
(277): here

.\tensorflow/tsl/platform/float8.h(936): warning #177-D: variable "aligned_highest" was declared but never referenced
          detected during:
            instantiation of "To tsl::float8_internal::ConvertImpl<From, To, kSaturate, kTruncate, std::enable_if_t<<expression>, void>>::run(const From &) [with From=tsl::float8_i
nternal::float8_e4m3b11, To=float, kSaturate=false, kTruncate=false]"
(1024): here
            instantiation of "To tsl::float8_internal::float8_base<Derived>::ConvertTo<To,kSaturate,kTruncate>(const Derived &) [with Derived=tsl::float8_internal::float8_e4m3b11,
To=float, kSaturate=false, kTruncate=false]"
(75): here
            instantiation of "tsl::float8_internal::float8_base<Derived>::operator float() const [with Derived=tsl::float8_internal::float8_e4m3b11]"
(116): here
            instantiation of "Derived tsl::float8_internal::float8_base<Derived>::operator-(const Derived &) const [with Derived=tsl::float8_internal::float8_e4m3b11]"
(302): here

.\tensorflow/core/kernels/reduction_gpu_kernels.cu.h(392): error: no instance of overloaded function "tensorflow::min" matches the argument list
            argument types are: (int, unsigned int)
          detected during:
            instantiation of "void tensorflow::functor::ColumnReduceKernel(T, OUT_T, int, int, Op, std::iterator_traits<T>::value_type) [with T=const float *, OUT_T=float *, Op=cub
::Max]"
(828): here
            instantiation of "void tensorflow::functor::LaunchColumnReduction_LTE4096Cols(tensorflow::OpKernelContext *, OUT_T, IN_T, int, int, Op, T, const gpuStream_t &) [with T=
float, Op=cub::Max, OUT_T=float *, IN_T=const float *]"
(862): here
            instantiation of "void tensorflow::functor::LaunchColumnReduction(tensorflow::OpKernelContext *, OUT_T, IN_T, int, int, Op, T, const gpuStream_t &) [with T=float, Op=cu
b::Max, OUT_T=float *, IN_T=const float *]"
(1088): here
            instantiation of "void tensorflow::functor::ReduceImpl<T,Op,OUT_T,IN_T,ReductionAxes>(tensorflow::OpKernelContext *, OUT_T, IN_T, int, int, int, int, int, const Reducti
onAxes &, Op) [with T=float, Op=cub::Max, OUT_T=float *, IN_T=const float *, ReductionAxes=const Eigen::array<Eigen::DenseIndex, 1ULL> &]"
E:\_bazel_tensorflow\4zvk5ci6\execroot\org_tensorflow\tensorflow\core\kernels\multinomial_op_gpu.cu.cc(111): here
            instantiation of "void tensorflow::functor::MultinomialFunctor<tensorflow::functor::GPUDevice, T, OutputType>::operator()(tensorflow::OpKernelContext *, const tensorflo
w::functor::GPUDevice &, tensorflow::TTypes<T, 1, Eigen::DenseIndex>::ConstMatrix, tensorflow::TTypes<float, 1, Eigen::DenseIndex>::Flat, tensorflow::TTypes<float, 1, Eigen::DenseI
ndex>::Flat, tensorflow::TTypes<float, 1, Eigen::DenseIndex>::Flat, int, int, int, const tsl::random::PhiloxRandom &, tensorflow::TTypes<OutputType, 1, Eigen::DenseIndex>::Matrix)
[with T=Eigen::half, OutputType=tsl::int32]"
E:\_bazel_tensorflow\4zvk5ci6\execroot\org_tensorflow\tensorflow\core\kernels\multinomial_op_gpu.cu.cc(126): here

1 error detected in the compilation of "tensorflow/core/kernels/multinomial_op_gpu.cu.cc".
nvcc warning : The 'compute_35', 'compute_37', 'sm_35', and 'sm_37' architectures are deprecated, and may be removed in a future release (Use -Wno-deprecated-gpu-targets to suppres
s warning).
Target //tensorflow/tools/pip_package:build_pip_package failed to build
INFO: Elapsed time: 1996.828s, Critical Path: 480.15s
INFO: 441 processes: 7 internal, 434 local.
FAILED: Build did NOT complete successfully

I think following changes can solve the TODO:
line 351-364:
#if GOOGLE_CUDA || TENSORFLOW_USE_ROCM
  __shared__ storage_type<value_type>
      partial_sums[TF_RED_WARPSIZE * (TF_RED_WARPSIZE + 1)];
#endif

line 392:
min(blockDim.y, num_rows - blockIdx.y * blockDim.y); // MSVC type casting fix
Can someone confirm if that's the meaning of the TODO?

Hi @johnnkp
Proposed PR has been merged now. Could you please check and close this issue.
Thank you!!

The mentioned PR does not include my proposed changes. I am going to create a PR for this issue.

Hi @johnnkp
min(blockDim.y, num_rows - blockIdx.y * blockDim.y); // MSVC type casting fix

this caused a lot of build error due to call to 'min' is ambiguous
https://github.com/tensorflow/tensorflow/pull/61638


Go Mod needs updating

The Go mod file needs to be updated. I can open a PR if you would like?

Yes sure thing! Thanks!

Looking


@ doesn't work when a shebang is used

Heya, when I try to do:
@rule:
     #!/usr/bin/sh
    echo "Hello world!";

The output is:
#!/usr/bin/sh
echo "Hello world!";
Hello world!

When it should be:
Hello world!

When the @ is used on normal recipes it suppresses echoing commands as they're executed. But, the default for shebang recipes is to not echo anything. So @ on shebang recipes changes that, and makes it echo the whole script. So, quite confusingly, @ has opposite effects on shebang and normal recipes.
Anyways, to make a long story short, you can remove the @ to only print Hello world!.

Ah, ok, thanks. :smile:

You're most welcome. This behavior definitely doesn't make a whole lot of sense, but it feels minor enough that I'm disinclined to change it, since it would be an issue for existing justfiles that rely on it.


feat(ts-sdk): added support for test coverage

@Pradhyuman-sharma please resolve conflicts.
@re-Tick have you reviewed this?


Ranging: Array of beacons is empty

When ranging for beacons, the array of beacons (last line in the code excerpt from RNABeacon.java below) is always empty. I tested with the exact same BeaconLayout and Configuration in a small Android dummy app. There the array has data and I can successfully range the beacons.
To test the package I added two more events (see the code excerpt below) . The new events didServiceConnect and didRangeBeaconsInRegionEnter do get called, but because the array is zero didFoundBeacons is never called, but didNotFoundBeacons is called instead.
Any thoughts?
private BeaconConsumer rangingConsumer = new BeaconConsumer() {
        @Override
        public void onBeaconServiceConnect() {
            sendEvent(context, "didServiceConnect", null);
            beaconManager.setRangeNotifier(new RangeNotifier() {
                @Override
                public void didRangeBeaconsInRegion(Collection<Beacon> beacons, Region region) {
                    sendEvent(context, "didRangeBeaconsInRegionEnter", null);
                    WritableMap map = new WritableNativeMap();
                    map.putString("uuid", region.getUniqueId());

                    if (beacons.size() > 0) {

Are you matching the same region UUID?

Yes, I was using the correct UUID.
I did these tests almost two months ago and now testing your current version. See #4

Quote error：no sdk,i don't know where sdk for this
FAILURE: Build failed with an exception.

What went wrong:
A problem occurred configuring project ':RNABeacon'.

The SDK directory 'F:\rn\afapp\android\Users\octavioturra\android-sdks' does n
ot exist.

Failed to build DependencyGraph: @providesModule naming collision:
Duplicate module name: merge
Paths: F:\rn\afapp\android\users\octavioturra\android-sdks\merge\package.json
collides with F:\rn\afapp\node_modules\react-native\Libraries\vendor\core\merge.
js
This error is caused by a @providesModule declaration with the same name accross
two different files.
Error: @providesModule naming collision:
Duplicate module name: merge
Paths: F:\rn\afapp\android\users\octavioturra\android-sdks\merge\package.json

I now tried your example app. It unfortunately doesn't show any beacons when ranging as before.
It is the correct UUID and other beacon detection apps, show the beacons on the same phone.
So I believe your implementation just doesn't work with Kontakt.io beacons yet..

Any update on this?  I'm always getting  "didNotFoundBeacons" .


create SVG in memory without displaying it

Hello,
I am trying to use Snap to precompute a series of SVGs, that are shown on demand.
is that possible?
My function creates the SVG with s=Snap(600, 800) and returns s
This allows to paste s anywhere but it is already created on the bottom of the page without any id associated. We would just like to get the SVG in the variable.
Thanks for any pointers to what I could do.

I am also interested in knowing if this can be done. Thanks !

Not entirely sure what you are after, but you could make it invisible, or off screen, or create a fragment and append as needed.

I had a need at one point to take an SVG, clone it, modify it, and display as an Image. remove was the key to keep it off the bottom of the screen.
Example:
   var clone = svg.clone().remove;
    s_clone.attr({
        viewBox: '0 0 300 300',
        height: '640px',
        width: '640px',
    });
   //...
    var paths = clone.selectAll('path');
    paths.forEach(function (elem, i) {
        var ropath = elem.clone().remove(); //each clone needs to be removed
        var expanded = '<svg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 300 300\' width=\'640px\' height=\'640px\'>' + ropath.toString() + '</svg>'; //individual components of the original
        images[num - i] = new Image();
        images[num - i].src = 'data:image/svg+xml;base64,' + btoa(expanded);
   });
    images[0] = new Image();
    images[0].src = 'data:image/svg+xml;base64,' + btoa(s_clone.toString());


feat: 🎸 automated build should be minor change

Codecov Report

Merging #12 into master will not change coverage.
The diff coverage is n/a.

@@         Coverage Diff          @@
##           master   #12   +/-   ##
====================================
  Coverage      95%   95%
====================================
  Files          16    16
  Lines         320   320
====================================
  Hits          304   304
  Misses         16    16

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 47d76ff...cab93c9. Read the comment docs.

Coverage remained the same at 94.331% when pulling cab93c99f4e4416af122fc175e9bb21b4aa22c82 on fix/bump-version into 47d76ff1a70e7e92c09cdda99f1fd0ac51e5005f on master.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Saturn Tutorial for Default.md

I'll update the default.md as a "tutorial" introduction.
Any thoughts/comments/suggestions appreciated.
For example, I already verified that there's an easy way to link within the markdown, e.g. for glossary terms. That's a SUPER awesome feature for educational material, so I want to give examples of things like that.
Also, if we can show how to use a "local" node_module that might be good too, perhaps in a separate file.

A draft of this is now in "Guide".
So... let's clean up default.md when we are ready to ship. We can put content there in the "test" dialog box #36
@wip-abramson @gannan08 @ewelton Please take a look at the "Guide" (which might be renamed to Tutorial by the time you get to it) in the Help menu, and provide feedback. It's a good stab, but I ran out of steam.

Tutorial need to cover from initial user seeing the blank page of the application.

Ok! There is a draft for this.
I am missing a section on editing (explaining that there's a mode that lets you edit), but its a solid draft. Good enough for MVP, IMO.

/move to satyrnjs/satyrn


Ability to edit manga status

Describe your suggested feature
(If this is already included in this pull request, then please mark the feature request as closed)
It would be useful if you could let us change the manga status freely, as some sources don’t always update it correctly for some manga. The main reason why I want this added is to help with library updates (Reduce the total sum of manga being updated) in case one hasn’t separated their manga into many categories. (Basically so the third smart updates parameter works for every entry it should normally apply to)
Other details
None.
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] I have updated the app to version 0.16.5.
[X] I will fill out all of the requested information in this form.

I would've assumed status was included in the mentioned PR given the exchange in the Discord channel back then (and how SY does allow editing it), but it doesn't seem to be the case

The number of support requests for missing updates because they marked it as completed just because the series has finished publishing but not translating will be wild.
It'd still be nice to have, I agree

I like to think there's very little overlap between people who would bother to edit the status and not know it's a Smart Updates parameter.
Not optimistic enough to believe it's a two circles Venn diagram because people will be people, but still.

The number of support requests for missing updates because they marked it as completed just because the series has finished publishing but not translating will be wild. It'd still be nice to have, I agree

I am not so sure. J2K offered the option and I never saw people complaining about missing updates.

I also would like to support this feature. Have a situation where a site has marked a series as complete even though the original series as well as the translators are both releasing new chapters each week.

Marking as a duplicate of #5


[Backport] Machine Configs orphaned on failed cluster create

Backport https://github.com/rancher/rancher/issues/41413

Ticket #46469 - Test Results - ✅
Verified on Rancher v2.9-08f6f0d7cfc29882892c19b8ebc56e9c9568dd58-head:

Scenario
Test Case
Result

1.
Create multiple orphaned machine configs, then observe rke2-machineconfig-cleanup-cronjob Cron Job remove them
✅

Scenario 1 - ✅

Fresh install of Rancher v2.9-head
Attempt to create multiple downstream clusters with a single character as the cluster name, to create orphaned machine configs
Verify orphaned machine configs were created by navigating to <rancher_host_url>/v1/rke-machine-config.cattle.io.amazonec2configs
Navigate to Cluster Explorer (of local cluster) > Workloads > Cron Jobs and edit the frequency to run every 5 minutes, using the following Cron Schedule: */5 * * * *
Wait until Cron Job run and verify orphaned machine configs are successfully cleaned up and removed
Verified - Navigating back to <rancher_host_url>/v1/rke-machine-config.cattle.io.amazonec2configs, no orphaned machine configs exist after Cron Job is run; as expected


Pick file doesn't work

Perhaps this relies on a certain file app to be present. If so please include this in a README file. It is perhaps an idea to allow the end user to enter an absolute file path for a zip file to eliminate the necessity for any other app.

Hi, it occurs if you click on the "Pick file" button and you don't pick the file. Please, update to newer version and if such thing happens hit "Refresh".

It would appear that development has stopped, however I shall put the here regardless:
I join this, as the file managers (GerdaOS file manager, Explorer, K-File Manager, etc.) I have tried do not recognize that they are being launched as file pickers, and as such, the is no way to pick the file.

@moriel5 Oh, sorry about that! Could you tell me if these file managers behave correctly, when launched by other applications, e.g. a browser?
You know, the problem may be with these file managers. I've never installed a custom ROM on my device and simply tested the app with the default KaiOS file manager.

No worries, although my testing was on both GerdaOS (KaiOS 2.5) and the stock V17 firmware (KaiOS 2.5.1) for the 8110 4G, and the behaviour was identical.
Regarding the default file manager, there isn't one on the stock firmwares for the 8110 4G, due to security issues found in the code, and GerdaOS come manager is a direct fork, which in this case should behave the same.
It may be possible that the issue is with the file managers, so I shall check whether I can upload files to Telegram, as well as find a website where I can temporarily upload files for this test.

 So yea, the issue seems to be with the file managers.
Well, to make the app more independent I'll have to implement a simple file manager into the app itself. Currently I'm having exams, but when I'm finished I'll make sure to roll out an update.

That certainly makes sense, and personally, I would prefer that in this case (though my first preference would be for whatever file manager I use to support both installations and standard extractions from .zip files).
Unfortunately, there isn't anything I can use to extract archives, even .zip (N4NO has an app for that in the KaiStore (which obviously means it includes ads), however I was unable to make an OmniSD-compatible .zip from it (nor from any app I tried, including HMD's Unit Converter app that is present on newer firmwares), however Zipper was the first solution I had tried.
I do have plans for more attempts of the kind (like making my own version of GerdaOS based upon the last V17 firmware, however they need to wait until I have a proper environment to work with (no access to my desktop currently), which is why I went with GerdaOS in the end, as it was the quickest option to have a functioning phone with VoLTE before 2G and 3G are shut down here, until I can design a new daughterboard and USB-C port for my Razer Phone 2 (I had considered an HMD 225 4G, however one of my criteria was no games, and I do not know whether I can mod HMD's basic phones' firmwares currently).
Take your time, your exams are more important, especially as I may possibly the only KaiOS/GerdaOS user that is currently active in KaiOS-related subjects here (at least as an enthusiast), and I have the most important things down (phone calls and texts, as well as 2FA via OTP), so I have the time to wait.


Problem with dismissing if items have different height

Test case
Create recycler view with 2 type of items:
Short
Tall
Short
Tall
etc.

Then dismiss some tall item for example. When animation ends, you will see, that next short item becomes tall, tall becomes short, etc.
Height of items should be saved.

Hi!
You found solution for this?

@zsoltmester hi
Even if this works for items with "auto-height", I don't think, that this is the full solution, because in this case we will make everybody to use WRAP_CONTENT for items, even if they don't want to.
Example: we have list of items, and we'd like to set height of every item to 100dp, but the content can have various height: 50–100dp for example. In this case height of 50dp items will be 50dp, not 100dp.
I don't know when this example can occur, but who knows.
Anyway, thanks. If somebody needs only WRAP_CONTENT item's height, he could try this solution

Have you found any solution ?

Hi @AEMLoviji
No, unfortunately I haven't found any solution.
And I no longer try to support this library as there is implementation in the Android Support Library.
Try Android Support Library implementation instead.
Some instructions are in the readme file
Or at StackOverflow
Hope it helps


How to adjust

I undervolt my Nvidia card with these settings in windows msi afterburner. Can you help me to convert these into your scripts parameters please?
Thanks!

I have no idea, never used MSI Afterburner. And that's not the place to ask

How can the script do undervolt? Maybe you can add some example usage on the mainpage ?
Thanks

How can the script do undervolt? Maybe you can add some example usage on the mainpage ?
Thanks

I'm not sure NVML (the Nvidia SDK this tool uses under the hood) allows voltage regulation but I'll check tomorrow.


Error connecting to Huawei LTE

Home Assistant release with the issue:
Home Assistant 0.103.3
Operating environment (Hass.io/Docker/Windows/etc.):
macOS Mojave 10.14.6 (18G1012)
Huawei HG8245U
EchoLife HG8245U GPON Terminal
Hardware version: BA9.A
Software version: V3R017C10S125
Integration:
https://www.home-assistant.io/integrations/huawei_lte/
Description of problem:
Device is found but can't be configured.
Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):
huawei_lte:
  - url: http://<IP_ADDRESS>/
    username: secret
    password: secret

Traceback (if applicable):
Unknown error connecting to device
Traceback (most recent call last):
  File "/Users/nasmac/homeassis/homeassistant/lib/python3.8/site-packages/homeassistant/components/huawei_lte/config_flow.py", line 177, in async_step_user
    conn = await self.hass.async_add_executor_job(
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/Users/nasmac/homeassis/homeassistant/lib/python3.8/site-packages/homeassistant/components/huawei_lte/config_flow.py", line 129, in try_connect
    conn = AuthorizedConnection(
  File "/Users/nasmac/homeassis/homeassistant/lib/python3.8/site-packages/huawei_lte_api/AuthorizedConnection.py", line 14, in __init__
    super(AuthorizedConnection, self).__init__(url, timeout=timeout)
  File "/Users/nasmac/homeassis/homeassistant/lib/python3.8/site-packages/huawei_lte_api/Connection.py", line 40, in __init__
    self._initialize_csrf_tokens_and_session()
  File "/Users/nasmac/homeassis/homeassistant/lib/python3.8/site-packages/huawei_lte_api/Connection.py", line 107, in _initialize_csrf_tokens_and_session
    token = self._get_token()
  File "/Users/nasmac/homeassis/homeassistant/lib/python3.8/site-packages/huawei_lte_api/Connection.py", line 176, in _get_token
    return data['token']
KeyError: 'token'

Additional information:
Device can be found and when UPnP is enabled the sensor data is being retrieved. Only no device tracker entries.

Never mind, when I add device_tracker huawei_router to the configuration.yaml file, I can see all the connected devices.
device_tracker:
  - platform: huawei_router
    host: <IP_ADDRESS>
    username: secret
    password: secret


better comm v2 endpoints (bug 1109234)

For API v2, this redoes the Commbadge endpoints for:

List of threads for an app
List of threads relevant to a user

API v1 endpoints are left intact to be deprecated later. This makes the endpoints faster by:

Getting rid of the recent_notes field, which loads 5 notes per thread. Commbadge will be changed notes aren't shown until we click through to a thread detail page. This simplifies most pages to be simple lists of links to threads with some metadata.
Splitting out the thread listing endpoint into two, one to list threads for an app and one to list threads for a user. The app endpoint, /comm/app/<APP_SLUG>/, can take ?serializer=simple to return a extremely slimmed down list of threads for the sole purpose of finding which threads to download in Reviewer Tools, and for navigation in Commbadge.

The code is better since:

Fields related to version for threads are now deserialized into one field rather than three prefixed fields
Remove addon field in the Thread serializer since we have it in addon_meta, and just rename addon_meta to app

The endpoints won't be consumed just yet, so this is just part 1. The plan is:

To move reviewer tools to use the serializer=simple endpoint to get a simple list of threads that needs to be downloaded. Then download them, latest version first.
To move Commbadge to use the v2 endpoints, which will involve redesigning a lot of pages. It is my assumption that the thread detail pages are the most important pages since they are linked to in the emails, so I can slim down the rest of the pages to just be listings.

r? @eviljeff

r+

thanks


Schema validation fails silently

Describe the bug
I've written a request that fails schema validation but the strest run does not fail.
To Reproduce

create a request yml that is invalid
run it
the run passes

Expected behavior

the run should fail with a non-zero exit code

Additional context
[ Strest ] Found 3 test file(s)
[ Strest ] Schema validation: 2 of 3 file(s) passed

Executing tests in ./
Executing tests in: /app/tests/
Executing tests in: /app/tests/tokens/
✔ Testing userToken succeeded (0.573s)

[ Strest ] ✨  Done in 0.634s

The only indication that something went wrong is 2 of 3 file(s) passed at the top, which is easy to miss, especially in longer scripts.

Agreed. It should also show details of the failure.

I've also just come across this one here, which is very similar and doesn't error out (although it's more obvious):
✔ Testing create_contract_1 succeeded (0s)

Status: undefined
Status Text: undefined

Headers:

undefined

Data:

undefined

✔ Testing create_contract_2 succeeded (0s)

I'm referencing a Value(...) that doesn't exist because I didn't run all the necessary tests in the batch.

That should probably be a new issue. Add an example yaml that is expected to pass but doesn't

Ok, I've added https://github.com/eykrehbein/strest/issues/99
And thanks for your swift reply. I'd take a look into this myself but JS is not my forte :)

Check out
CONTRIBUTING.md
This is the line that does the validation:
https://github.com/eykrehbein/strest/blob/master/src/yaml-parse.ts#L40


Deal with non-breaking spaces

A lot of our files have a large number of:
<p> </p>

in them, which are leaving space for things with specified top values to go in that space. In our conversion they just produce empty space.
We should deal with these sensibly - either:

Just remove them (probably a good idea for now)
Use them to try and work out where things with specified top values go (as mentioned in #518 )

Actually, in most normal files the nbsp's come outside of the BottomLayer or PageLayer divs - see, for example, data/Spain_Cmplx/Phase_F.html, so we aren't converting them. I suspect it is only pages where we have problems like in #518 where they appear in the middle of the PageLayer or BottomLayer divs.

Yes, most are to generate whitespace to generate the fake page effect, and we're don't process these.
Hopefully there are few enough within our processed content that I just move the relevant content into the right place.

Ian to check generated DITA content for lots of   entries, and decide if this is a problem or not.

Broke, but now works again in Oxygen 26.0


Downloads don't work in Vivaldi browser

Installs fine in Vivaldi (Chrome engine) and clicking when on a New Yorker puzzle page pops up the little window with 3 link options, but none are clickable:
PUZ | JPZ | PDF:

Seems to me like a Vivaldi bug - I found https://forum.vivaldi.net/topic/52062/a-download-attribute-does-not-work-in-extension-popup where another extension developer essentially reported the exact same symptom (though some of the replies seem to be missing) and said they would submit a bug report. I don't know if anything ever came of it since their bug tracker isn't public (though evidently it hasn't been fixed, directly).
Since the extension has to generate these files dynamically, I'm not aware of another way to create links to download the files that could be used instead.
My main focus is supporting Chrome and Firefox - as much as I'd love to support as many browsers as possible, I don't have the time and motivation to investigate this or other quirks in other browsers and to try and keep them working over time. That said, if you'd like to pursue this, I'd recommend following up on that thread or in a new bugreport on the Vivaldi side. If there's a workaround that can be applied on the extension side without requiring much special-case logic or making the Chrome/Firefox experience worse, I'd be open to applying that if it can be identified.

Fair enough - thanks.


feat: Preserve the original coords of a drag gesture

Type: feat
Platform: all
The gesture ionic.Gestures.gestures.Drag has correct_for_drag_min_distance enabled by default. During touchmove when a drag is triggered, the event center is set to drag_min_distance pixels from the original event center. Without this correction, the dragged distance would jumpstart at drag_min_distance pixels instead of at 0.
It might be useful to save the original start point somewhere.

edit: I added a small pull request as a suggestion to fix this issue.

This issue was moved to driftyco/ionic-v1#35


Add Geneformer

Describe your changes
Add the Geneformer foundation model as a method
Checklist before requesting a review

[ ] I have performed a self-review of my code

Check the correct box. Does this PR contain:

[ ] Breaking changes
[x] New functionality
[ ] Major changes
[ ] Minor changes
[ ] Bug fixes

[ ] Proposed changes are described in the CHANGELOG.md

[ ] CI Tests succeed and look good!

Current progress

[x] Add component files
[x] Get required model files
[x] Tokenize data
[x] Embed data
[x] Create output file
[x] Add to pipeline
[x] Clean up code, arguments etc.

The CI tests are failing because there is no GPU. I'm not sure how we want to handle that.
I haven't updated the CHANGELOG because it doesn't have anything for this task yet. Maybe that needs a separate PR?

Ok, checks are passing now 🎉!


Unable extract Key and Certificate which has password protected from Azure Key Vault

Describe the bug
Unable to sync the Azure key vault certificate with password protected to Kubernetes TLS type secret.
Error message:
"error": "could not apply template: could not execute template: could not execute template: unable to execute template at key tls.key: unable to execute template at key tls.key: template: tls.key:1:36: executing "tls.key" at <pkcs12keyPass "mypassword1234">: error calling pkcs12keyPass: unable to decode pkcs12 with password: pkcs12: error reading P12 data: asn1: structure error: tags don't match (16 vs {class:0 tag:13 length:45 isCompound:true})
To Reproduce
Steps to reproduce the behavior:

provide all relevant manifests
My external secret yaml file.

# creating tls-cert with password.

apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
  name: test-tls-example
  namespace: tls-example
spec:
  refreshInterval: 1h
  secretStoreRef:
    name: my-clusterSecretStore
    kind: ClusterSecretStore
  target:
    name: my-tls-example
    # this is how the Kind=Secret will look like
    template:
      type: kubernetes.io/tls
      data:
        tls.crt: '{{ .mysecret | b64dec | pkcs12cert | pkcs12certPass "mypassword1234" }}'
        tls.key: '{{ .mysecret | b64dec | pkcs12key | pkcs12keyPass "mypassword1234" }}'
      engineVersion: v2
      mergePolicy: Replace

  data:
  # this is a pkcs12 archive that contains
  # a cert and a private key
  - secretKey: mysecret
    remoteRef:
      key: my-tls-cert

provide the Kubernetes and ESO version
Kubernetes version: 1.28.3
ESO Version:  0.9.1

Expected behavior
TLS certificate needs to created in kubernetes.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.

It should just be
"key":  []byte(`{{ .secret | base64decode | pkcs12keyPass "123456" | pemPrivateKey }}`),

With this pkcs12cert | pkcs12certPass you are double running it.

@Skarlso , I have updated the tls.key with below settings and getting same error. does my understanding is correct ?

template:
type: kubernetes.io/tls
data:
tls.crt: '{{ .mysecret | b64dec | pkcs12cert | pkcs12certPass "abcd" }}'
tls.key:  '[]byte({{ .mysecret | b64dec | pkcs12keyPass "abcd" | pemPrivateKey }})'
engineVersion: v2
mergePolicy: Replace
``

You are still doing it.
tls.crt: '{{ .mysecret | b64dec | pkcs12cert | pkcs12certPass "abcd" }}'


Rename AccountStub into AccountHeader

Using AccountHeader would be more consistent with how we naming things in other places (e.g., NoteHeader and BlockHeader).

Closed by #855.


Add Console access

Hi, This is the resurrection of a PR for adding access to the AWS Console from the aws-creds util. (the old PR sat for over 6 months without a comment).

Hi @maneframe , just wondering if anyone is watching this project or are they just "moving to vaulted"?

Hey @tristanmorgan, sorry for the lack of communication before.  I assume you're talking about https://github.com/instructure/aws-keychain-util/pull/20 ?  Anyway, you're right that most people have moved over to vaulted, but we still have a few apps integrated into aws-keychain-util, because of how nice the integration with the macos keychain is.  Let me ping a few people internally, but if I'm reading the other PR correctly, sounds like we should be able to move forward with this.  I just want to spend a little time understanding all the little "extra" cleanup changes besides the core add of the console command.

Hi @simonista was there anything not clear/need me to change?


Adding Event Listener for uncaught Promise rejections and updating webvitals tests to skip if browser is Safari or Firefox

The JS error plugin only supports synchronous errors it should also support asynchronous errors such as promise rejections.

This change causes the JS error plugin to caught unhandled rejections and dispatch them.
2.Firefox and Safari currently fail several web vitals browser integration tests. This is because Firefox and Safari do not natively support web vitals.To make CI workflow run without having this error we need to skip these tests if the browser is Safari or Firefox.
This change will make WebVitalsPlugin.test.ts to skip if browser is safari or firefox.
Note:changes in CI workflow is made in dinesh-rum-web branch as creating a pull request with a change in github actions file is stopping a pull request.

Thanks @direddyz -- could you split this into two PRs? One for the rejected promise change and one for the firefox/safari integ tests.
In general it is good practice to submit unrelated changes as separate PRs. This makes it easier to review; there are fewer lines of diff to read, the discussion can focus on a single change, and one change won't block the other change from being merged.


Type Definition doesn't work

Initial checklist

[X] I read the support docs
[X] I read the contributing guide
[X] I agree to follow the code of conduct
[X] I searched issues and couldn’t find anything (or linked relevant results below)

Affected packages and versions
<EMAIL_ADDRESS>Link to runnable example
No response
Steps to reproduce
This problem is probably not a package issue itself, so I couldn't reproduce.

Quick note: I use astro to develop, so I chose vite as a build tools.
Expected behavior
Getting a type like visit(tree: Tree, (node: Node) => { ... }) (I'm not sure if these type are correct, just writing for example) and so I can use complenition like node.name ...
Actual behavior
As this image shows, like visit function won't show its type.

Runtime
Node v16
Package manager
yarn 1
OS
macOS
Build and bundle tools
Vite

Could you share a runnable example of the issue?
The screens hot doesn't offer enough information on what are are trying to achieve.
Some starters:

description
codesandbox
stackblitz

remark only (for markdown to markdown)
codesandbox
stackblitz

remark and rehype (for markdown to html)
codesandbox
stackblitz

react-markdown
codesandbox
stackblitz

From what I can gather, you're question is about the visitor types from https://github.com/syntax-tree/unist-util-visit?
And it looks like you are using TypeScript syntax (.ts file extension), but annotating it with JSDoc style TypeScript?
Those to don't work together in the same file.
For how to annotate a plugin use something like
const remarkCustomPlugin: Plugin<[], Root> =

(And consider looking through the code of https://github.com/remcohaszing/remark-mdx-images for a more complete TypeScript syntax example)
And for visitors, it may not need an annotation once the plugin is correctly typed.
But if you need to further narrow the type see https://unifiedjs.com/learn/recipe/narrow-node-typescript/

Thanks @ChristianMurphy !
I finally figured it out and that was not a problem of this lib as you said.
We need to do like this in .ts file:
import type { Root } from 'remark-directive';
import type { Plugin } from 'unified';

const customComponentRemarkPlugin: Plugin<[], Root> = () => {
  return (tree) => {
    visit(tree, (node) => {
    }
  }
}


Add HTML repr method

Add _repr_html_ to TrackRun and TrackSettings
(see e.g. https://github.com/SciTools/iris/blob/master/lib/iris/experimental/representation.py)

Added by bd4335d1facb94f81b16890162654787c8c4595f to TrackRun, though needs better styling


Some staticcheck fixes

I ran staticcheck and fixed the following truncated list of warnings.
$ staticcheck
db.go:823:65: should use time.Since instead of time.Now().Sub (S1012)
gorp.go:40:5: var zeroVal is unused (U1000)
table.go:79:9: unnecessary use of fmt.Sprintf (S1039)
table.go:84:2: should replace loop with columns = append(columns, fieldNames...) (S1011)

Can we get staticcheck running in CI so these improvements don't regress?

@aarongable Can do, I am working on the staticcheck changes locally.


Context floating window transferred to command-line window

When the context floating window is open, pressing q/, q?, or q: opens the command-line window but with a floating window that displays the prior context, inside the command-line window.

How can I get this update? I'm still seeing this issue. I think everything's up to date. @romgrk

same


v4.7.0 crashes neovim on ARM64

Hi, after updating to v4.7.0, neovim crashes nearly 9 times out of 10 with following message:
nvim: lj_record.c:119: rec_check_slots: Assertion `(((((tr)) & (IRT_TYPE<<24)) == ((IRT_FUNC)<<24)))' failed.
[1]    6019 abort      nvim FILENAME

After crash, I can see a node process left running:
6021 ?        Ssl    0:00 /opt/node/bin/node --no-warnings /home/username/.local/share/nvim/plugged/coc.nvim/build/index.js

but I'm not sure if it is related to coc.nvim or not.
File types don't matter.

environment: aarch64 / Raspberry Pi OS 64bit
neovim version: v0.5.0-784-gc6ccdda26 (nightly)
coc.nvim version: v0.0.79 (release)

It works okay on older versions (like v4.6.0 or v4.5.0), but crashes like this on v4.7.0.
Is there any way I can check more about this issue?
Thanks anyway for your great work :-)

Oh wow, I'm sorry you're experiencing this, I've never seen anything like it! It's probably worth trying out the develop branch, just in case. There were some issues with Fennel + LuaJIT recently that got patched out, I'm not 100% sure if any of those issues are present in the version of Fennel bundled with Conjure 4.7.0.
I've never tried running Conjure on ARM, not that I do anything low enough level for that to be significant, but still.
It it crashing on launch? Or after a while of editing? And do you have to be in a Clojure file (or any file that triggers Conjure) for it to happen?

It crashes on launch, with any type of file(even when no file is given).
Interesting thing is, I have two Raspberry Pis, but the crash happens only on 64bit Raspberry Pi OS, and 32bit one has no such problem.
I'll try develop branch and let you know :-)

Another thing you can try, cd into the Conjure repo and run this with luajit installed:
for i in {1..100}; do lua -e "require 'lua.conjure.aniseed.deps.fennel'"; done

If that's failing sometimes (which I had a while back in LuaJIT but with another error) then it'll prove it's something to do with Fennel at least.

I tried running your script several times, but I couldn't see any output. (So no problem with it?)
And also tested with develop branch, but no gain so far.

Yep, if there's no output it's all good, which kinda rules out LuaJIT + Fennel issues. I was hoping that'd be the issue :sweat_smile:
I've got a bunch of work to do today, but I'll compare the diff between versions over the weekend / when I get some time for OSS, I have no idea what could cause this, but I'm sure we can find it.
Maybe it's time for a git bisect!

No need to hurry at all!
I will stick with previous versions.
Please let me know anytime when you need a tester :-)

Bisected on my machine,
04c45bf16f6cef4e574aa1278f34d05949af610e seems to be the first bad commit.

Oh that's really interesting! I feel like it'll be the Fennel compiler somehow but I'm not sure yet, maybe I can run an ARM machine in AWS or in a container to try and reproduce it :thinking: which LuaJIT version did you try my repeated requires with?
Because ideally we'd be using the same LuaJIT as the one embedded in Neovim.
$ lua -v
LuaJIT 2.1.0-beta3 -- Copyright (C) 2005-2020 Mike Pall. http://luajit.org/

$ nvim -v
NVIM v0.4.4
Build type: Release
LuaJIT 2.1.0-beta3
Compilation:
Compiled by nixbld

Features: +acl +iconv +tui
See ":help feature-compile"

   system vimrc file: "$VIM/sysinit.vim"
  fall-back for $VIM: "
/nix/store/iq47sm00ykdbpfjm38bwv6xw84glmf7d-neovim-unwrapped-0.4.4/share/nvim
"

Run :checkhealth for more info

Sorry I'm late.
Here go the versions:
$ lua -v
Lua 5.1.5  Copyright (C) 1994-2012 Lua.org, PUC-Rio

$ luajit -v
LuaJIT 2.1.0-beta3 -- Copyright (C) 2005-2017 Mike Pall. http://luajit.org/

$ nvim -v
NVIM v0.5.0-784-gc6ccdda26
Build type: RelWithDebInfo
LuaJIT 2.1.0-beta3
Compilation: /usr/bin/cc -O2 -g -Og -g -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -Wshadow -Wconversion -Wmissing-prototypes -Wimplicit-fallthrough -Wvla -fstack-protector-strong -fno-common -fdiagnostics-color=always -DINCLUDE_GENERATED_DECLARATIONS -D_GNU_SOURCE -DNVIM_MSGPACK_HAS_FLOAT32 -DNVIM_UNIBI_HAS_VAR_FROM -DMIN_LOG_LEVEL=3 -I/tmp/nvim/build/config -I/tmp/nvim/src -I/tmp/nvim/.deps/usr/include -I/usr/include -I/tmp/nvim/build/src/nvim/auto -I/tmp/nvim/build/include
Compiled by meinside@mymachine

Features: +acl +iconv +tui
See ":help feature-compile"

   system vimrc file: "$VIM/sysinit.vim"
  fall-back for $VIM: "/usr/local/share/nvim"

Run :checkhealth for more info

$

I still have nothing to go on here :sob: I was googling around for parts of this error and found an email thread from 2010 saying that it was fixed on LuaJITs master branch. They were doing GDB things to try and find the point where LuaJITs internal state got broken and it was something to do with vararg functions.
I don't have high hopes of solving this right now since it feels like a LuaJIT bug :disappointed:

If I can bisect my way down to a minimal reproduction to work out which file is doing this then we might stand a chance :thinking:
I need to have a compare between 4.5.0 and 4.7.0 too, I forgot that it used to work for you. That's an important fact.

This is a long shot, but does v4.9.0 work okay? I'm kinda guessing not, but it'd be nice to see if the recent changes to Fennel magically avoid this bug.
At the moment I'm still at a loss, I'm not doing anything too clever here, LuaJIT just has a bug somewhere and I don't know which chunk of Lua is causing it to fail :disappointed: it may also be to do with Neovim's LuaJIT interop code, as the call flows in and out of C -> LuaJIT -> C -> LuaJIT etc.

bcdaf37 doesn't make much difference :'(
Also tested with the nightly version of nvim, but no gain.
I think this is not a major issue, so please keep going ignoring this issue for a while :-)
I'll let you know through this issue whenever I see any change or progress.

@meinside did you manage to find a workaround?
I just upgraded from v4.3.1 to v4.10.0, and I'm having the same issue on my Chromebook.
v4.6.0 is still an upgrade for me, so I'll work with that version for now.

As far as I know it's a LuaJIT bug that's extremely subtle. I think it's some code in the Fennel compiler that's doing this but I can't be sure, it's just the largest file so I guess it's the most likely spot.
The only time I saw something like this before the fix was to have a function inside the Fennel compiler written in a slightly different way. There was no fix, it was just shuffle the code around until LuaJIT was happy :cry:
So I think it'll be the same, but I don't know where, so I have a LOT of Lua where one part of it may be tripping up Lua, but in a non-obvious way.
I feel like the only way to tackle this is with some very clever valgrind usage, which scares me :sweat_smile:
Was it crashing as you opened Neovim? As in just as you executed nvim without opening any files?

Installed v4.10.0 again to reproduce the issue. Some findings:

it seems to happen randomly (about half the time), not on each nvim launch
the first time it crashes, it also breaks my bash output: from that point on, each new bash output line starts at the end of the previous (wrapped) line. Also, anything I type in bash is no longer displayed.
it happens both with and without specifying a file/dir when launching nvim (so nvim, nvim . and nvim my-file.txt all have a chance of failing)

note: I have vim-startify installed, not sure if that really counts as starting nvim without specifying a file

It's both good and sad to see another one with the same problem :-)
Has anyone tested it with the newly released  M1 MacBooks? I don't have one, but if ARM64 is the problematic environment, it could also happen there.

I just installed Conjure v4.14.1 and it seems like everything is working fine again! (Both on a Chromebook and my Rapsberry Pi 4.)
@meinside can you confirm?

I'm not sure if that's a good or bad thing since I haven't done anything specific :grimacing: I can only imagine the Lua that's being generated / run now doesn't hit the same LuaJIT bug. For now, YAY. I just hope it doesn't float back in... maybe some CI for this could be good :thinking:

@harryvederci Thanks for pinging me, but it's still the same for me. Which version of nvim are you using?

Yeah! It's working okay with the nightly version of nvim!

So this is as I suspected I guess, some combinations of Lua code hit a bug in LuaJIT. All I can do (#138) is introduce ARM CI to catch this early in the future, then maybe I can work out what commits cause it. I doubt the root cause is fixable easily, but we can at least know when it's slunk back into the develop branch via CI.
Going to close this since it's ephemeral and just add tests that will hopefully catch it for the future! Thank you for the diligent reporting, I hope it doesn't cause you issues in the future and you can happily Conjure without interruption :smile:


Perlin noise tiles

Tile generation is now based on alpha-weighted combinations of input terrain tiles. Neither of the tileset generation methods so far considered in detail (splines and competitive floodfill) are really suitable for generating gradients at tile boundaries. Also, making splines generated tiles with complex boundary structures would be quite a complex task.
An alternative is to generate each corner's alpha mask directly. The edges must be fixed to ensure smooth tiling, and the middle must be stochastic (eg. Perlin noise) to ensure variety. A parameter should be made to control how much the tile is affected by the stochastic component. Perlin noise parameters would affect how rough or smooth the boundaries is. Post-processing should be applied to allow some terrain borders to be sharp, while others have gradients. The same post-processing would implement #14.
Once that dataflow is in place, it could be augmented with standard noise-combination methods (such as libtcod's heightmap tool, the libnoise examples, and SPARTAN by Paul Jeffries)

[x] Add a Perlin noise generator (probably libnoise).
[ ] libnoise is missing from NuGet; maybe add it? (Making native NuGet packages in VS 2015 is not well supported)
[x] Remove border specifications based on offset, derivative pairs.
[x] Blend/Select module

[x] MovingScaleBias module (fading as distance from corner increases)

[x] Blend/Select module

[ ] anything

[x] reuse with same seed for borders with the same horizontal terrain pair
[ ] read specification from options file
[x] translate y by -1 if horizontal border is at the bottom

[ ] anything

[x] reuse with same seed for borders with the same vertical terrain pair
[ ] read specification from options file
[x] translate x by -1 if vertical border is on the right

[x] CornerCombiner module:

[x]  0.5 along diagonal, ~1 along x edge, ~-1 along y edge, faster transition closer to active corner

[x] negative x quadrant if vertical border is on the right
[x] negative y quadrant if horizontal border is at the bottom

[ ] anything

[x] reuse with different seed for all corners with the same terrain
[ ] read specification from options file

[x] Edge-favouring mask: L^p distance from (0.5,0.5), raised to power q, scaled and clamped to [-1,1]

[ ] Process corner masks into final terrain masks, for example:

[ ] Some terrain types may "win" and suppress other terrain types in a pixel.
[ ] Some terrain types may prevent other terrain types from forming intruding disconnected patches.
[ ] Some terrain types may be unable to appear as intruding disconnected patches.
[ ] Some terrain type pairs may have a different texture at their borders, and these textures may be subject to the effects above (#14).

Got the first output tiles from this method!
Still a few kinks to work out. The bright patches are probably a UInt8 arithmetic overflow, and the tiles all look too similar in the centre (an even blend of the two component terrains). The tiling isn't seamless in a lot of cases.

The version with sharp borders looks much nicer:

The borders don't match, though.

The core of Perlin tileset generation is complete now, so I'm going to close this and split the remaining concerns into new issues: #28, #37, #39, #38.


tour: sync.Mutex example works the same without mutex

Context: https://tour.golang.org/concurrency/9
The example behaves perfectly fine, even if I comment out the Lock/Unlock. To make the mutex required I needed to modify the Inc function:
	c.mux.Lock()
	// Lock so only one goroutine at a time can access the map c.v.
	value := c.v[key]
	value += 1
	time.Sleep(time.Nanosecond)
	c.v[key] = value
	c.mux.Unlock()

(using the web hosted go-tour)

Concur

In a real env, with multi core, probably the program will crash if you comment the mutex. In the playground there are some CPU limitations.

In a real env, with multi core, probably the program will crash if you comment the mutex. In the playground there are some CPU limitations.

True that, probably.
Still this makes this particular exercise quite insipid and might lead curious newcomers to false conclusions.

Which lock/unlock pair did you commented?

definitely the one in Inc. I don't get a crash but the exact same result as with unmodified code (in the playground, of course). Funny.

You're right, the concurrent map access check does not work on the playground. It's a best-effort thing.
I'd leave the code as it is. It doesn't seem worth it to change it just to tentatively trigger some data-races in the (very unusual) playground environment.
OTHO we could improve the accompanying text to explain better what a data-race is, and to stress that a program with a data-race in it is 1) not valid 2) not expected to work correctly.

Just notice we re-enacted the same exact conversation they had at #35
I guess I'll take this as a confirmation that a little more text would help.

I too spent a few minutes wondering why there was no change when commenting out the mutexes - the playground environment limitations makes perfect sense but +1 for an explanation on the page.

Works now in playground, Mutex is needed.
In the current (early 2023 & go 1.20) playground commenting out Lock() and Unlock() in Inc() frequently generates a fatal error: concurrent map writes and rarely a number less than 1000.


PG server!

Can you please provide an example on how to connect to the postgres server within the code itself as i plan for multiple people to use the program and the docs only said how to do it from command line.

@ichson https://vsql.readthedocs.io/en/latest/postgresql-clients.html

It shows the connection details but not how to specifically connect? do i just make a struct with .connect?

You can start the server with the CLI: https://vsql.readthedocs.io/en/latest/cli.html#server
Then connect to it with a PostgreSQL compatible client.

my application is designed for multi-user access, considering that the documentation only provides instructions on establishing a connection from the command line would that mean every one who uses my program has to connect to the server via to CLI? and then couldnt breach the db?

We discussed this offline. Closing.


What is this at the beginning of log file ::ffff

I am using the combined format for logging.  What does the leading ::ffff mean
::ffff:<IP_ADDRESS> - - [10/Aug/2018:22:58:15 +0000] "POST /graphql? HTTP/1.1" 200 350 "http://localhost:4000/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:61.0) Gecko/20100101 Firefox/61.0"
::ffff:<IP_ADDRESS> - - [10/Aug/2018:22:58:16 +0000] "GET / HTTP/1.1" 302 60 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:61.0) Gecko/20100101 Firefox/61.0"

Node.js provides IPs that look like that for whatever reason.

It's just whatever string that is returned by the Node.js API https://nodejs.org/dist/latest-v8.x/docs/api/net.html#net_socket_remoteaddress

So, I am assuming ::ffff is common :)
Thanks!

It shows up in like all my logs, at least.

This question is answered here. https://stackoverflow.com/a/49796071/3284379


Corrected romanian translations, diacritics and spelling

Coverage remained the same at 99.79% when pulling d5ce5313d62065b363f7ddda4472aba027f16be3 on cdarken:corrected-romanian-translations into 873746b91bfa73c56bb445825cba1084fe84acd6 on jenssegers:master.

Coverage remained the same at 99.79% when pulling d5ce5313d62065b363f7ddda4472aba027f16be3 on cdarken:corrected-romanian-translations into 873746b91bfa73c56bb445825cba1084fe84acd6 on jenssegers:master.


Automated cherry pick of #8613: optimized: rds zone sync

Cherry pick of #8613 on release/3.4.
#8613: optimized: rds zone sync

/lgtm
/approve


Unable to dynamically import individual layouts in node.js

Simple-keyboard version
3.3.98
Describe the bug
When I try to import a layout dynamically, like this:
const { default: imported } = await import(`simple-keyboard-layouts/build/layouts/${configuredLayout}.js`);

I get the error "Unexpected token 'export'".
This can be fixed by adding "type": "module" to the package.json of the simple-keyboard-layouts package. Or is there another way to dynamically import layouts that I should be using?

Hey @slangreck, I've added the commonjs layouts in version 3.4.0
https://github.com/simple-keyboard/simple-keyboard-layouts/tree/master/build/commonjs/layouts
Regards,
Francisco Hodge

Thanks so much!


Broken on Kubernetetes v1.25 due to removed v1beta1.CronJob

On Kubernetes v1.25 the image is not working anymore due to the usage of the v1beta1.CronJob API that is deprecated since v1.21. The pod is CrashLooping with the following error message:
E1010 08:43:23.255855       1 reflector.go:138] pkg/mod/k8s.io/client-go@v0.21.0/tools/cache/reflector.go:167: Failed to watch *v1beta1.CronJob: failed to list *v1beta1.CronJob: the server could not find the requested resource

Created pull request https://github.com/deckhouse/k8s-image-availability-exporter/pull/65


Registration Token support - ID not to spec or spec is missing pieces

Describe the bug
The documentation says, it's called m.login.registration_token:
https://spec.matrix.org/v1.3/client-server-api/#token-authenticated-registration
As coined in the spec proposal:
https://github.com/matrix-org/matrix-spec-proposals/blob/main/proposals/3231-token-authenticated-registration.md
However, the SDK only defines an m.login.token:
https://github.com/matrix-org/matrix-ios-sdk/blob/develop/MatrixSDK/JSONModels/MXJSONModels.m#L127
But a description of that is nowhere to be seen.
Which one is it?

Aaah. Thanks for the clarification!


doc: migration-guide: annotate the input entry with the PR number

Add a PR number reference to the input touchscreen polarity change entry.

We should probably tag all entries like this in one go.

We should probably tag all entries like this in one go.

Yeah, was mainly wanting to use this as an excuse to discuss the format.

Did the other ones as well

https://builds.zephyrproject.io/zephyr/pr/65313/docs/releases/migration-guide-3.6.html preview link (still waiting...)

Not really so useful for modules this, the MCUboot one links to a zephyr module update which pulls in multiple commits, would be better to link to the module PR which made the change and has a description https://github.com/zephyrproject-rtos/mcuboot/commit/4a1effbc301fc302ecbaf40d4eb2be520b53010d

Not really so useful for modules this, the MCUboot one links to a zephyr module update which pulls in multiple commits, would be better to link to the module PR which made the change and has a description zephyrproject-rtos/mcuboot@4a1effb

I think normally it would be useful for module, as the module PR is going to contain the upstream changes as well to make the existing code work with the module, which I think is the value of this (for example finding how samples and board have been modified). It's more like: not so useful for deprecated options that have been deleted... what do you expect to find in the PR? :-)
Plus the github tag does not support modules -- it'd be nice if it did though I'll see if I can make that work but that'll prob need its own PR, unless you feel strongly about it I'd say let's merge this and we can update it on a followup.

Plus the github tag does not support modules -- it'd be nice if it did though I'll see if I can make that work but that'll prob need its own PR, unless you feel strongly about it I'd say let's merge this and we can update it on a followup.

I think the reference from the migration guide should continue to point to the Zephyr repo PR. All needed information should be accessible from there.


Update Grafana 10.4.2 and dependencies

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

Project coverage is 98.48%. Comparing base (7bd65a5) to head (6ea5cf4).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #158   +/-   ##
=======================================
  Coverage   98.48%   98.48%
=======================================
  Files          59       59
  Lines        1253     1253
  Branches      361      359    -2
=======================================
  Hits         1234     1234
  Misses         18       18
  Partials        1        1

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


How to create Split button

Is your feature request related to a problem? Please describe.
I am create button save form
Button::make('Save')
  ->type(Color::SUCCESS())
  ->icon('save')
  ->method('save')

But i'm want create button multiple (save, save and new, save and close)
can use Split button bootstrap to create it?
This platform support this?
Describe the solution you'd like
...
Describe alternatives you've considered
...
Additional context
...
Thank !

You may use Dropdown field


Sync Canonical Upload API and the Annotated Spreadsheet API, in terms of data being generated

Canonical Data API should only add the lowest level location as qualifier for the data point.
(Maybe decommission the upload Canonical API)

We decided for now to deprecate the upload canonical data API. Closing this issue, it is being tracked in #43


v6 hidden field CSS styling

Hi,
In our application when a field is hidden, we are modifying CSS styling of that field from display:none to visibility:hidden to retain the column width. This is to avoid any right-side columns moving into left side columns when there are hidden fields.
After V6 upgrade, this CSS styling is not getting applied to the hidden fields. We tried updating hideExpression to hide, passed resetOnHide:false
Is there something on the Formly end that might be overriding the CSS of hidden fields? Any suggestions are appreciated.
Thank you

see https://formly.dev/docs/guide/migration#5-lazy-render-is-enabled-by-default


(feature request) Support for conversion of std::filesystem::path

Since CLIs often have to deal with files and directories being passed to them on the command line, the C++17 filesystem classes make life a lot easier.
It would be nice to be able to just do this:
#include <filesystem>
std::filesystem::path input_file;
auto cli = (
		value("input file", input_file),
);

As far as I can tell, this would require another specialization of the make<> template.
While the issue is not really all that pressing for the official library (vendors are still working on officially implementing the C++17 library extensions, although std::experimental::filesystem does exist for VS2017), is there a documented way of providing user-supplied specializations of make<>?

I'm also looking forward to the day when we have std::filesystem in all major standard library implementations. As far as I understand the interface of std::filesystem::path, it has a constructor, that can convert character sequences like const char* or std::string to a path.
So what I would need to do (and I don't know why I didn't already) is to add a default for clipp::detail::make:
namespace clipp {  namespace detail {
//...
template<class T>
struct make {
    static inline T from(const char* s) {
        if(!s) return false;
        return static_cast<T>(s);
    }
};
//...
}  }

Apart from that, you can always write your own convenience factory functions:
#include <filesystem>

template<class Target>
clipp::parameter //or auto
filename(const std::string& label, std::filesystem::path& path) {
    return clipp::value(label).call([&](const char* arg) {  //or std::string
        path = arg; //should work AFAIK
    });
}

std::filesystem::path infile;
auto cli = (
    filename("input file", infile)
);

I just added a default conversion for the make<> template, that should work with std::filesystem::path.

I think I could also add filename, opt_filename, filenames and opt_filenames as convenience value-parameter factories in the future that will only take refs to std::filesystem::path or std:vector<std::filesystem::path> and will be available #if __cplusplus >= 201703L.

Thanks alot for the detailed answers! I went with a custom factory for the time being.
I am not sure about __cplusplus since I am unsure whether it also applies to library conformance, or just the language bits.

Yeah, you also have to check for #if__has_include(<filesystem>) and probably something else ... have to check that.

I guess I wouldn't put too much thought into it heh. Even though I am using the lib in my project now, the custom factory approach really is a good enough "workaround".
I also looked into this a bit and found several feature detection recommendations, among them testing for __cpp_lib_filesystem, but I haven't seen how that would be used correctly.
One of the issues is that libstdc++ seems to have , but still hides the namespaces behind std::experimental.