Plugin structure

allium-cc had an interesting structure, but I just don't think it makes much sense. I propose a new structure that's more normal:
directory structure:
/plugins
  /<unique directory name> (can be a .zip)
    /<other directory(ies)> (will be ignored by allium, but may be used by this plugin [exclusively])
    main.lua

main.lua structure
main.lua will have to have a method on_initialize that will be called by the loader. This method will be required to return a namespace id, a plugin version (semver 2.0.0 spec), and an optional human readable name. Eg:
function on_initialize()
  --<logic registering commands, threads, and the like>
  return "allium_stem", "0.1.0", "Allium Stem"
end

Future considerations

Plugins that may offer an API
Plugins that depend on other plugins (and preventing cycles)
Should plugins have a shared _G?

A more broad discussion that I think would be helpful is to take a look at allium-cc's register API. What should I keep and what should I scrap from that logic? For reference an example plugin using the allium-cc standard can be found here

An alternative:
function on_initialize()
  --<logic registering commands, threads, and the like>
  return {
    namespace = "allium_stem",
    version = "0.1.0",
    name = "Allium Stem"
  }
end

was suggested in the Fabric community discord, I do like that substantially more. Multiple returns aren't the smartest in this case.

I don't think I'm going to go with the on_initialize function. It'd make much more sense to just have the file return it.

Current prototype follows the directory structure in the initial report. The only difference is the namespace value is now just id.

Can the folder name, in theory, conflict with Cardboard (port of Bukkit API to Fabric)?

Can the folder name, in theory, conflict with Cardboard (port of Bukkit API to Fabric)?

Yeah, that was brought up by someone somewhere else. I was advised to change the directory name from plugins to scripts. The latest commit addresses that.

A totally 💩 idea, but why not calling Allium plugins "tektites"?
Not referencing Tekkit, the old jury-rig to run mods, but Tektites, a type of melted rock that have some theories of origin, from being a ordinary space rock to be return ejecta from meteorite impacts, in Earth or even in the Moon.
Well, you know... Lua... Moon in romance languages... Moon is a huge rock in space... Tekkites can be, at least partly from there too.... totally horrible concept, but...

Can the folder name, in theory, conflict with Cardboard (port of Bukkit API to Fabric)?

Yeah, that was brought up by someone somewhere else. I was advised to change the directory name from plugins to scripts. The latest commit addresses that.

That's the problem. All this generic terms, from plugins to scripts (CraftTweaker), are already taken up by other mods. And always have a small chance an user will try to use both at same time. Thats why i came up with an idea of different term.

A totally hankey idea, but why not calling Allium plugins "tektites"?
Not referencing Tekkit, the old jury-rig to run mods, but Tektites, a type of melted rock that have some theories of origin, from being a ordinary space rock to be return ejecta from meteorite impacts, in Earth or even in the Moon.
Well, you know... Lua... Moon in romance languages... Moon is a huge rock in space... Tekkites can be, at least partly from there too.... totally horrible concept, but...

:joy: that's definitely an idea. Might be me being pedantic but the word 'tektite' just doesn't roll off the tongue the same way that I think 'plugin' or 'script' does.

Can the folder name, in theory, conflict with Cardboard (port of Bukkit API to Fabric)?

Yeah, that was brought up by someone somewhere else. I was advised to change the directory name from plugins to scripts. The latest commit addresses that.

That's the problem. All this generic terms, from plugins to scripts (CraftTweaker), are already taken up by other mods. And always have a small chance an user will try to use both at same time. Thats why i came up with an idea of different term.

Hurm. That's unfortunate. I guess I could make the directory just allium.

Yeah, allium seems to be the way. If the mod name was also space-related the tektite thing could made some sense. But since it's not, is better to stick with allium for that.

Changed plugin structure again!
Now instead of returning the 3 values in a table, a json file under the name manifest.json must be provided in the same directory as main.lua. It's contents should match the old setup.

In #11 I proposed that we move the manifest.json to allium.modd.json in a directory called resources. I see myself following through on this, so any objections should speak up

Alright I think we're settled on a structure:
allium.script.json
{
  "id": "namespace_identifier",
  "version": "1.0.0",
  "name": "A full name for your script!",
  "entrypoint": "path/to/script.lua"
}

id is a unique identifier that should match the regex pattern [a-z0-9_]
verison is a version number that should match the semver 2.0 spec
name is a human readable name of your script
entrypoint defines the path to the script from within the unique directory that the entire script package resides
directory structure
using above allium.script.json as an example
/allium
  /My Basic Script
    /resources
      allium.script.json
      /assets
      /data
    /path
      /to
        script.lua

assets and data are where you'd put your resource/data pack resources for your mod, or to override minecrafts.
You can see from the note above that the entrypoint, path/to/script.lua has the same parent directory as resources: My Basic Script
IMO this is a pretty well established standard and I don't see it changing much after this. The bigger priority now is getting this established on a wiki. Time to close this!

for the plugin name, just call them "petals"
allium is a type of flower,

/allium
  /My Basic Script
    /resources
      allium.script.json
      /assets
      /data
    /path
      /to
        script.lua

IMO this structure is a kinda... confusing. I looked through some mods .jar i had in my modpack and all of them have assets and data subfolders in the root folder, and code could be also at the root as well, no need to nest it (at least the old CustomStuff 2 scripts had this same strutcutre).

IMO this structure is a kinda... confusing.

You'll be happy to hear that the structure has fundamentally changed, unlike what I said on closing this issue.
/allium
  /My Basic Script
    manifest.json
    /assets
    /data
    /path
      /to
        script.lua

for the plugin name, just call them "petals"
I like this, but I also have mixed feelings on coining a term for what is essentially, well, a script.

You'll be happy to hear that the structure has fundamentally changed, unlike what I said on closing this issue.

That's interesting.

personally I think manifest.json should use toml or yaml or an easier format like
#toml
name="A full name for your script!"
version="1.0.0"
id="namespace_identifier"
entrypoint="path/to/script.lua"

#yaml
name: A full name for your script!
version: 1.0.0
id: namespace_identifier
entrypoint: path/to/script.lua

@Merith-TK I like the idea of offering options, if you want to contribute yaml/toml manifest searching/parsing feel free to. I'm preoccupied with more pressing features at the moment. In the likely event you can't either, open a new issue so we can track it.

personally I think manifest.json should use toml or yaml or an easier format like
#toml
name="A full name for your script!"
version="1.0.0"
id="namespace_identifier"
entrypoint="path/to/script.lua"

#yaml
name: A full name for your script!
version: 1.0.0
id: namespace_identifier
entrypoint: path/to/script.lua

I think the idea here is to make scripts the most similar to regular mods as possible. Plus, like hugeblank said, the issue with parsers.

I like this, but I also have mixed feelings on coining a term for what is essentially, well, a script.

It's not just a script though. You have assets and everything else. It's a full-on plugin which just uses a lua script to control what it does.


'Max Graph Size' option does not limit size of rendered graph.

Steps to reproduce:

Create graph with following options:

Graph with 12,341 nodes will render (using Test Database)

Excuse me if I'm misunderstanding. Minimal knowledge of Neo4J and the backend in general, but as I can see the current flow counts the number of root authors that match the filter, raises an error (and returns 0 nodes) if the number exceeds the specified max graph size.
Could you use LIMIT here? To at least return the first x records.
Additionally, maybe we should make a change in the UI to highlight that the Max Graph Size option doesn't limit the total number of nodes but in fact the total number of 'root' nodes.

