Remove libp2p

This PR removes libp2p and simplifies types like NodeId that have been introduced to support both networking implementations. It is still kept as a newtype though.
As a result, we can remove over 3000 LoC and 20-25% of our dependencies and build times have been improved by 13% for release builds. Since the libp2p was not maintained for some time now, there should be no negative impact on the system as a whole.
Metrics only used by libp2p-networking are removed as well. Additionally, a configuration option has been removed that had not been in use for a while, this is mentioned in the changelog.
Closes #1641.

bors r+


Support overriding table names during initialization

Mirroring the children and extracting the table name and columns is pretty slick. But, with this, it's not possible to reuse the same table elsewhere with a different name.
Also, since Column stores a weak var of the associated table, we can't do this either:
let table1 = SomeTable()
let table2 = SomeTable(tableName: "new name", columns: table1.columns)

... since that will change the columns of table1 to point to table2. So, I've added an optional parameter to the Table initializer.

Hi @wafflespeanut, Can you explain why you think using this approach would be better than simply redefining the Table you wish to duplicate and naming it differently?

The same reason why we go for functions in normal code - the ability to reuse. Tables can be big. If a database has multiple tables with the same signature, then it's hard to maintain all those tables in the long run. Whenever we migrate some table, we have to ensure that all the other tables are migrated too.
For example, in the e-commerce platform that I'm working on, we have a table for attributes of some entity. It looks something like this:
class AttributesTable: Table {
    let tableName = "attributes"

    let attributeId = Column("attribute_id", UUID.self, notNull: true)
    let entityId    = Column("entity_id", UUID.self, notNull: true)
    // ... few more columns

    // some associated methods
}

This table is used by "products", but that's not it. "product variants" have attributes, "collection" of products could have attributes. In all these cases, the functionality of these table models will remain the same (even the query building will be the same) - only the table name differs.
Does this make sense?

Yep, that's a good reason.
Could you refactor the proposed change a little bit. I think this would be better if the parameter passed to the init method was optional and initialised to nil. Also I don't think its necessary to set _name and then update it later. Simply do it at the end, could it then potentially be a let constant rather than var?

Sure thing!

Thanks, all looks good. One last request..... could you please add a test to ensure a Table can be duplicated with a different name? I think TestSchema is probably the right place for it.
Once done we can get this merged.
Thanks

Apologies for the delayed response. I'll do it tonight. Thanks! :)

Hey @kilnerm I've made the changes. Please take a look :)

Hi, could you open a new PR for merging these changes into the next branch please. I will merge into next and then into master once we are ready to tag a new release.
Thanks.

Ok, this all looks good, could you please open a new PR to merge the changes into the next branch? I'll merge there and then into master when we are ready to tag a new release.
Thanks.

Actually, please disregard that last comment, I now realize I can change the merge target.


[Bug]: flutter-tools breaks LunarVim distribution

Describe the bug
I've set up fresh LunarVim-installation. LunarVim is a NeoVim-Distribution. Adding the Treesitter for Dart worked just fine as well as the Dart-LSP, which I set up with the line require('lspconfig').dartls.setup{}.
But when I installed flutter-tools, Treesitter, as well as the installed Dart-LSP stopped working. But flutter-tools does not work either. For example, when I try to run the code_actions, I get:
E5108: Error executing lua /usr/share/nvim/runtime/lua/vim/lsp/util.lua:1799: Expected Lua number
stack traceback:
        [C]: in function 'nvim_win_get_buf'
        /usr/share/nvim/runtime/lua/vim/lsp/util.lua:1799: in function 'make_range_params'
        /usr/share/nvim/runtime/lua/vim/lsp/buf.lua:597: in function 'code_action'
        [string ":lua"]:1: in main chunk

System information

OS: Ubuntu 22.04
Flutter version: 3.7.5
Is flutter in $PATH: yes
neovim version: NVIM v0.8.3 / LuaJIT 2.1.0-beta3

Additional context
Here is nvim/runtime/lua/vim/lsp/buf.lua:597:
function M.code_action(context)
  validate { context = { context, 't', true } }
  context = context or {}
  if not context.diagnostics then
    context.diagnostics = vim.lsp.diagnostic.get_line_diagnostics()
  end
  local params = util.make_range_params() -- <-- THIS LINE
  params.context = context
  code_action_request(params)
end

And nvim/runtime/lua/vim/lsp/util.lua:1799:
function M.make_range_params(window, offset_encoding)
  local buf = vim.api.nvim_win_get_buf(window) -- <--- THIS LINE
  offset_encoding = offset_encoding or M._get_offset_encoding(buf)
  local position = make_position_param(window, offset_encoding)
  return {
    textDocument = M.make_text_document_params(buf),
    range = { start = position; ["end"] = position; }
  }
end

Hi @tom-010,
So there are a few issues with this report, firstly users are strongly advised Not to have dartls setup separate to this plugin because this is already done by this plugin. This is described in the README so I think you should take a look at that again in more detail.
Also to properly handle issues I need to have the issue reproduced in a minimal init.lua there are a few extra moving parts in a premade config that I can't really afford to spend the time digging into. Based on normal usage I can't reproduce this issue.
Can you please try setting this plugin up using the minimal init.lua without any other plugins or setup and with only the lsp setup via this plugin not via lspconfig and then see if you are still seeing issues.

@tom-010 just to clarify I'm not suggesting you change your entire configuration. I just mean for the purposes of clarifying the issue you are raising you should create an empty init.lua and load only this plugin and set it up then open a dart file and see if the issue reproduces.

@tom-010 I use LunarVim with the following config:
config.lua
reload "user.plugins"
reload "user.flutter-tools"

user/plugins.lua
lvim.plugins = {
  # ...
  {
    'akinsho/flutter-tools.nvim',
    requires = 'nvim-lua/plenary.nvim',
  },
  # ...
}

user/flutter-tools.lua
local status_ok, flutter_tools = pcall(require, "flutter-tools")
if not status_ok then
  return
end

flutter_tools.setup {
  debugger = {
    enabled = true,
    run_via_dap = true, -- use dap instead of a plenary job to run flutter apps
  },
  decorations = {
    statusline = {
      app_version = false,
      device = false,
    },
  },
  fvm = true,
  widget_guides = {
    enabled = true,
    debug = true,
  },
  dev_log = {
    enabled = false,
  },
  dev_tools = {
    autostart = false, -- autostart devtools server if not detected
    auto_open_browser = true, -- Automatically opens devtools in the browser
  },
  outline = {
    auto_open = false, -- if true this will open the outline automatically when it is first populated
  },
  lsp = {
    on_attach = require("lvim.lsp").common_on_attach,
    capabilities = require("lvim.lsp").common_capabilities,
    color = { -- show the derived colours for dart variables
      enabled = false, -- whether or not to highlight color variables at all, only supported on flutter >= 2.10
      background = false, -- highlight the background
      foreground = false, -- highlight the foreground
      virtual_text = true, -- show the highlight using virtual text
      virtual_text_str = "■", -- the virtual text character to highlight
    },
    settings = {
      showTodos = true,
      renameFilesWithClasses = 'prompt',
    },
  },
}

I'm going to close this out since I think the likely issue relates to configuring LunarVim rather than a bug in this plugin since I believe it should all work when used with a minimal configuration. If not please post a minimal init.lua and I'll retest +/- re-open this

I agree and will investigate my config further. Thank you for your help @akinsho and @amitkot

Hi @tom-010
Past few weeks I've been struggling to configure lunarvim for flutter specially with debug capabilities, I'm able to run flutter app with planery but not with dap enabled.
Have you found any solution yet?

I gave up and use vscode for flutter development, which does not happen too often. Sorry.


Change assetsPublicPath for production to ./

Also, remove warning message about not working over file://
This PR fixes #200 to enable Cordova, file://, and serving from a higher directory (e.g. building into test/dist and serving test/).
Also see PR #530 related to this one, which fixes a similar type of path issue loading fonts.

@LinusBorg See https://github.com/vuejs-templates/webpack/issues/200#issuecomment-255557630  I haven't personally tested it, but @mixedCase claims there's no issue running with vue-router in history mode and assetsPublicPath set to './'.


Issue in installing SDK - Command is wrong

pip install --upgrade azureml-sdk[notebooks]
Throws the error no matches found: azureml-sdk[notebooks].
The actual command should be either pip install 'azureml-sdk[notebooks]' or pip install --upgrade 'azureml-sdk[notebooks]'
Same goes with pip install --upgrade azureml-sdk[automl]. It should be pip install --upgrade 'azureml-sdk[automl]'

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 72c6907a-8658-f29b-cce9-6af0a359f26b
Version Independent ID: e41c8c19-d858-9a84-4b89-1b65bdd960a8
Content: Quickstart: Get started in Python - Azure Machine Learning service
Content Source: articles/machine-learning/service/quickstart-create-workspace-with-python.md
Service: machine-learning
GitHub Login: @hning86
Microsoft Alias: haining

Thanks for the feedback! We are currently investigating and will update you shortly.

@sleebapaul Hi Sleeba, thanks for the feedback. I saw a PR for that. I will close this thread, let's keep eyes on the pull request. We will now proceed to close this thread. If there are further questions regarding this matter, please respond here and @YutongTie-MSFT and we will gladly continue the discussion.

Try with noglob pip install --upgrade azureml-sdk[notebooks,automl] . The explanation of zsh and globbing ->https://github.com/MicrosoftDocs/azure-docs/issues/15893


OBSOLETE GO:0030375	thyroid hormone receptor coactivator activity

EDITED
GO:0030375 | thyroid hormone receptor coactivator activity is the only ligand-specific nuclear coactivator term left. I will obsolete with REPLACE_BY GO:0030374 nuclear receptor transcription coactivator activity
Annotation reviews: https://docs.google.com/spreadsheets/d/11e3aThHaGv6k3tytSyw3M9YLaKTckuZzoYXWnDWL5wI/edit#gid=0
Thanks, Pascale

Dear all,
The proposal has been made to obsolete 'GO:0030375 | thyroid hormone receptor coactivator activity'. The reason for obsoletion is that this term is too granular for compared to the rest of the branch. We will add a 'replace by' GO:0030374 nuclear receptor transcription coactivator activity.
There are 4 manual annotations (1 RGD, 3 MGI), see https://github.com/geneontology/go-annotation/issues/3520.
There are no mappings to this term; this term is not present in any subsets.
We are opening a comment period for this proposed obsoletion. We’d like to proceed and obsolete this term on November 23rd, 2020. Unless objections are received by November 23rd, 2020, we will assume that you agree to this change. You can  comment on the ticket: https://github.com/geneontology/go-ontology/issues/20260
Thanks, Pascale


Proposal: optional "inline" JSX API

