Hyperlinks in source code being ignored

These are a requirement in ISO-10303: both xref and eref inside of sourcecode need to be supported. They are not supported currently at all, even in the grammar, and are stripped from rendering.
I know why I did not want to support them (for years), and processing both them and Rouge code highlighting is going to be nasty; but the processing model for Rouge tells us how to deal with them: store their locations in the source code, and then reinsert them one by one at the right spot.
This is a project I would love to delegate. It involves generalising the code in lib/isodoc/presentation_function/sourcecode.rb , from stripping and then restoring callouts and annotations, to also stripping and then restoring xref and eref opening and closing tags. The catch is, callout and annotations only record the line location, and that is enough to restore the markup: callout only appears at the end of a line, annotations are dumped in order after the source code.
For eref and xref, the obvious thing that can be done is record (a) the line number, (b) the string being hyperlinked; (c) if there are multiple instances of that string, the iteration of the string to hyperlink.
Markup is removed and then added back in to allow rouge to do syntax highlighting (which means adding  tags to the lines); so tracking byte locations is not going to help us. erefs and xrefs will possibly conflict with spans, and that will mean (a) recursing to add hyperlinks within each span separately, and (b) doing something clever if the hyperlinked text spans across spans.
So, we get:
<sourcecode>
<xref target="abc">begin
  print</xref> "hello"
end
</sourcecode>

We strip the markup so we can do syntax highlighting:
<sourcecode>
begin
  print "hello"
end
</sourcecode>

We do syntax highlighting using Rouge:
<sourcecode>
begin
  print "hello"
end
</sourcecode>

And then, SOMEHOW, we work out the right place to reinsert the xref and eref tags, dodging the spans hierarchy:
<sourcecode>
<xref target="abc">begin</xref>
  <xref target="abc">print</xref> "hello"
end
</sourcecode>

We can't guarantee that the hyperlinked text are complete space-delimited words; but if that would help, we could require that. ISO-10303 should be ok with that. We could then still use regex matches for text, one word at a time.

https://github.com/metanorma/annotated-express/issues/124

It is true that (a) ISO-10303 is unlikely to hyperlink anything more than single words, and (b) ISO-10303 may not use code highlighting at all for Express. But a solution that does these both would be highly desirable as future-proofing this: the ability to hyperlink arbitrary code to code definitions is going to be a selling point of Metanorma strategically.

This is a separate project by itself and requires a lot more specification.
This is actually a separate program to structure and annotate source code. Just like how VSCode handles source code highlighting. Technically, it's a document model for source code.

But a solution that does these both would be highly desirable as future-proofing this: the ability to hyperlink arbitrary code to code definitions is going to be a selling point of Metanorma strategically.

It looks like we should integrate internal Rouge code directly instead of parsing it ourselves?
i.e. a Metanorma class that binds to a Rouge class?

This may not be urgent specifically for ISO 10303, because there doesn't seem to be any code highlighting going on currently with Express (because there is no code highlighter currently defined for it, presumably.) It does need to be done though, and I wouldn't rule out that a code highlighter for Express is coming.


Explicit push repository url

In one of the npm modules I maintain I use a read-only https url for my origin, and push my changes to my own fork.
I do this so I go through the same pull-request flow that any other contributor goes through and I don't accidentally push code that hasn't already went through CI testing directly to the main repository.
Rather than having the release tags pushed to my fork, failing when it tries to push to the read-only origin, or making my origin writable and accidentally pushing commits to it.
It would be nice to have a .release.json option that would make release-it push tags directly to the SSH push url for the main repository.

That makes sense. So if I understand correctly, you're asking for something like a src.repooption that overrides the remote push url (i.e. the result of git config --get remote.origin.url) into e.g. the git url of your fork?

Not exactly, that sort of implies that the actual config changing.
It's more like an option that makes release-it use git push <repo-url> ... instead of git push origin ....

OK I think I meant the same but explained it not too well. Should be easy to implement.

Released as v2.2.0, please let me know if it works for you.


⚠ SolarOscp has degraded performance

In 71c4a30, SolarOscp ($SOLAROSCP_URL) experienced degraded performance:

HTTP code: 200
Response time: 366 ms

Resolved: SolarOscp performance has improved in 09f9921 after 9 minutes.


Visually emphasize "Active events"

Would like to have an option of having active events show in a different color and/or size text.

Do you call "Current" events (Now is between their Start and End times) "Active"?
BTW in the upcoming 1.9 release we will have custom color for Past events.

Yes. Anytime the current time is between items start and end time that item could be highlighted by a different font color or in bold text.
On August 4, 2015 11:58:23 AM CDT, Yuri Volkov<EMAIL_ADDRESS>wrote:

Do you call "Current" events (Now is between their Start and End times)
"Active"?
BTW in the upcoming 1.9 release we will have custom color for Past
events.

Reply to this email directly or view it on GitHub:
https://github.com/plusonelabs/calendar-widget/issues/178#issuecomment-127675674