For some reason, graph rendering would halt if limit was set to a certain amount. This must have been a separate issue.
I think updating the UI in filter from 'Max Graph Size' -> 'Maximum Number of Root Nodes' or something more concise might not be a bad idea, just for clarity

We should use a LIMIT on the number of returned nodes as well, we just don't yet.

Could you use LIMIT here? To at least return the first x records.

I think returning data that isn't complete is confusing and maybe frustrating unless we explicitly say that the data has been truncated. I thought just returning an error would be simpler for the time being (although the error isn't displayed to users yet, it should print in the console).


Add Session abstract base class

This PR does the following:

Renames the existing Session class to AppSession.
Adds a new abstract base class named Session, from which AppSession, SessionProxy, and ExpressMockSesssion are subclasses of.
Adds a new method, Session.is_real_session(), which returns True for AppSession and SessionProxys made from an AppSession, and returns False for ExpressMockSession and SessionProxys made from one of those.

The new Session class is an abstract base class, but it may be more useful to think of it as an interface which the other classes must implement.
Most existing code which takes a Session object can remain unchanged. In most cases, when code wants a Session object, it can work with an AppSession, SessionProxy, or ExpressMockSession.

An AppSession represents a real, instantiated Shiny session for an app
An ExpressMockSession represents the fake session object that is present when rendering the UI of a Shiny Express app. Many of the methods on this class should not be called in practice, and so they will raise an exception if called.
A SessionProxy represents a Shiny module session, where the parent a Session. The parent may be an AppSession or ExpressMockSession, or another SessionProxy.

All of these must implement the various methods defined in Session.
One of the useful things about this is that Session class makes it very clear which attributes and methods are part of the interface we want to expose in AppSession and SessionProxy. The AppSession contains many other attributes and methods, but they are implementation details. With the state of the code before this PR, it was not clear which methods were meant to be part of the external interface and which were meant to be internal.
This is still a work in progress, and there are still some open questions about which methods should be part of the interface and which should not.

Notes:

The name .is_real_session() isn't great, so I'm open to other ideas.
There are a number of properties which seem like they shouldn't be part of the interface, but they are. These include _outbound_message_queues, _downloads, and _is_hidden.
There are a number of methods which have a leading underscore, which makes it seem like they should be internal -- but in practice I found that they needed to be added to the new base class because they are somewhat external-facing. For example, _send_message, _send_message_sync, _process_ui. So perhaps these should be renamed to remove the leading underscore.
Docstrings from the AppSession class should be moved to Session.

I think this is a good start. Doesn't need to be part of this PR but it strikes me that part of what makes the AppSession class feel bad is that it does a whole bunch of things that are not that related to each other, and it's all jammed together because we want them to be presented to the user in one session object. It would be nice to extract out the major pieces of functionality into separate classes, which the AppSession then instantiates and delegates.

I agree that at some point it would make sense to break it up into separate classes.


Have database.py updated on bash run

Anytime the bash 1_prepare.sh runs and sources the 0_common.sh it should also update the database.py file in the /etc/vespene/settings.d/database.py file.

If you can tell me where this logic is I can update it but just putting this here for documentation sake since it doesn't appear to update it correctly atm.
Thanks

Hey @btotharye - the database.py setup is actually done in 3_application.sh.
Let me know if that answers the question, or if not, maybe can you clarify what kind of problem you are seeing?

The issue is if I update the person in the 0 file and re-run it always had a database pw problem cause the env variable wasn’t updated in the database.py file I’ll double check again

I don't understand how that would be possible.  Let us know!

Gonna close for now will rebuild all this and will reopen if it still happens


[SPARK-12580][SQL] Remove string concatenations from usage and extended in @ExpressionDescription

Use multi-line string literals for @ExpressionDescription with // scalastyle:off line.size.limit and // scalastyle:on line.size.limit
The policy is here, as describe at https://github.com/apache/spark/pull/10488
Let's use multi-line string literals. If we have to have a line with more than 100 characters, let's use // scalastyle:off line.size.limit and // scalastyle:on line.size.limit to just bypass the line number requirement.

Test build #48462 has started for PR 10524 at commit acb422c.

@yhuai, are these changes fine with the policy that you proposed? I would appreciate it if you would check them.

Actually this line length makes it pretty annoying to view. Can't we wrap them, and just require two newlines for a real newline?

Test build #48466 has started for PR 10524 at commit 193568c.

Test build #48462 has finished for PR 10524 at commit acb422c.

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

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/48462/
Test PASSed.

Test build #48466 has finished for PR 10524 at commit 193568c.

This patch fails from timeout after a configured wait of `250m`.
This patch merges cleanly.
This patch adds no public classes.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/48466/
Test FAILed.

Merged build finished. Test FAILed.

On jenkins with scala-2.11, we can wrap once in a source file (i.e. only one string concatenation). To use more than one concatenation causes compilation error.
Is it OK to use only one string concatenation?

Jenkins, retest this please.

Test build #48490 has started for PR 10524 at commit 193568c.

Test build #48490 has finished for PR 10524 at commit 193568c.

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

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/48490/
Test PASSed.

@kiszk Can you try
"""
1st line

2nd line

3rd line
"""

and see if it works?

How about 80 characters? Let's make sure it is easy to read by users (who use describe function command) and developers (who read code).

I see. Sounds good. I will reformat them.

Test build #48670 has started for PR 10524 at commit 19bb151.

Test build #48671 has started for PR 10524 at commit f2c1094.

Test build #48670 has finished for PR 10524 at commit 19bb151.

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

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/48670/
Test PASSed.

Test build #48671 has finished for PR 10524 at commit f2c1094.

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

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/48671/
Test FAILed.

Jenkins, retest this please

Test build #48717 has started for PR 10524 at commit f2c1094.

Test build #48717 has finished for PR 10524 at commit f2c1094.

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

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/48717/
Test PASSed.

Test build #48941 has started for PR 10524 at commit 4649202.

Test build #48941 has finished for PR 10524 at commit 4649202.

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

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/48941/
Test PASSed.

thanks! Merging to master.


Patient FHIR Bundles

Problem
Hello everyone, I’m working on an academic project that utilizes GraphRAG to enhance health records chat functionality using the FHIR standard. I’m in the process of reviewing literature to gather relevant references for my project. It would be immensely helpful if you could share the FHIR bundles that were used in your research papers. This would allow me to leverage the same data and apply evaluation frameworks more effectively.
Solution
A potential solution would be to provide access to the FHIR bundles within the LLMonFHIR/Resources/Mock Patients/ directory. Currently, the available mock patient data file references Synthea-generated data:
This source file is part of the Stanford LLM on FHIR project
SPDX-FileCopyrightText: 2023 Stanford University
SPDX-License-Identifier: MIT
The mock data is generated using Synthea:
Jason Walonoski, Mark Kramer, Joseph Nichols, Andre Quina, et al., "Synthea: An approach, method, and software mechanism for generating synthetic patients and the synthetic electronic health care record," Journal of the American Medical Informatics Association, March 2018. DOI: https://doi.org/10.1093/jamia/ocx079
It would be beneficial if you could directly provide the FHIR Bundles for these mock patients.
Additional context
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct and Contributing Guidelines

@PSchmiedmayer thanks. Closing the issue.


Propose to have expect.arrayOfSize(length)