First off, I think styled-components is great, and that it makes all the right trade-offs for the purpose of being the default "styling in react" solution. I'm not suggesting any change in the core or the focus. I'm just sharing my personal experience/opinion.
My idea/question is about adding optional alternative APIs.  I would love if styled-components could be a standard for css-in-js, but also flexible enough to be used in different ways as situations call for. For context, Glamour, for example, seems to let you use different interfaces for defining styles (https://github.com/threepointone/glamor/blob/master/docs/jsxstyle.md).
Sometimes I like the styled-components approach, but I often prefer doing this:
<Block position="absolute" right="0px" top="0px" padding="48px 24px 24px 48px">
  <Calendar />
</Block>

I find I like styled-component's "generate a component from a property definition" API when working on UI library components, and for app components which are fairly well defined and reusable.  If I were a UI designer working for an agency or a dev working on an open source component kit, I can totally see using the styled-components approach exclusively.
But many (perhaps most) components in my actual applications are not that. They are one-offs just added to get some random layout or style detail.
Just to list two quick issues with the styled-components approach, and leaving out of discussion more nuanced topics like the costs of a DSL. (1) When designing in code, I often want to see the elements with their styles together, nested as they will be in the app to "see" it at a glance, and (2) these kinds of components can be annoying to name like SecondWrapperForFirstLetterOfProfileQuote (I've been writing in roughly the jsx-style way for two years now, so I know CSS fans find dreaming up new names much less frustrating than I now do!)
More or less, I like the styled-components approach for making widgets, but often prefer the inline JSX approach for the use and especially layout of the widgets in an app.
I'm not sure if it would be possible/reasonable to implement this abstraction in the app itself or an external library and not have at least a small performance hit (at least from putting the diffing of styles you know will never change on React). Right now you can implement the bare minimal API like so, but I expect a better solution would somehow directly use the internals of styled-components.
const mapPropsToCSS = (props) => {
  delete props.theme;
  // and so forth...
  return map(props, (value, rule) => `${rule}: ${value};`)
}

export const Block = styled.div`
  ${props => mapPropsToCSS(props)}
`

This is all just for the purposes of throwing alternative APIs---and especially inline JSX---on the table.
I'm curious what others thoughts are, and, knowing nothing about the code, whether this is actually possible to do well on top of styled-components.
EDIT: I'd also point out that the inline JSX alternative is consistent with a key constraint behind styled-components, as given in Max's nice talk last month. That being it "gets rid of the mapping" between the component and the styles. Or so it seems to me, anyway!
<Block width={300} /> is just like styled.div'width: 300px' except JS(X) and following the same pattern used to set properties in every other kind of component. The props for a styling component just happen to be styles. Given how browsers work and actual history, both approaches are valid and useful IMO. And if styled-components supported both, you could always use the CSS version if you happened to want media queries or to handle a task with some selector voodoo! (Personally I rarely feel the need for CSS in app code---as opposed to web page or UI library code---since I have to explicitly represent the, say, hover state or window size for more complex effects anyway...)

Let my put a note that you already can use objects in interpolations directly without mapping. So, minimal API implementation is simple enough to keep in application code:
const Block = styled.div`${({theme, ...props}) => props}`

Speaking of unitless props <Block width={300} /> it was discussed in https://github.com/styled-components/styled-components/pull/317

Thanks for the detailed suggestion. I'm not terribly keen on introducing another top-level syntax for defining styles, mainly because I think the emphasis should be on encapsulating styles behind a named object. Your example name of SecondWrapperForFirstLetterOfProfileQuote is the downside, of course, which is why we allow nesting:
const ProfileQuote = styled.div`
  > div > :first-letter {
    font-size: 3em;
  }
`

The point being that breaking your styling into named things is a useful exercise — it follows the same structure of good vanilla CSS. When things don't warrant a name themselves, they must be a part of some other named entity, so you can use nesting. It's a balance that works well for me that I'd like to keep as the sole API for defining Styled Components.
That said, your Block component is a perfectly reasonable component all in itself. As @vdanchenkov points out, the implementation is fairly trivial, and using Blocks in that way throughout your app is totally fine. My suggestion would be that the individual CSS properties are the wrong props to be passing, though, because you can define your own more advanced logic:
const Block = styled.div`
  ${ ({absolute}) => absolute && `
    position: absolute;
    ${ absolute.split('-').map(key => `${key}: 0;`).join('') }
  ` }
  ${ ({padding}) => typeof padding === "string" && `padding: ${padding};` }
  ${ ({padding}) => Array.isArray(padding) && `padding: ${padding.map(p => `${p}px`).join(' ')};` }
`

<Block absolute="top-right" padding={[48, 24, 24, 48]}/>
<Block absolute="left-top-right-bottom" padding="1rem"/>

Or whatever makes sense for your app. Maybe an AbsoluteBlock takes different props to a StaticBlock or something. But if you find yourself wanting to pass raw CSS values to components, you may as well use inline styles.

Thanks for your detailed feedback! I certainly understand not wanting to complicate things with alternative public APIs.
I was partly feeling around for if you thought there might be obvious performance issues in regular use of something like  which takes (at least some) styles as props. But it seems it would be at least worth trying.


Hey, is this library still maintained? Is there, maybe, a roadmap?

My apologies for being so blunt with the title and many thanks for an amazing library!
I've been looking at commits here, especially at the next (vue3) branch. It doesn't seem, and please, by no means I intend to sound rude, that this library is actively maintained. I've had a look at #285 and #304, apparently major upgrade should be coming soon.
The only real reason I'm asking, I want to bring this library into a new large-scale project that my company is starting and I wouldn't want to rely on something that is going into not-maintained state.
Once again, my apologies if any of the above was disrespectful and big thanks for doing such a great work for an open-source community!

No worries, happy to share some info.
If you reference the Release strategy section of #304:

When we make the Vue 3 next branch the main branch in a future release, it will again bump the major version to 1.x

We upgraded for Vue 2.7 in #304. We plan to port those changes forward to the next branch, make necessary updates for Vue 3, and then merge next into master in the next ~month or so.
This means:

The Vue 3 version (1.x) would become the default release version going forward.
The recently Vue 2.7 release (0.10.0) will be available via a npm tag of @v2-latest, following the core Vue lib's version tag strategy.
The previous Vue < 2.7 release (0.9.6) will be available via a npm tag of @legacy


suport for ov5640?

I want to ask about this program suport for ov5640?that is suport for autofocus?

I'm working on it. Possible next year. You will need FPC-24P 0.5mm adapter to connect the ov5640 to your AI-Thinker board. Depending on which sensor you have, AF-vcc and AF-gnd need to be connected to 3.3V and GND. The one I have has AF-vcc at pin 23 and AF-gnd at 24. Connecting ov5640 to esp32-cam board directly might damage the sensor and/or the board.

Hi. Did u made this?Can u share? Where I need connect? 24pin on gnd and 23 on 3.3v? Many cameras (ov5640af) have 2.8v for work.


[Bug]:  OBS invisible sceneitems

What happened?
Don't know if this is a bug or it its itended to be:
TallyArbiter does not check for the visibility of the obs sceneitems. It seems to only check if something is in a scene.
Version
3.01
Distribution
Docker
OS
Linux
What browsers are you seeing the problem on?
No response
If applicable, What Listener Clients are You Using?
No response
TallyArbiter configuration
No response
Relevant log output
No response
Error stacktrace (if applicable)
No response

It's a bug, not a wanted feature, so I'm gonna fix it ASAP.


logging stack modifications for filebeat

Changes needed for book updates

This looks great!
Can you do me a favor by leaving logging-aws.yml intact and applying the changes to a new file (e.g., logging-aws-2.yml). That way readers with the older editions will not get confused with text that does not correspond with the code. Also, it would be great if you can change the references to logging.yml in the book to the new file.

Sorry took a minute to get to this.  Fixed and I'll update the book work ASAP

Thanks @ATLJLawrie


Add sharedSession variable to example

In order to make the shared Media Session example clearer, I believe it's better to explicitly create this variable.
PS: Please run bikeshed afterwards as I don't know which version you used.
R=@mounirlamouri

Note that I did not run bikeshed because it's unclear how the file is generated and how spec.whatwg.org picks it up.
@foolip, should we do something like I did for w3c/permissions where PR get Travis to run bikeshed and automatically push the new version? (see deploy.sh)

gentle ping to run bikeshed ;)

Done. Though, make would have done everything for you :)


Issues with Pop-Up Menu

There are sometimes clipping issues:

And here it suddenly appears not as a floating menu, but as part of the layout:

I see these clipping issues also for annotation menus and for the context menu.  Are you doing all of these by hand? Could you use a reasonable context-menu implementation / floating menu implementation instead?

Here's a recommendation by @puehringer :
Context-menus need to behave the same way as modals, popovers, ..., i.e. they need to be above everything else. One way is by hacking around with z-index, but the generally accepted solution is to mount a new node on the very bottom of body, and render everything in there with absolute positioning.
That way, you won't run into these clipping issues. Popper and nearly all other libraries solve it like this. In React, it is useful to use createPortal to avoid the complex page-flow that comes with that.

absolute positioning doesn't work when you have combination of svg and divs. divs on top of divs are easy, but divs cannot be on top of svg, you need foreignObject for that.

or at least I remember it is like so the last time I did something similar

maybe it is just z-index itself doesn't work with SVG. looks like absolute positioning does. I can change it to absolute positioning since part of code use it already


[spinel-interface] add config option to change the rx frame buffer size

Adds OPENTHREAD_CONFIG_PLATFORM_RADIO_SPINEL_RX_FRAME_BUFFER_SIZE
config option which specifies the rx frame buffer size used by
SpinelInterface in RCP host (posix) code. This is applicable/used when
RadioSpinel platform is used.

This is related to https://github.com/openthread/openthread/issues/5678.

Furthermore, should we increase the default baudrate to 460800 on RCP devices? Baudrate 115200 is simply not fast enough for transmitting 802.15.4 packets.

Yes, we should increase the default baud rate.


Context menu event not firing on full width group rows

I'm submitting a ...  (check one with "x")
[x] bug report => search github for a similar issue or PR before submitting
[ ] feature request
[ ] support request => Please do not submit support request here, instead see https://github.com/ceolter/ag-grid/blob/master/CONTRIBUTING.md#question

Current behavior
When right clicking on a full width group row (groupUseEntireRow=true), the getContextMenuItems method is not called. Instead, the browser context menu is shown. This can also be seen in the ag-grid example here.
Expected behavior
The getContextMenuItems method should be called for full width group rows as it is called for group rows that don't use the entire row to allow for a context menu.
Please tell us about your environment:

ag-Grid version: 11.0.0

Browser:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36

Language: Javascript ES6, React

Closed as context menu is an enterprise feature and opened issue in ag-grid-enterprise project. See issue here.


[feat]: support short flag -v

RT

Sometimes，-v is possible to be confused with verbose meanings。Also, this library is designed to be executed in init function which means it will be possible to override the commands of the program itself. So not recommend to support this.

RT

This could be supported by the users themselves once #12 lands. I agree that -v is more often understood as -verbose so it's probably better to not act on this for v1 of this library.


Add python-pathlib in rosdep/python.yaml

https://packages.ubuntu.com/bionic/python-pathlib
https://pypi.org/project/pathlib/
pathlib offers a set of classes to handle filesystem paths. It offers the following advantages over using string objects:
No more cumbersome use of os and os.path functions. Everything can be done easily through operators, attribute accesses, and method calls.
Embodies the semantics of different path types. For example, comparing Windows paths ignores casing.
Well-defined semantics, eliminating any warts or ambiguities (forward vs. backward slashes, etc.).

