Dataplane plugin v2

Signed-off-by: Serguei Bezverkhi<EMAIL_ADDRESS>Old PR: #302

@edwarnicke @mestery  @fkautz I run Travis twice, all green. Please merge. I found one race in how k8s updates objects and added protective fix. In my 1.11.3 cluster I do not see it. We need to stop using minikube because it is 1.10.X version. We keep updating our dependency to almost 1.12.0 for k8s and we do not really test them with requested dependencies.


containerization with docker

can I dockerize and deploy it on a server I say this for the fact that it uses chrome

Yes you can. I am using this docker image to run tests for example:

hub.docker.com/r/spinlud/python3-selenium-chrome
github.com/spinlud/python3-selenium-chrome

yes but I but what     chrome_executable_path=None


Move API requests to backend plugin

Is your feature request related to a problem? Please describe.
Currently all frontend API requests go directly to PagerDuty APIs by leveraging Backstage proxy component. This simplifies interactions with PagerDuty APIs but also exposes information we don't need.
For added security and performance reasons we have started work on the frontend plugin to remove the proxy dependency (https://github.com/PagerDuty/backstage-plugin/issues/37).
Describe the solution you'd like
Create API endpoints in the backend plugin that expose only the information that the frontend plugin requires. All requests should go through the backend plugin instead of the proxy.
Describe alternatives you've considered
Currently we can only leverage the proxy unless APIs are implemented in the backend plugin.

This is solved by #14 and the issue will be closed once merged into main.


PMID:16246721

abnormal histone deacetylation at the silent mating-type locus during vegetative growth

increased histone H3-S10 phosphorylation  at the silent mating-type locus during vegetative growth


chore: format start_gateway

on top of #4809

Backwards compatibility tests have a weird nix error:
       error: Package ‘nix-2.15.3’ in /nix/store/9fpv0kjq9a80isa1wkkvrdqsh9dpcn05-source/pkgs/tools/package-management/nix/common.nix:250 is marked as insecure, refusing to evaluate.

Backwards compatibility tests have a weird nix error:

AFAIK fix for that landed in master.


vscode-go instruction not working

The instructions for vscode-go is not correct. The one in wiki works: https://github.com/saibing/bingo/wiki/Language-Client#vscode-go
{
    "go.useLanguageServer": true,

    "go.alternateTools": {
        "go-langserver": "bingo"
    },

    "go.languageServerFlags": [],

    "go.languageServerExperimentalFeatures": {
        "format": true,
        "autoComplete": true
    }
}

@jackielii
I tested bingo with flag '-enhance-signature-help' is ok.
Which version of bingo that you used?

Hi, I think I know what's wrong, I used go install directly and that chose a different version.


Passive HTTP wallet backend

Imagine someone has LNbits running on a server and a Lightning node running on their local desktop. Making LNbits reach out to the local node may be hard or impossible or expensive.
What if instead we supported a scheme that allowed the node to reach LNbits instead?
So LNbits would listen on some route like /wallet/passive and the user's local machine would connect to that, I was thinking multiple HTTP pings but actually a websocket may be better in this case.
LNbits will then use that incoming connection to send invoice and payment requests to the local node and get a response which it can use.

bump :D, is this nostr funding source now?

bump :D, is this nostr funding source now?

and revers LNbits funding source


Partially avoid needing QDox by using -parameters

This only works for Java 8, but it is necessary to avoid issues with using TYPE_USE annotations. This change improves debugging Gradle as well, since the parameter info is available at all times in Java 8 code.

@eskatos Octavia is looking to do this because we want to add @Nullable to some type parameters, but for reasons that she can explain, QDox doesn't support that and so we're trying to remove QDox and just use Java's -parameters.  Is this something we can do or is there some gotcha that we still need QDox for Kotlin DSL?

The data generated by api-parameter-names-index  is used to generate the Kotlin DSL extension jar for the Gradle API.
The process should fallback to this data if no parameter names are available in the bytecode so IIRC it should be fine to replace this with -parameters for projects where it is possible.
There are unit and integration tests for this so if it breaks you should get some feedback.
We should keep it for java 6 projects that contain public API stuff though. I'm pretty sure there isn't test coverage specific to Java 6 only types.

@bot-gradle test this

OK, I've already triggered the following builds for you:

PullRequestFeedback build

Seems like I made the distribution too large? Should I just adjust this test (distribution size should not exceed a certain number)?

What about Java 6 modules?

I left those using the api-parameternames-index. Some tests do cover them, and it works just fine still.

@bot-gradle test this

OK, I've already triggered the following builds for you:

PullRequestFeedback build

@bot-gradle test and merge

Your PR is queued. See the queue page for details.

OK, I've already triggered a build for you.


add zoom functionality to minimap

zoom in with P
zoom out with O
4 zoom steps
also + and - buttons near the minimap to zoom in and out

it doesnt show the current zoom Level on the HUD so the HUD isnt more overloaded
if anyone wants the zoom Level to show on the HUD feel free to suggest an idea


Try-Catch doesn't seem to work as advertised

Hello, I decided to give try-catch a spin with some intentionally faulty code that is guaranteed to cause an error and execute whatever is inside catch but that isn't happening for some reason.
{{$ObligatoryChannels := dict 0 456 1 789}} {{range $key, $value := $ObligatoryChannels}} {{try}} {{$key.Channel.Type}} {{$value.Channel.Type}} {{catch}} Failed to find a valid channel: {{.Error}} {{end}} Worked {{else}} Didn't work {{end}}

It does work as implemented, executing the catch pipeline if a function call returns an error type as second return value that is not nil.
Furthermore, exactly that is pointed out in the documentation:

Multiple template functions have the possibility of returning an error upon failure. [...]

Your code showcases an error due to wrong syntax, not an error raised by a function call.
See https://github.com/botlabs-gg/template/pull/7 for the source code and an explanation from the original author.

It does work as implemented, executing the catch pipeline if a function call returns an error type as second return value that is not nil.
Furthermore, exactly that is pointed out in the documentation:

Multiple template functions have the possibility of returning an error upon failure. [...]

Your code showcases an error due to wrong syntax, not an error raised by a function call.
See botlabs-gg/template#7 for the source code and an explanation from the original author.

Yeah, I was informed on the discord, now I know, closing issue.


Can UPGDSED be used to load only one driver while rejecting all others?

So I am using DIfferentSLIAuto and it works great!
It uses modified drivers (which are unsigned to run non SLI cards in SLI mode).
But with new games the problem is that their anti cheats do not allow games to be run when Windows is in test mode.
Even with full UPGDSED, anti cheats detect that testing mode is on.
So,
tl;dr, is it possible to load just one driver (nvlddmkm.sys) using UPGDSED while rejecting all others?

Due to the modification nvlddmkm.sys signing will no longer be valid.
The bigger problem would be: whatever anti-cheat detecting the presence of UPGDSED, most likely.  As UPGDSED does not run windows in 'test mode'.
What anti cheat is it ?

So I am using DIfferentSLIAuto and it works great!
It uses modified drivers (which are unsigned to run non SLI cards in SLI mode).
But with new games the problem is that their anti cheats do not allow games to be run when Windows is in test mode.
Even with full UPGDSED, anti cheats detect that testing mode is on.
So,
tl;dr, is it possible to load just one driver (nvlddmkm.sys) using UPGDSED while rejecting all others?

Easy Anti-Cheat.
Even using UPGDSED, it detects that 'driver signature enforcement' is disabled.

Due to the modification nvlddmkm.sys signing will no longer be valid.
The bigger problem would be: whatever anti-cheat detecting the presence of UPGDSED, most likely. As UPGDSED does not run windows in 'test mode'.
What anti cheat is it ?

So I am using DIfferentSLIAuto and it works great!
It uses modified drivers (which are unsigned to run non SLI cards in SLI mode).
But with new games the problem is that their anti cheats do not allow games to be run when Windows is in test mode.
Even with full UPGDSED, anti cheats detect that testing mode is on.
So,
tl;dr, is it possible to load just one driver (nvlddmkm.sys) using UPGDSED while rejecting all others?

Bump.
If loading a driver without "bcdedit -set nointegritychecks on" is impossible then please close this issue.
I will get my answer.


fix: malformed all-contributors file

Why:
The all-contributors bot can't create PRs because the JSON format got broken and it can't parse it anymore

What's being changed:
Close the array of contrbutors

Check off the following:

[x] All of the tests are passing.
[x] I have reviewed my changes in staging.
[x] For content changes, I have reviewed the localization checklist
[x] For content changes, I have reviewed the Content style guide for GitHub Docs.

@janiceilene it looks like this got mangled in #489 accidentally

It definitely did and I so appreciate the fix @nschonni 💝  Unfortunately, allcontributors just isn't working for us right now 😞 our small team isn't able to keep up with the frequency of contributions. There's some more insight in https://github.com/github/docs/pull/576.

No worries


[5.7] Mark the SwiftPM 5.7 branch as a release branch

As we do with every release, we need to turn off the development bit in SwiftPM so that it disallows use of 999.0 package manifest tools versions and also (somewhat less importantly) shows the version without a -dev suffix in response to swift package --version.
Specific changes:

change development from true to false in SwiftVersion.swift

rdar://92289630

@swift-ci please smoke test

Failure is because apparently some of the snippet tests are still using 999.0.  Will fix.

@swift-ci please smoke test

Thanks for taking over and finishing this PR, @tomerd!  Looks good to me.  Since I created the PR, I can't approve it but the diffs look good.


https://api.nuget.org/v3/index.json is not accessible

HI,
https://api.nuget.org/v3/index.json is not accessible on my computer which is not behind any firewall or proxy. I can access other sites normally including www.nuget.org which is very strange.
I have tried accessing on one of my servers on amazon and it works fine there.
Thanks
Nisar

Can you try to provide more info to<EMAIL_ADDRESS>by following the steps here: https://aka.ms/NuGet-connectivity


[FEATURE] Faster loading of dynamic integrations

Is your feature request related to a problem?
For the dynamic catalog feature in #1381, integrations are loaded into the available integrations page from .kibana all at once (multiple times?), which involves sending the entire uploaded content over network repeatedly. This is less-than performant. This is an issue to address the performance issue from reading integrations.
What solution would you like?
I can think of a few potential bottlenecks, I'm not sure which is the real stopper (or how to profile it):

Integrations are pulled multiple times for different requests, we don't implement any caching. This can be fixed by adding a cache within OSD that stores integrations read from the index.
Assets are included entirely within integrations, making them take a lot of bandwidth. This is talked about in the separate issue #1388.
Integrations aren't paginated/filtered in the query, which means that OS might be sending a lot of data that isn't needed. This is harder to optimize without breaking integrations down further as part of the previous issue.

What alternatives have you considered?
See above. Some or all of these can be implemented to improve the speed. I've ordered them by how much I think each issue contributes, but I haven't done the profiling to back those assumptions up.
Do you have any additional context?
N/A

Threw together a quick benchmark of the starting state and ran it locally. Gist. On my hardware (n=50):
Response Time Statistics:
Min: 0.23 seconds
Median: 0.25 seconds
Average: 0.25 seconds
Max: 0.3 seconds

If I disable index reading entirely:
Response Time Statistics:
Min: 0.0 seconds
Median: 0.01 seconds
Average: 0.01 seconds
Max: 0.02 seconds

Going to mess with optimization now.

Adding an in-memory cache of just the result list (no invalidation logic):
Response Time Statistics:
Min: 0.05 seconds
Median: 0.06 seconds
Average: 0.06 seconds
Max: 0.08 seconds

Adding an in-memory cache filtered by integration name:
Response Time Statistics:
Min: 0.0 seconds
Median: 0.01 seconds
Average: 0.01 seconds
Max: 0.01 seconds

Seems like almost all of the performance can be solved by avoiding unnecessary repeated list iteration. Will see what I can do for a PR.

No caching but optimized network calls (seen here):
Response Time Statistics:
Min: 0.04 seconds
Median: 0.05 seconds
Average: 0.06 seconds
Max: 0.1 seconds


cloudflare-cli: init v3.2.0

Motivation for this change
Add cfcli (cloudflare-cli)
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[ ] NixOS
[x] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Fits CONTRIBUTING.md.

Thank you for the review @c0bw3b. I tend not to edit things that have been auto-generated (in this case, the *.nix are generated with generate.sh in the same directory.
But, obviously I don't think the cases you've found are good changes.
@svanderburg Can you weigh in on this? Is there a reason that these would be getting switched to http rather than https? Should I manually undo those changes and leave them as HTTPS? Is there an upstream issue for node2nix that covers this case?
Thanks all.

NOTE to self: per this NixCon talk (https://youtu.be/vv4d42vbICw?t=41m7s) consider using pnpm2nix: https://github.com/adisbladis/pnpm2nix

I don't use this, don't want to maintain it, it doesn't merge, etc. Closing...


Add Bcachefs ImageNet and COCO data modules

Ready to review but some updates of the packages are still ongoing on bcachefs / benzina preventing a merge


Inconsistent return type in Run Flow component causes serialization errors

Bug Description
The Run Flow component in the Langflow project specifies the return type of the build_data_from_run_outputs function as list[Data]. However, during execution, the function may return a list[Message] due to the behavior of the build_data_from_result_data function. While this does not break functionality outright, it results in significant issues:
1.Extensive error logs: When list[Message] is returned, the backend logs serialization errors.
2.Performance degradation: The logging overhead and potential repeated serialization failures slow down execution.
3.Type inconsistency: The specified return type does not match the actual return values.
Additionally, the flows I am using have their final output components as either Chat Output or Text Output, which both return Message. I am unsure if this is an issue with how I am using the component. I could not find a component that allows the flow to output Data or list[Data].
If my usage is incorrect, please let me know which component should be used as the final output in the flow to ensure compatibility with the Run Flow component and avoid type errors.
Reproduction

Create a flow. Make sure the flow's output component is Chat Output or Text Output
Use the Run Flow component to run it just now
A large number of Debug logs appear in the backend log: TypeError: issubclass() arg 1 must be a class

The build_data_from_result_data function called in build_data_from_run_outputs
def build_data_from_result_data(result_data: ResultData, get_final_results_only: bool = True) -> list[Data]:
    messages = result_data.messages
    if not messages:
        return []
    data = []
    if not messages:
        if isinstance(result_data.artifacts, dict):
            data.append(Data(data=result_data.artifacts))
        elif isinstance(result_data.artifacts, list):
            for artifact in result_data.artifacts:
                if isinstance(artifact, Data):
                    data.append(artifact)
                else:
                    logger.warning(f"Unable to build record output from unknown ResultData.artifact: {artifact}")
        elif result_data.results:
            data.append(Data(data={"result": result_data.results}, text_key="result"))
            return data
        else:
            return []
    if isinstance(result_data.results, dict):
        for name, result in result_data.results.items():
            dataobj: Data | Message | None = None
            # There will be a situation where Message is added to data, but the function needs to return list[Data]
            dataobj = result if isinstance(result, Message) else Data(data=result, text_key=name)

            data.append(dataobj)
    else:
        data.append(Data(data=result_data.results))
    return data

log
                    DEBUG    2024-12-03 08:31:42 - DEBUG    -      schema.py:146
                             schema - Cannot serialize object
                             hello world
                            ............
                             "/app/.venv/lib/python3.12/site-packa
                             ges/langflow/schema/schema.py", line
                             141, in recursive_serialize_or_str
                                 if issubclass(obj, BaseModel):
                                               |    -> <class
                             'pydantic.main.BaseModel'>
                                               -> 'hello world'
                               File "<frozen abc>", line 123, in
                             __subclasscheck__

                             TypeError: issubclass() arg 1 must be
                             a class

                             ╭─ Traceback (most recent call last─╮
                             │ /app/.venv/lib/python3.12/site-pa │
                             │ ckages/langflow/schema/schema.py: │
                             │ 141 in recursive_serialize_or_str │
                             │                                   │
                             │   138 │   │   │   return {k: recu │
                             │   139 │   │   if hasattr(obj, "mo │
                             │   140 │   │   │   return {k: recu │
                             │       obj.model_dump().items()}   │
                             │ ❱ 141 │   │   if issubclass(obj,  │
                             │   142 │   │   │   # This a type B │
                             │   143 │   │   │   return repr(obj │
                             │   144 │   │   return str(obj)     │
                             │ in __subclasscheck__:123          │
                             ╰───────────────────────────────────╯
                             TypeError: issubclass() arg 1 must be
                             a class
                    DEBUG    2024-12-03 08:31:42 - DEBUG    -      schema.py:146
                             schema - Cannot serialize object
                             Machine
                            ............

Expected behavior

The return type of build_data_from_run_outputs should match its type annotation and always return list[Data].
If Message is intended to be supported, this should be clearly indicated in the type annotation, and appropriate handling logic should be implemented.

Who can help?
@italojohnny @ogabrielluiz @nicoloboschi @vasconceloscezar
Operating System
ubuntu - docker standalone
Langflow Version
1.0.19
Python Version
None
Screenshot
Flow:

Run Flow:

Logs:

https://github.com/user-attachments/assets/b58854ea-bfd7-4cda-bdff-48ca91f6b810
Flow File
No response

@dosu
I would like to know if the Run Flow component is officially available. In the invoked flow, are there any final output components, other than Chat Output and Text Output, that can support the proper functioning of Run Flow?


Bash bash commands treated as input variables in task groups

Consider the following
x=$(cat file.txt)
cat file.txt is treated as an input to the task group.

I need this so much.
I want to pass the content of a secure file to a parameter and can't simply because it's passing the path instead :/

This issue is stale because it has been open for a year with no activity. Remove the stale label or comment on the issue otherwise this will be closed in 5 days

This is still an issue


0.6.3 Shaders

What is your question?
How do I use the lua shaders for 0.6.3?

https://gamebanana.com/tuts/15316

if you already have a .frag then
initLuaShader('shadername')
setSpriteShader ('sandsFromUndertaleFunny', 'shadername')

if you already have a .frag then
initLuaShader('shadername')
setSpriteShader('sandsFromUndertaleFunny', 'shadername')
or something I am dumb

so can I set a specific camera with it?

if you already have a .frag then
initLuaShader('shadername')
setSpriteShader('sandsFromUndertaleFunny', 'shadername')
or something I am dumb

so can I set a specific camera with it?

no

if you already have a .frag then
initLuaShader('shadername')
setSpriteShader('sandsFromUndertaleFunny', 'shadername')
or something I am dumb

so can I set a specific camera with it?

yes, i forgot how but you can

if you already have a .frag then
initLuaShader('shadername')
setSpriteShader('sandsFromUndertaleFunny', 'shadername')
or something I am dumb

so can I set a specific camera with it?

yes, i forgot how but you can

I remember there's a code somewhere inside PE discord


Support Avro IDL

Currently decoders must be .avsc files, but more complex schemas are usually written in .avdl files and should be supported by Trifecta.

Sorry for the late reply. I absolutely agree and I'm working on a bug fix release at present that will hopefully be completed within the next couple of days. After which, I can look into supporting .avdl. However, if you've already made changes for supporting .avdl, please submit a pull request, and I'll merge it.

I haven't, but I'll look into it and get back to you tomorrow!

Now that I've finally release v0.19.0, I plan to incorporate the feature you've requested into the next release (v0.19.1)

Nice, thank you!

Hi, how is this coming forward? If you can't find the time, can you just give me a hint where in the codebase to implement this, then I'll try to submit a PR.

I'm planning to work on the feature this week. I'll keep you posted.

Hey, I can do it for you, then you can work on something else. I definitely have time for it this week.

The class TxConfig is responsible for retrieving the decoders (currently
just AvroDecoder (avsc) instances). In order to implement a different type,
you'll have to change a few things:
Take a look at TxConfig.getDecodersByTopic(topic: String): Seq[TxDecoder].
It's responsible for returning the collection of decoders. Currently,
TxDecoder accepts just an AvroDecoder instance. It makes the most sense to
change AvroDecoder into a trait with two sub-classes: AvscDecoder and
AvIDLDecoder.
The TxDecoder definition:
case class TxDecoder(topic: String, name: String, lastModified: Long,
decoder: Either[AvroDecoder, TxFailedSchema])
On Fri, Aug 5, 2016 at 9:01 AM, Marius Soutier<EMAIL_ADDRESS>wrote:

Hey, I can do it for you, then you can work on something else. I
definitely have time for it this week.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/ldaniels528/trifecta/issues/16#issuecomment-237890677,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEc3pbX_c8emm57P-cOOrUMonrFtwqQ_ks5qc15qgaJpZM4GrSks
.

--
Best Regards,
Lawrence Daniels

I prematurely click send...
You'll also need to change the following method:
TxConfig.getDecoderFromFile(topic: String, decoderFile: File)
You can use the file's extension to determine which type of Avro definition
you're dealing with so that you can return the appropriate implementation
(as above: AvscDecoder and AvIDLDecoder).
On Fri, Aug 5, 2016 at 11:49 AM, Lawrence Daniels <
<EMAIL_ADDRESS>wrote:

The class TxConfig is responsible for retrieving the decoders (currently
just AvroDecoder (avsc) instances). In order to implement a different type,
you'll have to change a few things:
Take a look at TxConfig.getDecodersByTopic(topic: String): Seq[TxDecoder].
It's responsible for returning the collection of decoders. Currently,
TxDecoder accepts just an AvroDecoder instance. It makes the most sense to
change AvroDecoder into a trait with two sub-classes: AvscDecoder and
AvIDLDecoder.
The TxDecoder definition:
case class TxDecoder(topic: String, name: String, lastModified: Long, decoder: Either[AvroDecoder, TxFailedSchema])
On Fri, Aug 5, 2016 at 9:01 AM, Marius Soutier<EMAIL_ADDRESS>wrote:

Hey, I can do it for you, then you can work on something else. I
definitely have time for it this week.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/ldaniels528/trifecta/issues/16#issuecomment-237890677,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEc3pbX_c8emm57P-cOOrUMonrFtwqQ_ks5qc15qgaJpZM4GrSks
.

--
Best Regards,
Lawrence Daniels

--
Best Regards,
Lawrence Daniels

Ok I have a first implementation in the linked fork (branch avdl). So it seems I only really had to touch the AvroDecoder companion object. I'm not sure the two AvroDecoder subclasses are even necessary.
The main thing to watch now is that if the Schema is passed as a String, newlines may not be omitted or Avro cannot parse it correctly.

Thanks, I'll take a look.
On Wed, Aug 10, 2016 at 8:10 AM, Marius Soutier<EMAIL_ADDRESS>wrote:

Ok I have a first implementation in the linked fork (branch avdl). So it
seems I only really had to touch the AvroDecoder companion object. I'm
not sure the two AvroDecoder subclasses are even necessary.
The main thing to watch now is that if the Schema is passed as a String,
newlines may not be omitted or Avro cannot parse it correctly.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/ldaniels528/trifecta/issues/16#issuecomment-238897870,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEc3pWj6lOZTeYS5hNEOgvvpbJ8SnrfMks5qeenbgaJpZM4GrSks
.

--
Best Regards,
Lawrence Daniels

So this time on the right branch and I now only use the companion object to differentiate between the two.

Submit a pull request and I'll merge it.


sup simcse

Hi，I have a question, if I use mrpc (The Microsoft Research Paraphrase Corpus)  to train supervised simcse, I want to make sure, only use positive sentence pairs to train supervised simcse?

Yes, you should use the positive sentence pairs to train the supervised model.


[Manual backport 2.8] Adds the newly created admin api permissions to the static dropdown list (#1446)

Description
Manual backport #1446 because the CI failed 7 times in a row due to the flaky test case of SAML.
Issues Resolved

Relate #1446

Reference

Original PR in main #1426

Check List

[ ] ~New functionality includes testing~
[ ] ~New functionality has been documented~
[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@RyanL1997 Do you think we should add the changes from this PR to this branch as well?

@cwperks I think this one has been merged: https://github.com/opensearch-project/security-dashboards-plugin/pull/1449

@opensearch-project/security
Note: since the original PR was failing 12 times in a row... :( I created this manual backport PR. For the failing of Prerequisite Check, it just happened now, I think this is because the build of security plugin of version 2.8.0 is expired. However, since we are using maven snapshot for all the test cases, I think it is reasonable for us to remove this Prerequisite Check workflow.

Update: I just removed the latest Prerequisite Check workflow


TS-4360 Renames NPN_ defines to ALPN_

FreeBSD build successful! See https://ci.trafficserver.apache.org/job/Github-FreeBSD/527/ for details.

Linux build successful! See https://ci.trafficserver.apache.org/job/Github-Linux/424/ for details.

👍


Migration pf 6

Description
Wrap up of the Patternfly migration
closes #6025

Processing this pull request

Merged into branches master in ba30693d9890a1a182fc2a9b31c70e79dfef2157


[ci skip] extend maintainer list

@samwaseda given files etc. I thought you might want to be able to manage releases here. Please ping if you're ok with this
@jan-janssen per your request https://github.com/conda-forge/pyiron_snippets-feedstock/issues/1, no ping needed
@niklassiemer I don't actually expect this to add to your workload, but since you've got a permanent position you significantly improve our bus factor! Please ping if you're ok with this

Bump -- @niklassiemer? @samwaseda?

There we go.... I need to to get my notifications cleaned! I am ok being added to all conda recipes I am partly involved!


Update temp_sign_up_tool.py

Description
The website is opened now when the link is clicked...Previously it did not open any webpage
Fixes #679
Have you read the Contributing Guidelines on Pull Requests?

[x] Yes
[ ] No

Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)

Checklist:

[x] My code follows the style guidelines(Clean Code) of this project
[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have created a helpful and easy to understand README.md
[ ] My documentation follows Template for README.md
[x] My changes generate no new warnings
[ ] I have added tests/screenshots(if any) that prove my fix is effective or that my feature works.

@antrikshmisri


Examples

Hello, i'm new and i want to try to use your implementation to create a secure channel between my computer and my server. Do you have an exemple of usecase ?
thank you.

there is an example , check the main page please
https://github.com/whSwitching/TLSHandler#usage


feat: compatibility with Laravel 7

As report in issue #40 , the package isn't available for Laravel 7. So I've upgraded dependencies and now the library is usable also in version 7 of Laravel.

Awesome package. It would be wonderful if it was available too for Laravel 8.

I have problem when I use this package, I can't to get token when user login from api. Also I can't run php artisan passport:install
I have: php artisan passport:install
Encryption keys already exist. Use the --force option to overwrite them.
Personal access client created successfully.
TypeError
Argument 1 passed to Laravel\Passport\Console\ClientCommand::outputClientDetails() must be an instance of Laravel\Passport\Client, instance of DesignMyNight\Mongodb\Passport\Client given, called in /vendor/laravel/passport/src/Console/ClientCommand.php on line 69
at vendor/laravel/passport/src/Console/ClientCommand.php:152
148|      *
149|      * @param  \Laravel\Passport\Client  $client
150|      * @return void
151|      */

152|     protected function outputClientDetails(Client $client)
153|     {
154|         $this->line('Client ID: '.$client->id);
155|         $this->line('Client secret: '.$client->secret);
156|     }

  +28 vendor frames

29  artisan:37
Illuminate\Foundation\Console\Kernel::handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))


bump pydantic to 1.10.15 for HA 2024.6 support

Summary
Bumps pydantic to 1.10.15 (from 1.10.12) to enable support for Home Assistant 2024.6, which ships with .15 by default
Testing

Have tested this manually against HA 2024.6

All of the basic functions appear to work, such as reading values. I've not tested any user input or writes.

[ ] TODO: Have NOT tested this against pre-2024.6

Also tested on 2024.2 - seems fine. Thanks for sorting this.


[playground] Mount ~/.kube/config into Meshery container

Current Behavior

Currently, Meshery container deployed into c3-medium-x86-01-meshery doesn't have access to the kubeconfig of the Kubernetes cluster bootstrapped in c3-medium-x86-02-meshery.
Because of which this a new context is not auto-generated for every user when they login to Cloud Native Playground env. This leads to new users not seeing a connected Kubernetes clusters into Meshery UI, and thus affecting their user experience.
Desired Behavior

Each user should see a connected Kubernetes context when they log into playground env.
Implementation

Steps:

Copy kubeconfig from c3-medium-x86-02-meshery to c3-medium-x86-01-meshery under ~/.kube/config.
Mounting ~/.kube/config through volumes tag into Meshery Docker container.
Updating the Docker compose file ~/.meshery/meshery.yaml
Documenting updated Docker compose in https://github.com/meshery/meshery/tree/master/install/playground/docker

Acceptance Tests

Contributor Guides and Handbook

🛠 Meshery Build & Release Strategy
📚 Instructions for contributing to documentation

Meshery documentation site and source

🎨 Wireframes and designs for Meshery UI in Figma
🙋🏾🙋🏼 Questions: Discussion Forum and Community Slack

// @Revolyssup

This has already been achieved. So closing this issue.


Add geolocation

KT1F has a nice collection of geolocation data that would support the way I generate the json files (not an API call)
https://haminfo.tetranz.com/map

added in 135fbfa6d258d23fae98cdb8fb2a2b7110fd6816


cannot access a Thread Local Storage value during or after destruction

If I use the latest nightly build, the test program crashed with following message:

thread '' panicked at 'cannot access a Thread Local Storage value during or after destruction: AccessError', src/libcore/result.rs:1165:5

Bug is fixed by PR66350 and waiting for review.

PR is merged into libstd


Terraform init fails for Mac M1 chips

Installed hashicorp/archive v2.6.0 (signed by HashiCorp)
╷
│ Error: Incompatible provider version
│
│ Provider registry.terraform.io/hashicorp/template v2.2.0 does not have a package available for your current platform, darwin_arm64.
│
│ Provider releases are separate from Terraform CLI releases, so not all providers are available for all platforms. Other versions of this provider may have different platforms
│ supported.

Workaround:
TFENV_ARCH=amd64 tfenv install 1.9.7
tfenv use 1.9.7

@danchapman check this out!
Source: https://stackoverflow.com/questions/66281882/how-can-i-get-terraform-init-to-run-on-my-apple-silicon-macbook-pro-for-the-go

worked 🙌


VectorClass

… inherit from Tensor.

Fixes #303

Hello @OVSofia! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file src/einsteinpy/symbolic/vector.py:

Line 19:121: E501 line too long (133 > 120 characters)

I've checked that TensorClass already support a vector in arbitrary space-time symbolically. The proof of this can be seen in  test_tensor.py in  test_tensor1D().
But if  you want a specific VectorClass anyway, I've created a class specifically.

Let's be done with #301 first, we will see this later.


Support for additional non-standard contract fields

It was recently brought to my attention that the issuance contract is now more strictly constructed so if you pass an object with extra fields besides the standard ones they get silently ignored:
https://github.com/vulpemventures/liquidjs-lib/commit/38ea7673ef71878ecb9822f9b0451fe08fff0a29#diff-0eae85aa617a1a8b67323fdcf42188832af778041cd1b8b7413e6a2d4fb9f6c0R43-R53
I had been adding a non-standard "file" field containing the IPFS hash of NFT files uploaded through Raretoshi, and also have been dreaming up schemes to add additional fields for grouping/categories and for identifying transfer-restricted assets and multisig signing party endpoints.
As far as I know the Blockstream asset registry allows non-standard fields as long as the keys in the contract are sorted alphabetically, so I wonder if we should revert the change that was made and just make sure the contract keys are sorted?

I agree! Thanks for heads up! We should def improve the API for (re)issuance. Also we want to fix the current API that wants fractional number, instead of satoshis #38


Overriding AbstractResourceTransformer->transformAttributesObject()

Is there a reason why the methods in AbstractResourceTransformer are private? It causes some problems overriding them, for example you can't override transformAttributesObject() because it is being called elsewhere in the same scope and you need to override those private methods as well.
For the record, what I want to do is extend the class and have this:
public function getAttributes($domainObject)
    {
        $ret = [];
        foreach ($domainObject->attributes as $k=>$v) {
            if ($k!=$domainObject->primaryKey()) {
                $ret[$k] = function(CActiveRecord $domainObject, $attr) { return $domainObject->{$attr}; };
            }
        }
        return $ret;
    }

I actually believe the fingerprint for the closure there could include the attribute name by default, but that's something you might have considered and rejected already so...

I appreciate your Pull Request and I also support the idea to include the attribute name in the anonymous function. I can't really remember why I made those methods private, but probably I just didn't think anyone wants to override them - but it's interesting to get to know a legal use-case which needs it!
So as soon as you fix that small typo, and I'll accept your PR!

Thanks a lot,  I updated it, sorry about that, I only edited the file in github...

OK, no problem! :) I'll release Yin 0.10.1 during the weekend with this patch.


test: extract a common osbuild_fixture() helper

We currently have three copies of the osbuild_fixture() fixture that are slightly different. This commit extract it into a single place in test.py and shares it accross the various callers.
Note that it would be even nicer to put it into conftest.py but there is a circular import right now when trying this. We should still do it eventually it just requires a bit more preperation work.
Split out from https://github.com/osbuild/osbuild/pull/1878

Sadly this is still not quite right, I close fornow but leave the #1913 open (it contains these bits) and will think further, unfortunately deentangling this is not easy (and also not really any priority)


fix(#1012): silently ignore invalid cookie

Description
Closes #1012
After some digging, it looks like this is fixed by using the options ignoreError: true on tough-cookie cookieJar.setCookieSync.
This will silently ignore many invalid cooke:

To validate the fix, I've added an endpoint in bruno-testbench:
app.get('/cookies', function (req, res) {
  res.cookie('test-valid', 'something');
  res.cookie('test-invalid', 'something-invalid', { domain: 'invalid.com' });
  return res.send();
});

To keep the PR focused on the fix I have not included this but I'm happy to commit it if you prefer.
I've also tested the request in #1102 and the errors is indeed fixed.
Contribution Checklist:

[x] The pull request only addresses one issue or adds one feature.
[x] The pull request does not introduce any breaking changes
[x] I have added screenshots or gifs to help explain the change if applicable.
[x] I have read the contribution guidelines.
[x] Create an issue and link to the pull request.

Note: Keeping the PR small and focused helps make it easier to review and merge. If you have multiple changes you want to make, please consider submitting them as separate pull requests.
Publishing to New Package Managers
Please see here for more information.

Thanks for taking care of this @rbideau !


make error in Ubuntu 17.04: can not find libbsoncxx

clean message:
CMake Error at plugins/db_plugin/CMakeLists.txt:21 (find_package):
By not providing "Findlibbsoncxx.cmake" in CMAKE_MODULE_PATH this project
has asked CMake to find a package configuration file provided by
"libbsoncxx", but CMake did not find one.
Could not find a package configuration file provided by "libbsoncxx" with
any of the following names:
libbsoncxxConfig.cmake
libbsoncxx-config.cmake

Add the installation prefix of "libbsoncxx" to CMAKE_PREFIX_PATH or set
"libbsoncxx_DIR" to a directory containing one of the above files.  If
"libbsoncxx" provides a separate development package or SDK, be sure it has
been installed.
could anyone help?

anyone encountered similar problems？

Try building everything from source and not using the build script.
libbsoncxx is part of MongoDB, but it isn't required for the build.
http://mongoc.org/libbson/current/index.html

Getting the same on Sierra/MacOS.
Step 14/27 : RUN git clone --depth 1 -b releases/stable git://github.com/mongodb/mongo-cxx-driver     && cd mongo-cxx-driver     && cmake -H. -Bbuild -G Ninja -DCMAKE_BUILD_TYPE=Release  -DCMAKE_INSTALL_PREFIX=/usr/local    && cmake --build build --target install
 ---> Running in 39b29b7fae0e
Cloning into 'mongo-cxx-driver'...
-- The CXX compiler identification is Clang 4.0.0
-- Check for working CXX compiler: /usr/bin/clang++
-- Check for working CXX compiler: /usr/bin/clang++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- The C compiler identification is Clang 4.0.0
-- Check for working C compiler: /usr/bin/clang
-- Check for working C compiler: /usr/bin/clang -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Auto-configuring bsoncxx to use MNMLSTC for polyfills since C++17 is inactive
CMake Error at src/bsoncxx/CMakeLists.txt:81 (find_package):
  Could not find a configuration file for package "libbson-1.0" that is
  compatible with requested version "1.9.2".

  The following configuration files were considered but not accepted:

    /usr/local/lib/cmake/libbson-1.0/libbson-1.0-config.cmake, version: 1.8.0

-- Configuring incomplete, errors occurred!
See also "/mongo-cxx-driver/build/CMakeFiles/CMakeOutput.log".
The command '/bin/sh -c git clone --depth 1 -b releases/stable git://github.com/mongodb/mongo-cxx-driver     && cd mongo-cxx-driver     && cmake -H. -Bbuild -G Ninja -DCMAKE_BUILD_TYPE=Release  -DCMAKE_INSTALL_PREFIX=/usr/local    && cmake --build build --target install' returned a non-zero code: 1

same issue. Looking forward to a solution!

Thanks a lot for the detailed set of commands. Any idea what this could be?
 cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local ..
-- Auto-configuring bsoncxx to use MNMLSTC for polyfills since C++17 is inactive
CMake Error at src/mongocxx/CMakeLists.txt:37 (find_package):
  By not providing "Findlibmongoc-1.0.cmake" in CMAKE_MODULE_PATH this
  project has asked CMake to find a package configuration file provided by
  "libmongoc-1.0", but CMake did not find one.

  Could not find a package configuration file provided by "libmongoc-1.0"
  (requested version 1.9.2) with any of the following names:

    libmongoc-1.0Config.cmake
    libmongoc-1.0-config.cmake

  Add the installation prefix of "libmongoc-1.0" to CMAKE_PREFIX_PATH or set
  "libmongoc-1.0_DIR" to a directory containing one of the above files.  If
  "libmongoc-1.0" provides a separate development package or SDK, be sure it
  has been installed.

-- Configuring incomplete, errors occurred!

Thanks a lot for that. Your comment with running eosio_build.sh helped the most, since I then realised I did not pull from the eos repo for 4 months. Gets a lot further now, but cmake still fails, yet I think not subject to this issue.


Fixes typo in README.md

Tiny typo in the readme

You wouldn't believe how many times that happened so far.  Thanks for the sharp eyes.

Yup yup, you bet ^__^


Allow --patients to consume text files with IDs in it

This allows --patients to be passed either an NDJSON file (and I also had it scan for JSON Lines files whynot) or a text file that it will scan for one ID per line.
This is helpful when you have a non-Group-based cohort that you want to crawl.
I also added a commit to drop the old typescript config file, since I personally found it confusing to have both in the repo still. But if you want me to keep that file going, happy to add it back.

Code changes look great! However, I don't understand why the example config had to be removed. Its purpose is to help first-time users get started quickly by copying it and then modifying it as needed. That is also explained in the README. I think you will have to restore it, unless you have better idea of how this can be done.

However, I don't understand why the example config had to be removed.

Your confusion is a perfect example of why that file should be removed. I deleted the old v1 config (./config/example-config.ts) not the modern recommended configuration file (./example-config.js). Having both is confusing, especially since we don't really support the v1 format.

Oh yes! I can't remember how I've ended up with two files 👍
Can you also remove this line and it should be ready to merge

Can you also remove this line and it should be ready to merge

Done :+1: (arguably, the config/* line could also go, since that's no longer a folder we ship/encourage anyone to use, but it's harmless)

Yeah..., I am using ./config/ to store my private config files. I recommend people use a folder outside the project to avoid adding secrets to git, but I don't follow my own example because it is slightly less messy this way (easier to find things after you've forgotten what goes where...). So lets just keep that for now. Thanks!


Add OVS flows for implementing Egress

Add flows that set pkt_mark for egress traffic that should be SNAT'd
using a SNAT IP, including egress traffic from a local Pod to which the
Egress is applied, and traffic from a remote Node that is tunnelled to
the egress Node with the SNAT IP.
Each SNAT IP on the Node will be allocated with a unique integer ID,
which is set to the pkt_mark, and so the SNAT implementation can look
up the right SNAT IP from the pkt_mark. On Linux, SNAT will be
implemented by iptables SNAT rules; on Windows, SNAT is implemented
by OVS NAT.
#1924

Codecov Report

Merging #1969 (f20ba30) into main (fcd5070) will decrease coverage by 9.95%.
The diff coverage is 23.91%.

@@            Coverage Diff             @@
##             main    #1969      +/-   ##
==========================================
- Coverage   65.05%   55.09%   -9.96%
==========================================
  Files         195      195
  Lines       16882    17106     +224
==========================================
- Hits        10983     9425    -1558
- Misses       4729     6657    +1928
+ Partials     1170     1024     -146

Flag
Coverage Δ

kind-e2e-tests
36.70% <17.39%> (-19.24%)
:arrow_down:

unit-tests
41.44% <6.52%> (-0.41%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

pkg/agent/openflow/pipeline_other.go
50.00% <0.00%> (-16.67%)
:arrow_down:

pkg/ovs/openflow/ofctrl_action.go
36.05% <0.00%> (-11.80%)
:arrow_down:

pkg/ovs/openflow/ofctrl_builder.go
50.32% <0.00%> (-7.39%)
:arrow_down:

pkg/agent/openflow/pipeline.go
53.15% <15.78%> (-19.62%)
:arrow_down:

pkg/agent/openflow/client.go
44.41% <42.10%> (-20.93%)
:arrow_down:

pkg/agent/proxy/metrics/metrics.go
0.00% <0.00%> (-100.00%)
:arrow_down:

pkg/agent/proxy/types/groupcounter.go
0.00% <0.00%> (-95.24%)
:arrow_down:

pkg/apis/controlplane/helper.go
25.00% <0.00%> (-75.00%)
:arrow_down:

pkg/apis/controlplane/v1beta2/helper.go
25.00% <0.00%> (-75.00%)
:arrow_down:

pkg/controller/networkpolicy/mutate.go
0.00% <0.00%> (-71.77%)
:arrow_down:

... and 55 more

/test-all


github_secrets.py is added

Issue Description:
The problem initially was that the GITHUB_API_TOKEN and USERNAME variables were hard-coded into the github_secrets.py file. This means that anyone who had access to the file would be able to see the GitHub personal access token and username.
To fix this problem, I suggested changing the GITHUB_API_TOKEN and USERNAME variables to environment variables. This means that the GitHub personal access token and username would be stored in the environment and not in the file. This makes the code more secure because only the people who have access to the environment variables will be able to see the GitHub personal access token and username.
I also suggested adding comments to the code to explain what each line does. This makes the code easier to read and understand.
Finally, I suggested indenting the code by four spaces. This makes the code easier to read and understand. Moreover the github_secrets.py was missing
Expected Behavior:
The new changed code would get the GitHub personal access token and username from the environment, instead of hard-coding them into the file. This makes the code more secure because only the people who have access to the environment variables will be able to see the GitHub personal access token and username.
The code would also print the GitHub personal access token and username to the console. This is useful for debugging purposes.
Current Behavior:
If we don't implement the changes I suggested, then the GITHUB_API_TOKEN and USERNAME variables would still be hard-coded into the github_secrets.py file. This means that anyone who had access to the file would be able to see the GitHub personal access token and username.
This would be a security risk because anyone who could access the file could use the GitHub personal access token and username to access your GitHub account. They could then use your account to make changes to your repositories, create new repositories, or delete repositories.
In addition, if the file were to be leaked or compromised, anyone who could access it would be able to see your GitHub personal access token and username. This could be used to impersonate you on GitHub or to steal your identity.
Therefore, it is important to implement the changes I suggested to make the code more secure.
Labels:
new file added

i have done the PR for this already

link the PRs please.


RSA very slow, takes 11ms in release

Hello, I noticed that RSA key generation takes a long time, Like the README says release build do reduce the time, But 11ms for a 1024 Key is still a lot. I would love if there where some efforts going on to reduce generation time

When #394 lands we will switch to crypto-primes. I would expect that to be faster but haven't benchmarked myself yet.

maybe related: https://github.com/RustCrypto/RSA/issues/29 (cannot say much otherwise, only read that and remember that old issue i also ran into that time :)

this is a test with --profile release:

Unfortunately the generation is 10x times slower than C implementation (openssl)

The current crypto-primes branch has a rough slow down of 2x last time I benchmarked, see the PR for a description of why

I don't see the Slower benchmarks, In the PR description are only a bunch of checkboxes.
I also wonder what the point of this PR is when it comes 2 times slower

I also wonder what the point of this PR is when it comes 2 times slower

Security: https://github.com/RustCrypto/RSA/issues/19

@dignifiedquire they've recently added a number of improvements including parallel prime generation which haven't made it into a release yet.
Also, this seems relevant https://github.com/entropyxyz/crypto-primes/issues/61

Glad to hear that, the slowdown I was referring to was not key generation but signing & verification operations

@tarcieri, relevant in what way? We're thinking now in what way it should be exposed, so it's useful to know potential use cases.

@fjarri I was curious if it could be used to ensure certain properties of the generated primes, like non-adjacency of p and q, and ensuring the high bits are set so the bit lengths of the primes, when added, are always the intended key size

like non-adjacency of p and q,

That's probably best ensured by just starting the search from random positions for either?

and ensuring the high bits are set so the bit lengths of the primes, when added, are always the intended key size

This is already the case by default. Perhaps it should be stated clearly in the docs.


Typos to be corrected

"bother" is supposed to be 'both'
"Cchoose" is another typo.
Please find it in https://workshop.serverlesscoffee.com/3-web-apps/3-frontends/1-displayapp.html

Merged - thanks!


Adds serialization microbenchmark

This patch adds microbenchmarks covering

Encoding/decoding
binary & cereal
blocks and transactions

For blocks, I chose a few recent blocks at random.  Same with transactions.

Benchmark results: master_bench.txt
Generally cereal has worse performance than binary for these examples.

I see no reason we can't merge this immediately.


[Bug] TuneFul Crashes if Spotify app is not installed

[macOS 15.2, MacBook Pro M3 Pro]
Tuneful app crashes on launch. Installing Spotify fixes the issue.

^ This line gets the "Fatal error: Unexpectedly found nil while unwrapping an Optional value" when running without Spotify installed

Fixed in the new release, thanks for pointing this out!

Fixed in the new release, thanks for pointing this out!

Thank you! Great app you've got, keep up the good work! ❤


no such table: A

Hi,
I got crash logs from the Google Play Store telling me this:
Caused by: android.database.sqlite.SQLiteException: no such table: A (code 1): , while compiling: SELECT * FROM A WHERE pathlocal <> '' ORDER BY ID DESC
at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:889)
at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:500)
at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588)
at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:58)
at android.database.sqlite.SQLiteQuery.<init>(SQLiteQuery.java:37)
at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:44)
at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1316)
at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1255)

And indeed there is no table A. Sugar ORM runs fine on my test devices. An alpha user got this after updating from play store.
Any guesses where the A comes from?

Ah, wait a second, I think it's due to proguard obfuscating stuff - let me check that.

Okay, I added -keep class my.package.DbModel to my proguard file and now I get a different error message:
Caused by: android.database.sqlite.SQLiteException: duplicate column name: B (code 1): , while compiling: CREATE TABLE DbModel

So I guess it's proguard.
@satyan you should add proguard settings to the wiki/docs
PS: actual model name replaced

Now I'm trying with
-keepnames class de.berlitec.infinisee.database.DbModel {
    *;
}
-keepclassmembernames class de.berlitec.infinisee.database.DbModel {
    *;
}

did this work for you ? I still get the error

This worked for me -
-keep class my.package.DbModel { *; }

Keep wasn't enough for me - still got crashes. Seems to work w/ keepnames

@black-snow What was your final config?

@DVassilev the one mentioned above worked for me

proguard related issues


Bump vertx

Checklist

[ ] You added tests to cover the change
[ ] mvn clean install build and test completes
[ ] You changed or added to the documentation

Codecov Report

Merging #131 (bb073f2) into main (60289d8) will increase coverage by 0.05%.
The diff coverage is 62.50%.

@@             Coverage Diff              @@
##               main     #131      +/-   ##
============================================
+ Coverage     64.45%   64.51%   +0.05%
- Complexity      189      191       +2
============================================
  Files           112      113       +1
  Lines          2937     2939       +2
  Branches        444      444
============================================
+ Hits           1893     1896       +3
+ Misses          824      822       -2
- Partials        220      221       +1

Impacted Files
Coverage Δ

...src/main/kotlin/net/adoptopenjdk/api/v3/Startup.kt
57.14% <57.14%> (ø)

...tend/src/main/kotlin/net/adoptopenjdk/api/v3/V3.kt
100.00% <100.00%> (+66.66%)
:arrow_up:

Continue to review full report at Codecov.

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


Simplify JDBC tests

Simplify JDBC unit tests and use database in embedded mode (same JVM) rather than relying on setting up an external database.  Unit tests should not have external dependencies to a database.	 Currently, JDBC tests are broken due to the requirement to run an external postgres SQL.  In addition, SQL tests should not test settings, the test for settings should be a simpler, separate test.  SQL tests and JDBC settings tests were all combined into this test, and bloated the test code making it hard to reason about.  Also, JDBC tests were not vendor agnostic and failed due to vendor specific named parameter(s), such as user / username.

Hi @maddapper ! Thank you for your contribution and sorry for long response.
Seems our units-tests are not relied on external DB since we're using in memory DB: JDBC_URL = "jdbc:h2:mem:test"
But you've added Spring implementation: org.springframework.jdbc.datasource.embedded.EmbeddedDatabase
Does it have any advantages comparing to using h2 directly ?

@rpanchyk unfortunately h2 didn't work in my local env because I have a username and password set.  The username key is just user instead of username, so authentication always fails, and therefore the tests do not pass.

But org.springframework.jdbc.datasource.embedded.EmbeddedDatabase is just a wrapper around H2. It works with H2 as usual.
I've forked you version of PBS locally and noticed something interesting.
Seems private static EmbeddedDatabase db; is not used in tests entirely.
May you please try to remove it and see the result?
So, from my view i don't the reason why we need to add one more dependency.

This PR is suboptimal and adds unnecessary dependency. Closing it. Please open new if necessary.


Extended/Included/Initialized Callback?

I saw this issue was closed:
https://github.com/jashkenas/coffee-script/issues/867
Having something like that would solve the following edge case:
When you have ParentClass and ChildClass extends ParentClass, and you have a "class attribute" on ParentClass, changing the value of that class attribute on either ParentClass or ChildClass will effect both.  This is only for arrays and objects it seems.
I see how that's expected behavior, but I want to be able to initialize a class variable for each sub class.  Can I already do that with CoffeeScript?
Here's the example showing what currently happens:

specialProperties = ['included', 'extended', 'prototype']

class Base
  @extend: (object) ->
    for key, value of object when key not in specialProperties
      @[key] = value
    @

SomeModule =
  overriddenClassProperty: ["I'll be manually overridden in subclass"]
  nonOverriddenClassProperty: ["I won't be overridden!"]

class User extends Base
  @extend SomeModule

class Admin extends User
  @overriddenClassProperty: ["been overridden"]

User.nonOverriddenClassProperty.push "I'm the same..."
Admin.nonOverriddenClassProperty.push "Still the same..."

console.log User.name + ": " + User.overriddenClassProperty.join(" ")
# User: I'll be manually overridden in subclass
console.log Admin.name + ": " + Admin.overriddenClassProperty.join(" ")
# Admin: been overridden
console.log User.name + ": " + User.nonOverriddenClassProperty.join(" ")
# User: I won't be overridden! I'm the same... Still the same...
console.log Admin.name + ": " + Admin.nonOverriddenClassProperty.join(" ")
# Admin: I won't be overridden! I'm the same... Still the same…

Here's what I'd like to be able to do:

specialProperties = ['included', 'extended', 'prototype']

class Base
  @extend: (object) ->
    for key, value of object when key not in specialProperties
      @[key] = value

    if extended = object.extended
      @extendedCallbacks.push extended
      extended.apply(@)

    @

  # something like this built in...
  @extended: ->
    for callback in @extendedCallbacks
      callback.apply(@)

SomeModule =
  overriddenClassProperty: ["I'll be manually overridden in subclass"]

  extended: ->
    @extendedOverriddenClassProperty = ["Awesome! I was overridden!"]

class User extends Base
  @extend SomeModule

class Admin extends User
  @overriddenClassProperty: ["been overridden"]

User.extendedOverriddenClassProperty.push "I'm for the User..."
Admin.extendedOverriddenClassProperty.push "I'm for the Admin..."

 I was overridden! I'm for the User
console.log Admin.name + ": " + Admin.extendedOverriddenClassProperty.join(" ")
# Admin: Awesome! I was overridden! I'm for the Admin

Does this exist, or is this something that could be added?
Currently, the only way around this is to wrap class variables like this in functions:
SomeModule =
  someClassAttribute: ->
    @_someClassAttribute ||= []

Adding a built in extended hook something like above would make it so I could write them as:
SomeModule =
  someClassAttribute: []

…which, more importantly, I can invoke them as SomeClass.someClassAttribute instead of SomeClass.someClassAttribute(), which provides the following benefits:

Simplifies the API on the class
Improves performance (however slightly) because you're not invoking a function, and you're only creating one attribute instead of two.
Makes inspecting the attributes in the web inspector/console much easier, I see someClassAttribute: ["item a"] instead of someClassAttribute: function () { … and somewhere else in the prototype chain _someClassAttribute: ["item a"].

Initialized Callback
It would also be very helpful to have an initialized callback that the compiler injects into the constructor of every class.  This way you could write "modules" and have them append code to the constructor without having to mess with the prototype chain.  If you could solve it so it added the module to the prototype chain, that would be amazing, but the following would work as well.
AttributeChangesModule =
  initialize: ->
    @changes = {}

class User
  constructor: (attr = {}) ->
    @attributes = {}
    @attributes[key] = value for key, value of attr

class Admin extends User
  @extend AttributeChangesModule

# so you could use it like this:
user = new User
console.log user.changes #=> undefined

admin = new Admin
console.log admin.changes #=> {}

The only way to do this would be to change the generated code:
// currently generated code
var Admin, User;

var __hasProp = Object.prototype.hasOwnProperty, __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor; child.__super__ = parent.prototype; return child; };

User = (function() {
  function User() {}
  return User;
})();

Admin = (function() {
  __extends(Admin, User);
  function Admin() {
    Admin.__super__.constructor.apply(this, arguments);
  }
  return Admin;
})();

// proposed generated code
// has hooks for `extended` and `initialized`
var Admin, User;

var __hasProp = Object.prototype.hasOwnProperty;
var __extends = function (child, parent) {
  for (var key in parent) {
    if (__hasProp.call(parent, key)) child[key] = parent[key];
  }

  // extended callback
  if (typeof(parent.extended) == "function")
    parent.extended.call(child)

  function ctor() {
    this.constructor = child;
  }

  ctor.prototype = parent.prototype;
  child.prototype = new ctor;
  child.__super__ = parent.prototype;
  return child;
};

User = (function() {
  function User() {}
  return User;
})();

Admin = (function() {
  __extends(Admin, User);
  function Admin() {
    Admin.__super__.constructor.apply(this, arguments);
    if (User.initialized)
      User.initialized.apply(this, arguments)
  }
  return Admin;
})();

A complete, robust solution would be having the super implementation closer to Resig's Class implementation.
http://ejohn.org/blog/simple-javascript-inheritance/
Using that implementation, the generated code could leave out the parent.extended.call(child) code, and you could simply call _super? on ANY method.  If you added 3 modules to a class, each of which had a method like someMethod: -> super?, and in the class you called someMethod: -> super, it would call that method on all of the modules.  That is not possible in coffeescript right now, from my knowledge.
Here's the comparison to CoffeeScript:
// coffeescript's generated code for copying properties
for (var key in parent) {
  if (__hasProp.call(parent, key)) child[key] = parent[key];
}

// a more robust version, from resig
for (var name in prop) {
  // Check if we're overwriting an existing function
  prototype[name] = typeof prop[name] == "function" &&
    typeof _super[name] == "function" && fnTest.test(prop[name]) ?
    (function(name, fn){
      return function() {
        var tmp = this._super;

        // Add a new ._super() method that is the same method
        // but on the super-class
        this._super = _super[name];

        // The method only need to be bound temporarily, so we
        // remove it when we're done executing
        var ret = fn.apply(this, arguments);
        this._super = tmp;

        return ret;
      };
    })(name, prop[name]) :
    prop[name];
}

By having that implementation, if you extend some class with 3 modules, all of which have an extended and included function, you could call super conditionally.
ModuleA =
  extended: ->
    # if (this._super != null)
    #   this._super.apply(this, arguments)
    super?
    console.log "ModuleA!"

ModuleB =
  extended: ->
    # this._super.apply(this, arguments)
    super
    console.log "ModuleB!"

class User extends Base
  @extend ModuleA
  @extend ModuleB

User.extended()
# "ModuleA!"
# "ModuleB!"

Likewise, if this was injected into the constructor function, adding to the constructor function would be EASY from modules:
class Base
  constructor: ->
    console.log "Base initialized!"

ModuleA =
  initialize: ->
    super?
    console.log "ModuleA initialized!"

ModuleB =
  initialize: ->
    super
    console.log "ModuleB initialized!"

class User extends Base
  @extend ModuleA
  @extend ModuleB

  constructor: ->
    super
    console.log "User initialized!"

user = new User
# "Base initialized!"
# "User initialized!"
# "ModuleA initialized!"
# "ModuleB initialized!"

Having that would help so much.  Specifically, it is currently impossible to extend the inheritance chain using CoffeeScript's class construct, unless you call super somewhere:
With this code below, I have no way of extending the User constructor with composition
class User
class Admin extends User

because the generated code has no hooks:
User = (function() {
  function User() {} // nothing to hook into
  return User;
})();

Admin = (function() {
  __extends(Admin, User);
  function Admin() {
    Admin.__super__.constructor.apply(this, arguments);
  }
  return Admin;
})();

A hack I've been having to use requires writing modules as functions instead of objects, implementing a custom @extend class method that's basically like __extends, and calling the constructor function with super in all of them:
class SomeModule
  constructor: -> super

class User extends Base
  # __extend User, SomeModule
  @extend SomeModule

class Admin extends User

As you can see, to make that work right, I have to modify the prototype chain in ways I haven't even fully figured out how to do correctly.  But, doing it like this is the only workaround I've found -- making sure TheClass.__super__.constructor.apply(this, arguments); is called in every module.
Implementing it something like John Resig's version seems like it would solve all of these problems.  What do you think?  I know that was a crazy long post, but this is the one thing about CoffeeScript that's really missing to enable full power.  I feel like there's a huge wall of stuff I can't do in CoffeeScript without this.

As a side note, I don't feel like this is anything like syntactic sugar or the things discussed on the FAQ.
https://github.com/jashkenas/coffee-script/wiki/FAQ
I'm totally cool with implementing my own extended method that implements module functionality, that makes sense.  It's just that not having a hook in the constructor, and not having super call something like this._super instead of HardcodedClass.__super__, makes it so I can't even use the Composition pattern in any real way beyond copying properties from one object to another, since that copying code is in the hidden __extends method.


Distinguish between insecure and tis-verify

The insecure option for oras.registry sets the transport protocol. The default behaviour of other projects which interact with registries (ores-cli, podman,....),  differenciate between transport protocol and trust for connections to registries.
To avoid breaking changes, the parameter insecure sets the transport protocol ans the new parameter tls_verify sets verification on CA Trust.

Yes, there is a different between a registry listening with plain http  and listening on https with https but not a valid Crt.
I don't append the port for plain http  the client try to connect to port 80 and on https on port 443. Best practice configuration for the registry/loadbalancer/webserver is to redirect from port 80 to 443 with a rewrite from http to https.
But if you only expose Port 443 and you want to connect to an insecure registry you will not be able to connect with the current behaviour.  I will extend the changelog and bump the Version.

I think you missed my question about the client - could we please expose the parameter here along with insecure? https://github.com/oras-project/oras-py/blob/0f331fb11e5eb852fd8653009f650ede7094aa91/oras/client.py#L32

The docker client will skip the tis verification if tis_verify is set. On Plain http registries tis_verify has no effect.


[SPARK-9294][SQL] cleanup comments, code style, naming typo for the new aggregation

fix some comments and code style for https://github.com/apache/spark/pull/7458

cc @yhuai

Merged build triggered.

Merged build started.

Test build #38235 has started for   PR 7619 at commit 26f6a93.

@cloud-fan Thanks! How about we create a sub-task under SPARK-4366 for this clean up work?

@cloud-fan btw, can you help me add one more change in the PR? In https://github.com/apache/spark/blob/master/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala#L536, we use case other if isDistinct => to do the match. Can you change it to case other: AggregateExpression1 if isDistinct =>? I think a tighter scope for the condition is better because isDistinct is only applicable to aggregate functions.

Test build #38235 has finished for   PR 7619 at commit 26f6a93.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Merged build triggered.

Merged build started.

Test build #38296 has started for   PR 7619 at commit cc78357.

Test build #38296 has finished for   PR 7619 at commit cc78357.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Merged build triggered.

Merged build started.

Test build #38308 has started for   PR 7619 at commit 3925457.

LGTM. Thanks for the cleanup work!

Test build #38308 has finished for   PR 7619 at commit 3925457.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

I've merged this.


exception when involved from markdownload

When I try to send a page from my browser to Obsidian using markdownload, advanced URI shows this error in the console:
ncaught (in promise) DOMException: Failed to execute 'readText' on 'Clipboard': Document is not focused.
at eval (plugin:obsidian-advanced-uri:4764:53)
at t (app://obsidian.md/app.js:1:2296691)
at :1:52
at node:electron/js2c/renderer_init:2:16470
at IpcRendererInternal. (node:electron/js2c/renderer_init:2:10723)
at IpcRendererInternal.emit (node:events:519:28)
at Object.onMessage (node:electron/js2c/renderer_init:2:8837)
app.js:1 Received URL action
Object

Seems like it requires the app to be focused for the clipboard's content to be accessed. Shouldn't the launch of the uri focus the app? I haven't used markdownload, though.

I have the same issue.
I can reproduce using a uri like:
obsidian://advanced-uri?vault=Myvault&clipboard=true&mode=new&filepath=90 - Web Clippings/test.md

This is the uri that markdownload is triggering
If I remove the clipboard query parameter the page gets created (without content as expected, but without errors).


Refactor Ad Insertion for One Column Layouts

Trello:
https://trello.com/c/hEnQeQ1l/1812-update-one-column-ad-logic

Coverage decreased (-0.08%) to 99.921% when pulling f66b9524c2fb70d21a08348cc3368ca48533fd1e on ad-refactor into 4b40df82d18d7297b61eaae6d0c57850aeb67e1e on master.

Coverage decreased (-0.08%) to 99.921% when pulling f66b9524c2fb70d21a08348cc3368ca48533fd1e on ad-refactor into 4b40df82d18d7297b61eaae6d0c57850aeb67e1e on master.

👍

thanks guys! @reubenson @vicfriedman


tab transition on High Sierra fails

On High Sierra, I get this when I switch tabs:
*** Assertion failure in -[Preferences.PreferencesTabViewController transitionFromViewController:toViewController:options:completionHandler:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/AppKit/AppKit-1561.60.100/Controllers/NSViewController.m:925

Am investigating!

Ok, so

PreferencesExample produces the error,
my app "Move!" produces the error,
my apps "WordCounter", "TableFlip", and "The Archive" don't

All use the latest commit from master. (adde4ea09fe9c9d85b74d4b10dc4a59ade559783)

Looks like the cross-fading animation is the culprit. For some reason I seem to have figured this out in some of my apps ... :)
if #available(macOS 10.14, *) {
    crossfadeTransitions = true
} else {
    crossfadeTransitions = false
}

Will open a PR with a fix!


Update ocp-indent Homepage

Former version points to http://typerex.ocamlpro.com/ocp-indent.html, which does not resolve
Description of changes
Fixes homepage for ocamlPackages.ocp-indent
Things done

Built on platform(s): not applicable

What about this URL: https://www.typerex.org/ocp-indent.html?

Closed by #212335 on master.


Absorbing of single child sections

Hello! I want to propose an update to API. Currently when MorphIO merges single child section into parent, user receives only a print warning message of WARNING_ONLY_CHILD. Shouldn't user receive en exception with the section being deleted and its parent section that absorbs it? Or provide a mapping between deleted sections and their new sections?

I see now there are some annotations. Can it be done via them?

Also lets look at this morphology. The section 5-6 will be merged with the section 4-5. My question shouldn't this merge happen only when the section 5-6 is a continuation of the section 4-5? I mean that they both make a single line. It seems logical for them to be different sections as they form an angle and emphasize the fact that morphology bends there.

A section is a chain, the vertices of which have a degree which exactly 2 apart from their start and end vertices that are either forks (degree > 2) or terminations (degree = 1). It's not a geometric classification of the tree, but a topological one. Having consecutive non-branching sections will break most tools that rely on this topological convention / definition.
Morphologies using the section representation should either not have them or should be curated to a valid structural representation. However, a mapping of the collapsing in the morphologies that do have that issue would be useful indeed.

As discussed in the past (there is a ticket from you @eleftherioszisis somewhere about this but I can't find it), I will provide a mapper in morph-tool but not from section ID to section ID but from coordinate to section ID. This way, it is much more generic and can be used in multiple use cases.

As agreed at the meeting this won't solve simplification problems because there are morphologies directly from NEURON simulator and it won't help much to reindexing because it does not take too much code to implement it there.


New version: DelineaInc.ThycoticLocalSecurityAgent version 11.4.3235

Pull request has been created with Komac v1.9.1 :rocket:
Microsoft Reviewers: Open in CodeFlow

@wingetbot run

Automatic Validation ended with:

2024-02-22T16:18:55.5259827Z ##[error] One or more errors occurred. (SQL error or missing database (0x87AF0001)) SQL error or missing database (0x87AF0001)

(Automated response - build 795.)

Hi @jnichols35,
This installer claims to have successfully installed the software package, but there appear to be no changes to the file system. Is this expected? Or is a dependency missing?

@stephengillie That's odd, normally I think it deploys a powershell file or something like that, previous versions I created PR's for this pkg had Add Validation-No-Executables added to them. Not sure if that helps.

I had to review the installer log file to find them. Somehow, they didn't get added to the file system until 2 seconds after WinGet exited.

@wingetbot waivers Add Validation-No-Executables


Bugfix/dynamic spec url change

This PR belong to fix of issue #377
The fix is made for right state of URL and selectedContentId. The other issue is anyways get addressed by this fix.
Please review and share your views on it.

Thanks for your PR !!!


[Coverity CID: 182584] Integer handling issues in /kernel/sched.c

Static code scan issues seen in File: /kernel/sched.c
Category: Integer handling issues
Function: _impl_k_thread_priority_set
Component: Kernel
CID: 182584
Please fix or provide comments to square it off in coverity in the link: https://scan9.coverity.com/reports.htm#v32951/p12996

The coverity site is inaccessible and I am completely blocked

false positive


Use ghc8102-experimental from haskell.nix

Split out from #2275

So concretely, this should fix the unboxed tuple issue, and let us experiment with the core interface files patch?

So concretely, this should fix the unboxed tuple issue, and let us experiment with the core interface files patch?

Yes.  The patch for unboxed tuple issue is in compiler-nix-name = "ghc8102" now too.

I'm planning to get back to this soon. Hopefully will get https://github.com/input-output-hk/plutus/pull/2438 in, then this.

Other PR is blocked, rebasing this and will merge when green.

Uh oh, this breaks ghcide.
src/Development/IDE/Core/Compile.hs:198:38: error:
    • Couldn't match type ‘IO PartialModIface’
                     with ‘ModIface_ 'HscTypes.ModIfaceCore’
      Expected type: PartialModIface
        Actual type: IO PartialModIface
    • In the second argument of ‘mkFullIface’, namely ‘partial_iface’
      In a stmt of a 'do' block:
        final_iface <- mkFullIface session partial_iface
      In the second argument of ‘($)’, namely
        ‘do let session = ...
                ms = pm_mod_summary $ tmrParsed tcm
            (guts, details) <- tidyProgram session simplified_guts
            let genLinkable = ...
            (diags, linkable) <- genLinkable session ms guts
            ....’
    |
198 |   final_iface <- mkFullIface session partial_iface
    |                                      ^^^^^^^^^^^^^

probably because they now do stuff with interface files. We can build it with a normal GHC, but then I fear they're going to disagree over what interface files should look like which might be bad...

Going to try patching ghcide to mirror what we do in GHC.

Seems to work \o/

Trying to build the project with cabal in the shell after this I get segfaults:
cabal: Failed to build ListLike-4.7.2 (which is required by
shelley-spec-ledger-test-<IP_ADDRESS> and test:shelley-spec-ledger-test from
shelley-spec-ledger-<IP_ADDRESS>). The build process segfaulted (i.e. SIGSEGV).
Failed to build goblins-<IP_ADDRESS> (which is required by
shelley-spec-ledger-test-<IP_ADDRESS>, test:shelley-spec-ledger-test from
shelley-spec-ledger-<IP_ADDRESS> and others). The build process segfaulted (i.e.
SIGSEGV).

This is using a cabal built with the right compiler, so I don't think it's that.

Seems to reliably die on ListLike.

I can't seem to reproduce this with cabal build test:shelley-spec-ledger-test in a nix-shell on darwin.  I wonder though if we need to give this a ghc a new version (<IP_ADDRESS> or something) to separate the -experimental files from the non experimental ones in ~/.cabal/store/ghc-8.10.2.  Can you please try moving ~/.cabal/store/ghc-8.10.2 out of the way or just deleting it to see if that helps?

Apparently @luite thinks this might be the unboxed tuples patch, so we should probably just back that out.

Ah, I didn't think about cleaning the global store, I'll try that.

Nope, that didn't help:
``
ghc: panic! (the 'impossible' happened)
(GHC version 8.10.2:
Ix{Int}.index: Index (87) out of range ((0,0))
Please report this as a GHC bug:  https://www.haskell.org/ghc/reportabug
while building `Win32` something.

I can't reproduce the ListLike crash with my GHC 8.10 with (just) the tuples patch (on my devel2 compiler: more assertions but the compiler itself is not built with optimization).
The Index of out range panic makes me think that it's either reading incompatible interface files or something with the extensible interfaces patch (perhaps add a build tag in addition to the version number to keep the files separate)
To rule out (or in) tuples: Revert the module GHC.Driver.Make to what's in upstream GHC to prevent it from running unboxed tuples in bytecode where upstream would have used upstream code. Ping me if that prevents the crash.

Yeah, it seems like the segfault was probably due to stuff in the store being incompatible.

while building Win32 something.

What is a good way to reproduce this issue?

Check out this branch in Plutus, open a nix-shell and cabal build anything. I think just cabal build plutus-core will do, I think it's one of its dependencies that depends on win32, but there's always cabal build all. I would need to fiddle with my store again to get it more precisely, will do later if you haven't got a reproducer!

I tested on linux this time.  It took a while to build, but seemed to work ok
...
$ cabal build all
Up to date
$ find . -name '*Win32*'
./dist-newstyle/src/ouroboros_-e7dffa0d85e2839/Win32-network
./dist-newstyle/src/ouroboros_-e7dffa0d85e2839/Win32-network/include/Win32-network.h
./dist-newstyle/src/ouroboros_-e7dffa0d85e2839/Win32-network/src/System/Win32
./dist-newstyle/src/ouroboros_-e7dffa0d85e2839/Win32-network/Win32-network.cabal
./dist-newstyle/build/x86_64-linux/ghc-8.10.2/Win32-network-<IP_ADDRESS>
./dist-newstyle/build/x86_64-linux/ghc-8.10.2/Win32-network-<IP_ADDRESS>/build/libHSWin32-network-<IP_ADDRESS>-inplace.a
./dist-newstyle/build/x86_64-linux/ghc-8.10.2/Win32-network-<IP_ADDRESS>/build/libHSWin32-network-<IP_ADDRESS>-inplace-ghc8.10.2.so
./dist-newstyle/build/x86_64-linux/ghc-8.10.2/Win32-network-<IP_ADDRESS>/build/autogen/Paths_Win32_network.hs
./dist-newstyle/build/x86_64-linux/ghc-8.10.2/Win32-network-<IP_ADDRESS>/x/named-pipe-demo/build/named-pipe-demo/autogen/Paths_Win32_network.hs
./dist-newstyle/packagedb/ghc-8.10.2/Win32-network-<IP_ADDRESS>-inplace.conf

Huh. I guess maybe I should try deleting more of the store? I'll try cleaning it out more and see if I can get it to work...

But perhaps the patched GHC should report itself as being a different version, that might help avoid confusing interface files etc. in this way. It seems like various weird stuff can happen if you do that.

Okay: it looks like if I move aside the store dir and completely destroy dist-newstyle, then it works!

So I'm worried that if e.g. I work on some other project that is using GHC 8.10 and use cabal locally on it, then between that and Plutus I'll end up constantly breaking the store, which would be quite annoying. Having to clean the local state is fine, but having to clean cabal's global state regularly is less fine.

Updated to incorporate input-output-hk/haskell.nix#927

error: assertion ((final).buildPackages.haskell-nix.compiler."${compiler-nix-name'}".version == (final).buildPackages.haskell-nix.compiler."${(((plan-pkgs).pkgs  hackage)).compiler.nix-name}".version) failed at /nix/store/cf4ksa58yibwkmx2z83y7qd9zwpyjwmy-haskell.nix-src/overlays/haskell.nix:168:15

@hamishmack

I got that locally, it seems to be hitting the plan hash mismatches first on hydra.

Can't reproduce the assertion failure any more, that's good I guess!

Works on Hydra, works locally, doesn't break my Cabal store... let's do it!

YAY!


Make sure all mDNS entries will be handled

Fixes #43
This fixes an issue if mDNS entries are found very quickly and the reporting callback wasn’t setup yet, the system wouldn’t initiate a connection to the found service.

coverage: 93.005% (-0.04%) from 93.043%
when pulling f4eb5bde038ee1d8cf6a34eda0bd61aaf75a4921 on feature/mdns-improvement
into 69e26eb81a7723defa5a525a5a5552566bf7d333 on dev.


we want copilot

We want copilot in vscode

Closing as incomplete. Please feel free to add more information if you have any and we can re-open the issue.


ERROR! vars file vars.yml was not found

When running setup.sh ansible fails with ERROR! vars file vars.yml was not found
Running Ansible playbook...
SUDO password:
ERROR! vars file vars.yml was not found
Done!

Add
touch $REPO_PATH/vars.yml

No longer an issue


Instruction on the website are outdated for Blender 2.91

The instructions listed at the bottom of https://blenderneuron.org/download/ are incorrect for Blender 2.91 where the correct path for add-ons is: Edit > Preferences > Add-ons.

Hi @Helveg , Thanks for pointing out the issue.
Unfortunately, Blender 2.9+ introduced many changes to its Python interface, which break the current version of BlenderNEURON. I would love for BN to work with the latest version of Blender, however and me and others have discovered that it is a non-trivial amount of work to upgrade the addon to be compatible with Blender 2.9+.
There is currently no support for Blender 2.9.
As a workaround, you could import cell models into Blender 2.79b, save the .blend file, and open it in 2.9 to utilize the latest Blender features.

Hi @Helveg , Thanks for pointing out the issue.
Unfortunately, Blender 2.9+ introduced many changes to its Python interface, which break the current version of BlenderNEURON. I would love for BN to work with the latest version of Blender, however and me and others have discovered that it is a non-trivial amount of work to upgrade the addon to be compatible with Blender 2.9+.
There is currently no support for Blender 2.9.
As a workaround, you could import cell models into Blender 2.79b, save the .blend file, and open it in 2.9 to utilize the latest Blender features.

Since I might be using BlenderNEURON and am in general interested in creating a Blender framework for neuroscience could we maybe plan a call with you and the some other people you think might be interested in updating and refactoring BlenderNEURON?
I'm not a big fan of the server client approach and that NEURON is pretty tightly coupled to the blender addon. I am willing to put in the work required but in the call, could we discuss:

Updating to 2.8/2.9
Factoring out the parts that create the morphologies and animate the cells (in the end a morphology is just an acyclic graph, it could have many more applications if you don't have to go through NEURON)
Factoring out the server-client so that one could just pip install neuron into blender and go for a completely headless blender scripting approach. Maybe even do some work to factor out the NEURON parts from the communication protocol (e.g. have the NEURON part of blenderNEURON calculate the 3d points of a morphology and transmitting that instead of communicating NEURON data)

Since I might be using BlenderNEURON and am in general interested in creating a Blender framework for neuroscience could we maybe plan a call with you and the some other people you think might be interested in updating and refactoring BlenderNEURON?
I'm not a big fan of the server client approach and that NEURON is pretty tightly coupled to the blender addon. I am willing to put in the work required but in the call, could we discuss:

Updating to 2.8/2.9
Factoring out the parts that create the morphologies and animate the cells (in the end a morphology is just an acyclic graph, it could have many more applications if you don't have to go through NEURON)
Factoring out the server-client so that one could just pip install neuron into blender and go for a completely headless blender scripting approach. Maybe even do some work to factor out the NEURON parts from the communication protocol (e.g. have the NEURON part of blenderNEURON calculate the 3d points of a morphology and transmitting that instead of communicating NEURON data)

@JustasB tagging you, don't know if you receive notifications for closed issues ;)

@JustasB tagging you, don't know if you receive notifications for closed issues ;)

So this is the current situation as I understand it:

We have a blenderneuron module with the blender bootstrapping in it (could all be moved to blenderneuron.blender as long we import bl_info, register and unregister), and it starts an RCP server that asks NEURON what sections there are. Then we need to have an RCP client in NEURON that communicates the required info.
If I have can be in closer contact with you I don't think it would be that much effort to restructure it to something like this:
(My main problem now is that there is no description of the architecture, no documentation of the methods and no description of the communication protocol. I'm pretty sure you could quickly fill me in on that)
What's in dotted lines is me dreaming and tools that could be made by the community once we properly document the project:

The key changes here being that:

The Blender manipulator/controller thingy has a direct Python API that can be used directly.
The Blender RCP uses the Python API
The Blender RCP expects purely morphological and simulation data and metadata that could be provided by any simulator.
The Blender RCP expects language agnostic configuration commands

We could allow for the connecting RCP client to specify "hey these are the settings you can set on me" with a configuration metadata format, that way you could keep the fancy control of NEURON from Blender, although I don't see the usecase as well ... you have NEURON open so just control NEURON from NEURON?

And docs docs docs, especially the Python API and RCP protocol should be crystal clear. Everything in solid lines is pretty much already there it just needs to be brought out by refactoring and documentation. Just by reshuffling code we'll win: direct scripting from Blender, scripting from any simulator instead of just NEURON (although it's probably already possible to reverse engineer and make an RCP client that pretends to be neuron) and offline animation (see #16)

So this is the current situation as I understand it:

We have a blenderneuron module with the blender bootstrapping in it (could all be moved to blenderneuron.blender as long we import bl_info, register and unregister), and it starts an RCP server that asks NEURON what sections there are. Then we need to have an RCP client in NEURON that communicates the required info.
If I have can be in closer contact with you I don't think it would be that much effort to restructure it to something like this:
(My main problem now is that there is no description of the architecture, no documentation of the methods and no description of the communication protocol. I'm pretty sure you could quickly fill me in on that)
What's in dotted lines is me dreaming and tools that could be made by the community once we properly document the project:

The key changes here being that:

The Blender manipulator/controller thingy has a direct Python API that can be used directly.
The Blender RCP uses the Python API
The Blender RCP expects purely morphological and simulation data and metadata that could be provided by any simulator.
The Blender RCP expects language agnostic configuration commands

We could allow for the connecting RCP client to specify "hey these are the settings you can set on me" with a configuration metadata format, that way you could keep the fancy control of NEURON from Blender, although I don't see the usecase as well ... you have NEURON open so just control NEURON from NEURON?

And docs docs docs, especially the Python API and RCP protocol should be crystal clear. Everything in solid lines is pretty much already there it just needs to be brought out by refactoring and documentation. Just by reshuffling code we'll win: direct scripting from Blender, scripting from any simulator instead of just NEURON (although it's probably already possible to reverse engineer and make an RCP client that pretends to be neuron) and offline animation (see #16)

Hi again @Helveg , I appreciate the enthusiasm. Yes, these are good ideas. I can generally talk on the weekends 9AM-6PM EST and on weekdays before 9AM, during 12-1PM, and after 6PM. Let me know if one of these windows would work for you.

Hi again @Helveg , I appreciate the enthusiasm. Yes, these are good ideas. I can generally talk on the weekends 9AM-6PM EST and on weekdays before 9AM, during 12-1PM, and after 6PM. Let me know if one of these windows would work for you.

@JustasB How about this Sunday 12PM EST? My email is robingilbert dot deschepper at unipv dot it
We can exchange skype/set up zoom there :)

@JustasB How about this Sunday 12PM EST? My email is robingilbert dot deschepper at unipv dot it
We can exchange skype/set up zoom there :)