Parse alignment logs, stop pipeline if an alignment error occurs

We need to parse the .align.log files generated from running bowtie and immediately kill the pipeline if bowtie exits with an error. Currently, the pipeline continues through all subsequent steps with a truncated alignment, which is bad because it produces misleading and incomplete results.
An example of a bowtie log file:
Error, fewer reads in file specified with -1 than in file specified with -2
terminate called after throwing an instance of 'int'
(ERR): bowtie2-align died with signal 6 (ABRT)

Looking through some other logs, here are additional values that we need to detect and stop the pipeline for:
Error: Read NS500735:273:H2W7CBGXY:4:22504:10114:5463 1:N:0:AGCCAGAA has more read characters than quality values.
terminate called after throwing an instance of 'int'
(ERR): bowtie2-align died with signal 6 (ABRT)

gzip: /srv/gsfs0/projects/kundaje/users/cprobert/data/atac-projects/TBFFCRC_ATAC/fastqs_trimmed/ATACpt7P1_S10_R1.trimmed.fastq.gz: unexpected end of file

fixed in commit 7431125 (bds_atac) and 5f6f612(chipseq)
https://github.com/kundajelab/TF_chipseq_pipeline/commit/5d6f612613a8779284b84c09c021d5ab73680239


Selected bar tab color not changing

I am having a trouble changing selected bar color.
I try to change the tab color as the documentation says.
settings.style.selectedBarBackgroundColor = .yellow
But my selected tab underline color still being black.
Could u please fix that issue?

I have the same problem.

@mehdico Thanks! That works for me

@mehdico  Thanks! That help me too

buttonBarView.selectedBar.backgroundColor = UIColor.yellow


Add Apache 2.0 License

Type: Missing
Summary:
Add Apache 2.0 License
Details:
No info in package files. Meta data points to Apache 2.0, Source repo confirms.
Resolution:
https://github.com/unitycontainer/unity/blob/<IP_ADDRESS>6/LICENSE
Affected definitions:

Unity.Container 5.7.0

@capfei can you resolve this conflict, thanks.

@AE49 resolved!


[ISSUE #8192] fix: message track is not correct caused by master changed

Which Issue(s) This PR Fixes

Fixes #8192
Brief Description
There's no need to check if the message's store host is equal to broker's master address, because the master role maybe change to another node.
How Did You Test This Change?

@humkum can you please fix the failing tests?


Tune CephFS default metadata/data ratio

Checklist

[x] Keep pull requests small so they can be easily reviewed.
[x] Update the documentation.
[x] Categorize the PR by setting a good title and adding one of the labels:
bug, enhancement, documentation, change, breaking, dependency
as they show up in the changelog

LGTM
How did you choose that ratio?

I picked numbers that I think are closer to the real ratio than the out-of-the-box default of 50/50 for metadata/data. It's quite possible that this ratio still doesn't accurately predict the metadata size for a realistic setup, we may have to further tune this after running the setup a few weeks in production.


Sort SAMA5D2 adc/tsd dma

Summary
SAMA5D2 uses XDMA not DMA and a few minor changes were required to get XDMA working for the ADC and TSD peripherals
Impact
DMA should now work
Testing
Custom board with SAM5D27C-D1G with 6 channels of ADC + touchscreen LCD

Hadn't realised it had both of my recent commits. Will rebase/merge/etc.


Use shared interactive window component

Fix https://github.com/Microsoft/PTVS/issues/2150
Python & R toolbars don't conflict. Note that I made groups, previous implementation was a single group for all toolbar items.

VS 2015, which we don't ship, has slightly different order, due to them defining their group priority as 0, so we can't have the New Window button as the first item. Well we could, if we integrated in their group, but that would also look different, and have more conditional code in the vsct, which I want to minimize.

Need to test Jupyter stuff, there's a TODO in the code. Don't merge yet.

This build includes the changes:
\pytools\rolldata\PTVS\Build\PTVS-Github-Huguesv-Dev15\17046.2\release
It's working fine so far.

Please also go into Python/setup/swix/install.ps1 and add Microsoft.VisualStudio.InteractiveWindow to the list of components to install in VS. The shared interactive window is not installed by default.

:+1


[WIP] Initial work on CodeLens

This is totally W.I.P!
It should show the current progress. Please bear with me, I'm still getting started in visual studio extension development. This might be a total catastrophe and if so I'm very sorry!
Should fix #2368
Signed-off-by: realvictorprm<EMAIL_ADDRESS>

@realvictorprm,
Thanks for your contribution.
To ensure that the project team has proper rights to use your work, please complete the Contribution License Agreement at https://cla.microsoft.com.
It will cover your contributions to all Microsoft-managed open source projects.
Thanks,
Microsoft Pull Request Bot

How many contribution license do I have to agree in my life 😄
Thanks for editing the title @cartermp

@olegtk, @panopticoncentral either of you care to comment on the approach here?  I would be happy to get CodeLens support for F#.

@realvictorprm, thanks for signing the contribution license agreement. We will now validate the agreement and then the pull request.
Thanks, Microsoft Pull Request Bot

Glad someone's got the ball rolling on this! Fantastic.

So could someone tell me how to access any service for getting function headers 😜 ?
I want to go one 😄

Few comments:

Can we use 'this' instead of 't'?
I don't see how this is F# specific - do we not need to check that we're in an F# file before adding adornments?
I'm concerned that is looking very synchronous - I imagine the F# API for getting the location of function definitions is async so you should probably make the design async asap
Finally we don't need 'do' in front of statements

Keep it up 😄

@saul

Yes we can. I'm lazy so I always write t :smile:
You're totally right. As I told I'm a beginner and don't know yet how to but shouldn't be a big problem I guess.
I'm not used to async that much yet. I'll of course redesign it in manners of async because I'm already sure that it's totally needed.
I tried to be totally F#ish :smile:

I'm trying to colorize it now.

Should be possible through text styles @vasily-kirichenko
I wrote you on the fssf Slack, you aren't around there?

@vasily-kirichenko I would appreciate if you describe some of the edits you made. I read them but noting them down in human readable form would be cool too tough.

@realvictorprm I'm on functionalprogramming.slack.com

Join here https://fpchat.com/

thanks @vasily-kirichenko I'm waiting for the email :smile:
Meanwhile I updated the repo which contains CodeLens lightweighted for fast testing and showcase. The Visual F# project is a bit big for fast testing. How do you do it @vasily-kirichenko?

Pull https://github.com/realvictorprm/visualfsharp/pull/2 please.

@realvictorprm Set VisualFSharpOpenSource project as startup, then Ctrl+F5. It's not so slow.

That layout rendering produces strange results for functions, methods and properties. However, it's the same stuff I've stolen form Quick Info...

yes I noticed this too. Before it worked better. It must be due to the results we're using

Yeah, you folks are building essentially F#-only CodeLens-like feature from scratch, not using editor's CodeLens API and implementation.
That's OK if that's what you want (to workaround CodeLens being Pro+ feature for example).
But it's definitely going to be more expensive to implement and definitely will be inconsistent with editor's CodeLens user experience wise.
We are currently considering making CodeLens API public (which technically is already public, but just defined in an internal assembly) and the only limiting factor is the lack of time (we are heads down with significant VS update work) so I'm pretty confident it will be public eventually. If you'd like to go that route I can show you how it can be done.

@olegtk I thought the issue with CodeLens implementation was that it can't stack multiple adornments properly and that's partially why it's currently internal.
The plan is to turn this into a more general feature so that it can create layers to store adornments like column breakpoints,  show full "tooltip" info (including remarks etc), show complete error messages, expand all overloads in a list underneath, and provide a variety of other kinds of contextual information above or below the textline.
Will CodeLens provide enough flexibility to do all of that?

@cloudRoutine Having all those features are great, but I suggest to finish this particular thing - showing types. As it often happens, we may never find time to implement anything beyond that.

Looks like many Quick Info tooltips do not work on this PR.

@cloudRoutine what do you mean CodeLens "can't stack multiple adornments properly"? I'm, not aware of such an issue.
There are 2 fundamental limitations in extensing VS CodeLens:

CodeLens API is not officially public. This is mostly technical issue, pretty easily to solve.
CodeLens feature being Pro+. This is not a technical issue and requires some marketing decision by VS leadership. I can't help here, but we started this discussion internally.

What you are describing is very generic feature list, not necessarily fitting into CodeLens only, but CodeLens is pretty extensible presentation-wise.

Doesn't work for me at the moment:
System.NullReferenceException: Object reference not set to an instance of an object.
   at Microsoft.VisualStudio.FSharp.Editor.CodeLensProvider.Microsoft-VisualStudio-Text-Editor-IWpfTextViewCreationListener-TextViewCreated(IWpfTextView view)
   at Microsoft.VisualStudio.Text.Editor.Implementation.WpfTextView.<>c__DisplayClass242_0.<BindContentTypeSpecificAssets>b__1()
   at Microsoft.VisualStudio.Text.Utilities.GuardedOperations.CallExtensionPoint(Object errorSource, Action call)


ShelfView-iOS

Project URL
https://github.com/tdscientist/ShelfView-iOS
Description
iOS custom view to display books on shelf
Why it should be included to awesome-ios (optional)
Checklist

[X] Only one project/change is in this pull request
[X] Addition in chronological order (bottom of category)
[X] Supports iOS 9 / tvOS 10 or later
[X] Supports Swift 3 or later
[X] Has a commit from less than 2 years ago
[X] Has a clear README in English

          1 Warning

:warning:
Please rebase to get rid of the merge commits in this Pull Request

  Generated by :no_entry_sign: Danger

Thank you!
Sent with GitHawk


How to decrypt encrypted JSON and confused JS files?

Hey please provide a detailed description of your problem

Hey please provide a detailed description of your problem

JSON content is encrypted, JS content is obfuscated, and the game cannot run, what should I do?

When the game doesnt start, it seems its more a problem from the Game dev

When the game doesnt start, it seems its more a problem from the Game dev

Mainly because JSON files and JS files are encrypted

Anyway with that little information provided, I cant help, feel free to open a new ticket with a more detailed description, which include all details such as:

Game Name
Detailed description of the Problem
Description what you have tried so far
Maybe example Files
Additional logs if you have some
Screenshots

I close this now because I can only guess on your current problem without more informations


Autocomplete: Remove common TS hover text for graph context

This removes common and not helpful hover text like you can see in this screenshot:

Test plan
The common and unhelpful hover text is no longer included in the context. Here instead we only see a previous selected section being added (the example does not have any references to code that is outside the context window)

Also just noticed the absolute paths names. I thought I fixed this already 🤔

vscode.workspace.asRelativePath doesn't do anything anymore for me lol. this is new 🤔

... I'll look into this as a follow-up PR

Ah okay the URL was absolute because I opened a subfolder as the workspace and:
		 * When there are no {@link workspace.workspaceFolders workspace folders} or when the path
		 * is not contained in them, the input is returned.

I wonder if relative paths to the first workspace folder would be better though since this just includes more chars and is potentially not helpful for the code completion. Anyway for now this is a different issue, the existing context is using the same API


Fix String Frame Readers to read String Arrays correctly

Description
While writing to a frame, String arrays are written by setting the multivalue byte.
But while reading, it was hardcoded to false.
Fixed it by reading the byte similar to readColumn method.

Key changed/added classes in this PR

StringFrameColumnReader
StringArrayFrameColumnReader

This PR has:

[x] been self-reviewed.

[ ] using the concurrency checklist (Remove this item if the PR doesn't have any relation to concurrency.)

[ ] added documentation for new or modified features or behaviors.
[ ] a release note entry in the PR description.
[ ] added Javadocs for most classes and all non-trivial methods. Linked related entities via Javadoc links.
[ ] added or updated version, license, or notice information in licenses.yaml
[ ] added comments explaining the "why" and the intent of the code wherever would not be obvious for an unfamiliar reader.
[x] added unit tests or modified existing tests to cover new code paths, ensuring the threshold for code coverage is met.
[ ] added integration tests.
[ ] been tested in a test Druid cluster.

LGTM! Can you make sure the CodeQL issue isn't real, and suppress/fix it accordingly

@sreemanamala Can you please try out this query once with MSQ engine as well to see if the latest changes of this PR are still fixing it? Thanks!


Blazor client onclick function with parameter

Adding parameter to a function in Blazor client  throws compiler error: Cannot convert from void to string, example:
My function

void MyFunction() {
    Console.WriteLine("Works");
}

My function

void MyFunction(int number) {
    Console.WriteLine("Throws error");
}

Hello, you can do this with something like that
My function
if you want pass args (UIEventArgs)
My function
good luck

Not quite.. All of these will return the last number (5)
@for(int i  = 0; i < 5; i++)
{
	 MyFunction(i))">My function i

}
void MyFunction(int number)
{
	Console.WriteLine(number);
}

wow you are right it's really bad !
I have a workaround which works
@{
    var list = new int[]{ 0, 1, 2, 3, 4 };
}

@foreach(var l in list)
{
     MyFunction(args, l))">My function @l

}