I am sorry but I didn't understand. Isn't  python-pathlib already the name of the native package? Should I add it to base.yaml instead of python.yaml?

Sorry I saw your pypi link and only one entry. That one is valid. Please fill in at least our default cross platform targets called out in the Contributing guide.

Done at 9c292aa


add check SG for MManager, MGraph and MTree

Add a method to check whether a input path has already been set to storage level or not. This method will be used in Cluster module. It helps a node to decide whether it is able to execute a cammand or not.

test coverage:


Applying an Array of string to StyleExpr property

Hi,
is there any way to Apply an Array of string to StyleExpr property
When i try to do it, an exception was thrown (errorCS0030 : cannot convert type 'Microsoft.Dynamics.Nav.Runtime.NavValue'
to 'Microsoft.Dynamics.Nav.Runtime.NAvArray<Microsoft.Dynamics.Nav.Runtime.NavText>')
have you any idea please?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 370966c5-f451-4b3c-b24a-51c6047503fa
Version Independent ID: 19065783-919f-6228-5286-e1a587ed66ba
Content: How to: Set Up Colored Indicators on Cues by Using the Style and StyleExpr Property - Dynamics NAV
Content Source: dynamics-nav/How-to--Set-Up-Colored-Indicators-on-Cues-by-Using-the-Style-and-StyleExpr-Property.md
Product: dynamics-nav-2018
GitHub Login: @jswymer

Hello, thanks for your feedback. This repo is for reporting documentation issues only, please use the regular support channel for help on this issue.

Hello any solution for this issue. Can we assign Text Array to StyleExpr ?


Feature: Add Enum type

API
Node.js
Description
An enum type is a special data type that enables for a property to be a set of predefined constants. The property value must be equal to one of the values that have been predefined for it.

I would also be curious, what is the recommended approach for an enum in Kuzu.
MySQL and PostgreSQL both provide own types, SQLite indirectly allows enums by using check constraints.
Possible syntax in Kuzu:
CREATE NODE TABLE Task (
  id INT,
  descr STRING,
  status ENUM('waiting', 'completed', 'canceled', 'in progress'),
  PRIMARY KEY (id));

Alternatively, an enum could be modeled with bare REL, like:
CREATE NODE TABLE Task (id INT, DESCR STRING, PRIMARY KEY(id));
CREATE NODE TABLE Status (id INT, value STRING, PRIMARY KEY (id));
CREATE REL TABLE has_status(FROM Task to Status, MANY_ONE);
CREATE (:Status {id:0, value: "waiting"}), (:Status {id:1, value: "completed"}),
  (:Status {id:2, value: "canceled"}), (:Status {id:3, value: "in progress"});
MATCH (s:Status {value:"in progress"}) CREATE (t:Task {id:0})-[:has_status]->(s);

, but then additional constraints for required relation and field are needed. I guess, second alternative also has worse performance characteristics (e.g. indexing) and affords MATCH for an enum value beforehand,  making queries a bit more verbose.


Add LocalView-like value to enable composable2bitmap operation

To achieve a blur behind effect, can we add a backdrop modifier like flutter?

You'd better provide such a request to Google androidx

Oops...It's my fault of not describing this feature-request.
In this projectvisual-effects, the author made the background blur effect using LocalView.current, but compose-jb haven't any similar value that can replace it....

You'd better provide such a request to Google androidx

So could you reopen this issue? Thanks

LocalView is Android specific, right

In compose-jb, there's no such concept. The entire Window is one big Skia-backed canvas.

In compose-jb, there's no such concept. The entire Window is one big Skia-backed canvas.

so...is there any way to nest another skia-based canvas to place composable and enable such operation?

You can already apply shaders on individual nodes in your hierarchy

See https://www.pushing-pixels.org/2022/04/09/shader-based-render-effects-in-compose-desktop-with-skia.html

See https://www.pushing-pixels.org/2022/04/09/shader-based-render-effects-in-compose-desktop-with-skia.html

Does not work with bitmaps images in the background
Also need to manually set the size

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


Warning on build: Critical dependency: the request of a dependency is an expression

Bug Report or Feature Request (mark with an x)
- [X] bug report -> please search issues before submitting
- [ ] feature request

Versions.
@angular/cli: 1.2.3
node: 7.9.0
os: darwin x64
@angular/animations: 4.3.1
@angular/common: 4.3.1
@angular/compiler: 4.3.1
@angular/core: 4.3.1
@angular/forms: 4.3.1
@angular/http: 4.3.1
@angular/platform-browser: 4.3.1
@angular/platform-browser-dynamic: 4.3.1
@angular/router: 4.3.1
@angular/cli: 1.2.3
@angular/compiler-cli: 4.3.1
@angular/language-service: 4.3.1

Repro steps.
Clone this repo: https://github.com/ngx-rocket/starter-kit/tree/mobile/ionic-routing
Then npm install && npm run build
The log given by the failure.
When building the app, I get this warning from the ionic-angular package:
WARNING in ./~/ionic-angular/util/ng-module-loader.js
54:11-36 Critical dependency: the request of a dependency is an expression

