text:
[Bug]:

I'm sure that

[X] This issue is still present in the current beta version of this adapter
[X] There is no other (open) issue with the same topic (use the search!)
[X] This issue is not described in the adapter documentation / FAQ (read the docs!)

Version of awtrix-light firmware
0.96
The problem
Die Uhr reagiert nicht auf Apps Visible oder activate. Im Log gibts no response.
Beim Prüfen vom Update kommt Err CNCT.
Ab und zu geht der Adapter auf Warning und startet neu, sodass wieder das IOBroker Symbol auf dem Display zu sehen ist.
Ich möchte abhängig von einem Datenpunkt per JS 3 Apps umschalten. Dabei sollen aber immer die anderen Apps deaktiviert werden, weil ich nicht das Scrollen zwischen den Apps haben will. Der DP aktualisiert sich nur 1x in 5 Minuten, daher gehe ich nicht von überlastung aus.
function updateDisplay() {
    let dirValue = getState(dir).val;
    if (getState(valid).val === true) {
        if (dirValue >= 5) {
            setState(raise, true, true);
            setState(drop, false, true);
            setState(stable, false, true)
        }
        else if (dirValue <= -5) {
            setState(drop, true, true);
            setState(raise, false, true);
            setState(stable, false, true)
        }
        else {
            setState(stable, true, true)
            setState(drop, false, true);
            setState(raise, false, true);
        }
    }
}

Selbst wenn das Skript deaktiviert ist, und ich die Custom Apps versuche per Hand umzuschalten, erscheinen sie nicht.
Die Standard Apps funktionieren.
iobroker.current.log (in debug mode!)

awtrix-light.0
2024-10-11 08:50:53.102
info
error ECONNABORTED from stats: timeout of 3000ms exceeded

awtrix-light.0
2024-10-11 08:49:47.287
warn
(doupdate)  Unable to execute firmware update (maybe this is already the newest  version): AxiosError: Request failed with status code 404

awtrix-light.0
2024-10-11 08:49:47.287
warn
received 404 response from doupdate with content: "NoUpdateFound"

awtrix-light.0
2024-10-11 08:49:45.902
info
performing firmware update

awtrix-light.0
2024-10-11 08:49:42.502
warn
[onStateChange] bzstable: (switch) Unable to execute action: AxiosError: Request failed with status code 500

awtrix-light.0
2024-10-11 08:49:42.502
warn
received 500 response from switch with content: "FAILED"

awtrix-light.0
2024-10-11 08:49:42.289
warn
[onStateChange] bzstable: (switch) Unable to execute action: AxiosError: Request failed with status code 500

awtrix-light.0
2024-10-11 08:49:42.289
warn
received 500 response from switch with content: "FAILED"

awtrix-light.0
2024-10-11 08:49:41.955
warn
[onStateChange] bzstable: (switch) Unable to execute action: AxiosError: Request failed with status code 500

awtrix-light.0
2024-10-11 08:49:41.954
warn
received 500 response from switch with content: "FAILED"

awtrix-light.0
2024-10-11 08:49:41.878
warn
[onStateChange] bzstable: (switch) Unable to execute action: AxiosError: Request failed with status code 500

awtrix-light.0
2024-10-11 08:49:41.878
warn
received 500 response from switch with content: "FAILED"

awtrix-light.0
2024-10-11 08:49:41.172
warn
[onStateChange] bzstable: (switch) Unable to execute action: AxiosError: Request failed with status code 500

awtrix-light.0
2024-10-11 08:49:41.171
warn
received 500 response from switch with content: "FAILED"

awtrix-light.0
2024-10-11 08:49:40.293
warn
[onStateChange] bzstable: (switch) Unable to execute action: AxiosError: Request failed with status code 500

awtrix-light.0
2024-10-11 08:49:40.292
warn
received 500 response from switch with content: "FAILED"

awtrix-light.0
2024-10-11 08:48:58.671
info
rebooting device

Version of nodejs
20.13.1
Version of ioBroker js-controller
6.0.11
Version of adapter
1.3.0

Ich möchte abhängig von einem Datenpunkt per JS 3 Apps umschalten.

Warum sollte man das machen? Dafür gibt es doch die Experten-Apps.
Setzt Du alle Datenpunkte bestätigt. Da passiert logischerweise auch nichts.
Bitte ein komplettes Debug-Log teilen

Ich kann den Fehler gerade nicht reproduzieren, weil ich die Uhr neu geflashed habe kurz bevor ich den Issue aufgemacht habe.
Die Experten Apps kannte ich noch nicht. Wurden in deinem Video nicht weiter besprochen oder?
Datenpunkte setze ich bestätigt ja. Da reicht doch setState(state, true, true) oder?
debuglog.txt

Datenpunkte setze ich bestätigt ja.

Bitte die Grundlagen anschauen: https://haus-automatisierung.com/iobroker-kurs/


text:
SIMD support is musted?