In v.3.0.5 (currently in Beta, see #320) different text shadings implemented for past, today and future. I.e. for Today you may change now not only background color, but text color also.


init_signals

set up global variable
figure out how 'catching' signals work (ignore signals not asked for in subject)

Done via branch 62 without the new memory leaks when expanding variables (I guess this was because '$?' assignment was changed or the way errno / data.exit_status were updated)


[FT] created script to create and update wcosa projects

Don't mind the commits, I have messed up my rebasing. This commit now allows for creating a project and updating it. Other files have been updated to fix bugs that were encountered while doing some tests

Fixed the commit name

@dhillondeep add *.pyc to the gitignore

I did not realize they were there. I have .gitignored them tho. Now I removed them

I'm going to test things out. For the record, I'll be using Python 2.7 and will make note of anything weird.

The functionality of building through CLion targets have not been implemented yet because the whole things is not finished

@Mogball I made changes to the structure and paths. Also added CMakeListsPrivate.txt. Try running on your machine and see how it goes

true I'll give it another shot

so the project structure looks like
wcosa/
    toolchain/
    wcosa/
    [this is where I am]

I open up the interpreter and do from wcosa.handle import create_wcosa fine. (I can't do this anywhere else because imports start with wcosa.) But from here the templates path isn't properly found because get_wcosa_path uses sys.argv[0]. So anyway I added
from wcosa.handle import create_wcosa

# test-cosa already exists
path = '/home/jeffniu22/Code/test-wcosa'
board = 'nano'
ide = 'clion'

create_wcosa(path, board, ide)

In main.py and removed the '../' from get_wcosa_path and ran python main.py which seems to work properly. We just need to add like the build/upload commands now which isn't too much work.

This is not a complete commit, this is just the commit of creating and updating wcosa projects. I have yet to create the main script and add other build and upload

aight lgtm


Move from sleep statements to polling

At present there are several sleep statements sprinkled throughout. I would like to encapsulate these sleeps into a single polling method.
Move from:
sleep(5)
fill_in('passcode', passCode)

To something like:
poll { fill_in('passcode', passCode) }

The poll method would try, wait, try again, wait longer, etc, until we hit the configured timeout. Once the timeout is hit, we'd fail the spec and mark what the failure was.
@h-parekh Thoughts?

Addressed in the sleep injector logic


Quick Start activation ignores initial light level

When activating the flashlight through a short tap on the Quick Start tile, it goes full brightness. After opening the app, the light level drops to the initial light level.
If I open the app through a long press on the Quick Start tile, it works like intended.

But so far I love the new update. 👍

So you mean that clicking the quick settings tile flashes the light at full brightness?
Yeah, that's how I implemented it, but I already decided to add an additional setting to link the initial light level from the settings with the quick settings tile (optional through a new setting).

Yeah, that's what I mean. Looking forward to this option. Thanks.

Implemented in Version 1.3.4

Please check if it works for you

Works perfect. Thanks 👍


withAuth HOC in Private Page layout

Description
When the user isn't authenticated and tries to access a private page (such as "/"), it should redirect the user to the "/login" page for authentication purposes. This already happens by the getServerSideProps function in the /pages/index.tsx:
export const getServerSideProps: GetServerSideProps = async (ctx) => {
  const { "nextjs-boilerplate-advanced.token": token } = parseCookies(ctx);

  if (!token) {
    return {
      redirect: {
        destination: "/login",
        permanent: false,
      },
    };
  }

  return {
    props: {},
  };
};

For our use case at Inovan.do, the getServerSideProps function does not work as we deploy the NextJS apps as static exports. Also this implementation needs to be implemented in every private route for it to redirect to the "/login" page correctly.
Having this in mind, a specific project that used this boilerplate implemented this HOC and I would like to know if it's a good thing to bring it to the template repo.

Issue ticket number and link

Type of change

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

How Has This Been Tested?
Tried to access any private page (eg.: "/") without being authenticated, and expected to be redirected to the "/login" page.
Did you test this update on all browsers?

[x] Chrome
[ ] Safari
[x] Firefox
[ ] Edge

Checklist:

[x] My code follows the style guidelines of this project
[ x] I have performed a self-review of my code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings

@joaorodrs That is a perfect addition to the template, I tested some authentication scenarios and it works like a charm 💟 Thanks for contributing!


Add files for mltrack ranking and fix bug in bert_ranker

Added files for mltrack ranking:

reader mltrack_reader.py to read and to preprocess raw data

config file mltrack_ranker.json for model training

ndcg.py metric for scoring observed predictions

notebook mltrack_submit.ipynb to get submission file

Bug in return_probas condition:
If self.return_probas is True, then error appears in the following line because pred dimensionality in this case is equal to 1. Moreover, predictions is a vector containing probabilities of the last class which doesn't make sense in case of non-binary classification.
https://github.com/deepmipt/DeepPavlov/blob/0214bd4ca2a676057d287a5011a20fb7ee2ddaeb/deeppavlov/models/bert/bert_ranker.py#L101

Probably wont be merged any time soon. We can reopen this PR later if anything changes


Can't delete image - specific sequence of actions

When image is added as a first element, sometimes it is not possible to delete it. What I do:

First I add image
Then I add two paragraphs below the image. Let's say that first have text "First" and second has text "Second".
Now I'm going to paragraph with "First" text and start to delete it from last letter.
When the whole paragraph is deleted and I still press Backspace, the image should also be deleted, but it's not.

Interesting, but you're right. It doesn't work for me either when I follow your steps.

Yes, if the first is a paragraph, then image, then a paragraph and another paragraph there is no problem. So it is something specific for image as a first node.

I also noticed that select all (cmd+A) is not working for this buggy case. Strange.

I played a little bit with this case and it seems like this is not the plugin bug. This is how contenteditable element behaves when you put the non-contenteditable element into it. Here is a code sample, without any script or plugin:
http://plnkr.co/edit/kT0CLKxNfd8w7XsNgtyU?p=preview

Thanks for investigating.


Add drag/drop capabilities

Implement dragging within and between columns.
Implement dragging to trash to delete a task.

This feature has been added.


haskellPackages.releaser + other fixups

Description of changes

I've fixed releaser
A bunch of version renames. Are these ok?

Things done

Built on platform(s)

[x] x86_64-linux

releaser

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

Context

Set up to merge into #266650

Excellent! Thank you very much!


Add method to import seed when creating a wallet.

This only adds the dialog and will call the CreateNewWallet RPC with
the decoded seed rather than a randomly-generated one.
As btcwallet does not support recovering addresses and transactions
for an imported seed, this feature won't work correctly and
transaction history will have to be recovered after generating the
same number of addresses used from the previous wallet.  However, once
that is implemented, this GUI feature should work as intended.
The seed can be inputed using either hex or the PGP word list
encoding.  At the moment, no checksumming is used or removed from the
input, and all bytes are considered part of the seed.  If any
additional data is added to a seed encoding later, the
WalletSeed.DecodeAndValidateUserInput method will need to be changed
to interpret this separately.
Closes #24.

Obviously this feature will have little use currently for Bitcoin Paymetheus since the required parts of btcwallet are not done yet, however, it will be useful for the Decred fork.

Screenshots of the new dialogs: http://imgur.com/a/6jGml

I personally think the description text should go below the selected radio button.  That is the typical way it is done.  I find it confusing to be under the unselected radio button.

Doing it this way means that the bottom radio button doesn't jump around depending on whether the top button is selected or not, making the UI more consistent.  It also allows the content area for the seed and seed prompt to be shared for both cases.
The radio buttons might be replaced with something else later, perhaps two buttons aligned horizontally across the top.

new look: http://i.imgur.com/CDS7bES.png

Code reads fine.  I really don't like the text under both radio buttons as previously mentioned, but that shouldn't hold up the PR.


Tests in Friendly Date Ranges Bonfire

One of the tests for that bonfire is : friendly(['2016-03-01', '2016-05-05']), which is supposed to give  : ['March 1st','May 5th, 2016'].
And another test is the same bonfire is : friendly(['2015-12-01', '2016-02-03']), which is supposed to give :
['December 1st','February 3rd'].
This doesn't make sense. If it can be inferred, based on the difference being one month apart, that it's the next year, for the second case, then it should also be possible for the first case too. March and May are one month apart, so the output should be ['March 1st','May 5th'] just like the second case.

We're a little backlogged right now so if you can submit a PR to clean this up it would be much appreciated.


New channel-based consumption pipeline

TODO

[ ] Load test new channels implementation
[ ] Work out of there's an obvious path to multi-region support, and ensure we don't wall it off for the future.
[ ] Do we need an API to allow per-queue concurrency limits? Perhaps a multiplexer-per-queue-group?

This PR implements a new consumer pipeline to replace INotificationSubscriber, with the goal being to allow us to throttle consumers and protect downstream resources. The new implementation is based on System.Threading.Channels.
Previously, INotificationSubscriber played all of the roles of the new interfaces below, so we tried splitting it up.
The new core interfaces are:
IMessageReceiveBuffer
Receives messages from SQS and buffers them into a target channel.
public interface IMessageReceiveBuffer
{
    Task Run(CancellationToken stoppingToken);
    ChannelReader<IQueueMessageContext> Reader { get; }
}

IMultiplexer
Reduces multiple input channel of messages into a single channel, interleaving them.
internal interface IMultiplexer
{
    Task Run(CancellationToken stoppingToken);
    void ReadFrom(ChannelReader<IQueueMessageContext> reader);
    IAsyncEnumerable<IQueueMessageContext> Messages();
}

IChannelConsumer
Reads from a channel of messages and sends them to an IDispatcher
internal interface IChannelConsumer
{
    Task Run(CancellationToken stoppingToken);
    IChannelConsumer ConsumeFrom(IAsyncEnumerable<IQueueMessageContext> messageSource);
}

IQueueMessageContext
A queue context that contains the Message, and also deletion and visibility update API's.
public interface IQueueMessageContext
{
    Message Message { get; }
    Task ChangeMessageVisibilityAsync(int visibilityTimeoutSeconds);
    Task DeleteMessageFromQueue();
    Uri QueueUri { get; }
}

IConsumerBus
Wireup of the other components based on configuration and run it all.
public interface IConsumerBus
{
    Task Run(CancellationToken stoppingToken);
}

Cancellation
IConsumerBus is co-operatively cancelled. When the CancellationToken that is passed into IConsumerBus.Run() is fired, the entire bus will be torn down. Awaiting the task returned by IConsumerBus.Run() will allow you to wait for everything to stop, and will fire an OperationCancelledException.
This PR is the work of Maisie Sadler and George Kinsman

I'm just about to start reviewing this, but based on the commit history, I'd suggest that when this is merged it's maybe done as a squash commit.

I'm just about to start reviewing this, but based on the commit history, I'd suggest that when this is merged it's maybe done as a squash commit.

Thanks! That sounds fine, and agree that a squash commit will be best. The history is long and we won't want it all in the main history.

Just the new tests I haven't looked at now. I'll leave them until we're all more or less happy with the library code.

Can IQueueMessageContext be made internal?
I wouldn't want DeleteMessageFromQueue or ChangeMessageVisibilityAsync exposed.


encoding issue

I am uploading csv file from angular using form-data.  In my API I am using busboy to read file and csvtojson module to convert stream to json. It is working fine but when I upload a csv file with string "hÃ o",  busboy file event shows encoding "7bit" and json conversion string as "hào".
before converting stream to json if I use "file.setEncoding('latin1')" , JSON conversion is fine.
what should I do?

File data is transferred as-is from the source, so if there are any issues with the data itself, then that's an issue with the client (e.g. browser).
When your file data is text, you have to be aware of two things:

Text encoding - for file fields, the encoding value passed to 'file' event handlers is typically meaningless, so it is important to know what encoding you're expecting. For JSON, this should be UTF-8. If a client is sending JSON using any other encoding, I would consider that client to be broken.

Concatenating text of a multi-byte encoding. Since file data is represented by a node stream and passes data as-is, you have to be careful with how you interpret the underlying file data if multi-byte characters are possible. This means you cannot simply do something like:
var buf = '';
file.on('data', (chunk) => { buf += chunk; });
file.on('end', () => {
  // use `buf`
});

because if chunk ends on (say byte 1 of 3 of) a partial character, buf will instead contain a UTF-8 replacement character representing the broken character.
To prevent this issue, you can use file.setEncoding() (a method built-in to all node streams) to take care of these multi-byte issues for you and will then emit strings instead of Buffers. So for example, simply adding file.setEncoding('utf8') before file.on('data', ....) in the previous example is all that is needed. The alternative would be to collect the Buffer chunks as-is, combine them into one larger buffer (e.g. using Buffer.concat()), and then calling entireBuffer.toString('utf8'). However calling file.setEncoding() is a lot simpler.

because if chunk ends on (say byte 1 of 3 of) a partial character, buf will instead contain a UTF-8 replacement character representing the broken character.

That can’t happen on a Node readable stream yielding strings, can it? Stream documentation:

The Readable stream will properly handle multi-byte characters delivered through the stream that would otherwise become improperly decoded if simply pulled from the stream as Buffer objects.

I am not using file.on('data') event.  This is how I am using busboy.
Inside API route I have this code:
var busboy = new Busboy({ headers: req.headers });
busboy.on('file', function (fieldname, fileStream, filename, encoding, mimetype) {
//here converting fileStream to json
fileStream.pipe(csvToJson()).then((jsonObj) => {console.log(jsonObj)});
Before converting to json if I use fileStream.setEncoding('utf8'), json still show incorrect data but if I use fileStream.setEncoding('latin1'), json shows correct data.
From client (browser) I am uploading file with 'utf8' encoding.

Then the issue is either the client is somehow sending malformed data or there is an issue with csvToJson()'s implementation. busboy literally just passes the bytes on through from the client without modifying anything.


CI/CD update

Update workflow:

add cache
pump up action versions

Add CI badges to README

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (74acf8c) 80.43% compared to head (25dbde8) 80.43%.
Report is 2 commits behind head on main-1.0.

Additional details and impacted files
@@            Coverage Diff            @@
##           main-1.0     #111   +/-   ##
=========================================
  Coverage     80.43%   80.43%
=========================================
  Files            20       20
  Lines          1733     1733
=========================================
  Hits           1394     1394
  Misses          339      339

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


The loader is looking weird

Bug Report
Ubuntu 16.04 Chrome Latest.
Steps
Open the loader docs and you can see that loader is having a weird animation. The loader is not rotating, instead, it is moving linearly.
Expected Result
Loader rotating in circular way.
Actual Result
It is moving linearly.
Version
0.80
Testcase
It is clearly visible in the Loader docs itself.

I cannot reproduce this in Chrome or Firefox.  Which version of Chrome has this issue?  Also, could you post a gif or screen recording?

Works fine at my work and home PCs.

If we can get a successful repro, we'll gladly reopen and investigate.

@layershifter @levithomason I've attached a screencast with the chrome version at the end of the screencast.

Yeah, that was as I suspected. The issue is something in the CSS animation, and not part of SUIR. You should open a bug on SUI core to take a look at this in the CSS. It looks like there is something going on with the transform-origin property since the animation is still happening but it's off.
My initial guess is that you might have a chrome extension enabled that is injecting some styles into your DOM that are conflicting with the SUI class names. I'd try disabling ALL chrome extensions and see if this still happens for you.


pre_resolve_composes: add support for multilib

Add support for with_multilib to pre_resolve_composes.
add the content sets definition to the schema.
x86_64 builds will generate i686 builds when with_multilib is set to true.

Fixed the JSON schema. Again. For real this time.

Updated release notes draft:

compose section of container.yaml validated against schema
Added support for optional multi-lib container images


wip: sync Lambda API and k8s API env vars

Summary
This is the initial work required to sync the API config between
the Lambda API and Kubernetes API.
⚠  Todo
In its current state, this PR cannot be merged.  It needs the following:

Add non-sensitive values to the environment specific terragrunt.hcl.
Add sensitive values to the GitHub Terraform plan and apply workflows.

Related

cds-snc/notification-planning#458

Replaced by work in #418


Docker is already running / not -- code validation added

Docker is already running / not -- code validation added

Docker is already running / not -- code validation added

Docker is already running / not -- code validation added


[Feature request] Basic search (filter) of displayed todo's with page display option

Firstly, this is a superb plugin - thank you for developing this!
Thinking about usage as an actual GTD system - having the ability to search (filter) the todo pane items would be incredibly helpful. Perhaps a search box in the pane header (between the tag and the count) that when typing filters down the list to only show matches. With a standard "x" to clear search. And finally, maybe a different css class for the header if the list has been filtered - so it's obvious to the user they're looking at a partial list of todo's, not their entire list. Something like this maybe?

Somewhat related: if there was a setting to optionally display the page for which a task belongs, that would be very helpful for displaying tasks filtered by tag. As an example, let's say user is grouping by tag and the tag they're using is #gtd. And further suppose all their tasks fall into one of two tags: #gtd/waiting and #gtd/next. Then when viewing that list of next tasks, for example, it would be very useful to quickly see which page (ie project) each task belongs to. Perhaps the task with optional project (page) display could look something like:

Anyway, not sure how much work I'm proposing, but those two components (search + page display) would make for a robust GTD implementation w/in Obsidian.
Thank you again for the work you've put into this!

Thanks for the suggestions, I think these are good ideas and I will try to get them in a future release


Move FixedUpdate / fixed timestep behind a feature flag

What problem does this solve or what need does it fill?
FixedUpdate is an opinionated and complex tool. It's a powerful option for games that care a lot about predictable behavior, and for networking. However, this isn't every game, much less every Bevy application. In many cases, custom schedules or timers are a more robust and simpler way to achieve similar goals.
Users should be able to disable this code, saving both compile and runtime costs, if they're not using it.
What solution would you like?
Move FixedUpdate and friends behind an on-by-default fixed_time feature flag. Make sure that the default app logic doesn't try to run these schedules unless this feature is on.
What alternative(s) have you considered?
We could make this code off-by-default, but this is a) more breaking and b) more annoying to teach. I think that this is a useful enough tool that it should be on by default.

Per Discord, there's significant controversy on the design here. Feature flags aren't trivial to maintain, and there's discussion about whether or not a feature flag is the right way to configure this behavior: run conditions may work instead.


Explain how to uninstall create-react-app globally

I've noticed a few times that users will read the error about having to uninstall create-react-app, not know how to do that, and then get stuck and have to ask for help. This adds uninstallation advice (similar to what's in the readme) at the bottom of the error messages, and also includes yarn.

Merged, thanks for the help!


Unable to Restart the Container via the nerdctl restart comamnd

Description
As per the document, the nerdctl restart should let me restart one or more containers running on the system. However, when I try to do that with the containerd based infra, it runs into a fatal error.
root@tardis-169-254-6-46:/var/run/docker/containerd/daemon/io.containerd.runtime.v2.task/k8s.io# nerdctl ps | grep metrics-server
3eb77b051f92    myregistry.gallifrey.com/gallifrey-docker/pause:3.6                                                                              "/pause"                  2 days ago        Up                 k8s://kube-system/metrics-server-6c8bbfdb57-gz6sx
ff39a309f6d8    myregistry.gallifrey.com/gallifrey-docker/metrics-server:2.0.3                                                               "/metrics-server --r…"    9 seconds ago     Up                     k8s://kube-system/metrics-server-6c8bbfdb57-gz6sx/metrics-server

root@tardis-169-254-6-46:/var/run/docker/containerd/daemon/io.containerd.runtime.v2.task/k8s.io# nerdctl restart ff39a309f6d8
FATA[0010] failed to start shim: mkdir /var/run/docker/containerd/daemon/io.containerd.runtime.v2.task/k8s.io/ff39a309f6d85bf50e98ca59600739b6bfbac4452d8f7cbca57f92e56d26dff5: file exists: unknown

Steps to reproduce the issue

Create Kubernetes cluster with Containerd based CRI
Use nerdctl restart to restart any non pause container of the pod in the node

Below is the config of the containerd Daemon

version=2
root = "/data/docker/containerd/daemon"
state = "/var/run/docker/containerd/daemon"
oom_score = -500
required_plugins = ["io.containerd.grpc.v1.cri"]

[grpc]
  uid = 0
  gid = 0
  max_recv_message_size = 16777216
  max_send_message_size = 16777216

[debug]
  uid = 0
  gid = 0
  level = "info"

[metrics]
  address = "localhost:1414"
  grpc_histogram = true

[cgroup]
  path = ""

[plugins]
  [plugins."io.containerd.grpc.v1.cri"]
    stream_server_address = "<IP_ADDRESS>"
    max_container_log_line_size = 262144
    sandbox_image = "myregistry.gallifrey.com/gallifrey-docker/pause:3.6"
  [plugins."io.containerd.grpc.v1.cri".cni]
    bin_dir = "/opt/cni/bin"
    conf_dir = "/etc/cni/net.d"
    conf_template = "/etc/cni/net.d/10-calico.conflist"
  [plugins."io.containerd.grpc.v1.cri".containerd]
    default_runtime_name = "runc"
  [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc]
    runtime_type = "io.containerd.runc.v2"

Describe the results you received and expected
I want the container to be restart without a Fatal Error.
root@tardis-169-254-6-46:/var/run/docker/containerd/daemon/io.containerd.runtime.v2.task/k8s.io# nerdctl restart ff39a309f6d8
FATA[0010] failed to start shim: mkdir /var/run/docker/containerd/daemon/io.containerd.runtime.v2.task/k8s.io/ff39a309f6d85bf50e98ca59600739b6bfbac4452d8f7cbca57f92e56d26dff5: file exists: unknown

What version of nerdctl are you using?
WARN[0000] unable to determine buildctl version: exec: "buildctl": executable file not found in $PATH
Client:
 Version:	v0.22.0
 OS/Arch:	linux/amd64
 Git commit:	8e278e2aa61a89d4e50d1a534217f264bd1a5ddf
 builctl:
  Version:

Server:
 containerd:
  Version:	1.6.6
  GitCommit:	10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1
 runc:
  Version:	1.1.2
  GitCommit:	v1.1.2-0-ga916309

Are you using a variant of nerdctl? (e.g., Rancher Desktop)
NO
Host information
Client:
 Namespace:	k8s.io
 Debug Mode:	false

Server:
 Server Version: 1.6.6
 Storage Driver: overlayfs
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Cgroup Version: 1
 Plugins:
  Log: fluentd journald json-file
  Storage: aufs native overlayfs
 Security Options:
  seccomp
   Profile: default
 Kernel Version: 5.4.0-122-generic
 Operating System: Ubuntu 18.04.6 LTS
 OSType: linux
 Architecture: x86_64
 CPUs: 12
 Total Memory: 19.55GiB
 Name: tardis-169-254-6-46
 ID: 99bbe607-8a58-4737-8f7f-86b82d853867

WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled

Any updates? I got the same error.

I encounter the same issue.
nerdctl can restart the container created by itself
But restart the container in k8s.io namespace will got the error
I suspect kubelet and nerdctl restarting the container at the same time cause the issue

I have the same issue.
Try to restart a nginx container which created by nerdctl compose up. I got the same error message:
FATA[0000] 1 errors:
failed to start shim: mkdir /run/containerd/io.containerd.runtime.v2.task/default/5346acf36593b69abd4ec7e0f48eb9095e4dd6ba0d637bd3d21053269dfff051: file exists: unknown

I only installed the nerdctl full package.
OS: CentOS 7.6
Version:
Client:
 Version:       v1.5.0
 OS/Arch:       linux/amd64
 Git commit:    b33a58f288bc42351404a016e694190b897cd252
 buildctl:
  Version:      v0.12.0
  GitCommit:    18fc875d9bfd6e065cd8211abc639434ba65aa56

Server:
 containerd:
  Version:      v1.7.3
  GitCommit:<PHONE_NUMBER>b188f4c97b462f709d0db8e8962aff
 runc:
  Version:      1.1.8
  GitCommit:    v1.1.8-0-g82f18fe0

I have the same issue too, I think the root cause is that containerd will clean up the exited container if we use the CRI interface to stop the container. "nerdctl restart" will stop first, then start, so the exited container is cleaned up when we use nerdctl to stop container.
If we start a container using "nerdctl run" and then restart it, there is no problem, because the container is started without using the CRI interface.

any process?

I have the same issue too, I think the root cause is that containerd will clean up the exited container if we use the CRI interface to stop the container. "nerdctl restart" will stop first, then start, so the exited container is cleaned up when we use nerdctl to stop container.
If we start a container using "nerdctl run" and then restart it, there is no problem, because the container is started without using the CRI interface.

i modify nerdctl's code.
add time.sleep(1*time.second) among stop() and start() func, the container restart successful. but i notice per restart one new container is created and the origin is kept forever. when pstree, there is multi process be shim's child


feat(query-core): add support for symbol in cache

I noticed when I was using symbols as keys in the value of objects with queryCache.setQueryData() that keys containing symbol were sometimes stripped out
This PR addresses this by using Object.getOwnPropertySymbols() to iterate over symbol keys in the cache
I added new tests & ran test before and after my changes and they indeed fail on before, and pass after

Before
After

sorry, symbols aren't supported in query keys because they are't json serializable, which is what we use for hashing. You can address that on your end by providing a queryKeyHashFn that hashes those into something unique. This can also be provided globally.

But those aren't in query types. But in the cached values

You can see here in the code:
const key = queryKey()
const s = Symbol('s');

queryClient.setQueryData(key, { [s]: 1, a: 1 })

The symbol is not in the query key but in the data itself

ah, sorry about that. So you basically changed the implementation of replaceEqualDeep ? This feature is for structural sharing, which again, also only supports json serializable structures per default. This too can be customized by passing your own structuralSharing: (old, new) => merged function.

The reason why I'm hesitant to add this to the library is because once we go away from "must be json serializable", we have to (and already did get) many requests about Maps, Sets, Dates etc. superjson is generally really good at that.

Makes sense, I'll check that then


Make all the pages responsive

Update !!
All pages are now fully responsive 📱💻🖥. However, we still need to do a thorough check 🔍 to make sure that there are no minor issues 🕵♀ like misplaced buttons , or other elements.
🚫 Therefore, the issue is not yet closed, PRs are still accepted to fix issues with styling .

I have already done the stylings for the desktop version , add responsiveness to the pages in order for them to be suitable for devices with smaller screens ,You can find the UI designs in the "mockups" directory

Hi, please assign this issue to me, I have studied the requirement and started with the work. Thank you in advance :)