This is due to their lazy loading feature (even though I don't use it).
Desired functionality.
No warning emitted.
Mention any other details that might be useful.
Latest ionic version is used.
From my understanding, this issue is related to properly setup Webpack Context, but I do not see how to use this within Angular CLI. I do not want to use the eject command, and the Ionic team do not want to address the issue on their side (seems fair).
I do not know if this is actually a bug or if there is some workaround I do not know of.

If you don't use it, it should be fine. There isn't any workaround except setting the right context, and that's pretty hard. I don't know how their package works either so it kinda sounds like it's too much work to get around a warning.
I'm closing as something that we aren't planning on doing anything about, but could you link here the ionic issue where the team doesn't think it needs to be addressed? This way other users that come here can get the full context.
If there's a big demand to do away with the warning we can revisit.

Yes the app is working fine anyway, but it's annoying.
I understand it's time consuming for just a warning on your side, so maybe I could try to work on a PR? Do you have a preferred approach? I was thinking of maybe adding an option in angular-cli.json to setup webpack ContextReplacementPlugin.
This is the issue on Ionic's repo: https://github.com/ionic-team/ionic/issues/12285

We actually had ContextReplacementPlugin a long time ago just to silence a similar warning from Angular Core, which we ended up 'truly' fixing by setting the right context.
@danbucholtz is it intended that using ionic-angular shows this warning unless worked around?


Update on GetPCAzureResourceMonthlyUsageRecords

@nogreco,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


Using winpr library headers with clang

I'm trying to port some big program from Windows to Linux and I want to use winpr library. The program compiles with clang and I have some problems with winpr headers.
In spec.h threre is #define __declspec(e) __attribute__((e))
I need __declspec for other purposes, so I remore this define, and modify define DECLSPEC_NORETURN:
#ifndef DECLSPEC_NORETURN
#if (defined(__GNUC__) || defined(__clang__))
#define DECLSPEC_NORETURN __attribute__((noreturn))
#elif defined(_MSC_VER)
#define DECLSPEC_NORETURN __declspec(noreturn)
#else
#define DECLSPEC_NORETURN
#endif
#endif /* DECLSPEC_NORETURN */

The functions _rotr and _rotl are declared in crt.h but clang has built-in functions with such names that lead to compilation errors.
I replaced this snippet with the following:
#ifndef __has_builtin
  #define __has_builtin(x) 0  // Compatibility with non-clang compilers.
#endif

#if !defined(_rotl) && !__has_builtin(_rotl)
static INLINE UINT32 _rotl(UINT32 value, int shift)
{
	return (value << shift) | (value >> (32 - shift));
}
#endif

#if !defined(_rotl64) && !__has_builtin(_rotl64)
static INLINE UINT64 _rotl64(UINT64 value, int shift)
{
	return (value << shift) | (value >> (64 - shift));
}
#endif

#if !defined(_rotr) && !__has_builtin(_rotr)
static INLINE UINT32 _rotr(UINT32 value, int shift)
{
	return (value >> shift) | (value << (32 - shift));
}
#endif

#if !defined(_rotr64) && !__has_builtin(_rotr64)
static INLINE UINT64 _rotr64(UINT64 value, int shift)
{
	return (value >> shift) | (value << (64 - shift));
}
#endif

And also, in wtypes.h defined types __int8, __int16, __int32 and __int64, which are built-in types in clang. I just replace them with int8_t ... int64_t, but not sure if this is the right way.

@paluke please use the mailing list or IRC for support.
clang can compile the library quite fine (in fact the pull request tester just does that), you´re just lacking the right CMake definitions for your platform I assume?


Request CTO validation is not working

Describe the bug
It is possible to send an invalid request (with respect to the CTO model) and have the Ergo execute.
To Reproduce

Download the attached template
Using the request and state within the archive
cicero execute --request monthlysales-invalid.json --state state.json
Note that execution succeeds, when it should fail

Expected behavior
The execution should fail because sales[0].price.doubleValue is a string.
Version
Cicero 0.13.5

Validation seems to be triggered, so it might be down to Concerto. If can attach the archive, it would be helpful for reproducing in your context.
Below is a run on the promissory notes template. The last example is a String value instead of a Double which does not raise the expected validation error.
bash-3.2$ cat request-invalid1.json
{"$class":"org.accordproject.promissorynote.Payment","amountPaid":{"doubleValue":null,"currencyCode":"USD"}}
bash-3.2$ cicero execute --request request-invalid1.json
7:55:44 AM - info: Using current directory as template folder
7:55:44 AM - info: Loading a default sample.txt file.
7:55:46 AM - warn: A state file was not provided, initializing state. Try the --state flag or create a state.json in the root folder of your template.
7:55:46 AM - error: Instance org.accordproject.promissorynote.Payment#104e2645-d148-4943-9619-949481f1f10e missing required field doubleValue
bash-3.2$ cat request-invalid2.json
{"$class":"org.accordproject.promissorynote.Payment","amountPaid":{"doubleValue":100,"currencyCode":20}}
bash-3.2$ cicero execute --request request-invalid2.json
7:55:51 AM - info: Using current directory as template folder
7:55:51 AM - info: Loading a default sample.txt file.
7:55:53 AM - warn: A state file was not provided, initializing state. Try the --state flag or create a state.json in the root folder of your template.
7:55:53 AM - error: Instance org.accordproject.promissorynote.Payment#41e3b6ce-96a6-4dd0-870e-e4397966d7fa invalid enum value 20 for field CurrencyCode
bash-3.2$ cat request-invalid3.json
{"$class":"org.accordproject.promissorynote.Payment","amountPaid":{"doubleValue":100,"currencyCode":"USD","foo":1}}
bash-3.2$ cicero execute --request request-invalid3.json
7:55:58 AM - info: Using current directory as template folder
7:55:58 AM - info: Loading a default sample.txt file.
7:56:00 AM - warn: A state file was not provided, initializing state. Try the --state flag or create a state.json in the root folder of your template.
7:56:00 AM - error: Unexpected properties for type org.accordproject.money.MonetaryAmount: foo
bash-3.2$ cat request-invalid4.json
{"$class":"org.accordproject.promissorynote.Payment","amountPaid":{"doubleValue":"FOO","currencyCode":"USD"}}
bash-3.2$ cicero execute --request request-invalid4.json
7:56:03 AM - info: Using current directory as template folder
7:56:03 AM - info: Loading a default sample.txt file.
7:56:05 AM - warn: A state file was not provided, initializing state. Try the --state flag or create a state.json in the root folder of your template.
7:56:05 AM - error: [Ergo] Enforce Error at 29:4-37:5 ''
bash-3.2$

Same behaviour in Concerto:
bash-3.2$ concerto validate --ctoFiles models/*.cto --sample request-invalid1.json
8:01:19 AM - error: Instance org.accordproject.promissorynote.Payment#60a72979-cbdc-4199-b6ba-9dab46269fc3 missing required field doubleValue
bash-3.2$ concerto validate --ctoFiles models/*.cto --sample request-invalid2.json
8:01:24 AM - error: Instance org.accordproject.promissorynote.Payment#85f42a68-9729-4a39-a438-8a2a907b77a6 invalid enum value 20 for field CurrencyCode
bash-3.2$ concerto validate --ctoFiles models/*.cto --sample request-invalid3.json
8:01:28 AM - error: Unexpected properties for type org.accordproject.money.MonetaryAmount: foo
bash-3.2$ concerto validate --ctoFiles models/*.cto --sample request-invalid4.json
8:01:32 AM - info:
{
  "$class": "org.accordproject.promissorynote.Payment",
  "amountPaid": {
    "$class": "org.accordproject.money.MonetaryAmount",
    "doubleValue": null,
    "currencyCode": "USD"
  },
  "transactionId": "cfd92767-c7f9-4287-b4b6-495cdd52c6c6",
  "timestamp": "2019-12-06T13:01:32.070Z"
}

Cicero 0.13.5 was based on Composer Concerto 0.71.6 before it was moved to the Accord Project.

Concerto uses parseFloat which returns NaN on something that is not a double (e.g., "Foo").
https://github.com/accordproject/concerto/blob/2c0b62a8638da0f2c8876b176d0f8e7f8f2d9e97/packages/concerto-core/lib/serializer/jsonpopulator.js#L229
bash-3.2$ cat ~/test.js
console.log(parseFloat("FOO"));
// expected output: NaN
console.log(JSON.stringify(parseFloat("FOO")));
// expected output: "null"
bash-3.2$ node ~/test.js
NaN
null

I'm moving this issue to Concerto.


[BUG] Error during Chat using Doubao API

Description
Hi, I'm using the Doubao API for GraphRAG construction and embedding. The graph construction step worked smoothly, but I'm encountering an issue when trying to interact via the chat box—it displays an "error" message.
The logs indicate an "Unauthorized" error during chatting QA, even though I've updated the .env and settings.yaml files correctly (I'll paste them below for reference). The initial connection tests were successful, and the graph construction also completed without any problems.
My configuration files are attached:
.env:
`USE_CUSTOMIZED_GRAPHRAG_SETTING=true
OPENAI_API_BASE=https://api.openai.com/v1
OPENAI_API_KEY=<MY_OPENAI_API_KEY>
OPENAI_CHAT_MODEL=gpt-4o-mini-2024-07-18
OPENAI_EMBEDDINGS_MODEL=text-embedding-3-small
AZURE_OPENAI_ENDPOINT=
AZURE_OPENAI_API_KEY=
OPENAI_API_VERSION=2024-02-15-preview
AZURE_OPENAI_CHAT_DEPLOYMENT=gpt-4o-mini-2024-07-18
AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT=text-embedding-3-small
COHERE_API_KEY=<COHERE_API_KEY>
LOCAL_MODEL=llama3:latest
LOCAL_MODEL_EMBEDDINGS=nomic-embed-text:latest
GRAPHRAG_API_KEY=<MY_DOUBAO_API_KEY>
GRAPHRAG_LLM_MODEL=ep-20241023141551-9gkxh
GRAPHRAG_EMBEDDING_MODEL=ep-20241023145958-t97rc
GRAPHRAG_LLM_REQUEST_TIMEOUT=1800.0
AZURE_DI_ENDPOINT=
AZURE_DI_CREDENTIAL=
PDF_SERVICES_CLIENT_ID=
PDF_SERVICES_CLIENT_SECRET=
PDFJS_VERSION_DIST="pdfjs-4.0.379-dist"
VOLC_ACCESSKEY="<MY_DOUBAO_AK>"
VOLC_SECRETKEY="<MY_DOUBAO_SK>"
ARK_API_KEY="<MY_DOUBAO_API_KEY>"
`
settings.yaml.example:
encoding_model: cl100k_base
skip_workflows: []
llm:
api_key: ${GRAPHRAG_API_KEY}
type: openai_chat # or azure_openai_chat
api_base: https://ark.cn-beijing.volces.com/api/v3
model: ep-20241023141551-9gkxh
model_supports_json: true # recommended if this is available for your model.
request_timeout: 1800.0
max_retries: 3
parallelization:
stagger: 0.3
async_mode: threaded
embeddings:
async_mode: threaded
llm:
api_base: https://ark.cn-beijing.volces.com/api/v3
api_key: ${GRAPHRAG_API_KEY}
model: ep-20241023145958-t97rc
type: openai_embedding
max_retries: 3
chunks:
size: 512
overlap: 64
group_by_columns: [id]
input:
type: file
file_type: text
base_dir: "input"
file_encoding: utf-8
file_pattern: ".*\.txt$"
cache:
type: file
base_dir: "cache"
storage:
type: file
base_dir: "output"
reporting:
type: file
base_dir: "output"
entity_extraction:
prompt: "prompts/entity_extraction.txt"
entity_types: [organization,person,geo,event]
max_gleanings: 0
summarize_descriptions:
prompt: "prompts/summarize_descriptions.txt"
max_length: 500
claim_extraction:
prompt: "prompts/claim_extraction.txt"
description: "Any claims or facts that could be relevant to information discovery."
max_gleanings: 0
community_reports:
prompt: "prompts/community_report.txt"
max_length: 2000
max_input_length: 8000
cluster_graph:
max_cluster_size: 10
embed_graph:
enabled: false
umap:
enabled: false
snapshots:
graphml: false
raw_entities: false
top_level_nodes: false
local_search:
global_search:
The website screenshot is attached:
chat page (error):

llm setting page:

embedding setting page:

graphRAG construction page(successful):

reasoning setting page:

Reproduction steps
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

Screenshots
![DESCRIPTION](LINK.png)

Logs
[2024-10-23T08:09:32Z WARN  lance::dataset] No existing dataset at /home/ws_0802/BYF/kotaemon/ktem_app_data/user_data/files/graphrag/f1ceece8-2bf6-4c78-8156-4464e246d9f0/output/lancedb/entity_description_embeddings.lance, it will be created
Entity count: 6
Error embedding chunk {'OpenAIEmbedding': "Error code: 401 - {'error': {'code': 'AuthenticationError', 'message': 'The API key or AK/SK in the request is missing or invalid. requestId:<PHONE_NUMBER>72409d262685daafa7b3f3d420ff32e4ca3d4361e53', 'param': '', 'type': 'Unauthorized'}}"}
Traceback (most recent call last):
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/gradio/queueing.py", line 575, in process_events
    response = await route_utils.call_process_api(
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/gradio/route_utils.py", line 276, in call_process_api
    output = await app.get_blocks().process_api(
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/gradio/blocks.py", line 1923, in process_api
    result = await self.call_function(
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/gradio/blocks.py", line 1520, in call_function
    prediction = await utils.async_iteration(iterator)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/gradio/utils.py", line 663, in async_iteration
    return await iterator.__anext__()
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/gradio/utils.py", line 656, in __anext__
    return await anyio.to_thread.run_sync(
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/anyio/to_thread.py", line 56, in run_sync
    return await get_async_backend().run_sync_in_worker_thread(
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/anyio/_backends/_asyncio.py", line 2441, in run_sync_in_worker_thread
    return await future
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/anyio/_backends/_asyncio.py", line 943, in run
    result = context.run(func, *args)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/gradio/utils.py", line 639, in run_sync_iterator_async
    return next(iterator)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/gradio/utils.py", line 801, in gen_wrapper
    response = next(iterator)
  File "/home/ws_0802/BYF/kotaemon/libs/ktem/ktem/pages/chat/__init__.py", line 876, in chat_fn
    for response in pipeline.stream(chat_input, conversation_id, chat_history):
  File "/home/ws_0802/BYF/kotaemon/libs/ktem/ktem/reasoning/simple.py", line 655, in stream
    docs, infos = self.retrieve(message, history)
  File "/home/ws_0802/BYF/kotaemon/libs/ktem/ktem/reasoning/simple.py", line 483, in retrieve
    retriever_docs = retriever_node(text=query)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/theflow/base.py", line 1097, in __call__
    raise e from None
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/theflow/base.py", line 1088, in __call__
    output = self.fl.exec(func, args, kwargs)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/theflow/backends/base.py", line 151, in exec
    return run(*args, **kwargs)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/theflow/middleware.py", line 144, in __call__
    raise e from None
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/theflow/middleware.py", line 141, in __call__
    _output = self.next_call(*args, **kwargs)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/theflow/middleware.py", line 117, in __call__
    return self.next_call(*args, **kwargs)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/theflow/base.py", line 1017, in _runx
    return self.run(*args, **kwargs)
  File "/home/ws_0802/BYF/kotaemon/libs/ktem/ktem/index/file/graph/pipelines.py", line 366, in run
    context_text, context_records = context_builder.build_context(
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/graphrag/query/structured_search/local_search/mixed_context.py", line 140, in build_context
    selected_entities = map_query_to_entities(
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/graphrag/query/context_builder/entity_extraction.py", line 55, in map_query_to_entities
    search_results = text_embedding_vectorstore.similarity_search_by_text(
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/graphrag/vector_stores/lancedb.py", line 118, in similarity_search_by_text
    query_embedding = text_embedder(text)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/graphrag/query/context_builder/entity_extraction.py", line 57, in <lambda>
    text_embedder=lambda t: text_embedder.embed(t),
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/graphrag/query/llm/oai/embedding.py", line 96, in embed
    chunk_embeddings = np.average(chunk_embeddings, axis=0, weights=chunk_lens)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/numpy/lib/function_base.py", line 550, in average
    raise ZeroDivisionError(
ZeroDivisionError: Weights sum to zero, can't be normalized
Session reasoning type simple
Session LLM doubao
Reasoning class <class 'ktem.reasoning.simple.FullQAPipeline'>
Reasoning state {'app': {'regen': False}, 'pipeline': {}}
Thinking ...
Retrievers [DocumentRetrievalPipeline(DS=<kotaemon.storages.docstores.lancedb.LanceDBDocumentStore object at 0x7fa221b208e0>, FSPath=PosixPath('/home/ws_0802/BYF/kotaemon/ktem_app_data/user_data/files/index_1'), Index=<class 'ktem.index.file.index.IndexTable'>, Source=<class 'ktem.index.file.index.Source'>, VS=<kotaemon.storages.vectorstores.chroma.ChromaVectorStore object at 0x7fa221b20d00>, get_extra_table=False, llm_scorer=LLMTrulensScoring(concurrent=True, normalize=10, prompt_template=<kotaemon.llms.prompts.template.PromptTemplate object at 0x7fa217144970>, system_prompt_template=<kotaemon.llms.prompts.template.PromptTemplate object at 0x7fa217146c20>, top_k=3, user_prompt_template=<kotaemon.llms.prompts.template.PromptTemplate object at 0x7fa2171469e0>), mmr=False, rerankers=[CohereReranking(cohere_api_key='<COHERE_API_KEY>', model_name='rerank-multilingual-v2.0')], retrieval_mode='hybrid', top_k=10, user_id=1), GraphRAGRetrieverPipeline(DS=<theflow.base.unset_ object at 0x7fa3ea5eae60>, FSPath=<theflow.base.unset_ object at 0x7fa3ea5eae60>, Index=<class 'ktem.index.file.index.IndexTable'>, Source=<theflow.base.unset_ object at 0x7fa3ea5eae60>, VS=<theflow.base.unset_ object at 0x7fa3ea5eae60>, file_ids=['c535df11-5de3-4878-bb30-5cd100d08913'], user_id=<theflow.base.unset_ object at 0x7fa3ea5eae60>)]
searching in doc_ids []
[2024-10-23T08:09:43Z WARN  lance::dataset] No existing dataset at /home/ws_0802/BYF/kotaemon/ktem_app_data/user_data/files/graphrag/f1ceece8-2bf6-4c78-8156-4464e246d9f0/output/lancedb/entity_description_embeddings.lance, it will be created
Entity count: 6
Error embedding chunk {'OpenAIEmbedding': "Error code: 401 - {'error': {'code': 'AuthenticationError', 'message': 'The API key or AK/SK in the request is missing or invalid. requestId:<PHONE_NUMBER>83397d262685daafa7b3f3d420ff32e4ca3d42bd581', 'param': '', 'type': 'Unauthorized'}}"}
Traceback (most recent call last):
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/gradio/queueing.py", line 575, in process_events
    response = await route_utils.call_process_api(
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/gradio/route_utils.py", line 276, in call_process_api
    output = await app.get_blocks().process_api(
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/gradio/blocks.py", line 1923, in process_api
    result = await self.call_function(
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/gradio/blocks.py", line 1520, in call_function
    prediction = await utils.async_iteration(iterator)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/gradio/utils.py", line 663, in async_iteration
    return await iterator.__anext__()
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/gradio/utils.py", line 656, in __anext__
    return await anyio.to_thread.run_sync(
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/anyio/to_thread.py", line 56, in run_sync
    return await get_async_backend().run_sync_in_worker_thread(
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/anyio/_backends/_asyncio.py", line 2441, in run_sync_in_worker_thread
    return await future
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/anyio/_backends/_asyncio.py", line 943, in run
    result = context.run(func, *args)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/gradio/utils.py", line 639, in run_sync_iterator_async
    return next(iterator)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/gradio/utils.py", line 801, in gen_wrapper
    response = next(iterator)
  File "/home/ws_0802/BYF/kotaemon/libs/ktem/ktem/pages/chat/__init__.py", line 876, in chat_fn
    for response in pipeline.stream(chat_input, conversation_id, chat_history):
  File "/home/ws_0802/BYF/kotaemon/libs/ktem/ktem/reasoning/simple.py", line 655, in stream
    docs, infos = self.retrieve(message, history)
  File "/home/ws_0802/BYF/kotaemon/libs/ktem/ktem/reasoning/simple.py", line 483, in retrieve
    retriever_docs = retriever_node(text=query)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/theflow/base.py", line 1097, in __call__
    raise e from None
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/theflow/base.py", line 1088, in __call__
    output = self.fl.exec(func, args, kwargs)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/theflow/backends/base.py", line 151, in exec
    return run(*args, **kwargs)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/theflow/middleware.py", line 144, in __call__
    raise e from None
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/theflow/middleware.py", line 141, in __call__
    _output = self.next_call(*args, **kwargs)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/theflow/middleware.py", line 117, in __call__
    return self.next_call(*args, **kwargs)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/theflow/base.py", line 1017, in _runx
    return self.run(*args, **kwargs)
  File "/home/ws_0802/BYF/kotaemon/libs/ktem/ktem/index/file/graph/pipelines.py", line 366, in run
    context_text, context_records = context_builder.build_context(
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/graphrag/query/structured_search/local_search/mixed_context.py", line 140, in build_context
    selected_entities = map_query_to_entities(
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/graphrag/query/context_builder/entity_extraction.py", line 55, in map_query_to_entities
    search_results = text_embedding_vectorstore.similarity_search_by_text(
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/graphrag/vector_stores/lancedb.py", line 118, in similarity_search_by_text
    query_embedding = text_embedder(text)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/graphrag/query/context_builder/entity_extraction.py", line 57, in <lambda>
    text_embedder=lambda t: text_embedder.embed(t),
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/graphrag/query/llm/oai/embedding.py", line 96, in embed
    chunk_embeddings = np.average(chunk_embeddings, axis=0, weights=chunk_lens)
  File "/home/ws_0802/anaconda3/envs/kotaemon/lib/python3.10/site-packages/numpy/lib/function_base.py", line 550, in average
    raise ZeroDivisionError(
ZeroDivisionError: Weights sum to zero, can't be normalized

Browsers
Chrome
OS
Linux
Additional information
No response

Any update to this? I am having same issue but with Open AI API for chat?

Same issue with local ollama setup with Graghrag 0.5.0. Seems like 0.5.0 doesn't support local search method which causes this error

@elebug Can you try NanoGraphRAG or LightRAG as an alternative to see if it works?


Bump docker-compose to 1.28.0

Post-release docker-compose 1.28.0

@aiordache Thanks for the PR. Looks really good. I've suggested some minor updates. PTAL and let me know if you have any questions.

@aiordache Thanks for the PR. Looks really good. I've suggested some minor updates. PTAL and let me know if you have any questions.

@usha-mandya, @thaJeztah Thank you for reviewing!

@usha-mandya, @thaJeztah Thank you for reviewing!


503 error

I started getting 503 errors a couple weeks ago. Did they change the X-API-Key?

so sorry for the delay in responding. i was traveling this last weekend. i've successfully used the autoluv multiple times over the last couple weeks (including this last thu and sun). no issues with the api key.
503 means service unavailable which typically happens when a server is down. i'm hoping it was just a one-off issue. but let me know if you continue getting errors with future check ins.

I guess they changed the structure for their flight searches then. I had modified this script to search for flights (https://mobile.southwest.com/api/extensions/v1/mobile/flights/products...) and that no longer works. I guess this won't be quite as easy a fix as I had hoped.

is this a new endpoint they added to their API? what are the inputs?

It's been around for a while. I discovered it here http://github.com/GeorgeVentura/southwest-scraper and I see a few other references to it around github. I've been using it for at least a year and started getting 503 errors about a month ago and only got around to investigating now.

ahh, gotcha. sorry i can't be of more help since that's not an API call i plan on supporting in luvwrapper.


Add --label flags to add new label pairs during installation

For developers using public repository and templates, they might want to add labels about the release during "helm install *", in which way, developers can characterize his own releases without modifying the template files in the template directory. We have two approaches in mind to solve this problem:
1, patching metadata.labels.$key with $value after release installation
2, rendering  the template files and and adding lines in template.yaml and value.yaml before release installation.
We prefer the first approach, since which decoupes the helm client and tiller server. Further it follows the principle that rendering releases in the tiller server rather than in the helm client. Which approach would you prefer?

In the past, we've talked about doing it this way:

Render templates
Inject the labels into every resource definition
Save and install the modified manifests

But there are a couple of difficulties:

If the template already defines a label that is passed in with --label, which do we prioritize?
On resource types that have multiple label paths (Deployments, RS, RC), do we only patch the top-level labels (metadata.labels), or do we also patch the spec template labels?
During upgrade, how we merge the labels that were specified in the install with the labels specified in upgrade.
During upgrade, how do we handle a case where an upgrade's template value overrides a label set on install using --label

I think that if we can figure these out, then we could implement this sort of feature.

This now supersedes #1800
Also, with Helm 2.2.0, the new changes to the pkg/kube are done, which means this fix is much easier now than it was a month ago.
/cc @sbezverk  @kfox1111 and @intlabs

I'm marking this as "help wanted", but we do need to answer those few open questions before beginning to implement this.

For your questions:
1,If the template already defines a label that is passed in with --label, which do we prioritize?
The value that is passed in --label should be prioritized, since developers might use this --label to update the label, which is similar with --set
2, On resource types that have multiple label paths (Deployments, RS, RC), do we only patch the top-level labels (metadata.labels), or do we also patch the spec template labels?
For resources with pod engaged(i.e.,"Deployment", "ReplicaSet", "StatefulSet", "DaemonSet" ) , we patch the labels for both the top-level labels and the spec template labels. Otherwise, we only patch labels for their top-level labels.
3, During upgrade, how we merge the labels that were specified in the install with the labels specified in upgrade.
This is an excellent question, however, we do not figure out a simple and proper solution for this question. We will insistently work on this question and propose a proposal shortly for solving this question.
4, During upgrade, how do we handle a case where an upgrade's template value overrides a label set on install using --label
The value in the upgrade template should be prioritized, since upgrade process is triggered after installation, and the latter the value is passed to tiller, the higher priority it gains.

For the third question : "During upgrade, how we merge the labels that were specified in the install with the labels specified in upgrade."
We find an effective approach to solve this problem. We drop the specified label pairs through "--label" during installation if we use traditional upgrade method. And we change tiller to support users specify the "--labels" to redefine the label pairs if they want the labels pairs to take effects after upgrade. What is your opionion about this solution?

Will it be better to provide --set that can create or (if value already exists) override any value in deployment yaml?
We can use it for so many features.
helm --set metadata.labels.name=myapp --set spec.type=NodeIp

@vinayagg that was added in https://github.com/kubernetes/helm/pull/2557. :)
As for the original issue, I'm starting to dislike helm init being our documented process for configuring a tiller instance and I would push back on adding features like --label moving forward.
helm init's original goal was to be a very simple command to install a tiller instance for developer's  ease of use, not for production deployments. We've essentially re-implemented core helm features for helm init itself. For example, helm upgrade was basically reverse-engineered and re-implemented as helm init --update. This is not a long-term scalable solution where we have to re-implement every core feature of helm to bootstrap tiller. The problem is that we've opened these floodgates and as such, helm init has become the de-facto process for users wanting to deploy Tiller.
I do not have an answer to this problem (other than to deploy kubernetes manifests that mimic helm init using kubectl), but I would love to gather a discussion group around this topic at the dev summit in January. This has been a growing concern for other tools similar to Helm like draft.

/remove-lifecycle stale
In our ci, it would be very handy to easily find and display logs of pods of the same release ( with a label release for example )

/close

Meh, this would be still nice to have. Applying a label during the installation would serve as a nice marker of what was installed together.
@DoctorZK did you close since you lost hope, that this ever gets done?

Any chance this will be re-opened?

I'll re-open this. This would be a useful feature for someone from the community to tackle.

This feature is indeed very useful and I'd love to see it implemented.

we also need this feature since we install the same chart for different users and we'd like add labels to the instances to let Prometheus collect monitoring resources.

@hickeyma The post-render hook (#7260) does not satisfy this use case, because he does not process hooks (#7891). It would be really nice having a simple option to add labels to really all resources.

Agree with @ThomasSteinbach here.
It requires too much effort to add labels onto the manifests resources.
To add labels via post-rendering; i'm assuming one would need to create an executable/script which loops through the resources of the manifest and adds labels onto them.
This would be an external dependency that would need to be managed/distributed separately.

+1 for having a simple option to add labels to really all resources including hooks.

Recording to:
type PostRenderer interface {
	// Run expects a single buffer filled with Helm rendered manifests. It
	// expects the modified results to be returned on a separate buffer or an
	// error if there was an issue or failure while running the post render step
	Run(renderedManifests *bytes.Buffer) (modifiedManifests *bytes.Buffer, err error)
}

I use PostRenderer and kustomize library to implement custom labels, eg:
import (
        ...
	"sigs.k8s.io/kustomize/kyaml/kio"
)
...

var render = myPostRender{}

type myPostRender struct{}

func (r *myPostRender) Run(renderedManifests *bytes.Buffer) (modifiedManifests *bytes.Buffer, err error) {
	nodes, err := kio.FromBytes(renderedManifests.Bytes())
	if err != nil {
		return renderedManifests, errors.Wrap(err, "parse rendered manifests failed")
	}
	for _, v := range nodes {
		labels := v.GetLabels()
		if labels == nil {
			labels = make(map[string]string)
		}
                // your labels
		labels["key"] = "value"
		v.SetLabels(labels)
	}

	str, err := kio.StringAll(nodes)
	if err != nil {
		return renderedManifests, errors.Wrap(err, "string all nodes failed")
	}

	return bytes.NewBufferString(str), nil
}


Fixed documentation issues - fixes #2112

Description

Fixes broken links in mkdocs documentation. mkdocs doesn't support documents placed outside of docs folder. Absolute path has been added in "docs/README.md" file to fix the above said issue.
Also, upon Josh Hortons request, have added Apache license 2 copy right in mkdocs.yaml file and now the copy right links are redirecting to a new window without disturbing the current viewing page.
Motivation and Context

Fixes #
#2112
How Has This Been Tested?

Tested these changes in my mkdocs testing account and observed all below mentioned changes are working as expected.
Checklist:

[x] I have added a Signed-off-by.
[x] I have either added documentation to cover my changes or this change requires no new documentation.
[x] I have either added unit tests to cover my changes or this change requires no new tests.
[] I have run golint and have fixed valid warnings in code I have added or modified. This tool generates false positives so you may choose to ignore some warnings. The goal is clean, consistent, and readable code.

<EMAIL_ADDRESS>

this will conflict with #2113 I can update the same links in my PR @rameshthoomu

Incorporated these changes in PR#2103. Closing this PR.


fix: add lua modules to openresty

Oh, was this your question earlier, whether to use lua-rocks for OpenResty to install the modules? For the OpenResty image that may be the better option, TBH. I'd prefer all packages to come from the same source (in this case, all lua modules from the Lua package manager). But it probably doesn't make huge difference.

Yes, exactly. That was my question. No worries, I'll change this one.

Well, I would love to see the maintainer @TafkaMax chiming on this in the future. We mentioned that we wouldn't maintain the image, and I think this was more work than expected for openresty.

git must be installed for luarocks to build lua-zlib. This pointed me to a problem in our alpine image, where the module lua-lzlib is different from lua-zlib, and it is unmaintained and the repo is archived.
then everything is built in the last layer. I think the alpine-fat might not make sense if there is one additional step building all the lua modules and then copying the results to the final image. My 2 cents.

👉 In the end, if there is no maintenance for this image, I would drop it. We don't need the additional work. 🤷

Agreed. Let's give them the benefit of the doubt for now ;)


VHDD is not removed when deleting a VM

VM is properly created and boots but when deleting the VM, the virtual HDD remains.
/var/log/apache2/error.log
root@VDI-Control:~# echo "" > /var/log/apache2/error.log
root@VDI-Control:~# cat /var/log/apache2/error.log

root@VDI-Control:~# cat /var/log/apache2/error.log

[Tue Oct 18 13:45:50.890433 2016] [:error] [pid 14467] [client <IP_ADDRESS>:4981] Executing: sudo virsh domblklist test|grep vda| awk '{print $2}' , referer: http://<IP_ADDRESS>/kvm-vdi/dashboard.php
[Tue Oct 18 13:45:51.037703 2016] [:error] [pid 14467] [client <IP_ADDRESS>:4981] Executing: sudo rm /data/test-58066d34e8e1b.qcow2, referer: http://<IP_ADDRESS>/kvm-vdi/dashboard.php
[Tue Oct 18 13:45:51.081123 2016] [:error] [pid 14467] [client <IP_ADDRESS>:4981] sudo: no tty present and no askpass program specified\n, referer: http://<IP_ADDRESS>/kvm-vdi/dashboard.php
[Tue Oct 18 13:45:51.081143 2016] [:error] [pid 14467] [client <IP_ADDRESS>:4981] Executing: sudo virsh destroy test, referer: http://<IP_ADDRESS>/kvm-vdi/dashboard.php
[Tue Oct 18 13:45:51.339181 2016] [:error] [pid 14467] [client <IP_ADDRESS>:4981] Domain test destroyed\n\n, referer: http://<IP_ADDRESS>/kvm-vdi/dashboard.php
[Tue Oct 18 13:45:51.339219 2016] [:error] [pid 14467] [client <IP_ADDRESS>:4981] Executing: sudo virsh undefine test, referer: http://<IP_ADDRESS>/kvm-vdi/dashboard.php
[Tue Oct 18 13:45:51.397780 2016] [:error] [pid 14467] [client <IP_ADDRESS>:4981] Domain test has been undefined\n\n, referer: http://<IP_ADDRESS>/kvm-vdi/dashboard.php
[Tue Oct 18 13:45:51.530173 2016] [:error] [pid 14467] [client <IP_ADDRESS>:4981] Executing: sudo virsh list --all |tail -n +3|head -n -1|awk '{print $2" "$3}', referer: http://<IP_ADDRESS>/kvm-vdi/dashboard.php
[Tue Oct 18 13:45:51.834177 2016] [:error] [pid 14467] [client <IP_ADDRESS>:4981] Executing: sudo virsh list --all |tail -n +3|head -n -1|awk '{print $2" "$3}', referer: http://<IP_ADDRESS>/kvm-vdi/dashboard.php

ls of image directory
root@VDI-Host:/data# ls /data
test-58066d34e8e1b.qcow2
root@VDI-Host:/data#

Comment out requiretty:
# Defaults    requiretty in your sudoers file

Not there. Not sure that it changes anything but I should have mentioned OS is Ubuntu 16.04.
Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:$

Try putting your VDI user config line above Defaults.
Also check /etc/sudoers.d dir

Fixed... changed visudo to the following:
VDI     ALL=(ALL:ALL) NOPASSWD: ALL

That is what it should look like in the first place


fix(FX-3967): prevent save button from pushing other elements on the right

This PR resolves FX-3967
Description
Who/what is being impacted?
In the mobile app when a user presses the save button the text changes from Save -> Saved.
This results in moving the rest of the buttons a bit further when the users toggles between the two states
Steps to Reproduce
Go to any artwork page, press the save button
Current Outcome
text changes from Save -> Saved and the buttons on the right move from their position
Expected Outcome
The buttons should not move around when the text changes
Video Demo
Before the changes:
Check the Jira ticket for the video
After the changes:
https://user-images.githubusercontent.com/21178754/169541249-8034f56f-054f-4803-838c-1b9a04f6e6f3.mp4

PR Checklist

[x] I tested my changes on iOS / Android.
[x] I added screenshots or videos to illustrate my changes.
[ ] I added Tests and Stories for my changes.
[ ] I added an app state migration.
[ ] I hid my changes behind a feature flag.

To the reviewers 👀

[ ] I would like at least one of the reviewers to run this PR on the simulator or device.

Changelog updates
Changelog updates

Cross-platform user-facing changes

fixed flaky artwork save button - gkartalis

iOS user-facing changes

Android user-facing changes

Dev changes

Need help with something? Have a look at our docs, or get in touch with us.

was thinking to also refactor the component, but it is gonna take much more time since it is a class component and we need to change a bunch of stuff. Decided not to do it on this pr.
Maybe I can just change the deprecated palette Sans -> Text though.
Thoughts?

was thinking to also refactor the component, but it is gonna take much more time since it is a class component and we need to change a bunch of stuff. Decided not to do it on this pr.
Maybe I can just change the deprecated palette Sans -> Text though.
Thoughts?

Yes, I agree with you that it is better to make these changes in a separate PR


App centric telemetry

Make sure we're not suppressing resolve telemetry

I don't see where any resolve telemetry is being suppressed, so I think we're good. cc @bwateratmsft


Better behavior for the Shift functionality

The modal while holding shift works great, but for what I can tell this is missing the rest of the features the implementation requires.
For example:

should display after first bid
Explanied here:

should display when shift is pressed only

should appear explained on the intro modal

I'll take a swing at this later

Updated.

Left out the explanation on the intro due to lack of copy
If user has a pending bid, shift should show the notification already (is this ok?)
Added a listener for focus of window to prevent weird issue with key still pressed


add CI pipeline

cc @bartelink.
This file should be easily modifiable to run the dynamo integration tests for equinox 😉

Nice; only a matter of time now :D


Date range lable extraction

As I can see in the demo, there are various labels to select from i.e last 7 days, last week and so on.
I just wanted to know if there is any way to extract those labels, in to a variable on selection.
for eg. if I select last 7 days while selecting a range, then I want "last 7 days" as string in my variable so that i can use that label for further processing.
I was just curious about is there any work around for that or is there any way to achieve this?

I forked your repo in my own project and tried modifying it, but it failed. I did install plugin from npm, and what is observed is structure of that plugin and your code is different.
 onRangeClick(rangeLabel: string, dateRangeModel: Options) {
    this.state.activeRange = rangeLabel;
    if (rangeLabel === "Custom Range") {
      this.state.customRange = true;
    } else {
      this.state.customRange = false;
      this.config.startDate = dateRangeModel.startDate;
      this.config.endDate = dateRangeModel.endDate;
      if (this.config.timePicker) {
        this.state.times = {};
      }
      this.setActiveItemOnRangeClick();
    }
  }

this is the function is get called when you click on label, all i want is range label. Can you tell me how can i achieve this by forking your repo.
Thanks in advance

Hey @prashantmahake, thank you using this library! Appreciate it!
There are 2 ways to achieve what you want:

Get the label in your app:
You can create an rangeObject and pass it to the availableRanges prop in settings. Then in dateRangeChanged callback you can iterate over that rangeObject and get the selected label based on startDate and endDate
Make changes in the lib code:
You would need to add activeRange prop in the Options interface (activeRange?: string) and emit it in the dateRangeChanged. You can access activeRange from the state via this.state.activeRange.

Although this is a good use-case and others might benefit from this as well. If you can wait, I can make this change over this weekend and release it. Then you can use it out of the box. :)
Can you please elaborate what you mean by structure is different? I am curious about it.
Let me know if you have any other questions.

Added activeRange to output. Please update to 2.0.1.

Thanks Bhavin for such a quick response, appreciate it !!

@BhavinPatel04 Is there any option through which I can make my own custom buttons?
Like in above screen @prashantmahake has shared an image having last 7 days, last 30 days, last 90 Days,
instead, I want buttons like last 6 hours, Last 24 hours, today and tomorrow.


feat/fix(README): Import & err.

fix(README): Adjust import.
fix(README): Client not returning err.

This PR fixes the example code in the README.
I had problems with using it until i did the changes you can see in the commit.
If I am wrong with it please dispose the PR.

@gofri, thx for this module.
I had time to test it and it works like a charm!

@danriedl thanks for your contribution and your feedback!


Blank character name

Issue
I passed correct protocol number to method, and whatever I do it returns this error on server side (client doesn't log at all since server kicks the client.)
I am using tShock for the server.
Server's terraria version is <IP_ADDRESS>
tShock version is <IP_ADDRESS>
Details
Server-side log looks like this:

<IP_ADDRESS>:63469 is connecting...
Debug: Bouncer / OnGetSection rejected empty player name.
<IP_ADDRESS>:63469 was booted: Kicked: Your client sent a blank character name.
Kicked  for : 'Your client sent a blank character name.'
Saving world...

Here's my entire code:
from terrabot.events import Events
from terrabot import TerraBot

# Create a TerraBot object
bot = TerraBot('<IP_ADDRESS>', name="thisisalongname2", protocol=230)
event = bot.get_event_manager()

# Connect a function to an event using a decorator

@event.on_event(Events.Chat)
def chat(event_id, msg):
    # Do something with the message
    # In this case, stop the bot if the word "Stop" occurs
    print(msg)
    bot.message("ddd?")
    if "!e498r7afdc6" in msg:
        bot.stop()

# Start the bot
bot.start()

# And wait
while bot.client.running:
    pass

Caused by missing data on packet4


figma_age listening on MacOS port after deleting Figma - How to uninstall / remove this

Hi
I have had Figma installed on MacOs and removed it again - now I have a figma_age(lsof -i ) command running listening on port 44950 and 44960.
Thanks

I ran find / -name "*figma*" to see if there were remnants from the installation, found some stuff in Application Support and the like. After getting rid of those and rebooting, figma_age seems to not run anymore.

The FigmaAgent comes back when you update the app. This should be a setting. But meanwhile:

This seems to work for removing FigmaAgent:
• Force Quit it in Activity Monitor
• Remove it in System Preferences > Users & Groups > Login Items
• Delete ~/Library/Application Support/Figma/FigmaAgent.app
• Delete /Applications/Figma.app/Contents/Library/FigmaAgent.app

Source: https://twitter.com/qdoug/status/1374785043504185351

So did anyone find out what it listens for?

So did anyone find out what it listens for?
No, it is still a mystery. But very interesting to find out.


python311Packages.angr: 9.2.115 -> 9.2.116

Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review pr 336705 run on x86_64-linux 1

32 packages built:

python311Packages.ailment
python311Packages.ailment.dist
python311Packages.angr
python311Packages.angr.dist
python311Packages.angrcli
python311Packages.angrcli.dist
python311Packages.angrop
python311Packages.angrop.dist
python311Packages.archinfo
python311Packages.archinfo.dist
python311Packages.claripy
python311Packages.claripy.dist
python311Packages.cle
python311Packages.cle.dist
python311Packages.pyvex
python311Packages.pyvex.dist
python312Packages.ailment
python312Packages.ailment.dist
python312Packages.angr
python312Packages.angr.dist
python312Packages.angrcli
python312Packages.angrcli.dist
python312Packages.angrop
python312Packages.angrop.dist
python312Packages.archinfo
python312Packages.archinfo.dist
python312Packages.claripy
python312Packages.claripy.dist
python312Packages.cle
python312Packages.cle.dist
python312Packages.pyvex
python312Packages.pyvex.dist


[Feature] Add --whitelist, -w flag

This PR adds a --whitelist, -w flag to accept a list of Spanner table names to be exempted from truncating.
This flag comes in handy when the database contains a huge amount of tables and only a few tables not need to be purged (eg: tables store database migrations information).
Example:
Database with Table0 ~ Table99, where Table 98 and 99 do not need to be purged.
Current
spanner-truncate -i <INSTANCE> -p <PROJECT> -d <DATABASE> -q -t Table1,Table2,Table3....Table97

With -w flag
spanner-truncate -i <INSTANCE> -p <PROJECT> -d <DATABASE> -q -w Table98, Table99

Thank you @user3301 for filing this PR.
I understand the use case of this flag, but can we reconsider the flag name?

whitelist is not an inclusive wording, allowlist would be now commonly used.
But allowlist is not intuitive for this use case because certain tables must be excluded.

How about using more specific name like --exclude-tables?

Thank you @user3301 for filing this PR.
I understand the use case of this flag, but can we reconsider the flag name?

whitelist is not an inclusive wording, allowlist would be now commonly used.
But allowlist is not intuitive for this use case because certain tables must be excluded.

How about using more specific name like --exclude-tables?

Updated, PTAL.

What spanner emulator you are using? I am currently using 1.4.1 for local development and it seems the query works fine against it.


30 use queryeditquantity for collecting inputs

It implements the new QueryEditQuantity, which stores Query. It allows the use of the NOMAD GUI search interface in a dialog box and builds search queries using filters.
It supersedes the input_entry_class to search for entries by providing more flexibility. As such input_entry_class is now deprecated.

@aalbino2 have a look at this once you are back


How to add description to my cellxgene?

Hi, Is there is a way how to add description to my cellxgene instance ?
such as in the below instance
https://cellxgenevip-ms.bxgenomics.com/

Yes. A description file within the same folder as your h5ad file but file extension is 'txt'. All content in the file will be shown, with some interpretation by VIP:
Description: Human brain snRNAseq 46k cells (MS Nature 2019 Schirmer et al.)
Platform: 10X 3' v2 chemistry nuclear sequencing
Data: normalized, log transformed UMI
Initial Embedding: umap_harmony
Initial Coloring: cell_type
"initial Embedding": VIP will use this for initial visualization embedding instead the first default one;
"Initial Coloring": VIP will use the annotation to color the cells instead of all black.
Please feel free to reopen this if you have problems to set it up.

what is the name of this txt file, is it same h5ad name?

Correct, the same as the h5ad file name (whatever.name.of.your.h5ad), with 'txt' extension as whatever.name.of.your.txt in the same folder.


TintedDrawable usage in skin files

com.badlogic.gdx.scenes.scene2d.ui.Skin$TintedDrawable allows to create new skin drawables from existing ones by tinting them with a selected color. Since the majority of current VisUI assets is composed of a single color (buttons, borders, sliders), it would make sense to provide a single white image for each of them and tint it at runtime. This might slightly reduce the size of atlas and allow the users to create custom skins with a few lines of code rather than hours in image editors. gdx-lml-tests can be an example of such skin in practice (it's still way worse than VisUI, but at least I can confirm that tinting nine-patches works).
Now that I think of it, even two-color drawables could be easily made more flexible by making them lighter and by tinting them with a darker color at runtime. One wouldn't have to regenerate the atlas or even use any of the raw assets to make a considerably different theme out of your default skin simply by providing a modified JSON file.

I don't think that size atlas is the problem, 512x256 for X1 scale where majority is taken by fonts anyways.
Ability to create custom skin by changing tints sounds nice but there are some implications. Some elements can't be made just from tinging images. eg. color picker elements, window background with border, arrows or scroll knobs. Using tint approach for two color drawable most likely will too different than original image.
This would also require modifying behavior of few widgets: checkbox, selectbox and window background with border. Eg. select box you would need to split background and foreground. Select box is implemented in libgdx and we don't know if that change would be accepted.
In the future they can be more elements that can't be done with tint and would require image.  Imagine that user can tint some drawables and some not because they are images, would be pretty frustrating. I don't think it's worth doing this just for the sake of simplifying skin creation.

Using tint approach for two color drawable most likely will too different than original image.

Well, not necessarily. All you have to do is lighten the two color image to the point which represents the difference between the lightest and the darkest color, and then tint it with the difference.
The color picker elements have no need to be tinted at all, imho.
Well, I understand your points, but I still think such skin would be useful - especially for designing, where you can recolor your whole GUI with a single like of JSON data.
What do you think about starting a repository with external VisUI skins? I'll probably create such skin for my own needs, and I don't mind sharing it with the others - an official repo for such contributions would be nice.

Well imho libgdx with it's image approach is too limited for creating reusable UIs. In perfect world you could write some css, add images as needed etc. Restyling that would be relatively easy.

The color picker elements have no need to be tinted at all, imho.

Right but this again creates that split where you can tint some elements and some not. Plus the need of modifying widgets code.

What do you think about starting a repository with external VisUI skins? I'll probably create such skin for my own needs, and I don't mind sharing it with the others - an official repo for such contributions would be nice.

I like this, it could be also used for extensions/utils classes that don't fit here. vis-ui-contrib?

I like this, it could be also used for extensions/utils classes that don't fit here. vis-ui-contrib?

Agreed. Just add some simple rules about adding new skins (one should specify version compatibility, unsupported widgets, etc.) and I'll pull a request in a few days. I think this issue can be closed, unless you want to officially support skin version with tinted drawables as an alternative to the default one.

I've created contrib repo: https://github.com/kotcrab/vis-ui-contrib. Closing this.


40P M40 HEDP Grenades x6

Done in https://github.com/CM-14/CM-14/commit/0a9d363c531ac2185e7fd030fe1f04cd7cf091f4


update suggestion for update caasp5 cluster images list (#1750)

Why is this PR needed?
Update skuba cluster images list
Fixes https://github.com/SUSE/avant-garde/issues/1750
What does this PR do?
update suggestion for update caasp5 cluster images list (#1750)
Anything else a reviewer needs to know?
Special test cases, manual steps, links to resources or anything else that could be helpful to the reviewer.
Info for QA
This is info for QA so that they can validate this. This is mandatory if this PR fixes a bug.
If this is a new feature, a good description in "What does this PR do" may be enough.
Related info
Info that can be relevant for QA:

link to other PRs that should be merged together
link to packages that should be released together
upstream issues

Status BEFORE applying the patch
~ skuba cluster images
VERSION    IMAGE
1.15.2     registry.suse.com/caasp/v5/pause:3.1
1.15.2     registry.suse.com/caasp/v5/etcd:3.3.11
1.15.2     registry.suse.com/caasp/v5/cilium-init:1.5.3
1.15.2     registry.suse.com/caasp/v5/cilium:1.5.3
1.15.2     registry.suse.com/caasp/v5/kured:1.2.0-rev4
1.15.2     registry.suse.com/caasp/v5/cilium-operator:1.5.3
1.15.2     registry.suse.com/caasp/v5/caasp-dex:2.16.0
1.15.2     registry.suse.com/caasp/v5/coredns:1.3.1
1.15.2     registry.suse.com/caasp/v5/skuba-tooling:0.1.0
1.15.2     registry.suse.com/caasp/v5/hyperkube:v1.15.2
1.15.2     registry.suse.com/caasp/v5/gangway:3.1.0-rev4
1.16.2     registry.suse.com/caasp/v5/caasp-dex:2.16.0
1.16.2     registry.suse.com/caasp/v5/hyperkube:v1.16.2
1.16.2     registry.suse.com/caasp/v5/skuba-tooling:0.1.0
1.16.2     registry.suse.com/caasp/v5/kured:1.3.0
1.16.2     registry.suse.com/caasp/v5/cilium-init:1.5.3
1.16.2     registry.suse.com/caasp/v5/cilium-operator:1.5.3
1.16.2     registry.suse.com/caasp/v5/cilium:1.5.3
1.16.2     registry.suse.com/caasp/v5/etcd:3.3.15
1.16.2     registry.suse.com/caasp/v5/coredns:1.6.2
1.16.2     registry.suse.com/caasp/v5/pause:3.1
1.16.2     registry.suse.com/caasp/v5/metrics-server:0.3.6
1.16.2     registry.suse.com/caasp/v5/gangway:3.1.0-rev4
1.17.4     registry.suse.com/caasp/v5/cilium-init:1.6.6
1.17.4     registry.suse.com/caasp/v5/caasp-dex:2.16.0
1.17.4     registry.suse.com/caasp/v5/gangway:3.1.0-rev4
1.17.4     registry.suse.com/caasp/v5/skuba-tooling:0.1.0
1.17.4     registry.suse.com/caasp/v5/etcd:3.4.3
1.17.4     registry.suse.com/caasp/v5/coredns:1.6.5
1.17.4     registry.suse.com/caasp/v5/pause:3.1
1.17.4     registry.suse.com/caasp/v5/kured:1.3.0
1.17.4     registry.suse.com/caasp/v5/hyperkube:v1.17.4
1.17.4     registry.suse.com/caasp/v5/metrics-server:0.3.6
1.17.4     registry.suse.com/caasp/v5/cilium-operator:1.6.6
1.17.4     registry.suse.com/caasp/v5/cilium:1.6.6
1.18.2     registry.suse.com/caasp/v5/controller-manager:v1.18.2
1.18.2     registry.suse.com/caasp/v5/coredns:1.6.7
1.18.2     registry.suse.com/caasp/v5/pause:3.2
1.18.2     registry.suse.com/caasp/v5/api-server:v1.18.2
1.18.2     registry.suse.com/caasp/v5/gangway:3.1.0-rev4
1.18.2     registry.suse.com/caasp/v5/caasp-dex:2.23.0
1.18.2     registry.suse.com/caasp/v5/proxy:v1.18.2
1.18.2     registry.suse.com/caasp/v5/etcd:3.4.3
1.18.2     registry.suse.com/caasp/v5/kured:1.3.0
1.18.2     registry.suse.com/caasp/v5/cilium-init:1.6.6
1.18.2     registry.suse.com/caasp/v5/scheduler:v1.18.2
1.18.2     registry.suse.com/caasp/v5/skuba-tooling:0.1.0
1.18.2     registry.suse.com/caasp/v5/metrics-server:0.3.6
1.18.2     registry.suse.com/caasp/v5/cilium-operator:1.6.6
1.18.2     registry.suse.com/caasp/v5/cilium:1.6.6

Status AFTER applying the patch
> skuba cluster images
VERSION    IMAGE
1.18.5     registry.suse.com/caasp/v5/proxy:v1.18.5
1.18.5     registry.suse.com/caasp/v5/metrics-server:0.3.6
1.18.5     registry.suse.com/caasp/v5/controller-manager:v1.18.5
1.18.5     registry.suse.com/caasp/v5/pause:3.2
1.18.5     registry.suse.com/caasp/v5/skuba-tooling:0.1.0
1.18.5     registry.suse.com/caasp/v5/kured:1.3.0
1.18.5     registry.suse.com/caasp/v5/cilium:1.7.5
1.18.5     registry.suse.com/caasp/v5/etcd:3.4.3
1.18.5     registry.suse.com/caasp/v5/gangway:3.1.0-rev4
1.18.5     registry.suse.com/caasp/v5/cilium-operator:1.7.5
1.18.5     registry.suse.com/caasp/v5/api-server:v1.18.5
1.18.5     registry.suse.com/caasp/v5/scheduler:v1.18.5
1.18.5     registry.suse.com/caasp/v5/coredns:1.6.7
1.18.5     registry.suse.com/caasp/v5/caasp-dex:2.23.0
1.18.5     registry.suse.com/caasp/v5/kucero:1.1.1
1.18.5     registry.suse.com/caasp/v5/cilium-init:1.7.5

Docs
If docs need to be updated, please add a link to a PR to https://github.com/SUSE/doc-caasp.
At the time of creating the issue, this PR can be work in progress (set its title to [WIP]),
but the documentation needs to be finalized before the PR can be merged.
Merge restrictions
(Please do not edit this)
We are in v4-maintenance phase, so we will restrict what can be merged to prevent unexpected surprises:
What can be merged (merge criteria):
    2 approvals:
        1 developer: code is fine
        1 QA: QA is fine
    there is a PR for updating documentation (or a statement that this is not needed)

Hmmm... this change would break kucero MUST deploys before upgrade to 1.18 since the kubelet CSR signer must exist before upgrade to 1.18. So I intend to add kucero in 1.17.

We used to be able to use --kubernetes-version when initializing the cluster in order to deploy different versions of kubernetes with the same installation of skuba. It's very useful to me. It looks like this will remove that possibility since this will now only be able to deploy images that are compatible with 1.18.5. Is that what we want?

I think we need to leave the old images inside of this output. Air-gap users rely on this command to get the names of the images to mirror, they might have older CaaSP clusters around -> we cannot drop it.
I would close this PR

hmm, I think the problem here is not just for air-gap, because for air-gap it's more about for downloading the artifacts for the current version, so keeping the artifact info for the latest version should be fine.
The potential issue should be that other versions of artifacts need to exist for the upgrade to use? If yes, this change will be problematic. Didn't check the code yet, but I would suggest keeping the existing v4 info and add v5 by figuring out how to handle well for backward compatibility if needed.
@cclhsu please help review the code again to make sure the regression. cc @jenting

ImageRepository of skuba in ../skuba/pkg/skuba/*_constants.go are code version v5.  Images for 1.15.2, 1.16.2, and 1.17.4 will not be able to download under this path registry.suse.com/caasp/v5.  Unless skuba is going to support backward comparable airgap, I would remove the  1.15.2, 1.16.2, and 1.17.4 from v5.

I'm not sure how the user syncing the container images into their local server in the air-gapped env. Would they fully sync all container images and flush the old ones or they just upload the missing container image to the server?
I believe the latter is more possible in my point of view. Then, removes the legacy container images is make sense to me.
Furthermore, the devel flag --kubernetes-version=1.15.2/1.16.2/1.17.4 would not work anymore in v5 since skuba did not maintain the v4/v5 container image version inside the code. As a developer, it's nice to have the --kubernetes-version works since testing cluster upgrades scenario make it more easily. My 2 cents.

In airgap environment, user will download image to their registry server like following:
IMAGES=(
"registry.suse.com/caasp/v4/helm-tiller:2.14.2"
"registry.suse.com/caasp/v4/etcd:3.4.3"
"registry.suse.com/caasp/v4/coredns:1.6.5"
"registry.suse.com/caasp/v4/pause:3.1"
"registry.suse.com/caasp/v4/skuba-tooling:0.1.0"
"registry.suse.com/caasp/v4/hyperkube:v1.17.4"
"registry.suse.com/caasp/v4/caasp-dex:2.16.0"
"registry.suse.com/caasp/v4/gangway:3.1.0-rev5"
"registry.suse.com/caasp/v4/kured:1.3.0"
"registry.suse.com/caasp/v4/cilium-init:1.5.3"
"registry.suse.com/caasp/v4/cilium-operator:1.5.3"
"registry.suse.com/caasp/v4/cilium:1.5.3"
)

for IMAGE in ${IMAGES[@]}
do
    skopeo copy docker://${IMAGE} docker://${DOCKER_INTERNAL_IP}:${REGISTRY_PORT}/${IMAGE} --src-tls-verify=false --dest-creds=${REGISTRY_USER}:${REGISTRY_PASS}
done

--kubernetes-version should keep/work for future CaaSP5 upgrade once we upgrade to next, next version.

Let's hold this PR which causes some tedious implementation to fix a small issue. Of course, we all know the reasons behind because of changes of repos path (setup by terraform script) and image paths (determined at compile time), not everything can be controlled by skuba alone.
Also --kubernetes-version seems broken when starting to change the repos/images for v5, so it's not caused by this bug fixing. I would suggest let's don't mix the things together.

After reviewing the code, there is room to improve.
@cclhsu I will create another PR and you can help continue there. Thanks.

Thanks @cclhsu , innobead, jenting, c3y1huang, and everyone involved !


feat: data source as websockets → logs → listener → backfill

This PR significantly cleans up the user experience when a user manages to navigate to a page that they do not have data for.

This PR does not handle the nuance of someone that is going to an Organization that the may not have permission to. This really begs the question if anything at all, should be hidden -- The obvious answer is yes as we do not want to stream multiple chains worth of data constantly.

Please review and check out if you are good with this @masonchain.
I am aware I did not implement a link for the Check the chain button because I am going to loop back with a PR that adds a 'getExplorerURL({chainId,orgAddress,badgeId})`.


Help the compiler pick the right div() function

The C standard library exposes (via the Darwin module)
another function called div() with different return types.
By specifying the return type here, we can ensure the
compiler consistently picks our div() function from
MathUtils.swift instead of the Darwin one.

@tbkka ugh this is really unfortunate. Maybe we should rename ours?

Renaming might make this simpler/clearer.


None code contributions

There are plenty of non-code contributions for this project:

Coming up with a script for the about us page. Come up with a script that best defines what you think the company intends to achieve. The readme file, the description, and demo version are some of the resources that might help you with this.
You could do a rebrand of the app. Try to design a new logo. Even a new name, backed up with a script explaining your thought process and why you think the app should be rebranded this way.
Coming up with new issues
Coming up with a mock up for the landing page

Hi @OlePundit , I want to work on this.

Sure let me assign you

could i work on it as well?


Restore lost change

Looking at the git log, I think the change corresponding to https://github.com/ocaml-sf/ocaml-sf.github.io/commit/fa3a77bcc60fc4227d712d0ea4409c07fe77b23b was lost?
cc @gasche

It was in my local copy but I had forgotten to push it. It's done now.

Actually I mean: in the source repository, the change was only in my local copy.

It was in my local copy but I had forgotten to push it. It's done now.

Thanks!


Business: New properties about Delivery costs

It would be great to be able to tag businesses that deliver for free (especially locally like for example https://www.ueli-der-beck.ch/shop) but also have free delivery country wide.
Idea: add a checkbox "free" behind every delivery area input field, which would mean that this range is free (e.g. City of Berne is free, but also delivers to entire Switzerland)
Might be a bit late to add this property...

This is related to #174

Great idea! For me tthis and similiar Feature-Requests all sound that we should provide some kind of "tagging" feature. So we could apply custom Tags such as:

Free-Delivery
Easter-Special
Direct-Delivery-Online
etc...