This repo is awesome!
At this stage it looks like simd support is necessary, is it possible to build no simd version for lower version browsers (those that don't support simd)?

Hello, the pre-built binaries currently requires an engine that supports Wasm SIMD. However, you can still build binaries without this feature, by passing the --disable-simd build parameter.
Assuming you have Docker installed (or another OCI-compliant container runtime, such as Podman) and using a Unix-like environment (otherwise $(pwd) does not work there), you can use the build command available in package.json.
https://github.com/kleisauke/wasm-vips/blob/9f6cc94a2a2d116cc6c75aaedc7f57793d74eb00/package.json#L40
For example:
$ npm run build -- --disable-simd

There's a possibility that I can provide pre-built binaries that does not use SIMD as a fallback (e.g., for compatibility with Safari, which at the time of writing does not support that). However, I don't know if that makes sense, given that Wasm SIMD is standardized, and is likely to become a mandatory feature in Wasm 2.0.
FWIW, I'm also planning to make use of the standardized reference types feature, which is enabled by default on V8-based engines after commit https://github.com/v8/v8/commit/1771e4aaa3f285b3829539c1f80dbde01500fc21 (corresponds to V8 9.9.2, Chrome 96, Node.js 18.0.0, Deno 1.20.0). It's a bit too early to enable that and should happen after Node 16.x reaches EOL. Fortunately, this feature is supported by Safari and should already be safe to enable on Firefox (supported since version 79, so that doesn't require increasing the minimum version).

FYI it seems likely that Safari will support SIMD in version 16.3 sometime in February/March. At that stage, all engines support the feature 🥳

source: gharchive/issue

authors: atjn hurryhuang1007 kleisauke

repo: kleisauke/wasm-vips

license: MIT

license_type: permissive

license_source: github-api


text:
Response time

Hey,
I'm using this prisma session store but I noticed the response time is almost 10x longer than when using memorystore, is this expected or not?
Making a request to a non-existent page without the prisma session store takes about 40ms on average, while it takes around 450ms when the prisma store is used.

Hi @thvozdovic,
Strange; hadn't encountered this.
Authentication will take significantly longer than requesting a non-existent page, since it requires at least one db request/response, and possibly more than that if the page requires dynamic data. (If you're coming from using JWTs or equivalent for authentication, this "extra" db hit, for each page-load, may seem surprising.)
But as for why this session store might take longer than another session store - Not sure why that would be...
Perhaps in the transpilation from typescript to javascript, optimization is not yet what it should be?
Another though: in-memory data stores are significantly faster than their alternatives. If memorystore is in-memory (as its name suggests), and the database you are using with prisma-session-store is not in-memory (e.g. postgres, mysql, etc): Perhaps that could account for the speed difference?

Anyone still experiencing unexpected reponse time issues with prisma-session-store?

Closing for now; we can re-open if this re-surfaces.

authors: kleydon thvozdovic

repo: kleydon/prisma-session-store


text:
fix bpf-map test failed

What type of PR is this?
/kind bug
What this PR does / why we need it:
Which issue(s) this PR fixes:
Fixes #340
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

@LiZhenCheng9527 can we run the bench in the ci

source: gharchive/pull-request

authors: hzxuzhonghu nlgwcy

repo: kmesh-net/kmesh


text:
to support releases, adding a manual only release notes generator workflow

see https://github.com/n3wscott/eventing/runs/1343788652?check_suite_focus=true for an example run.

Pulled Dave's defaults and redid the script, example runs: https://github.com/n3wscott/discovery/actions?query=workflow%3A"Release+Notes"
Runs:
11 - Eventing
10 - Serving

In the example output linked above I see [Documentation](https://docs.k8s.io/docs/home), which seems wrong - will this be in the "real" runs?

The output is not ready to be used, it is not build for us, so there are some edits required.

ah I see - cool, be nice if we could fix that up then at some point, but not a big deal.
/lgtm

license_source: bigquery


text:
repo add seems broken on Windows

Using 0.22.0, I ran:

func repo add https://github.com/boson-project/templates
func repo list

But the last one gives me the following output:
Error: parse "file://C:\\Users\\JeffMAURY\\.config\\func\\repositories/me": invalid port ":\\Users\\JeffMAURY\\.config\\func\\repositories" after host

@jeffmaury I believe I fixed similar issue already. Could you please check latest main version?

authors: jeffmaury matejvasek

repo: knative-sandbox/kn-plugin-func


text:
[master] Upgrade to latest dependencies

Cron. -knative-prow-robot
/cc knative-sandbox/networking-wg-leads
/assign knative-sandbox/networking-wg-leads
Produced via:
./hack/update-deps.sh --upgrade --release v0.21
./hack/update-codegen.sh

Details:
bumping knative.dev/pkg 75d66b5...6040b3a:
  > 6040b3a improve client error message when our webhook doesn't have a valid cert (# 2000)
  > 7101e9d allow the addressable ducktype to act as an ownerref (# 1999)
  > 250a183 Bump K8s libs to 1.19 (# 1986)
  > 2f4dd35 Switch Webhook to ed25519 and expiration of the certificate to seven days (# 1998)
  > 32a3248 upgrade to latest dependencies (# 1997)
  > 992644a Update common github actions (# 1996)
  > 8cd47b5 drop excess logger properties (# 1993)
  > 1bbf0a6 add LabelSelector to InformerFactory so that the informers only list and watch resources with the given labels (# 1940)
bumping knative.dev/hack 4422dca...8d623a0:
  > 8d623a0 Use git tag directly in master to get latest version (# 43)
bumping knative.dev/networking 4751606...94433ab:
  > 94433ab upgrade to latest dependencies (# 341)
  > 8b522a9 Move TestProbeHeaders tests to stable, TestTagHeaders tests to beta (# 340)
  > 4db00b8 upgrade to latest dependencies (# 339)
  > 844666d Update common github actions (# 338)
  > b17f435 upgrade to latest dependencies (# 337)
  > dcc8744 Remove out-of-date documentation (# 336)

/lgtm
/approve

/lgtm
/approve

authors: ZhiminXiang knative-automation

repo: knative-sandbox/net-certmanager


text:
Refactor sink helpers

Moved sink helpers to controller/sinks package since they aren't generic.
Removed superfluous logging to eliminate the context argument and keep logging out of library functions.
Get namespace from ObjectRef instead of separate parameter. The ContainerSource reconciler always forces this to be the same as the source namespace, same as before.
Create a new function for setting the sink argument since I find several early returns easier to follow than several nested ifs.
Change the condition reason from "NotFound" to "Missing" when the Source has no sink ref, since the user action required is different. This should really be validated by the webhook but we don't have a
webhook yet.
Also fixed a few comment typos caused by function renames.
/cc @n3wscott

@adamharwayne made a convincing argument that the namespace argument of GetSinkURI should remain because it's always required and burying it in the ObjectRef makes it easy to miss. I rolled that change back.

/lgtm
Thanks for the cleanup!!

repo: knative/eventing-sources


text:
Fix update-codegen.sh when run outside GOPATH

Fix update-codegen.sh after modules migration by specifying output-base.
Addresses https://github.com/knative/pkg/issues/1287 if accepted will likely attempt an upstream into library.sh.

/assign @grantr

As an answer to the question: why not simply update client-go?
The latest version uses the OpenAPIv2 package instead of openapiv2, and updating client-go leads to a diamond dependency problem that can't be solved with replace directives because you can't alias two packages to the same module (OpenAPIv2, OpenAPIv3) -> (openapiv2, openapiv3)

/assign @n3wscott as I hear you've played around in the area 😄

Can you confirm that the client gen produces code in the go mod file path? I was testing and was only able to change the package, but that package was always rooted in $GOPATH

Can confirm, This code was generated using just ./hack/update-codegen.sh outside of GOPATH

/lgtm

@Cynocracy can you please rebase?  thanks

Yup sorry about that, I have a bunch of these I should go back and clean up.
On Sat, Aug 1, 2020 at 4:28 PM Nghia Tran notifications@github.com wrote:

@Cynocracy https://github.com/Cynocracy can you please rebase? thanks
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/knative/networking/pull/18#issuecomment-667599866,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAICPOUTMY53J7MO5QZ4VSDR6SQKXANCNFSM4OCMOQYA
.

Actually, given that I found recently ko works 1:1 with go's semantics re:
build flags, I might just revert these. Sorry for the noise
On Sat, Aug 1, 2020 at 5:15 PM Jonathan Donovan jmd377@cornell.edu wrote:

Yup sorry about that, I have a bunch of these I should go back and clean
up.
On Sat, Aug 1, 2020 at 4:28 PM Nghia Tran notifications@github.com
wrote:

@Cynocracy https://github.com/Cynocracy can you please rebase? thanks
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/knative/networking/pull/18#issuecomment-667599866,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAICPOUTMY53J7MO5QZ4VSDR6SQKXANCNFSM4OCMOQYA
.

authors: Cynocracy n3wscott tcnghia

repo: knative/networking


text:
Add the mfClient into the reconciler

Fixes #
Proposed Changes

Release Note

/test pull-knative-operator-go-coverage

/test pull-knative-operator-go-coverage

/test pull-knative-operator-go-coverage

authors: chaodaiG houshengbo

repo: knative/operator


text:
Operator should be able to install from different registries and tags

Currently knative serving release uses the registry: gcr.io/knative-releases and the build path: github.com/knative/serving/cmd. Additionally, the tag is built using a sha sha256:1e40c99ff5977daa2d69873fff604c6d09651af1f9ff15aadf8849b3ee77ab45 instead of a tag number 0.6.0. These fields should be customizable, so it could point to a registry of quay.io/openshift-knative or others.
I think it's reasonable to have reasonable defaults from knative serving, but support modifications by changing KnativeServing CR.
The configuration could look like:
apiVersion: serving.knative.dev/v1alpha1
kind: KnativeServing
metadata:
  name: knative-serving
spec:
  config:
  image:
    registry: "my-registry.io/my-knative-release/path"
    tag: "v0.6.0"

Still unknown:

Should each knative deployment have a separate "tag" (or revision) or should there only be one supported tag?
Should this config live in the KnativeServing CR or should it live in a ConfigMap for the Operator?

For the multiple tag question theres two use cases I wonder about:

Someone, possibly a platform provider, wants to cut a patch release of a specific component (e.g. fix a security bug in activator). In this case the whole cluster would need to be updated as all of the image tags would have to change. Even if the tags for other components point to the same sha I think the deployments themselves would need to perform a rollingupgrade as the deployment changed.
When we support deploying from master its probably nice to support each image tag being unique (think: how ko generates image tag's).

What if instead this ConfigMap looks like follows:
apiVersion: serving.knative.dev/v1alpha1
kind: KnativeServing
metadata:
  name: knative-serving
spec:
  config:
    # If an image is not specified we generate it's URI using this
    default-image:
      registry: "my-registry.io/my-knative-release/path"
      tag: "v0.6.0"
    images:
      # Allow a user to override a specific image
      activator: <full image uri>
      ...

This would allow a user to set a single line in default-image for the 'I want to deploy the same tag for all images but using my registry' case, and also allow the patching a single component case as well as control for deploying from master with generated tags.

@yu2003w are you suggesting a single Kubernetes cluster where different nodes have different architectures?
I'm not sure how common that is -- do you have pointers on how that is handled on baseline Kubernetes?

@evankanderson Originally I want to push images of different architectures into same registry. Then   setup k8s cluster for different arch to conduct automation tests.
Now I think using ${ARCH} in sub level of repositories as docker hub does.

authors: evankanderson greghaynes trshafer yu2003w

repo: knative/serving-operator


text:
Support parentheses commands in dictation mode as well as command mode.

Parentheses are common in dictated prose.

I suggest not including "paren" in here, but only the disambiguated left/right versions, since "paren" is pretty close to "parent", so including it raises the chance of a misrecognition.

Thanks!

authors: bjaspan rntz splondike


text:
Use JSDoc comments to generate type definitions

Feature discussion / request
TS 3.7 makes it possible to use use --declaration and --allowJS simultaneously (details).
This means we can use JSDoc comments for public APIs and have typescript definitions generated from them.
I think this may be better than our current approach of separate type definitions because it would be easy to quickly identify if any public APIs don't have types associated (or they have gone out of sync after a change). Also it will help tooling integration when we are working on Knex itself because ts language server has first class support for jsdoc comments.

I don't see any reason why not to try it out 👍

I explored on this briefly: One pain-point is that this has to be an all-or-nothing migration.
I couldn't find a clean way to just add comments to some js files and continue using them alongside manual typings, which makes this a somewhat larger endeavour.

authors: elhigu lorefnon

repo: knex/knex


text:
Update flowchart.md

Added example to create arrow head link with text.
I had some troubles figuring out the right syntax.
Maybe for someone else useful, too?
Thankfully,
Robert

Many thanks!
I am reworking the docs as we speak so I'll add this there as well.

You're welcome!
Thanks for your quick response,
Robert

authors: knsv orschiro

repo: knsv/mermaid

license: mit


text:
shdotenv seems to ignore -e /dev/null

Unless I understood the docs wrong, shdotenv export ignores -e /dev/null
Ex:
$ echo "VAR1=foo" > .env
$ shdotenv -e /dev/null -e .env export
HOME='/root'
PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
PWD='/tmp'
SHLVL='2'
TERM='xterm'
VAR1='foo'

Expected behavior
$ echo "VAR1=foo" > .env
$ shdotenv -e /dev/null -e .env export
VAR1='foo'

Environment:

OS: linux (alpine:3.17 container)
awk version: GNU awk 5.1.1

Additional context
I would like to use shdotenv to manipulate an env file ensuring that file is valid and merging files, for example:
echo "VAR1=foo" > .existing.env
MYOUTPUT=$(echo 'value that I have no idea on how to escape')
shdotenv export MYOUTPUT | shdotenv -e /dev/null -e existing.env -e - export

Of course I can do shdotenv export MYOUTPUT >> existing.env and rely that values would be overwritten due their order, but I would prefer to use shdotenv to keep the env file cleaner.

shdotenv merges all specified .env files.
$ cat .env
VAR=123

$ cat .env2
VAR2=456

$ env -i shdotenv -e .env -e .env2 export
PWD='/home/koichi/workspace/shdotenv'
VAR='123'
VAR2='456'

The general purpose of shdotenv is to load .env file and execute a command.
$ shdotenv any-command

If no command to execute is specified, the default output will be the environment variable setting code that can be evaluated by the POSIX shell.
$ env -i shdotenv -e .env -e .env2
export VAR='123'
export VAR2='456'

If the command specified is an export command, it behaves similarly to the export command in the POSIX shell. In other words, all current environment variables are output.


text:
Route Specific Helpers

Hey,
Im in the middle of writing a framework where I want to define route specific helpers. I.e if I am on / then the helper parse will do something, and if I'm in the route /test, then use a different helperparse does something else. My proposal is to add something like this:
this.render('foo', {
  layout: 'bar',
  helpers: {
    lowercase: function(word) {
      return word.toUpperCase();
    }
  }
});

Actually, this is not needed. I can work around it.

repo: koajs/koa-hbs


text:
Download item behavior

I tried to test download feature on Gallery item and it show me this screen:

Spec
for modal

fix modal container
fix close button
fix responsive
use NeoModal
CTA should be on continue

for download

we don't need modal for blob

seems related with this pr i raised #5369
need to add the skip logic

hm, thought we have the issue with the bug in the middle fixed

isn't this one related?

#5552

👋

authors: exezbcz floyd-li roiLeo

repo: kodadot/nft-gallery


text:
What files and pages we can delete from KodaDot?

Follow up from

#4750

To speed up migration, I would recommend

delete components/pages
migrate to

hello.kodadot.xyz
developers.kodadot.xyz

Search candidates here

https://github.com/search?q=repo%3Akodadot%2Fnft-gallery+nuxt-property-decorator&type=code&p=1

Candidates for deletion

https://github.com/kodadot/nft-gallery/blob/56fb758084dfa61fa408e6bcb3ed2e496f4eceb7/pages/rmrk/create.vue#L17
https://github.com/kodadot/nft-gallery/blob/56fb758084dfa61fa408e6bcb3ed2e496f4eceb7/pages/partnership.vue#L13
https://github.com/kodadot/nft-gallery/blob/56fb758084dfa61fa408e6bcb3ed2e496f4eceb7/pages/rmrk/admin.vue#L6 (does it even work?)
https://github.com/kodadot/nft-gallery/blob/56fb758084dfa61fa408e6bcb3ed2e496f4eceb7/components/rmrk/Create/Admin/AdminPanel.vue#L73
https://github.com/kodadot/nft-gallery/blob/56fb758084dfa61fa408e6bcb3ed2e496f4eceb7/components/settings/KeyboardShortcuts.vue#L48 (we will have new anyway)
https://github.com/kodadot/nft-gallery/blob/56fb758084dfa61fa408e6bcb3ed2e496f4eceb7/components/landing/EsSustainability.vue#L138 --> hello
https://github.com/kodadot/nft-gallery/blob/56fb758084dfa61fa408e6bcb3ed2e496f4eceb7/pages/transform.vue#L33 - no needed I guess

completed, removed unused pages.
maybe https://github.com/kodadot/nft-gallery/blob/main/pages/sustainability.vue could be improved

authors: roiLeo yangwao


text:
graceful handle of url check

Thank you for your contribution to the Koda - Generative Art Marketplace.
👇 __ Let's make a quick check before the contribution.
PR Type

[x] Bugfix

Needs QA check

@JustLuuuu  please review

Context

[x] Closes #10271

Did your issue had any of the "$" label on it?

[x] Fill up your DOT address: Payout

Screenshot 📸

[x] My fix has changed something on UI; a screenshot is best to understand changes for others.

works for me

authors: JustLuuuu daiagi


text:
fix: Connect your wallet in create not working

Thank you for your contribution to the KodaDot - One Stop Shop for Polkadot NFTs.
👇 __ Let's make a quick check before the contribution.
PR Type

[x] Bugfix
[ ] Feature
[ ] Refactoring

Context

[x] Closes #5899
[ ] Requires deployment <snek/rubick/worker>

Before submitting pull request, please make sure:

[x] My contribution builds clean without any errors or warnings
[x] I've merged recent default branch -- main and I've no conflicts
[x] I've tried to respect high code quality standards
[x] I've didn't break any original functionality

Optional

[ ] I've tested it at </ksm/collection>
[ ] I've tested PR on mobile
[ ] I've written unit tests 🧪
[ ] I've found edge cases

Had issue bounty label?

[x] Fill up your KSM address: Payout

Community participation

[x] Are you at KodaDot Discord?

Screenshot 📸

[ ] My fix has changed something on UI; a screenshot is best to understand changes for others.

Copilot Summary

🤖 Generated by Copilot at d3691ee
This pull request enhances the ConnectWalletButton component by adding a prop to control the connect modal and removing unnecessary code. This prevents nested modals from appearing when the button is used in other modals, such as in the CreateCollectionModal.

🤖 Generated by Copilot at d3691ee

No more nested modals of doom
We disable the toggle with a prop
ConnectWalletButton is improved
We remove the code that makes us flop

pay 20 usd
fast tracking


text:
fix: List NFT floor price button doesn't work

PR Type

[x] Bugfix
[ ] Feature
[ ] Refactoring

Context

[x] Closes #8867

Did your issue had any of the "$" label on it?

[x] Fill up your DOT address: Payout

Screenshot 📸

[x] My fix has changed something on UI;

Still doesn't work for me ie: Genera collection

seems to be working, can you share video ?
https://github.com/kodadot/nft-gallery/assets/44554284/e89bead7-3551-4834-b6b0-027605ec8bef

seems to be working, where are you using the listing modal ?

Using LIST button in GalleryItem page (/ahp/gallery/63-22)

thanks!
pay 20 usd

😍 Perfect, I’ve sent the payout
💵 $20 @ 7.49 USD/DOT ~ 2.67 $DOT
🧗 13QUj3pZyFNfYj4AM336hRdyLQbevj5H3sR4PKmLEXLdwZhh
🔗 0xd4ba522c45a3a0738457cad91587723f5b4e1c97dca27f9a17d1a940410f438f
🪅 Let’s grab another issue and get rewarded!
🪄 github.com/kodadot/nft-gallery/issues

authors: hassnian roiLeo yangwao


text:
Invalid Link Discord Channel

Ah thanks @januridp . The correct link is https://discord.gg/Wps4YrQ3SA, would you contribute for this change?

Ah thanks @januridp . The correct link is https://discord.gg/Wps4YrQ3SA, would you contribute for this change?

Sure, I've already sent a PR, kindly check ya

authors: insomnius januridp

repo: kodefluence/altair


text:
Consider publishing from text format to format readable by player

I'd be interested in a discussion about the data format for the player. When generating large volumes of technical documentation, we don't necessarily want to work in the browser. We generate using a Markdown- or Asciidoc-based static site generator. It might be cool to output from our Antora (Asciidoc) system to a format that can be read by Kodemo player.

Would be great to support additional formats.
The Kodemo JSON format stores all of the main body text as a single string of HTML under the story key. So if you took Asciidoc output and converted it to HTML, you could start with:
{
  "title": "Title",
  "story": "<your Asciidoc as HTML here>"
}

I'm not sure how the code documents/subjects would be identified from the original doc. In Kodemo's format, each code file is a subject and each subject as at least one version. Versions are what we automatically animate between to show code changes in the same file.
The annotations that trigger subjects to show are data attributes within the story. Here's a very simple example showing how it comes together.
{
  "title": "Title",
  "story": "
Show subject #1.
",
  "subjects": {
    "s1": {
      "versions": {
        "v1": {
          "code": "let a = 1;"
        }
      }
    }
  }
}

authors: codemaestro hakimel

repo: kodemoapp/player


text:
Space-specific padding lost after sleeping

Been battling this a while thinking it was misconfiguration or not utilizing events/etc to solve. When specifying space padding, such as yabai -m space 7 --label mySpaceLabel --padding rel:0:0:195:0, I lose the padding when I return to my desk the next morning.
I've tried the above command with --padding as well as left_padding with yabai -m config --space mySpaceLabel left_padding 195.
Important context:

Space 7 is the last space I have defined, although I have a total of 8 spaces in mission control
I have tried absolute padding and relative padding
I have tried overriding default config padding as well as omitting any default padding
I have tried with and without signal events hooking to: system_woke, display_removed, display_added, space_changed, window_moved, window_destroyed, and window_created
I'm on Sonoma 14.4, however this has been occurring since before upgrading to Sonoma
Currently on yabai version 7.1.0

Reproducible yabairc:
# ~/.config/yabai/yabairc

# event hook for enabling the dock injection for spaces management
# must be before --load-sa
yabai -m signal --add event=dock_did_restart action="sudo yabai --load-sa"
sudo yabai --load-sa

# left_padding              10              \
yabai -m config                               \
    window_placement          second_child    \
    window_gap                10              \
    top_padding               10              \
    bottom_padding            10              \
    right_padding             10              \
    layout                    bsp             \
    mouse_follows_focus       on              \
    mouse_modifier            alt             \
    mouse_action1             move            \
    mouse_action2             resize          \
    mouse_drop_action         swap

yabai -m space 1 --label l1 --padding rel:0:0:10:0
yabai -m space 2 --label l2 --padding rel:0:0:10:0
yabai -m space 3 --label l3 --padding rel:0:0:10:0
yabai -m space 4 --label l4 --padding rel:0:0:10:0
yabai -m space 5 --label l5 --padding rel:0:0:10:0
yabai -m space 6 --label l6 --padding rel:0:0:10:0
yabai -m space 7 --label l7 --padding rel:0:0:195:0

# left padding to show desktop widgets on the left of screen
# yabai -m signal --add event=window_created action="yabai -m space l7 --padding rel:0:0:195:0"
# yabai -m signal --add event=window_destroyed action="yabai -m space l7 --padding rel:0:0:195:0"
# yabai -m signal --add event=window_moved action="yabai -m space l7 --padding rel:0:0:195:0"
# yabai -m signal --add event=space_changed action="yabai -m space l7 --padding rel:0:0:195:0"
# yabai -m signal --add event=display_added action="yabai -m space l7 --padding rel:0:0:195:0"
# yabai -m signal --add event=display_removed action="yabai -m space l7 --padding rel:0:0:195:0"
# yabai -m signal --add event=system_woke action="yabai -m space l7 --padding rel:0:0:195:0"

I ended up getting a workaround by creating a script that checks that my space is on the expected display and if so, set the padding.
I also removed space labels because it was losing the label after sleeping (that was the biggest issue), which ended up applying padding to a random space.
Lastly I hooked up the script to all of the display+space event hooks (since it will only do something if the space+display are correct and set the padding.
This results in very very chatty commands, since I do 2 queries plus a setter, but it works and I haven't experienced / don't foresee any performance issues with it for now.

repo: koekeishiya/yabai


text:
Invalid JSON in window query output (literal newlines)

Chrome window titles have a newline in them if the search (cmd-f) function is being used and the window is focused. This newline is not converted to "\n" in the output from yabai -m query --windows. Example (look at "title" field):
{
	"id":91959,
	"pid":12942,
	"app":"Google Chrome",
	"title":"Find in page
    Nvim documentation: api",
	"frame":{
		"x":0.0000,
		"y":23.0000,
		"w":1120.0000,
		"h":1394.0000
	},
	"level":0,
	"role":"AXWindow",
	"subrole":"AXStandardWindow",
	"movable":1,
	"resizable":1,
	"display":1,
	"space":1,
	"visible":1,
	"focused":1,
	"split":"none",
	"floating":0,
	"sticky":0,
	"minimized":0,
	"topmost":0,
	"shadow":1,
	"zoom-parent":0,
	"zoom-fullscreen":0,
	"native-fullscreen":0
}

Fixed in the latest release.

authors: koekeishiya smackesey


text:
ReverseProxy stopped working with 7.0.*

Hello, after the update to 7.*, I can't access the webui of koel anymore (clean environment).
Illuminate\View\ViewException:
Untrusted Host "example.org". (View: /var/www/html/resources/views/index.blade.php)

  at /var/www/html/vendor/symfony/http-foundation/Request.php:1174
  at Illuminate\View\Engines\CompilerEngine->handleViewException()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:60)
  at Illuminate\View\Engines\PhpEngine->evaluatePath()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:72)
  at Illuminate\View\Engines\CompilerEngine->get()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/View/View.php:207)
  at Illuminate\View\View->getContents()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/View/View.php:190)
  at Illuminate\View\View->renderContents()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/View/View.php:159)
  at Illuminate\View\View->render()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Http/Response.php:69)
  at Illuminate\Http\Response->setContent()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Http/Response.php:35)
  at Illuminate\Http\Response->__construct()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php:918)
  at Illuminate\Routing\Router::toResponse()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php:885)
  at Illuminate\Routing\Router->prepareResponse()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php:806)
  at Illuminate\Routing\Router->Illuminate\Routing\{closure}()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:144)
  at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php:50)
  at Illuminate\Routing\Middleware\SubstituteBindings->handle()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:183)
  at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php:78)
  at Illuminate\Foundation\Http\Middleware\VerifyCsrfToken->handle()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:183)
  at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php:49)
  at Illuminate\View\Middleware\ShareErrorsFromSession->handle()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:183)
  at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php:121)
  at Illuminate\Session\Middleware\StartSession->handleStatefulRequest()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php:64)
  at Illuminate\Session\Middleware\StartSession->handle()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:183)
  at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php:37)
  at Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse->handle()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:183)
  at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php:67)
  at Illuminate\Cookie\Middleware\EncryptCookies->handle()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:183)
  at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:119)
  at Illuminate\Pipeline\Pipeline->then()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php:807)
  at Illuminate\Routing\Router->runRouteWithinStack()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php:784)
  at Illuminate\Routing\Router->runRoute()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php:748)
  at Illuminate\Routing\Router->dispatchToRoute()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php:737)
  at Illuminate\Routing\Router->dispatch()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:200)
  at Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:144)
  at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustHosts.php:48)
  at Illuminate\Http\Middleware\TrustHosts->handle()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:183)
  at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
     (/var/www/html/app/Http/Middleware/ForceHttps.php:28)
  at App\Http\Middleware\ForceHttps->handle()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:183)
  at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:21)
  at Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php:40)
  at Illuminate\Foundation\Http\Middleware\TrimStrings->handle()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:183)
  at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php:27)
  at Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:183)
  at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php:99)
  at Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance->handle()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:183)
  at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:119)
  at Illuminate\Pipeline\Pipeline->then()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:175)
  at Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter()
     (/var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:144)
  at Illuminate\Foundation\Http\Kernel->handle()
     (/var/www/html/public/index.php:57)