There you go . Let me know if you need any additional info or file .

Hii @consci210  done with responsiveness.
Please have a look at the attached screenshots :)

@vedamruta 👍 Looks great! Just needs a little bit of touchups.
But, may I ask, did you create new components and separate CSS or did you add media queries to the existing CSS stylesheet?

@vedamruta 👍 Looks great! Just needs a little bit of touchups. But, may I ask, did you create new components and separate CSS or did you add media queries to the existing CSS stylesheet?

Ohh sorry I didn't saw your message and made a pull request.
Yeah, I have did the final formatting and found that the text wasn't center aligned and fixed that now.
What I did ??
I have created new components in index.html and styled them in index.css using CSS classes and IDs.

@vedamruta  Oh, but this is a React app! You don't need to create a new index.html file. Instead, you can add your components inside the HomePage.jsx component.
Don't worry, though, we won't let your efforts go to waste! Since you've already done the styling work, maybe we could add your styles to the existing CSS file and modify the elements and classNames in the HomePage.jsx component accordingly.
Thank you for your hard work !

Oh actually I am not yet familiar to React.js
I would start learning that soon.
Thank you for the opportunity presented ✨

It's great to hear that you're planning to start learning React.js soon. I'm sure you'll find it to be an exciting and powerful framework. In the meantime, please don't hesitate to reach out on discord if you have any questions or if there's anything else I can help you with. Thank you for helping me out on this project, and I look forward to connecting with you again in the future.