🚀 Feature Proposal
Propose to have expect.arrayOfSize(length) in addition to
https://jestjs.io/docs/en/expect#expectarraycontainingarray
Motivation
Let's say I want to test the response of a method:
const response = [{ events: [], state: 'ENDED', ...someOtherThingsIdontCare}, false, undefined]

I would like to check the length of events to be 9 and state is ENDED, but I do not care the rest keys in the response.
Currently, I could achieve by using code below:
expect(response).toEqual([
  { events: expect.any(Array), conversationState: 'ENDED' },
  false,
  undefined,
]);
expect(response[0].events).toHaveLength(9);

With expect.arrayOfSize(length), code above could be:
expect(response).toEqual([
  { events: expect.arrayOfSize(9), conversationState: 'ENDED' },
  false,
  undefined,
]);

Pitch
I think it will be a nice addition to current expect.* set

You can create your own asymmetric matcher. Currently being documented at #9810

Thanks for the link, isn't it useful if it could be included in the core matchers in https://jestjs.io/docs/en/expect#expectarraycontainingarray?

The ones we have today are ported from jasmine: https://jasmine.github.io/api/edge/jasmine. We're not really interested in adding any more.
Your suggestion already exist in jest-extended: https://github.com/jest-community/jest-extended/blob/master/README.md#tobearrayofsize


[Bug] The Brand Login and Signup Not as expected Fixed

Description
Encryption and decryption is added. Sign up and login is working for brand.
Issue
Issue Link resolve #44

@Kajol-Kumari  can you please check.

@Kajol-Kumari  yes encryption and decryption of password is working fine. Brand workflow is completed from signup to login every thing is fine.


Footer CSS can be modified in original it looks way better !

Footer Css same as original

I would like to work on this issue @ahmadsohail404
Please assign me this

@luv2001 what's the status?

I have done that
made one PR #84


Custom block wrappers not working as in docs

Do you want to request a feature or report a bug?
bug
What is the current behavior?
I am trying to add a custom id to headers (for a table of contents).
I am following the example, and I get an error about this not being defined. I using the exact code as per docs.
What is the expected behavior?
props should be passed through to custom wrapper
Which versions of Draft.js, and which browser / OS are affected by this issue? Did this work in previous versions of Draft.js?
Chrome Latest (macOS)
draft-js 0.9.1

props not exists in this context, your this references to the global scope. You tried this?:
wrapper: props => <MyCustomBlock {...props} />

Thanks for the comment @aight8.
Removing the ...this.props does pass through some props.
Two issues:

These props dont have any information about the block. only the key....

The wrapper does not wrap each block individually, it groups them:

I am trying to add a id to each of my h1 so that I can internally link to headers (using a table of contents), that unique id is stored in the data key on the block.