but the team have to solve it, it can't stay like that

Ok so it took me a few minuets to figure it out but here's what I believe i going on. Because you're using a lambda function to define the event, its taking i as a reference (because its a simple type) and then when the loop finishes, i is left at 5 and when the function is called, all functions just use i (5). You can confirm this by adding a copy variable in the loop to copy the var by value into the local scope of the loop.
@for(int i = 0; i < 5; i++)
{
    var a = i;
    Action func = () => test(a);
	My function @a

}

Thanks for contacting us. We believe that the question you've raised have been answered. If you still feel a need to continue the discussion, feel free to reopen it and add your comments.

I have altered the counter page to demonstrate. The UI is not refreshed when you hit one of the "Set counter to" buttons.
Sample: Click "Set counter to 3" nothing happens. When you click on "Click me" the counter is set to 4.
Is this a bug in Blazor? Or is there a fix/ work around?
`@page "/counter"
Counter
Current count: @currentCount

Click me

@for (int i = 0; i < 5; i++)
{
    var a = i;

<button class="btn btn-primary" onclick="@(() => test(a))">Set counter to @a</button>

}

@functions {
    int currentCount = 0;

    protected void IncrementCount()
    {
        currentCount++;

    }

    void test(int i)
    {
        currentCount = i;
    }
}

`

@Madunet add @ before onclick
<button class="btn btn-primary" @onclick="@(() => test(a))">Set counter to @a</button>

I needed similar syntax for invoking a method with a parameter and here is what worked for me:
Razor:
<button class="btn btn-primary" onclick="@((Action<EventArgs>) (args => RegisterClicked(args, ConferenceEvent.ConferenceEventId)))">Register</button>
Code:
private void RegisterClicked(EventArgs args, Guid conferenceEventId) { 	System.Diagnostics.Debug.WriteLine($"Register for {conferenceEventId}"); }
Note: I'm using RC1, which includes some changes necessary as of Preview 9:
"Replace Microsoft.AspNetCore.Components.UIEventArgs with System.EventArgs and remove the “UI” prefix from all EventArgs derived"
See: https://devblogs.microsoft.com/aspnet/asp-net-core-and-blazor-updates-in-net-core-3-0-preview-9/


Dev

see commit subjects
index.test.js: mocked axios
ec-weather.test.js: uses live GETs, but marked SKIP
src/parse.js: uses xml2js.parseStringPromise

Merged and published - thanks!


batch training with model.fit not working for all batch_sizes

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow):
Yes

OS Platform and Distribution (e.g., Linux Ubuntu 16.04):
Windows

TensorFlow installed from (source or binary):
binary via anaconda

TensorFlow version (use command below):
2.1.0

Python version: 3.7.9

Describe the current behavior
When the number of samples in the training set is not equal to a factor of the batch size, model.fit will throw an error. On 2.1.0, I get an error saying that the shapes of two operators are incompatible. Not sure if this is the expected behavior or not.
tensorflow.python.framework.errors_impl.InvalidArgumentError:  Incompatible shapes: [32,1] vs. [4,1]
         [[node mul_5 (defined at .\classify.py:31) ]] [Op:__inference_distributed_function_435]

Function call stack:
distributed_function

It seems like when the function is creating the last batch in the epoch, it doesn't have enough samples remaining to create a full batch, as a result, it builds what it can then errors out. The size of my dataset is 1763, not exactly a neat number. The only other method I have to implement minibatch training is to split the dataset into batches myself and train manually, without model.fit. Like I said, if this is the expected behavior, ignore this probably, but it seems like a hassle. Especially if the size of someone's dataset was a prime number, in which case they would be restricted to training either with a batch size of 1 or the size of their full dataset, which seems inconvenient.
Describe the expected behavior
The expected behavior for me would be for model.fit to split the data into batches without running out of room on the last batch.
Standalone code to reproduce the issue
import numpy as np
import tensorflow as tf
from tensorflow.keras import Sequential, optimizers, losses
from tensorflow.keras.layers import Input, Dense, Flatten

def make_model(input_shape, output_shape, batch_size=32):
    model = Sequential()
    model.add(Input(shape=input_shape, batch_size=batch_size, name='input'))

    model.add(Flatten())
    model.add(Dense(output_shape))
    model.build((batch_size, *input_shape))
    return model

if __name__ == '__main__':
    batch_size = 32
    input_size = (5, 5)
    output_size = 1
    num_samples = 100
    model = make_model(input_size, output_size, batch_size=batch_size)
    model.compile(optimizer=optimizers.Adam(), loss=losses.SparseCategoricalCrossentropy(from_logits=True))
    X = np.ones((num_samples, *input_size))
    y = np.zeros(num_samples)
    model.fit(X, y, batch_size=batch_size, epochs=10)

Here's a link to a Colab notebook as well. It seems like in more recent version of tensorflow, the error is still there, but the exact error that comes up is slightly different.
https://colab.research.google.com/drive/1RSOIKMYFAlg2jfPaljkosBpQyhaFbQNy?usp=sharing

Hi,
My guess is that the issue comes from your specifying a fixed batch size in the Input layer.
Could you please change the line model.add(Input(shape=input_shape, batch_size=batch_size, name='input')) to model.add(Input(shape=input_shape, batch_size=None, name='input')) and run the script?

Your fix works fantastically. Thank you. Although, in my opinion, this behavior is not immediately intuitive, it gets the job done.

Great!
To explain a bit: when you pass batch_size=32 to the Input layer, the computational graph is built to support this, an only this, input batch size, which can result in some optimizations as compared with accepting a dynamic input size. If you wanted, you could use an option in tf.data.Dataset.batch to discard remaining samples that do not form a complete batch - another option could be to zero-pad the final batch, but then you have to use the masking system to ensure padding entries are not used when computing model updates.
On the other hand, passing batch_size=None to the Input layer triggers the support of any input batch size in your graph - but that means some operations may have to be recompiled on the fly to match the various input configurations. It is actually quite the same as when you use None to leave some other input dimensions unspecified; e.g. to build RNNs that receive variable-size sequences.


Channel page caching

Issue #1255
Moves <BusyIndicator> to title bar.
Refactors contentList to show "No content found" only after fetch is complete; null while fetching.

There is still some chance that a user will click the wrong tile but the update is very fast and pretty smooth. The best way I see to prevent this is to disable navigation for ~1sec following the update. This could be done by adding a throttle property to the state along with corresponding actions, reducers, and a thunk in doNavigate, or migrating from thunks to middleware, both of which seem well beyond the scope of this issue.

This is great. So much smoother.

I also cleaned up types in <BusyIndicator>.


Support lazy-loading for message contents

Related: #473

Framework7 version: 4
Platform and Target: Cordova App

Describe the bug
Images with lazy do not work when embedded in messages
To Reproduce
Add some messages with images with lazy class and data-src
Expected behavior
Images load lazily
Actual Behavior
Nothing
Additional context
In the original, now closed ticket, the issue was for adding new messages. However, in my case, I need to re-create the chat history from a local cache on app load. Here, it would be nice if those historical images didn't immediately trigger a http request, as it starts to get really slow with a huge chat history. I am creating the messages in bulk with addMessages.
Alternative fix
ability to re-initalize the lazy feature after creating the dom elements.

Workaround:
Call app.lazy.create($$('.messages-content')); after creating the messages.

It is already supported, you just need (as on any other page where there is no lazy images on initial load) to init it with app.lazy.create as you already did


Start migration from black to ruff

Ruff now has the autoformat capabilities. We should start migrating from black to ruff.
https://docs.astral.sh/ruff/faq/#how-does-ruffs-formatter-compare-to-black

Hi there!
I have marked this issue as stale because it has not had activity for 45 days.
Consider the following options:

If the issue refers to a large task, break it in smaller issues that can be solved in
less than 45 days;
Label the issue as wontfix or wontfix for now and close it.


Automatic reconnecting when EventStore restarts

✅ Starting the App while the EventStore is offline:
❯ iex -S mix phx.server
Erlang/OTP 25 [erts-13.1.2] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [jit:ns]

[warning] Cannot subscribe to $ce-v1 (reason: closed). Will retry in 1000 ms.
[debug] Spear event store subscription "Dia.Beneficiary.Projector" to stream: "$ce-v1", start from: :origin
[debug] Spear event store subscription "Dia.Messages.Projector" to stream: "$ce-v1", start from: :origin
[debug] Spear event store subscription "Dia.Projects.Projector" to stream: "$ce-v1", start from: :origin
[debug] Spear event store subscription "Dia.Beneficiary.Handlers.Emails" to stream: "$ce-v1", start from: :current
[debug] Spear event store subscription "Dia.Beneficiary.Projector" failed to subscribe due to: {:error, :closed}. Will retry in 60000ms
[debug] Spear event store subscription "Dia.Messages.Projector" failed to subscribe due to: {:error, :closed}. Will retry in 60000ms
[debug] Spear event store subscription "Dia.Projects.Projector" failed to subscribe due to: {:error, :closed}. Will retry in 60000ms
[debug] Spear event store subscription "Dia.Beneficiary.Handlers.Emails" failed to subscribe due to: {:error, :closed}. Will retry in 60000ms
Interactive Elixir (1.14.1) - press Ctrl+C to exit (type h() ENTER for help)
[warning] Cannot subscribe to $ce-v1 (reason: closed). Will retry in 1000 ms.
[warning] Cannot subscribe to $ce-v1 (reason: closed). Will retry in 1000 ms.
[warning] Cannot subscribe to $ce-v1 (reason: closed). Will retry in 1000 ms.