I tried setting TRUSTED_HOSTS='example.org' in the .env file but that didn't change anything.
Thank you for this amazing app.
It would be a shame if https setups weren't supported anymore :(
Edit:
It doesn't seem to be limited to proxy connections.
Every request that doesn't go to localhost:80 is rejected. (including 127.0.0.1:80...)
I also tried updating to 7.0.4 and also changing the APP_URL var in .env.

I found the issue.
The APP_URL parameter now has to be changed (previously this wasn't necessary).
It's also essential to change the port if the connection is going to be https.
Example:
APP_URL=https://koel.domain.org:443

repo: koel/docker


text:
macOS Catalina Beta 10.5.5 でクラッシュ

※OSレベルの不具合のようで、macOSをアップデートした後改善いたしました。
申し訳ありませんでした。
Version: v2.0.0-beta8 (macOS)
Java for Mac OS X Version 8 Update 251
macOS Catalina Beta 10.5.5環境にアップデート後、csvファイルをSmoothCSVで開き、横(列)方向のスクロールバーをドラッグしようとすると、100%で強制終了するようになってしまいました。

ご報告ありがとうございます！
承知しました。

authors: kohii masato-igarashi

repo: kohii/smoothcsv


text:
port NDT_CUDA from from fast_gicp to small_gicp

Hi, thank you for your great work. I have been using fast_gicp for a project on the jetson orin for registration on relatively large (10 million+) point clouds. I found that out of all the methods, NDT_CUDA is the only one with acceptable performance. However you mentioned that its implementation may have some bugs due to how quickly you implemented it. It would be highly appreciated if you can port NDT_CUDA to small_gicp with a more stable implementation :) Thank you again!