Okei, yeah you cant achieve this blockMap (the block component is just a native element name and you can't use wrapper neither). So the only way is with the blockRendererFn function.
You can try something like:
if (contentBlock.getType() === 'header-one') {
  const id = this.fetchIdFromBlock(contentBlock); // your function which determinate the id by analyze the content state
  const H1 = props =>

;
  return {
    component: H1,
    editable: true,
  };
}

@aight8 I was able to achieve what I was going for using a custom element:
const HEADERS = {
    'header-one': 'h1',
    'header-two': 'h2',
    'header-three': 'h3',
    'header-four': 'h4',
    'header-five': 'h5',
};

const blockRenderMapGenerator = editorState => {

    let contentState = editorState.getCurrentContent();

    const Header = props => {
        let {key} = props.children;
        let block = contentState.getBlockForKey(key);
        let id = block.getData().get('id');
        let type = block.getType();
        const Tag = HEADERS[type] || 'span';

        return (
            <Tag id={id}>
                {props.children}
            </Tag>
        );
    }

    const blockRenderMap = Immutable.Map({
        'header-one': {
            element: Header
        },

oh I didn't know that this works. thank you!


goneovim

Project description
goneovim is a fancy GUI for neovim with markdown renderer, palette, multigrid support etc
this requires qtmoc which is unavailable in nixpkgs but I think is here https://github.com/therecipe/qt.
Metadata

homepage URL:  https://github.com/akiyosi/goneovim
source URL: https://github.com/akiyosi/goneovim
license: mit
platforms: unix, linux, darwin

we now have uiveonim and neovide packaged (and gnvim/neovim-qt), this is the last "fancy" neovim GUI not packaged !


support for influxdb auth

garie version: 2.0-master

Relevant sections of code seem to be:

https://github.com/boyney123/garie-lighthouse/blob/master/src/influx/influx.js
https://github.com/boyney123/garie-pagespeed-insights/blob/master/src/influx/influx.js
https://github.com/boyney123/garie-browsertime/blob/master/src/influx/influx.js

Problem description:

garie plugins do not provide an option to set influxdb authentication data
reusing an existing influxdb with http authentication enabled fails due to missing authentication data

Suggested solution:

please add support for settings:

INFLUXDB_USER
INFLUXDB_USER_PASSWORD

to be used while sending data to influxdb

I can only agree with you. I have already tried a workaround as well but right now I've just limited connections to localhost but database auth would be nice.
I also did not understand why theese variables are set in docker-compose.yml:
- INFLUXDB_ADMIN_USER=admin
- INFLUXDB_ADMIN_PASSWORD=admin

Because influxdb.conf states that admin auth is disabled:
[admin]
  enabled = true
  bind-address = ":8083"
  https-enabled = false

And i wonder if i need to limit bind-address to <IP_ADDRESS> here as well usually the ports setting in docker-compose should be enough?

fwiw: https://github.com/boyney123/garie-lighthouse/commit/a0dbca5ddb67268af2756d8223931421b1eed465#diff-e45e45baeda1c1e73482975a664062aa56f20c03dd9d64a827aba57775bed0d3R18


(virtual-network Module) Diagnostic settings does not support retention for new diagnostic settings

https://github.com/Azure/bicep-registry-modules/blob/ba8e44d1907f868da74409f9e572e5202d973783/modules/network/virtual-network/main.bicep#L80C1-L87C3
"The resource write operation failed to complete successfully, because it reached terminal provisioning state 'Failed'.","details":[{"code":"DeploymentFailed","target":"/subscriptions/xxxxxxxxxxxxxxxxx/resourceGroups/rg-avd-common-pr-cac-01/providers/Microsoft.Resources/deployments/vNet-20230913T004516Z","message":"At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/arm-deployment-operations for usage details.","details":[{"code":"BadRequest","target":"/subscriptions/xxxxxxxxxxxxxxxxx/resourceGroups/rg-avd-common-pr-cac-01/providers/Microsoft.Resources/deployments/vNet-20230913T004516Z","message":"{\r\n  "code": "BadRequest",\r\n  "message": "Diagnostic settings does not support retention for new diagnostic settings.
According to this doc https://learn.microsoft.com/en-us/azure/azure-monitor/essentials/migrate-to-azure-storage-lifecycle-policy
retentionPolicy should be " enabled: false "

This is how I call the module (latest version) which triggers the diagnostic setting error
`
var varAvdNetworkSecurityGroupDiagnostic = [
'NetworkSecurityGroupEvent'
'NetworkSecurityGroupRuleCounter'
]
// Virtual network.
module avdVirtualNetwork 'br/public:network/virtual-network:1.1.3' = {
scope: resourceGroup('${avdWorkloadSubsId}', '${avdCommonObjectsRgCustomName}')
name: 'vNet-${time}'
params: {
name: avdVnet.name
location: avdCommonHostLocation
addressPrefixes: avdVnet.addressSpace
dnsServers: avdDnsServer
virtualNetworkPeerings: [
{
localVnetName: avdVnet.name
remoteVirtualNetworkId: existingHubVnetResourceId
name: avdVnetworkPeeringName
remotePeeringName: avdVnetworkremotePeeringName
allowForwardedTraffic: true
allowGatewayTransit: false
allowVirtualNetworkAccess: true
doNotVerifyRemoteGateways: avdUseRemoteGateway
useRemoteGateways: avdUseRemoteGateway
remotePeeringEnabled: true
enableDefaultTelemetry: enableReferencedModulesTelemetry
remotePeeringAllowForwardedTraffic: true
remotePeeringAllowGatewayTransit: avdUseRemoteGateway
remotePeeringAllowVirtualNetworkAccess: true
    }

]
  subnets: [ for subnet in avdVnet.subnets: {
        name: subnet.name
        addressPrefix: subnet.addressPrefix
        privateEndpointNetworkPolicies: 'Disabled'
        privateLinkServiceNetworkPolicies: 'Enabled'
        networkSecurityGroupId: avdNetworksecurityGroup.outputs.resourceId
        routeTableId: avdRouteTable.outputs.resourceId
    }]
  tags: rgtags
  diagnosticWorkspaceId: alaWorkspaceId
  logsToEnable: varAvdVirtualNetworkLogsDiagnostic
  metricsToEnable: varAvdVirtualNetworkMetricsDiagnostic

}
dependsOn: [
avdNetworksecurityGroup
avdRouteTable
baselineCommonResourceGroup
]
}
`
The fix would require changing "enabled: true" to false in this code in the module
var diagnosticsLogs = [for log in logsToEnable: {
  category: log
  enabled: true
  retentionPolicy: {
    enabled: true
    days: diagnosticLogsRetentionInDays
  }
}]

Hey @marcosgm this module was originally pulled over from CARML as a PoC for contributions. We since migrated a new version that takes also care of the issue you described, can be found here and be referenced via br/public:avm/res/network/virtual-network:<version>


[Core] Inconsistent, and overlapping forecasting time steps generated, as a result of predict()

What happened + What you expected to happen
Hi,
I 've witnessed a very strange case, where the timesteps of resulting forecasts don't correspond to the number of horizon given.
There are a few issues.
(1) The resulting time series don't correspond to the number of horizons given (13  ).

(2)  There are many overlapping times that have been generated

(3) Also they are not consistent.
In this example, where 3 different unique_ids are provided, 2 of them have
different number of time steps compared to the other one.
(See figure 1)
Versions / Dependencies
0.10.0
Reproduction script

import random
import numpy as np
start_date = '2021-06-05'
end_date = '2021-12-25'
weekly_dates = pd.date_range(start=start_date, end=end_date, freq='W-SAT')
val_1 = [ 70.,  52.,  44.,  64.,  70.,  83.,  65.,  89.,  72.,  66.,  34.,
        95.,  46.,  34.,  87.,  77.,  58., 103.,  73.,  48.,  78.,  84.,
        71.,  65.,  79.,   0.,  78.,  86.,  57.,   0.]
#Creating dataframe
train_df = pd.DataFrame({'ds': np.tile(weekly_dates,3 ) ,
              'unique_id': ['abc']*len(weekly_dates) + ['def']*len(weekly_dates) + ['ghi']* len(weekly_dates),
               'y': val_1*3,
                'embedding_x': random.uniform(1, len(weekly_dates)*3),
                'embedding_y': random.uniform(1, len(weekly_dates)*3) }                           )

train_df.iteritems = train_df.items
train_sf = spark.createDataFrame(train_df)

from mlforecast.distributed.forecast import DistributedMLForecast
from window_ops.expanding import expanding_mean
#from mlforecast.distributed.models.spark.lgb import SparkLGBMForecast

#models = [SparkLGBMForecast()]
#try:
#    from xgboost.spark import SparkXGBRegressor
models = []
from mlforecast.distributed.models.spark.xgb import SparkXGBForecast
models.append(SparkXGBForecast())
#except ModuleNotFoundError:  # py < 38
#    pass
fcst = DistributedMLForecast(
    models,
    freq='W-SAT',
    lags=[1],
    lag_transforms={
        1: [expanding_mean]
    },
   # date_features=['dayofweek'],
)

fcst.fit(
    train_sf, #cur_subset_train_sf, #   Y_sf_train_cur_level ,  #
    static_features=['embedding_x', 'embedding_y'],
)

preds = fcst.predict(13)
Y_df_hat = preds.toPandas()
Y_df_hat.rename(columns = {'SparkXGBForecast':'pred'}, inplace = True)

Issue Severity
None

Hey @iamyihwa. As described here, it's very important that your dataframe is partitioned by series for the distributed processing to work correctly, so you have to repartition your dataframe or provide a value for num_partitions to the DistributedMLForecast constructor.

Thanks a lot @jmoralez  !
By using .repartitionByRange as suggested, the problem is solved!


Add option to bundle .wasm file instead of inlining wasm binary as base64

There should be an option to bundle the WASM as .wasm file. At the moment, WASM is encoded as base64 and included in JS. This has several disadvantages, including but not limited to slower execution.
Please allow externalizing wasm files

How do you find it's encoded?. The WASM file is bundled.

Apologies, I should've mentioned this in the issue. I'm using library mode to build a library that exposes an API from the WASM file. The contents of the wasm file are encoded inside the final JS file

Uncaught (in promise) TypeError: WebAssembly.instantiate(): Import #0 module="env" error: module is not an object or function
my import files is xxx.js and xxx.wasm build from cpp project by emcc

@Yongle-Fu Please try Webpack's asyncWebAssembly. Does that works?

webpack works

// code works
addWasmInit().then((instance) => {
console.log(instance);
console.log(instance.exports.add(1, 2));
});
// code not works, Uncaught (in promise) TypeError: WebAssembly.instantiate(): Import #0 module="env" error: module is not an object or function
loadWasmInit().then((instance) => {
console.log(instance);
});
// code not works, another error
const liboz = await loadWasm();

?init is not related to this plugin, closing.


CB-13071:Encrypt Freeipa with AWS CMK

Current behaviour is that we encrypt the freeipa with the region specific AWS managed key , With this change we encrypt the volumes attached to freeipa with the Customer Managed Key passed from the AWS environment creation.
screenshots of Freeipa nodes came up on environment with the Custom Encrypted key arn passed and the respective ebs volumes with the encryption key arn are shared above.

Please squash the commits into one with a commit message.


Request to make it work with other countries

Hi!
First of all thanks for creating this custom component.
Since there will be a lot of requests to make it work with other countries. it would be nice to merge this in 1 issue request.
First of all: Can you create an extra drop down menu to choose your country first? this way, the user must choose this first.

What thing do you need in order to make this work with other countries?
API_LOGIN_URL = ?
API_LIST_URL = ?
API_ACCOUNTMOVEMENT_URL = ?
PS: please make it work with Belgium ;) (https://myedenred.be/Api/Authenticate/Identity/RefreshToken)
Thanks!

Hello
I'm already working on the suggested approach (add a country selection on that screen).
In order to make it work for other countries, I'll need temporary access to the platform.
If you are willing to give me access, please send me a private message through LinkedIn.

I could also give you acces if needed..

I can help you out with the French version 😉

i can help with italian version integration if needed

Hi tehre, maybe this can help also?
https://anypoint.mulesoft.com/exchange/portals/edenred-corporate/f02a5569-24ac-491a-964a-0950ab318728/edenred-payment-services-api/minor/2.0/

any news on this?
thank you in advance


[Mention The Feature]: Add Success Stories and Inspiration Board

Is your feature request related to a problem? Please describe.

Add a dedicated section where users can read success stories or motivational posts related to scholarships and career achievements.
Allow users to share their experiences, which can help inspire others and build a sense of community.

Describe the solution you'd like.
The Success Stories and Inspiration Board would be a dedicated section on PathSphere that highlights real-life success stories of students who have secured scholarships and educators who have advanced in their careers through the platform. Users could contribute their experiences, providing insights, advice, and motivation to others. Stories can be categorized by scholarship type, field of study, or career level, making it easy for users to find relevant stories. Each story could include a short bio, the challenges faced, how PathSphere helped, and final outcomes, with options for other users to comment or "like" stories to show support.
Describe alternatives you've considered.
No response
Additional context.
No response
Show us the magic with screenshots
No response
Checklist

[X] I have checked the Existing Issues
[X] I have read the Contributing Guidelines
[X] I want to work on this issue. (optional)

@aditya-bhaumik could you please assign it to me? it would be really helpful of you!
thank you


⚠ Samsung has degraded performance

In 7ed497d, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2520 ms

Resolved: Samsung performance has improved in d754f01.


How I can hide gird when it is inside a candle

my candle is overlapped by grid like this.

what have you done to avoid candle overlap issue ?


Add Accounts API endpoints

This introduces the ability to manage Cloudflare Accounts via the API.
I initially went to implement the Organisations however I noticed the API docs mention this is deprecated and instead we should use Accounts.
From https://api.cloudflare.com/#organizations-properties:

NOTE: This API is deprecated, please use equivalent /accounts API endpoints where possible. Account APIs provide a broader range of features, and are backwards-compatible to organization APIs.

So instead, this PR implements (and tests) the following:

List all accounts that the current logged in user has access to
(https://api.cloudflare.com/#accounts-list-accounts)
A single account lookup based on account ID
(https://api.cloudflare.com/#accounts-account-details)
Update an account based on the account ID
(https://api.cloudflare.com/#accounts-update-account)

I haven't added the functionality to flarectl as it seems slightly neglected and I'm unsure if that is still something that is being maintained. If we would like the functionality to be added, I'm more than happy to implement it.

Looks great. Thanks Jacob (again)! 🍻


Update x86_64 template to 16.03

Do you mind fixing the i686 URL as well so they are in sync?

Sure I will do ASAP.

Thanks! Pushing the new images to atlas


[nccl] Remove NCCL auto-download due to licensing issues

Pursuant to https://github.com/microsoft/vcpkg/pull/17331, remove NCCL auto-download due to licensing issues.

Also improves finding NCCL - uses common environment variables

What does your PR fix?

Follow up to https://github.com/microsoft/vcpkg/pull/16031, mimics https://github.com/microsoft/vcpkg/pull/16413, and makes additional changes as outlined in https://github.com/microsoft/vcpkg/pull/17346
Fixes https://github.com/flashlight/wav2letter/issues/950

Which triplets are supported/not supported? Have you updated the CI baseline?

Same triplets as before. This doesn't affect the CI baseline since CUDA 10.1 is still installed on CI Machines and NCCL 2.4.6 (compatible with 10.1) will still be downloaded from conda.

Does your PR follow the maintainer guide?

Yes

please consider this:
https://github.com/microsoft/vcpkg/pull/17331#issuecomment-824302062

Aha - thanks for flagging @cenit -- I'll go ahead and remove it here too for this PR. cc @BillyONeal — if you want to tack NCCL onto your request, that would be helpful!
Too bad that we have to remove it, but makes sense.

Will have this pending shortly:

Depends on PR https://github.com/microsoft/vcpkg/pull/17331.
Failures on linux:
-- Could NOT find NCCL: Found unsuitable version "", but required is at least "<IP_ADDRESS>" (found NCCL_INCLUDE_DIRS-NOTFOUND)
CMake Error at ports/nccl/portfile.cmake:16 (message):
  Please install NCCL using your system package manager (the same way you
  installed CUDA).  For example: apt install libnccl2 libnccl-dev.
Call Stack (most recent call first):
  scripts/ports.cmake:142 (include)

@jacobkahn, thanks for your contribution!
Could you update the baseline version by executing ' ./vcpkg x-add-version --overwrite-version nccl'?
Error: While reading versions for port nccl from file: C:\a\1\s\versions\n-\nccl.json
       File declares version `2.4.6#1` with SHA: 78f69d23214c0c0849fbe1a5d0fe62f934dc72e1
       But local port with the same verion has a different SHA: 65d03efc8a527afe223125d2cac2e685517297e3
       Please update the port's version fields and then run:

           vcpkg x-add-version nccl

       to add a new version.

@PhoebeHui done.

I think CI needs a rerun now that NCCL is installed.

You can always trigger that by merging with origin/master.

Looks like CI failures are a regression from https://github.com/microsoft/vcpkg/pull/13100 + updating the compilers on the build machines to 16.9.4

Yes, For gdk-pixbuf's failure, it's not relate to this PR, we would take the baseline error.
Failures:
E:\vcpkg\clean\vcpkg\buildtrees\gdk-pixbuf\src\k-pixbuf-2-c86079bed6\gdk-pixbuf\pixops\../fallback-c89.c(38): error C2169: 'lrint': intrinsic function, cannot be defined

For nccl:x64-linux, it still failed with following failure:
-- Could NOT find NCCL: Found unsuitable version "", but required is at least "<IP_ADDRESS>" (found NCCL_INCLUDE_DIRS-NOTFOUND)
CMake Error at ports/nccl/portfile.cmake:16 (message):
  Please install NCCL using your system package manager (the same way you
  installed CUDA).  For example: apt install libnccl2 libnccl-dev.
Call Stack (most recent call first):
  scripts/ports.cmake:142 (include)

gdk-pixbuf check for lrint in meson.build needs to be updated to use the correct parameters. I often see function checks in the form of somefunction(void) and VS is eagerly reporting errors with release build flags while with debug build flags the check passes fine.

Looks like the dependent PR has merged -- are we good here @BillyONeal @PhoebeHui ?

@jacobkahn, I have rerun the CI testing, let's wait for the results.

Looks like the dependent PR has merged -- are we good here @BillyONeal @PhoebeHui ?

This one looks like the port actually not being happy:
-- Could NOT find NCCL: Found unsuitable version "", but required is at least "<IP_ADDRESS>" (found NCCL_INCLUDE_DIRS-NOTFOUND)
CMake Error at ports/nccl/portfile.cmake:16 (message):
  Please install NCCL using your system package manager (the same way you
  installed CUDA).  For example: apt install libnccl2 libnccl-dev.
Call Stack (most recent call first):
  scripts/ports.cmake:142 (include)

We installed nccl into our base VMs like this: https://github.com/microsoft/vcpkg/blob/1efdaf8f4da22f2825567cd88d7c10b60a585a1f/scripts/azure-pipelines/linux/provision-image.sh#L66

Thanks @jacobkahn and @BillyONeal !

Seems to me that it's mostly BSD 3-clause, judging from this page https://docs.nvidia.com/deeplearning/nccl/bsd/index.html


Few datastore related fixes

Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

[ ] Make sure the PR title is formatted like:
[BEAM-<Jira issue #>] Description of pull request
[ ] Make sure tests pass via mvn clean verify. (Even better, enable
Travis-CI on your fork and ensure the whole test matrix passes).
[ ] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.
[ ] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

pin googledatastore version to 6.4.1
add num_shards options to datastore wordcount example
move datastore wordcount example to cookbook directory

R: @aaltay

LGTM, thank you.

@aaltay combined a few fixes in this PR, PTAL.

LGTM, thank you

R: @robertwb

Merging this now, but for future reference version pinning should probably be its own commit (and PR).


Samples for Error Handling within Spring Cloud Functions

I am unable to find documentation about exception handling using Spring Cloud Functions when using the reactor framework. The default behavior seems to be to skip any erroring requests and carrying on - this took me a bit by surprise.  (eg, "test1", "test2", "test3" below will just respond with "test2" and "test3".
@Bean
public Function<Flux<String>, Flux<String>> ErrorTest () {
           return flux -> flux.map(value -> {
               if(value.equals("test1")) {
                  throw new Exception("Exception test")
               }
               return value
           }).onErrorMap(Exception.class, (e -> { throw new ResponseStatusException(HttpStatus.BAD_REQUEST, "Bad request test"); }));

}

I am new to Spring Cloud so I could be confusing this part of Cloud Function functionality with something core to the Reactor Framework or something else (spring-cloud-starter-function-webflux perhaps?) but it would be great if the samples had methods of handling exceptions / returning http payloads with specific status codes for those new to Spring Cloud Functions!

Couple of points here.
First, in the future please use our dedicated Stack Overflow channel for questions.
On your points. . .
Unlike imperative function, reactive function serves a completely different purpose. It is only invoked once and it simply connects the stream with stream operations provided by the user (via function). And unlike an imperative function which is invoked on each event where we can trap the result of such event, with reactive functions we (at the framework level) have absolutely no control, knowledge or influence on what user does in their code.
On top of that reactive API provides a rich set of operation to handle errors, so general recommendation is to once user committed to use reactive approach they have to understand that the error handling is entirely up to them


Burnwire activation relies on a single voltage reading - add a confirming reading and sanity check

Currently the burnwire is activated when a battery cell drops below a configurable level.  A single bad reading or error may cause erroneous activation.  Bad readings have been seen occasionally on development boards.  The software should double or triple check any reading that is low enough to trigger the burnwire.

Issue resolved in #69


Cryptoconditions Framework (RIPD-1139)

Cryptoconditions provide a mechanism to describe a signed message such that multiple actors in a distributed system can all verify the same signed message and agree on whether it matches the description. This provides a useful primitive for event-based systems that are distributed on the Internet since we can describe events in a standard deterministic manner (represented by signed messages) and therefore define generic authenticated event handlers.
The cryptoconditions specification is available at:
https://interledger.org/five-bells-condition/spec.html
This PR includes PREIMAGE-SHA-256 (RIPD-1210), PREFIX-SHA-256 (RIPD-1211), RSA-SHA-256 (RIPD-1213) and ED25519 (RIPD-1214).

Current coverage is 64.86% (diff: 88.37%)

Merging #1872 into develop will increase coverage by 0.42%

@@            develop      #1872   diff @@
==========================================
  Files           683        693    +10
  Lines         48973      49575   +602
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits          31554      32155   +601
- Misses        17419      17420     +1
  Partials          0          0

Powered by Codecov. Last update aa11eff...6d92a5b

:+1:

Still :+1: after removing begin/end from Buffer/Slice.

I've addressed all feedback (except removing all exceptions; most have been removed). I've rebased to the latest develop and squashed.

I think I've addressed all outstanding issues/comments (modulo exceptions). You may ignore the commit marked [TEMP] - it will go away during the squash, post-approval.

Documentation preview?

SusPayFinish::doApply can return tem* codes. All tem* codes must be returned from preflight. Other than amendments, a change in a ledger should not make a transaction malformed or not malformed. Malformed transactions will not be retried if the ledger changes.

Also, unless I'm missing something, the implementation of SusPayFinish::calculateBaseFee is missing. I don't think we can use the default.

Last issue: Change the fee to be based on the actual size of the fulfillment rather than the maximum size. There's no reason a person who needs a large maximum fulfillment size (perhaps just in case some special recovery condition occurs) should pay a higher price for all their routine payments.

Needs to be rebased. Thumbs up after that.

Reviewed Add CryptoConditions amendment commit. Still thumbs up after it's rebased.

:+1: (the one CI failure is due to sourceforge being down)

Merged as d8d0cb17ba23b486a91c2c3782849395a69db47b, 8d0c93691d17f90d8f85d3cf682dc90e871d300e, 5711e7caa979b77961fe644babbdc7152099d328, 83aa5517c0b7ace64d072db878d6b6e74dfd9baa, d198b439fd9c3c4ff5d22969d4f445f79d5919ba and d69b16895c620b9eab9b8d0da654d3b734249612.


Support for org-agenda

Would love to see the theme extended into Org-mode's agenda view.

Certainly. Could you offer a screenshot or two of how the agenda view looks to you? I'm still working on a huge overhaul of org-mode in my emacs.d, so I'm having some trouble telling apart my org-agenda from vanilla!

Sure, here are a few shots. The first one is the agenda with vanilla Org-mode faces from doom-one. The second is the agenda with some Org-mode face overrides I've pushed in my config (just throwing this one in there as a suggestion, because I think Org needs less visual differentiation). Last shot is the calendar in doom-one, which as you can see looks awesome and clean.

It has been a while, and many org-mode (and org-agenda) faces have been added recently. If you are still using this theme, do you think its org-agenda support is sufficient now?

org-agenda support should be good enough that we can consider this resolved. Thanks for the screenshots!

It looks great on org-agenda, but seems some settings are overwritten in org-habit faces.
Normally, it would look like this (zenburn):

In all doom-themes, the foreground and background becomes same color and effectively hides it.

Would you mind taking a look?

@yiufung Thanks for letting me know. This should've been addressed in https://github.com/hlissner/emacs-doom-themes/commit/aaf04351c004d6dd311f3d7e9a48c3a0fff3d839. Please update and let me know if you think it needs more work.

Works great, thanks!


How to clear docker-multinode configuration entirely?

I'm experimenting with kubernetes/docker-multinode and after some time I wanted to start from clear slate. I killed all docker containers, removed all the volumes, and cleared /var/lib/kubelet/ directory
docker rm --force $(docker ps -a -q)
docker volume rm $(docker volume ls -q)
sudo rm -r /var/lib/kubelet/

Bur after docker restart and starting master node I see that my configured pods are starting - so it looks like it stores persistent configuration somewhere else. What else I can do to clear all docker-multinode configuration from my machine (Apart of system reinstall)?

Check the turndown script:
https://github.com/kubernetes/kube-deploy/blob/master/docker-multinode/common.sh#L267

I have created kill script based on master.sh
# Source common.sh
source $(dirname "${BASH_SOURCE}")/common.sh

# Set MASTER_IP to localhost when deploying a master
MASTER_IP=localhost

kube::multinode::main

kube::multinode::log_variables

kube::multinode::turndown

But after running it and starting the master I get all my old pods again.
PS. I think in kube::multinode::turndown there should be $(docker ps -a ... instead of $(docker ps because now it only clears running and skipping stopped containers.

Yes, I assume a PR already exists that matches your findings
https://github.com/kubernetes/kube-deploy/pull/222
BTW: any reason you are not using kubeadm for deployment?

I wat trying to set up kubernetes with minimal host machine configuration so kubernetes in docker looked promising - and to be honest I did not notice kubeadm in documentation - I skipped to Bare Metal installation instructions before finding  docker-multinode.
I found out what was the problem in my case - I had instance of etcd running on host and kubernetes in docker talked with it instead of the docker instance - so the data was not cleared even after completely wiping our docker artifacts.

docker multinode is deprecated. If you continue to use I recommend to set USE_CNI=true.

Thanks for information - it would be nice to have this warning somewhere in documentation.
I did not see anything about deprecation in git README or in Getting Started Guide.

@cheld why is docker multinode deprecated?

well, let's say the shell scripts are not really maintained. kubeadm is the future installation method for kubernetes.

But kubeadm doesn't support versions of Ubuntu before 16.04, right?


Builder circuit breaker

Just a draft for the circuit breaker
need to introduce actual params and adapt tests
fixes #6058
Documentation

[ ] I thought about documentation and added the doc-change-required label to this PR if updates are required.

Changelog

[ ] I thought about adding a changelog entry, and added one if I deemed necessary.

Looks really good overall


log-api sample failed with CLI

Description:
As $subject please see below

[root@ballerinaonrethat3 bin]# ./ballerina run ../../../ballerina/ballerina-examples/examples/log-api/log-api.bal -e [ballerina.log].level=TRACE
', ' 1:15 mismatched input '.' expecting {, '	', '
', '
', ' '}
2018-04-18 04:54:34,909 ERROR [] - error log
2018-04-18 04:54:34,916 ERROR [] - error log with cause : {message:"error occurred", cause:null}
2018-04-18 04:54:34,917 INFO  [] - info log

Affected Product Version:
ballerina-examples after commit-id (258ce86964f526898f05810c24ced933ef4eccdb)
build pack (ballerina-0.970.0-beta1-SNAPSHOT)
OS, DB, other environment details and versions:
rhel 7.3 | oracle jdk 1.8.0_161

Observed the same in Windows 10 OS

The log flag seems to have been changed from [ballerina.log].level to b7a.log.level on Apr 10 with https://github.com/ballerina-platform/ballerina-lang/commit/41dd9e8a3e29db2b61387507654cb63f452e9444, and the log BBE description after this issue was created, with 7008e44c49fe05a47fe7bf0ffeb3247563001494.
Closing this issue since running the sample with the new flag does not produce this error, but running with the old flag does.


Document the model that can be used to provide different transformations for Add-In parts

See below sample:
<!-- Add-In part (App Part) -->
      <WebPart Type="Microsoft.SharePoint.WebPartPages.ClientWebPart, Microsoft.SharePoint, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=71e9bce111e9429c" CrossSiteTransformationSupported="true">
        <!-- Note: the add-in can depend on assets that live in the source site, which is not something we can detect -->
        <Properties>
          <Property Name="FeatureId" Type="guid"/>
          <Property Name="ProductWebId" Type="guid"/>
          <Property Name="ProductId" Type="guid"/>
        </Properties>
        <Mappings Selector="StaticString({effect})">
          <Mapping Name="Slide" Default="true">
            <!-- Due to the dynamic nature of the client web part (it's hosting any add-in with their respective parameters) the JsonControlData is generated at runtime -->
            <!--<ClientSideWebPart Type="ClientWebPart" Order="10" JsonControlData="{}"/>-->
            <ClientSideText Text="***TEST.Slide mapping chosen! Slider theme = {theme}***" Order="10" />
          </Mapping>
          <Mapping Name="Scroll" Default="false">
            <!-- Due to the dynamic nature of the client web part (it's hosting any add-in with their respective parameters) the JsonControlData is generated at runtime -->
            <!--<ClientSideWebPart Type="ClientWebPart" Order="10" JsonControlData="{}"/>-->
            <ClientSideText Text="***TEST.Scroll mapping chosen! Slider theme = {theme}***" Order="10" />
          </Mapping>
        </Mappings>
      </WebPart>

Another sample
<WebPart Type="Microsoft.SharePoint.WebPartPages.ClientWebPart, Microsoft.SharePoint, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=71e9bce111e9429c" CrossSiteTransformationSupported="true">
        <!-- Note: the add-in can depend on assets that live in the source site, which is not something we can detect -->
        <Properties>
          <Property Name="FeatureId" Type="guid"/>
          <Property Name="ProductWebId" Type="guid"/>
          <Property Name="ProductId" Type="guid"/>
        </Properties>
        <Mappings Selector="ConcatenateWithPipeDelimiter({Title},{effect})">
          <Mapping Name="News Ticker|Slide" Default="true">
            <!-- Due to the dynamic nature of the client web part (it's hosting any add-in with their respective parameters) the JsonControlData is generated at runtime -->
            <!--<ClientSideWebPart Type="ClientWebPart" Order="10" JsonControlData="{}"/>-->
            <ClientSideText Text="***TEST.{Title} web part - Slide mapping chosen! Slider theme = {theme}***" Order="10" />
          </Mapping>
          <Mapping Name="News Ticker|Scroll" Default="false">
            <!-- Due to the dynamic nature of the client web part (it's hosting any add-in with their respective parameters) the JsonControlData is generated at runtime -->
            <!--<ClientSideWebPart Type="ClientWebPart" Order="10" JsonControlData="{}"/>-->
            <ClientSideText Text="***TEST.{Title} web part - Scroll mapping chosen! Slider theme = {theme}***" Order="10" />
          </Mapping>
        </Mappings>
      </WebPart>

Done


WIP: Refactoring

This initial commit shows changes to the UI definition file's outputs and associated changes to the body. It currently does not pass the arm-ttk as changes need to be made to the Bicep files. This approach avoids the massive ccswConfig object as well as the parse(concat()) monstrosities.

Note: This is still a WIP. Please stay tuned for more updates.


style: apply isort formatting

Just a recommendation that is used by many projects. @ianhi, check out the effect with
pre-commit run isort -a

If you like it, push the changes to this branch and CI will pass again.

I noticed now that pre-commit is not run as a CI check, but that (only) black is checked separately through a GitHub action
https://github.com/ianhi/mpl-interactions/blob/6fc9482cf713c89e5d22f145209481258da0b894/.github/workflows/lint.yml#L7-L13
I suggest to use https://pre-commit.ci instead of that action and instead of c7fb57a, as pre-commit.ci is faster.

I suggest to use https://pre-commit.ci instead of that action and instead of c7fb57a, as pre-commit.ci is faster.

Should have just installed this and looks like it's working (https://github.com/ianhi/mpl-interactions/pull/205)

Also mpl-latest is failing due to upstream issues: https://github.com/matplotlib/ipympl/issues/335

Should have just installed this and looks like it's working (#205)

Ok cool, thanks! Yep it's working ca2f71d

awesome thanks!


Support for passing const Miri pointers to C

Supporting for passing const Miri pointers to C.
Fork of rustc required
This relies on the alignment of the bytes of Allocations to match the align parameter, and for the address of these bytes to be accessible to Miri: you need to run this with the version of rustc in this PR for it to work.
Main changes to Miri
This support builds on previous support for calling C functions with integer arguments, in this PR to Miri.
All the changes in that PR are contained here.
The changes to Miri since integer function support are mostly to intptrcast:

Move the generation of a new (fake) address to it's own function, get_next_fake_addr.
We still need this functionality for cases where an alloc_id doesn't have a corresponding base address, or if we're running Miri in non-FFI mode and want to keep the same behaviour as before.
If we are in FFI mode and there is a base address accessible through ecx (via this function, in the fork of rustc), then we use this as the base address of the allocation (linked code)
Since we're now using the real addresses as the base_addr, using a Vec as the data structure for global_state.int_to_ptr_map is not efficient anymore, since it no longer is guaranteed to be sorted by just adding new addresses to the end of the list.
So we changed the data structure to a BTreeMap, which is always sorted and provides efficient insertion.
This change mostly shows up here in the code.
Note: even though in non-FFI mode we use the original fake address functionality, we keep the BTreeMap.

We also changed ffi_support, adding representations for the pointer types.
This section of our design doc has more details on our design and implementation of passing Miri pointers to C.
This doc also explains how we plan to support passing Miri mut pointers to C, and what we've done for adding support for passing C pointers back to Miri.
Testing
We added a test that calls a C function that double dereferences a C pointer and returns the value.
Specific code:
C function:
int double_deref(const int **p) {
  return **p;
}

Rust code calling the C function:
extern "C" {
    fn double_deref(x: *const *const i32) -> i32;
}
fn main() {
    unsafe {
        let base: i32 = 42;
        let base_p: *const i32 = &base as *const i32;
        let base_pp: *const *const i32 = &base_p as *const *const i32;
        assert_eq!(double_deref(base_pp), 42);
    }
}

Note: There are some tests in Miri’s test suite that fail if they’re executed using the real bytes of the Allocation as the address. All of the failures are because of allocation alignment assumptions being violated, and we don’t think they correspond to bugs in our implementation.
This was found when we were testing – the version of Miri we pushed only uses the real bytes for the address if we’re executing in the FFI mode, and so none of these tests are affected.
This is all explained, and the failing tests are listed out, in this section of our design doc.

I don't know when I will have time for a proper review (and anyway we should land the other one first^^), but just one note on terminology: I don't think "fake" addresses is a good term. They are no more fake than any other part of Miri; they are the real address that these allocations have inside the Abstract Machine.
If you need to distinguish them, something like 'machine_address' or so would be a lot better.

I haven't seen activity on this PR or the rustc one (https://github.com/rust-lang/rust/pull/100467) in a while so I am going to close this. @emarteca (or anyone else who is interested) feel free to pick this up again in the future if/when you have time!


Added bootstrap theme

Added bootstrap theme thx to  @Adondriel

What kind of change does this PR introduce? (check one with "x")

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Other... Please describe:

What is the current behavior? (You can also link to an open issue here)
https://github.com/swimlane/ngx-datatable/issues/635
What is the new behavior?
The datatable now has a boostrap class for styling.
Does this PR introduce a breaking change? (check one with "x")

[ ] Yes
[x] No

If this PR contains a breaking change, please describe the impact and migration path for existing applications: ...
 How is this related to bootstrap exactly?

well, I guess it isn't related to bootstrap, is just a style that makes the table look similar to a bootstrap table-striped, so in a BS page it looks a bit more "integrated" with the style.

@agil-NUBBA thanks for the clarification! I like the name, keep it.

Awesome! Thanks!

Glad you could use the stuff I posted for something awesome. :D

Can you PR a demo page? :)


Add functions from a module to a existing model

Hi, i had a project with a model of invoice, that had his relations and all.
Then, i had a module that create a entity of payment, and i want it to be related with invoice.
I can relate the payment with the invoice, but my question is, how can i relate the invoice with the paiment, without modifying the invoice model? so i can do $invoice->paiments
Or a more general idea, how can i add new functions to an existing model, via a module

I don't think you can without adding a relationship on the invoice model. In theory, you could create a model class in your module that extends the invoice model and use that.
Personally, I would add the method to the model directly.

I used this approach and it worked.
Check screenshot -


Balancer not listening in configured port

Looks like balancer is using the default value for the reserverproxy-port parameter even though I configured a different value in the command line.
I started the balancer with this command, configuring port 8080 and not using the '=' symbol, as explained in #24:
paddler balancer --management-port 8085 --reverseproxy-port 8080
But it starts showing these DEBUG messages:
2024-10-12T17:41:48.360+0200 [DEBUG] paddler.Balancer: rewrite-host-header: enabled=false
2024-10-12T17:41:48.361+0200 [DEBUG] paddler.Balancer.reverseproxy: listen: host=<IP_ADDRESS>:8086
2024-10-12T17:41:48.361+0200 [DEBUG] paddler.Balancer.management: listen: host=<IP_ADDRESS>:8085
2024-10-12T17:41:48.361+0200 [DEBUG] paddler.Balancer.management: dashboard: enabled=false
2024-10-12T17:41:48.426+0200 [DEBUG] paddler.Balancer: registering target: host=<IP_ADDRESS>:8081
2024-10-12T17:41:48.430+0200 [DEBUG] paddler.Balancer: registering target: host=<IP_ADDRESS>:8083
2024-10-12T17:41:49.334+0200 [DEBUG] paddler.Balancer: registering target: host=<IP_ADDRESS>:8082

And the balancer is NOT reachable in port 8080, but in the default port, 8086.

@Luirl I have just released a new stable version of Paddler (v1.0.0) and changed the CLI framework, overall it underwent a total rewrite.
I think your issue should be solved now, if it still persists feel free to reopen (please check the README though, some flag names have changed).


CannotCreateExternalResource EOF error

What happened?
After following the documentation I expected to be able to deploy a topic resource. Instead I keep getting the erros below on the kafka-provider's logs:
[ERROR] unable to request api versions; broker: seed 0, err: EOF
[provider-kafka] 2023-01-30T14:40:29.762ZDEBUG   controller-runtime.manager.events       Warning {"object": {"kind":"Topic","name":"sample-topic","uid":"xxxx","apiVersion":"topic.kafka.crossplane.io/v1alpha1","resourceVersion":"1200071675"}, "reason": "CannotCreateExternalResource", "message": "EOF"}

topic.yaml
apiVersion: topic.kafka.crossplane.io/v1alpha1
kind: Topic
metadata:
  name: sample-topic
spec:
  forProvider:
    replicationFactor: 1
    partitions: 1
  providerConfigRef:
    name: kafka-stage-provider

How can we reproduce it?
I followed the README steps, deployed the topic resource and looked for the provider logs
What environment did it happen in?
Crossplane version:  helm.sh/chart: crossplane-1.7.0
Kubernetes distribution: GKE 1.21
Kafka: Confluent Cluster

We saw similar behavior when Crossplane was not able to communicate with our Kafka clusters. Are you able to reproduce this with the Kafka setup we recommend here? Or anything indicating a communication problem on your Kafka cluster side?

The error in topic creation is:
Message:               observe failed: cannot get topic spec from topic client: cannot list topics: EOF
There's any config to talk with Kafka confluent SASL?
Thank you

SASL/PLAIN is the only mechanism we wrote and currently support in the project.

insecureSkipVerify

hm,  i'm getting
 cannot create topic: POLICY_VIOLATION: Request parameters do not satisfy the configured policy.

after that.
But before i was getting
  atProvider: {}
  conditions:
  - lastTransitionTime: "2023-05-23T12:04:03Z"
    message: 'observe failed: cannot get topic spec from topic client: cannot list
      topics: read tcp a.b.c.0:56234->x.y.z.92:9092: read: connection reset
      by peer'
    reason: ReconcileError
    status: "False"
    type: Synced