Feature request: ability to view values of the properties, generated by text labels (add a column "Value" )

In properties Tab:

current clumn 'Value' rename to 'Formula'
add column 'Value' (calculated by text label expressions in column firmula)

In HTML export show only property values (at this time the text labels are shown).
If the formula contains no label-expressions, then value is equal to formula text

Please provide more details, use cases, etc. Not sure what you mean by "add a column 'Value'".

The problem is that when I use complicated formulas in propertis with links between archomate concepts and folders and so on - I can't see the values of the properties for descendant object in the properties list (only when using them on labels for the current view).

I can understand wanting to preview the result of an expression for convenience, but I don't think renaming the existing "Value" column is a good idea in case there are no label expressions used.

I can understand wanting to preview the result of an expression for convenience, but I don't think renaming the existing "Value" column is a good idea in case there are no label expressions used.

the name of the column is not principal. You may call the new column 'Preview' (and it will be the same as Value if there are no expressions).
But important thing IMHO is that when exporting to HTML (where no expressions are converted) better change the text of 'Value' to 'Preview' text. Because in HTML or other report there is no need for the formula - but is frequently needed to see the calculated value of the property.

As for example, in MS Visio there are two view types for the object property - value view and formula view:

To summarise the feature request:

Preview the computed value of a label expression in a Property (if there is one) somewhere in the table
Substitute the computed value of a label expression in a Property's value when generating reports (HTML, Jasper)

We can think about these, and perhaps consider them for the next time we add/update the Label Expressions feature (perhaps for Archi 4.8).

Hi, jumping on this...
What's the exact need behind? (for me, "being able to define properties through expression" is not a need, it is already a solution for a need I know nothing about).

We can think about these, and perhaps consider them for the next time we update the Label Expressions feature (perhaps for Archi 4.8).

We first have to be clear about the goal and use-cases. For me this is not really related to label expression but more with having typed properties with a type being "formula". But again, use-case should come first...

Hi, jumping on this...
What's the exact need behind? (for me, "being able to define properties through expression" is not a need, it is already a solution for a need I know nothing about).

We can think about these, and perhaps consider them for the next time we update the Label Expressions feature (perhaps for Archi 4.8).

We first have to be clear about the goal and use-cases. For me this is not really related to label expression but more with having typed properties with a type being "formula". But again, use-case should come first...

Goal is to put data in one place and use in many.
For example, I want to see parent's (device) properties in the child object (interface).

It seems there are two requirements.
This:

The problem is that when I use complicated formulas in propertis with links between archomate concepts and folders and so on - I can't see the values of the properties for descendant object in the properties list (only when using them on labels for the current view).

To be able to preview the rendered label expression for convenience (perhaps a tooltip when hovering over the expression)
And this:

But important thing IMHO is that when exporting to HTML (where label-expressions are not working) better change the text of 'Value' to 'Preview' text. Because in HTML or other report there is no need for the formula - but it is frequently needed to see the calculated value of the property.

Which is, as JB says is:

being able to define properties through expression
having typed properties with a type being "formula".

What's the exact need behind?
Need is to be able to see values not only after putting them into view

Which is, as JB says is:

being able to define properties through expression
having typed properties with a type being "formula".
properties are already defined by formulas - so why not to say B, when sad A ? :-)

The original intent of this feature was to provide a means to display alternate text in labels in objects in Views and in the Models Tree. Expressions in Properties were intended to support this visual feature, not to behave like "labels" themselves or, as JB puts it, not intended to "being able to define properties through expression".

The original intent of this feature was to provide a means to display alternate text in labels in objects in Views and in the Models Tree. Expressions in Properties were intended to support this visual feature, not to behave like "labels" themselves or, as JB puts it, not intended to "being able to define properties through expression".

But all the visual alternative text is build of "labels" which are not abstract and has logical and physical meaning.
This is why it is nessesary to have an option to model them not only visual - so to have a real model, whith which you can fully operate through model tree, but not only through visual schemas.

Example - I have a node and I need to move it from one device to another.
And I have a property 'IP' whuch is derived from the parent object (device) by the child (node).
So, I whant to see in other diagrams an IP of the node (according to a new device) even if there is no parent device on the diagram.

Further it goes to the autonaming of the object in model tree using text label expressions... but offcouse this is for discussion

These kinds of changes can have a bigger impact than one expects.
Just some thoughts off the top of my head...

What about users who expect to see the literal property value when viewed in reports, jArchi, etc?
And does that mean the model would need a new property field for the "rendered" value?
When using properties in jArchi, in HTML Report, in Jasper reports and so on should this be an option when creating output (rendered or literal)? And if it is an option where is it? How does this affect the report ACLI options?

These kinds of changes can have a bigger impact than one expects.
Just some thoughts off the top of my head...

This is why I suggest to use a new field for the formulas, and use Value only as values, which are recalculated in case of formula field was filled.
In this case all dependent code will use the "rendered" value, and only Archi wil render it "online".
My idea comes from this 2 points:

formulas in properties are excelent and must have feature, that is very helpful in everyday same operations
excelent tools (like HTML Reports, JasperReports, jArchi and so on doesn't need formulas - they need only values - because they don't and can't have the same render technology, as Archi)

Going further - another idea is to use conditional formating according to properties values (for inplementation example you can look at yEdGraph and Visio).


Implement Assets list on the homepage

Context
Prerequisite: #457
Once we implement the Assets page, we want to add the list of top Assets sorted in descending order on the Homepage as well.
User flow
Describe the user flow using user stories so the end result is super clear - PM

User Imports tokens via functionality 'Import token'
User sees: token name, symbol, and the balance in the list on the homepage.
User can click on 'view all' to go to the Assets page as only limited amount of Assets can be displayed.

How to

tbd after design validation

Technical details
Give the technical insights so anyone in the team can tackle the tasks - Dev
QA testing
Does this task require some QA tests ?
If yes, explain how to validate it

pending design validation

Final designs: https://www.figma.com/file/LSaOibVDFb1reF6FePVn5l/Massastation?type=design&node-id=5188-34841&mode=design&t=JDgTNahzxKFwIKY5-0

related issue #567

Prerequisite:  https://github.com/massalabs/station-massa-wallet/issues/567 because there's no need to add the Assets list on homepage unless we allow sending fungible tokens from Massa wallet


Added Dribbblish dynamic theme

See readme for a gif and more details

Am I missing something or there are no new information (from the original theme)?

I think the only difference is the gif.

@JulienMaille what is the percent btw?

Am I missing something or there are no new information (from the original theme)?

The difference with original theme is mostly that the accent color will follow the current - album cover (look at the gif in the readme) and the cover is visible in the background.

@JulienMaille what is the percent?

The percent is the popularity of the track given by spotify

@JulienMaille what is the percent?

The percent is the popularity of the track given by spotify.
Do you like my mod?

Yeah, using it, it looks very nice.

@JulienMaille It looks like this cover is broke the team.

Thanks for reporting, can you try my fix?

It worked.

@JulienMaille on launch the color is default. Can you make it to correspond to the cover?

It should already work like that but something is wrong with events on startup.


It's not work for cloudflare,could you fix it ?

It's been detected by cloudflare .How should I solove that?

I've faced with the same issue. I've checked using this script:
from playwright.sync_api import BrowserContext, sync_playwright

from undetected_playwright import stealth_sync

import pdb

with sync_playwright() as playwright:
    browser = playwright.chromium.launch(headless=False)
    context = browser.new_context()
    page = self.context.new_page()
    stealth_sync(self.context)
    page.goto("https://www.nowsecure.nl")
    pdb.set_trace()

I also had the same problem as you. Can someone help?


Wheel support

Add wheel support.

This library is not a pure python package so universal is not valid.  We do provide manylinux and Windows binary wheels on pypi already.

Coverage remained the same at 94.454% when pulling 1b14e47562f017491b6ffd142dc9f2c930954863 on ar4s:wheel-support into 04bd2e7e0390b31cb6b7222dc5e2ba4df7fb963f on dahlia:master.


Add wait-for-it.sh to prevent docker-compose race condition.

Added wait-for-it.sh script closes #6

Thanks @CrashyBang! I just tested your fork and this is a helpful improvement for getting a smooth, errorless run the 1st time.
Per the question you raise in the issue, I think this is a good stopgap for avoiding an obvious error. However, it also reveals a deeper issue that should be addressed at some point, which is that the server should attempt to retry its connection to the database when it catches a SequelizeConnectionRefusedError. That connection is made using the Sequelize library, and there's an open issue for this exact problem.
I'll definitely accept this PR, but I also wonder if you have any thoughts on improving the resilience of the DB connection?

Hey @allanlasser yeah I totally agree with that, it is not just Sequelize either Knex.js has a similar problem.
As far as making it more resilient we could try and catch the error ourselves, or wait on the outstanding PR.
Also if you don't want to add the wait-for-it.sh to the source I ended doing the following in my own project, because like you say this is a work around and it would be better if we could address the core issue:
RUN curl -o ~/wait-for-it.sh https://raw.githubusercontent.com/vishnubob/wait-for-it/master/wait-for-it.sh \
    && chmod +x ~/wait-for-it.sh

ENTRYPOINT ~/wait-for-it.sh postgres:5432 -- npm run start

Thoughts?


Add ThermoPro, Shelly and Goovee temperature/humidity sensors

@eberseth @Dan-Kouba if any of you guys can help me push this one in, I'll appreciate it.
Thank you.


bug(iOS): Email Us button only works on desktop

Issue:
The Email Us button only seems to work on desktop. When you tap it on a mobile device it does nothing
Steps to reproduce:

Go to Settings / Profile
Scroll down to Email Us
Tap the Email Us button

Devices:
Mobile
Screen recording:
Mobile -
https://github.com/user-attachments/assets/b1d0f05f-73b3-4c74-92a4-de9a05738871
Desktop -
https://github.com/user-attachments/assets/053a6334-d291-44d1-b65e-5202ad59678a

@phillsatellite Worked on my iOS.


Unable to use voice_id

I am using a voice_id from the library in python SDK, but I get an error saying
status_code: 400, body: {'detail': {'status': 'voice_does_not_exist', 'message': 'A voice with voice_id TqZ039H4XqpiGTowubpy does not exist.'}}
Here is the code.
I can pass a voice name (not the name it has though. a different one, ex: Chris). Are VoiceLab voices are not available via Python SDK? I am assuming they will be available via REST API.
    voice_client = ElevenLabs()
    audio_stream = voice_client.generate(
        text=msg.content,
        voice="TqZ039H4XqpiGTowubpy",
        model="eleven_multilingual_v2",
        stream=True)

I even tried following. same issue
    """
    Converts text to speech and returns the audio data as a byte stream.

    This function invokes a text-to-speech conversion API with specified parameters, including
    voice ID and various voice settings, to generate speech from the provided text. Instead of
    saving the output to a file, it streams the audio data into a BytesIO object.

    Args:
        text (str): The text content to be converted into speech.

    Returns:
        IO[bytes]: A BytesIO stream containing the audio data.
    """
    # Perform the text-to-speech conversion
    response = client.text_to_speech.convert(
        voice_id=voice_id,  # Adam pre-made voice
        optimize_streaming_latency="0",
        output_format="mp3_22050_32",
        text=text,
        model_id="eleven_multilingual_v2",
        voice_settings=VoiceSettings(
            stability=0.0,
            similarity_boost=1.0,
            style=0.0,
            use_speaker_boost=True,
        ),
    )

    print("Streaming audio data...")

    # Create a BytesIO object to hold audio data
    audio_stream = BytesIO()

    # Write each chunk of audio data to the stream
    for chunk in response:
        if chunk:
            audio_stream.write(chunk)

    # Reset stream position to the beginning
    audio_stream.seek(0)

    # Return the stream for further use
    return audio_stream```

Hey @veeragoni -- do you mind trying the same code snippets but with passing in an api key?

I actually have the api key coming from environment variables.
this call works fine. its jus that voice_id doesn't work.
    audio_stream = voice_client.generate(
        text=msg.content,
        # voice="TqZ039H4XqpiGTowubpy",
        voice = "Chris",
        model="eleven_multilingual_v2",
        stream=True)

@veeragoni that's interesting, we haven't been able to create a successful reproduction. Would you be up to grab 15 minutes with me to help get to the bottom of this?

Sure. Meantime can you try on a free account vs. paid. That could be it too? I will grab time anyways.

was this ever resolved? I'm been having the same issue. it looks like you can't use custom voice lab voices. doesn't recognize the voice id

@mhussar do you have a reproduction of the issue? we weren't able to reproduce it with @veeragoni

@dsinghvi we are having the same issue and we are able to reproduce


Code snippets ru i18n

I noticed that I used wrong paths to code snippets
So, I fix it

The CI seems to complain about those paths

I got it
I must add "!!raw-loader!"

Thanks!


Refactoring user agent check and whitelisting Sia-Explorer agent

See corresponding change in Sia-Explorer: https://github.com/NebulousLabs/Sia-Explorer/pull/24

No need for Sia-Explorer; it's fine to just use Sia-Agent. (Sia-Miner is preserved for compatibility reasons, but will probably be removed eventually)


LDAP query support

After some thought, I might even use this feature in order to map compromised accounts to their AD group.
Might also add an alert that triggers if Domain Admin cred is found.

This should be taken care of by implementing #121

Done in 3cb0e7704306758865f21e6fae7777645fcd1496


Added license and notice files

Description of changes: Docs 2.1 conversion
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/do-doc-build


[TIR, analysis] Add expr hash sort in ExprDeepEqual

Refer to issue https://github.com/apache/tvm/issues/10211. The CSE pass can't handle commutativity because the arith system may not be able to do the commutativity。
The determination of the equality of two expressions (PrimExpr) is to use the method of structured determination, that is, to traverse the hierarchical structure of the two expressions, and to judge while traversing, if the structures of the two expressions are the same, and the smallest If the child nodes (nodes that cannot be traversed, generally such as Var) are the same, the expressions are considered to be the same.
Before performing PrimExpr comparison, a series of rewrite rules will be used to rewrite expressions to solve some operational problems, such as x * y + x * z will be rewritten as x * (y + z), so that to deal with distributivity.
However, commutativity cannot be rewritten due to the characteristics of rewrite (it will fall into an infinite loop). This makes it impossible to compare the equality of some expressions, such as a * b *c != a * c * b, (a * b) * c != a * (b * c).
To solve this problem, one solution is to sort and rewrite the expressions according to the StructuralHash of the Var nodes in the expressions before comparing the expressions. If two expressions are equivalent if they satisfy the commutativity, then they will definitely produce equivalent expressions of the same structure after sorting.
Under the assumption that the two expressions have the same structure, the determination condition that the two expressions satisfying the commutativity are the same can be further refined to the same set of all elements in the sub-expressions satisfying the commutativity. The sub-expressions satisfying the commutativity in the expression can be grasped by constructing the expression syntax tree. The sub-expressions satisfying the commutativity are the sub-trees of the expression tree whose child nodes are identical (the child nodes are OP).
An example:
    Var： a, b, c, d, e

    StructuralHash(a > b >c >d > e)

    cse_var_1  = a * b *c + d + e

    cse_var_2 = b * a * c + e + d

Sort and rewrite cse_var_1 and cse_var_2, first extract their first subexpressions a * b *c and b * a * c, and rewrite them as a * b * c, and then extract the sub-expressions again ( a * b *c) + d + e and (a *b * c) + e + d, rewriting the sort as (a * b *c) + d + e, get the same expression.
cc @masahi @Hzfengsy @tqchen @FranckQC

I can take a look at this tomorrow.

It would be useful to make it as a different equality comparator (rather than change DeepEqual's behavior, e.g. we can do CommunicativeDeepEqual as a subclass), as communicative rewrite is something that goes deeper.
Another possibility is add a canonicalization pass to canonicalize the expressions before CSE

Hello!
Thank you for the discussion and the PR.
Just a few thoughts here:

1. Indeed, we knew that Analyzer::Simplify() would not deal with commutativity, because it does not implement a normalization procedure that is guaranteed to converge towards the normal form (which would indeed imply sorting sub-terms, etc). Rather, all it does is it tries to "do its best" by rewriting some known patterns, with no guarantees to converge to a normal form. It often works fairly well in practice, but there is no guarantee of being complete (this behaves like a heuristic). However, it really must be correct (i.e, the result of simplify() must rely be equivalent to its input with algebraic laws).

2. Before trying to make Analyzer::Simplify() able to deal with with commutativity, it could be useful to see if people are in practice facing the issue where a lot of redundant computations appear, but written differently due to the commutativity of some operators (like + and *). If so, it would be cool to see such concrete examples. To be honest, I don't even think that that many people are turning ON the already existing bool identify_equiv_terms of the CSE pass Pass CommonSubexprElimTIR, which uses Analyzer::Simplify(), which itself does what it can with associativity, neutral elements, etc. These things are probably pretty rare, and commutativity is probably too.

Although I designed the pass in a way that it can potentially identify terms that are equivalent according to any equivalence relation (instead of just the syntactical equality ExprDeepEqual), it might not necessary be often needed in practice. This design that allows to use a custom equivalence relation did not cost much more, so I went for it, in case it could become useful to someone one day for a particular case, so that it would not be needed to write another CSE pass for dealing with that. But I don't necessary think that we should do comparisons modulo equivalence often, and this is why by default bool identify_equiv_terms of the CSE pass Pass CommonSubexprElimTIR is set to false.

3. If we decide that Analyzer::Simplify() (or another new Analyzer!) should deal with commutativity, then it should itself deal with commutativity, rather than baking commutativity into ExprDeepEqual which is supposed to be just a deep syntactical equality, and is used as such in many many places of TVM's codebase (not just the CSE). So clearly it should not being changed (as @tqchen noted too).

4. Remember that normalizing terms properly in order to deal with commutativity (which indeed includes sorting sub-terms) will likely be computationally expensive, which will make compilation of ML models longer. Actually, just the smaller work that Analyzer::Simplify() does is already time consuming, and that's probably why people leave the bool identify_equiv_terms of the CSE pass Pass CommonSubexprElimTIR set to false (which is the default behavior, as I wrote earlier). It might make people want even less to turn on this bool identify_equiv_terms. Perhaps the pseudo-normalization that Analyzer::Simplify() does is not too bad as a compromise: still usable in practice when needed (i.e does not take too long), and deals with most simplifications needed.

5. If all the other algebraic properties (associativity, simplification of neutral elements, etc) are still done by the pseudo-normalization Analyzer::Simplify() that is not guaranteed to find a normal form, I am not sure that the commutativity simplified build on top would be complete -even just in regard to commutativity. Is it worth it to then make Analyzer::Simplify() slower while still being incomplete?

Thanks!

Hello!
Thank you for the discussion and the PR. Just a few thoughts here:

1. Indeed, we knew that the existing Analyzer::Simplify() would not deal with commutativity, because it does not implement a normalization procedure that is guaranteed to converge towards the normal form (which would indeed imply sorting sub-terms, etc). Rather, all it does is it tries to "do its best" by rewriting some known patterns, with no guarantees to converge to a normal form. For this reason, they could not deal with commutativity in Simplify(), because that would indeed lead to non-terminating rewrite sequences (or more realistically return junk, as in practice they stop to rewrite after N rewrites are done). It often works fairly well in practice, but there is no guarantee of being complete (it behaves like a heuristic). However, it really must be correct (i.e, the result of simplify() must rely be equivalent to its input with algebraic laws).
2. Before trying to make Analyzer::Simplify() able to deal with with commutativity, it could be useful to see if people are in practice facing the issue where a lot of redundant computations appear, but written differently due to the commutativity of some operators (like + and *). If so, it would be cool to see such concrete examples. To be honest, I don't even think that that many people are turning ON the already existing bool identify_equiv_terms of the CSE pass Pass CommonSubexprElimTIR, which uses Analyzer::Simplify(), which itself does what it can with associativity, neutral elements, etc. These things are probably pretty rare, and commutativity is probably too.

Although I designed the pass in a way that it can potentially identify terms that are equivalent according to any equivalence relation (instead of just the syntactical equality ExprDeepEqual), it might not necessary be often needed in practice. This design that allows to use a custom equivalence relation did not cost much more, so I went for it, in case it could become useful to someone one day for a particular case, so that it would not be needed to write another CSE pass for dealing with that. But I don't necessary think that we should do comparisons modulo equivalence often, and this is why by default bool identify_equiv_terms of the Pass CommonSubexprElimTIR is set to false.

3. If we decide that Analyzer::Simplify() (or another new Analyzer!) should deal with commutativity, then it should itself deal with commutativity, rather than baking commutativity into ExprDeepEqual which is supposed to be just a deep syntactical equality, and is used as such in many many places of TVM's codebase (not just the CSE). So clearly it should not being changed (as @tqchen noted too).
4. Remember that normalizing terms properly in order to deal with commutativity (which indeed includes sorting sub-terms) will likely be computationally expensive, which will make compilation of ML models longer. Actually, just the smaller work that Analyzer::Simplify() does is already time consuming, and that's probably why people leave the bool identify_equiv_terms of the CSE pass set to false (which is the default behavior, as I wrote earlier). It might make people want even less to turn ON this bool identify_equiv_terms. Perhaps the pseudo-normalization that Analyzer::Simplify() does is not too bad as a compromise: still usable in practice when needed (i.e does not take too long), and deals with most simplifications needed (although not commutativity).
5. If all the other algebraic properties (associativity, simplification of neutral elements, etc) are still done by the pseudo-normalization Analyzer::Simplify() that is not guaranteed to find a normal form, I am not sure that a "normalizer for commutativity" built on top would be complete -even just in regard to commutativity. Is it worth it to then make Analyzer::Simplify() slower while still being incomplete?

Thanks!

Hi，@FranckQC，thanks for the questions and comments。
I quite agree with what you said about the complexity of the Analyzer::Simplify(), the overhead of the Analyzer::Simplify() is very expensive, changes to the ExprDeepEqual will not improve the function and may slow down its performance, so, as suggested by tqchen, make it as A subclass, maybe a good approach.
The source of this submission is that in my previous use, there was a size judgment for the input and output size of the operator containing the reshape operation, and I rewrote deep equal to meet my needs. After seeing your issue, I think this part of the rewrite is helpful, so submit this PR.

It would be useful to make it as a different equality comparator (rather than change DeepEqual's behavior, e.g. we can do CommunicativeDeepEqual as a subclass), as communicative rewrite is something that goes deeper.
Another possibility is add a canonicalization pass to canonicalize the expressions before CSE

Hi，@tqchen，Thanks a lot for the review!
I agree that it would be useful to make it as a different equality comparator，
this will not have an impact on TVM's infrastructure. So how about making it a new subclass, as you suggested?

Hi，@tqchen. I have implemented the function as a subclass，would you like to take a look and merge it if everything looks good?

@FranckQC @masahi can you help to take a look

@FranckQC @masahi can you help to take a look

Sure, will do on Monday if that's ok :)

of course

Hi, @FranckQC @masahi. Is there anything in the code that I need to update?

Hi, @FranckQC @masahi. If nothing needs to be changed in this PR, can you help merge it?

Please update the PR title and description to reflect the current status. In particular, please make it more concise and explain what the goal is clearly.

I was finally able to take some time this week to have a closer look at this PR. It is definitely better than it was before, as it leaves the current DeepEqual unchanged, which was very important for me. That was my initial point 3 in my earlier comment, which I consider being addressed, thank you :).
However, I agree with @masahi comments. The implementation could have a lot more comments and documentation about the variables being used, what the function do, and what parts of the algorithm do. It would help a lot reading the code, which increases the confidence one can have in the implementation.
It's a great thing that there is quite a lot of tests, thanks for taking the time to write many of them. However, I'd also like to be able to see a real usage for new equivalence relation (that was point 2 in my earlier comment). TVM is a compiler, not a tool for just doing algebraic manipulations of mathematical terms like Matlab, so I would really like to see some natural use cases for this, where this get used/integrated into a pass, or into something else that ultimately lead to improvements in the code produced by the compilation of some ML models.
More minor thing: Finally, I'd like to know how one is supposed to use this CommutativeDeepEqual along the Analyzer::Simplify() function that performs other kind of simplification (simplification of neutral elements, applying distributivity, etc, but which unfortunately can't handle commutativity, as discussed earlier in the thread), in order to have a function that uses all the algebraic properties available. I imagine it would call Simplify() on both sides and then uses this new CommutativeDeepEqual. Would that be enough for being complete?
The reason behind that is the following: I believe most of the people who could be interested in equality-modulo-commutativity will be coming here after having discovered that Analyzer::Simplify() can't do all the simplifications for them. So when they will learn that there is this CommutativeDeepEqual equivalence relation for dealing with commutativity, their first question will likely be "how do I combine both?". So I think demonstrating that could be useful.
The most important thing for me at this stage for this PR are to add comments to the code, and to show some real use case/integration for this. Thank you for your work!


Standardize injection annotations

Proposal:
use
import javax.inject.Inject;
import javax.inject.Singleton;
instead of
import com.google.inject.Inject;
import com.google.inject.Singleton;
see https://github.com/google/guice/wiki/JSR330

Best Practices
Prefer JSR-330's annotations and Provider interface.

see http://docs.oracle.com/javaee/6/api/javax/inject/package-summary.html

Fixed by #1434
and documented in the coding convention. #1435


implement event based registration as mixin

Avoid direct child access via $children.
Parent components should only listen for specific IDs.
e.g.

FormField <-> Checkbox

I'm planning on adding a function emit in baseComponentMixin like the following
function emit (target: Element, eventType: string, payload) { /* ... */ }

and change the mounted hook in every component
<div @initialized="onInit"></div> <!-- some material component here -->

mounted () {
    this.mdcComponent = MDCComponent.attachTo(this.$el) // initialize itself and may cause some DOM and style change
    this.$nextTick(() => { // use nextTick because we have to wait for the DOM change
        this.emit(this.mdcComponent.someChild_.root_, 'initialized', this.mdcComponent.someChild_) // useful for components that initialize their children like drawer, text-field and tab bar
        this.emit(this.$slots.default.$el, 'form-initialized', this.mdcFormField) // useful for form field
    })
},
methods: {
    onInit (component) {
         this.mdcComponent = component
    },
    onFormInit (formFieldComponent) { /* ... */ }
}

Use provide/inject together with event is also a solution


[Separate Reporter Part 6] implement tests

Description
Please include a summary of the changes and the related issue.
Please also include relevant motivation and context.
List any dependencies that are required for this change.
Related issue #1777
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Checklist before requesting a review

[ ] I have performed a self-review of my code.
[ ] If it is a core feature, I have added thorough tests.

Deployment

[ ] Should publish npm package
[ ] Should publish Docker image

@coderabbitai review

I have a question for deviation reporter, is deviation reporter and regular reporter sharing the SubmissionPairs data?
I think deviation should also count on latest submitted price value from regular reports.

also for the regular jobs, I think the SubmissionPairs should be updated only if the tx has been successfully made, for now I think it is just logging error after submission and storing SubmissionPairs unconditionally

also for the regular jobs, I think the SubmissionPairs should be updated only if the tx has been successfully made, for now I think it is just logging error after submission and storing SubmissionPairs unconditionally

you might just have to place this code snippet before executing SubmissionPairs saving
if len(errs) > 0 {
		return mergeErrors(errs)
	}

that's a good catch Nick. I think the current deviation reporter doesn't work as intended. Each reporter has its own SubmissionPairs and each reporter updates  its own LastSubmission value. That means the deviation reporter wont reference regular reporters' LastSubmission. Here is how I'll update the current (faulty) logic:

deviation reporter doesn't need its own SubmissionPairs, so I'll remove it
app will have LatestSubmittedValues which is of type SubmissionPairs
regular reporters will update LatestSubmittedValues if tx is success
deviation reporter will reference LatestSubmittedValues to compute deviating pairs
minor: regular reporters dont need to have LastSubmission value, they just need an array of pair names
What do you think?

that's a good catch Nick. I think the current deviation reporter doesn't work as intended. Each reporter has its own SubmissionPairs and each reporter updates its own LastSubmission value. That means the deviation reporter wont reference regular reporters' LastSubmission. Here is how I'll update the current (faulty) logic:

deviation reporter doesn't need its own SubmissionPairs, so I'll remove it
app will have LatestSubmittedValues which is of type SubmissionPairs
regular reporters will update LatestSubmittedValues if tx is success
deviation reporter will reference LatestSubmittedValues to compute deviating pairs
minor: regular reporters dont need to have LastSubmission value, they just need an array of pair names
What do you think?

great I love it, think you can add another opt for reporter initialization such as withLastSubmittedValues


feat: support memo

Sorry for the long wait, interesting implementation, have you ever run the test with it, I think it's a no common PR but probably adequate tests.


[Feature] Support uncompressed layers

Current Behavior
Layers are compressed with gzip
Expected Behavior
Able to export image with uncompressed layers, therefore able to compress image with xz
Example Solution
regctl image export --compress-layers none
Version
0.5.7
Environment

Running as binary:
Host platform: Linux x86
Registry description: registry:2

The regctl image export does not modify the image, that would change the digest. The compression of the layers is done by the image builder, and that would be the best place to change it.
Modifying an image to change the layer compression could potentially be done by regctl image mod. However, xz is not a supported OCI format, so the best that could be done is converting them to either zstd or uncompressed layers. On my longer term todo list is support for estargz and soci, which may impact this same code.

Thank you very much for your patience and quick reply

To verify, does changing the image, and it's digest, matter for your use case? What is the purpose of uncompressing content and recompressing it in this scenario?

To verify, does changing the image, and its digest, matter for your use case? What is the purpose of uncompressing content and recompressing it in this scenario?

I read the regctl image mod, it seems not what I want, since it will change image on registry. What I want is simply the same with docker pull mariadb:latest; docker save mariadb:latest | xz -T0, to archive maximum compress ratio

which inner layers is uncompressed, to archive maximum compress ratio, or able to modify image locally.

I'm still not understanding the use case.

Where are the images coming from and being pushed to, and how would they be consumed later?
What is being compressing with xz, the individual layers, or the tar of the overall image export?
Is filesystem usage important before the xz compression is run at the source or after the image is uncompressed at the destination?
Does the digest of the image need to remain the same, either because it was signed or images are pinned by a downstream consumer?
Is this being done for a single image, or will updates to the image also be recompressed with a similar pattern?
What other kinds of local image modifications do you want to perform?

which inner layers is uncompressed, to archive maximum compress ratio, or able to modify image locally.

I'm still not understanding the use case.

Where are the images coming from and being pushed to, and how would they be consumed later?

The tar of the overall image export
Is filesystem usage important before the xz compression is run at the source or after the image is uncompressed at the destination?
If you mean destination is local file, it's important, after the image is uncompressed at the destination will archive better compress ratio
Does the digest of the image need to remain the same, either because it was signed or images are pinned by a downstream consumer?
Image digest probably needs to be the same, and the layers digest can be different.
Is this being done for a single image, or will updates to the image also be recompressed with a similar pattern?
Single image only for us.
What other kinds of local image modifications do you want to perform?
Not gonna modify local image, all we need is simply minimize exported image size

Is filesystem usage important before the xz compression is run at the source or after the image is uncompressed at the destination?

Since probably you mean destination is another registry, actually we're not importing this image to another registry. Images are from public or private registries.

In the case of containerd, I believe they retain the original layers to ensure the image can be pushed again. By uncompressing the layers before importing into containerd, that would double the size of the image on disk at rest, once for the uncompressed tar, and a second copy for the extracted layer.

Does the digest of the image need to remain the same, either because it was signed or images are pinned by a downstream consumer?

Image digest probably needs to be the same, and the layers digest can be different.

That is not technically possible. The image digest is of the image manifest. That manifest contains the digests of each layer. By uncompressing those layers, the digest of the layer changes, which causes the digest of the manifest to change.
In the case of docker pull && docker save, that does change the image digest because they are recreating the filesystem layers and the image manifest. It is also a lossy process, removing other platforms in a multi-platform image, and rebuilding the manifest without annotations or other content included by the original image author.
Using regctl image mod could improve on what docker pull && docker save is doing by preserving most of the manifest content. The output of regctl image mod can also be a local OCI Layout, avoiding the need to push to a registry. You would then be able to export from the Layout (newer versions of Docker will be able to import directly from an OCI Layout) into a tar and compress that with xz.
That still has the issue of containerd potentially storing the uncompressed layers twice, so I'd want to be sure you really want that before prioritizing this.

Modifying an image to change the layer compression could potentially be done by regctl image mod. However, xz is not a > supported OCI format, so the best that could be done is converting them to either zstd or uncompressed layers. On my longer term todo list is support for estargz and soci, which may impact this same code.

I finally got how to use this regctl image mod, it will be ok if I can use this to uncompress layers, which seems not present yet.

I finally got how to use this regctl image mod, it will be ok if I can use this to uncompress layers, which seems not present yet.

Thanks for the follow up. I'll work on adding that as a feature.

I finally got how to use this regctl image mod, it will be ok if I can use this to uncompress layers, which seems not present yet.

Thanks for the follow up. I'll work on adding that as a feature.

Many thanks~~

This should be supported now, though my recommendation is to hold off for zstd support to get added and use that rather than an uncompressed export that's later compressed with xz. The zstd compression is supported by some runtimes, allowing you to not need to decompress the layers at the destination to import the image.

FYI, #732 was just added to support zstd compression of the layers.

FYI, #732 was just added to support zstd compression of the layers.

emmm can't I modify an image locally, without uploading to remote registry?

emmm can't I modify an image locally, without uploading to any registry?

You can! ocidir://path:tag is used to reference an image in an OCI Layout with regclient. E.g.
$ regctl image mod --layer-compress zstd \
  alpine@sha256:6457d53fb065d6f250e1504b9bc42d5b6c65941d57532c072d929dd0628977d0 \
  --create ocidir://alpine:zstd
ocidir://alpine:zstd

$ regctl manifest get ocidir://alpine:zstd
Name:        ocidir://alpine:zstd
MediaType:   application/vnd.docker.distribution.manifest.v2+json
Digest:      sha256:77f9bad60e1f844ae75fb5eb5749b924cfade5e0985ce6cde455970e86192d55
Total Size:  3.430MB

Config:
  Digest:    sha256:bc4e4f799925f2f66d0f70f97d9fed87410475f6f1df8a3e148cf0fc987c17b6
  MediaType: application/vnd.docker.container.image.v1+json
  Size:      585B

Layers:

  Digest:    sha256:27ffef933c817c18517d6a0f6490e4567acbef61375393893f1ea5dafc79e363
  MediaType: application/vnd.docker.image.rootfs.diff.tar.zstd
  Size:      3.430MB

emmm can't I modify an image locally, without uploading to any registry?

You can! ocidir://path:tag is used to reference an image in an OCI Layout with regclient. E.g.
$ regctl image mod --layer-compress zstd \
  alpine@sha256:6457d53fb065d6f250e1504b9bc42d5b6c65941d57532c072d929dd0628977d0 \
  --create ocidir://alpine:zstd
ocidir://alpine:zstd

$ regctl manifest get ocidir://alpine:zstd
Name:        ocidir://alpine:zstd
MediaType:   application/vnd.docker.distribution.manifest.v2+json
Digest:      sha256:77f9bad60e1f844ae75fb5eb5749b924cfade5e0985ce6cde455970e86192d55
Total Size:  3.430MB

Config:
  Digest:    sha256:bc4e4f799925f2f66d0f70f97d9fed87410475f6f1df8a3e148cf0fc987c17b6
  MediaType: application/vnd.docker.container.image.v1+json
  Size:      585B

Layers:

  Digest:    sha256:27ffef933c817c18517d6a0f6490e4567acbef61375393893f1ea5dafc79e363
  MediaType: application/vnd.docker.image.rootfs.diff.tar.zstd
  Size:      3.430MB

Thanks, I'll try this later


Audio thread crashes when playback ends on a detached instance of an MP3

Reported by @puppetmaster- (as are a lot of these bugs :p) and replicated on my work laptop - but not my main machine, which is strange...
The issue seems to get triggered under the following circumstances:

The Sound has to have been created from an MP3.
The SoundInstance has to have been dropped.
Playback has just finished.
EDIT: The sample rate of the sound doesn't match that of the output/sound card.
EDIT: The project was built in debug mode (it's a debug only assertation that's triggering).

The fix for #97 also seems to have resolved this 🎊

thx for fixing


Refactor: I changed cursor to pointer in dropDownMenuItem for improved usability.

I optimized the cursor on the dropdown menu item, changing it from the default to a pointer. This enhances the user experience and follows standard practices for improved usability.
OLD
https://github.com/shadcn-ui/ui/assets/96975503/d49853f4-24a6-4263-a418-adbdba91640d
NEW
https://github.com/shadcn-ui/ui/assets/96975503/e32e0984-8dc9-444d-a7ec-5cfe48506abe

Absolutely! Even seemingly small changes like optimizing the cursor on a dropdown menu item can have a significant impact on user experience. By changing it to a pointer, you're providing users with a visual cue that the item is clickable, which can lead to better navigation and interaction. These attention to detail demonstrates a commitment to enhancing usability and adhering to established standards, ultimately contributing to a more polished and user-friendly interface. So yes, these changes are indeed important for improving the overall quality of the product.

I agree with merging this since it fixes wrong UX pattern in UI kit public presentation.
@ruru-m07 What would be the blocker of not merging such a straightforward improvement?

@gurisko Thanks, Gurisko! Your support means a lot, Appreciate it!

I agree with merging this since it fixes wrong UX pattern in UI kit public presentation.
@ruru-m07 What would be the blocker of not merging such a straightforward improvement?

Mostly @shadcn merge PRs

Same applies for components like SelectItem and CommandItem. Maybe a good idea (once this PR is merged) to check the components for similar UX issues.

@frederikmartin Sure, I'm also working on that part. I'll submit a pull request as soon as possible.


Copy/Paste and Find keyboard functions don't work on redux-form website

The documentation for redux-form is nice to look at but I've noticed that it's not very usable from a keyboard perspective as common commands such as Ctrl+c, Ctrl+p, and Ctrl+f do not work at least in Chrome.

I just published the fix for this (moments ago). Please check again. #418.

Awesome, works great now. I know it seems small but this will be a big help to me and hopefully others. Thank you and Cheers!


Extend test applications

Provide detailed memory usage information

Use GC.GetTotalMemory
Load PDFView before test and unload after test


preselect first org in dropdown on project page

fixes #956.
by default it chooses the first organization, but if there are more than n orgs (at the moment n=6), it does not pre-select.
Or we can disable preselection for admins.

We could disable pre-selection if the number of orgs is more than a certain number (e.g. like more than 5 orgs) or just disable it for admins. Any thoughts, @hahn-kev?


Can't customize slider with code.

I'm having a weird issue that I don't know how to fix.
I dragged a view through storyboard and changed its class to CircularView. In code, I'm setting the numberOfRounds property as so:
circularSlider.numberOfRounds = 1
My app crashes with EXC_BAD_ACCESS.
I don't see anything strange in the definition of the method in the source code, so I don't know why this isn't working. If I customize the view via Interface Builder, nothing shows up.
I installed the dependency with CocoaPods. Currently using v2.2.0.
Trying to debug the app:
(lldb) po circularSlider
▿ Optional<CircularSlider>
  - some : <UIView: 0x7fbae370a270; frame = (82 146; 250 250); autoresize = RM+BM; layer = <CALayer: 0x600003d0ef80>>

(lldb) po circularSlider.numberOfRounds
error: Execution was interrupted, reason: EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0).
The process has been returned to the state before expression evaluation.
(lldb)

And again, the numberOfRows property is not even set as an optional in the source code, so I don't think it's crashing due to it being nil? I'm very dumbfounded with this problem.

Figured it out.
I was also getting this in the console:
2020-03-18 10:20:26.786758-0400 JustDesign[12539:12145945] [Storyboard] Unknown class CircularSlider in Interface Builder file.

I forgot I had to set the Module in Interface builder. Select your slider and then in Module write HGCircularSlider. It will work properly then.


Remove duplicated ingress check code

This change is

Coverage increased (+0.03%) to 43.621% when pulling 895fba386d534c5785052ea02eaaa9ee0b560392 on aledbf:cleanup into bd1d71030d44ce860cf5e79dead31f7bab880162 on kubernetes:master.


Cherrypick bug commits to master

You don't really need a special ticket for CP'ing bugfixes from a release branch to master. Assuming that each CP'ed commit refers to the issue it resolves, when you committed/merged them into the releases/2.0.x branch, GH did nothing, the tickets remained open. This should serve as a reminder to CP them into master. When you then actually merge the CPs into master, GH will close those tickets for you.

Great point, I realized that after I started the CP.

@hannes-ucsc — In the case where I am putting these CPs on a branch to PR against master, if I'm not opening a ticket (as you suggested), what naming convention should I use for the branch?

I haven't found a good convention yet. How about
issues/123-456-789-cherrypick-to-master
With PRs that only have one CP in them, I tried various schemes. The best one so far was
issues/123-bla-bla-bla/releases/2.0.x for the PR against releases/2.0.x
issues/123-bla-bla-bla/master for the PR against master
For a PR with multiple CPs the equivalent would be
issues/123-bla-bla-bla/releases/2.0.x
issues/456-bla-bla-bla/releases/2.0.x
issues/789-bla-bla-bla/releases/2.0.x
issues/123-456-789/master
That could be codified pretty easily.

One of git's quirks is that if you have a branch called foo you can't also have a branch called foo/bar. Don't know why exactly.


[iOS] App Store Connect finds references of NSLocationAlwaysUsageDescription, NSLocationWhenInUseUsageDescription when Shiny.Notifications and Shiny.Core are solely used

Please check all of the platforms you are having the issue on (if platform is not listed, it is not supported)

[+] iOS

Feature Library

[+] Core
[+] Notifications

Version of Library
<IP_ADDRESS>5
Version of OS(s) listed above with issue
iOS 14.4
Steps to Reproduce
Add Shiny.Notifications Version <IP_ADDRESS>5 as .net standard project
Add Shiny.Core Version <IP_ADDRESS>5 in iOS project
Expected Behavior
No reports from App Store Connect that
Your app has one or more issues.
Is it solved in a preview Version?
Actual Behavior
ITMS-90683: Missing Purpose String in Info.plist - Your app's code references one or more APIs that access sensitive user data. The app's Info.plist file should contain a NSLocationAlwaysUsageDescription key with a user-facing purpose string explaining clearly and completely why your app needs the data. Starting Spring 2019, all apps submitted to the App Store that access user data are required to include a purpose string. If you're using external libraries or SDKs, they may reference APIs that require a purpose string. While your app might not use these APIs, a purpose string is still required. You can contact the developer of the library or SDK and request they release a version of their code that doesn't contain the APIs. Learn more (https://developer.apple.com/documentation/uikit/core_app/protecting_the_user_s_privacy).
ITMS-90683: Missing Purpose String in Info.plist - Your app's code references one or more APIs that access sensitive user data. The app's Info.plist file should contain a NSLocationWhenInUseUsageDescription key with a user-facing purpose string explaining clearly and completely why your app needs the data. Starting Spring 2019, all apps submitted to the App Store that access user data are required to include a purpose string. If you're using external libraries or SDKs, they may reference APIs that require a purpose string. While your app might not use these APIs, a purpose string is still required. You can contact the developer of the library or SDK and request they release a version of their code that doesn't contain the APIs. Learn more (https://developer.apple.com/documentation/uikit/core_app/protecting_the_user_s_privacy).

This is not a bug.  Link out what you don't need.  Core shares some location code for beacons and locations

Version 2 will have a separate common library to remove location from core

Thanks for your Feedback @aritchie.
Is location already removed from the Core in v2 Preview?
Link All and skipping the ones with issues will be a painful process.

No - it is not separated yet.

@aritchie there is a similar issue when a user wants to use local notifications only but no push with
the App Store Connect analysers reporting: ITMS-90078: Missing Push Notification Entitlement.
Looks like moving interface IAppDelegatePushNotificationHandler out of Core would bring more flexibility.
https://stackoverflow.com/questions/14722664
I noticed you already created Shiny.Locations.Common,
thanks a lot for providing us such a powerful lib.

It doesn't make anything more flexible.  Warnings around location are something I watch because of Apple.  Warnings around push notifications only don't worry me, so I won't be moving those out right now.  If you are really only using Shiny for notifications, you really are taking a lot into a project for minimal gain.  Notifications was meant as a addin for everything else.

Personally i ll use in a project Notifications (also IPersistentNotification which haven't seen in other lib in), Settings,
adding soon Background Jobs and Geofencing without planning at all push notifications. So shiny is irreplaceable!
I do understand the point and your focus, location has a different severity in warnings for partners. Again thank you.


[FIX] Resolve "Buffer is undefined" Error in Webpack Configuration

Description:
This merge request addresses the "Buffer is undefined" error encountered during the Webpack build process. The issue was caused by Webpack 5 no longer including polyfills by default. The following changes have been made:

Added Buffer polyfill using ProvidePlugin in Webpack configuration.
Included process/browser polyfill to handle the process object in the browser.

Impact:
These changes ensure that the project builds correctly with Webpack 5, avoiding runtime errors related to Buffer and process.

coverage: 92.868%. remained the same
when pulling e69a18f29aa1ab90e935371f53a266be38fae7a0 on RC-269
into 28b7a6b2d78d582f14beed4454800d54cffcbbc5 on master.


publish to npm?

I see react native 0.25 compatibility warning fix is merged, any plan on updating npm package?

Wanted to merge https://github.com/react-native-fellowship/react-native-blur/pull/59 first. But seems it takes longer, than expected

Bumped to 0.8.0


Fixing issue with enums: Error running TypeAdapterGenerator

See issues https://github.com/hivedb/hive/issues/361 and https://github.com/hivedb/hive/issues/364
Chanced check statement with OR conditional to allow for ElementKind.ENUM

Works for me!


LispWorks connection issues

First, thanks for the great work on this. Doing this is a huge favor to those of us trying to evangelize Lisp and running into the wall of people not wanting to learn or use emacs.
When I try to connect to LispWorks, I find that I either have to load start-swank.lisp a few times and then try Connect to REPL a few times. It will eventually work, but is there an idea connection flow that I haven't discovered? It seems like trial and error. I eventually get it to work, so it isn't a critical issue.

Thanks! I haven't used LispWorks, so not sure. What's the behavior it's showing? Is the port not available? On paper, it should be the same as connecting to it with Emacs.
It's possible LW is doing something different with the handshake that's tripping it up. In your project settings, set alive.debug to true. That'll create a Swank Trace window under the output tab (ctrl+shift+u opens the output tab and then there's a drop down menu in the upper right corner of it).

I'll collect the info and get it to you. Maybe it is just taking LispWorks or Swank a while to come up. It is unclear, but I'll collect some more data for you.

First, thanks for the great work on this. Doing this is a huge favor to those of us trying to evangelize Lisp and running into the wall of people not wanting to learn or use emacs.

I apologize this has little to do with the ticket, but since I don't know how to get in contact, I just to say I am also very grateful for this project, I connect it to a Portacle(SBCL) instance and it's great. The project I actually work on though currently depends on Lispworks, so if i get some time I may try and spin it up there as well, and report back on any issues I run in to.

Here are the steps and info:

Set alive.debug to true
Launch LispWorks (7.1.3 64-bit, OSX 11.5.2)
Load start-swank.lisp (I can attach if needed.)
See the following in the QuickLisp listener: ;; Swank started at port: 4005.
Perform Alive: Attach to Repl command. I see this error alert at the bottom right of the window.:  Connect failed: [Error: connect ECONNREFUSED <IP_ADDRESS>:4005 at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1146:16)] { errno: -61, code: 'ECONNREFUSED', syscall: 'connect', address: '<IP_ADDRESS>', port: 4005 }
Try to figure out how to display Alive output tab. I am not smart enough...
Load start-swank.lisp in LispWorks again
Alive: Attach to REPL
It works this time.

This is the usual process. I can eventually attach, so it isn't a huge deal. It always bothers me when I can't get things working the "right" way though.

Is swank being started with :dont-close t? Without that, it exits after the first connection.

Good question. I am not sure. I have been very insulated in the LispWorks ecosystem and this is my first time loading Slime components.

Wherever it's starting the swank server should look something like
(swank:create-server :port 4005 :dont-close t)

More info, but not very useful to me.
After I load start-swank.lisp, I see this in the listener:
Warning: (DEFMACRO DEFIMPLEMENTATION) being redefined in /Users/gragan/inprogress/lisp/slime/swank/lispworks.lisp (previously in /Users/gragan/inprogress/lisp/slime/swank/backend.lisp).
Warning: (DEFUN SOCKET-FD) being redefined in /Users/gragan/inprogress/lisp/slime/swank/lispworks.lisp (previously in /Users/gragan/inprogress/lisp/slime/swank/backend.lisp).
Warning: (METHOD EMACS-INSPECT (T)) being redefined in /Users/gragan/inprogress/lisp/slime/swank/lispworks.lisp (previously in /Users/gragan/inprogress/lisp/slime/swank/backend.lisp).
;  Loading fasl file /Users/gragan/.slime/fasl/2.26.1/lispworks-7.1.3-macosx-x86-64/gray.64xfasl
;  Loading fasl file /Users/gragan/.slime/fasl/2.26.1/lispworks-7.1.3-macosx-x86-64/match.64xfasl
;  Loading fasl file /Users/gragan/.slime/fasl/2.26.1/lispworks-7.1.3-macosx-x86-64/rpc.64xfasl
;  Loading fasl file /Users/gragan/.slime/fasl/2.26.1/lispworks-7.1.3-macosx-x86-64/swank.64xfasl
;; Swank started at port: 4005.

Checking using lsof shows:
┗╸❯❯❯ lsof -i TCP:4005
COMMAND     PID   USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
lispworks 62213 gragan   12u  IPv6 0x68acf81e132c8f69      0t0  TCP localhost:pxc-pin (LISTEN)

I try to connect Alive and see the our favorite error:
Connect failed: [Error: connect ECONNREFUSED <IP_ADDRESS>:4005 at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1146:16)] { errno: -61, code: 'ECONNREFUSED', syscall: 'connect', address: '<IP_ADDRESS>', port: 4005 }
I load the swank lisp file again and see this:
; Loading fasl file /Users/gragan/quicklisp/dists/quicklisp/software/slime-v2.26.1/start-swank.64xfasl
;  Loading text file /Users/gragan/quicklisp/dists/quicklisp/software/slime-v2.26.1/swank-loader.lisp
Warning: Not reloading SWANK.  Package already exists.
;; Swank started at port: 4005.

lsof shows this:
┗╸❯❯❯ lsof -i TCP:4005
COMMAND     PID   USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
lispworks 62213 gragan   12u  IPv6 0x68acf81e132c8f69      0t0  TCP localhost:pxc-pin (LISTEN)
lispworks 62213 gragan   16u  IPv4 0x68acf81e294d8cb9      0t0  TCP localhost:pxc-pin (LISTEN)

I can now connect to the REPL using Alive.
It isn't a huge deal as I can get connected. Would be nice to know what is going on though.

I'm not sure what else would be connecting to it, but the start-swank.lisp that comes with slime defaults to only allowing one connection. If you edit start-swank.lisp and change
(swank:create-server :port 4005
;; if non-nil the connection won't be closed
;; after connecting
:dont-close nil)
to
(swank:create-server :port 4005
;; if non-nil the connection won't be closed
;; after connecting
:dont-close t)
I think it'll be ok.

Thanks. It worked!


[WIP] #8838 Service bot code leads to database queries in loop for organization administrators

Optimize reading admin's bot profiles from database for a constant number of requests

We already merged this; closing.


Connect-PnPOnline fails with error AADSTS700016

Probably facing this error, which is probably related to this:  https://github.com/pnp/pnpcore/discussions/1529
'AADSTS700016: Application with identifier '31359c7f-bd7e-475c-86db-fdb8c937548e' was not found in the directory
However, all resolution steps in the github discussion involve specifying -ClientID for an existing enterprise app, which is not applicable when just trying to install M365 Learning Pathways.  Please update the instructions and YouTube video showing how to get past this error to install M365 Learning Pathways.  Thank you.

same error here


[3] Edge coloring/sizing on displayed graph ; node color; background color and theme

Was asked to work on issue #113 instead of this ticket. Prioritized building authentication and user profile logins rather than edge coloring

In review for all but the edge color and size. Need to visit the after render function in the digraph from file gameboard.js to set the edges.

#200


Create new date field for migrated creation dates

The date/time stamp that holds the information about when a work or file was first originally created needs to be migrated from Scholarsphere 3. For all versions of Scholarsphere, this field should be date_uploaded for works, collections, and files.
WDLL

create a new datetime stamp on Work, Collection, and FileVersionMembership (?)
migrate date_uploaded attributes in SS3 to the new field
parse any non-DateTime objects into DateTime (some of them are strings)
ensure the field is auto-populated with the current datetime for new resources
Documentation that describes how these dates are used in migration and how they are used moving forward.

Questions
Which model should have the file timesamp?

We will use deposited_at on Work, Collection, and FileResource objects.
The value will never be nil, and will default to the current date/time at which the record was first created.

deposited_at follows the Rails convention of created_at and updated_at database column names. The display name, of course, can be anything.


Jira collector throws 401 on status call

I have a similar issue as #1565 at the moment. We added a local user to Jira with a password without special characters. When I added this to the configuration it started working for the projects list. But when the status api is called I still get a 401. We made the user Admin. This resulted in more projects so that was prove it worked. But we still get the same error?
2018-02-08 08:40:00,000 INFO  c.c.d.collector.CollectorTask - Running Collector: Jira
2018-02-08 08:40:00,009 INFO  c.c.d.collector.CollectorTask - -----------------------------------
2018-02-08 08:40:00,009 INFO  c.c.d.collector.CollectorTask - https://jira.essent.nl/jira
2018-02-08 08:40:00,009 INFO  c.c.d.collector.CollectorTask - -----------------------------------
2018-02-08 08:40:00,009 INFO  c.c.d.collector.CollectorTask - Team Data               0        0s
2018-02-08 08:40:00,614 INFO  c.c.d.collector.CollectorTask - Project Data           92        0s
2018-02-08 08:40:00,735 ERROR c.c.d.client.DefaultJiraClient - IOException
java.io.IOException: Server returned HTTP response code: 401 for URL: https://jira.essent.nl/jira/rest/api/2/status/
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1894) ~[na:1.8.0_151]
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492) ~[na:1.8.0_151]
        at java.net.URLConnection.getContent(URLConnection.java:739) ~[na:1.8.0_151]
        at sun.net.www.protocol.https.HttpsURLConnectionImpl.getContent(HttpsURLConnectionImpl.java:443) ~[na:1.8.0_151]
        at com.capitalone.dashboard.client.DefaultJiraClient.getStatusMapping(DefaultJiraClient.java:442) ~[jira-feature-collector.jar!/:2.0.5-SNAPSHOT]
        at com.capitalone.dashboard.client.story.StoryDataClientImpl.updateStatuses(StoryDataClientImpl.java:750) [jira-feature-collector.jar!/:2.0.5-SNAPSHOT]
        at com.capitalone.dashboard.client.story.StoryDataClientImpl.updateStoryInformation(StoryDataClientImpl.java:154) [jira-feature-collector.jar!/:2.0.5-SNAPSHOT]
        at com.capitalone.dashboard.collector.FeatureCollectorTask.collect(FeatureCollectorTask.java:119) [jira-feature-collector.jar!/:2.0.5-SNAPSHOT]
        at com.capitalone.dashboard.collector.FeatureCollectorTask.collect(FeatureCollectorTask.java:28) [jira-feature-collector.jar!/:2.0.5-SNAPSHOT]
        at com.capitalone.dashboard.collector.CollectorTask.run(CollectorTask.java:63) [core-2.0.5-SNAPSHOT.jar!/:2.0.5-SNAPSHOT]
        at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) [spring-context-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
        at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:81) [spring-context-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_151]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_151]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [na:1.8.0_151]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [na:1.8.0_151]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_151]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_151]
        at java.lang.Thread.run(Thread.java:748) [na:1.8.0_151]
2018-02-08 08:40:00,942 INFO  c.c.d.c.story.StoryDataClientImpl - Loop i 0 pageSize 2
2018-02-08 08:40:00,942 INFO  c.c.d.collector.CollectorTask - Story Data              2        0s
2018-02-08 08:40:00,942 INFO  c.c.d.collector.CollectorTask - Finished                         0s

Any thoughts on what can be done to get this working?
Jira version 7.6.1 is used

Using Postman I recreated the call to the status page. I saw a different base64 encoded string there. When I used this one it worked. Still not getting teams in. Not sure why this is failing. Will post a new issue when I cannot figure this out.


React compile error Module build failed: SyntaxError: Unexpected token (51:17)

Laravel mix version - 1.7.2
Node Version - 6.11.5
NPM version - 5.6.0
OS - macOS High Sierra 10.13.2
I am having some trouble compiling what I perceive as some es2015 react code. Some sample code of what I am trying to compile is below:
DOESN'T WORK
testFunction = () => {

    }

WORKS
testFunction() {

    }

or
DOESN'T WORK
state = {
            days: 0,
            hours: 0,
            minutes: 0
        };

WORKS
constructor(){
        super();
        this.state = {
            days: 0,
            hours: 0,
            minutes: 0
        };
    }

my .babelrc file in my root directory looks like
{
  "presets": [
    ["es2015", {
      "modules": false
    }],
    "react"
  ]
}

my webpack.mix.js file looks like:
mix.js('resources/assets/js/app.js', 'public/js/app.js')
    .js('resources/assets/js/cross-brand-nav.js', 'public/js/app.js')
    .js('resources/assets/js/FullWidthTabs.js', 'public/js/app.js')
    .version()
    .react('resources/assets/js/components/NextChallengeCounter.jsx', 'public/js/components')
    .combine([
        'resources/assets/bower_assets/jquery/dist/jquery.min.js',
        'resources/assets/bower_assets/moment/min/moment.min.js',
        'resources/assets/bower_assets/bootstrap/dist/js/bootstrap.js',
        'resources/assets/bower_assets/eonasdan-bootstrap-datetimepicker/build/js/bootstrap-datetimepicker.min.js',
        'resources/assets/js/admin.js'
    ], 'public/js/admin.js').version()
    .sass('resources/assets/sass/app.scss', 'public/css')
    .sass('resources/assets/bower_assets/components-font-awesome/scss/font-awesome.scss', 'public/css').version()
    .styles([
        'resources/assets/css/FullWidthTabs.css'
    ], 'public/css/pf.css')
    .styles([
        'resources/assets/bower_assets/bootstrap/dist/css/bootstrap.min.css',
        'resources/assets/bower_assets/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.min.css'
        ], 'public/css/admin.css').version();

and my package.json file looks like:
{
  "private": true,
  "scripts": {
    "dev": "npm run development",
    "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch-poll": "npm run watch -- --watch-poll",
    "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
    "prod": "npm run production",
    "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
  },
  "devDependencies": {
    "axios": "^0.16.2",
    "babel-plugin-add-module-exports": "^0.2.1",
    "babel-preset-es2015": "^6.24.1",
    "babel-preset-react": "^6.24.1",
    "bootstrap-sass": "^3.3.7",
    "cross-env": "^5.1.3",
    "jquery": "^3.1.1",
    "laravel-mix": "^1.7.2",
    "lodash": "^4.17.4",
    "react": "^16.2.0",
    "react-dom": "^16.2.0",
    "vue": "^2.5.13"
  },
  "dependencies": {
    "moment": "^2.20.1"
  }
}

then when I run npm run dev I get the error mentioned in the title. Help is much appreciated.

Thanks for that, it's solve same issue for me

Thanks @djarrin! It solved the same issue for me. Appreciate your help!

@djarrin Thks for your help :D

great! thanks!!!

@edwinharly it was working well when I used it. 2 month ago I left this project temporarly and I am working on different one, so it's difficult to say. If there are other packages changed in meantime then maybe not. It will be nice if you can test it for yourself and let me know.

@entymon it's not working for me, I've been trying for days

@edwinharly , Sorry for this delay. I don't know what are you trying to do. If you are trying resolve the issue for the company you work for then it will be quiet difficult to help you but if you do some side project and you can share it then I have a look on my free time and may be help you a bit.

I've experienced the same problem and found the solution which is working for me.
This page was helpful: https://babeljs.io/docs/en/babel-plugin-transform-class-properties/
However the main problem was in my webpack config. Just deleted Babel options from webpack.config.js and used only .babelrc configuration instead.
webpack.config.js before
  module: {
    rules: [
      {
        test: /\.(js|jsx)$/,
        exclude: /(node_modules|bower_components)/,
        loader: 'babel-loader',
        options: {presets: ['env', 'react']}  //bad line here
      },
...

webpack.config.js after
  module: {
    rules: [
      {
        test: /\.(js|jsx)$/,
        exclude: /(node_modules|bower_components)/,
        loader: 'babel-loader'
      },
...

My .babelrc
{
  "presets": [
    "env",
    "react"
  ],
  "plugins": [
    "transform-class-properties"
  ]
}

Please note that "es2016" preset is deprecated now. Use "env" instead.

@djarrin but it didn't solve my issue , i'm also facing the same issue but its with reactjs and laravel and when i do changes in my .babelrc file, it removes all these casing error from the console or terminal and show some casing error i think that is because i have App.js and app.js , please do insist me, thank you

Thank you very much, I am very helful your solution

Ok, I have seemed to solve my own issue here. First I needed to edit my .babelrc file to
{
  "presets": [
    ["es2016"],
    "react"
  ],
  "plugins": [
    "babel-plugin-transform-class-properties"
  ]
}

obviously installing the babel-plugin-transform-class-properties plugin and babel-preset-es2016, then things seem to compile and work more like I expected.
In case you can't find .babelrc file, you have to create one file and copy above config into that file. Create new .babelrc at the root of your project directory. Hope it help you! 😁

@djarrin thanks for the solution


Message UI: Add confirmation when add path / remove path succeeeds

After #646, which adds the 'Add to path' and 'Remove to path' tasks on OSX, it'd be helpful to have some sort of confirmation for the user - to let them know that the operation was completed successfully.
This would be a good case for a message / notification UI. There is a Messages.tsx that was started, but it's still pretty rough, and not completely hooked up via redux yet.

This is kind of implemented in #646 in the sense that tasks can now have messages for success/fail. We still need to be able to implement a success/fail callback but that's a different task.

Thanks @justjoeyuk ! Ya, looks like that is addressed, it's really helpful to have that feedback. I'll go ahead and close this out.


A dialog prompt to enable file logging for deployment slot but not prompt for web app

OS: Win 10
Build Version: 20200425.1
Repro Steps:

Create a new web app.
Create a deployment slot for this web app.
Right click the deployment slot and execute 'Start Streaming Logs' action.
Right click the web app and execute 'Start Streaming Logs' action.

Expect:
The behaviors are consistent for web app and slot.
Actual:
The behaviors are inconsistent for web app and slot. A dialog prompt to enable file logging for deployment slot but not prompt for web app.
The below dialog prompt for slot but not for web app:

This is because by default, file logging is already enabled when creating web apps.  It would prompt if the logging were to disable.
That being said, we may want to turn logging on by default for slots as well.

This issue has become stale and is at risk of being closed. The community has 60 days to upvote the issue. If it receives 5 upvotes we will keep it open and take another look. If not, we will close it. To learn more about how we handle issues, please see our documentation.
Happy Coding!

:slightly_frowning_face: In the last 60 days, this issue has received less than 5 community upvotes and we closed it. Still a big Thank You to you for taking the time to create it! To learn more about how we handle issues, please see our documentation.
Happy Coding!


Strategy for deleting artifacts and workloads managed by fuseml

We need to define a sane strategy for deleting or garbage collecting the various artifacts and kubernetes workloads that are "orphaned", for example when:

deleting a project (git org)
deleting a codeset
deleting a workflow
deleting a runnable

This could be modeled as an optional argument passed by the end-user when the top-level parent objects are deleted.
Examples of state that need to be deleted:

the MLFlow models stored in its S3 store
gitea repository or organization
tekton tasks and pipelines and task runs
tool specific k8s workloads (e.g. prediction services)

This seems harder to decide than we originally thought, especially because we do not see yet if there is anything like _ top-level parent objects_.
The original idea was to offer deleting of all those listed objects when an application is being deleted, however the fact that the application is the parent object in all cases is not clear ATM.
So until we come to conclusion, we should at least implement Delete operation for all those objects that do not provide it yet. See e.g. https://github.com/fuseml/fuseml/issues/87

The delete operation has been implemented for codesets, workflows, applications and codeset assignments. Moving the card in backlog to follow up with the cascade delete operation after MVP is released.


Update French + Fix lang admin views

The permissions for files need to be 644, and for directories 755.

Hi Fred, could you push again the language file ? thanks


Installation Problem

Hi all,
if i trying to set up the Intigration i get the Following Problem. The Intigration was working a couple of weeks befor then i have same problems and i tryed to reinstall it and now i cant login again...
Logger: custom_components.cupra_we_connect.config_flow
Quelle: custom_components/cupra_we_connect/config_flow.py:75
Integration: cupra_we_connect (Dokumentation, Probleme)
Erstmals aufgetreten: 07:56:05 (1 Vorkommnisse)
Zuletzt protokolliert: 07:56:05
Unexpected exception during setup
Traceback (most recent call last):
File "/config/custom_components/cupra_we_connect/config_flow.py", line 75, in async_step_user
info = await validate_input(self.hass, user_input)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/cupra_we_connect/config_flow.py", line 50, in validate_input
await hass.async_add_executor_job(we_connect.login)
File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/weconnect_cupra/weconnect_cupra.py", line 166, in login
self.__session.login()
File "/usr/local/lib/python3.12/site-packages/weconnect_cupra/api/cupra/auth/my_cupra_session.py", line 47, in login
response = self.doWebAuth(authorizationUrl)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/weconnect_cupra/api/cupra/auth/my_cupra_session.py", line 191, in doWebAuth
raise APICompatibilityError('No user id provided')
weconnect_cupra.errors.APICompatibilityError: No user id provided

Same issue on my side. Integration was running fine on v0.8.2.
Steps I took:

Upgrade to v0.8.4
Reboot HAOS

Expectation:
Cupra WeConnect integration to function properly as it has.
Observed:
Saw the same errors in the log as @Dengo91  reported above.
I also tried to then delete the "device" in the WeConnect integration and set-up again, but was not able to because of an unknown error.
"""
File "/usr/local/lib/python3.12/site-packages/weconnect_cupra/api/cupra/auth/my_cupra_session.py", line 191, in doWebAuth
raise APICompatibilityError('No user id provided')
weconnect_cupra.errors.APICompatibilityError: No user id provided
"""
Environment:

HAOS running on Proxmox
Core 2024.7.2
Supervisor 2024.06.2
Operating System 12.4
Frontend 20240710.0

Logout of official cupra app and log back in. Accept all legal disclaimer popups and it will probably work again.

Logout of official cupra app and log back in. Accept all legal disclaimer popups and it will probably work again.

Thank you @daernsinstantfortress, doing the steps as you wrote in your message fixed the issue for me!


How can i import weights parameters from numpy array ?

Hello.
I have pre-trained model with tensorflow. I want to convert it to a caffe2 model.
So, i try to extract a weights of tensorflow model with numpy for each layer.
ex) tensorflow conv1 weight (shape = 3x3x16x32 ) --> numpy array (3x3x16x32)
and then,  I want to  import the numpy array as the weight value of each layer of caffe2.
ex) numpy array (3x3x16x32) --> caffe2 conv1 layer weights
I want get your advice.
Thank you.

draw your net (predict_net) by the caffe2 API, such as cnnModel or brew. You can find plenty of examples in the caffe2 tutorial.

create your own init_net according your pre-trained weight. To do so, you can create the operator used to fill your weight into the workspace by the blob name:

init_net = caffe2_pb2.NetDef()
create ops to fill weights for all layers:
op = core.CreateOperator("GivenTensorFill", [], [param],arg=[ utils.MakeArgument("shape", workspace.FetchBlob(param).shape),utils.MakeArgument("values", workspace.FetchBlob(param))])
where param is the name of your blob (this should be done for all layers of your pre-trained net), and arg indicates the shape and the values you want to fill. In your case, the param is "conv1", and the shape should be 3x3x16x32.
If you want to save weights into init_net.pb, try:
with open(outputFileName+'_init_net.pb', 'wb') as f:
   f.write(init_net.SerializeToString())
Similarly, save your predict_net.pb as well.

Thank you. i  solved it.


Add Azure SignalR Service to publish-to-Azure article

The publish-to-azure article lacks a mention of the tweaks necessary to utilize the Azure SignalR Service. We should add these.

@bradygaster  IF YOU can outline the steps I'll have @wadepickett test/document them.


Interpolate op support needed for Segformer_b0

Need support for ttnn Interpolate operation.
Example :

Note: The above mentioned tensor shape is one the configuration which is used in segformer_b0 model.

@mbahnasTT @dvartaniansTT - check for repeat interleave

@HariniMohan0102 please see the comment above refer to the Stable Diffusion examples in TTNN.

@dvartaniansTT @smehtaTT , In stable diffusion we had interpolate with mode="nearest". So, we were able to replace interpolate with repeat interleave. Even we can use upsample instead of interpolate but unfortunately we have only ttnn interpolate with mode="nearest" feature only.

#5725 https://github.com/tenstorrent/tt-metal/issues/5725

@punithsekar Can you please help me with some of the shapes which are used in the Segformer_b0 model.

Sure @shwetankTT ,
The below are the test_cases for interpolate in segformer_model.
test case 1 : input shape = [1,256,128,128] , size=[128,128]
test case 2 : input shape = [1,256,64,64] , size=[128,128]
test case 3 : input shape = [1,256,32,32] , size=[128,128]
test case 4 : input shape = [1,256,16,16] , size=[128,128]
Note: Interpolate with mode="bilinear" is needed.

raised a draft PR https://github.com/tenstorrent/tt-metal/pull/12385

this is now in main


Scaling clusters: 1000's of services in env vars

Clearly you ought to be able to make more services in a k8s cluster than it is reasonable to pass to pods in env vars.
Possible solutions:

Segment by namespace
Require predeclarations

@bgrant0607 I know you hate env vars; do you have a preferred solution for this?

If we move env-var generation down to kubelet, this is less awful :)

My preferred solution is to eliminate the env vars. :-)  That would also eliminate start-up-order dependencies (assuming clients could tolerate DNS lookup failures). I think even Docker buys that links aren't an acceptable long-term approach.
Barring that, segmentation by namespace seems like it should work if people use namespaces as intended.
We can reconsider predeclaration if neither of those approaches work.
Didn't @erictune already move the env-var generation to kubelet?
Note that we'll have scaling problems with iptables rules, too.

I tried to measure the impact of O(thousands) of iptables rules, but could
not find a decent way to measure it.  It did not affect latency or
throughput in any obvious way.
On Thu, Jan 8, 2015 at 5:05 PM, bgrant0607<EMAIL_ADDRESS>wrote:

My preferred solution is to eliminate the env vars. :-) That would also
eliminate start-up-order dependencies (assuming clients could tolerate DNS
lookup failures). I think even Docker buys that links aren't an acceptable
long-term approach.
Barring that, segmentation by namespace seems like it should work if
people use namespaces as intended.
We can reconsider predeclaration if neither of those approaches work.
Didn't @erictune https://github.com/erictune already move the env-var
generation to kubelet?
Note that we'll have scaling problems with iptables rules, too.
--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/3345#issuecomment-69278617
.

Now that we have DNS, I think it's reasonable to consider deprecating the
environment variables.
On Thu, Jan 8, 2015 at 7:58 PM, Tim Hockin<EMAIL_ADDRESS>wrote:

I tried to measure the impact of O(thousands) of iptables rules, but could
not find a decent way to measure it. It did not affect latency or
throughput in any obvious way.
On Thu, Jan 8, 2015 at 5:05 PM, bgrant0607<EMAIL_ADDRESS>wrote:

My preferred solution is to eliminate the env vars. :-) That would also
eliminate start-up-order dependencies (assuming clients could tolerate
DNS
lookup failures). I think even Docker buys that links aren't an
acceptable
long-term approach.
Barring that, segmentation by namespace seems like it should work if
people use namespaces as intended.
We can reconsider predeclaration if neither of those approaches work.
Didn't @erictune https://github.com/erictune already move the env-var
generation to kubelet?
Note that we'll have scaling problems with iptables rules, too.
--
Reply to this email directly or view it on GitHub
<
https://github.com/GoogleCloudPlatform/kubernetes/issues/3345#issuecomment-69278617

.

—
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/3345#issuecomment-69290242
.

Docker's networking proposal (Docker issue 9983 -- not linked to avoid noise on that issue) confirms that links will be deprecated in favor or "network-based discovery".

@pmorie - fyi

@lavalamp @bgrant0607 @thockin @derekwaynecarr I think predeclaration should be possible but you should also be able to opt out of it and get metadata / firewall rules for all visible services in your namespace

Also note that before we get rid of env vars, we have to solve a bootstrapping problem-- env vars are how SkyDNS knows where to find k8s master.

Bootstrapping could be resolved by the downward API #386, or by creating a magic link-local address for the master.

@lavalamp regarding the skydns use case, I think there's an orthogonal use-case to envs that exists, which is being able to state that a pod shouldn't start unless some services it depends on are ready.

Services could later go down.  Clients need to handle that.  So there is
nothing but a false sense of correctness in offering a way for pod start to
block on a service ready
On Jan 12, 2015 2:55 PM, "Paul Morie"<EMAIL_ADDRESS>wrote:

@lavalamp https://github.com/lavalamp regarding the skydns use case, I
think there's an orthogonal use-case to envs that exists, which is being
able to state that a pod shouldn't start unless some services it depends on
are ready.
—
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/3345#issuecomment-69663566
.

I agree unavailable dependencies need to be handled on the client.
To not make an easy workaround, which ends in things as "but it worked as I defined service1 starts before service2", I would not provide dependency declarations/support yet. There are more concerning issues at hand and furthermore I'm not even sure, if dependencies should be handled by kubernetes.

@erictune @stp-ip Services can go down, and you won't even know if your pod started before an IP/port was allocated to it :)

We definitely need to segment by namespace.
We've also basically settled on predeclaration for people who want env. vars.: #1768.


Build Pack Error when deploying dokku

Hello,
I'm over 2 days trying to figure out what can be happening on my environment
When trying to rebuild an existing aplication I'm getting the following error:
/tmp/buildpacks/heroku-buildpack-java/bin/compile: line 43: detect_java_version: command not
Below is the command I'm executing...
dokku rebuild:force myapp
Cloning into '/tmp/tmp.VjWEqvvaUa'...
done.
HEAD is now at 1924c62... Merge branch 'backlog#1234' into master_homolog
-----> Building myapp using buildstep...
-----> Installing ENV in build environment ...
-----> Using u1000 to run an application
-----> Java app detected
/tmp/buildpacks/heroku-buildpack-java/bin/compile: line 43: detect_java_version: command not found
Any help is more than welcome.

@devjsaon it looks like you might be using an old version of the buildpack--there is no line 43 in the current version of the Java buildpack.
Can you confirm that you're running the latest code in the master branch of this repo?

hi @jkutner
thanks for you quick reply. :)
Yes I'm using old version of buildpack.
I added the following line to my procfile to force specific version of buildpack.
dokku config:set myapp BUILDPACK_URL=https://github.com/heroku/heroku-buildpack-java/releases/tag/v33
and then I've tried to deploy again and I see same error.
Command below...
$ git push
Enter passphrase...
Counting objects: 170, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (92/92), done.
Writing objects: 100% (170/170), 20.01 KiB | 1.67 MiB/s, done.
Total 170 (delta 81), reused 133 (delta 57)
remote: Cloning into '/tmp/tmp.rSP1fxZgjk'...
remote: done.
remote: HEAD is now at d0a3138... procfile edited
remote: -----> Building myapp using buildstep...
remote: -----> Installing ENV in build environment ...
-----> Using u1000 to run an application
-----> Java app detected
remote: /tmp/buildpacks/heroku-buildpack-java/bin/compile: line 43: detect_java_version: command not found
To <IP_ADDRESS>:myapp
! [remote rejected] master_desenv -> master (pre-receive hook declined)
error: failed to push some refs to 'dokku@<IP_ADDRESS>:myapp'

Can you use a newer version of the buildpack? v33 is almost 5 years old now.

Yes I can, the point is how do I do that?
Before the problem, my procfile had only 1 line. - the one below
web: java -jar target/*.jar -Dserver.port=$PORT --spring.profiles.active=deploy
But since my deploys started to fail, I decided adding it in a try to resolve the problem.
I'm open to any suggestion or change.

I think you update the buildpack by running:
$ dokku config:set myapp BUILDPACK_URL=https://github.com/heroku/heroku-buildpack-java/releases/tag/v66

(note the v66)

and the command will be inside my procfile, right?

After running the config set from my ubuntu machine I'm still getting error.
Full command below
$ git push docker-d master_desenv:master -f
Enter passphrase for key '/c/Users/julio.neves/.ssh/id_rsa':
Counting objects: 170, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (86/86), done.
Writing objects: 100% (170/170), 20.02 KiB | 1.82 MiB/s, done.
Total 170 (delta 81), reused 146 (delta 63)
remote: Cloning into '/tmp/tmp.Oz7RqiUKC4'...
remote: done.
remote: HEAD is now at 88b86ab... Teste Julio
remote: -----> Building myapp using buildstep...
remote: -----> Installing ENV in build environment ...
-----> Using u1000 to run an application
-----> Fetching custom buildpack
To <IP_ADDRESS>:myapp
! [remote rejected] master_desenv -> master (pre-receive hook declined)
error: failed to push some refs to 'dokku@<IP_ADDRESS>:myapp'

I was using the wrong URL for the buildpack.
Insted of usng the url in the command below
dokku config:set myapp BUILDPACK_URL=https://github.com/heroku/heroku-buildpack-java/releases/tag/v66
I changed for
dokku config:set myapp BUILDPACK_URL=https://github.com/heroku/heroku-buildpack-java.git
I'm now being able to deploy again. :)


Update API ref views on hub pages for .NET 7

Contributes to #29176.
Base branch is release-dotnet-7.

I apologize. I bumped the merge button by accident.

No worries!


circleci test AND make test fail for installer because of presubmit label

See circleci and build icons
Bug description
Both the circleci tests and the build (make test) fail for the installer. For quite some time.
Error during test framework init: unknown label name: "presubmit"

Affected product area (please put an X in all that apply)
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[X] Test and Release
[ ] User Experience
[X] Developer Infrastrcture
Expected behavior
A working CI and at least some basic validation like make test should work.
Steps to reproduce the bug
Call make test in the installer repo.
Version (include the output of istioctl version --remote and kubectl version)
n/a
How was Istio installed?
n/a
Environment where bug was observed (cloud vendor, OS, etc)
n/a
Additionally, please consider attaching a cluster state archive by attaching
the dump file to this issue.

It looks like a Presubmit value is missing in pkg/test/framework/label/labels.go. But where is this label set and why has this not been noticed?
@ozevren Do you have some insights for me?

This commit could be related :) https://github.com/istio/istio/commit/70523617e92f1b8a640fbb5349c00790aba939cd

I removed the label since it is not needed/used anymore.

@ozevren The tests of the installer think otherwise :) (link) Any idea way it is still used there?

I don't know how istio/installer is syncing PRs/code from istio/istio. It looks like the updates done to the makefiles (particularly tests/integration/tests.mk) in istio/istio is not reflected properly.
istio.io/istio/tests/integration/security/util/connection istio.io/istio/tests/integration/security/util/secret --istio.test.select -customsetup,+presubmit

#237 fixed this problem (make test is still failing, but for another reason).


Fix typo

IPSec -> IPsec

@ankitaduttaMSFT
Can you review the proposed changes?
IMPORTANT: When the changes are ready for publication, adding a #sign-off comment is the best way to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team


How to calculate the target privatekey

Can you detail a bit more on how to go from subtracter hit to the original?
I saw you mentioned maybe building a tool but I don't see one yet.
Thanks

Nevermind, found what i needed @ https://github.com/albertobsd/keyhunt
Love these tools you've built.  They're a lot of fun to play with


VARA Node Set-up

Hi Team,
Can you help-

Provide Steps to Set-up Archival Node in Ubuntu Machine?

Also System Specification need for Set-up and Any Specific Requirement?

List of Ports to be Opened?

RPC Endpoints for the node?

Hi, sorry for the delay. Please follow the following steps to setup a archive node for Vara:

Provide Steps to Set-up Archival Node in Ubuntu Machine?

The setup process is roughly the same as running a validator node, but without the staking part:
Install vara node and extract the binary to /usr/bin/gear:

https://get.gear.rs/gear-v0.2.1-x86_64-unknown-linux-gnu.tar.xz

Start the node in archive mode:
$ gear --chain=vara --pruning=archive --telemetry-url "wss://telemetry.rs/submit 1" --name "VARA_ARCHIVE_NODE"

Use this systemd unit file if you want to start the node as a managed service
[Unit]
Description=Vara Archive Node
After=network.target

[Service]
Type=simple
ExecStart=/usr/bin/gear \
    --chain=vara  \
    --pruning=archive \
    --telemetry-url "wss://telemetry.rs/submit 1" \
    --name "VARA_ARCHIVE_NODE"
Restart=always
RestartSec=3
LimitNOFILE=10000

[Install]
WantedBy=multi-user.target

Save the config file as /etc/systemd/system/vara-archive-node.service, the start the service with
$ sudo systemctl start vara-archive-node.service

To check the service status in real time, use:
$ sudo journalctl --follow -u vara-archive-node.service

You can also see your running node in telemetry portal: https://telemetry.rs/

Also System Specification need for Set-up and Any Specific Requirement?

There isn't any system requirement for running an archive node for personal use. However, if the node will be used to query data frequently,  you are recommended to use the same spec as a validator node: https://wiki.vara-network.io/docs/staking/validate/#hardware-requirements

List of Ports to be Opened?

9933/TCP for JSON-RPC over HTTP
9944/TCP for JSON-RPC over WebSocket

RPC Endpoints for the node?

You can list all available rpc methods with the rpc_methods method:
$ curl -s -H "Content-Type: application/json" -d "{"id":1, "jsonrpc":"2.0", "method": "rpc_methods", "params":[]}" "http://localhost:9933/" | jq .result
{
  "methods": [
    ...
    "author_rotateKeys",
    ...
    "system_chain",
    "system_chainType",
    ...
    "system_health",
    "system_localListenAddresses",
    "system_localPeerId",
    "system_name",
    "system_nodeRoles",
    "system_peers",
    "system_properties",
    ...
    "system_syncState",
    ...
    "system_version",
    ...
  ]
}

Hi @btwiuse ,
thanks alot for the help, with given steps we are able to set-up the node. but we want the data in secondary Disk.
how can we do volume mapping?
2023-08-18 17:16:45 Block import error: Database
2023-08-18 17:16:45 💔 Error importing block 0xf406996c4d157d273d25a905a658e4f65a3332e6b23a3e044f5d4de406e89e92: consensus error: Import failed: Import failed: Database

Hi @ratneshpatil-rp , it seems the database is corrupted.
Did you copy the database directory while the node is still running? That could be the reason for this issue. You need to purge the chain sync from the beginning.


ci: removal of unused changelob job

PR Checklist

[ ] Unit Tests have been added for new changes
[ ] API tests have been updated if applicable
[ ] All commented code has been removed
[ ] If you've added a dependency, you've ensured license is compatible with Apache 2.0 and clearly outlined the added dependency.

What are you changing?

Anything the reviewer should know when reviewing this PR?
If the there are associated PRs in other repositories, please link them here (i.e. open-amt-cloud-toolkit/repo#365 )

:tada: This PR is included in version 2.3.6 :tada:
The release is available on:

GitHub release
v2.3.6

Your semantic-release bot :package::rocket: