WIP to port lisp-parser.dart

A few months ago, I wanted to learn Kotlin and thought it'd be a good exercise to port the Lisp parser in dart-petitparser over to Kotlin.
But I don't really know Kotlin and the use of the by operator felt quite mysterious to me. I think I spent 2 evenings on this, and what I ended with doesn't compile.
In terms of API, I remember thinking that java-petitparser's API seems a lot more similar than kotlin-petitparser. Since I'm targeting the JVM, I wondered what the difference is using java-petitparser in kotlin vs. using kotlin-petitparser.
I was reminded of this little experiment and wanted to get it moving forward, so I'm opening a draft PR to see if I could get some help or tips to getting this port completed.
Thanks!

I made some changes to your branch that fixes the syntax errors. I haven't tested the changes though.
The API tries to adopt Kotlin practices. If you wanted the Java API you could use the Java library. IMHO, the biggest problem with the Java API is that sequences and choices are essentially untyped, however this makes porting dynamic grammars like the lisp one quite tricky.
The use of the delegates (by-operator) was me trying to make the definition of grammars more lightweight. Though Kotlin also seem to have its limitations there: it is very easy to confuse the type system and/or crash the compiler. I am open for suggestions of how this could be improved?

I made some changes to your branch that fixes the syntax errors. I haven't tested the changes though.

@renggli Thanks for pushing the changes! Now that it finally compiles, I'm gonna spend some time to work on making it do the right thing. I hope it won't take me too long to complete this PR.
Thanks again!