After the EventStore starts:
...
[warning] Cannot subscribe to $ce-v1 (reason: closed). Will retry in 1000 ms.
[warning] Cannot subscribe to $ce-v1 (reason: closed). Will retry in 1000 ms.
[warning] Cannot subscribe to $ce-v1 (reason: closed). Will retry in 1000 ms.
[warning] Cannot subscribe to $ce-v1 (reason: closed). Will retry in 1000 ms.
[warning] Cannot subscribe to $ce-v1 (reason: closed). Will retry in 1000 ms.
[debug] Spear event store subscription "Dia.Beneficiary.Projector" to stream: "$ce-v1", start from: :origin
[debug] Spear event store subscription "Dia.Messages.Projector" to stream: "$ce-v1", start from: :origin
[debug] Spear event store subscription "Dia.Projects.Projector" to stream: "$ce-v1", start from: :origin
[debug] Spear event store subscription "Dia.Beneficiary.Handlers.Emails" to stream: "$ce-v1", start from: :current
[debug] Dia.Projects.Projector has successfully subscribed to event store
[debug] Dia.Beneficiary.Handlers.Emails has successfully subscribed to event store
[debug] Dia.Beneficiary.Projector has successfully subscribed to event store
[debug] Dia.Messages.Projector has successfully subscribed to event store

In the scenario, the application automatically connects to the EventStore and creates all subscriptions.
⛔ Stopping the EventStore while the application is connected
When stopping the EventStore while the application is connected, the whole App is being killed/stopped.
[warning] Subscription to EventStore is down (reason: closed). Will retry in 1000 ms.
[debug] Spear event store subscription "Dia.Messages.Projector" down due to: :closed (subscription)
[debug] Spear event store subscription "Dia.Projects.Projector" down due to: :closed (subscription)
[debug] Spear event store subscription "Dia.Beneficiary.Projector" down due to: :closed (subscription)
[debug] Spear event store subscription "Dia.Beneficiary.Handlers.Emails" down due to: :closed (subscription)
[debug] Dia.Messages.Projector subscription DOWN due to: {:shutdown, :subscription_shutdown}
[debug] Dia.Beneficiary.Handlers.Emails subscription DOWN due to: {:shutdown, :subscription_shutdown}
[debug] Dia.Projects.Projector subscription DOWN due to: {:shutdown, :subscription_shutdown}
[debug] Dia.Messages.Projector is shutting down due to {:shutdown, :subscription_shutdown}
[debug] Dia.Beneficiary.Handlers.Emails is shutting down due to {:shutdown, :subscription_shutdown}
[debug] Dia.Projects.Projector is shutting down due to {:shutdown, :subscription_shutdown}
[debug] Dia.Beneficiary.Projector subscription DOWN due to: {:shutdown, :subscription_shutdown}
[debug] Dia.Beneficiary.Projector is shutting down due to {:shutdown, :subscription_shutdown}
[debug] Spear event store subscription "Dia.Messages.Projector" to stream: "$ce-v1", start from: :origin
[debug] Spear event store subscription "Dia.Beneficiary.Handlers.Emails" to stream: "$ce-v1", start from: :current
[debug] Spear event store subscription "Dia.Projects.Projector" to stream: "$ce-v1", start from: :origin
[debug] Dia.Beneficiary.Handlers.Emails is shutting down due to :shutdown
[debug] Dia.Projects.Projector is shutting down due to :shutdown
[debug] Dia.Messages.Projector is shutting down due to :shutdown
[notice] Application dia exited: shutdown

Thanks, @philipgiuliani for reporting this.
Just to be sure I understand this correctly, it appears that the reconnection retry is not working correctly, but it shutdowns instead.
Am I correct?

Exactly, as soon as the EventStore shuts down, the wohle OTP application also shuts down.
If the app is started without the EventStore running, the initial reconnection works perfectly fine.

@philipgiuliani I was not able to reproduce this. In my test application, when stopping the EvenstoreDB, subscribers retry indefinitely while the OTP app does not shutdown. Could you provide more logs and details about the configuration?

Hey, we will look into this in the coming week(s) and let you know! Thanks for your check. Is your example application open source?

I am using https://github.com/trento-project/web, but configured with the spear adapter instead.