I recognize that GPU-based methods have high demand and am thinking of introducing them to small_gicp. The problem is that GPU implementation requires a completely different software design and would require as much effort as writing another library from scratch... Anyways, I will try to find time to tackle it.


text:
bug?: dialogue-console 似乎无法加载

不太确定是不是 bug，可能只有我的机子上是这样
不过生产环境用不上这个，摸了

是 bug。还没做好。

authors: idlist shigma

repo: koishijs/koishi-plugin-dialogue


text:
Convenient support for out-of-tree sources

If you use crate2nix with your own project, you can either use a tools.nix based workflow in which Cargo.nix is generated in a derivation and imported. Or you can pregenerate your Cargo.nix file if you prefer or using git with sub modules.
If you want to package a crate which source is not in the tree but that you fetch with a derivation, only the tools option is currently convenient. Pregeneration of the source is not really supported.
I propose that crate2nix:

Automatically detects the persence of a crate-src.nix file that evaluates to a derivation fetching the sources.
If so, during generation it will instantiate crate-src.nix and expect the Cargo.lock/Cargo.toml file in the retrieved source.
The generated Cargo.nix files and the crate-hashes.json files are stored in the same file as the sources.

That does sound good. How do you think about just providing an identiier from crates.io (as an alternative path)?
Perhaps I am thinking a bit too far here but having the ability to feed crate2nix a list of crates (from crates.io) would be nice for cli tools (and testing a bunch of crates for compatibility, caching them on a binary cache, …).

Regarding inclusion into nixpkgs: How big would be the generated files?

Pretty much proportional to the number of transitive dependencies - 135KB for Crate2nix. 2-3 times the size of Cargo.lock + Cargo. toml. If it were a priority to reduce that, there are some things we can do but I would not expect wonders.
Similar binaries could be grouped into virtual workspaces so that their dependencies resolve to the same versions where possible and to avoid duplication.

Oh, the static  part of Crate2nix code is about 17KB and can be easily factored out of needed.

I wonder if recursive nix could be used to avoid having the generated files.

They are easily avoided with "import from derivation". With recursive nix, you have to know all your dependencies beforehand - so, no, that doesn't help.
You could code most of the functionality of crate2nix in nix itself now that the Toml parser in nix is good enough. Then you would still need to copy the Cargo.lock files into nixpkgs. And I doubt that it would be faster.
And speed is probably the main concern? Because of the template language, the dependency tree of crate2nix is e.g. 5x bigger than ripgrep.

The approach with checking in the Cargo.lock file should also work in principle with naersk @nmattia

Yeah speed and memory consumption are the main concern we have with evaluation of nixpkgs.

I think we can cut down on file size by a factor of two or so -- afterwards it becomes difficult if it should stay readable. We at least have to preserve the info that allows feature resolution and the information necessary to retrieve the code.

I pushed early but fairly complete support for out-of-tree sources!
See https://github.com/kolloch/crate2nix/blob/master/out-of-tree-sources.md for a description.
This does not (yet) try to trim down the size of the generated nix-file since that is somewhat orthogonal. Tell me what you think! @Mic92 @andir

This looks really good. I just tried it. For use in nixpkgs we probably would import the Cargo.nix file into a different file to add things like metadata and some other customization. I wonder if we should default to niv to update all the sources. It handles github & git & tarballs well so far, which is more or less how all our Rust projects are built so far. I will experiment a bit.

I just tried to package a couple of command line tools we have in nixpkgs:
jq -r "keys" < nix/sources.json.txt
[
  "bat",
  "exa",
  "fd",
  "hexyl",
  "lsd",
  "miniserve",
  "vivid"
]

However run into conflicts:
$ crate2nix generate
Generated ./workspace.nix successfully.
Building ./workspace.nix workspaceMemberDirectory: done.
Generated ./Cargo.toml successfully.
Updating Cargo.lock:
  "cargo" "generate-lockfile" "--manifest-path" "./Cargo.toml"
  warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
  package:   /home/joerg/git/nixpkgs/pkgs/tools/rust-applications/workspace_members/fd/Cargo.toml
  workspace: /home/joerg/git/nixpkgs/pkgs/tools/rust-applications/Cargo.toml
  warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
  package:   /home/joerg/git/nixpkgs/pkgs/tools/rust-applications/workspace_members/bat/Cargo.toml
  workspace: /home/joerg/git/nixpkgs/pkgs/tools/rust-applications/Cargo.toml
  warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
  package:   /home/joerg/git/nixpkgs/pkgs/tools/rust-applications/workspace_members/exa/Cargo.toml
  workspace: /home/joerg/git/nixpkgs/pkgs/tools/rust-applications/Cargo.toml
  warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
  package:   /home/joerg/git/nixpkgs/pkgs/tools/rust-applications/workspace_members/hexyl/Cargo.toml
  workspace: /home/joerg/git/nixpkgs/pkgs/tools/rust-applications/Cargo.toml
  warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
  package:   /home/joerg/git/nixpkgs/pkgs/tools/rust-applications/workspace_members/miniserve/Cargo.toml
  workspace: /home/joerg/git/nixpkgs/pkgs/tools/rust-applications/Cargo.toml
      Updating crates.io index
  error: failed to select a version for `git2`.
      ... required by package `bat v0.13.0 (/home/joerg/git/nixpkgs/pkgs/tools/rust-applications/workspace_members/bat)`
  versions that meet the requirements `^0.13` are: 0.13.2, 0.13.1, 0.13.0

  the package `git2` links to the native library `git2`, but it conflicts with a previous package which links to `git2` as well:
  package `git2 v0.9.1`
      ... which is depended on by `exa v0.9.0 (/home/joerg/git/nixpkgs/pkgs/tools/rust-applications/workspace_members/exa)`

  failed to select a version for `git2` which could resolve this conflict