I will add on the styling . assign me please


[setting] edges were cutting on settings menu

Screenshot

Description
Right edge and bottom of the settings menu are cut

Right edge is looking ok on master, the bottom does need some paddddddding. 🤦🏾♀

Having a look

@junlincc
The menu looks fine on master

@junlincc @geido https://github.com/apache/superset/pull/14557 fixed the About padding.  We can close this issue.

Verified fixed


Modify gradle build script to support spark cluster

Need special build command for sparkJar similar to what is in gatk

Also, addresses issue #307
Running on spark cluster with bin size of 10000 and a big HCC1143T pcrfree bam file:
FYI...
$ hdfs dfs -ls  hdfs:///user/lichtens/test_bams/HCC1143.bam-rw-r--r--   3 lichtens supergroup<PHONE_NUMBER>14 2016-01-22 22:40 hdfs:///user/lichtens/test_bams/HCC1143.bam

Standard err dump:
...<snip>...[January 24, 2016 8:35:16 PM EST] org.broadinstitute.hellbender.tools.genome.SparkGenomeReadCounts done. Elapsed time: 3.79 minutes.Runtime.totalMemory()=8350334976

Good work!  I spot checked the results and seems reasonable.  There may be issues lurking, but first check seems good....

Also, made changes to jar file names, so that sparkJar and shadowJar would not overwrite each other.


How to open URL with UrlImageTextButton widget?

auto testLink = new UrlImageTextButton("test_link", UIString.fromId("ui.test_link"), "https://google.com", null);

How can I use this code to open the specified url when left clicking on the mouse? I check in Windows, it does nothing by itself. But why then specify the url?

I solved this problem in this way:
testLink.click = (Widget source) {
import std.process : browse;
browse(source.action.stringParam);
return true;
 };

But is this the right way? I think it should work automatically.

I looked at it more closely, and here's what happens:
The action itself is assigned properly and it works as the original author intended. The problem is, you need to handle those actions somewhere. Otherwise the action is dispatched, but never handled. An example can be found here: https://github.com/buggins/dlangui/blob/51d1eabb8d9b1265f3253d518c742db51f5cbf5f/examples/example1/src/example1.d#L228
I don't know what to feel about this design. If I were to try and understand the reasoning behind all this, it's to allow you to handle URL clicks in a non-specific way (eg check for malicious websites or whatnot). I'm thinking this is the intended way for it to work and not a bug.
However, I can also understand that it's expected to work in a different way. Maybe, I can kludge in a way for it to work without any special shenanigans required. This would mean a cross-platform way of opening links is required.
I'm promoting this from bug to enchancement though :)

This would mean a cross-platform way of opening links is required.

This is available in the standard library. Works if the default browser is set in the system. I tested in Windows and Linux (ubuntu, archlinux).


Rename IInstrument to ISession Factory

[x] This contribution adheres to CONTRIBUTING.md.

What does this Pull Request accomplish?
Renames the class and related references.
Why should this Pull Request be merged?
Part of AB#2537821
What testing has been done?
Just PR testing

@pbirkhol-ni @jonathanmendez My only question is if this (and the subsequent rename to 'Initialize') are disruptive or risky enough that we would want to wait until we release the drop next week. Maybe we just don't have the time to wait according to our schedule and we'll have to push forward with it.

@pbirkhol-ni @jonathanmendez My only question is if this (and the subsequent rename to 'Initialize') are disruptive or risky enough that we would want to wait until we release the drop next week. Maybe we just don't have the time to wait according to our schedule and we'll have to push forward with it.

I'm not too concerned. I don't think it is any riskier now than it would be at any another time.


az vmss reimage --ids parse error on v 2.45

hi,
sinsce upgrade from v2.44 to v2.45 the following errors are now happneing
command executed: az vmss reimage --ids /subscriptions/XXXX/resourceGroups/XXXX/providers/Microsoft.Compute/virtualMachineScaleSets/XXXX/virtualMachines/9999
before
{
"azure-cli": "2.44.1",
"azure-cli-core": "2.44.1",
"azure-cli-telemetry": "1.0.8",
"extensions": {}
}
after
{
"azure-cli": "2.45.0",
"azure-cli-core": "2.45.0",
"azure-cli-telemetry": "1.0.8",
"extensions": {}
}
error message:
(InvalidParameter) The provided instanceId 9 is not an active Virtual Machine Scale Set VM instanceId.
Code: InvalidParameter
Message: The provided instanceId 9 is not an active Virtual Machine Scale Set VM instanceId.
Target: instanceIds
seems to be reading only the first number char of the number.
OS: Ubuntu 20.04.5 LTS

@zhoxing-ms for awareness

@marchesir Could you please send the debug log (add --debug parameter) to me? My email address is<EMAIL_ADDRESS>

azclidebug.txt
hi @zhoxing-ms  iv attached the debug log but have redacted account info but not insatnce id
what i can see is this:
cli.knack.cli: Command arguments: ['vmss', 'reimage', '--ids', '/subscriptions/XXXX/resourceGroups/XXXX/providers/Microsoft.Compute/virtualMachineScaleSets/XXXX/virtualMachines/100', '--no-wait', '--debug']
so 100 is passed in but when the azure api call is made its cut it from the requst:
cli.azure.cli.core.sdk.policies: Request URL: 'https://management.azure.com/subscriptions/XXXX/resourceGroups/XXXX/providers/Microsoft.Compute/virtualMachineScaleSets/XXXX/virtualMachines/1/reimage?api-version=2022-11-01' cli.azure.cli.core.sdk.policies: Request method: 'POST' cli.azure.cli.core.sdk.policies: Request headers: cli.azure.cli.core.sdk.policies:     'Content-Type': 'application/json' cli.azure.cli.core.sdk.policies:     'Accept': 'application/json' cli.azure.cli.core.sdk.policies:     'x-ms-client-request-id': 'e3631833-b8ee-11ed-a79d-65179efe07a4' cli.azure.cli.core.sdk.policies:     'CommandName': 'vmss reimage' cli.azure.cli.core.sdk.policies:     'ParameterSetName': '--ids --no-wait --debug' cli.azure.cli.core.sdk.policies:     'User-Agent': 'AZURECLI/2.45.0 (DEB) azsdk-python-azure-mgmt-compute/29.1.0 Python/3.10.8 (Linux-5.15.0-1033-azure-x86_64-with-glibc2.31)'
thanks

@marchesir Please note that the --ids parameter should pass in the resource id of VMSS instead of the VM instance id from a VMSS. If you need to pass in the VM instance id, you should use parameter --instance-ids, such as:
az vmss reimage --instance-ids 100 --ids {VMSS_resource_id}

hi @zhoxing-ms
i am passing in the full resource id, this works perfect on v2.44 without any code updates but breaks on v2.45.
here iam passing the full resource id
az vmss reimage --ids /subscriptions/XXXX/resourceGroups/XXXX/providers/Microsoft.Compute/virtualMachineScaleSets/XXXX/virtualMachines/9999
as can be seen in the logs its cutting instance number, iv tried with double quotes ("") but the same issue.
i know i can use --instance-ids to pass just the number and yes this works fine on both versions but i need the full resource id option.

this is a clear bug that needs addressing
i have workaround by using v2.44
my current codebase uses full resource id to avoid complex parsing

its not my call but for now i will pin my codebase to v2.44 but hopfully this issue will be resolved and i can upgrade at some point.  if the azure cli has updates the way full resource id is passed fine but iv checked the change logs and cant seee anyhting mentioned.

@marchesir Sorry, I can't reproduce this issue in my local environment at present
In fact, I found that if the --ids is a VM instance id under a VMSS, CLI will directly reimage the entire VMSS with ignoring the VM instance id.
For example:
cli.knack.cli: Command arguments: ['vmss', 'reimage', '--ids', '/subscriptions/{subscription_id}/resourceGroups/zhoxing-test/providers/Microsoft.Compute/virtualMachineScaleSets/zhoxing-test/virtualMachines/100', '--debug']
...
cli.azure.cli.core.sdk.policies: Request URL: 'https://management.azure.com/subscriptions/{subscription_id}/resourceGroups/zhoxing-test/providers/Microsoft.Compute/virtualMachineScaleSets/zhoxing-test/reimage?api-version=2022-11-01'

So the behavior of my local CLI is different from what you described, I'm not sure whether it is caused by some differences in our usage.
Could you please provide me with the complete debug logs for CLI version 2.45.0 and 2.44.1? If you are concerned about the sensitive information, please send them to me by email, My email address is<EMAIL_ADDRESS>Thank you

hi @zhoxing-ms
iv attached 2 logs with all commands ran on each version, iv retacted some account info as this is being run inside a coperate environment.
so the commands are not run as indiviual user:

ssh into vm on Azure VMSS
az login to managed identity
get vm respource id
run reimage command

all i can see im running 100% same setup only difference id the azure cli version. the az cli is being run on azure vm.
all these details can be seen in the logs:
using v2.44.1 --> works fine
azcli_good.txt
using v2.45.0 --> has parsing errror
azcli_error.txt
so v2.45.0 clearly is cutting part of the instance id, not sure why, havent updated anything apart from azure cli unless the cli depends on something external within the OS.
so what i can see in logs is this:
cli.knack.cli: Command arguments: ['vmss', 'reimage', '--ids', '/subscriptions/{subscription_id}/resourceGroups/{rg}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss}/virtualMachines/107', '--no-wait', '--debug']
This looks good and then when the API call is made its been cut
cli.azure.cli.core.sdk.policies: Request URL: 'https://management.azure.com/subscriptions/{subscription_id}/resourceGroups/{rg}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss}/virtualMachines/1/reimage?api-version=2022-11-01'
thanks again for help

@marchesir Sorry, I still cannot reproduce your problem after referring to your process.
The behavior of cutting instance id is strange, this command had not added similar logic before.
Could you please upgrade CLI to the latest version 2.46.0 and try again?

hi @zhoxing-ms
thanks for update, so i tried v2.46 and works fine so will close issue. no idea what was causing it.
thanks for you help much appreciated. im guessing was an edge case but what was causing it will remain a mystery


thanos tools bucket rewrite fails with a segmentation violation on v0.36.0 and later of thanos.

Thanos, Prometheus and Golang version used:
<EMAIL_ADDRESS><EMAIL_ADDRESS>Also tested with:
thanos@main (v0.35.2-0.20241017120053-731e4607d34a according to go.mod)
<EMAIL_ADDRESS>Confirmed issue does not affect:
<EMAIL_ADDRESS>Object Storage Provider:
FILESYSTEM
What happened:
Starting with v0.36.0 thanos tools bucket rewrite fails with a Segmentation Violation while attempting to write the new block back to the store.
What you expected to happen:
thanos tools bucket rewrite should not fail with a Segmentation Violation
How to reproduce it (as minimally and precisely as possible):
Attached go code will reproduce error.
My specific command invocation is as follows:
thanos tools bucket rewrite --objstore.config-file=objstore-local.yaml --rewrite.to-relabel-config-file=relabel-config.yaml --no-dry-run --delete-blocks --id "01HCGZPEM6EEHJ75218N914HNM" --tmp.dir="/home/appuser/data/thanos-rewrite"
objstore-local.yaml:
type: FILESYSTEM
config:
  directory: "/home/appuser/data"