Hello @renggli
I've been using a copy of this parser in my project, but I ran into an issue.
Using something like this in a test causes it to loop forever:
    read("""
      (foo 1) ; comment
      (foo 2)
    """.trimIndent()

I looked through the examples in Dart and Kotlin and my understanding is that the existing parser is line-based, so it doesn't support reading multi-line content, am I wrong in saying that?
I changed start to accept more than one atom by doing this:
~val start by atom.end()~
val start by atom.star().end()
Is that a correct step to take?

Hmm, looks to me like the Dart parser also reads multiple atoms at once?

@renggli You're right about the multiple atoms. That was a change I made locally by mistake.
I'm still trying to get comments to parse correctly. I think it's because I don't understand how star() works - how I have it in my grammar right now, it's causing parse to get stuck.
I've written this smaller example as a test:
class TestGrammar : Grammar() {

  val comment by seq(char(';'), newline().not()).star()

  private val symbolToken by seq(
    pattern("a-zA-Z!#$%&*/:<=>?@\\^_|~+-"),
    pattern("a-zA-Z0-9!#$%&*/:<=>?@\\^_|~+-").star(),
  )
  val symbol by symbolToken.flatten().map { s ->
    when (s) {
      "#t", "#true" -> true
      "#f", "#false" -> false
      "#!null" -> null
      else -> s
    }
  }
}

Here are my tests:
object Example {
  val g = TestGrammar()

  @Test
  fun symbol() {
    assertEquals("foo", g.symbol.parse("foo").value)
    assertEquals(true, g.symbol.parse("#t").value)
  }

  @Test
  fun comment() {
    assert(g.comment.parse("; foo") is Output.Success)
  }

}

I noticed with my comment test above:

// Dart
// Parser comment() => char(';') & Token.newlineParser().neg().star();

// 1 - passes
val comment by seq(char(';'), newline().not()).star()

// 2 - hangs
val comment by seq(char(';'), newline().not().star())

But isn't 2 the direct translation of the original Dart code?

Similarly, I'm also trying to add #| nested comments |# to my grammar, but the application of star() is also wonky:
val nestedComment = seq(string("#|"), string("|#").not().star(), string("|#"))

Note that the not() parser is not consuming any input, that's why it hangs in Kotlin. The neg() parser consumes and returns the character that could not be parsed. It unfortunately was missing, but can be trivially implemented as:
fun <R> Parser<R>.neg(message: String = "input not expected") =
  any().skip(not(message))

I've added it in 08fc311a49d47c2a7015fe24a92019cc05efec9c.

@renggli Oh! I looked into the definition of neg and not earlier! I should have compared it with the Dart implementation, and I'd have seen what's missing.
This is great, my tests finally pass. Do you think you could do a 0.0.2 release? For now, I've just copied the neg definition into my own Grammar.

I released 1.1.0.


Vickel: Watch trusted-fast-btc.top

Vickel requests the watch of the watch_keyword trusted-fast-btc\.top. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

trusted-fast-btc\.top has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Makyen in Charcoal HQ


Fix Delayed Transactions for p2p

#1022
DAWN-398
Fixed processing so delayed transactions make it into the pending block and are processed on receiving nodes.

probably should merge this after #1911 to handle the conflicts that will result in this change.

Merged in changes for #1911.


Add Built-in support for secondary endpoint for GRS storage accounts

Storage Explorer Version: 1.3
Platform/OS Version: Windows 10 version 1803
Architecture: ia32
Regression From: Not a regression
Steps to Reproduce:
N/A
Expected Experience:
Provide built-in support for access a storage account's secondary endpoint.  The secondary endpoint should be accessible after connecting to the primary.  The storage account key is the same the only difference is the string '-secondary' gets appended to the storage account name in the storage endpoint URL.
Actual Experience:
You can connect to the secondary endpoint but it requires a second connection and you have to manually fix up the connection string to point to the secondary endpoint.

Make it a P1 per Kris Fritz's request.

When can we expect a solution on this issue? Any other workaround?


Run through the test suite

Test suite
Summary
There are quite a few tests within the Dictu repository, but it would be great if we could run through them and add as many tests as possible to cover any edge cases that are missing. May be worth looking into some sort of fuzzer here as well.
If any issues are found it would be great if they could be raised individually here as issues!

Hi, I can contribute in this issue.

Perfect, thank you!


gmap

BEFORE YOU CLICK CREATE ISSUE:

Please first build consensus within the appropriate SIG or in github.com/kubernetes/kubernetes/issues
that the problem you are trying to solve is worth solving at this time.
Put a 2-3 sentence description of your feature under the Description heading below.
Delete from the top of this text down to the Description heading.
Read the text below.

Thanks for wanting to add a feature to Kubernetes!  You will be responsible for guiding
your feature through completion, and asking the right people for approvals.
Large features typically go through three stages: Alpha, Beta, and Stable
Each stage requires various approvals from various teams.  Features require several releases
to reach Stable.
** Delete from here to top of input box before creating issue so that issue creation emails will be informative.**
Description
Add description here
Progress Tracker

[ ] Alpha

[ ] Write and maintain draft quality doc

[ ] During development keep a doc up-to-date about the desired experience of the feature and how someone can try the feature in its current state. Think of it as the README of your new feature and a skeleton for the docs to be written before the Kubernetes release. Paste link to Google Doc: DOC-LINK

[ ] Design Approval

[ ] Design Proposal.  This goes under design-proposals.  Doing a proposal as a PR allows line-by-line commenting from community, and creates the basis for later design documentation.  Paste link to merged design proposal here: PROPOSAL-NUMBER
[ ] Decide which repo this feature's code will be checked into. Not everything needs to land in the core kubernetes repo. REPO-NAME
[ ] Initial API review (if API).  Maybe same PR as design doc. PR-NUMBER

Any code that changes an API (/pkg/apis/...)
cc @kubernetes/api

[ ] Identify shepherd (your SIG lead and/or<EMAIL_ADDRESS>will be able to help you). My Shepherd is<EMAIL_ADDRESS>(and/or GH Handle)

A shepherd is an individual who will help acquaint you with the process of getting your feature into the repo, identify reviewers and provide feedback on the feature. They are not (necessarily) the code reviewer of the feature, or tech lead for the area.
The shepherd is not responsible for showing up to Kubernetes-PM meetings and/or communicating if the feature is on-track to make the release goals. That is still your responsibility.

[ ] Identify secondary/backup contact point. My Secondary Contact Point is<EMAIL_ADDRESS>(and/or GH Handle)

[ ] Write (code + tests + docs) then get them merged.  ALL-PR-NUMBERS

[ ] Code needs to be disabled by default.   Verified by code OWNERS
[ ] Minimal testing
[ ] Minimal docs

cc @kubernetes/docs on docs PR
cc @kubernetes/feature-reviewers on this issue to get approval before checking this off
New apis: Glossary Section Item in the docs repo: kubernetes/kubernetes.github.io

[ ] Update release notes

[ ] Beta

[ ] Testing is sufficient for beta
[ ] User docs with tutorials
- Updated walkthrough / tutorial in the docs repo: kubernetes/kubernetes.github.io
- cc @kubernetes/docs on docs PR
- cc @kubernetes/feature-reviewers on this issue to get approval before checking this off
[ ] Thorough API review

cc @kubernetes/api

[ ] Stable

[ ] docs/proposals/foo.md moved to docs/design/foo.md
- cc @kubernetes/feature-reviewers on this issue to get approval before checking this off
[ ] Soak, load testing
[ ] detailed user docs and examples

cc @kubernetes/docs
cc @kubernetes/feature-reviewers on this issue to get approval before checking this off

FEATURE_STATUS is used for feature tracking and to be updated by @kubernetes/feature-reviewers.
FEATURE_STATUS: IN_DEVELOPMENT
More advice:
Design

Once you get LGTM from a @kubernetes/feature-reviewers member, you can check this checkbox, and the reviewer will apply the "design-complete" label.

Coding

Use as many PRs as you need.  Write tests in the same or different PRs, as is convenient for you.
As each PR is merged, add a comment to this issue referencing the PRs.  Code goes in the http://github.com/kubernetes/kubernetes repository,
and sometimes http://github.com/kubernetes/contrib, or other repos.
When you are done with the code, apply the "code-complete" label.
When the feature has user docs, please add a comment mentioning @kubernetes/feature-reviewers and they will
check that the code matches the proposed feature and design, and that everything is done, and that there is adequate
testing.  They won't do detailed code review: that already happened when your PRs were reviewed.
When that is done, you can check this box and the reviewer will apply the "code-complete" label.

Docs

[ ] Write user docs and get them merged in.
User docs go into http://github.com/kubernetes/kubernetes.github.io.
When the feature has user docs, please add a comment mentioning @kubernetes/docs.
When you get LGTM, you can check this checkbox, and the reviewer will apply the "docs-complete" label.

No idea what happened. Sorry!

Ah, I was gonna search for "configmap", but didn't have focus in the search bar, and pressing c is shorthand for create issue. THen I pressed enter, and submitted...

@SimenB would you like this issue to be reopened as it has been closed eventually?

Nope, I didn't mean to open an issue


Test

Please fill out the following before requesting review on this PR
Description

Testing Done

Resolved Issues

Length Justification and Key Files to Review

Review Checklist

It is the reviewers responsibility to also make sure every item here has been covered

[ ] Function & Class comments: All function definitions and classes should have some sort of basic JavaDoc comments. use /// to generate XMLDocs for C# using IDE.
[ ] Remove all commented out code
[ ] Remove extra print statements: for example, those just used for testing
[ ] Resolve all TODO's: All TODO (or similar) statements should either be completed or associated with a github issue
[ ] Play Mode Runs

lgtm


popovers: Register mobile compose tooltip on button container.

This ensures that the click event on the mobile + button for showing the compose tooltip is registered on a different element from the tooltip for showing the C shortcut menu.
See CZO discussion.

With this fix applied, the button works as expected (I didn't bother to create a screenshot of the non-funcitonal button):

Self-review checklist

[x] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[x] Explains differences from previous plans (e.g., issue description).
[x] Highlights technical choices and bugs encountered.
[x] Calls out remaining decisions and concerns.
[x] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[x] Each commit is a coherent idea.
[x] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[x] Visual appearance of the changes.
[x] Responsiveness and internationalization.
[x] Strings and tooltips.
[x] End-to-end functionality of buttons, interactions and flows.
[x] Corner cases, error conditions, and easily imagined bugs.

Merged, thanks @karlstolley!


Incorrect scss file name generated

🐞 Bug report
Command (mark with an x)

- [x] new
- [ ] build
- [ ] serve
- [ ] test
- [ ] e2e
- [ ] generate
- [ ] add
- [ ] update
- [ ] lint
- [ ] xi18n
- [ ] run
- [ ] config
- [ ] help
- [ ] version
- [ ] doc

Is this a regression?

 Yes, the previous version in which this bug was not present was: ....
Has worked previously, but I don't know how long ago it regressed
Description
 A clear and concise description of the problem...

Added generated angular.json
angular.json.txt

I suspect that your global Angular CLI version is not the latest.
Can you install it and try again?
npm install @angular/cli@latest -g

As this should have been solved by https://github.com/angular/angular-cli/pull/13552

Updated with the above command, and still getting the error.

Hi, I looked into this and I was unable to reproduce the reported issue with the latest CLI.
npm install @angular/cli@latest -g
ng new foo
choose routing & sass
grep -r "styles" angular.json
            "styles": [
              "src/styles.scss"
            "styles": [
              "src/styles.scss"

Thanks for reporting this issue. However, you didn't provide sufficient information for us to understand and reproduce the problem. Please check out our submission guidelines to understand why we can't act on issues that are lacking important information.
If the problem persists, please file a new issue and ensure you provide all of the required information when filling out the issue template.


Update id: late fees explanation and late fee defense

id: late fees explanation - conditional language in question can be changed to ask if tenant has written lease first
Fix #318
Requesting review from at least @tobyfey to confirm defense defense_liquidated_damages_late_fees

In this PR, I have:

[X] Manually tested to ensure my PR is working
[X] Ensured issues that this PR closes will be automatically closed
[X] Requested review from Mia or Quinten + Toby
[X] Ensured automated tests are passing
[ ] Updated automated tests so they are now passing
[ ] There were no automated tests on this repo so I filled out this interview and there is now an "it runs" test

If we're going with two different logic blocks, the one without a written lease should be
  if late_fees_assessed:
    defense_liquidated_damages_late_fees = True

Because it there is no written lease, there is no lease provision allowing late fees to be charged.
In Ohio, late fees have to be in writing.  If there's no lease, the landlord can give something in writing saying that late fees will be charged.  So there could be a late_fee_lease_provision, even if there's no written lease.  If that's the case in Missouri, then maybe keeping the original question and changing the label to "You can answer no if you don't have a written lease and the landlord didn't give you anything in writing that said late fees would be charged."

@tobyfey I updated this based on your feedback here. Can you re-review and let me know if this now addresses your concerns?

Ok! @tobyfey can you prepare this question for LSEM for the 3/1 meeting?

@tobyfey I know we discussed this on Friday but I'm still not clear if it was answered--does this need to be an email to Terry to clarify?


Bug: Signature threshold should be 2 char

we should also limit signature threshold to two characters the same way we limit total signers, I suppose

We have an error message if this is higher than the signers, so no need for more at the moment


The sidekick chart Prometheus rules can't be installed as is, leading to an error and preventing the resource to be created.

/kind bug
/kind chart-release
/area falcosidekick-chart
Prometheus does not accept duplicate rule name.
The chart Prometheus rules can't be installed as is, leading to an error and preventing the resource to be created.

[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] CHANGELOG.md updated

Welcome @kwop! It looks like this is your first PR to falcosecurity/charts 🎉

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: kwop
Once this PR has been reviewed and has the lgtm label, please assign issif for approval. For more information see the Kubernetes Code Review Process.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Thanks for this fix, can you squash your commits please, I enabled the CI, all checks are ok.

Can you rebase on the master and fix the conflicts, please

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

604e0ef Fix PrometheusRule duplicate alert name

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: kwop
Once this PR has been reviewed and has the lgtm label, please assign cpanato for approval. For more information see the Kubernetes Code Review Process.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: ba890ffd1dab5f0c99c44f5b5eb021db3e9cf6bd

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Issif, kwop
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Issif]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


remove get all dependency at the beginning

closed: https://github.com/AdoptOpenJDK/TKG/issues/63
Signed-off-by: OscarQQ<EMAIL_ADDRESS>

Grinder_TKG/1007/   x86-64_linux target: all
Grinder_TKG/1008/   x86-64_windows target: all

This PR cannot be delivered until openj9jtregtimeouthandler.jar is updated. Please see https://github.com/AdoptOpenJDK/TKG/issues/63#issuecomment-645437494

Could we also test this locally? Or test in Grinder by removing getDependencies code from Jenkins script? Thanks

yes, the link above uses my own openjdk at feature7 to exclude the jar https://github.com/OscarQQ/openjdk-tests/commit/a94b2b6974aaa413cc627e25b3515a9cc101f404, they will mimic the local test environment

ah, I was looking at a wrong Grinder. Thanks @OscarQQ


Add support for customizing API Base URL using environment variables

Key Changes:

Configuration Option: Added a new configuration option in the environment variables to specify a custom API base URL. This option is optional and defaults to OpenAI API base URL if not set.
Documentation Update: Updated the project's documentation to guide users on how to utilize this new feature.
If the --baseURL parameter is not set in test_connection, the base URL set in the environment variable will be used first.

LGTM! Merge to main.


(Compatibility) Origins scaling persistence upon relog

CPM 0.6.19a
Minecraft 1.20.1
Fabric 0.16.0

Exported model playing in single player world, scaling enabled on model both in editor and on player by command.
No specific scaling setting values have been changed in the editor.
Upon relogging the hitbox and camera height reset to vanilla values, although the model visual is still custom scaled.
Occasionally but not always, player death can reset camera and hitbox to the custom values, which will then be broken again on next relog.
Tested on both "Origins: Player Scale" and "Origins: Improved Inchling" mods independently, both reproduce the behaviour
Removing CPM removes this issue.

Also having this issue
CPM 0.6.19a
Forge 1.20.1 47.3.0

Having the same issue. Occurred with entity size.
CPM 0.6.17a
Forge 1.19.2 43.3.5


Docker support for Apple silicon

Is your feature request related to a problem? Please describe.
Thank you for putting this together. It helped me a lot to learn the big picture of LLMs.
I tried to build and run it on an Apple silicon and I ran into some issues.

Describe the solution you'd like

I managed to fix it using the Ubuntu 22.04 docker image instead of the earlier and newer ones. Here is the Dockerfile that worked for me for an Ubuntu container on aamd64 architecture.
FROM ubuntu:22.04
#sha256:e6173d4dc55e76b87c4af8db8821b1feae4146dd47341e4d431118c7dd060a74

RUN apt update

RUN apt install -y cmake golang-1.21-go protobuf-compiler-grpc protobuf-compiler libgrpc++-dev wget curl patch git

RUN git clone https://github.com/go-skynet/LocalAI.git /opt/localai

WORKDIR /opt/localai

ENV BUILD_GRPC_FOR_BACKEND_LLAMA=true
ENV PATH=$PATH:/usr/lib/go-1.21/bin

RUN make build

RUN wget https://gpt4all.io/models/ggml-gpt4all-j.bin -O models/ggml-gpt4all-j

RUN cp -rf prompt-templates/ggml-gpt4all-j.tmpl models/

CMD echo ./local-ai --models-path=./models/ --debug=true

Describe alternatives you've considered

I was considering using brew, but I was concerned running gigabytes of new code from the internet that requires privileged access. I tried to run it in Docker to assess the performance - 10s per subsequent answers on Mac Studio. I need to do more work to assess whether it can leverage all the AI and GPU support of the silicon.
Additional context

I can open a pull request if you are interested.
Regards,
Miklos

I just tried to build (Mac Silicon - M2)  using your Dockerfile and it fails in step 6/8 on the following line:
`g++ -I. -I./ggml.cpp/include -I./ggml.cpp/include/ggml/ -I./ggml.cpp/examples/ -O3 -DNDEBUG -std=c++17 -fPIC -Wall -Wextra -Wpedantic -Wcast-qual -Wno-unused-function -Wno-multichar -pthread -march=native -mtune=native starcoder.cpp -o starcoder.o -c
155.3 In file included from starcoder.cpp:19:
155.3 ggml.cpp/examples/starcoder/main.cpp: In function 'bool starcoder_model_load(const string&, starcoder_model&, gpt_vocab&)':
155.3 ggml.cpp/examples/starcoder/main.cpp:148:34: warning: loop variable 'token' of type 'const string&' {aka 'const std::__cxx11::basic_string&'} binds to a temporary constructed from type 'const char* const' [-Wrange-loop-construct]
155.3   148 |         for (const std::string & token : {
155.3       |                                  ^~~~~
155.3 ggml.cpp/examples/starcoder/main.cpp:148:34: note: use non-reference type 'const string' {aka 'const std::__cxx11::basic_string'} to make the copy explicit or 'const char* const&' to prevent copying
155.3 In file included from starcoder.cpp:19:
155.3 ggml.cpp/examples/starcoder/main.cpp: In function 'int main_starcoder(int, char**)':
155.3 ggml.cpp/examples/starcoder/main.cpp:799:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare]
155.3   799 |     for (int i = 0; i < embd_inp.size(); i++) {
155.3       |                     ^~~~~~~~~~~~~~~
`
Is there a specific build of Docker you're using?

To be honest, I only need this to be an embedding server.  I'll be using LM Studio as my LLM server.
Would you have a recommendation on what the Dockerfile would look like to support this cut-down build?

I'd check if docker supports metal interface passing to containers.  I did a bit of searching, and from what I can tell, it does not.
I run an M2 mac, and have some LLM stuff running on here, but I haven't attempted to do it through Docker.  Without Metal, the inference is incredibly slow (it's running in CPU mode).  A standard build of the project (without using Docker) shouldn't be too bad from a dependencies standpoint, but interfaces with either llama.cpp or transformers will likely need some extra care.
When building for llama.cpp, you need to use make LLAMA_METAL=1 to get it to allow usage of the GPU.
I haven't run localai on my mac, but I have spent time working with text-gen-webui (which also supports embeddings) to get it working on my mac.  If you go that route, you can set a lot of the flags through pip, but before i go about writing those, let me know if you plan to go down that route and I can provide most of the relevant pip commands to get it working on the mac.

Thanks for coming back on this - In the end, I gave up on LocalAI. It was just too bulky (34GB) for the small area of functionality I need, and a little too temperamental to build.  I found an excellent Embeddings Server - small enough, and very fast.  Runs locally, in Docker if needed, and on many models:
https://github.com/huggingface/text-embeddings-inference

nods I understand.  Getting responses here can take awhile and glad you found something that works.  Embeddings is a fairly fast process, so even if you're stuck with using the CPU (vs metal), it may not matter as much for your purposes unless you scale out more (creating thousands of embeddings).  I'm still pretty confident that docker on the mac doesn't support metal passthrough.
That said, I was curious how hard it'd be to get to localai to build on the mac.  I figure I can use it anyways.  I had to install one extra package (grpc from homebrew), but the rest came out well. The footprint is 3Gb before models, and transformer models for embeddings are quite small.

I think you're correct that Docker doesn't support metal.  For my purposes (dev/test etc.) I needed to be able to fail fast.  CPU was good enough since it was going to be functional testing versus performance.
A 3Gb delta seems good for what you're getting with LocalAI.  Full LLM and Embedding support.
I found it very hard to build LocalAI, so I downloaded the official LocalAI containers.  However, even though I uploaded multiple Embedding Models into the right directories, found it difficult to get working.  On balance, the return on time investment just didn't make sense.
LM Studio is tiny and very very stable in terms of serving LLMs.  It also supports Metal.  It doesn't however serve embeddings, but this is now not an issue.

Having LocalAI on my macOS/arm64 with the metal framework in a container would simplify life greatly...

Docker engine doesn't run on macOS natively, but runs inside a linux/arm64 vm with virtualization in Apple Silicon (similar with linux/amd64 on intel)
If you want native metal acceleration, you'll need to run the native binary.

Docker engine doesn't run on macOS natively, but runs inside a linux/arm64 vm with virtualization in Apple Silicon (similar with linux/amd64 on intel)
If you want native metal acceleration, you'll need to run the native binary.

The problem with grinning LocalAI binary on macOS is its constantly misaligned libraries required by localai with the library available on mac, hope that part can be improved in localai. @jonmach

Docker engine doesn't run on macOS natively, but runs inside a linux/arm64 vm with virtualization in Apple Silicon (similar with linux/amd64 on intel)
If you want native metal acceleration, you'll need to run the native binary.

The problem with grinning LocalAI binary on macOS is its constantly misaligned libraries required by localai with the library available on mac, hope that part can be improved in localai. Taking into account that brew can update libraries. So practically I cannot run LocalAI on my mac either in the Docker and Binary doesn't work most of the time.
@jonmach

I'd consider just building from source.  I use LocalAI on my mac a fair amount, and I haven't had any issues after building.


Prepare submission for KubeCon EU 2024

Feature Description
https://events.linuxfoundation.org/kubecon-cloudnativecon-europe/
Dates to remember:
CFP Closes: Sunday, 26 November at 11:59pm Central European Time (UTC+1)
CFP Notifications: Monday, 22 January
Schedule Announcement: Wednesday, 24 January
Slide upload deadline to Sched.com: Wednesday, 13 March
Event Dates: 19-22 March, 2024
Proposed Solution
create a cfp or 2
Want to contribute?

[X] I would like to work on this issue.

Additional Context
No response

submission created
title: Simplifying Multi-Cloud AI/ML: A Technical Deep Dive into Multi-Cluster Streamlined Kubernetes Workf
abstract: Join us as we delve into the technical intricacies of constructing efficient multi-cloud Artificial Intelligence (AI) and Machine Learning (ML) workflows within Kubernetes. This session provides a detailed examination of integrating open source projects Open Data Hub, Codeflare SDK, KubeStellar, KubeFlow Pipelines (KFP), and Multi-Cluster Application Dispatcher (MCAD). Explore the user challenges, granular configuration details, and integration techniques essential for multi-cluster deployments in cloud, on-prem, and edge environments. Navigate the technical challenges involved in orchestrating data preprocessing and inferencing tasks across diverse cloud platforms. Gain insights into the nuanced implementation aspects, empowering practitioners to navigate and customize this multi-project stack effectively. Join us for a technical deep dive into building a robust, user-friendly, and scalable multi-cloud Kubernetes environment for AI/ML operations.


fix(chat): hide publication review dot if publication has non-existent resource (Issue #1847)

Description:
hide publication review dot if publication has non-existent resource
Issues:

#1847

Checklist:

[x] the pull request name complies with Conventional Commits
[x] the pull request name starts with fix(<scope>):, feat(<scope>):, feature(<scope>):, chore(<scope>):, hotfix(<scope>): or e2e(<scope>):. If contains breaking changes then the pull request name must start with fix(<scope>)!:, feat(<scope>)!:, feature(<scope>)!:, chore(<scope>)!:, hotfix(<scope>)!: or e2e(<scope>)!: where <scope> is name of affected project: chat, chat-e2e, overlay, shared, sandbox-overlay, etc.
[x] the pull request name ends with (Issue #<TICKET_ID>) (comma-separated list of issues)
[x] I confirm that do not share any confidential information like API keys or any other secrets and private URLs

/deploy-review

/deploy-review

/deploy-review

/deploy-review


Example Code Not running

Hey,
I tried running your example code, but the outputs I get are very different to what is shown on the example page. I've tried on two separate machines.
Running python 2.7 with:
numpy (1.11.0)
scipy (0.17.0)
scikit-learn (0.17.1)
I've uploaded the run notebook here

I can confirm the bug

I think it is related to this latest PR: https://github.com/pavanramkumar/pyglmnet/pull/123/. Also, we have an outstanding issue with random seeds which I just noticed has been closed. @pavanramkumar did we manage to fix that? It appears that we still have the seed problem.

Thanks @yves-weissenberger for reporting this issue! And thanks @jasmainak for first response.
To answer your question: yes, it is indeed related to PR #123 when modified the loss function to scale well with n_samples. As a results, the default learning_rate has increased. The API examples might not have been updated since then, but try using the default learning rates.
In your example, you set learning_rate=1e-5 which is very small for max_iter=1000. I tried using 2e-1, 1e-1, 1e-2 and get good results for all of them.
I know setting the learning rate correctly is kind of a pain and we're actively trying to avoid that in the future using Newton methods.
Hope this helps! Please let us know if you're stuck anywhere.

@jasmainak I think the random seed issue has been fixed with an input parameter called random_state.
At least, I tried re-running fit() and predict() for the same values of Xr, yr, Xt, yt and got the same results.
You can also check that if you change random_state to a different value while instantiating the GLM object, you will get a different result, but that's not because the problem is non-convex, it's only because we get different values of yr, and yt when we call the simulate() method.
Let me know if you have any trouble getting the same result for different runs.

it's only because we get different values of yr, and yt when we call the simulate() method.

should we also make this accept a random_state? I don't see any reason to have it as random. It will make debugging harder

@jasmainak It already does. simulate() draws poisson random variables using numpy.random.poisson to simulate spike counts. It sets the seed using self.random_state. If you change random_state you will get different yr, yt.

As a results, the default learning_rate has increased. The API examples might not have been updated since then, but try using the default learning rates.

@pavanramkumar should we update these examples then? It might be confusing for a beginner that the website examples don't work as expected.

Hi,
thanks for the quick responses, problem is fixed :).

As an end user, I think I would recommend changing the examples. I came across this package after having fit my GLMs with scipy, statsmodels and lucas theis cmt module. Even then I was confused, assumed it was some dependency problem.
As a side note, I'm happy to share performance benchmarks on my data, of different fitting methods, once its ready (soon...); if thats helpful?

@yves-weissenberger glad it's sorted out for now! and cool to hear about your journey to pyglmnet :)
yes, i'm working on updating the examples right away.
we're working on organizing the examples gallery into three categories:

API demos
benchmarks (i.e. time complexity and accuracy comparisons against R and scikit-learn)
applications (demos of the package being applied to real data)

working on all of those at present, but we absolutely welcome your suggestions and PRs.

ok, i've updated the example api pages to reflect the default learning rates. i will close this issue. thanks for reporting, it leads to epsilon improvements.


Create Answers Model and Migrations

Create a DB table for Answers following the table in the ERD which includes:

answer_id (PK)  (int)
user_id (FK) (int)
question_id (FK) (int)
content (text)
publish_date (date)
likes_count (int)
dislikes_count (int)
picture (?)
is_edited  (boolean)

about the picture column I am not sure which type it should be (URL/File/...), relevant to Questions table to. ( @danitLevi )
I would glad to hear your opinion on this @ifireball.

@idokk1 I would regard something like the picture column as a 2nd phase feature that I would postpone the implementation of.
As you rightly assume, there are various challenges in uploading and storing images. Think if you can initially do without this feature.

OK, thank you.
so for now we will remove the picture column from this table and from question table. (@danitLevi am I right?)
If we want to add columns to an existing table in the future will it be complicated?

If we want to add columns to an existing table in the future will it be complicated?

No. You'll just need to come up with a default value for the new column for exisiting data if you'll have any - and you're not likely to unless you'll actually launch the app in a production enviromnet ans start having actual users.


modify script to use mono/curl

Generally speaking, mono is more compatible (and available on more distributions, as it's not locked down to a specific libssl like how .NET Core is). I would recommend switching to it (the shell script does a simple find/replace with sed).
As well, maybe copy in the patched appmanifest?

Hi @hatf0, thanks for the pull request! I haven't used mono before but it's working well on your branch and improved compatibility is always a good thing.
I'm happy to merge this but please add a comment to the script and update the README to remove .NET Core as a dependency and add mono.
I've thought about updating this script to accept an appmanifest as an argument instead of hard coding the downloads. That would mean it's no longer Doom Eternal specific and would work for any Steam game. You would have to download the entire game rather than just the changed files but that also would prevent future game updates from breaking the script.
I think adding the patched appmanifest for Doom Eternal would be a good first step. I'll create an issue for that.

Ah, well, Mono is a "reimplementation" compatible with .NET, and isn't as locked down to a single distribution as .NET Core is (for some reason .NET Core is locked to OpenSSL 1.0 across all operating systems....)
It's typically found with every WINE install too, so it should be better for support.

Good to know, thanks!


Feature Request: geospatial column analysis

Missing functionality
As a newer user to ydata-profiling, I am leveraging the package with various types of data. One data type that I am using is geospatial data, I am currently using separate columns for Latitude and Longitude as float values. However the output of a bar chart and correlation may be useful in some cases, it may be more useful to provide the output in a form of a map so the coverage of different areas can data can be seen by the user.  Unless I missed something reading through the documentation, there isn't any current functionality for this.
I noticed in the contributing guidelines this was highlighted as a potential EDA: extending data type support (GPS coordinates).
Proposed feature
Plotting of points on a map within the variable exploration so you could consider the coverage areas of the data.
I am happy to help contribute on a topic like this, however there are a few different paths this could appear in so I wanted to know if there was a preference from the ydata team.
Data size

Based on the data size it may take to much time or compute to plot points using some packages. This could be averted by a few ways, one of my initial thoughts is to leverage data shader to make the plots.

Type of data

I think it might be easiest to handle a column as a type of shapely point. I think figuring out how to coordinate two separate columns will not be optimal with the current structure of ydata-profiling.
This could also be handled as a list of tuples to reduce dependencies

Alternatives considered

Ydata-profiling could leverage plotly express for graphing, however this package may struggle with plotting larger datasets.
Ydata-profiling could leverage Cartopy using matplotlib for graphing, I am unsure of the limitations on data size.

Additional context
No response

Hi @proselotis,
thank for you feature request! And enthusiasm - contributions are always welcomed!
I would be happy to have you contribution for the feature, nevertheless there are a few points that need further definition.

Latitude and Longitude can be provided in several formats by users, and we want to keep it as easy as possible. For that reason there is an interface decision to be made;
The report structure design and flow for datasets with geo-location data;
The library to be used for the plot - data shader depends on DASK, and for that reason we prefer to avoid it. We will assess Cartopy in more depth to validate the potential.

Let me get back to you with some more detailed requirements for this feature so we can iterate together!

Hi,
An alternative could be to extend ydata-profiling to support GeoPandas. GeoPandas uses Shapely internally and can handle Points, Multi-Points, Lines, Multi-Lines, Polygons, Multi-Polygons.
Profiling one dataset could give information about the type of geometry, coordinate system, etc… And eventually plot the shapes on a map.
Comparing two geographic datasets may be more challenging to represent the differences between the geometries.


feat: allow secondary search rerouting to another page

! important : need to merge #184 first because it is based on feat/colored-banner

parametrize a secondary search in homepage (useful for meteo.data.gouv.fr use case where they need a guided search)

LGTM. @Jorek57 je te laisse review les détails 🙏


Remove dangling console log

@sneridagh what about adding an eslint rule to check for console.log statements?

@tisto +1

https://eslint.org/docs/rules/no-console ?


None of these example is supposed to pass parsing.


Merge pull request #1 from vercel/master

update

I suggest to close this one. No delta in this PR, compared to master


swaybar doesn't handle new configuration at runtime.

If you edit the config and reload it while sway is running the bar doesn't update with the new bar configuration.

Related - you can't change your wallpaper at runtime.

If we store the pids of swaybar and swaybg somewhere then it would be easy to kill and restart them on reload. My idea would be to store them in an output container since each swaybg/swaybar process "belong" to a single output as far as I can tell. What do you think of this approach?

I like that approach.

Ok, cool, I will try to work on that tomorrow then.

Fixed in #358


Add Carthage (iOS/Cocoa) as supported package manager

Add support for the Carthage dependency manager to the analyzer module.
https://github.com/Carthage/Carthage

Here's some good reading on the Cartfile format.

Note that Carthage only supports transitive ("nested") dependencies if the dependency itself also uses Carthage.

More good reading on what iOS package manager to use when.

We at Bosch are looking at this.


Clarify IP detect

Description

https://jira.mesosphere.com/browse/DOCS-1538

https://github.com/mesosphere/dcos-docs-enterprise/pull/1259

Urgency

[ ] Blocker
[ ] High
[x] Medium

Requirements

Test all commands and procedures.
Build content locally and test for formatting/links.
Add redirects to dcos-website/redirect-files.
Change all affected versions (e.g. 1.7, 1.8, and 1.9).
See the contribution guidelines.

@sascala fixed


Recipient allowlist on smtpd

I'm using Mailpit as a simple single-user temporary e-mail server. While I understand it's not meant to be used like this, it actually works really great. The only downside, for my use case, is that it accepts every random message sent to port 25.
Would you accept a PR that adds an additional flag --smtp-allow-recipients that takes a regex and rejects/drops e-mails where the recipient doesn't match? Could be used with something like @(temp.example.com|foo.com)$.

I'm pretty sure this already exists.
From the docs: --smtp-allowed-recipients: Only allow SMTP recipients matching a regular expression. Use this to restrict incoming mail to only those sent to a pre-defined list. An example would be --smtp-allowed-recipients<EMAIL_ADDRESS>to only allow emails sent to recipients ending in @example.com.

D'oh. I managed to overlook an option that's named almost the same as what I proposed. That's what I was looking for, thanks.

All good ;-) There's a lot of options unfortunately, so sometimes easy to overlook stuff.


Legalize - Use Non-recursive Rewriter.

One of my pre-quantized model parsing was seeing segfault because of stack overflow. Switching to non-recursive mutation resolves the issue, and I can compile the model successfully. Thanks for this work!
@mbrookhart @tqchen

@mbrookhart can you help to review the PR

@LiangHao151941 I think you could benefit this in your pr https://github.com/apache/incubator-tvm/pull/4828

Thanks @FrozenGene @anijain2305 @mbrookhart @tmoreau89


assesment-2

Metric
Value

alert_status
:white_check_mark: OK

bugs
1

code_smells
21

reliability_rating
C (at least 1 Major Bug)Note: A being best, E being worst

security_rating
E (at least 1 Blocker Vulnerability)Note: A being best, E being worst

vulnerabilities
2


Using Reinforcement Learning in CrazyFlyt

Hi
I wanted to implement the quadx_hover_env of Pyflyt on real hardware using CrazyFlyt.
I was looking at this file:
https://github.com/jjshoots/CrazyFlyt/blob/master/examples/sim_n_fly_single.py
It seems like we cannot put the PyFlyt's action space (bodyrates x, y, z and thrust) here. Am I missing something?

Thanks

Yep, PyFlyt's action space doesn't translate 1-to-1 with CrazyFlyt, mainly because the Crazyflie library uses a different control scheme, where bodyrate control isn't implemented natively within the crazyflie-lib-python.
Instead, you will have to train the reinforcement learning algorithm within an environment that uses a high level of control, either mode 7 or mode 6 with a swapping of the last two values.
To change the flight mode within the environment, the relevant line of code is here.
I've been meaning to make this a configurable parameter for awhile now, but haven't gotten around to it yet - PRs are very welcome.
On CrazyFlyt's end, the control commands are documented here.

Oh great! Thanks. I am planning to use a motion capture system with Optitrack, because we need to feed an observation space to the RL. Any guidance would be appreciated!
Thanks

If you are comfortable with cloning and installing from source, then I would do that and modify hover env to use mode 6/7, train an agent in there, then adapt the agent to crazyflyt using a simple command remapping. Otherwise, I can update PyFlyt to allow custom flight modes in the quadx envs.

I was planning to change the env mode to train the agent using mode 6/7, save the model, and deploy that on crazyflie. What I am not sure is how to use that saved model (model.zip, for example) in real hardware flight?

What RL framework are you planning to train the agent with?

CrazyFlyt doesn't run code natively on the crazyflyt itself - it doesn't have enough compute capacity for many interesting applications. Instead, it streams the UAV state from the drone itself and then streams setpoints to the drone via the CrazyRadio PA. Therefore, any thing that you can run directly within simulation in CrazyFlyt should be transferrable to the actual UAV.

So this is how fly_single.py looks like:
    UAV.start()
    # send the drone to hover 0.5 meters
    UAV.set_setpoint(np.array([0.0, 0.0, 0.5, 0.0]))
    UAV.sleep(5
)

And this is how we do it in RL:
while not (dones or truncation):
 action, _states = model.predict(obs, deterministic=True)
 obs, rewards, dones, truncation, info = test_env.step(action)

My question is, how do we get this "obs" for RL to work? In fly_single.py, we just give commands to go to a certain position, I cannot see where and how we are getting the drone state information.  Just for information, I am using flowdeck for localisation.

You will be able to get the current UAV estimate through drone.position_estimate https://github.com/jjshoots/CrazyFlyt/blob/master/CrazyFlyt/drone_controller.py#L135

Note that the PyFlyt env contains much more detailed and un-noised information that what CrazyFlyt provides. If you want to use more precise information via optitrack, it'll likely have to be through the backend that the system provides.

Thanks a lot!. I will try to use drone.position_estimate with FlowDeck and see if it works. Because Flowdeck gives local coordinates, do I need to do anything else? (I know for a fact that if i am using Optitrack, I don't need to do anything more and just feed the observation to the RL)

That should theoretically be all you need, outside of maybe some level of filtering for the state. Let me know how it goes!

Just another quick question, in CrazyFlyt, the observation space is: [x, y, z, yaw]. In the given Pyflyt env, the obs space has a size of 17 (angular velocities, angular positions, linear velocity, linear position, previous action).
To deploy my RL, do I have to change the obs to [x, y, z, yaw] in PyFlyt as well? Or is there any other way?
Thanks for your help!

RL generally expects the observation space to not change. You'll probably need to change the obs to [x, y, z, yaw] unless you plan on modifying things on CrazyFlyt's end to have a more comprehensive observation space.

FYI, I've just updated PyFlyt to v0.17.0, which has a flight_mode argument for all the environments now. If you'd like, you should use that so you won't have to modify the source and can use PyFlyt natively with the transform observation wrapper from Gymnasium.


Support different fonts in UI

Requested by @TobiasEnholmX

The font_family already supports loading from url: https://github.com/AmbientRun/Ambient/blob/main/shared_crates/schema/src/schema/text.toml#L6
Might need to test how it works with the asset pipeline though


Issue #SB-284 fix: Lang Changes for deleting published content

@harishgilimi  Hi, Can you pls review this PR ? Thanks!


Help us avoid repeating help/prompt text :)

Allow us to use the same string for both [prompt] and [help] options.
Example, my current code:
@click.option('--project_name', '-n', help='the project name (it will be part of its path)', required=True, prompt='the project name (it will be part of its path)')
My preferred code would be to only put the help/prompt string once, something akin to:
@click.option('--project_name', '-n', required=True, prompthelp='the project name (it will be part of its path)') #a new option that would send the string to both prompt and help
or either of the below, just allow us to refer to the prompt/help string as needed
@click.option('--project_name', '-n', required=True, help='the project name (it will be part of its path)', prompt=help)
or
@click.option('--project_name', '-n', required=True, prompt='the project name (it will be part of its path)', help=prompt)

message = "..."

@click.option(... help=message, prompt=message

I thought of this workaround but it doesn't strike me as very click-like - we no longer have self-documenting code with "a place for everything and everything in its place". Instead, we have two places :-/

I did a bit more due diligence and found the show_default option mentioned in another issue.
The analogous fix would be to allow the help message to include the prompt:
show_prompt=True


Unions: ABI.

#872 introduced a WIP implementation of unions.  It included parsing and semantic analysis, and some ASM gen.  It did not implement ABI support, nor storage support.  The ASM gen is essentially untested and requires validation_tests.

#897 added ASM testing, but fudged the ABI.


Manage Stops Layout Issues

The Manage Stops view is experiencing a few issues on iOS and Android

The main view background should be white and expand to fill the screen
When moving or re-ordering stops, the stops can sometimes appear behind the top navigation bar until the user interacts with the view again

Done in dev

Verified in dev and cherry-picked into v5.6.1-hotfix. Ready to deploy


Last Week in Pony - April 23, 2023

Version 0.0.8 of redvers/pony-email has been released.
See the release notes for more details.

Version 0.0.10 of redvers/pony-email has been released.
See the release notes for more details.

Apologies for the "release spam".  I've been trying to get the automation working.  We probably don't want this in LWIP until both this and pony-smtp are released.

Version 0.0.11 of redvers/pony-email has been released.
See the release notes for more details.

Version 0.0.1 of redvers/pony-smtp has been released.
See the release notes for more details.

Version 0.0.2 of redvers/pony-smtp has been released.
See the release notes for more details.

Version 0.3.7 of ponylang/release-notes-bot-action has been released.
See the release notes for more details.

Version 0.0.3 of redvers/pony-smtp has been released.
See the release notes for more details.


Add documentation on how to create a release

@eikes I took the liberty to push a commit onto this PR which I also ninjad onto main :ninja:. At some point after updating the version we need to run bundle install and commit the modified Gemfile.lock. Otherwise the CI fails when bundling.

Nice 👍


Env's transaction field returning None during MsgExecuteContract

Overview
I'm currently working on a CosmWasm smart contract using the cosmwasm-std crate with version 1.1.9. I'm trying to utilize the Env struct to access the transaction index in the block during the contract's execution. According to the documentation, the transaction field is an Option<TransactionInfo> and should contain information on the transaction when the MsgExecuteContract, MsgInstantiateContract, or MsgMigrateContract is executed as part of a transaction.
Expected Behavior
When in the context of a MsgExecuteContract, I expect to have access to the TransactionInfo via the transaction field in the Env struct, and for that to contain a useful value, AKA provide a Some(x) response.
Actual Observation
In my contract's execute method, when trying to unwrap the transaction field, I'm encountering a panic due to the field containing a None value. This is unexpected since I am in the context of a MsgExecuteContract.
Additional Info
I first noticed this while testing cw-multi-test and assumed it was not yet available in that testing framework. To confirm this, I deployed the contracts on-chain to Juno's testnet and tried on a live (non-mock) environment. That's when I saw the error:

Error: rpc error: code = Unknown desc = rpc error: code = Unknown desc = failed to execute message; message index: 0: Error calling the VM: Error executing Wasm: Wasmer runtime error: RuntimeError: Aborted: panicked at 'called Option::unwrap() on a None value', contracts/croncat-tasks/src/contract.rs:463:19

Which chain are you running on? There was a bug which caused this field to be missing some time ago. It was fixed in wasmvm 1.1.0.

I first noticed this while testing cw-multi-test and assumed it was not yet available in that testing framework.

The field is set here: https://github.com/CosmWasm/cw-multi-test/blob/9af32fd42efcf28e9a79987f2c2036f879cd5331/src/wasm.rs#L832-L840. I'm suprised you encounter issues with cw-multi-test. Am I missing something?

The field is set here: https://github.com/CosmWasm/cw-multi-test/blob/9af32fd42efcf28e9a79987f2c2036f879cd5331/src/wasm.rs#L832-L840. I'm suprised you encounter issues with cw-multi-test. Am I missing something?

Thank you for that link, and perhaps I could have elaborated that with cw-multi-test the transaction index was always 0. I ran two execute txs in a row and expected the second one to have the index of 1 but looking at this code it might always be 0.
Checked on Juno mainnet and see a tx index of 2, so perhaps I confused myself and am mistaken. Looks like a false alarm, sorry.

with cw-multi-test the transaction index was always 0. I ran two execute txs in a row and expected the second one to have the index of 1 but looking at this code it might always be 0.

Oh, good point. Feel free to open a ticket in multi-test to make the mocking better


Fix excessive calls to DarkSky Api

Fixes #15

Sorry for a late response - this year came out swinging and never stopped lol. Thanks for your interest in contributing to the project.
I don’t see how this could fix any possible excessive API calls, as all it does is return early from socketNotificationReceived if that function recieves something other than a NETWORK_ERROR or a DATA_AVAILABLE.
The problem is, the node_helper.js file never sends any other notifications than the NETWORK_ERROR or DATA_AVAILABLE, so the default block that's been added here will never be executed.
Even if a different notification were somehow to be sent, returning early from the socketNotificationReceived would only prevent updateDom() getting called, and since updateDom() only updates the screen and has nothing to do with sending network requests, I don't see how this could be a potential fix for excessive API requests.


SUSE URLs should use https://

Describe the bug
From Dirk, SUSE URLs for chart dependencies (an all) should use https://, not http://
To Reproduce
git grep "http://.*suse.com"  | tac
stable/kubecf/requirements.yaml:  repository: http://opensource.suse.com/bits-service-release2/
stable/kubecf/requirements.yaml:  repository: http://opensource.suse.com/eirini-release/
stable/kubecf/requirements.lock:  repository: http://opensource.suse.com/bits-service-release/
stable/kubecf/requirements.lock:  repository: http://opensource.suse.com/eirini-release/

Expected behavior
All urls with https://
Environment

Others

Additional context

The subcharts will be removed in #1179, which will render this particular instance moot. Hopefully #1196 will catch other instances from appearing, so there is nothing left to do for this issue.


Create a timeline

Add a list of all your activities, achievements, work experience. Add as much info as you can remember. In case you don’t have working experience tell about your pet-projects or student projects. Don’t be shy :)

I don't no what to discuss, so I added it just to pass the test.


[DC-686] Remove EHR data past date of deactivation for deactivated participants

Created remove_ehr_data_past_deactivation_date.py module to utilize retract_deactivated_pids.py and participant_summary_requests.py modules to remove EHR data of deactivated participants past the date of deactivation

Created unit and integration test modules to properly test remove_ehr_data_past_deactivation_date

Modified participant_summary_request.py module to convert the suspensionTime (deactivation_date) field to be of type DATE instead of TIMESTAMP

@dcampbell-vumc when running the integration test, I'm getting a query_list of zero. The test data entered with the /curation/tests/test_data/nyc_five_person' files have specific dates, so you will need to make sure the test data you are entering for self.deactivated_participants` deactivated dates will counter against the nyc test data, so some rows will need to be retracted. Unless you wrote the test to return zero?

@dcampbell-vumc when running the integration test, I'm getting a query_list of zero. The test data entered with the /curation/tests/test_data/nyc_five_person' files have specific dates, so you will need to make sure the test data you are entering for self.deactivated_participants` deactivated dates will counter against the nyc test data, so some rows will need to be retracted. Unless you wrote the test to return zero?

It definitely wasn't supposed to be zero. I'll look at the test data.


Fix of issue #471 is causing NullPointerException

I got crash reports like this from my users:
Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'java.util.Set akf.a(java.lang.String)' on a null object reference
at com.evernote.android.job.JobManager.getAllJobRequests$18e0aa6e(JobManager.java:293)
at com.evernote.android.job.JobManager.cancelAllInner(JobManager.java:422)
at com.evernote.android.job.JobManager.cancelAllForTag(JobManager.java:395)
After an investigation into your code, I noticed that to fix this issue: https://github.com/evernote/android-job/issues/471, you moved JobManager#mJobStorage's initialization to a background thread and used a CountDownLatch to wait for it on threads calling getJobStorage(). This modification was made in v1.3.0-alpha02.
According to my understanding to the Java Language Spec, I think it's a must that you declare mJobStorage as a volatile field, or getJobStorage()'s calling thread may not observe mJobStorage's value even after CountDownLatch#await() returns.
I will soon submit a pull request, please consider to merge.

I overlooked a fact that is actually causing most occurrences of the NPE. You set a 3s timeout for the CountDownLatch#await() method call in getJobStorage():
mJobStorageLatch.await(3, TimeUnit.SECONDS);

getJobStorage() may return null because of this timeout. But all 41 usages of it seem to have the assumption that the method never returns null. I would suggest that you remove the timeout and just let getJobStorage()'s calling thread hang if initialization of mJobStorage is that slow. The "volatile" issue I mentioned before is a problem, but not as serious as this one. Please consider my suggestion and work out your own fix.
For my project, I temporarily reverted your #471 fix and build an AAR for my own use.

Thanks for taking a deeper look. I'll fix this in the next version.

I've published a new release 1.3.0-alpha04. Please let me know if this issue is fixed there. I appreciate all the help.

Thanks for the fix. My project has switched to use WorkManager so I'm sorry I cannot test your fix on production builds anymore. Anyone who shares the same issue can give a feedback here.


Couldn't remove a contact after adding. There's no reset password either.

add crud operations for the user profile too.

Interesting issue.


Finer grained auth system properties

Right now auth can be set to "from" and "to" (-Djib.from.auth.username for ex) but this is really not convenient in a multimodule project with multiple images, in particular when from images don't come from the same repo - docker.io, custom.foo for example.
Would be great to support something more specific like -Djib.registries.docker.io.auth.username or -Djib.registries.<IP_ADDRESS>.auth.username (ip) and password indeed.

Could you provide a bit more information on the set up you have in mind for multiple images from different repos? I wonder if configuring the credentials through different credHelpers in a docker configuration file instead of directly through auth (see authentication methods) would be more suited for a scenario like this.

Hi @emmileaf ,
basically I have a project like that (very simplified but sufficient):
+
|- from-dockerhub-to-private-repo
`- from-private-repo-to-private-repo

The CI/CD has a setup based on environment variables (injected secrets), right now - since this feature is not in - it does something like:
init_jib() {
    jib_args="$MAVEN_ARGS -Djib.serialize=true"
    jib_args="$jib_args -Djib.allowInsecureRegistries=true -DsendCredentialsOverHttp=true"
    jib_args="$jib_args "-Djib.from.auth.username=$REGISTRY_DOCKER_USERNAME" "-Djib.from.auth.password=$REGISTRY_DOCKER_PASSWORD""
    jib_args="$jib_args "-Djib.to.auth.username=$REGISTRY_DOCKER_USERNAME" "-Djib.to.auth.password=$REGISTRY_DOCKER_PASSWORD""
    jib_args="$jib_args -Dhttp.proxyHost=$PROXY_HOST -Dhttp.proxyPort=$PROXY_PORT "-Dhttp.nonProxyHosts=$NON_PROXY_HOSTS""
    jib_args="$jib_args -Dhttps.proxyHost=$PROXY_HOST -Dhttps.proxyPort=$PROXY_PORT"
    jib_args="$jib_args -Dhttp.proxyUser=$HTTP_PROXY_USER "-Dhttp.proxyPassword=$HTTP_PROXY_PASSWORD""
    jib_args="$jib_args -Dhttp.proxyUser=$HTTP_PROXY_USER "-Dhttps.proxyPassword=$HTTP_PROXY_PASSWORD""
    export JIB_MAVEN_ARGS="$jib_args"
}

Then when invoking mvn it sets JIB_MAVEN_ARGS in on the command automatically.
The idea there, would be to make all these properties (except proxy ones) specific to a repo (allowInsecureRegistries, auth.*).
Guess the only option would be to use $HOME/.docker/config.json or $HOME/.config/containers/auth.json (XDG_RUNTIME_DIR not being usable in the build container) but it has several pitfalls compared to today:

it requires to write a file - system props/env vars are way more friendly to builds than files for this kind of things + it avoids some security careness files imply,
it requires to tune jib.configDirectory to write the new file (changes the default value if the file is there - some builds populated it for programmatic jib usage - agree it is not that common but this has side effects)
it requires some specific binary to write the file properly (at least some base64 stuff) which makes the script even more complex (storing the dockerconfig in an env var is not desired for maintenance and password rotation)

So yes it can be a workaround but don't think it is a long term solution.
Right now my workaround is to copy the public images in the private repo but I'd like to avoid it just by adding something like:
jib_args="$jib_args "-Djib.auth.docker.io.username=" "-Djib.auth.docker.io.password=""

Thank you for the additional information!
I wouldn’t exactly describe the use of docker configuration files as a workaround in general, given that it is versatile in configuring authentication for different registries (either through credHelpers or auths block). But I see that your setup could have more specific blockers for the convenience of this option - we will leave this feature request open to gauge community interest, and whether this would benefit other use scenarios.


[Launchbox Metadata] Doesn't download Cover Image/possibly other images for Japan region

For games released only in Japan, it fails to download any Cover Image at all. I believe it also doesn't download Fan Art (or Screenshots? I'm not sure when/if it does this in general) for Background Images.

Did you configure those to be enabled under main menu > Add-ons > Extension settings > Metadata Sources > LaunchBox under their respective tabs?

I meant to look for the settings and thought I did, but I forgot...
Still, I'm looking at it now and I'm confused. All the regions are checked. I'm not sure what the "Alias" means. But I have imported games that only have a single region, Japan, and it imports no image at all. Possible the issue is the "Orientation" option on the Covers tab? I'm going to change to Any and see if that fixes it.

Yeah, some combination of this + the minimum image sizes must have done it. Sorry about that.

Yeah, some combination of this + the minimum image sizes must have done it. Sorry about that.

Thank you so much for this hint, I was also only getting Japanese box art and it turns out it was also because the orientation was set to "Vertical"! I fixed it by setting it to "Any" since N64 games are Horizontal.


Camera compatibilty Question

As a video capture newbie, I'm a bit confused about cross platform compatibility. Can you please tell me if I'm understanding this correctly? Based on my research, I should be able to use webcam-capture for most UVC compliant devices on either Mac, Linux or Windows. I found a list of UVC cameras here. Is it really that simple? All those cameras will work on Mac, Linux or Windows using webcam-capture, and I can build my own Java app on top?
Specifically I want to capture video from a dinolite camera where I develop on MacOSX and deploy on Linux. On Dinolite's support page
they say:

Newer Dino-Lite microscopes are also UVC (USB Video Class) compliant and will open video in most applications that support that standard."

So would you think a compatible system would be: dinolite UVC camera + webcam-capture + custom Java app on MacOSX and Linux?
Your insight is greatly appreciated!!!

Hi @timmolter,
Yes, all UVC cameras should work fine with Webcam capture API. Gross of the UVC devices is properly supported but people reported some issues with some rare devices that usually expect USB 3.0 instead of 2.0 or some very cheap cameras that are only partially standard-compliant.
There are some issues on Mac due to special function of first thread in this operating system and in some cases camera is unable to instantiate when using SWT. On both Linux and Windows everything works fine. However it's very easy to test if your Mac can handle it. Some very simple examples are available here:
https://github.com/sarxos/webcam-capture/tree/master/webcam-capture/src/example/java

@sarxos Thanks for taking the time to answer! I actually went ahead and bought a Dinolite and a DigiMicro and both work! I was able to use some of your example code to get a live capture working.


Add regional ECR map

Issue #, if available:
Description of changes:
Testing (if applicable):
Documentation added/planned (if applicable):
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/approve

/cherry-pick release-0.18

/lgtm


Remove log4j and commons-io jars from documentation snippets

Using fictive libraries instead.
See

https://github.com/gradle/gradle/issues/23378

@bot-gradle test BD

I've triggered the following builds for you:

BuildDistributions build

@bot-gradle test BD

I've triggered the following builds for you:

BuildDistributions build

Rendered preview available at https://builds.gradle.org/repository/download/Gradle_Release_Check_BuildDistributions/60155060:id/distributions/gradle-8.0-docs.zip!/gradle-8.0-20230106114239%2B0000/docs/userguide/migrating_from_ant.html#migant:filesystem_deps

@bot-gradle test and merge

I've triggered a build for you.


Typescript: jsonParseReviver - current json object isn't supported

In current Typescript client, it's possible to use own reviver for JSON.parse(json, reviver) call.
let resultData200 = _responseText === "" ? null :
  JSON.parse(_responseText, this.jsonParseReviver);

But current implementation doesn't allow use context of reviver, which is current parsed json - see JSON.parse documentation. Important is: Then it is called, with the object containing the property being processed as 'this'.
I propose this one
let currentClient = this;
let resultData200 = _responseText === "" ? null :
  JSON.parse(_responseText, (key, value) => currentClient.jsonParseReviver(key, value, this));

No, see the spec for JSON.Parse - this - in context of JSON.Parse function itself - is property of current parsed JSON, which is being processed. JSON.Parse change context of 'this' in same way as e.g. jquery. Calling currentClient.jsonParseReviver(key, value, this) means currentClient.jsonParseReviver(key, value, processedJsonProperty).

Ok i understand, is this correctly working with a ts lambda? Shoudnt you use a function for the correct this?

Cant you set it this way? https://github.com/RSuter/NSwag/wiki/SwaggerToTypeScriptClientGenerator#add-a-custom-jsonparse-reviver-function

Ok i understand, is this correctly working with a ts lambda? Shoudnt you use a function for the correct this?

I think it works, I tested only mentioned snippet on TS playgroud, it's compiled to normal ES5 closure with preserved 'this' context.

Cant you set it this way? https://github.com/RSuter/NSwag/wiki/SwaggerToTypeScriptClientGenerator#add-a-custom-jsonparse-reviver-function

I know about this one, for most of simple cases like multiple values, rename values etc. it's sufficient, but this isn't sufficient for my case, I need to access processedJsonProperty, for resolving some special type of information from current processed json. It's possible only through 'this' json property from JSON.Parse reviver context.

Is this this parameter even supported by all browsers?


travis: Enable code coverage with Coveralls

Hi,
This pull request adds some coverage statistics via Coveralls.
The picocoin Github repo must first be linked to Coveralls (https://coveralls.io) then the next Travis build with generate and upload coverage status to Coveralls.....and put a pretty little badge on the README :-)
Current coverage is about 77%. https://coveralls.io/builds/5381294

Here's the repo token:
repo_token: bFXPZELTGB64w60CxOgfrzb5LcUPmDqe9

Let's see...


verbose line of output from flutter run for iOS

I see a new line of output when running against iOS:
[VERBOSE-2:FlutterObservatoryPublisher.mm(148)] FlutterObservatoryPublisher is ready!

And it stands out in the normal run output:
Launching lib/main.dart on iPhone SE in debug mode...
Starting Xcode build...
 ├─Assembling Flutter resources...                    1.9s

Xcode build done.                                           13.8s
Syncing files to device iPhone SE...
[VERBOSE-2:FlutterObservatoryPublisher.mm(148)] FlutterObservatoryPublisher is ready!
 1.8s

🔥  To hot reload changes while running, ...

It looks like it was added on this commit: https://github.com/flutter/engine/pull/6789
cc @dnfield

Cool, thanks for the quick turnaround :)


What's going on with that 9/10 observation only for Ambient4?

Track down and understand; I don't see any 9/10 dates in the raw data...

Fixed in e8614b6.


refactor test

[ ] resolves #
[ ] follows contribution guide
[ ] code change includes tests

@bloomingpeach closing this, since the PR I made was just ignoring that particular testcase and it got merged to main


Weird num2date failure

Reported by @rcomer https://github.com/SciTools/iris/issues/3239#issuecomment-475674052 ...
import iris

time_coord = iris.coords.DimCoord(range(5), units='days since 2001-05-01',
                                  standard_name='time')

# Add as aux coord
cube = iris.cube.Cube(range(5))
cube.add_aux_coord(time_coord, 0)

# Save and then load, attempt to print time coord.
print(cube.coord('time'))
iris.save(cube, 'test_cube.nc')
temp_cube = iris.load_cube('test_cube.nc')
print(temp_cube.coord('time'))

Problem looks like this ...
>>> print(temp_cube.coord('time'))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/h05/itpp/git/iris/iris_main/lib/iris/coords.py", line 786, in __str__
    points = self._str_dates(self.points)
  File "/home/h05/itpp/git/iris/iris_main/lib/iris/coords.py", line 769, in _str_dates
    date_obj_array = self.units.num2date(dates_as_numbers)
  File "/opt/scitools/environments/default/2019_02_27/lib/python3.6/site-packages/cf_units/__init__.py", line 1989, in num2date
    return _num2date_to_nearest_second(time_value, cdf_utime)
  File "/opt/scitools/environments/default/2019_02_27/lib/python3.6/site-packages/cf_units/__init__.py", line 602, in _num2date_to_nearest_second
    dates = utime.num2date(time_values)
  File "cftime/_cftime.pyx", line 1211, in cftime._cftime.utime.num2date
  File "/opt/scitools/environments/default/2019_02_27/lib/python3.6/site-packages/numpy/core/fromnumeric.py", line 279, in reshape
    return _wrapfunc(a, 'reshape', newshape, order=order)
  File "/opt/scitools/environments/default/2019_02_27/lib/python3.6/site-packages/numpy/core/fromnumeric.py", line 51, in _wrapfunc
    return getattr(obj, method)(*args, **kwds)
ValueError: cannot reshape array of size 1 into shape (5,)
>>>

However it's proving hard to reproduce
(more to come...)

Hi @pp-mo, thanks for pulling this out as its own issue.  You are right that it's not about the zero date problem that was causing Travis failures.  However, it was fixed by pinning cftime to the older version, so that's why the issues were linked in my head.

Is it something to do with the mask?
In [3]: temp_cube.coord('time').points
Out[3]:
masked_array(data=[0, 1, 2, 3, 4],
             mask=False,
       fill_value=999999)

As far as I can tell, it is not possible to create a coord from scratch using a masked array.  The mask just disappears:
In [47]: time_coord = iris.coords.AuxCoord(ma.array(range(5), mask=[False, True, False, True, False]),
                                           units='days since 2001-05-01', standard_name='time')

In [48]: time_coord.points
Out[48]: array([0, 1, 2, 3, 4])

In [75]: time_coord = iris.coords.AuxCoord(ma.array(range(5), mask=ma.nomask),
                                           units='days since 2001-05-01', standard_name='time')
In [76]: time_coord.points
Out[76]: array([0, 1, 2, 3, 4])

not possible to create a coord from scratch using a masked array

Unless you go via dask...  which happens with auxillary coordinates loaded from NetCDF 💡
In [7]: time_coord = iris.coords.AuxCoord(da.ma.masked_array(da.arange(5, chunks=5)),
   ...:                                   units='days since 2001-05-01', standard_name='time')
In [8]: time_coord.has_lazy_points()
Out[8]: True

In [9]: time_coord.points
Out[9]:
masked_array(data=[0, 1, 2, 3, 4],
             mask=False,
       fill_value=999999)

I think this may be the line that stops coord points being a numpy masked array.  Maybe this method needs additional handling for the lazy array case?

Now I am wondering whether disallowing masked arrays was a deliberate design choice.  Couldn't just removing the mask leave you with nonsense in the previously masked points?  So if we really don't want masked arrays, it might be better if they triggered an exception?

The cf conventions say that "Missing data is allowed in data variables and auxiliary coordinate variables."

Narrowing it down...
Given
mytime = cftime.utime('days since 2001-05-01')

arr1 = ma.array(range(5), mask=ma.nomask)
arr2 = ma.array(range(5), mask=[0,0,0,1,0])

mytime.num2date(arr1) gives the now-familiar exception, wheras mytime.num2date(arr2) gives:
array([datetime.datetime(2001, 5, 1, 0, 0),
       datetime.datetime(2001, 5, 2, 0, 0),
       datetime.datetime(2001, 5, 3, 0, 0), None,
       datetime.datetime(2001, 5, 5, 0, 0)], dtype=object)

👀
https://github.com/Unidata/cftime/issues/60
https://github.com/Unidata/cftime/pull/55

Hi @pp-mo, having had a long conversation with myself(!), I'm satisfied that there's nothing within Iris that we need to for this.  So I'll close this.  Obviously you are welcome to re-open if you disagree.
I've transferred my comments about masked coord points to #3419.


Fade in/out shape property can never be set to 0 once changed

If you ever change the default fade in/out values, they can never be set to 0 again:

It may say zero, but you can see on the graph that it is not and if you click the value, you'll see that it's in fact a really, really tiny decimal number.

Hi! I'm using @export_exp_easing and I couldn't find a way to make it equal to 0, but I fixed the way it processes and appears in the graph, so that if it's very close to 0, it will detect it as 0.


Incomplete language libary

Only English available. Slightly annoying.

Do you mean Discord's UI not correctly using the chosen language? If so, that's a known bug with Manager builds of Vendetta that is being looked into.
If you mean that Vendetta's UI does not respond to Discord's language, we have not implemented internationalisation at all. It is something I wanted to do later down the line, though.

Well yes, but not exactly what you described. Even though discord was set to german by default (guess why), the UI was still displayed in english. This suggests that the other languages aren't existent or loaded, no?

This suggests that the other languages aren't existent or loaded, no?

As I mentioned before, currently any version of Vendetta installed from the Manager app causes Discord to not respect your chosen language. This, of course, would mean that even if Discord chose German by default, it would not work as intended. This is a bug, and we're looking into it.

Even if this bug was not present, Vendetta's UI (e.g. the settings) is hard-coded to be in English. We have no translations set up as of right now. It is something I want to do, though.
I hope the two above comments clarify things :)

Even if this bug was not present, Vendetta's UI (e.g. the settings) is hard-coded to be in English. We have no translations set up as of right now. It is something I want to do, though.
I can help you with that for the German part


Node 12 Support

WDIO supports v12.16.1 and beyond. wdio-electron-service requires node 14+ for the null coalesce operator. This change re-writes the check that uses it and allows wdio-electron-service to be used for all node versions that WDIO supports.

This is TS so there should be no need to change the code for this.  Try changing the target value in tsconfig to ES2019 since optional chaining was introduced in ES2020.

Just fyi with WebdriverIO v8 we will require Node.js v16 and up.

Yeah, we target ES2020 for TS output and specify N16 in the package.json.  I don't mind supporting N12 now, if done correctly, but we will be upgrading to v8 as soon as it is released.

Closing as the solution to support N12 is in a different castle.


PiP-Tool won't work without Aero Theme

I'm using Win7 x64 with Windows Basic Theme, and I find PiP-Tool won't work.
With "won't work", I mean the cropper window will stick to the Desktop's left-top instead of the selected window's left-top, and you can't move nor resize the cropper window.
I tried several ways to get it to work, and I finally figure it out: just change the theme to Aero Them.
I know Aero Theme is the default theme of Win7, but I think it would be nice if there is a notice for people who are used to use Windows Basic Theme.
And also I would like to know if it's possible that PiP-Tool can work without Aero Theme. I think the problem  is caused by the implementation, so maybe it's difficult or impossible, but I would like to know the answer.
Anyway, PiP-Tool is a great tool, thank you.

Works for me (PiP-Tool works without Aero Theme)
that's why I went from OnTopReplica, that definitely requires it.


Performance issue in agents/parts/iterate_sequences.py

Hello, I've found a performance issue in "agents/parts/iterate_sequences.py": dataset = dataset.batch(batch_size or num_sequences)(here) should be called before dataset = dataset.map(remove_padding).flat_map(here) which would make your program more efficient. Moreover, length = sequence.pop('length')(here) indicates that the function remove_padding(here) isn't vectorized. To call dataset = dataset.batch(batch_size or num_sequences) before dataset = dataset.map(remove_padding).flat_map, remove_padding is supposed to be vectorized. Can remove_padding be vectorized? The performance of your code could be further improved if it can.
Here is the tensorflow document to support this thing.
Looking forward to your reply. Btw, I am very glad to create a PR to fix it if you are too busy.

Hello, I'm looking forward to your reply~

Thanks for the suggestions! The code is in archived state, so I won't make those changes. But please feel free to fork it and create a better version if you like.


Disconnected from server

I just updated to Build #316 and since then, I just can't join (no players can too) and it says nothing in the console. If you stop WaterDog, you will be in a loading screen until it says that it can't connect to the world but if WaterDog is running, it directly promp you the "Disconnected from Server" and you also get the motd / player count in the server list.

https://streamable.com/dtj9u0

have the same problem!

I'm also having the same issue.

Please if you are able to find duplicates, read the solutions too. If you are in our Discord server, you could see in #news channel post about latest working builds.
You can download working build here.

Idk why, but it seems that I was using the latest master build due to my mistake (it wasn't replaced by the one from alemiz-zlib) and it worked anyway, thank you

So, Waterdog from yesdog isn't updated yet? Ok, thanks.

No. It is updated. If you would compile master-zlib yourself it would work. For feature discussion related to builds please ask on our Discord server.


LGBM_BoosterCreateFromModelfile crash on Android device

Description
We are running LightGBM on Android devices, sometimes the following crash occurs in LGBM_BoosterCreateFromModelfile method:
backtrace:
      #00 pc<PHONE_NUMBER>03ee9c  ../com.android.runtime/lib64/bionic/libc.so (_Unwind_SetGR+76) (BuildId: )
      #01 pc<PHONE_NUMBER>00a604  /system/lib64/libxxx.so (__gxx_personality_v0+336) (BuildId: )
      #02 pc<PHONE_NUMBER>42b164  /system/lib64/lib_lightgbm.so

Reproducible example
Occasional crashes.
ALOGD("LGBM_BoosterCreateFromModelfile begin"); //
result = LGBM_BoosterCreateFromModelfile(filename, &p, &handle);
ALOGD("LGBM_BoosterCreateFromModelfile end"); // when crashed, no this line

Environment info
LightGBM version or commit hash: d78b6bc2fdf96c87e3cb61f2d497a962e3270c91
Additional Comments
We guess that an exception occurred in API_BEGIN() and API_END().
int LGBM_BoosterCreateFromModelfile(
  const char* filename,
  int* out_num_iterations,
  BoosterHandle* out) {
  API_BEGIN();
  auto ret = std::unique_ptr<Booster>(new Booster(filename));
  *out_num_iterations = ret->GetBoosting()->GetCurrentIteration();
  *out = ret.release();
  API_END();
}

If any additional information is required please contact me. Thanks.

Thanks for using LightGBM.
We don't test deployment to mobile operating systems but can try to help here. To do that, we need more information.

Could you provide the model file as a text file attachment here?
Is it possible to upgrade to a newer version of LightGBM? The version you're using is from September 1, 2022 ... there have been many fixes and improvements since then.
Can you please provide the exact commands you used to build LightGBM?


Use incremental mode (and daemon mode, once implemented)

Upstream issue: https://github.com/python/mypy/issues/3968
Hopefully this will speed up linting enough that we can enable checks for unsaved files.

Note to self: daemon mode has long been implemented, I just noticed it randomly on the changelog and then forgot about it. Not sure it's worth investigating because I'll need to manage the daemon in the plugin code. As long as --incremental does its job well (read: fast) enough, I'll hold back working on this.


[Feedback] Warn Developers Regarding Major Code Changes

🚀 The feature
Flag parts of the repo that are undergoing major changes (breaking changes between two releases) + have a bot post on PRs that touch these high traffic files.
Motivation, pitch
TL;DR: torchvision moves pretty fast and external developers want to know if they are developing on something that may change very soon.
Imagine you are an interested developer and you would love to contribute to torchvision. You scan through the issues and you see an interesting one you can help tackle! You follow some directions, get right into the task, and a few days later, you have a PR. You iterate based on CI results and you're pretty proud of your feature.
You get a reviewer to look through and hopefully approve your awesome change. BUT that's not what happens. Instead, the reviewer lets you know that the code you're touching is actually migrating to some other structure and the work you did on your PR has become irrelevant. What a downer. You wish you knew this earlier, before you spent so much time on the PR.
The current system can be quite discouraging for an external developer. To promote contributions, torchvision should notify developers of major code changes in some way. One way is to flag those paths that are likely changing soon and having a bot post on PRs touching those paths with a warning message. This way, developers have more clarity on what they should work on.
Alternatives
Other alternatives are for torchvision to update existing issues/feature requests with up-to-date content so that developers can fix an issue knowing that their work would not be in vain.
Additional context
This feedback was gathered from talking to current external contributors.

@janeyx99 Thanks for the feedback!
Finding more ways to warn developers for upcoming major code changes sounds a reasonable proposal.
Note that this is something we currently already do in a degree. For example we notify users via blogposts several months prior actually landing the feature on main branch, include notes about upcoming API changes on our previous release notes and we actively seek the feedback of the community both on Github and on other channels during decision making.

One way is to flag those paths that are likely changing soon and having a bot post on PRs touching those paths with a warning message.

Is this a solution that PyTorch core currently uses? Could you provide an example of how this is configured?

You get a reviewer to look through and hopefully approve your awesome change. BUT that's not what happens.

Could you provide a few instances when this occurred? It can help us identify issues in our process.

Note that this is something we currently already do to a degree.

Yes, this is something I think torchvision does better than core torch, though torchvision also moves a lot faster on the whole.

One way is to flag those paths that are likely changing soon and having a bot post on PRs touching those paths with a warning message.

Is this a solution that PyTorch core currently uses? Could you provide an example of how this is configured?

Core does not have a solution like this just yet--but core also could do better in this regard as well. This suggestion was derived from talking with @oke-aditya and @frgfm.

Could you provide a few instances when this occurred? It can help us identify issues in our process.

I'll get back to you if I gather any specific examples--feel free to deprioritize as this doesn't seem too great a concern for vision (given your many other avenues of communication).

Sounds great, if core adopts such a solution I would be happy to try it out here.
No rush about the specific examples. I'm still interested to get them as a learning exercise and to improve. I'm sure we can definitely do better :)

using the previous information, have the CI check the code sections involved in the PR, and warn the author (either linked the PR that made those changes or find another way to do it)

@janeyx99 That should be doable with a similar approach as core uses for the bot. Basically, we could have configuration file somewhere that specifies the files and the flag (upcoming revamp / deprecation / ...). Now we can write a small workflow that runs every time someone pushes to a PR and cross ref the changed files in the PR with the configuration and post a message if there is overlap. Of course we would need to disable this for a group of core maintainers to avoid spam.


Blog RSS stopped working

Describe the bug
RSS feed for the blog stopped working https://www.meilisearch.com/blog/rss
To Reproduce
Steps to reproduce the behavior:

Go to blog RSS link

Expected behavior
RSS works and returns valid XML
Screenshots
If applicable, add screenshots to help explain your problem.

Hello,
thank you for the report :heart:  We're migrating our blog backend right now. We'll be reinstating the RSS feed but it might take some time.


BEPINEX issue

After extracting bepinex core files game doesnt launch.
Maybe try melon loader?

the game will not start because of the file winhttp.dll

and it works with all the main staff

and it works with all the main staff

what should i do cuz without winhttp.dll it doesnt work

doorstop is patched, we are working on a solution


docs: AUR

I put cohesion on the AUR, so I figured I'd also mention it in the README. I also added your email to the package.json, since electron-builder requires an email when building Linux targets for anything besides Snap/Flatpak/AppImage. https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=cohesion-git#n56

That's nice thanks! I am not sure how AUR works if you wouldn't mind answering:

What happens when I push a new version to main?
Is it able to handle registering Cohesion as the default app for notion:// links? This is important for the browser extensions to work properly.

It depends. Generally, nothing happens since it's a -git package, so unless I push an update, it won't try to update to the latest HEAD, unless a user passes the --devel flag when upgrading.

It should work out of the box because of https://github.com/brunofin/cohesion/blob/main/data%2Fio.github.brunofin.Cohesion.desktop#L10

It depends. Generally, nothing happens since it's a -git package, so unless I push an update, it won't try to update to the latest HEAD, unless a user passes the --devel flag when upgrading.

It should work out of the box because of https://github.com/brunofin/cohesion/blob/main/data%2Fio.github.brunofin.Cohesion.desktop#L10

Nice! I will delay merging this one because I am pushing some updates today addressing some of the open issues. I may actually tag you once I push to main in case you'd need to do something in order to update AUR version.

@ThatOneCalculator a v1.0.6 tag is now released

Pushed to AUR!

@ThatOneCalculator could you please push a new version for v1.0.7? I had introduced a bug in the previous version which is now fixed. Thanks!


What is the role of “ $scope: any ” ?

module.exports = ($scope: any, $state: any, ImagePath: any, GreetingService: any) => {}
What is the role of “ $scope: any ” ?

Thanks for seeing my project.
It's defining variable type as any, because this project uses flowtype. If you want to define appropriate type, you have to write or install declaration file.

Thanks


Check valid byte_range in parquet Column Chunk reading?

Is your feature request related to a problem or challenge? Please describe what you are trying to do.

See: https://github.com/apache/parquet-testing/pull/58#issuecomment-2290985490
When reading a corrupt file, currently, arrow-rs would have:
    /// Returns the offset and length in bytes of the column chunk within the file
    pub fn byte_range(&self) -> (u64, u64) {
        let col_start = match self.dictionary_page_offset() {
            Some(dictionary_page_offset) => dictionary_page_offset,
            None => self.data_page_offset(),
        };
        let col_len = self.compressed_size();
        assert!(
            col_start >= 0 && col_len >= 0,
            "column start and length should not be negative"
        );
        (col_start as u64, col_len as u64)
    }

Would we better check the range here?
Describe the solution you'd like

Checking the range when building the group reader or in "byte_range()"
Describe alternatives you've considered

    /// Returns the offset and length in bytes of the column chunk within the file
    pub fn byte_range(&self) -> Result<(u64, u64)> {
        let col_start = match self.dictionary_page_offset() {
            Some(dictionary_page_offset) => dictionary_page_offset,
            None => self.data_page_offset(),
        };
        let col_len = self.compressed_size();
        if col_len < 0 || col_len < 0{
            return Err(ParquetError::General(
                "column start and length should not be negative".to_string(),
            ));
        }
        (col_start as u64, col_len as u64)
    }

Additional context

@alamb I'm willing to try this but I'm not so familar with parquet-rs. Do you think this would better be checked in ColumnChunkMetaData::byte_range or ColumnChunkMetaData::from_thrift? Or this is already checked, we don't require this?

@alamb I'm willing to try this but I'm not so familar with parquet-rs. Do you think this would better be checked in ColumnChunkMetaData::byte_range or ColumnChunkMetaData::from_thrift? Or this is already checked, we don't require this?

I am not sure -- I think the first thing we should do is get a reproducer. Let me see if I can whip up some tests

See https://github.com/apache/arrow-rs/issues/6261 / https://github.com/apache/arrow-rs/pull/6262

Describe alternatives you've considered

That looks good to me, FWIW


Bytecode implementation for StableHLO

This PR plays a role in #34. There is still a little more work to do before closing this issue, as documented in bytecode.md of this PR.

Implemented bytecode for StableHLO, all attributes and types. The changes here are largely based off BuiltinDialectBytecode.cpp.
Added a test bytecode.mlir:

Ensures that stablehlo-opt and stablehlo-opt -emit-bytecode file.mlir | stablehlo-opt produce the same results.
Uses stablehlo-bytecode debug trace to ensure that all attrs/types have bytecoding implemented.

Added documentation of work, findings, and open questions in bytecode.md.

Adding Mehdi as a reviewer. I think my biggest area of concern is the datatypes chosen to represent data. Just about everything is represented as a varint, svarint, or array of svarint[]. I'm not sure if this is ideal for all the given datatypes, or if APInt should be used anywhere.
Additionally, note the test cases run in bytecode.mlir, they are bash-specific. Perhaps there is a better way to verify round-trip? I think I saw some conversation regarding this on the LLVM bytecode implementation review, not sure if anything ever came of that.

Adding Mehdi as a reviewer. I think my biggest area of concern is the datatypes chosen to represent data. Just about everything is represented as a varint, svarint, or array of svarint[]. I'm not sure if this is ideal for all the given datatypes, or if APInt should be used anywhere.

The (s)varint are the right choice right now for anything stored as integers (up to 64 bits).
If we have any attribute storing an APInt in memory, we shouldn't use this. But that seems unusual: do we have such cases?


After getting dark mode, dark-light fashion icon doesn't get old again?

As I mentioned in the question, the moon icon appears at the bottom left when in light mode. When in dark mode, this icon turns to the sun. If I switch to Light mode again, unfortunately the icon does not change.

If I do not set the brightness property as below, it does not return to light mode after switching to dark mode.
return GetMaterialApp(
debugShowCheckedModeBanner: false,
theme: ThemeData(
brightness: Brightness.light,
useMaterial3: true,
colorSchemeSeed: Colors.red,
),
darkTheme: ThemeData(
brightness: Brightness.dark,
useMaterial3: true,
colorSchemeSeed: Colors.blue,
),
home: const MyHomePage(
title: '',
),
);

It doesn't change because you set ThemeSwitcherButton to const in nav_rail. The issue was resolved when the const expression was removed.

Hi there, that's odd because I have not encountered that issue before. Have you tried running the example code that I provided?

in witch platform you get this bug?

In the code you provided, brightness is set. If you do not adjust the brightness, there is no change. I didn't understand what caused it. The problem seems to be related to flutter and not yours.