Error: "cargo" "generate-lockfile" "--manifest-path" "./Cargo.toml"
=> exited with: 101

Here is the full list of sources:
sources.nix.txt
sources.json.txt
{
  "sources": {
    "bat": {
      "type": "Nix",
      "import": "nix/sources.nix",
      "attr": "bat"
    },
    "exa": {
      "type": "Nix",
      "import": "nix/sources.nix",
      "attr": "exa"
    },
    "fd": {
      "type": "Nix",
      "import": "nix/sources.nix",
      "attr": "fd"
    },
    "hexyl": {
      "type": "Nix",
      "import": "nix/sources.nix",
      "attr": "hexyl"
    },
    "lsd": {
      "type": "Nix",
      "import": "nix/sources.nix",
      "attr": "lsd"
    },
    "miniserve": {
      "type": "Nix",
      "import": "nix/sources.nix",
      "attr": "miniserve"
    },
    "vivid": {
      "type": "Nix",
      "import": "nix/sources.nix",
      "attr": "vivid"
    }
  }
}

Do you think there is a way to work around these conflicts?

Hi @Mic92, Thank you so much for your experiments!
Conflicts
Aaah, to bad about the conflicts in the native libraries. Since crate2nix would libs independently again, I think that this would actually not lead to compile time errors. But the cargo error blocks this.
I see two ways forward:

Merge the various Cargo.lock files.
1a. Require a Cargo.lock file to already exist in the source. Makes the code easier but makes it much more likely that we have the same dependency with different minor versions in different Cargo.lock files.
1b. Generate new Cargo.lock files for each source from the same index state. On cargo update call per source.
Resolve the dependencies independently in crate2nix. For crates in the standard index this is fairly easy (see below). We would need to prefetch dependencies from git. BTW, it would be nice if nix-prefetch-git had the store path as part of the JSON output.

I'll give it a go and report back. It would basically mean that the Cargo.toml/Cargo.lock would go away. At the same time, I hated having them as a "clutch" and liked having them because you still could use Cargo to build.
Resolving deps without Cargo
I am fairly confident that I could write the resolver in rust. It is actually quite easy to read the index and so on. Similar to a vendored index, this resolving could even happen in a derivation (well, not in nixpkgs because of the import-from-derivation not-wanted issue) I implemented the version matching in nix today/yesterday, because, ...ehem... an invisible force made me. ;)
https://github.com/kolloch/nix-cargo-index
It is not terribly fast, though, but fun to play with! The most complex piece is the semver parser. I wonder if someone already wrote one...
In rust code, I could just use the existing crate to do that..
niv
I basically included the "Nix" source type also as an escape hatch to do crazy stuff but mostly for niv. It definitely makes sense for github sources.
Ergonomically, I could even make using niv sources easier by including an option to make "--import ./nix/sources.nix" the default for "source add nix". In that case you'd only have to write source add nix ..your name in the sources....

Hi @Mic92, Thank you so much for your experiments!

I see two ways forward:
1. Merge the various Cargo.lock files.
   1a. Require a Cargo.lock file to already exist in the source. Makes the code easier but makes it much more likely that we have the same dependency with different minor versions in different Cargo.lock files.

We require so far Cargo.lock for most applications, when using buildRustPackage, so its not a regression.

   1b. Generate new Cargo.lock files for each source from the same index state. On cargo update call per source.

This has the advantage though that we build the same version that upstream tests.

2. Resolve the dependencies independently in crate2nix. For crates in the standard index this is fairly easy (see below). We would need to prefetch dependencies from git. BTW, it would be nice if nix-prefetch-git had the store path as part of the JSON output.

Should be straightforward to fix. Otherwise does nix-prefetch work for you?

I'll give it a go and report back. It would basically mean that the Cargo.toml/Cargo.lock would go away. At the same time, I hated having them as a "clutch" and liked having them because you still could use Cargo to build.
Resolving deps without Cargo
I am fairly confident that I could write the resolver in rust. It is actually quite easy to read the index and so on. Similar to a vendored index, this resolving could even happen in a derivation (well, not in nixpkgs because of the import-from-derivation not-wanted issue) I implemented the version matching in nix today/yesterday, because, ...ehem... an invisible force made me. ;)

Would this produce the same results as cargo's dependencies tree.

kolloch/nix-cargo-index
It is not terribly fast, though, but fun to play with! The most complex piece is the semver parser. I wonder if someone already wrote one...

Do you think it could run into performance problems if we have more packages?
i.e. 100-1000?
I think this is what most projects where using: https://github.com/steveklabnik/semver

niv
I basically included the "Nix" source type also as an escape hatch to do crazy stuff but mostly for niv. It definitely makes sense for github sources.
Ergonomically, I could even make using niv sources easier by including an option to make "--import ./nix/sources.nix" the default for "source add nix". In that case you'd only have to write source add nix ..your name in the sources....

Yes that would be great! Right now we would redundant information.

https://github.com/NixOS/nixpkgs/pull/85511

store path support for nix-prefetch-git: NixOS/nixpkgs#85511

Thank you :)

Cargo.lock vs other dependency resolution: I think you lean towards going with the Cargo.lock files from upstream for now.  And I agree.
Advantage: Same versions as upstream, probably working better. Disadvantage: More minor version differences.
I agree. Overall, reliability is more important than squashing build time. I'll try to make this work.
If we get into trouble with scaling to a lot of packages, the workaround is simple: Use multiple workspaces. That said, I could imagine that it scales quite well. Not sure about nix reading that much data though. I already thought about splitting it into multiple files...

The nix-prefetch-git is merged now.

Here is the full list of sources:
sources.nix.txt
sources.json.txt

Interesting enough, I get a niv error if I use those...
❯ niv show
miniserve
  homepage: <barabajagal>
  url: https://github.com/svenstaro/miniserve/archive/4934905d87c1d9fb1d6deaa3adf7908450da4410.tar.gz
  owner: svenstaro
  branch: master
  url_template: https://github.com/<owner>/<repo>/archive/<rev>.tar.gz
  repo: miniserve
  type: tarball
  sha256: 1a7hqpr71ffsxaj1cvbf479cxqzif2byif1j6lq2km2zszwp3sra
  description: :star2: For when you really just want to serve some files over HTTP right now!
  rev: 4934905d87c1d9fb1d6deaa3adf7908450da4410
exa
  homepage: https://the.exa.website/
  url: https://github.com/ogham/exa/archive/78ba0b8973cbfbb48b85b8beae6f7de412064d11.tar.gz
  owner: ogham
  branch: master
  url_template: https://github.com/<owner>/<repo>/archive/<rev>.tar.gz
  repo: exa
  type: tarball
  sha256: 02mppg3bca6fxizvwga4nvpq8yhwpgbf29szgz8qaf84hqphzm58
  description: A modern version of niv: <stdout>: commitBuffer: invalid argument (invalid character)

The "workspace-less" out-of-tree sources support is ready for testing.
Unfortunately, some of the crates that you wanted to test, fail to build. It is not impossible that I introduced an error with my changes. It is also possible that they fail to build individually.

I can try some other ones.

Some where about needing the nightly compiler, some were about missing native dependencies (solvable with overrides hopefully).

I tried with coloursum, mdcat, ripgrep and tre. Works well so far.
In nixpkgs we could implement it like this:
rustPackages.nix:
{ newScope, workspaceMembers }: let
  callPackage = newScope workspaceMembers;
in {
  ripgrep = callPackage ./ripgrep {};
  tre = callPackage ./tre {};
}

ripgrep
{ ripgrep }:
ripgrep.overrideAttrs (old: {
  preFixup = ''
    (cd target/release/build/ripgrep-*/out
    installManPage rg.1
    installShellCompletion rg.{bash,fish})
    installShellCompletion --zsh "$src/complete/_rg"
  '';
  meta = {
    # ...
  };
})

There is one thing that bugs me a bit however. To build rust packages we not have potentially 3 locations to touch:

Adding the source either with niv or your builtin fetcher support.
Adding crates overrides.
The entry in rustPackages to add metadata and further overrides

The other problem is that we currently have no way of specifying patches.
In an ideal world one could have a derivation file that were crate2nix would take source + patches from as well as the meta data:
{ ripgrep, fetchFromGitHub, fetchpatch }:
ripgrep.overrideAttrs (old: {
  src = fetchFromGitHub {
    owner = "BurntSushi";
    repo = pname;
    rev = version;
    sha256 = "1c0v51s05kbg9825n6mvpizhkkgz38wl7hp8f3vzbjfg4i8l8wb0";
  };
  patches = [(fetchpatch {})];
  preFixup = ''
    (cd target/release/build/ripgrep-*/out
    installManPage rg.1
    installShellCompletion rg.{bash,fish})
    installShellCompletion --zsh "$src/complete/_rg"
  '';
  meta = {
    # ...
  };
})

crate2nix would it could call it like that to get the source
(callPackage ./ripgrep {
  ripgrep = stdenv.mDerivation {
    name = "ripgrep";
  };
}).overrideDerivation (old: {
  phases = [ "unpackPhase" "patchPhase" "installPhase" ];
  installPhase = ''
    mkdir -p $out
    cp * $out
  '';
})

After building the source it could update the workspaceMember as before. Does this sound reasonable to you? This way we don't need special support for any fetcher logic + patch logic we have in nixpkgs.

I now you like having your builtin prefetcher to not having to manually calculating checksums. However we have already more advanced tools for that like https://github.com/ryantm/nixpkgs-update or https://github.com/Mic92/nix-update/