I had time to look again at this. As mentioned in the comment (https://github.com/fabriziosestito/commanded-spear-adapter/issues/17#issuecomment-1386760920) we've started all event handlers under the main app supervisor.
Since the default config of the supervisor is 3 restarts/5 seconds, and we have 4 processes that shut down at the same time, the whole supervisor did shut down...
Sorry for wasting your time!
Do you think the behaviour of shutting down the Genserver on disconnect is OK, or should the reconnects be handled internally?

While the event publisher handles the retry without shutting down, the subscription does not: https://github.com/fabriziosestito/commanded-spear-adapter/blob/2d1b9d52c607619016b830604ec967578688d2c8/lib/commanded/event_store/adapters/spear/subscription.ex#L138
I think you are right, we might want to handle the retry "internally" without shutting down the subscription on :eos, I will work on it on a branch and get back to you.

I've introduced the retry logic in https://github.com/fabriziosestito/commanded-spear-adapter/pull/23, let me know if this fixes it


Hardcoded dependency on :name

At https://github.com/elixircnx/openmaize/blob/master/lib/openmaize/token/create.ex#L33, there's:
`user` is a map containing the user information, which needs to contain
  values for `id`, `name`, `role`, `nbf_delay`, which is the number of minutes             <<<<====
  in the future after which the token can be used, and `token_validity`, which
  is the number of minutes that the token will be valid for.
  """
  def generate_token(user, {nbf_delay, token_validity}) do
    nbf = get_nbf(nbf_delay * 60_000)
    Map.take(user, [:id, :name, :role])                                                                   <<<<<====
    |> Map.merge(%{nbf: nbf, exp: get_expiry(nbf, token_validity * 60_000)})
    |> encode(Config.get_token_alg)
  end

Elsewhere, :name is optional if you change the unique key with:
config :openmaize,
  unique_id: "login",
  ...

Probably doesn't matter, given the variation in the other keys, but I thought I'd mention it.

Thanks for pointing that out. I'll fix that today.


Switch to Yarn v3

I have upgraded to Yarn v3 with node-linker across many projects and have found it to be quite stable.
I also sorted package.json using yarn dlx sort-package-json

thanks for the PR! i think that this issue on the bud repo still needs to be resolved:
https://github.com/roots/bud/issues/387

thanks for the PR! i think that this issue on the bud repo still needs to be resolved:
roots/bud#387

I've applied a workaround that should work fine until that issue is solved.

can you please revert the changes made with sort-package-json? bud configuration was at the top intentionally for ease of use

Moved it back to the top for you

thanks! fwiw, sage likely won't be switching to yarn v3 unless bud does
as far as i understand, there's been a ton of pushback in the dev community about yarn v3. this decision is in the hands of our budtenders, @kellymears and @QWp6t

Totally understand. Here's my view for @kellymears  and @QWp6t  -- Yarn v3 with nodeLinker: node-modules and WITHOUT zero-installs
ref: .gitignore
.pnp.*
.yarn/*
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/sdks
!.yarn/versions

... is just Yarn v1 but WAY FREAKING FASTER 👯
instead of using yarn install --frozen-lockfile on Yarn v1 I just now use yarn install --immutable on Yarn v3. That is literally all the difference.
If bug cares about speed and developer experience, I think it will adopt Yarn v3 over Yarn v1 at least without zero-installs and with node-linker. Makes total sense.

I think we should use NPM instead of Yarn, but that’s just my two cents. I haven’t actually looked into Yarn 3, only Yarn 2 which I didn’t adopt for a number of reasons. I’ll look into Yarn 3 though.

I approve of this.
We use yarn v3 with node-linker in the roots/bud monorepo. I think it's a good tool and I agree it's a better overall tool than yarn v1 at this point. I think both are way friendlier than npm in terms of overall dev experience (especially when it comes to the cli). Also, pinch me, who doesn't love a good underdog story (seeing how npm is now a microsoft product!)
A year ago? No way I would have approved of this PR. We almost switched to npm. In fact, I think we would have if @qwp6t didn't have such a cool head and steady draw. Today, I am obviously very glad that we did not switch.
It is very likely that roots/bud will provide an (optional) yarn v3 plugin in a future release. I don't think we're fully pnp compatible, but that is likely the next big thing we take on (after we've fully transitioned to using esm). I think pnp is an excellent idea but replacing all of our filesystem operations with pnp resolver calls is going to be a proper task.
Things I appreciate about yarn v3:

The flexibility afforded by the hackable dependency resolution strategy. pnp as a default resolver is an excellent choice and first party support of node-linker is deeply appreciated. I agree that node-linker is the correct strategy for sage.
The yarn patch functionality is incredible. Instead of waiting for an upstream to accept a PR to fix a critical error you can patch it for your project. It is easy to do this and the cli dx is quite good.
Yarn v3 has an API. This is huge. And that API supports plugins -- even better. All of the bud monorepo's internal tooling is handled with a yarn v3 plugin. I think there is room to explore this in roots/sage for project maintenance tasks that fall outside of the purview of bud (which is, ultimately, a build tool).
Yarn v3's lockfile is valid yml. npm is json. Even worse, yarn v1's lockfile is some sort of monstrous almost yml. I've really come to appreciate having a readable lockfile...
The yarn version that lives in the project is separate from the yarn installed on the system. The project yarn will not resolve a globally installed package. yarn and npm resolving a global package (sometimes in lieu of a package explicitly specified in the project manifest!) is the cause of much frustration and is just flat-out not a problem for yarn v3 projects.

Concerns:

The small overhead inherent to updating the project's copy of yarn and plugins. It is not a huge hassle (it is a single command), but it is a thing that will need to be done from time-to-time.
yarn v3 is stable but it's obviously not as battle-tested as its older brother.

Things I'd like to see explored (not blocking for this PR):

A resolutions entry in package.json that resolves react to @wordpress/element.

I did a little research about Yarn 3 and very quickly learned about Corepack. Given that Sage 10 is a Node 16+ project and Corepack should be readily available, I am no longer opposed to using Yarn going forward. I am indifferent though, but that’s just because I haven’t used Yarn 2 or 3. It seems reasonable to stick with Yarn since most existing Sage users will be familiar with it.
Two questions I have for this PR:

From my understanding there are no node_modules in Yarn 2+? If so, then can we remove the reference to it in the README’s theme structure tree.
Now, more importantly, how well is Yarn 3 supported by CI tooling? I think if we are going to adopt Yarn 3, then we need to make sure that the major CI tools the community uses support it.

I'm glad to lend insight as I have worked with Yarn v3 extensively with the patching capability (its awesome) and with CI caching. Will reply tonight.

@knowler

From my understanding there are no node_modules in Yarn 2+? If so, then can we remove the reference to it in the README’s theme structure tree.

That's what nodeLinker: node-modules is for. It will cause Yarn to add node_modules directory for package resolution.

Now, more importantly, how well is Yarn 3 supported by CI tooling? I think if we are going to adopt Yarn 3, then we need to make sure that the major CI tools the community uses support it.

I'm not sure about the wider landscape, but notably the Dependabot team currently has no plans to support Yarn 2/3 (you'll have to view hidden comments to see the conversation, but it's all in there).
We ran into quite a few issues in Bud where it turned out that Yarn was the culprit. Our issues were related to https://github.com/roots/bud being a monorepo, and also possibly something to do with Typescript (at one point, builds were failing on my machine bare metal, but worked in the docker container, but failed on github, but worked bare metal for Kelly, and it turned out that reverting a Yarn update resolved everything). It definitely caused some headaches and I have mixed feelings about it in general, but also, I can't think of any issues we ran into that would directly affect Sage.

@QWp6t Thanks for explaining that. I guess we will need to use Renovate for dependency updates like Bud is if we merge this.

if bud could work on npm instead of requiring yarn, i personally would prefer to drop use of yarn entirely in sage due to the current state of yarn

after looking into this a bit more, i'm a little hesitant because:

we'll have to move away from dependabot like @QWp6t mentioned. this isn't a dealbreaker, dependabot isn't perfect anyway, but it is a blocker in order to merge this PR.
we'll have to include the yarn binaries in the repo (3mb) and update them over time 🙈

...but until bud supports npm, we do need to update the docs and README's for both bud and sage to reflect that yarn is a requirement to avoid confusion. per @kellymears, both yarn v1 and yarn v3 are supported. it doesn't seem right to recommend installing yarn v1 though, and it looks like the changes from this PR are required for v3.
🤔
this looks like something that we're gonna have to do. i just don't want to do it.


Ml/fixing types after merging join group work

quick fix/fast follow for fixing types from merging joinGroup refactor work

Summary by CodeRabbit
Release Notes

New Features

Transitioned from group-based data handling to conversation-based data management across various components and functions.
Enhanced type safety by introducing specific types for conversations, improving the overall robustness of the application.

Bug Fixes

Updated methods and properties to align with the new conversation structure, ensuring correct functionality when joining or managing conversations.

Documentation

Improved JSDoc comments for better clarity on function purposes and usage examples.

Chores

Updated dependencies, including a significant version upgrade for @xstate/react.
Removed unused imports and functions to streamline the codebase.

Tests

Adjusted test cases to reflect the new conversation data structures, ensuring comprehensive coverage of the updated functionalities.

Merge activity

Dec 4, 11:51 AM EST: A user started a stack merge that includes this pull request via Graphite.


Add support for metric tag-key indexing

In the transition from using AddMetric to AddMetrics in the Cassandra API, it was forgotten to include the tag-key indexing inserts.
This PR allows you to use the query describe metrics where key = 'value' when indexing with .AddMetrics.

:+1:


thaliPeerAction & thaliPeerPoolInterface

Still need to do thaliPeerPoolDefault

Reviewed 5 of 5 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from the review on Reviewable.io


_createformReducer is not a function

I had a trip-up on this line. Looks like a typo.
https://github.com/davidkpiano/react-redux-form/blob/e82f5cb3f640862ca79a54f0394feb325fcc7b7a/src/reducers/form-reducer.js#L392

Right, sorry about that. In 1.0, createFormReducer will be deprecated and it'll just be formReducer. For now (and the future) it's best to use formReducer. So this will be fixed in V1 :relieved:


support mps device along with cpu and gpu

writing up an attempt to get MPS support faster than CPU, marking as draft because it seems slower (?)
SAM2 supports some MPS acceleration: https://github.com/facebookresearch/sam2/pull/192 Samgeo supports this version of SAM2, so I made a small change to how this project chooses the device by using SamGeo's choose_device function.
Tested this locally on my mac m1 with ds-annotate running locally, pointing to my local samgeo-service
→ uv run uvicorn main:app --host <IP_ADDRESS> --port 8000 --reload --log-level debug
INFO:     Will watch for changes in these directories: ['/Users/ryanavery/samgeo-service/app']
INFO:     Uvicorn running on http://<IP_ADDRESS>:8000 (Press CTRL+C to quit)
INFO:     Started reloader process [19664] using WatchFiles
2024-10-06 20:43:59 - INFO - Using device: mps

This takes about 8 seconds. I'm not sure but I think this doesn't include computing image embeddings.
2024-10-06 20:48:38 - INFO - {'method': 'POST', 'path': '/segment_predictor', 'duration': 8.586161125000217}

this seemed kinda slow so I tried a similar multi point query and hard coded the cpu device
INFO:     <IP_ADDRESS>:59286 - "POST /segment_predictor HTTP/1.1" 200 OK
2024-10-06 20:59:24 - INFO - {'method': 'GET', 'path': '/', 'duration': 1.006952417003049}

So both device work but cpu seems faster? So anyway this PR might not actually be useful if cpu is actually faster than mps. SAM2 folks say MPS should be faster than cpu so I'm a bit confused. Thought I'd post this up just so folks can see that MPs in theory does work and I might come back to take a look later and see why mps is slower.
Awesome work getting multi-point support implemented!

This takes about 8 seconds. I'm not sure but I think this doesn't include computing image embeddings.

The part that encodes the image simply uploads the canvas to the server, which then saves it as a GeoTIFF. Later, during the decoding process, the TIFF image is used for predictions with HTR prompt inputs.
I think this PR is good to merge, The code works fine, and i start using the choose_device  function to get the info about he gpu or cpu. https://github.com/GeoCompas/samgeo-service/pull/6
from samgeo import SamGeo2, choose_device
device = choose_device()

CPU works in a considerable amount of time; in this case, I tested it on an m5.large machine. The example below takes 25 seconds, which I think is good.

Sweet !
I'm curious why I saw CPU inference run so quickly then but maybe it had cached the embeddings from the previous run I did on the mac m1. 25 seconds makes more sense.


Fix the github action check for commit messages

In #174, we noticed that the checks for docs_build and style in commit message does not work. We might have to rethink on how to setup workflow.

#181 fix this


Error: Storage disk watermark exceeded

I am getting the error below when launching the containers. I was able to start everything fine the very first time, but wanted to delete and recreate the index pattern and started seeing this error message.
flood stage disk watermark [95%] exceeded on [2E-4rEiRS1G_2_oztN_guA][2E-4rEi][/usr/share/elasticsearch/data/nodes/0] free: 952.1mb[1.4%], all indices on this node will marked read-only

Your disk (Elasticsearch data volume) is full as the message suggests. The best you can do is extend it or delete your data.
Closing because the issue is not related to the project itself, but feel free to keep discussing below.


Add text to bottom

I have an iziToast that looks like
iziToast({
//options here
inputs: [... ],
buttons: [... ],
onOpening: function() {... }
});
How can I have some text display after the buttons (in addition to the iziToast message)?

You can only use 'title' and 'message' properties.


Build readthedocs for 4.1 release

Hi, I think the current latest readthedocs build is 4.0.2, could we get a build for 4.1?
https://vcrpy.readthedocs.io/en/latest/installation.html
Thanks!

I'm also interested in getting the readthedocs updated to the current version which at the time of writing is 4.1.1. I see how to build the new docs but it doesn't appear they are open source so I can't submit a PR.
Would love to have it updated, often refer to the CHANGELOG which is now out of date.


AoC countdown

This adds a few features regarding countdowns and notifications.

Role subscriptions (I've already added the role in Discord)

Role notifications

Countdown command

Countdown status

I've added a couple config things but they default to things already in the server so no environment changes are required.

I think the ratelimit for presence changes is pretty low for presence changes (iirc once every 15 seconds, I will check).
Bots cannot make use of rich presence at this time because it is something controlled via a local websocket which bots don't have.


hey can anyone help me why my website is showing 500 internal server error

@Nababratadeb-NITA  was it working before?

@sameer-555 yes I was

@sameer-555 and also it's running on the localhost


useConfigFile error with 2.1.2

I use nuxt.js
I found that v2.1.2 has problem with useConfigFile option, but v2.1.1 not.
ERROR  Failed to compile with 1 errors                                                                 1:55:37 AM

 error  in ./node_modules/bulma/css/bulma.css

Module build failed: ValidationError: PostCSS Loader Invalid Options

options['useConfigFile'] is an invalid additional property

 @ ./node_modules/bulma/css/bulma.css 4:14-118 13:3-17:5 14:22-126
 @ ./.nuxt/App.js
 @ ./.nuxt/index.js
 @ ./.nuxt/client.js
 @ multi webpack-hot-middleware/client?name=client&reload=true&timeout=30000&path=/__webpack_hmr ./.nuxt/client.js

I found additionalProperties has been changed from true to false will be cause of this problem.
When I switch back to true, it's work without problem.

#346

I reverted additionalProperties and released 2.1.3


Updated ServerOAuth.md to cover Twitter. Twitter and Facebook login work locally when the correct environment variables are used.

The local server needs to be run in SSL for both types of login, to work.
The production servers can be HTTP, with a load balancer doing the SSL encryption as before.
For twitter SOCIAL_AUTH_TWITTER_KEY needs to be the same as "API Key" from the "Consumer Keys" setting on the developer.twitter.com website.
SOCIAL_AUTH_TWITTER_SECRET  needs to be the same as  "Secret" from the "Consumer Keys"

👍


How to create a foreign key to constraint multiple columns

Your Question
How to create a foreign key to constraint multiple columns ? As SQL:
CONSTRAINT "college" FOREIGN KEY ("collegeId", "collegeName") REFERENCES "college"."college" ("id", "name") ON DELETE RESTRICT ON UPDATE RESTRICT

define multiple foreign keys with tag foreignKey, references

I have try
gorm:"ForeignKey:(collegeId, collegeName)"
But this is not a correct statement

https://gorm.io/docs/many_to_many.html#Composite-Foreign-Keys

https://gorm.io/docs/many_to_many.html#Composite-Foreign-Keys

Thanks !

2 foreignKey like and one references like this ForeignKey:id,locale;References:idmake a panic panic: runtime error: index out of range [1] with length 1`


Knex migrations for multi schema

Environment
Knex version: 0.15.2
Database + version: MySQL 5.6
OS: Windows 7
I have 2 schemas for my database, for example
product_en
├── item
product_cn
├── item

They exactly same table, but with different language. But how to make knex, make the knex_migrations table to both schema ?

@xyluet If I understand your use-case correctly, you need to execute knex.migration with two different schemaName values (see https://knexjs.org/#Migrations-API);
In case migrations have to be executed somewhat differently based on which schema you are writing for, take a look at this new feature available in knex NEXT release: https://github.com/knex/documentation/pull/135/files
Please don't hesitate to ask if you have any more questions!

@kibertoad Thank you for quick response. But i have more problem.
My DB:
product_en
├── item
├── vendor

product_cn
├── item
├── vendor

sales_en
├── employee

sales_cn
├── employee

and if in the future there is new language, it should
product_th
├── item
├── vendor

sales_th
├── employee

which I need to make 3 migration files
item.v1.js
vendor.v1.js
employee.v1.js

I quite don't understand how to execute knex.migrate with n schemaName, can you give example?

Something along the lines of
const migrationConfigs = [
{
    directory: ['db/commonMigrations', 'db/schema1Migrations'],
    tableName: 'schema1_migrations',
    schemaName: 'schema1',
},

{
    directory: ['db/commonMigrations', 'db/schema2Migrations'],
    tableName: 'schema2_migrations',
    schemaName: 'schema2',
}
]

    for (let config of migrationConfigs) {
      await knex.raw(`CREATE SCHEMA IF NOT EXISTS ${config.schemaName}`)
      await knex.migrate.latest(config)
}

Are you confident about approach you are taking, though? Duplicating entire table structure just for localization purposes sounds weird; or dataset are actually different based on locale?

Yeah, my team want to use that approach :( Duplicating entire table with same datasets.
Anyway thanks @kibertoad , I finally found workaround for my 'awesome' case.
// TODO
// using env for connection
const dbConnection = require(`./knexfile`).development;

const Knex = require(`knex`);

const LANGUAGE = [`en`, `id`];

const SCHEMAS = [`travel`, `car`, `master`];

SCHEMAS.forEach((schema) => {
  const migrationConfigs = [];

  LANGUAGE.forEach((language) => {
    migrationConfigs.push({
      directory: `./migrates/${schema}`,
      schemaName: `${schema}_${language}`,
    });
  });

  migrationConfigs.forEach(async (config) => {
    // Deep copy without reference
    const knexConnection = JSON.parse(JSON.stringify(dbConnection));

    // create decoy connection just to check schema if exists
    const knexSchema = Knex(knexConnection);
    await knexSchema.raw(`CREATE DATABASE IF NOT EXISTS ${config.schemaName}`);
    knexSchema.destroy();

    // create actual connection for migrations
    knexConnection.connection.database = config.schemaName;
    const knex = Knex(knexConnection);

    try {
      await knex.migrate.latest(config);
      // await knex.migrate.rollback(config);
    } catch (error) {
      console.warn(error);
    } finally {
      // Dont forget to destroy
      knex.destroy();
    }
  });
});


Fix typo

Signed-off-by: Vicente Zepeda Mas<EMAIL_ADDRESS>

Can one of the admins verify this patch?


Support image digests in FROM instructions

This is a re-up of https://github.com/HewlettPackard/dockerfile-parser-rs/pull/15, but updates the test code to be compatible with current APIs and also includes some additional validation of the digest part (with tests).

Sorry my IDE introduced a some indenting changes here, which artificially blows up the diff. I'll make sure to remove those before merge.

It'll be pretty useful to have this PR or #15 merged to unblock https://github.com/dprint/dprint-plugin-dockerfile/issues/9.

ping @jonmcquillan

Sorry it took so long to get to looking at this.  Can you bump this with a nop to kick off the github actions I migrated the repo to?  @jayvdb

@jayvdb done


Metrics Endpoint does not show any pod or node data

I am sure this is a configuration issue.
Environment
I am running on kubernetes v1.14.6 (in Azure AKS if that matters)
yaml changes
I installed all 3 yaml files from the deployment directory.  The only change I made from the master branch are in the deployment yaml
under spec/template/spec I added
nodeSelector:
          "beta.kubernetes.io/os": linux

this is required since we have windows node pools.
I also updated the image tag from v0.0.5 to v0.0.6
Output
If I port forward to port 8000 on the pod
kubectl --namespace default port-forward metrics-server-exporter-real-pod-name  8000
Then I see the following output
# HELP process_virtual_memory_bytes Virtual memory size in bytes.
# TYPE process_virtual_memory_bytes gauge
process_virtual_memory_bytes 26980352.0
# HELP process_resident_memory_bytes Resident memory size in bytes.
# TYPE process_resident_memory_bytes gauge
process_resident_memory_bytes 21794816.0
# HELP process_start_time_seconds Start time of the process since unix epoch in seconds.
# TYPE process_start_time_seconds gauge
process_start_time_seconds<PHONE_NUMBER>.09
# HELP process_cpu_seconds_total Total user and system CPU time spent in seconds.
# TYPE process_cpu_seconds_total counter
process_cpu_seconds_total 7.92
# HELP process_open_fds Number of open file descriptors.
# TYPE process_open_fds gauge
process_open_fds 7.0
# HELP process_max_fds Maximum number of open file descriptors.
# TYPE process_max_fds gauge
process_max_fds 1048576.0
# HELP python_info Python platform information
# TYPE python_info gauge
python_info{implementation="CPython",major="3",minor="6",patchlevel="9",version="3.6.9"} 1.0
# HELP kube_metrics_server_response_time Metrics Server API Response Time
# TYPE kube_metrics_server_response_time gauge
kube_metrics_server_response_time{api_url="https://kubernetes.default.svc/metrics.k8s.io"} 0.035198
# HELP kube_metrics_server_nodes_mem Metrics Server Nodes Memory
# TYPE kube_metrics_server_nodes_mem gauge
# HELP kube_metrics_server_nodes_cpu Metrics Server Nodes CPU
# TYPE kube_metrics_server_nodes_cpu gauge
# HELP kube_metrics_server_pods_mem Metrics Server Pods Memory
# TYPE kube_metrics_server_pods_mem gauge
# HELP kube_metrics_server_pods_cpu Metrics Server Pods CPU
# TYPE kube_metrics_server_pods_cpu gauge

I know these values are being scraped because I can python_info in my prometheus server.
There are no messages on the console of the container.
Request
Is there a way to enable debug output so I can troubleshoot the issue?

Do you have any output from the kubectl get --raw "/apis/metrics.k8s.io/v1beta1/nodes" command?
Could you please send the logs from the own metrics-server-exporter container?

@deadc Here is the output from kubectl get --raw "/apis/metrics.k8s.io/v1beta1/nodes"
{
  "kind": "NodeMetricsList",
  "apiVersion": "metrics.k8s.io/v1beta1",
  "metadata": {
    "selfLink": "/apis/metrics.k8s.io/v1beta1/nodes"
  },
  "items": [{
      "metadata": {
        "name": "aks-linux-node-pool-name",
        "selfLink": "/apis/metrics.k8s.io/v1beta1/nodes/aks-linux-node-pool-name",
        "creationTimestamp": "2019-11-07T21:01:07Z"
      },
      "timestamp": "2019-11-07T21:00:00Z",
      "window": "1m0s",
      "usage": {
        "cpu": "607m",
        "memory": "2670668Ki"
      }
    }, {
      "metadata": {
        "name": "aks-win-server",
        "selfLink": "/apis/metrics.k8s.io/v1beta1/nodes/aks-win-server",
        "creationTimestamp": "2019-11-07T21:01:07Z"
      },
      "timestamp": "2019-11-07T21:00:00Z",
      "window": "1m0s",
      "usage": {
        "cpu": "80m",
        "memory": "1115608Ki"
      }
    }
  ]
}

All I have on the console for the metrics-server-exporter is this
The selected container has not logged any messages yet.

Have you tried setting the K8S_ENDPOINTvariable to your API endpoint?
I believe there may be either an API communication or authorization issue with serviceaccount

@deadc I added a pull request (#30) to show the changes I made.  After this is closed, it should be deleted.
In the changes I added a namespace so I could control where the permissions were created.  After that I was able to see metrics in the output of the pod.
One other issue.  I have multiple instances of pods running.  In the metrics view I only see one of the pods.
Here is a sample.
# HELP kube_metrics_server_pods_cpu Metrics Server Pods CPU
# TYPE kube_metrics_server_pods_cpu gauge
kube_metrics_server_pods_cpu{pod_container_name="console-runner",pod_name="console-runner-d7b7c4ff-5zjmx",pod_namespace="real-namespace"} 16.0

Would you expect there to be 1 line per pod?

Yes, it's expected, a metric per pod. About the other issue you have mentioned, it's probably a problem with your metrics-server, if the command kubectl top pods -n <namespace> shows more than one pod, then metrics-server-exporter shoud expose these pods.
Basically what metrics-server-exporter does is collect the data from metrics-server apiserver endpoint (kubectl get --raw "/apis/metrics.k8s.io/v1beta1/nodes") and expose as prometheus metrics.

@deadc thank you for the top pods command that helped me see I was looking at the wrong cluster.  Everything is working perfectly.  Thank you so much for your help.

i am using GKE facing the same issue with no output in dashboard.
getting all value on kubectl top pods
also tried metrics exporter and getting values
# HELP process_virtual_memory_bytes Virtual memory size in bytes.
# TYPE process_virtual_memory_bytes gauge
process_virtual_memory_bytes 25755648.0
# HELP process_resident_memory_bytes Resident memory size in bytes.
# TYPE process_resident_memory_bytes gauge
process_resident_memory_bytes 21860352.0
# HELP process_start_time_seconds Start time of the process since unix epoch in seconds.
# TYPE process_start_time_seconds gauge
process_start_time_seconds<PHONE_NUMBER>.21
# HELP process_cpu_seconds_total Total user and system CPU time spent in seconds.
# TYPE process_cpu_seconds_total counter
process_cpu_seconds_total 1.3699999999999999
# HELP process_open_fds Number of open file descriptors.
# TYPE process_open_fds gauge
process_open_fds 6.0
# HELP process_max_fds Maximum number of open file descriptors.
# TYPE process_max_fds gauge
process_max_fds 1048576.0
# HELP python_info Python platform information
# TYPE python_info gauge
python_info{implementation="CPython",major="3",minor="6",patchlevel="10",version="3.6.10"} 1.0
# HELP kube_metrics_server_response_time Metrics Server API Response Time
# TYPE kube_metrics_server_response_time gauge
kube_metrics_server_response_time{api_url="https://kubernetes.default.svc/metrics.k8s.io"} 0.072846
# HELP kube_metrics_server_nodes_mem Metrics Server Nodes Memory
# TYPE kube_metrics_server_nodes_mem gauge
# HELP kube_metrics_server_nodes_cpu Metrics Server Nodes CPU
# TYPE kube_metrics_server_nodes_cpu gauge
# HELP kube_metrics_server_pods_mem Metrics Server Pods Memory
# TYPE kube_metrics_server_pods_mem gauge
# HELP kube_metrics_server_pods_cpu Metrics Server Pods CPU
# TYPE kube_metrics_server_pods_cpu gauge

not sure what am i missing
in Prometheus, i have used
apiVersion: v1
kind: ConfigMap
metadata:
  name: prometheus-server-conf
  labels:
    name: prometheus-server-conf
  namespace: monitoring
data:
  prometheus.yml: |-
    global:
      scrape_interval: 5s
      evaluation_interval: 5s
    rule_files:
      - "/etc/prometheus-rules/*.rules"
    alerting:
      alertmanagers:
        - scheme: http
          path_prefix: /
          static_configs:
            - targets: ['alertmanager:9093']
    scrape_configs:
    - job_name: 'prometheus'
      scrape_interval: 5s
      static_configs:
        - targets: ['localhost:9090']
    - job_name: 'kubernetes-cadvisor'
      scheme: https
      tls_config:
        ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
        insecure_skip_verify: true
      bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
      kubernetes_sd_configs:
      - role: node
      relabel_configs:
      - action: labelmap
        regex: __meta_kubernetes_node_label_(.+)
      - target_label: __address__
        replacement: kubernetes.default.svc.cluster.local:443
      - source_labels: [__meta_kubernetes_node_name]
        regex: (.+)
        target_label: __metrics_path__
        replacement: /api/v1/nodes/${1}/proxy/metrics/cadvisor
    - job_name: 'kubernetes-kube-state'
      kubernetes_sd_configs:
      - role: pod
      relabel_configs:
      - action: labelmap
        regex: __meta_kubernetes_pod_label_(.+)
      - source_labels: [__meta_kubernetes_namespace]
        action: replace
        target_label: kubernetes_namespace
      - source_labels: [__meta_kubernetes_pod_name]
        action: replace
        target_label: kubernetes_pod_name
      - source_labels: [__meta_kubernetes_pod_label_grafanak8sapp]
        regex: .*true.*
        action: keep
      - source_labels: ['__meta_kubernetes_pod_label_daemon', '__meta_kubernetes_pod_node_name']
        regex: 'node-exporter;(.*)'
        action: replace
        target_label: nodename
    - job_name: 'kubernetes-kubelet'
      scheme: https
      tls_config:
        ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
        insecure_skip_verify: true
      bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
      kubernetes_sd_configs:
      - role: node
      relabel_configs:
      - action: labelmap
        regex: __meta_kubernetes_node_label_(.+)
      - target_label: __address__
        replacement: kubernetes.default.svc.cluster.local:443
      - source_labels: [__meta_kubernetes_node_name]
        regex: (.+)
        target_label: __metrics_path__
        replacement: /api/v1/nodes/${1}/proxy/metrics
    - job_name: 'kubernetes-service-endpoints'
      kubernetes_sd_configs:
      - role: endpoints
      relabel_configs:
      - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scrape]
        action: keep
        regex: true
      - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scheme]
        action: replace
        target_label: __scheme__
        regex: (https?)
      - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_path]
        action: replace
        target_label: __metrics_path__
        regex: (.+)
      - source_labels: [__address__, __meta_kubernetes_service_annotation_prometheus_io_port]
        action: replace
        target_label: __address__
        regex: ([^:]+)(?::\d+)?;(\d+)
        replacement: $1:$2
      - action: labelmap
        regex: __meta_kubernetes_service_label_(.+)
      - source_labels: [__meta_kubernetes_namespace]
        action: replace
        target_label: kubernetes_namespace
      - source_labels: [__meta_kubernetes_service_name]
        action: replace
        target_label: kubernetes_name
      - source_labels: [__meta_kubernetes_pod_name]
        action: replace
        target_label: kubernetes_pod_name
      - source_labels: [__meta_kubernetes_pod_name]
        action: replace
        target_label: pod


Allow creating Bytes from any AsRef<[u8]> by copying or taking ownership of it

See individual commit messages

Ping and 👍

Ping whom? @GuillaumeGomez ?

Yes, me. :)
Thanks!


Mesh fetching fails for some combinations

Using siibra version 1.0a05, when trying to fetch one of the cortical layer meshes, I fail to do so from the map object:
import siibra
m = siibra.get_map('cortical layers', space='bigbrain')
# choosing the mesh provider explicitly
p = m.volumes[0]._providers['neuroglancer/precompmesh']
# fetch from mesh provider - works
p.fetch(fragment='left', label='1')
# Have the initial ojbect select the provider - fails
m.fetch(format='mesh', fragment='left', label='1')

The response is:
File ~/src/siibra-python/siibra/volumes/parcellationmap.py:422, in Map.fetch(self, region_or_index, index, region, **kwargs)
    418     raise IndexError(
    419         f"{self} provides {len(self)} mapped volumes, but #{mapindex.volume} was requested."
    420     )
    421 try:
--> 422     result = self.volumes[mapindex.volume or 0].fetch(
    423         fragment=mapindex.fragment, label=mapindex.label, **kwargs
    424     )
    425 except requests.SiibraHttpRequestError as e:
    426     print(str(e))

TypeError: siibra.volumes.volume.Volume.fetch() got multiple values for keyword argument 'label'

The map.fetch() does not expose label kwarg by design (not sure exact version but during refactoring for 0.4a). This has to be supplied via a MapIndex or a region so that MapIndex can be decoded internally.
This PR recognizes the potential legacy users and works to reintroduce the ability to use label as kwarg. But I am not sure this should be the case.

Maybe it would help to properly document the current behavior.
The above example is a good guide for this, since I wasn't able to infer any valid fetching call without digging under the hood.
Can we have fetch() outputting valid variants when failing?
Seeing a table of what could be fetched from the map object would be helpful, in terms of type, fragment, ...

IMO, the docstring already clearly states the kwargs.
import siibra
from siibra.commons import MapIndex
m = siibra.get_map('cortical layers', space='bigbrain')
m.fetch(MapIndex(fragment='left', label=1), format='mesh')

This is the current usage if one would like to use labels or volumes, ie to specify the MapIndex.

The map.fetch() does not expose label kwarg by design (not sure exact version but during refactoring for 0.4a). This has to be supplied via a MapIndex or a region so that MapIndex can be decoded internally. This PR recognizes the potential legacy users and works to reintroduce the ability to use label as kwarg. But I am not sure this should be the case.

I think we need not handle 'label' explicitly. I would expect any kwargs are passed through to the receipient (here: neuroglancer pre comp mesh provider) if unused by the caller (here: Map).
I will check though if this is unnecessary when passing a region, and report here. I agree that users typically do not deal with the label but with region names.

The map.fetch() does not expose label kwarg by design (not sure exact version but during refactoring for 0.4a). This has to be supplied via a MapIndex or a region so that MapIndex can be decoded internally. This PR recognizes the potential legacy users and works to reintroduce the ability to use label as kwarg. But I am not sure this should be the case.

I think we need not handle 'label' explicitly. I would expect any kwargs are passed through to the receipient (here: neuroglancer pre comp mesh provider) if unused by the caller (here: Map).
I will check though if this is unnecessary when passing a region, and report here. I agree that users typically do not deal with the label but with region names.

Before investing more time, have you seen the PR I mentioned? I think I have a solution already.

So, the following does work:
import siibra
layer maps = siibra.get_map('cortical layers', space='bigbrain')
l4mesh = layermaps.fetch(region="4 left", format='mesh')

This is probably the intended use.


winget export with relative paths does not work

Brief description of your issue
"winget export -o ~/desktop/installedpackages.json" does not create a file while
"winget export -o C:\Users$InsertUsernameHere\Desktop\installedpackages.json" does work
It would be nice if that would be fixed to make scripts easier
Thanks
Steps to reproduce
winget export -o ~/desktop/installedpackages.json
Expected behavior
Creates export file in relative path sucessfully
Actual behavior
the process runs as normal but creates no export file
Environment
winget --info

Windows.Desktop v10.0.19044.1466
Microsoft.DesktopAppInstaller v1.16.13405.0

winget --version

v1.1.13405

winget export ../desktop/Folder/export.json worked for me

winget export ../desktop/Folder/export.json

That works for me too thx!
But Im still wondering why "winget export -o ~/desktop/installedpackages.json" does not work...
It should also work with "~" right?

It's .. for Windows and ~ for Unix/Linux distributions.

It's .. for Windows and ~ for Unix/Linux distributions.

Ok sorry then for the noob question...
I tried "cd ~/desktop" in powershell and it worked... So I thought it should also work for this tool...

I converted this "bug" into a "Feature". We may be able to make this work. I'm all about not having to "fight" muscle memory. We will have to take a look and consider any implications with how this might create problems elsewhere, but it might help reduce friction.

I tried "cd ~/desktop" in powershell and it worked... So I thought it should also work for this tool...

Ah, I thought you were running it in Command Prompt.

[Policy] Command-Export


When cluster creation fails, the web UI should allow retrying

When the attempt to create a cluster fails (e. g. because of a timeout), the user is redirected to a different page and we show a flash message.

This means that in order to retry creation, the user has navigate to the form again and re-enter all data.
Ideally we would keep the form with all input open in this case and allow submission once more.
The same should apply for node pools.

Hi @marians,
I have 2 suggestions:

Changing cluster creation to 20 s instead
Then add log output (if possible) to see where the time is being consumed for cluster creation for it to exceed 10 s ?

What do you think?

Waiting for 10 seconds for the result of a form submission is already far above our general goal. Normally the API should respond in less than a second and in most cases it does. Increasing the timeout to 20 sec will likely only result in longer wait times for the end user before the transaction fails.
In the case of a timeout we don't get any response from the API, so we have no information regarding why the request took so long to process.
UX wise the best I can think of is to offer a re-try as I wrote above:

Ideally we would keep the form with all input open in this case and allow submission once more.

Along with this we should show a message saying that the request timed out and that re-trying might work. If that doesn't help, users should reach out to our support.
Also we should check whether we can send a specific error to Sentry to record details on when and where this happens.

To check: Is it a random or happens always because some valid reason.


Fix indentention in ceph_orch_apply examples

The indention in the ceph_orch_apply examples is wrong, leading to confusion when one uses this module for the first time.

@tobiasmcnulty thanks for this patch 🙂

@tobiasmcnulty could you add a signoff to your commit please? thanks!

@guits Done! Thanks for the quick review. 😊


Errors are not being displayed correctly when comparing field values

At the moment it seems that errors are not being displayed appropriately all the time. This can be seen when using the comparison validation.
This can be seen on the tutorial page of the demo site in the compare validation section. Warnings are only being displayed on focus and do not persist.

I've made some updates to improve the stability of warning messages but won't close this yet until I'm sure that the problems have been resolved.


🐞 [Bug]: Gateway contracts and Network contracts both are listed in the Node contracts table

Is there an existing issue for this?

[X] I have searched the existing issues

which package/s did you face the problem with?
Dashboard
What happened?
The contracts list table lists incorrect contracts with incorrect types Gateway and Network while it should list Node contracts only.
I think it might be a proxy issue since they are the same in the response that was returned from the grid proxy
Steps To Reproduce

Go to the Dashboard
Deploy a micro VM
Deploy a domain for this VM
Go to the contracts list and watch the node contracts table

which network/s did you face the problem on?
Dev
version
4829e02
Twin ID/s
143
Node ID/s
No response
Farm ID/s
No response
Contract ID/s
No response
Relevant screenshots/screen records

Relevant log output
N/A

node contract is for solutions, gateway or network so this isn't an issue


Feature request: Make project groupId in project creation form configurable

Similar requests

[X] I have searched and found no existing similar requests

How are you using Studio?
Legend Studio, Docker images (e.g. finos/legend-studio)
What problems are you trying to solve?
The "groupId" field in the project creation form has a hardcoded default value.
See  ./packages/legend-application-studio/src/components/workspace-setup/ProjectCreateModal.tsx
          <input
            className="panel__content__form__section__input"
            spellCheck={false}
            placeholder="org.finos.legend.*"
            value={groupId}
            onChange={changeGroupId}
          />

While "org.finos.legend" is a reasonable default for FINOS-hosted projects, it is not a reasonable default for projects not hosted by FINOS.
Describe the solution you would like to see implemented
Can the default groupId value be sourced from the Studio server/app configuration instead of being hardcoded in code ?
Describe alternatives you have considered
No response
Documentation, Design, Adoption, Migration Strategy
If the groupId can be sourced from the configuration, we can ship a configuration with a default value such as "com.demo.legend". Also, the configuration files that ship with the Docker container can be parameterized to allow users to inject this when running the Studio container.
Contribution

[ ] I would like to work on this feature

Thanks! This makes sense, we'll take care of it.
Also, re-formatted the description.


VUE keep-alive errors onDeactivated

"apexcharts": "^3.35.5"
Steps to Reproduce

Use apexcharts in a component with keep-alive
declare height="100%"
change page so component will deactivate
see the error

Also, errors are present on deactivated component
if i use vertical here

Expected Behavior
no errors

Did not provide the required reproduction

@brianlagunas Please reopen
https://github.com/stephenjason89/apexchart
Here's the reproduction
Please don't use codesandbox and manually clone it
Follow readme
Thank you

Please refer to the new issue https://github.com/apexcharts/apexcharts.js/issues/3402


nsynth_generate fails with Abseil error.

Followed audio generation instructions and everything went fine until I got to executing nsynth_generate which, with or without arguments, fails with:
andrew@blast:/data/Liles/nsynth/open-nsynth-super/audio/workdir$ nsynth_generate
WARNING:tensorflow:From /usr/local/lib/python2.7/dist-packages/magenta/models/nsynth/wavenet/masked.py:116: init (from tensorflow.python.ops.init_ops) is deprecated and will be removed in a future version.
Instructions for updating:
Use tf.initializers.variance_scaling instead with distribution=uniform to get equivalent behavior.
Traceback (most recent call last):
File "/usr/local/bin/nsynth_generate", line 7, in
from magenta.models.nsynth.wavenet.nsynth_generate import console_entry_point
File "/usr/local/lib/python2.7/dist-packages/magenta/models/nsynth/wavenet/nsynth_generate.py", line 28, in
tf.app.flags.DEFINE_string("npy_only", False, "If True, use only .npy files.")
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/platform/flags.py", line 58, in wrapper
return original_function(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/absl/flags/_defines.py", line 241, in DEFINE_string
DEFINE(parser, name, default, help, flag_values, serializer, **args)
File "/usr/local/lib/python2.7/dist-packages/absl/flags/_defines.py", line 81, in DEFINE
DEFINE_flag(_flag.Flag(parser, serializer, name, default, help, **args),
File "/usr/local/lib/python2.7/dist-packages/absl/flags/_flag.py", line 107, in init
self._set_default(default)
File "/usr/local/lib/python2.7/dist-packages/absl/flags/_flag.py", line 196, in _set_default
self.default = self._parse(value)
File "/usr/local/lib/python2.7/dist-packages/absl/flags/_flag.py", line 169, in _parse
'flag --%s=%s: %s' % (self.name, argument, e))
absl.flags._exceptions.IllegalFlagValueError: flag --npy_only=False: flag value must be a string, found "<type 'bool'>"
Any suggestions as to a remedy would be much appreciated!

@jesseengel any thoughts on this?

@nsynthsuper ?

Sorry it took so long to respond. I just tested with head of magenta and nsynth_generate seems to work fine.
I think the problem is that directions for setting up the environment in https://github.com/googlecreativelab/open-nsynth-super/tree/master/audio are old now. It's actually pulling from a stale branch of my personal repo.
It should be sufficient to just follow the install istructions at https://github.com/tensorflow/magenta and do pip install magenta-gpu or pip install magenta and then pip install tensorflow-gpu.
@nsynthsuper, want to verify and update the docs?

Many thanks, this did the trick!


feat: sort list of scope dropdown values

Is it possible to sort the list?

Yes, sure! Would you have the time to open a pull request for this feature?

how can i delete the dropdown values ? thx

see this source code : https://github.com/MobileTribe/commit-template-idea-plugin/blob/master/src/com/leroymerlin/commit/GitLogQuery.java , use "git log cmd"  to show dropdown values ,so it can not delete。


travis: add Eloquent CI build

As per subject.
This is a test.

Thanks for the PR @gavanderhoorn 👍


Produce images for additional channels

Currently this repo only produces images for the preview channel of CLI.  It should also produce images for the futures channel, and potentially other channels or build labels of CLI, such as latest vs. LKG.  This work also entails triggering the DockerHub builds from CLI builds as appropriate.

The .NET Core CLI channel concept has been redefined since this issue was created.  The current plan for the CLI is that channels will be created as there is need for them; there are no static channels like Preview and Future.  At this point, rel/1.0.0 is the only channel that makes sense for this repo to track.  We can track additional CLI channels later if it makes sense to do so then.


HTML

#HTML
##User Story
As a bootcamp student
I want all the prework notes to be structured on website.
So that I can easily find out all information at one place.
##Acceptance Criteria
Given a prework study guide website
When I visit a website in my browser
Then I can see four tab titled HTML, CSS, Git and JavaScript with associated notes listed

pushed code for HTML


support translation hashes with numeric keys in Simple backend

Currently, loading a translation hash with a Numeric key (e.g., store_translations(:en, 1 => 'foo'); I18n.t(1)) does not work using the Simple backend, since the implementation's call to deep_symbolize_keys (to normalize all translation keys as Symbols) does not affect Numeric types (Numeric#to_sym is not implemented). This PR additionally calls deep_stringify_keys to help normalize key types implementing to_s.
This also brings the behavior of KeyValue and Simple backends slightly closer together, since numeric keys are already supported by the KeyValue backend.
I don't expect much of a performance hit from the added deep_stringify_keys operation. Surprisingly in tests with my use-case, I saw load times with this PR change actually improve by 25% (from 60 seconds to 45 seconds), possibly since the call to deep_symbolize_keys was no longer hitting the NoMethodError exception/ rescue nil code path for Numeric keys in my translation data.

Hi @wjordan. Thank you for the pull request. Could you please give some more context around how you're using this in your application? Most often, people will use numbers and pair them up with some "context". A price, a label... something else:
I18n.t(:price, amount: 10) => $10 / £10
I18n.t(:unread_messages, count: 2) => 2 unread messages  / 2 mensajes no leídos

Could you show me the context of how you're using this?

Could you please give some more context around how you're using this in your application?

Sure- in my case, numeric keys are being used in a YAML i18n source file for localizing collections of 'slides' in our application, which are indexed by slide number. See slides.en.yml:
en:
  slides:
    maze_intro:
      1:
        image: 'notes/hoc1_1.jpg'
        text: "Welcome to your first hour of code! Let's dive right into your first taste of programming."
      2:
        image: 'notes/hoc1_2.jpg'
        text: "We'll be using Blockly, a visual programming language where you drag and drop blocks to write code."
      3:
        image: 'notes/hoc1_3.jpg'
        text: "Most code is typed, but Blockly is visual. Each blocks corresponds to a line of \"real\" code."
[...]

Without this PR, using the Simple backend I18n.t('slides.maze_intro.1.text') results in a missing translation, the workaround I18n.t('slides.maze_intro')[1][:text] is needed in order to lookup the localized string.
We've considered converting our source YAML to explicitly cast all integer keys as strings ("1": ), but I thought applying this change upstream might be more concise and helpful to others.
This is different from the use of interpolation or pluralization features to inject numbers into the localized-string value, as in your examples.

Heads up: This PR caused a regression -- see #443.
It will be good to see if we can mitigate this regression by making both the new / old behaviours work. If we cannot, I will be reverting this PR.


Fix Quick Example

fixed in https://github.com/showdownjs/showdown/commit/b63f602fff8dcabf4403f1431265a6a06bdb20f0

Did you just steal my work?

Did you just steal my work?

No, there was already a pull request similar to yours.
https://github.com/showdownjs/showdown/pull/139
2015-04-22 15:22 GMT+01:00 Adam Beck<EMAIL_ADDRESS>
Did you just steal my work?
—
Reply to this email directly or view it on GitHub
https://github.com/showdownjs/showdown/pull/144#issuecomment-95201955.

Which is why I deleted my comment before you commented. Sorry for making a mistake.

No prob mate
Sent from my iPhone

On 23/04/2015, at 01:22, Adam Beck<EMAIL_ADDRESS>wrote:
Which is why I deleted my comment before you commented. Sorry for making a mistake.
—
Reply to this email directly or view it on GitHub.


Add CI job URL to scheduled product settings

See https://progress.opensuse.org/issues/109512

There was no good starting point for tests so I've just tested it manually so far by invoking CI_JOB_URL=https://martchus.no-ip.biz ./test.py:
#!/usr/bin/python3

import openqabot.openqa
import urllib

i = openqabot.openqa.openQAInterface(instance=urllib.parse.urlparse('http://localhost:9526'))
i.post_job({"ISO": "test", "DISTRI": "foo", "VERSION": "42", "FLAVOR": "any", "ARCH": "x86_64"})

Closing in favor of https://github.com/openSUSE/qem-bot/pull/13 which seems more comprehensive.


Add basic CI (build + tests) for PR on master using Composite action.

Some PR to see what looks like failures:

https://github.com/sbernard31/leshan/pull/8
https://github.com/sbernard31/leshan/pull/9


Recover from windows failures

This attempts to make noble on Windows more stable:

Sometimes when noble starts bluetooth dongle is not detected, in this case attempt to reset dongle
Emit event if dongle not inserted or invalid dongle inserted

Closing as this depends on https://github.com/sandeepmistry/node-bluetooth-hci-socket/pull/14 which has been closed by @mhle.


[bug] No autogenerated message displayed for new Issue

Based on earlier addition to bot's functionality, the general expectation is that for a new Issue, bot should display a message for the user to ensure the issue created is not for the "discussion-to".
Unfortunately, I don't see any such message for the Issue 4500

Someone might want to look into it.

I was assuming that the "bot-message" is displayed for every new issues but recently learned that is only for new users.
It would be nice to have the bot-message for every new issue, at least for a period of time until we streamline the process.
Bot message - Since this is your first issue, we kindly remind you to check out EIP-1 for guidance. If this issue was created as a “discussions-to” for an EIP or to discuss an idea for an EIP, please close it and create a thread at Fellowship of Ethereum Magicians.

If we switch to having the bot comment on every new issue then we should remove the bit at the start that says "Since this is your first issue, ".

If this issue was created as a “discussions-to” for an EIP or to discuss an idea for an EIP, please close it and create a thread at Fellowship of Ethereum Magicians.

@MicahZoltu @poojaranjan what do you all feel is the best next step here?

I think we decided in the meeting that the bot should comment on every issue.  If it does, I still recommend the text in my previous comment.  Does anyone remember if this was decided or not? @poojaranjan @lightclient?

Okay, I'll add it. It will be easy to change if it's not desirable

I am fine with suggested changes by @MicahZoltu. I think it make sense to remove the first issue statement.

Does anyone remember if this was decided or not?

I have to revisit the decision, but I suppose adding the comment to every new issue created, will help users to read and follow.

Yes, the bot-comment should be added to every issue, be it from a first-time-issue-creator or users who already created it before.
The eip-1, itself, can go under updates that both might not be aware of.
Suggestion for bot-message:

We kindly remind you to check out EIP-1 for guidance.
If this issue was created as a “discussions-to” for an EIP or to discuss an idea for an EIP, please close it and create a thread at Fellowship of Ethereum Magicians.

Also, should we provide the link to Fellowship of Ethereum Magicians?

Yes, the Ethereum magicians reference should be a link.

This was implemented via https://github.com/ethereum/EIPs/commit/4031ae6321217d17df3748ac1df43f4a5377b7ba


Add Kiwi IRC

Kiwi IRC is a modern IRC Client, that supports picture embedding, automatic conversation of huge text walls into pastebin and many more features.
This link replaces the previous link and directs directly to #haskell-beginners
You are welcome ^-^

I'm not sure I want to direct people to a web client not operated by the IRC network. Apart from that, if I do anything to the IRC recommendations here it will probably be to change the recommendation Libera as it seems like most people moved over.

That commit was from September 2020, so yes, now is Libera recommended
Kiwi is a long trusted software, and you can sef host it
Idk what you mean with 'the IRC network'

The official Libera client is Kiwi, actually:
web.libera.chat.
So you can use this link: web.libera.chat/#haskell-beginners


Several quicken spell issues

If a sorcerer character is hasted, after doing the first action to cast a cantrip, I cannot use sorcery points to bonus action quicken a spell.
I'm just not able to quicken a spell in general after my action,

After quickening a cantrip before using my action, I cannot then use my main action to cast a leveled spell (which I think I should be able to according to the rules).

After quickening a cantrip (only tried booming blade), I can then repeat the quicken metamagic for another cantrip infinitely (well, until I ran out of sorcery points at least.) So I got 3 bonus actions in one round.

That's how the game works in vanilla. If it cannot detect the caster to be able to cast a spell, it cannot "edit" a spell to make it work with metamagic. I suggest casting a quickened spell immediately on turn start if planning to quicken anything.

That's according to RAW rules. If you cast any spell, be it cantrip or leveled using your bonus action, you cannot cast anything except cantrip with your main action.

"A spell cast with a bonus action is especially swift. You must use a bonus action on your turn to cast the spell, provided that you haven't already taken a bonus action this turn. You can't cast another spell during the same turn, except for a cantrip with a casting time of 1 action."

Definitely a bug. Please provide a save with your sorcerer.

Smiteless paladin.zip
Here is the save. Playing Shadows over Brightreach. In one ruond, Ludriq can bonus action booming blade, bonus action booming blade, bonus action booming blade, action booming blade. Neat.
Also, worse than that, I can't smite with the Paladin. I reset the chosen spells when multiclassing and maybe that was it (since smite may be an invisible selected spell).  But then I respec'd the character and the smite is still not showing up (either the crit toggle or the option to smite when I hit). Not sure what is up. Do I need to open a new issue?

Edit 2: There is also a sorlock in that save and I can't quicken an eldritch blast infinitely. So it's not a general quickened cantrip issue. I haven't tried other cantrips besides these two.

the issue was specifically with "blade" cantrips - ones that make you attack with your weapon. Although, not 100% sure why only quickened cantrip skipped action spending


Docs/image updates

Contributions: We are not currently taking public contributions - see our contributions policy. However, we are accepting issues and we do want your feedback.

Description
Updates of images and typos
Primary reviewers
@Vatyx @anne-edwards

I think there are a few more toolbar snapshots right?


Placement of objects is offset from the cursor

When you go to place things the object is often offset from your cursors actual position, and the tile select modes select tiles that your cursor is not over.
https://www.youtube.com/watch?v=I-zs6gEmZDw displays the issue.
I THINK it's from your characters position, with the offset shifting based on my dudes position within a tile.

Fixed by #146


Remove duplicate demo link in doc viewer

Tested locally (after running polymer analyze vaadin-* > analysis.json) that this change gets rid of the extra "demo" link in the doc viewer. This will probably also fix it for webcomponents.org
Should fix #43 when there is a new version in webcomponents.org.

This change is

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

My testing showed that if there is no @demo annotation, there are no demo links. And if there is anything after if on the same line, the demo link is duplicated (and the link title and URL of one or both links change in very weird manner). If the line only has @demo then there is only one link (as wanted) and the link works correctly, but there doesn't seem to be any way in this case to modify the link text (it will be lowercase "demo") other than directly editing analysis.json after running polymer analyze vaadin-* > analysis.json.
I think this weird behaviour of duplicate demo link and how they behave when there's anything after the @demo on the line is a bug in polymer analyzer and due to this being a special case of "pseudo element" documentation instead of documenting a real custom element (since vaadin-icons.html does not define a custom element).
The same issue seems to affect the Polymer 2 version of iron-icon here: https://www.webcomponents.org/element/PolymerElements/iron-icons


Broken link in documentation

Describe the bug
The front page of ORD docs has a broken YouTube video at the bottom.
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots

Desktop (please complete the following information):

OS: Windows 11
Browser: Chrome (126.0.6478.128), Edge (126.0.2592.102) and Firefox (126.0.1)

Additional context
I expected to find the code for this page in https://github.com/open-reaction-database/ord-schema/blob/52b7da36b22faaa6e15f20173962e127a62e21b9/docs/index.rst but the YouTube link does not appear to be there.

The video is at https://youtu.be/UyHVwJUBDIk but set to private. Could this be in your YouTube account @skearnes @connorcoley?

I think this was the RDKit UGM video; maybe @greglandrum made it private recently?

I thought it may have been one of these videos https://www.youtube.com/@openreactiondatabase9685 which are publicly available, but the settings may have changed to prevent embedding.
Do you know where the link is contained in the docs code?  I was expecting to see it in index.rst but this looks like it has everything but the embedded video. If I can find it I will make a temporary fix by removing the video or redirecting it.

I think this was the RDKit UGM video; maybe @greglandrum made it private recently

To make presenters more comfortable and since the UGM videos generally don't age well, we "take them down" (i.e. make them private) after a couple of years.
@skearnes  if you and @connorcoley want this one public again, I'm happy to change its visibility

@greglandrum I think making that public again would be great; the concept overview is still very useful. Thanks!

@greglandrum I think making that public again would be great; the concept overview is still very useful. Thanks!

Done.

Note to self: The link to the video is contained here .

The video is still showing as private. #745 removes this YouTube link and adds a link to the ORD YouTube channel instead.

@greglandrum I think making that public again would be great; the concept overview is still very useful. Thanks!

Done.

@greglandrum the video is still showing as private? https://www.youtube-nocookie.com/embed/UyHVwJUBDIk?start=3

@greglandrum I think making that public again would be great; the concept overview is still very useful. Thanks!

Done.

@greglandrum the video is still showing as private? https://www.youtube-nocookie.com/embed/UyHVwJUBDIk?start=3

Weird. I'm not sure whaI did wrong.
It's actually public now and your link above works.

@greglandrum thanks!

Thanks @greglandrum. I have now created PR #749 to re-embed the video link in the docs front page. This PR also updates your affiliation in the advisory board list.
Closing issue as resolved.

Thanks for updating my affiliation @bdeadman


Add line element to addpoint events

For when one want to operate on the trk element (like its name).

Thanks!


Add cdata option for unescaped text nodes when building

USAGE:
    builder = new xml2js.Builder cdata: true

Will wrap all text nodes in <![CDATA[ and ]]>, as well as escaping any ]]> that are contained within the node's text.
Added new test cases to show this change is working:
  'test cdata text nodes': (test) ->
    expected = """
      <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
      <xml>
        <MsgId><![CDATA[& <<]]></MsgId>
      </xml>

    """
    opts = cdata: true
    builder = new xml2js.Builder opts
    obj = {"xml":{"MsgId":["& <<"]}}
    actual = builder.buildObject obj
    diffeq expected, actual
    test.finish()

  'test cdata text nodes with escaped end sequence': (test) ->
    expected = """
      <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
      <xml>
        <MsgId><![CDATA[& <<]]]]><![CDATA[>]]></MsgId>
      </xml>

    """
    opts = cdata: true
    builder = new xml2js.Builder opts
    obj = {"xml":{"MsgId":["& <<]]>"]}}
    actual = builder.buildObject obj
    diffeq expected, actual
    test.finish()

That is a very nice pull request and I would consider merging it, but I don't understand what this could be useful for. It generates invalid XML that cannot be parsed.
Wouldn't it make more sense to wrap the raw data in CDATA sections, to keep the XML well-formed?

Alright, I'm going to come clean; I have no idea how XML works (anymore - I've replaced that knowledge with json), so I'm not sure what is/isn't valid XML.
The usecase I had was being able to use a raw & without it becoming & - the tool consuming the generated XML didn't complain about an unescaped &, so I was happy with the results (hence the PR).
I'll investigate what CDATA is, and post back here with my findings :)

@Leonidas-from-XIV I've successfully converted it to create CDATA elements, and squashed the commit. Let me know if there's anything else I can fix up before the PR is merged :)

I guess this PR also supersedes #148 & #134.

I wouldn't say so, they seem to be about parsing, not generating CDATA.

Looks quite good, if you could address the issues, it'll land soon.

@Leonidas-from-XIV How's the PR looking now? I think I got everything you mentioned :)

Looks great, thank you! I've just merged it and will release 0.4.5 soon.

Unfortunately this doesn't work as expected against non-array properties.
@jesstelford are you able to take another look, and advise how to move forward here?
Ping #178