prefix: ""

relabel-config.yaml:
- action: replace
  target_label: "foo"
  replacement: "bar"

However, the attached code will reproduce the issue by simply running:
go get
go run main.go
Full logs to relevant components:
Logs

Start time: Sat Oct 19 01:43:15 UTC 2024
ts=2024-10-19T01:43:15.39052425Z caller=factory.go:53 level=info msg="loading bucket configuration"
ts=2024-10-19T01:43:15.406953575Z caller=fetcher.go:623 level=info component=block.BaseFetcher msg="successfully synchronized block metadata" duration=16.053695ms duration_ms=16 cached=1077 returned=1077 partial=0
ts=2024-10-19T01:43:15.414714245Z caller=main.go:174 level=info msg=exiting
ts=2024-10-19T01:43:15.44098453Z caller=factory.go:53 level=info msg="loading bucket configuration"
ts=2024-10-19T01:43:17.14659156Z caller=tools_bucket.go:1226 level=info msg="downloading block" source=01HCGZPEM6EEHJ75218N914HNM
ts=2024-10-19T01:46:02.077523638Z caller=tools_bucket.go:1263 level=info msg="changelog will be available" file=/home/appuser/data/thanos-rewrite/01JAH77XYXDS8NBHFBJFKCS3V1/change.log
ts=2024-10-19T01:46:02.134607708Z caller=tools_bucket.go:1278 level=info msg="starting rewrite for block" source=01HCGZPEM6EEHJ75218N914HNM new=01JAH77XYXDS8NBHFBJFKCS3V1 toDelete= toRelabel="- action: replace\n  target_label: \"foo\"\n  replacement: \"bar\"\n- action: replace\n"
ts=2024-10-19T01:49:15.763983386Z caller=compactor.go:42 level=info msg="processed 10.00% of 3419617 series"
ts=2024-10-19T01:49:47.464508668Z caller=compactor.go:42 level=info msg="processed 20.00% of 3419617 series"
ts=2024-10-19T01:50:48.513697195Z caller=compactor.go:42 level=info msg="processed 30.00% of 3419617 series"
ts=2024-10-19T01:51:20.873113385Z caller=compactor.go:42 level=info msg="processed 40.00% of 3419617 series"
ts=2024-10-19T01:51:25.882289646Z caller=compactor.go:42 level=info msg="processed 50.00% of 3419617 series"
ts=2024-10-19T01:51:37.924141467Z caller=compactor.go:42 level=info msg="processed 60.00% of 3419617 series"
ts=2024-10-19T01:51:43.005992941Z caller=compactor.go:42 level=info msg="processed 70.00% of 3419617 series"
ts=2024-10-19T01:55:21.447415738Z caller=compactor.go:42 level=info msg="processed 80.00% of 3419617 series"
ts=2024-10-19T01:56:18.949121034Z caller=compactor.go:42 level=info msg="processed 90.00% of 3419617 series"
ts=2024-10-19T01:57:32.258928562Z caller=compactor.go:42 level=info msg="processed 100.00% of 3419617 series"
ts=2024-10-19T01:57:32.26977951Z caller=tools_bucket.go:1288 level=info msg="wrote new block after modifications; flushing" source=01HCGZPEM6EEHJ75218N914HNM new=01JAH77XYXDS8NBHFBJFKCS3V1
ts=2024-10-19T01:58:03.092458808Z caller=tools_bucket.go:1297 level=info msg="uploading new block" source=01HCGZPEM6EEHJ75218N914HNM new=01JAH77XYXDS8NBHFBJFKCS3V1
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x92573b]

goroutine 102 [running]:
github.com/grafana/regexp.(*Regexp).UnmarshalText(0x0, {0xc129d88463?, 0xc0f46c6f08?, 0x2907820?})
	/go/pkg/mod/github.com/grafana/regexp@v0.0.0-20240518133315-a468a5bfb3bc/regexp.go:1302 +0x3b
encoding/json.(*decodeState).literalStore(0xc0005b4b68, {0xc129d88462, 0xc, 0x199e}, {0x2907820?, 0xc0f46c6f08?, 0x27ddc00?}, 0x0)
	/usr/local/go/src/encoding/json/decode.go:877 +0x5f3
encoding/json.(*decodeState).value(0xc0005b4b68, {0x2907820?, 0xc0f46c6f08?, 0x5?})
	/usr/local/go/src/encoding/json/decode.go:388 +0x115
encoding/json.(*decodeState).object(0xc0005b4b68, {0x24d0120?, 0xc0001de298?, 0x23212c0?})
	/usr/local/go/src/encoding/json/decode.go:755 +0xd08
encoding/json.(*decodeState).value(0xc0005b4b68, {0x24d0120?, 0xc0001de298?, 0x1?})
	/usr/local/go/src/encoding/json/decode.go:374 +0x3e
encoding/json.(*decodeState).array(0xc0005b4b68, {0x23212c0?, 0xc0f3ef2710?, 0x313c?})
	/usr/local/go/src/encoding/json/decode.go:555 +0x50f
encoding/json.(*decodeState).value(0xc0005b4b68, {0x23212c0?, 0xc0f3ef2710?, 0x10?})
	/usr/local/go/src/encoding/json/decode.go:364 +0x74
encoding/json.(*decodeState).object(0xc0005b4b68, {0x2629080?, 0xc0f3ef26e0?, 0x2325400?})
	/usr/local/go/src/encoding/json/decode.go:755 +0xd08
encoding/json.(*decodeState).value(0xc0005b4b68, {0x2629080?, 0xc0f3ef26e0?, 0x1?})
	/usr/local/go/src/encoding/json/decode.go:374 +0x3e
encoding/json.(*decodeState).array(0xc0005b4b68, {0x2325400?, 0xc0005b4b00?, 0x38c3?})
	/usr/local/go/src/encoding/json/decode.go:555 +0x50f
encoding/json.(*decodeState).value(0xc0005b4b68, {0x2325400?, 0xc0005b4b00?, 0x8?})
	/usr/local/go/src/encoding/json/decode.go:364 +0x74
encoding/json.(*decodeState).object(0xc0005b4b68, {0x282b140?, 0xc0005b4aa8?, 0x39c0?})
	/usr/local/go/src/encoding/json/decode.go:755 +0xd08
encoding/json.(*decodeState).value(0xc0005b4b68, {0x282b140?, 0xc0005b4aa8?, 0x6?})
	/usr/local/go/src/encoding/json/decode.go:374 +0x3e
encoding/json.(*decodeState).object(0xc0005b4b68, {0x252fa40?, 0xc0005b4a00?, 0xc0005f8ee8?})
	/usr/local/go/src/encoding/json/decode.go:755 +0xd08
encoding/json.(*decodeState).value(0xc0005b4b68, {0x252fa40?, 0xc0005b4a00?, 0xc0005f8f38?})
	/usr/local/go/src/encoding/json/decode.go:374 +0x3e
encoding/json.(*decodeState).unmarshal(0xc0005b4b68, {0x252fa40?, 0xc0005b4a00?})
	/usr/local/go/src/encoding/json/decode.go:181 +0x133
encoding/json.(*Decoder).Decode(0xc0005b4b40, {0x252fa40, 0xc0005b4a00})
	/usr/local/go/src/encoding/json/stream.go:73 +0x179
github.com/thanos-io/thanos/pkg/block/metadata.Read({0x38c90e8?, 0xc0001de288})
	/app/pkg/block/metadata/meta.go:260 +0x10c
github.com/thanos-io/thanos/pkg/block/metadata.ReadFromDir({0xc11dc14680, 0x3c})
	/app/pkg/block/metadata/meta.go:252 +0x8e
github.com/thanos-io/thanos/pkg/block.upload({0x38db3b0, 0xc0000ce550}, {0x38b9f40, 0xc0001c4440}, {0x38f2518?, 0xc000622820?}, {0xc11dc14680, 0x3c}, {0x0, 0x0}, ...)
	/app/pkg/block/block.go:126 +0x125
github.com/thanos-io/thanos/pkg/block.Upload(...)
	/app/pkg/block/block.go:98
main.registerBucketRewrite.func1.1()
	/app/cmd/thanos/tools_bucket.go:1303 +0x1cf6
github.com/oklog/run.(*Group).Run.func1({0xc000a5eb60?, 0xc000622ad0?})
	/go/pkg/mod/github.com/oklog/run@v1.1.0/group.go:38 +0x29
created by github.com/oklog/run.(*Group).Run in goroutine 1
	/go/pkg/mod/github.com/oklog/run@v1.1.0/group.go:37 +0x67

Anything else we need to know:
The issue is specifically related to the helpful information that thanos tools bucket rewrite adds to the updated block's meta.json file.
The following JSON can be used to reproduce the problem:
{
  "thanos": {
    "rewrites": [
      {
        "relabels_applied": [
          {
            "SourceLabels": null,
            "Separator": ";",
            "Regex": "foo",
            "Modulus": 0,
            "TargetLabel": "bar",
            "Replacement": "baz",
            "Action": "replace"
          }
        ]
      }
    ]
  }
}

Removing "Regex": "foo", will make the problem go away. See attached code.
thanos-rewrites-segv.tar.gz

Possible this is related to: https://github.com/thanos-io/thanos/pull/7338

@chris-barbour-as The issue here is that relabel.Regexp doesn't implement json encoder/decoder like it does for YAML hence it doesn't handle the regexp pointer correctly.
We can either change Prometheus or switch to use jsoniter in Thanos so that we can add our own encoding/decoding function to relabel.Regexp

I created https://github.com/prometheus/prometheus/pull/15383 which should fix this issue.


City Boundary Polygons

Are there city boundary polygons/lines in the osm2vectortiles extracts? If so, what is the layer name? They do not seem to be in the mapbox streets extracts, however they are in the default OSM raster tiles. If they are not in the extracts I would like to see them added.
Thanks

Are there city boundary polygons/lines in the osm2vectortiles extracts? If so, what is the layer name? They do not seem to be in the mapbox streets extracts, however they are in the default OSM raster tiles. If they are not in the extracts I would like to see them added.

In version 3.0 i have the "urban ares" of Natural Earth if this is what you mean.
You want something to style the outline of a city? Or the actual city boundary?


Setup a front-end scripts flow and started pulling the scripts out of the blade templates