Hi @Mic92, I think that automatic updates would be awesome. Let's optimize the flow! I can't immediately see what requirements a package has to fulfill to be automatically updateable.
In the case of rust, the "auto-update" should be on the root package with its Cargo.lock. The other versions should still be whatever the Cargo.lock specifies. Correct?
E.g. with niv it would mean that we update the sources and the rerun crate2nix generate.
We could hook this into the update script mechanism. (I haven't dabbled with that before)
It would help me, if you could tell me what "interface" or "package format" crate2nix has to provide to make the packages auto-updateable. Maybe, the tools are already quite general, or we need to tune them a bit to work with this set up.
I can probably write the rust-specific glue if I know how it should look like.

@Mic92 also, did you see my email about a VC?

@kolloch do you still have time to work on this? If not we maybe should just describe the design we discussed and hope that someone else from the community can help on this.

There are crates without lock files, like serde_json, so it should be able to try without one.

Is there a best practice here for how to use this feature (i.e. crate2nix source) when upstream doesn't include a Cargo.lock?
crate2nix seems to insist on it being in the same directory as Cargo.toml, but with crate2nix source that directory is an immutable store path, so I can't put it there between running crate2nix source generate and crate2nix generate:
https://github.com/kolloch/crate2nix/blob/198de9f237cb97ad32e0da7fb914b8e8d9fd87b7/crate2nix/src/lib.rs#L228
Should I submit a PR to add a command-line flag to tell crate2nix generate where to look for the Cargo.lock?  Or is there some much simpler way to deal with this that I've just totally missed?  rg Cargo.lock sample_* didn't turn up any ideas.

authors: Mic92 amjoseph-nixpkgs andir kolloch maisiliymBridj


text:
Language Server - parsetree abstracts

( from https://kolmafia.us/threads/ash-language-server-features.26098/post-163993 )
A few appetizers while we wait for the rest:

The classes CompositeType, CompositeValue and AggregateValue should be made abstract.

The method CompositeType.getDataType( Object ) can be made abstract.

Rather than having Type.toString() and RecordType.toString() both be return this.name, just make Symbol.toString() { return this.name; } (this also incidentally adds the method to Variable and Function, which helps in the debugger)

This PR was automatically closed because we rebuilt the main branch on moving day. To reopen this PR:

Copy this branch
Hard reset this branch to main
Cherry pick your commits from your copy onto this branch
Hit "Reopen"!

repo: kolmafia/kolmafia


text:
Concurrent Modification Exception

I saw this while testing CalendarFrame.  I added to the test and didn't see it again.  This PR removes the code I added that made the problem go away.  I have run the tests locally on Windows and have had 100% pass once and two concurrent modification failures.
Maybe it will fail (again) on GitHub and someone (@Veracity0 ?) will have some ideas.
I do not think this should be committed but this is a way to both collaborate and access the environments GitHub uses.

@Veracity0 - most recent failure is a concurrent modification although this is still intermittent.

Closing because #1480 will address.


text:
[Feature]: Image Generation save in db

add a feature to make images generated save in database
changes rending mode to server side
optimize the image generation

@kom-senapati Please assign this issue to me

Ok solve them @priyanshuverma-dev

authors: kom-senapati priyanshuverma-dev

repo: kom-senapati/bot-verse


text:
Added delete button on chatbot card & backend query to remove it from db

Closes #229

Description
--- Added delete button on chatbot card & backend query to remove it from db
How Has This Been Tested?
--- Locally
Screenshots (if applicable)
https://github.com/user-attachments/assets/d8a4926a-83f2-4d8f-b9ad-e1744c300187

Type of Change

[ ] Bug fix
[x] New feature
[ ] Code style update
[ ] Breaking change
[ ] Documentation update

LGTM

authors: kom-senapati mehul-m-prajapati


text:
ユーザーが送信した内容を返信に表示

概要
Discordのスラッシュコマンドの仕様上、ユーザーがGeminiに対してなにを送信したのかわかりにくいため、これを改善したい。
このBOTには /chat には message:str 引数がありここにユーザーがGeminiに送信したメッセージがある。
しかし、Discord上で見ると「○○さんが/chatを使用しました」としか表示されず、Geminiになにを送信したのかぱっと見わからないという欠点がある。
一応、このメッセージの「/chat」の部分をクリックすることによってmessage:strの中身を見ることはできるが、この一手間が地味に面倒だ。
目的
この改善を実装することにより、ユーザーがGeminiに送信した内容をわかりやすくすることができる。
影響範囲
Geminiの返信内容に message:str を含める必要があるため、現在の実装方法ではどれがユーザーが送信した文で、どれがgeminiの回答なのかわかりにくい。
そのため、 bot.py の async def chat(ctx:discord.Interaction, message:str) を大幅に変更する必要がありそう。
必要に応じて新しくEmbedを作るクラスを作ってしまうのもありかも。変に複雑化して後々扱いにくくなりそうな気配がするが……。要検討である。
タスク

[x] Geminiの回答をどのように行うか検討
[ ] devブランチに実装
[ ] mainブランチにマージ

備考

Geminiの回答をEmbedにする。影響範囲が広がり、実装コストが高くなりそう。でもこっちのほうがみやすいと思う。

{
  "description": "(Geminiの回答)",
  "fields": [
    {
      "name": "プロンプト",
      "value": "( `message:str` の内容)"
    }
  ]
}

プロンプトの部分にユーザー名を入れてもいいかも。

普通のメッセージのまま回答する。実装コストはこっちの方が安いが、わかりにくいという欠点がある。

プロンプト： ( `message:str` の内容)
(Geminiの回答)

とりあえず、Embed案で実装してみる

{
  "description": "chat_data.get_response(message)",
  "fields": [
    {
      "name": "`ctx.user.mention`から",
      "value": "`message`"
    }
  ]
}

としたが、メンションがうまく機能しない。Discordの仕様上、fieldsのnameではメンションが効かない？

いっかいこういう感じに逆にしてみる
{
  "author": {
    "name": "ctx.user.name",
    "icon_url": "ctx.user.avatar_url"
  },
  "description": "message",
  "fields": [
    {
      "name": "Gemini-Proの回答",
      "value": "chat_data.get_response(message)"
    }
  ]
}

ctx.user に avatar_url が、ない……

ctx.user.avatar.url だった、凡ミス

いっかいこういう感じに逆にしてみる
{
  "author": {
    "name": "ctx.user.name",
    "icon_url": "ctx.user.avatar_url"
  },
  "description": "message",
  "fields": [
    {
      "name": "Gemini-Proの回答",
      "value": "chat_data.get_response(message)"
    }
  ]
}

こっちのほうがいいかも、さっきのより見やすい気がする

これ以上良い案が思い浮かばなかったのでこれで実装

repo: konoka-iori/gemini-discord-bot


text:
Pro le

I've got problem like this - after update HA to 0.118.5
2020-12-09 20:49:42 ERROR (MainThread) [pyit600] Timeout while connecting to gateway:
2020-12-09 20:49:42 ERROR (MainThread) [pyit600] Timeout while connecting to gateway:
2020-12-09 20:49:46 WARNING (MainThread) [homeassistant.config_entries] Config entry for airly not ready yet. Retrying in 5 seconds
2020-12-09 20:49:46 ERROR (MainThread) [custom_components.homeassistant_salus.climate] Authentication error: check if you have specified gateway's TOKEN co
rrectly.
2020-12-09 20:49:46 ERROR (MainThread) [homeassistant] Error doing job: Unclosed client session
2020-12-09 20:49:46 ERROR (MainThread) [homeassistant] Error doing job: Unclosed connector
2020-12-09 20:49:46 ERROR (MainThread) [custom_components.homeassistant_salus.binary_sensor] Authentication error: check if you have specified gateway's TO
KEN correctly.
2020-12-09 20:49:46 ERROR (MainThread) [homeassistant] Error doing job: Unclosed client session
2020-12-09 20:49:46 ERROR (MainThread) [homeassistant] Error doing job: Unclosed connector

Can you try https://github.com/jvitkauskas/homeassistant_salus ?

@jvitkauskas I have only replace a files?

Yes

authors: jvitkauskas marithpl


text:
Release binary for Windows

A binary GitHub release asset for Windows would make usage of igrep very easy. The target triple is x86_64-pc-windows-msvc
This will also allow us to install igrep through Scoop package manager, by creating a manifest (similar to Brew tap). I can make a PR for this.

I added zip compressed ig binary to latest release, hope it will suffice. If you are willing to contribute your PR is welcome!

repo: konradsz/igrep


text:
Some thing similar to java.lang.reflect.Proxy?

Class generation from a Java interface is not supported by Teavm as I presume (Generators in GWT). Would it be too hard to implement something similar to interface proxy mechanism offered by JVM?

I'm not sure if I understood you, but I'll try to guess. You mean you lack for code generation/reflection/metaprogramming support in TeaVM? Well, there is such support, but it's not documented. You are free to extend TeaVM compiler via plugins, and plugins can generate TeaVM IR. This is the way of how I do JAX-RS proxies, JSON serializer and so forth. I agree, it's not very convenient way, but there is nothing I can propose right now. I am developing metaprogramming support as a part of Flavour framework, and I am going to include it into the next major release of TeaVM. The metaprogramming module offers more convenient way of generating code: you pass the lambda to a special method (Emitter.emit, Emitter.returnValue, etc) and these lambdas don't execute, but their bytecode it copied to the generated method bytecode. Here are some examples: https://github.com/konsoletyper/teavm-flavour/blob/refactor/mp/src/test/java/org/teavm/flavour/mp/test/MetaprogrammingTest.java

Yes exactly. thanks.

authors: bertung konsoletyper

repo: konsoletyper/teavm


text:
Extra monitorExit() call

I think I have uncovered a bug.  Java code:
while (entry==null && errorContainer[0]==null){
                    synchronized(lock){
                        try {
                            _log("About to wait on lock");

                            lock.wait();
                        } catch (InterruptedException ex){

                        }
                    }
                }

                if (entry==null){
                    _log("Entry is null");

                    throw new IOException("Temp error"/*errorContainer[0].toString()*/);
                }

See actual source here:
https://github.com/shannah/cn1-teavmport-demos/blob/issue_93/DrSbaitso/src/main/java/com/codename1/impl/html5/HTML5Implementation.java#L2580
Roughly results in this Javascript:
$ba: {
            $bb: {
                $bc: {
                    try {
                        try {
                            jl_Object2_wait38(b);
                            if ($rt_suspending()) {
                                break $main;
                            }
                        } catch ($e) {
                            $je = $e.$javaException;
                            if ($je && $je instanceof jl_InterruptedException1977) {
                                e = $je;
                                break $bc;
                            } else {
                                throw $e;
                            }
                        }
                        break $bb;
                    } catch ($e) {
                        $je = $e.$javaException;
                        if ($je) {
                            d = $je;
                            break $ba;
                        } else {
                            throw $e;
                        }
                    }
                }
                try {
                    break $bb;
                } catch ($e) {
                    $je = $e.$javaException;
                    if ($je) {
                        d = $je;
                        break $ba;
                    } else {
                        throw $e;
                    }
                }
            }
            try {
                jl_Object2_monitorExit42(b);
                if ($this.entry1572 === null && c.data[0] === null) {
                    $ptr = 3;
                    continue $main;
                }
                if ($this.entry1572 === null) {
                    ccih_HTML5Implementation1011_access$1900904($this.this$01574, $rt_s(162));
                    $rt_throw(ji_IOException1148_$init191($rt_s(1020)));
                }
                ccih_HTML5Implementation1011_access$1900904($this.this$01574, $rt_s(1018));
                return $this.entry1572;
            } catch ($e) {
                $je = $e.$javaException;
                if ($je) {
                    d = $je;
                    break $ba;
                } else {
                    throw $e;
                }
            }
        }
        jl_Object2_monitorExit42(b);
        $rt_throw(d);

I get an IllegalMonitorStateException when that 2nd monitorExit() call is reached.
To reproduce this you can build the DrSbaitso project in the issue_93 branch:
https://github.com/shannah/cn1-teavmport-demos/tree/issue_93/DrSbaitso

Open in Chrome (make sure allow local file access or to load from localhost and not file:///) on a computer with a webcam.
Click "Take Photo"
Click "Allow" when it asks if it can use your web cam.
Click in the "video" screen.  Then click the "Use" button (to accept the photo).

When I do this, the exception is silently gobbled up, but it basically results in a deadlock.  If you place a break point where the exception occurs (e.g.
} catch ($e) {
                $je = $e.$javaException;

Then you can see it.

Perhaps, it is an old bug in decompiler or AST optimizer. The following line:
$rt_throw(ji_IOException1148_$init191($rt_s(1020)));

should not be inside try/catch block

I made fix for this issue. The generated code looks properly, but I can't test it with webcam right now. Please, test DrSbaitso with the latest version of TeaVM.

I tested it, and this issue appears to be fixed.  Thanks!

authors: konsoletyper shannah


text:
SSL certificate not generated?

The installation process work perfectly without errors
but when i try to execute a command
i receive the follow error

I suspect the problem is when it comes to generating the SSL certificate

ps: i don't have any "~/.kontena" directory

Certificate is generated to the provisioned Kontena Master server but not installed automatically to the cli. Next version of cli can install certificate automatically if cloud provider plugin passes certificate back to cli during provisioning.
See: https://github.com/kontena/kontena/pull/1337

How can I transfer the certificate from master to CLI manually?

This could work to install it manually:
$ openssl s_client -showcerts -connect <master_ip_address>:443 < /dev/null 2>/dev/null | openssl x509 -text -outform pem > ~/.kontena/certs/<master_ip_address>.pem

I think we can close this with #1337 and the various plugin enhancements that return the self-signed certificate.

authors: WoLfulus jakolehm jnummelin kke plathon

repo: kontena/kontena


text:
Stack deploy should respect service running status

Current behavior:

Every service of stack-a is running
Stop stack-a/service-a
Deploy stack-a
service-a is running

Expected behavior:

Every service of stack-a is running
Stop stack-a/service-a
Deploy stack-a
Every service other than service-a is running

The use case here is to do update deployments in a controlled way. We want to e.g. shut down the web server, then update every service and verify everything works 💯%, then after that start the (updated) web server.

IMO it's good that kontena stack deploy will start any stopped services, it ensures that the stack will be working/running after a deploy, even if you forgot that you had some services stopped.
I think the ideal workaround for these kind of "manual" stack deployments would be to use kontena stack upgrade --no-deploy followed by a manual kontena service deploy of any services that you would like to have running.
Unfortunately, this workaround doesn't work, because kontena stack upgrade --no-deploy will not actually update the services. Only kontena stack deploy will apply the changes from the stack revision  to the actual grid services on the master, allowing you to deploy the services, but that command/API will also deploy all the services. Filed #2311 to propose changing this.
Closing this issue in favor of the #2311 design proposal to allow the kontena stack upgrade --no-deploy + manual kontena service deploy workaround.

authors: SpComb panuhorsmalahti


text:
Fix "kool run compile" by improving kool docker to parse pre-image options

https://github.com/kool-dev/kool/issues/48

looking at this i see you fixed basically all problems we had with --env, -p, etc.
Now that we have this i somehow think we need a way to disable / skip default options from kool, like volume / workdir change... because the use might want and can change this behaviour.
Maybe an --skip-default-options. 🤔

looking at this i see you fixed basically all problems we had with --env, -p, etc.
Now that we have this i somehow think we need a way to disable / skip default options from kool, like volume / workdir change... because the use might want and can change this behaviour.
Maybe an --skip-default-options. 🤔

I hear you... but I guess on that case it is easier for anyone to actually use docker run instead, right... we should clarify that kool docker is really indented to be a helper by given default folder/rm best for context aware containers execution.

authors: dbpolito fabriciojs

repo: kool-dev/kool


text:
Code Review

Was the program available in UC Github on time?

Yes Indeed.
Is the program easy for you, as an outsider, to understand?
Yes it was easy enough to understand.
Does the program compile?
The program successfully compiles

three specific technical concepts that you learned from this code review
1.) JavaDoc - Not only does JavaDoc need to be included above methods that return something, but it also needs to be implemented above classes as well. Also, I think our team forgot to put in the "@author" tag in our JavaDoc so I will definitely make those changes to our project after the code review is finished.
2.) In the Service class, I was trying to call non-static methods from a static method to make their findByLocation() method compile. This is not allowed by Intellij! I had to mock the implied method response because I could not develop an effective workaround to retrieve a list of Profile objects that all contain a matching "location" attribute.
3.) A class implementing an interface MUST contain all of the methods residing in the aforementioned interface. Unless the class is marked as "abstract" no other methods can be included within the class body, unless they are overriding the existing methods in the interface. This may seem obvious on paper but it was a huge mess when I was trying to implement findByLocation() IProfileDAO and ProfileDAOStub.

I'm hesitant to recommend merging this branch, as there is new and incomplete functionality introduced, which increases technical debt.

authors: AdkersonJohn discospiff

repo: kootinja/Roommate-Matcher


text:
Documentation Needed

It's unclear exactly what this package does. A simple list of functions in the readme would suffice.

There is a mention in https://stackoverflow.com/a/64725261/682317 that kora has some sort of terminal emulator.

repo: korakot/kora


text:
Kosmosctl supports node addition and dynamic sensing capabilities

What would you like to be added:
kosmosctl currently only supports one-time joining of the cluster. It also needs to support one-time joining of the corresponding nodes in the cluster, and can support dynamic capacity expansion of subsequent nodes in the cluster.
Why is this needed:

/assign @yuleichun-striving

repo: kosmos-io/kosmos


text:
Documentation fails to build in crates that depend on interprocess without the tokio feature

Describe the bug
When you run cargo doc on a crate that depends on interprocess without the tokio feature it fails because the tokio feature is not enabled.
To Reproduce

Create an empty crate with this in the cargo.toml:

[dependencies]
interprocess = { version = "1.2.1" }

Run cargo doc

Expected behavior
The docs successfully build
Screenshots

Additional context
This was run on Windows 11.

This seems to be fixed on master. It just hasn't been released yet

2.0.0 has been released, closing.

authors: Demonthos ealmloff kotauskas

repo: kotauskas/interprocess


text:
insert 改成用 set 方式后 没有类型检查吗？

IsActive 是 bool 类型的。
但是也没有提示错误

这个是故意为之，to 函数也是这样的，你运行就知道了，这个地方的类型检查放到了运行时

在之前版本的 Kotlin 里面，类型推断还不是很完善，set 函数传入 null 时，比如 set(it.name, null)，it.name 会被推断为 Column<*>，没有办法匹配到这个函数签名上 fun <C : Any> set(column: Column<C>, value: C?)，所以只能给 set 函数增加一个无泛型的重载版本 fun set(column: Column<*>, value: Any?)
后来 Kotlin 1.4 改进了类型推断算法， 解决了这个问题，但是为了保持兼容，这个函数还是保留了下来

这个不完美呀

authors: vincentlauvlwj yuzd

repo: kotlin-orm/ktorm


text:
orderBy如何动态指定？

比如前端传字符串，根据这个来传什么字段用什么字段排序

参考 https://github.com/kotlin-orm/ktorm/issues/262


text:
Add german translations

Just hooking into your PR adding some german translations

superseded by https://github.com/ryangjchandler/filament-navigation/pull/35

repo: koupisbean/filament-navigation


text:
PoC script/bundeled server only responds to localhost

Hey I wanted to test this but I only het a shell if I run python3 poc.py --userip localhost --webport 8000 --lport 9001 and not if i run it with my internal IP python3 poc.py --userip 192.168.178.33 --webport 8000 --lport 9001 this isn't supposed to be that way, right?
the docker app sends a ldap request if i enter it with the IP only stops at the redirect.

nc does nothing here.

but if I do localhost nc does recieve the shell.

I wanted to test between machines in my own network but seems like it does not work? or does it not work on the same computer?

It should be fixed now, just tested it on my end and all works fine! Please can you update your local repo and confirm this? Thanks.

It should be fixed now, just tested it on my end and all works fine! Please can you update your local repo and confirm this? Thanks.

I'll test it now. should i rebuild the docker?

just tested it and didn't seem to work, I'll re-clone the repo maybe that'll work

Did you update your local git repo? You could just use git pull and it will get the new commit. I just tested it and so did someone else and it worked.

ah wrong git command, dumb of me. it works yes, thanks. I used fetch instead of pull my mistake

authors: KickingAnimal kozmer


text:
Add teardown for button

I'm integrating PayPal checkout in an ember app and am trying to avoid accumulating memory leaks. I have an ember component that calls paypal.Button.render(...). Rendering that component adds listeners, etc, but unrendering it does not clear them. Watching the performance tab in Chrome and toggling the button on and off shows a steady increase in memory use and listeners.
I was looking at the existing framework integrations (Angular, React), but I don't see any teardown implemented in those. Is the Button supposed to handle teardown itself in a single-page app? Are there public methods for teardown? I saw teardown functions in xcomponent, but I was unable to figure out how to use them.

Hi @TopsyCM! Thanks for the report. There's definitely teardown for all of the windows/events/etc. in xcomponent, that should be happening automatically whenever the iframe is removed or closed. We run 600+ tests over in the paypal-checkout repo in the same karma chrome window, and those tests automatically fail if the memory usage crosses a 350mb threshold during all of the renders and teardowns.
So, that said, I'm interested to know more about your case. If something is slipping through the cracks, I'd like to track it down -- in your case:

How is the button being destroyed? Is it just being removed from the DOM?
Do you have a test page where I can try this for myself?
Are there any specific listeners which you're seeing hanging around, so I can check they're being torn-down correctly?

Hello! Perhaps I am misinterpreting what I'm seeing in the inspector. I will run some more tests to confirm tomorrow. As for your questions:

The button is being removed from the DOM via a conditional in the template. The html element that is addressed by the paypal.Button.render call is being removed.
I'll see if I can set up a fiddle or twiddle or some kind of "iddle" that demonstrates this.
I have not identified any specific listeners yet, just watching things go up in the inspector and not come back down.

OK sounds good! I'll take a look too and see if anything shows up.

I have created a simple example here:
https://topsycm.github.io/paypal-demo/
I have added the paypal.Button.render command to a simple component. That component is then rendered or not based on a boolean value that can be toggled with the "toggle" button. What I've been doing is taking a heap snapshot in Chrome devtools on a fresh page load, then I toggle the button a few times, then I take another snapshot. I've also used the performance tab to record memory use while toggling the button and triggering GC.
Is this behaving like you expect?
I have duplicated the test (locally) using a couple of different components, and there is no increase in resource usage after toggling.

Hmm yeah, after toggling the button a few times and taking a few snapshots, I am seeing memory not being cleared up. Wonder why this isn't being caught by the memory checks in the tests in paypal-checkout.
Let me try to find some time to dig a little further into this, this week. Thanks again for the heads up.

@bluepnume Have you had any time to investigate this? It's not the kind of thing that is likely to cause problems for our users, but I would prefer to not leak memory.

Hey, sorry -- been tied up with a bunch of other things and haven't had a lot of time to drill down into this. I'll try to carve out some time -- in the mean time, if you find any evidence of any specific objects not being GC'd, I'd be glad to make specific fixes or accept any PRs. Thanks again for your time so far.

Alas, I am not rolling in free time myself right now. If I am overtaken by idleness, I'll take a closer look.

@bluepnume @TopsyCM are there any news regarding this topic?
is it a generic issue? or an specific case?

@namirsab Seemed to be pretty generic to me, though it's the kind of thing that would primarily affect single page apps. You can take a look at the example I posted above.

@TopsyCM thanks!
That's the issue, i'm working on a single page app... we'll see

authors: TopsyCM bluepnume namirsab

repo: krakenjs/xcomponent


text:
ISO 4217 - Representation of currencies

https://en.wikipedia.org/wiki/ISO_4217
https://salsa.debian.org/iso-codes-team/iso-codes/-/raw/main/data/iso_4217.json

Fixed in d73edb61f5c0b8e9867139401003d40c1ff0a228

repo: kraptor/isocodes


text:
README: Change the styling of setup instructions for better readability

Summary
Change the styling of setup instructions for better readability
Description

Use block code for commands instead of inline code. It's easier to read, copy, and paste the commands. GitHub also has the copy button for block commands.

Copy button:

Add instructions to import sample data from sample_posts.json file using mongoimport command.

Copy (cp .env.sample .env) instead of Rename (mv .env.sample .env) because git will track it as a change and you will see .env.sample file as a deleted git object. On the other hand, since we have already ignored .env* files, git won't track it and we keep the sample file untouched.

No tracked changes here:

Thank you @chinmaykunkikar for your very inputs on bettering the readme, it is much convenient now.
One thought, how about having inline comments and make it block of code ?
Meaning now, people have to individually copy every command every step , can we do something like club all together and replace the subheading points as comments ?
Presently
Description
command

How about
#description
command

And kindly rename README as docs in both PR title and commit helps in maintaining the project :)

We can do it, but I think adding a description in form of a comment will defeat the purpose of having the convenience of the copy button. It'll be a bad UX.

Let's say user presses the copy button on this code block, it will copy the entire contents of the block.
User will paste that whole list of commands to the terminal.
While executing, if one of the commands fail, the following commands will fail as well.
Also, even if all commands pass, the user will still have to hit the enter key for the last command in the code block. So there's no full automation here.
Additionally, the comments # comment will also get executed unnecessarily.
People will now resort to manually selecting text from those code blocks to avoid that. And that will become more tedious.

But it can be done if you want to.

And kindly rename README as docs in both PR title and commit

done

Yeah actually even I was thinking of the tradeoffs and the last pressing enter is a good point actually, yeah it would be better this way, I completely agree with you .

Can you kindly add documentation of how to change the commit message in a simple bullet steps, that would be really handy for the developers, and personally I feel it involves a little git learning cover, i.e changing a commet title which is already push we need to do hard pushes  if i am not wrong.
I believe we have 2 things here, editing the latest commit message and editing multiple commit messages,
If you could add it may be in a part of contributing.md that would be really helpful :)

It can mess up everyone's history who are working on this project and want to merge the latest commits from the upstream.
Thank you for enlightening me, yeah this is a crucial point, i nearly missed.