Setup a webpack flow for the scripts associated with the fields and pulled out the scripts from the blade templates.
Setting the flow up
run npm install (this will install all dependencies. See package.json)
Running webpack in development mode
run npm run dev (this will execute webpack with the --watch flag in development mode)
Running webpack in production mode
run npm run prod (this will execute webpack with in production mode)
Webpack will take the 'frontend_src' folder into consideration when making bundles. The bundle is located at src/public/crud/bundle.js and form_content.blade.php loads it up.
I tested all the fields I converted and they all behave the same.
There are some TODO's left:

Load up styles asynchronously (for example in the iconpicker component)
Make separate bundles instead of just 1 and load everything up as we go

Wooow. This is HUGE :-) I'll take a look at it in the next few days, pretty busy with a project.
Cheers!

@tabacitu, did you get a chance to check this out?

Hi @SabatinoMasala ,
Sorry for not replying sooner - it's been a hell of a week here and I'm now trying to catch-up on all the Backpack action.
This looks like an awesome improvement for those who already use Webpack, but I have to be honest to you - I'm really scared to introduce a new technology dependency for everyone. That's why I didn't take a definitive action on my first reply, I wanted to sleep on it a bit. My train of thought is this:

according to my last and only survey (Sep 2016), 61.2% of all Backpack developers are "Just starting", "Beginner" or "Intermmediate" in building web apps with Laravel;
Laravel is not very easy to learn and love, though it might be a lot better now with Laracasts, then when I did;
Backpack's learning curve for beginners is quite steep right now, because:

the documentation is subpar
we still lack learning material (videos, tutorials)
Backpack assumes you already know how to use Laravel;

I'm afraid that introducing another technology in the project would make for a steeper learning curve, more github issues and a lot more support questions. And I'm thinking about this in a general way - others have proposed using Angular or Vue.js and my thoughts are the same regarding that - that maybe we can find a way to keep the core as basic as possible, but somehow introduce more technologies for the users that are already familiar with them. Because it really is a shame for all the work you've put in for this PR and for all the improvements that new technologies could bring.
I think we can do that using feature branches or forks. Right? If someone really wants a certain technology-fork-backpack (ex: you), I think the best course of action would be:

create a branch for that technology (or a fork, if the documentation/installation/usage would be different);
create a team inside the Backpack organisation for that technology and give that user the reigns for that branch (push, pull, everything);

I think that would:

keep Backpack accessible for the 61.2%;
keep Backpack outside the emerging technology wars (Webpack vs Browserify, Angular vs Vue, etc);
allow the ones that prefer a certain technology to still use Backpack AND be able to easily merge updates from the master branch;

It does, however, assume:

the one that forks from the mother project (let's lovingly call him a mother forker) is willing to take on the responsibilities of maintaining an open-source project (which is a lot of work - I found out the hard way);
others in the Backpack community agree with this solution;

What do you think? Good solution to a complicated problem? Would you like to be the first mother forker? :-)
Do you think a branch or fork would be better?
Do you foresee any issues I've missed with this plan?

@OwenMelbz , @fede91it , @Ghitu , @cristiantone  - what do you guys think?
Cheers!

Hey @tabacitu,
Thanks for giving this so much thought, I appreciate it!
It is quite the complicated problem, but I feel like adding a dependency like Webpack (or Gulp, ...) will improve the development experience for maintainers of Backpack, without impeding those who don't understand (or don't care) and just want a package for easily creating an admin panel.
I'd like to point to a major repositories like Bootstrap. The maintainers use a very nice development flow for creating a distribution version which is situated in the dist/css and dist/js folder (included in the repository).
If you want to use bootstrap, you have the choice, you either:

Understand & care about the development flow, and use the sass files to compile Bootstrap yourself (using their gulp flow - or even your own)
Don't understand or don't care about this flow and use the pre-built production files

Out-of-the-box, people who use the Backpack package wouldn't have to worry about Webpack, because the compiled files would be provided for them in the repository. When they want to get their hands dirty & create custom fields for example, only then they have to worry about the dependency.
Splitting the Javascript from the views allows for much greater flexibility. I'm thinking Ajax reloading parts & creating models in modals, which is simply not possible (or at least very hard) at this moment without making a big mess.
That being said, I totally understand your concerns about introducing Webpack, and I'd love to help you out by maintaining parts where I can and adding features (like the Ajax loading / model creation).
My biggest concern however is that the Webpack feature branch and the Master branch would drift apart quite fast, since fields are going to have to be created twice (the 'webpack way' and 'the regular way').
Maybe a fork would be the better solution here.

Just a thought on this, would it not make more sense just to add something like "backpack.js" which includes the fields into the existing laravel elixr workflow, as it seems that some of this is reinventing the wheel? We could put the core fields into it, which would still allow users to write their own inline javascript? And probably not worth converting it to ES2015 to save people who are not experienced with it having extra hassle

@SabatinoMasala @tabacitu

This will need to be updated to be compatible with the version of webpack that Laravel 5.4 uses, if not also Laravel 5;
Whilst I'm all for using ES2015 I'm with @OwenMelbz here and wondering if it adds even more complexity than needed;
I'm not certain whether I want to support an automated JS build system both for Laravel < 5.4 and >= 5.4 (the transition to webpack was, imho, extremely bumpy).

Introducing another "mother fork" will just make everyone confused. Plus it will make the product leaders' job a lot more confusing (i.e. the job of @Tabacitu).
And it will make testing an even greater nightmare.
I don't really support forking the project; I do think there may be room to move some of the work out to a JavaScript builder but for parts of the project that are core parts.

Let's keep this open, Justin :-)

@SabatinoMasala - there's only one way I can say this - You were right, I was wrong 😄
Thanks again for putting so much time into this - it was very useful. Unfortunately, I did not "see the light" back in 2016 - now I do. The datatables CDNs were down a few weeks ago, and all Backpack admin panels were inaccessible. Which sucked. Regular admins most likely had their assets cached, but I'm sure not everybody did. Yes, CDNs rarely go down, but sometimes they do. So we need local assets. Now I agree.
In your PR you used elixir because that what was available at the time. I've just pushed a PR that uses NPM to install all CRUD assets, and Laravel Mix to copy them to the packages folder. I've also updated the assets to their latest versions.
Note that Base and CRUD will be merged soon, so there are two PRs for this:

https://github.com/Laravel-Backpack/Base/pull/402 pulls and publishes the assets using NPM and Laravel Mix;
https://github.com/Laravel-Backpack/CRUD/pull/1977 changes the paths to the js/css files from CDNs to local files;

Thanks again for taking the time to submit this - I really appreciate it. I admit - sometimes I'm wrong - this was one of those times.
Let me know if you don't like something in the new implementation.
Cheers!

Amazing, thanks for the effort! 👌


Ex13.4, the 4th copy constructor

Ex13.4
I really doubt whether this line call the copy constructor or just an assignment.

I'm new in C++, looking forward to your answer, thanks  :)

@gtrenching copy assignment.

I tried it like this
#include<iostream>

struct Point
{
	Point() = default;

	Point(Point const& other)
	{
		std::cout << "copy ctor\n";
	}

	Point& operator = (Point const& other)
	{
		std::cout << "copy assignment\n";
		return *this;
	}
};

int main()
{
	auto on_heap = new Point();
	Point on_stack;
	*on_heap = on_stack;

	system("pause");
	return 0;
}

g++ and vs2013 had the same result:
copy assignment
Press any key to continue . . .

Back to the current answer in repo, number 5 should be a copy assignment , no copy constructor being called.

IMHO, this one is a bug. Thx for reporting @gtrenching

I did one more experiment  to block synthesized copy assignment operator:
#include<iostream>

struct Point
{
	Point() = default;

	Point(Point const& other)
	{
		std::cout << "copy ctor\n";
	}

	Point& operator = (Point const& other);
	//{
	//	std::cout << "copy assignment\n";
	//	return *this;
	//}
};

int main()
{
	auto on_heap = new Point();
	Point on_stack;
	*on_heap = on_stack;

	system("pause");
	return 0;
}

Neither g++ or vs2013 compiled, so for such case, only copy assignment operator can be called.

According to linka and my test, *heap = local will call copy constructor.
Point *heap;
*heap = local; // call copy assignment operator


[10.x] Allow sync with carbon to be set from fake method

As mentioned in #50392 to @timacdonald  this is my proposal for allowing the syncWithCarbon value to be set from the fake method.

Nice!


Energy Arrow upgrade for the Tier 3 and up bows?

Have you considered perhaps making an upgrade to allow the bow to work without any arrows? It just uses energy to produce a projectile.

I've considered that - but it also just invalidates the infinity enchant at that point.


Broken Links

https://github.com/flutter/codelabs/blob/homescreen_widgets/homescreen_codelab/step_04/ios/NewsWidgets/NewsWidgets.swift#L48-L57
Not Found error
https://github.com/flutter/codelabs/blob/homescreen_widgets/homescreen_codelab/step_04/lib/article_screen.dart#L32
Not Found error

Hi @joeatnovvia, where did you find these links so that we can fix them over there?
PS: This is the correct link https://github.com/flutter/codelabs/tree/main/homescreen_codelab

I would have assumed the "Report a mistake" would tell you what page the
mistake was on.  That would be helpful to your support team in the future.
I was on the CodeLab for Adding a Home Screen widget to your Flutter App "
https://codelabs.developers.google.com/flutter-home-screen-widgets?hl=en
all of the links on the page referring to github are broken.
On Tue, Oct 10, 2023 at 1:37 AM Daniel Agbemava @.***>
wrote:

Hi @joeatnovvia https://github.com/joeatnovvia, where did you find
these links so that we can fix them over there?
PS: This is the correct link
https://github.com/flutter/codelabs/tree/main/homescreen_codelab
—
Reply to this email directly, view it on GitHub
https://github.com/flutter/flutter/issues/136204#issuecomment-1754495741,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A2LTDC7OUNDH3QUVHZQYZ4LX6TUMHAVCNFSM6AAAAAA5Y6XGTWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONJUGQ4TKNZUGE
.
You are receiving this because you were mentioned.Message ID:
@.***>

Thanks for the link.
cc @domesticmouse

PTAL @ericwindmill

I believe this is now fixed

Thank you so much!
On Thu, Oct 12, 2023 at 6:15 PM Brett Morgan @.***>
wrote:

I believe this is now fixed
—
Reply to this email directly, view it on GitHub
https://github.com/flutter/flutter/issues/136204#issuecomment-1760505846,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A2LTDC4SG6AG76J44TFLKL3X7B2YVANCNFSM6AAAAAA5Y6XGTU
.
You are receiving this because you were mentioned.Message ID:
@.***>


feat(tutorial): complete step 1

Complete step 1

@zhenqicai0603 - Netlify stalled on your build. Could you please make a small change and commit another push this PR to trigger the build to restart?

No updates in 30 days. Closing


Replace the Makefile for static assets with the new :build_embedded option in mix.ex

I don't remember exactly what José said, but it was something about a new :build_embedded option in the mix.ex file of an application that would take care of the priv static assets without needing a Makefile to do it.
Investigate this and, if it works, replace the Makefile with the build options.
Must work on both the Desktop and Nerves versions. (thats the tricky part)