@chinmaykunkikar  quick question, suppose now if contributors forget to follow the naming conventions in the commits, lets say 2 commits out of 5 which is placed in the middle, what can be a fix for such scenario ?

authors: chinmaykunkikar krishnaacharyaa

repo: krishnaacharyaa/wanderlust


text:
Adding Installation instruction into PecanPy documentation Website

Hello,
I wanted to note that having the installation instructions both on Github and on the PecanPy documentation website (https://pecanpy.readthedocs.io/en/latest/pecanpy.html)  would be useful.
Thank you,
Sakaiza

Hi @SakaizaRajery thank you for your suggestion! I will add the installation instruction to the documentation page soon!

authors: RemyLau SakaizaRajery

repo: krishnanlab/PecanPy


text:
elementClick triggered only the second time

Hi,
I try to use your library but I have a problem with the eventClick, when the graph is loaded for the first time the event click is throw after two click, the first click on the graph do nothing, and only the second click can triggered the event. And that's only for the first click after the graph load.
I've made a post on stackoverflow if you need to take a look at the code : https://stackoverflow.com/questions/51358273/nvd3-for-angular-element-click-doesnt-trigger-the-first-time
Thanks.

I don't know why but this come from the ' useInteractiveGuideline', if I set this to false then the elementClick work only the second time


text:
Maintenance status?

Is this repo still maintained? There are lots of open pull requests that simply update important dependencies.

Sorry about this not being maintained for a long time. I've been extremely busy during the last year and have not had much time for open source work. New release is on it's way, and hopefully I'll manage to be more active in the near future.

authors: fgblomqvist kristerkari


text:
Option to load default org-files

Does this feature exist in Emacs orgmode?
N/A
Hello,
I'd like to ask if it would be possible - or maybe it is, but I couldn't find - to preload a set of defined org-files so that a simple oa would list those entries without opening those files manually.
Thx

If you mean to browse all files that are set as agenda files, you can do that simply with FZF for example:
:FZF ~/my/org/path

Not exactly.
I mean if I open vim for example without opening any files "oa", "a" shows an empty list. I need to open the according org-files (":e ") in order to see the details.
Again, if you don't like the idea, just close this issue and I'm going to implement it my end.
Thx.

If you did the setup properly, files should be loaded.
What plugin manager do you use, and how do you setup orgmode?

Packer like this:
use("kristijanhusak/orgmode.nvim")
orgmode is setup like this:
require("orgmode").setup({
	org_agenda_files = "~/orggmode/*",
	org_default_notes_file = "~/orgmode/default.org",
	org_todo_keywords = { "TODO", "BIRTHDAY", "|", "DONE" },
	org_archive_location = "~/orggmode/.archive.org",
	org_agenda_templates = {
		d = {
			description = "default (todo)",
			template = "* TODO %?\n %t",
			target = "~/orgmode/default.org",
		},
		b = {
			description = "Birthday",
			template = "* BIRTHDAY %?\n <%<%Y-%m-%d .+1y>>",
			target = "~/orgmode/birthday.org",
		},
		w = {
			description = "Work (todo)",
			template = "* TODO %?\n %t",
			target = "~/orgmode/work.org",
		},
	},
})

I'd like to have the 3 files: work.org, birthday.org and default.org always be preloaded. But they aren't.

Seems like you have typo in org_agenda_files. It should be ~/orgmode/*, not ~/orggmode/* (double g).

Oh, I feel so bad!
Thx and closed.

authors: kristijanhusak rgnkn


text:
python3 support

This is based on #90 but accounts for more recent changes

There are some code lines need to be fixed, like the print statement.  If you just use print as a function, then the code does not support python2.
One solution is put from __future__ import print_function at the beginning of the file where we use print as a function.
the other changed parts also must consider the compatibility of python 2 and 3.

@xiaopeng163 it's not true. Both python 2.7.15 and sytem python 2.7.10 will print a line with letters Hello world for an one-line program below
print("Hello world")

@eirnym  yes, but if we want to say python 2 support,  we may not only support python 2,7 +

(you have no lines with syntax should be changed, so 2.6 could be used as a minimum requirement)
There's a few points to notice:

You use a very deprecated and discoraged syntax in one place to throw an exception (just add brackets)
Most print usages are print() already, except of 6 which easy to convert. Future print_function support is starting with Python 2.6
you have a calls to raw_input and check if object is a unicode on the second (this easily covered by six or manually)

BTW, I don't know which python less than 2.6 you really want to support in 2018 as I don't know a system where you are not able to run at least Python 2.6.
With print() in worst case will end up with messages in brackets, like (printed message), with upgrading this line with deprecated syntax will break compatibility with python 2.3 or even less. Finally, patching will not break anything.  I don't believe that this script would run on Python 2.2 or less due to dependencies you use.

authors: akerl eirnym xiaopeng163

repo: kristovatlas/osx-config-check