This is in master for scenic_new and scenic_driver_glfw
didn't directly affect the core scenic library


Request hangs if query is multine in backticks

I have issue with request like (it's hanging):
await db.query(
  `select *
   from posts`
)

but single-line version works (executed immediately):
await db.query(`select * from posts`)

Deno: 1.25.2
library<EMAIL_ADDRESS>

Interesting. Got some similar issues running with the nodejs package. Multiline queries would hang forever.

Updated with STR

Hi @dector and @FrostyTheSouthernSnowman thanks for submitting this issue 👍!
I have a feeling that this is to do with https://github.com/surrealdb/surrealdb/issues/90, where the query string is submitted with \n characters, and is therefore failing to be parsed correctly. This should be fixed in the next beta release, very soon!
I'll check back here when that's released, and hopefully this will be fixed!

@tobiemh I'm preparing PR now. I'm not sure that it'll be accepted but at least we can start discussion. The problem is in the client library as I can see.


Feature request for only converting only certain structs

Sorry, tapped endter before I finished and it published it straight away.
First of all I wanna say that I love this package and its almost what im looking for!
But it might be a good idea to see if we can say only generate ts types for only certain structs.
Example: only for structs which match a name *DTO or *Data.
or another Example: only for structs which have the json tags

If we agree I could even help out and open a pr for this.

Im playing around with the codebase at the moment.
Maying im being a bit daft but based on name it seems a bit hard todo.
Maybe another idea is to leave a comment on each struct that we want to include
something like TsType anywhere in the comment for the ast.Node

I don't know what your current draft implementation looks like of course, but perhaps we can allow users to specify it in their config file instead of putting tags into the Go code?
Of course either can work

yes, so what I have done is added another field in the config yaml (include_struct_comment) where the user can specify a specific string to use.
if the string has been specified, then the user would need to add a new comment line to each and every struct they would want to be transpiled to ts.
I have modified one of the examples in the repo to shocase the feature

I meant in the direction of:
include_symbols:
  - "*Suffix" # a glob with wildcard
  - "SomeConstant"

Just to make sure im not missunderstanding...
And the symbols will be used as "tags" left by the user in the comments of the struct?

I'm proposing that the user, in the config, specifies the structs / consts / types that they want present. Either with their exact names, or matching some regex. So there would be no special comments at all. What are your thoughts on that approach?

yeah i like that approach, but not gunna like im not sure how i can get access to the node name from *ast.GenDecl in package_generator.go

unless you can think of a better place of implementing this?

I'm happy to have a look at it, but it will probably only be in the weekend :/. I imagine we can traverse the tree down a bit to find the name if we have to (if generation takes 1ms longer it's no problem).

ok great. let me know if theres anything else I can do

did you manage to have a look at all @gzuidhof ?

I'm sorry, I haven't gotten around to it yet :(


Fix typo

Fix #51

Codecov Report

Merging #52 (88998cf) into master (5d06693) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           master     #52     +/-   ##
========================================
  Coverage    0.00%   0.00%
========================================
  Files          19       1     -18
  Lines        1349      71   -1278
========================================
+ Misses       1349      71   -1278

Flag
Coverage Δ

unittests
0.00% <ø> (ø)

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

Impacted Files
Coverage Δ

...l_demo_hardware/src/rrbot_system_position_only.cpp

...l_demo_hardware/src/rrbot_system_position_only.cpp

...l_demo_hardware/src/rrbot_system_position_only.cpp

...l_demo_hardware/src/rrbot_system_position_only.cpp

...l_demo_hardware/src/rrbot_system_position_only.cpp

...l_demo_hardware/src/rrbot_system_position_only.cpp

...l_demo_hardware/src/rrbot_system_position_only.cpp

...l_demo_hardware/src/rrbot_system_position_only.cpp

...l_demo_hardware/src/rrbot_system_position_only.cpp

...l_demo_hardware/src/rrbot_system_position_only.cpp

... and 10 more

Continue to review full report at Codecov.

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

Codecov Report

Merging #52 (88998cf) into master (5d06693) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           master     #52     +/-   ##
========================================
  Coverage    0.00%   0.00%
========================================
  Files          19       1     -18
  Lines        1349      71   -1278
========================================
+ Misses       1349      71   -1278

Flag
Coverage Δ

unittests
0.00% <ø> (ø)

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

Impacted Files
Coverage Δ

...l_demo_hardware/src/rrbot_system_position_only.cpp

...l_demo_hardware/src/rrbot_system_position_only.cpp

...l_demo_hardware/src/rrbot_system_position_only.cpp

...l_demo_hardware/src/rrbot_system_position_only.cpp

...l_demo_hardware/src/rrbot_system_position_only.cpp

...l_demo_hardware/src/rrbot_system_position_only.cpp

...l_demo_hardware/src/rrbot_system_position_only.cpp

...l_demo_hardware/src/rrbot_system_position_only.cpp

...l_demo_hardware/src/rrbot_system_position_only.cpp

...l_demo_hardware/src/rrbot_system_position_only.cpp

... and 10 more

Continue to review full report at Codecov.

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


Predict next segment in DASH SegmentTimeline

It has come up many times that <SegmentTimeline> requires the manifest to be refreshed for the player to know about new segments.  (See this issue comment or this list post.)
I don't recall who gave me this idea, and I can't find the conversation on github or in the mailing list, so it may have come up during a CWIP class.  It should be feasible for us to predict what the next segment would look like in a way that is likely to be accurate enough to keep the user from buffering.
For example, if the last segment described in <SegmentTimeline> has a duration of 4096, we could simply assume the next one would be as well.  Or we could be more conservative and assume that if the last N segments had the same duration, the next one would as well.
This would allow us to survive better with DASH content whose suggestedPresentationDelay and minimumUpdatePeriod parameters are not well-tuned.

There is no comment on this since the issue was created 7 years ago, is anyone still interested in this? Otherwise in 7 days the issue will be closed.


Struct usage in Firestore Read/Write operations

I was trying to call Transaction.Set with documentData as struct object but got error:
System.InvalidOperationException: Type TechWiz.Lib.Core.Data.BroadcastMessage has no parameterless constructor
       at Google.Api.Gax.GaxPreconditions.CheckState[T](Boolean condition, String format, T arg0)
       at Google.Cloud.Firestore.Converters.AttributedTypeConverter..ctor(Type targetType, FirestoreDataAttribute attribute)
       at Google.Cloud.Firestore.Converters.AttributedTypeConverter.ForType(Type targetType)
       at Google.Cloud.Firestore.Converters.ConverterCache.CreateConverter(Type targetType)
       at Google.Cloud.Firestore.Converters.ConverterCache.<>c.<GetConverter>b__1_0(Type t)
       at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
       at Google.Cloud.Firestore.Converters.ConverterCache.GetConverter(Type targetType)
       at Google.Cloud.Firestore.ValueSerializer.SerializeMap(Object value)
       at Google.Cloud.Firestore.WriteBatch.Set(DocumentReference documentReference, Object documentData, SetOptions options)
       at Google.Cloud.Firestore.Transaction.Set(DocumentReference documentReference, Object documentData, SetOptions options)

Is it a feature or bug? Error message is confusing

Hmm. I suspect this is because as far as reflection is concerned, structs don't have parameterless constructors. (At least, typically - you can create one in IL, but life starts getting odd then.)
I don't think I've tried using a custom mutable value type in Firestore - I'd typically avoid using those in the first place, to be honest. Note that even if I can get it to work, the struct will be boxed during serialization and deserialization, so in those terms it won't help memory usage.
I'll look into fixing this - but unless it drops out nicely, I'm tempted not to support it (and to document that). Do you really definitely want a mutable value type, with all the oddities that come with that?

Note that even if I can get it to work, the struct will be boxed during serialization and deserialization, so in those terms it won't help memory usage.

I thought this optimization will reduce memory usage and GC load but now it is not obvious that it will help. But anyway I think struct must be supported because I'm sure there are some cases when it would be usefull.
Another approach is just forbid passing struct to any methods so anyone will be warned

I thought this optimization will reduce memory usage and GC load but now it is not obvious that it will help.

It might help for use elsewhere in your code - but not in the Firestore serialization and deserialization steps.

Another approach is just forbid passing struct to any methods so anyone will be warned

Except that a lot of the methods would work for some types, e.g. int or Timestamp. As I say, I'll have a look at how simple it is to implement.

One point to note: this is already supported via a custom converter. See this test code for an example. So even if it turns out to be infeasibly tricky with just attributes, there's a way forward for you.

This is now in the master branch, but not released as a package. Please let me know if you need it urgently, otherwise I'll wait until I'd naturally be doing another release.
(Until then you could use a custom converter, of course.)

It can wait until another release. Big thanks for fix


Enforce scalafmt?

As scalafmt was integrated in #2, should this be enforced on build time? So we'd make sure only properly formatted code makes it into the repo?
I could directly put this into #50 so there's only one ugly formatting PR.

sounds good :+1:

Rebased #50 to be in sync with current develop


Update createHistory.js

When using this library, my coworker and I ran into a problem with the location being stale. After creating history we would need to turn off the event listeners, and then at a later point re-enable the history and event listeners. Unfortunately, when the listen function ran after re-enabling history location was the url of when we disabled history rather than being reflective of the current url. By running getCurrentLocation on each listen the location is always current.

This is definitely not the right thing to do if the history already has other listeners attached.
Why not just blank out the current location when the last listener is removed?

We tried to make the change more along the lines of what you said. Not sure why the browser history "before each" hook for "works" test on Safari 9 is failing though.

@dckesler Do you have any time to work up a failing test that illustrates the stale location problem? That would be invaluable here.

Sure, I'll try and get it done tomorrow.

Any update here?

+1 I'm interested in seeing the tests get added so that this can get merged and published.

Ping! It'd be good to get some sort of regression test just to avoid breaking this again.

Obviously we didn't get around to as soon as I had expected, but this last commit includes tests that fail without our change.

Any update on this? Does anybody know what the document exception 13 means in safari that's causing the tests to be broken? We've been using @dckesler's fork to be able to support react-router inside of several production single-spa applications (https://github.com/CanopyTax/single-spa), and would love to see this merged and published. The fix in this pr solves a problem where react router apps that are mounted, unmounted, and then remounted have a stale location.
Appreciate all that you guys do!

 Unrelated to this PR.

@taion Made the change

Thanks.


Update mangling prefix in Mangling.rst

I think this is out of date, right?

Trying this locally, I get the following - is that expected? Those without leading underscores never finish.
$ swift demangle _T04main5PointC6negateyyF
_T04main5PointC6negateyyF ---> main.Point.negate() -> ()
$ swift demangle __$S4main5PointC6negateyyF
_ ---> _
$ swift demangle _$S4main5PointC6negateyyF
_ ---> _
$ swift demangle $S4main5PointC6negateyyF
^C
$ swift demangle __$s4main5PointC6negateyyF
_ ---> _
$ swift demangle _$s4main5PointC6negateyyF
_ ---> _
$ swift demangle $s4main5PointC6negateyyF
^C

@rintaro Haha, yes.. works now.


Try to use supported codemirror modes

Describe the feature you'd like
I have been documenting Groovy code and noted that, even though codemirror supports this mode, it is not mapped in modeMap. Maybe the codemirror controller should try to use whatever we pass as a markdown codeblock descriptor and fall back to plain text if not found.
Describe the benefits this would bring to existing BookStack users
It would enable with little maintenance all the highlighting modes codemirror provides.
Can the goal of this request already be achieved via other means?
I tried passing text/x-groovy as the MIME type defined in the mode documentation to no avail, so I think this must be implemented at the code level.
Have you searched for an existing open/closed issue?

[X] I have searched for existing issues and none cover my fundemental request

How long have you been using BookStack?
1 to 5 years
Additional context
No response

@gchamon Could do, has been requested in #2057.

Thanks for taking the time to answer me though! Much appreciated!


added Range.toString() to dart:html

Added missing toString() method to Range.
https://developer.mozilla.org/en-US/docs/Web/API/Range/toString

@terrylucas
LGTM.  It would be nice if we had better toStrings in general without needing to hard-code them in templates for specific cases.

I reverted this due to tests failing on dart2js (the build bot turned completely red).
It's not completely clear how the failing tests are affected by this. It could just be bad luck, but we have to get back to a clean state. One of the tests that appear to fail on several browsers is
co19/LayoutTests/fast/filesystem/file-writer-abort-continue_t01
Note that the fix also caused a bunch of tests to start passing, which is great. I hope we can land the fix again soon.
@alan-knight will you try to land it again?
@eukreign if your project relies on this fix, you may want to use commit 226a7e71 until the fix lands again.

What is the latest status on this fix?
So far it looks like my changes where merged, then reverted, than @alan-knight re-submitted a fixed version, then he subsequently reverted that.
Is there anything I can do to help land this?
https://github.com/dart-lang/sdk/commits/master/sdk/lib/html/dart2js/html_dart2js.dart

It caused a number of test problems. I think it needs exception handling for cases where calling the native toString throws, e.g. because the element has been removed, and we're expecting it not to. And I just haven't gotten back to it.

I created an issue to help track this as well. The "merged" status of this pull request is a bit misleading :-D

Thanks, @eukreign


USER STORY: Update.kt Delete Functionality

As an admin, I will want a way to delete a product from the Update.kt page so that I can correct a mistake if the whole product I added is wrong or unneeded.
NOTE: This is for the Update.kt only
Delete product - (soft) delete a product from local DB:

Delete product button should (soft) delete product JSON data from your mongoDB using nestJS.
This is more of an update where a flag isHidden is set to true to hide the product.
Implemented on Update.kt
See nsc-events-android user story #54 https://github.com/SeattleColleges/nsc-events-android/issues/54.

Tasks:

[x]  Add boolean property to Product to track if an item is hidden. Use variable name isHidden. If a creator clicks the delete button there will be an update to the database that sets the isHidden property to true
[x]  Route needs setup on the backend to handle soft deletion.
[ ]  Frontend needs to make the call to backend to fulfill the request
[ ]  Modify Update.kt

There should be a way to delete products (one at a time) from the Update.kt page:

Hi @intisarosman1, I was looking at the current state of the app for the product page and product update page. I just wanted to point a couple things out about how this should be changed:
product update page should be displayed but NOT as it is now:

We can remove everything in the red circle below:

We can replace this with a delete button for each product card under the description:


Questions and thanks

Hi there!
First off wanted to say thank you for your work on this, I think this is a fantastic endeavor!
( please forgive my ignorance when it comes to cryptography -- much of my time is spent as a frontend engineer :~) )
I work at Hiro systems PBC (building tools for the Stacks blockchain) and I really want to build alternatives to our libraries that depend on elliptic. I have a semi-working implementation here, but I am having a bit of a hard time getting a compatibility layer going between our other libraries that use elliptic. Here is an example of something I don't know how to replicate with your library:
  const ecPK = ecurve.keyFromPublic(publicKey, 'hex').getPublic();
  const ephemeralSK = ecurve.genKeyPair();
  const ephemeralPK = Buffer.from(ephemeralSK.getPublic().encodeCompressed());
  const sharedSecret = ephemeralSK.derive(ecPK) as BN;

(taken from these lines)
From debugging and trying to understand the differences, I think there are issues around how elliptic uses/expects data to be in a Point format, or a BigInt. I'm wondering if you might be interested in giving an example of how to take something from noble-secp256k1 and decrypt it with elliptic? Here is a test that I would love to get passing.
Any help or guidance would be greatly appreciated!

Thanks for thanks.
Check out readme — noble-secp has getSharedSecret. So it's getSharedSecret(utils.randomPrivateKey(), ecPK)


Parse Gmail backup

Gmail backup , mbox foramt, 10G
How to parse it?

Can you explain what do you want to do?


Selection of data type for Age at Death in Search page is not working

@Vino-S could you take a look at this - perhaps affected by issue yesterday?

Hi @PatReynolds ,
It seems to be working now. Could you give me the search conditions, please so that I can replicate the issue?

The drop-down list still does not appear when Death is selected, The 'Select Death Age' is visible, but no selection is possible.

Tested on Chrome.
The dropdown/choices work as expected on an android phone.

Pat to check status of pop-ups ?blocked on her computers and phone

Works fine now on Chrome.  Cannot test on phone because google refuses to redicret to url, and instead just searches ....


[Bug]: Redis Connection refused

Module
Core
Testcontainers version
1.17.3
Using the latest Testcontainers version?
Yes
Host OS
Linux
Host Arch
x86
Docker version
Client: Docker Engine - Community
 Cloud integration: v1.0.28
 Version:           20.10.17
 API version:       1.41
 Go version:        go1.17.11
 Git commit:        100c701
 Built:             Mon Jun  6 23:02:57 2022
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.17
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.17.11
  Git commit:       a89b842
  Built:            Mon Jun  6 23:01:03 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.6
  GitCommit:        10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1
 runc:
  Version:          1.1.2
  GitCommit:        v1.1.2-0-ga916309
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

What happened?
Hi All, I am trying to run my integration tests for the redis but I am getting connection refused while querying the container. Following is the way I am doing
public static final DockerImageName REDIS_IMAGE = DockerImageName.parse("redis:5.0");
@Container
public static GenericContainer<?> redis = new GenericContainer<>(REDIS_IMAGE)
        .withFileSystemBind("src/test/resources/dump.rdb", "/var/lib/redis")
        .waitingFor(Wait.forLogMessage(".*Ready to accept connections.*\\n", 1));

Relevant log output
io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: localhost/<IP_ADDRESS>:6379
Caused by: java.net.ConnectException: Connection refused

Additional Information
No response

Not a bug. See https://www.testcontainers.org/features/networking/#exposing-container-ports-to-the-host


refactor: append instead of for in waf override list

Description
Tiny refactor to make code more idiomatic.
Has your change been tested?
Yes, existing tests already cover.
Types of changes
What sort of change does your code introduce/modify?

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.
[ ] This change is using publicly documented (api.cloudflare.com or developers.cloudflare.com) and stable APIs.

thanks for the PR however, as these resources are considered deprecated and won't be getting any updates in the future for this SDK, i'm going to close this one out instead of merging it.
shortly, all legacy WAF methods will be removed now that the terraform provider no longer requires them.


Fix unaligned access to packed struct.

This is not the upstream crate - you want https://github.com/rust-vmm/vhost


new feature

1.Can read InputType class
2.Read Enum as String(sounds weird, but works if using flutter_graphql)

@Zony-Zhao  I haven't yet been able to test it. But I suggest you update the readme, version and changelog also.

It seems that still exist some issues when translating List of primitives. When I have List<String> ,dart says List<Object> is not subtype of List<String>.
Without the '.map<String>((o)=>o.toString()).toList()' d which is I manually added. it throws error
------------------ Original message ------------------
From: "vikram25897";
Sendtime: Friday, Oct 16, 2020 7:09 PM
To: "vikram25897/graphql_to_dart";
Cc<EMAIL_ADDRESS>"Mention";
Subject: Re: [vikram25897/graphql_to_dart] new feature (#3)
@Zony-Zhao  I haven't yet been able to test it. But I suggest you update the readme, version and changelog also.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

@Zony-Zhao Okay I'll look at it and see what can be done.

@vikram25897 @Zony-Zhao
Any updates?


added cli formatting for ls and info

Formatting cli json and added a few flags for the following subcmds:
network ls
service ls
network info
service info
stripped parentheses from create replies
how-to build/test and results at:
https://gist.github.com/1c49146a6243655a1f06
Signed-off-by: Brent Salisbury<EMAIL_ADDRESS>

Thanks @nerdalert, As we discussed, have pulled in your changes into #206 and resolved all the failures. PTAL


New Logo

This one might be easier to fulfill if you/we reconsider the naming/branding of this application. Programmer browser is great because it tells what the application does, but it's not very brandable. It'd be hard to iconize because programmer and browser don't have a lot of iconography aside from maybe globes for browsers, and dollar signs/hashes for programming.
Maybe something like DevSurf or LiteSurf, SideSurf or WebWing?

For the record, I have a designer here, and she's intrigued, but doesn't find the current name easily brandable.

You are right about what you said. However, the name "programmer browser" is a name with high seo success. If you search for "programmer browser" on Google, it appears in the first place, even though it is given a star by so few people. My suggestion is to make a design using the letters P and B. We do not currently have a designer. If we have a good design and log for this application, I will contribute to this project every day.

The new architecture of the project is ready. But its design and logo are still missing. If we can solve this problem, we can make rapid progress. People show interest in this project but refuse to support it because they don't find the logo and design professional enough.

Made a couple of quick mockups on a whim tonight. They can be  modified. I especially like the one with the purple background. https://imgur.com/a/xXcyxYW
They're just mockups. They can be modified.

awesome :tada:

This is very beautiful

Thank you. I'd be happy to build the marketing site for it when you're ready for that too.

Is it the landing page that you are trying to describe by saying a marketing site?

Yeah, like programmer-browser.github.io, or a custom domain or something. Something like this: https://obsidian.md/

We can do Landing Page together. We can make a design similar to this https://vercel.com/

That is nearly EXACTLY the type of thing I was planning! I was hoping to make use of very slowly animated soft gradients. Let me know how you want to approach working on it together and I'm in.

We can talk about it via email<EMAIL_ADDRESS>

@yessGlory17 I have created Pull Request #71 to add the asset to the package and see how it looks.

Looks pretty good to me. I've tested it on my Linux machine as well. Let me know what you think. I'd love to merge it in.

#71 :tada:

#71 tada

Thanks @yessGlory17  I also added another pull request for the icon in the documentation to have the gradient background for the logo so it's not white on white.