Use content store for policy links instead of linkables

This won't build green until https://github.com/alphagov/govuk-content-schemas/pull/563 is merged in.
This is a system that replaces Whitehall using the Publishing API's linkables endpoint to render frontend content. It works by publishing the featured policies as links to the organisations placeholder content item). Then when rendering a page it'll access the content item.
For a painless transition this falls back to linkables if there aren't links in the content item. Once we have republished everything we could remove the fall back.

Thanks for the review @steventux

Thanks @bevanloon
I've updated the approach to memoizing the organisation content, what do you guys think?


Deal with uniqueness constraints

We might need to develop a general approach to dealing with uniqueness constraints, they are quite common. The solution might also solve e.g. generating datetime columns that are monotonously increasing.
One option would be to have the generator class instances be per-table rather than per-column, and hold in memory the values previously generated. This is very powerful, but entirely unperformant once the tables get too big to fit in memory. Another option would be to do a SQL query at every new row creation, but that sounds really slow. We could also hold in memory e.g. the min and max values in that column, but it's a bit of a silly way to say a value will be unique, to say that it will be bigger than any previous value.
Also, further headaches could come from multi-column uniqueness constraints.

FYI I've started work on this, if you're about to, talk to me first.


Handling of emoji| issue#1

The package emoji is being used to replace the emoji with it’s actual English translation.


Fix issue #13

Fixes issue #13.
UniformCartesianMesh now stores a HyperRectangle and the number of cells per dimension, instead of a LinRange tuple. Some UniformCartesianMesh tests were also added.
I checked that UniformCartesianMesh's methods were type-stable in Julia 1.6, but I haven't done the test in Julia 1.7.

Fixes issue #13. UniformCartesianMesh now stores a HyperRectangle and the number of cells per dimension, instead of a LinRange tuple. Some UniformCartesianMesh tests were also added. I checked that UniformCartesianMesh's methods were type-stable in Julia 1.6, but I haven't done the test in Julia 1.7.

I checked now, the methods are type-stable in Julia 1.7


Release Fixes

Description
Minor Release fixes

:tada: This PR is included in version 1.1.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Add support for Rails system tests

Hey @mikeastock what happened with this one? Just ran into this behavior today where Neotest hangs on Rails system tests. Happy to take this PR over if helpful

@igillis-clara yeah feel free to take over. I ended up bailing on neotest and just went back to vim-test

Implemented in #20


New README.md

closes #49

Summary by Sourcery
Update the README.md to enhance its content and presentation, including a new logo, badges, and detailed sections on features, installation, contribution, and support.
Documentation:

Revise the README.md to include a new logo, badges for PyPI version, Python version, documentation, Pylint, and Black.
Add sections detailing key features, installation instructions, contribution guidelines, and support information.

@sourcery-ai review

@sourcery-ai review

@sourcery-ai review


UnboundLocalError: local variable 'nii' referenced before assignment

Description
When following the London course from 2019 (related to testing for #2369 ), I ran into some issues regarding sct_maths.
When I used command:
sct_maths -i t2s_seg.nii.gz -sub "t2s_gmseg.nii.gz" -o t2s_wmseg.nii.gz
I got the following output: https://pastebin.com/GxkeA9VX
Steps to Reproduce

Install SCT <release or git revision and platform, you can use the first lines of output of sct_check_dependencies>

cd ~/sct_course-london19/single_subject/data/t2s

sct_deepseg_sc -i t2s.nii.gz -c t2s -qc ~/qc_singleSubj

sct_deepseg_gm -i t2s.nii.gz -qc ~/qc_singleSubj

sct_maths -i t2s_seg.nii.gz -sub t2s_gmseg.nii.gz -o t2s_wmseg.nii.gz

From what I see, the line:
ValueError: could not convert string to float: 't'
would be cause by the fact that argument -sub is taken as a string rather than an element of a list. I believe a solution would be to set nargs for -sub and -div equal to 1.

@YangHee-Min i've fixed that error in your branch, in this commit 36d50478dacfc29ab12c797c914e6b5d46804369, however i forgot to push those commits before merging this PR https://github.com/neuropoly/spinalcordtoolbox/pull/2371.
I'll take care of it.


Add explicit 1:1 mapping between snapshots & associated backup models.

What happened?
Now that we require assist snapshots to have an associated backup model, we should make the 1:1 mapping between the backup model and the snapshot explicit for both merge & assist backups.
Changes

Don't include merge snapshot in assist snapshots during base selection. This would also need some changes to kopia wrapper.
Return {ManifestEntry, BackupEntry} tuples for merge bases & assist bases during base selection.

Corso Version?
Corso v0.11.1
Where are you running Corso?
NA
Relevant log output
NA

Basic work for separation is done. Some other cleanup can be done to consolidate data fields


Carthage build failed Xcode 10.2.1

Cartfile:
github "RxSwiftCommunity/RxDataSources"

/usr/bin/xcrun xcodebuild -workspace /Users/artemkalinovsky/Documents/ThrowAwayCode/GiphyXplorer/Carthage/Checkouts/RxDataSources/RxDataSources.xcworkspace -scheme RxDataSources-iOS -configuration Release -derivedDataPath /Users/artemkalinovsky/Library/Caches/org.carthage.CarthageKit/DerivedData/10.2.1_10E1001/RxDataSources/1.0.0.beta.1 -sdk iphoneos ONLY_ACTIVE_ARCH=NO CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= CARTHAGE=YES archive -archivePath /var/folders/18/q4dql6dx1jv6dx5qlz766k5c0000gn/T/RxDataSources SKIP_INSTALL=YES GCC_INSTRUMENT_PROGRAM_FLOW_ARCS=NO CLANG_ENABLE_CODE_COVERAGE=NO STRIP_INSTALLED_PRODUCT=NO (launched in /Users/artemkalinovsky/Documents/ThrowAwayCode/GiphyXplorer/Carthage/Checkouts/RxDataSources)User defaults from command line:
    IDEArchivePathOverride = /var/folders/18/q4dql6dx1jv6dx5qlz766k5c0000gn/T/RxDataSources
    IDEDerivedDataPathOverride = /Users/artemkalinovsky/Library/Caches/org.carthage.CarthageKit/DerivedData/10.2.1_10E1001/RxDataSources/1.0.0.beta.1

Build settings from command line:
    CARTHAGE = YES
    CLANG_ENABLE_CODE_COVERAGE = NO
    CODE_SIGN_IDENTITY =
    CODE_SIGNING_REQUIRED = NO
    GCC_INSTRUMENT_PROGRAM_FLOW_ARCS = NO
    ONLY_ACTIVE_ARCH = NO
    SDKROOT = iphoneos12.2
    SKIP_INSTALL = YES
    STRIP_INSTALLED_PRODUCT = NO

note: Using new build system
note: Planning build
note: Constructing build description
Build system information
error: SWIFT_VERSION '3.0' is unsupported, supported versions are: 4.0, 4.2, 5.0. (in target 'RxDataSources-iOS')

Build system information
error: SWIFT_VERSION '3.0' is unsupported, supported versions are: 4.0, 4.2, 5.0. (in target 'RxDataSources-iOS')

** ARCHIVE FAILED *

Aha!
For some reason Carthage fetched ver. 1.0.0 beta :(
I have only github "RxSwiftCommunity/RxDataSources" in my Cartfile

How did you fix this?

I've switched to CocoaPods


Type Check

The way I see it, there are two possible directions to take from here.
The first one, which I think is the best in terms of performance and elegance, would be to perform the  type check as soon as a transaction starts. So, what this means is that the type check is the first task a tx coordinator should perform. So, the tx coord would call materialzer:type_check(Operations). The materialiser should check if for each op, the parameters sent are valid. The current implementation presents two problems for performing a complete check:
it does not embed the type in the key, so at this stage we can not check that the operations also respect that the type is the same as the one stored for that key (if it exists).
it does not include the type in update operations.
The second one (and easiest from the point the implementation is now) would be to perform the type check when generating the downstream operation. This presents the need of reading the key first in order to know its type and then see if the operation is supported and the parameters sent by the update are valid. Checking at this point would be expensive, as maybe many operations could have already generated its downstream. All the process of starting the coordinator, sending correct updates to partitions and then aborting the transaction will be done because of a wrong typed or bad parametrised operation.
I could start by doing the second approach (which could be pretty easy) and then discuss about implementing the first one. I await your comments.

Proposed solution for the new interface (see Deepthi’s thread “Andidote application/materialiser interface”):
If I understand correctly, the new interface will:

create buckets containing objects of the same type. How will this be implemented?
bind an object on its creation to a certain type.
read and update operations will not take as a parameter the object type, as it will be embedded on the object's bucket.

Solution:
Whenever an object is handled inappropriately, a transaction will abort.
Inappropriate handling includes (please contribute to completing this list if I am missing anything):

binding a key to a type that does not exist.
using an undefined method for a given type, e.g. trying to increment a set.
using a defined method's type with incorrect parameters.
issuing an operation on a not bound key.

Remark: binding an already bound key simply generates a new key in a different bucket.
Implementation:
binding a key to a type that does not exist.
issue a type:new() operation at the coordinator. In case of success, continue; otherwise, abort the txn.
using an undefined method for a given type, e.g. trying to increment a set.
using a defined method's type with incorrect parameters.
for these cases, issue a type:operation(params) at the coordinator. Abort if fails.
issuing an operation on a not bound key.
this is the only tricky check, as it requires checking that the object exists, which means contacting the partition that stores the object.
my suggestion is to perform this check optimistically, at downstream generation. It could be too late, but this way we would not incur in significant overhead.
for operations that do not require downstream generation, this check would need to perform a read to the object.
if the case is that the object does not exist (has not been bound), the partition will send an abort message to the coordinator (this is done at the prepare face, when partitions vote on committing or aborting a txn), that will abort the transaction.

On Jun 30, 2015, at 14:27, Alejandro Z. Tomsic<EMAIL_ADDRESS>wrote:
Hello,
I am retaking this thread to propose a solution to the problem.
The solution depends on the issue regarding the interface.
Alejandro Z. Tomsic
<EMAIL_ADDRESS>
On Dec 2, 2014, at 18:00, bieniusa<EMAIL_ADDRESS>wrote:
I think this conceptually the same as we were proposing - on per key base as we don’t have buckets in Antidote.
Annette

On 02.12.2014, at 17:38, marc-shapiro<EMAIL_ADDRESS>wrote:
The way type-check works in Riak 2.0 is (if I understand correctly) that a given bucket can contain only objects of a certain type. I.e. the type of an object can be discovered by querying its bucket. This is a simple implementation of storing type information in metadata associated with the key.
Why not follow their example?
Marc

Le 1 déc. 2014 à 11h55, Marc Shapiro -- at work<EMAIL_ADDRESS>a écrit :

Le 1 déc. 2014 à 10:50, bieniusa<EMAIL_ADDRESS>a écrit :

There can be many implementations of gcounter and therefore of gcounter_incr. We need to map the implementation of the data, brought in from disk, with the right implementation of the code. There is no way the client could predict what is the correct concrete type.

Is this really a problem?
The client does not need to predict anything about the implementation, it just issues an operation.

The end client doesn't care of course, but the key does comes from the client.
The materializer does care, a lot, and has to do be able, either to extract the information from the key received from the client, or has to store the information in some metadata associated with the key.

[...].
Within a DC or even across DCs, I think we can safely assume that we only have one implementation per datatype, no?

We could make this simplifying assumption, but it's a very dangerous one, because it means we can't evolve implementations over time, nor support two implementations of the same abstraction. Reminds me of Excel not being able to open two files that happen to have the same name...
Marc

—
Reply to this email directly or view it on GitHub https://github.com/SyncFree/antidote/issues/84#issuecomment-65260393.

—
Reply to this email directly or view it on GitHub https://github.com/SyncFree/antidote/issues/84#issuecomment-65264545.

Annette, Marc,
The previous message explains how I am going to do it.
Starting now.
Should not take much time.

pull request #142
What I've done:
In the previous email I pointed out the problems that I am going to tackle:

binding a key to a type that does not exist.
using an undefined method for a given type, e.g. trying to increment a set.
using a defined method's type with incorrect parameters.
issuing an operation on a not bound key.

1 and 4) can not be solved right now as that functionality is not still included. Deepthi is working on the new interface, that does. Once the new interface is in place, that must be addressed.
2 and 3) addressed by this solution. I've created a function in the materialiser module which verifies for each operation being issued, if it's correctly typed, by performing that operation on an empty crdt. This function is now called in antidote.erl, before starting a coordinator fsm.

Open question:
Why does this functionality exist in the materializer?  This means that the
operation can exist in the log, but not be applied.  Why are we not
preventing these operations from being inserted into the log?
On Mon, Sep 14, 2015 at 4:05 AM, Alejandro Zlatko Tomsic <
<EMAIL_ADDRESS>wrote:

pull request #142 https://github.com/SyncFree/antidote/pull/142
What I've done:
In the previous email I pointed out the problems that I am going to tackle:

binding a key to a type that does not exist.
using an undefined method for a given type, e.g. trying to increment a
set.
using a defined method's type with incorrect parameters.
issuing an operation on a not bound key.

1 and 4) can not be solved right now as that functionality is not still
included. Deepthi is working on the new interface, that does. Once the new
interface is in place, that must be addressed.
2 and 3) addressed by this solution. I've created a function in the
materialiser module which verifies for each operation being issued, if it's
correctly typed, by performing that operation on an empty crdt. This
function is now called in antidote.erl, before starting a coordinator fsm.
—
Reply to this email directly or view it on GitHub
https://github.com/SyncFree/antidote/issues/84#issuecomment-140040685.

El lunes, 14 de septiembre de 2015, Christopher S. Meiklejohn <
<EMAIL_ADDRESS>escribió:

Open question:
Why does this functionality exist in the materializer?

It exists in the materializer library, and not in the vnode.
It is done there because the type check performs a check which is dependent
on an object type and its operations with their parameters.

This means that the
operation can exist in the log, but not be applied.

No, it can never reach the log, as the check is performed before sending an
operation to a transaction coordinator.

Why are we not
preventing these operations from being inserted into the log?

On Mon, Sep 14, 2015 at 4:05 AM, Alejandro Zlatko Tomsic <
<EMAIL_ADDRESS><javascript:_e(%7B%7D,'cvml','notifications@github.com');>> wrote:

pull request #142 https://github.com/SyncFree/antidote/pull/142
What I've done:
In the previous email I pointed out the problems that I am going to
tackle:

binding a key to a type that does not exist.
using an undefined method for a given type, e.g. trying to increment a
set.
using a defined method's type with incorrect parameters.
issuing an operation on a not bound key.

1 and 4) can not be solved right now as that functionality is not still
included. Deepthi is working on the new interface, that does. Once the
new
interface is in place, that must be addressed.
2 and 3) addressed by this solution. I've created a function in the
materialiser module which verifies for each operation being issued, if
it's
correctly typed, by performing that operation on an empty crdt. This
function is now called in antidote.erl, before starting a coordinator
fsm.
—
Reply to this email directly or view it on GitHub
https://github.com/SyncFree/antidote/issues/84#issuecomment-140040685.

—
Reply to this email directly or view it on GitHub
https://github.com/SyncFree/antidote/issues/84#issuecomment-140135357.

Ah, alright.  Do we need to worry about concurrent transactions over the same key with different data types, given they won't merge correctly?

This case should be solves when we start embedding the type within an object’s key.
Is that part of the interface change deepthi is working on?

On Sep 14, 2015, at 20:20, Christopher S. Meiklejohn<EMAIL_ADDRESS>wrote:
Ah, alright. Do we need to worry about concurrent transactions over the same key with different data types, given they won't merge correctly?
—
Reply to this email directly or view it on GitHub https://github.com/SyncFree/antidote/issues/84#issuecomment-140165535.

:+1:
Embedding the type in the key is a great solution.


Remove unused ast::Expr::Expect

While debugging an issue, I noticed the Expect variant of ast::Expr was unused

Thanks @JRI98!
This is confusing me a bit though, how does e.g. expect fizzBuzz 1 == "1" work if all this code was unused?

From my understanding, this is an old mechanism for handling expect

@Anton-4 we have tests for expect in crates/cli/tests/test-projects/expects/expects.roc so this wouldn't have passed CI if this expr was being used.

@Anton-4 we have tests for expect in crates/cli/tests/test-projects/expects/expects.roc so this wouldn't have passed CI if this expr was being used.

Yeah, I thought the same thing :smile:

Looks like expect_help is currently doing the parsing.


Enhance debugging, new type of breakpoints

I know I am stretching it, but it would be great if the users would be able to create a
breakpoint by clicking the area left to line numbers by making it a few pixels wider
(similar to Visual Studio), also adding a context menu to create custom breakpoint
that occurs when a condition is true, for example (only do a breakpoint if x value > 30)
Also, toggling the breakpoint should be easy as clicking..

you have assert for that:
assert(value <=30 )
On Tue, Dec 29, 2015 at 10:48 AM, RebelliousX<EMAIL_ADDRESS>wrote:

I know I am stretching it, but it would be great if the users would be
able to create a
breakpoint by clicking the area left to line numbers by making it a few
pixels wider
(similar to Visual Studio), also adding a context menu to create custom
breakpoint
that occurs when a condition is true, for example (only do a breakpoint if
x value > 30)
—
Reply to this email directly or view it on GitHub
https://github.com/godotengine/godot/issues/3165.

Hmm, no, it is not like assert. It is like it hit the breakpoint when the condition is met, so I can
step over and see what is going on. AFAIK assert will cause execution to halt, at least from C++
perspective.
It is fair point, but what about a simple visual indicator to toggle the breakpoints?

improving that is very low on list of priorities. Maybe what could be added
easily is a breakpoint insruction, so you can write code such as
if (somecondition):
breakpoint
On Tue, Dec 29, 2015 at 11:18 AM, RebelliousX<EMAIL_ADDRESS>wrote:

Hmm, no, it is not like assert. It is like it hit the breakpoint when the
condition is met, so I can
step over and see what is going on. AFAIK assert will cause execution to
halt, at least from C++
perspective.
It is fair point, but what about a simple visual indicator to toggle the
breakpoints?
—
Reply to this email directly or view it on GitHub
https://github.com/godotengine/godot/issues/3165#issuecomment-167798910.

clicking on a number may set a breakpoint too, I guess that should be asy
On Tue, Dec 29, 2015 at 11:46 AM, Juan Linietsky<EMAIL_ADDRESS>wrote:

improving that is very low on list of priorities. Maybe what could be
added easily is a breakpoint insruction, so you can write code such as
if (somecondition):
breakpoint
On Tue, Dec 29, 2015 at 11:18 AM, RebelliousX<EMAIL_ADDRESS>wrote:

Hmm, no, it is not like assert. It is like it hit the breakpoint when the
condition is met, so I can
step over and see what is going on. AFAIK assert will cause execution to
halt, at least from C++
perspective.
It is fair point, but what about a simple visual indicator to toggle the
breakpoints?
—
Reply to this email directly or view it on GitHub
https://github.com/godotengine/godot/issues/3165#issuecomment-167798910
.

That would be great for both of your ideas :+1:


Pagination bug in loop mode

Check that this is really a bug

[X] I confirm

Reproduction link
https://codesandbox.io/embed/festive-browser-f1ebos?fontsize=14&hidenavigation=1&theme=dark
Bug description
Hey! Here is a bug with pagination in loop mode, when slidesPerView: "auto".
If you click the last bullet and then the third one, which index is 2, swiper don't make loopFix correctly and slide to index 1.
Expected Behavior
No response
Actual Behavior
No response
Swiper version
9.1.0
Platform/Target and Browser Versions
Chrome 110.0.5481.178
Validations

[x] Follow our Code of Conduct
[X] Read the docs.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.
[X] Make sure this is a Swiper issue and not a framework-specific issue

Would you like to open a PR for this bug?

[ ] I'm willing to open a PR

just delete margin-right: 30px;  from .swiper-slide and every thing will be ok

I ran into the same issue today.
I am developing a website for a client, it's currently deployed on Netlify, you can check it up:
https://instalbud.netlify.app/
To replicate the bug:
as you see the first carousel, just try to click between first and second, you will notice that when you go from second to first, the slide content changes correctly, however, the active dot stays where it was.
The issue goes away if I remove the loop prop.
I am using React, here's my carousel setup:
        <Swiper
          className="main-swiper"
          modules={[Navigation, Pagination, Autoplay]}
          slidesPerView={1}
          navigation
          pagination={{
            clickable: true,
          }}
          allowTouchMove={isBelowMd}
          autoplay={{
            delay: 8000,
            disableOnInteraction: false,
          }}
          loop
        >

Also, if you scroll down, there is a Testimonials section where I am also using Swiper to display testimonials in a carousel. Here the issue seems to be even broader, I guess it's due to slidesPerView={2} . You can play around with it, but it doesn't update the bullets correctly going forward as well as backward. As long as an issue with carousel no. 1 is limited to just going from slide 2 to slide 1, here I can't see any obvious pattern, it all messes up 😞
The second carousel setup is the same as the first one, just the slidesPerView prop is 2 instead of 1.

I have same bug.
data-swiper-slide-index props which is dynamically changing bugs pagination.
            <Swiper
              slidesPerView={1}
              // centeredSlides={true}
              loop={true}
              autoplay={{
                delay: 3500,
                disableOnInteraction: false,
              }}
              mousewheel={{
                forceToAxis: true,
              }}
              pagination={{
                clickable: true,
              }}
              navigation={true}
              modules={[Autoplay, Pagination, Navigation, Mousewheel]}
              className="mySwiper"
              speed={1000}
            >

This is my Swiper component setup.

I also have the same issue with pagination as long as loop is true it brakes.

Although this is closed, I'm guessing I have the same issue - loop and slidesperview set to auto / more than one:
https://earth-turtle.com/demos/swiper.php

open page
click the second pagination bullet: carousel moves wrong way, no slide on the left (only two slides showing)
click the first pagination bullet: no slide on the left, active pagination bullet does not update
click the fifth pagination bullet for similar bug.
keep clicking for more similar pagination issues.

In this demo the navigation appears to work, but I had another slider with same setup where navigation and mouse drag kept skipping a few slides, and navigation also wasn't advancing the bullets in correct order.
I have centeredSlides; true, which seems to be part of the issue, but even with centeredSlides commented out, the pagination bullets break after a while of clicking.
The pagination does not seem to know if it should go left or right when clicking the pagination bullet - sometimes from slide 5, instead of going one step right to slide 6, it'll go multiple steps left to slide 6, and leaves out the left-hand slide completely.
using  Swiper 9.4.1

I also found the same error when enabling the loop. I am attaching the sandbox example try to click the fourth bullet
https://codesandbox.io/p/sandbox/8kx0sg?file=%2Fsrc%2FApp.jsx


Udtaded work

updated a footer on the read me file
created a bug-fixes-typo

For my final project assignment


.flowconfig all=true option is being ignored

I have project with an src/ folder containing type-annotated javascript, and a lib/ folder. In the project's root directory I have a .flowconfig file with the all=true option in the [options] section, so that I don't have to specify the //@flow directive in the beginning of each file. And while this works when type-checking with flow, flow-remove-types still requires the //@flow directive in order to parse flow javascript files.
I'm using flow-remove-types like this: flow-remove-types -d lib/ src/, executed from the project's root folder.

Sorry for the duplicate issue, github gave an HTTP 500 after posting this and I didn't realize it had actually succeeded. Feel free to delete this issue and please discuss in #44.


Autogenerated tags include tags already present on image

Basically the title. If I use the interrogator to infer the tags for an image, the tag list shown from the interrogator includes tags that are already present on the image.
I'm not sure if this is intentional or not, but I hope not. I generally use the interrogator to flesh out a already-tagged dataset, and showing tags that are already present makes this a lot harder.

Actually, this seems to be how the "All Tags" view works too. It'd be nice if that listing also excluded tags already resent on the image as well.

Now the generation of tags completely replaces the already existing tags on the image. Do you want new tags to simply be added to existing ones?

Ok, I think this is mostly just a mismatchin how I think of the UI, versus how you've planned it:

The middle column are tags for the current image. The right-hand column is, in my idea, tags that could be applied to the current image. Critically, this should not include any tags that are already on the image.
At least for the autotagging context, having a tag available to add to the image when it's already present on the image doesn't really make sense. For the all-tags view, I think the all-tags view shouldn't show a tag that is already on the image, but I'm less attached to that idea.

Okay, I'll add a feature to only show missing tags. Regarding the list of all tags, I did not pay much attention to it, but as it turned out, in the current implementation it is too buggy and incompatible with the changes that were made to the data set. Therefore, it will have to be completely rewritten, and I will try to add the function of hiding existing tags on the image as a separate setting.

Check the latest commits, I added a setting to display the result. Also, in theory, there should be no problems with the DeduplicateTags function now.

Implemented in 2.0.1

Woot!


feat: Radix UI documents view

Please check if the PR fulfills these requirements

[x] The commit message follows our guidelines
[x] Tests for the changes have been added (for bug fixes/features)
[ ] Docs have been added / updated (for bug fixes / features)

What kind of change does this PR introduce?
Migrates styles to radix ui

@kacperadler @mkleszcz I have changed the styles of the components a bit, could you review them again?

@kacperadler @mkleszcz I have changed the styles of the components a bit, could you review them again?

@bielsky0 Now looks way better! The separator is missing in header but when you use PageLayout and PageHeadline later on it will be fixed


python 3.6 tests break with bottleneck installed

Installing 3.6 environment (from the ci path in xarray): tests pass on master
Then installing bottleneck: 3 tests in test_dataarray.py fail on master
I can debug further unless anyone has a view

@MaximilianR - can you try testing with this branch: https://github.com/pydata/xarray/pull/1278
I'm guessing the errors you're getting are related.

Fixed


Blog Typo

In https://zeit.co/blog/next#data-fetching-is-up-to-the-developer, export class exports React.Component { should be export default class extends React.Component {.

+1
Also I'm not sure if I'm doing something wrong. But when I ran the example ( with correction ) Node v.7.0 was complaining that fetch wasn't defined.
My solution was to import axios and use that instead of fetch. I'd be happy to open a PR for this in the examples folder!
import React from 'react'
import axios from 'axios'

export default class extends React.Component {

  static async getInitialProps () {
    const response = await axios('https://api.company.com/user/123')
    return { username: response.data }
  }

}

Yeah, same problem here @clintonhalpin, I think Node.js doesn't support natively fetch yet. A work around would be to install and import the package isomorphic-fetch.

next.js should absolutely include the isomorphic-fetch polyfill!

I was missing the isomorphic-fetch import. Thank you. We actually use that extensively for www.zeit.co

We'll update the blog post

Anyway, great job with Next.js, you and Zeit's team are brillant @rauchg.

The blog was updated, I'm closing this issue.


[BUG] Invalid format of value when trying to instantiate a generic implementation of Microsoft.Rest.ServiceClient

I'm trying to instantiate an generic implementation of class which inherits from ServiceClient class.
Message:
Test method Datora.Proxies.SAPServiceLayer.Client.Test.EntityUnit.Query threw exception:
System.FormatException: The format of value 'Datora.Proxies.SAPServiceLayer.Client.SAPSLEntityProxy`1[[Datora.Proxies.SAPServiceLayer.Entities.BusinessPartner, Datora.Proxies.SAPServiceLayer.Entities, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=0020583cc5375c52]]' is invalid.
Stack Trace:
HeaderUtilities.CheckValidToken(String value, String parameterName) ProductHeaderValue.ctor(String name, String version) ServiceClient'1.InitializeHttpClient(HttpClientHandler httpClientHandler, DelegatingHandler[] handlers) ServiceClient'1.ctor(HttpClientHandler rootHandler, DelegatingHandler[] handlers) ServiceClient'1.ctor() ProxyBase.ctor() line 24 ProxyBase.ctor(IBasicClientConfigEntry _configuration) line 28 SAPSLProxyBase.ctor(SAPSLClientConfig _config) line 17 SAPSLEntityProxy'1.ctor(SAPSLClientConfig _config) line 15 SAPSLClient.GetEntityProxy[TEntity]() line 43 EntityUnit.Query() line 30 ThreadOperations.ExecuteWithAbortSafety(Action action)
I could see in ServiceClient source code that in InitializeHttpClient method the entry type name is used to fill ProductInfoHeaderValue instance which will be added as UserAgent client header.
What would be the issue here ? The length of full type name ? Is there a way to avoid this kind of issue without giving up a generic approach ?

Label prediction was below confidence level 0.6 for Model:ServiceLabels: 'AutoRest Runtime:0.21352017,Storage:0.111607164,Azure.Core:0.102790676'

Hi @humbertosantiago.   Would you please be so kind as to provide the name and version of the Azure SDK package that you're using?

Hi @jsquire , I'm using the package Microsoft.Rest.ClientRuntime 3.0.3.

@xboxeer, @m-nash:  The class in question appears to be related to the mgmtcommon area in the v3 codegen.   Would you please be so kind as to take a look and offer your thoughts?

Thank you, @humbertosantiago.   I've looped in the team members best able to assist.

Hi @humbertosantiago , this package will deprecate from this Sept, could you please try our latest Track2 SDK.
You could get start with: https://github.com/Azure/azure-sdk-for-net/blob/main/doc/dev/mgmt_quickstart.md


[api] Create feed api

feed timeline api

instagram (https://www.instagram.com/aimyon36/)
youtube (https://www.youtube.com/user/aimyong?themeRefresh=1)
twitter (https://twitter.com/aimyonGtter)
twitter (staff) (https://twitter.com/AimyongStaff)
tictok (https://www.tiktok.com/@aimyon_official)
facebook (https://www.facebook.com/aimyong)

Init done


FT: Add azure type for replication information

Add azure type for replication information.
Add support for Azure user metadata when
replicating a regular put object operation.

PR has been updated. Reviewers, please be cautious.

@ironman-machine r+

Hello @rahulreddy
"r+": Success

There is already a pending pull request on the same branch

@ironman-machine r- r+

There is already a pending pull request on the same branch

Hello @rahulreddy
"r-": Success
"r+": Success

:hourglass: PR is now pending. CI build url: http://ci.ironmann.io/gh/scality/Integration/18338

:sunny: :+1: circleCI test succeeded!


Centralized Relay - Optimization

Review currently centralized relay architecture to improve stability, reliability and security for the relay.

Regarding the stability and reliability, most of the unstable parts i.e. syncing between websockets and regular RPC calls have been handled to certain extent. The areas where we can make some modifications are as:

Currently the locks/limitation on number of concurrent transaction is limited in the inner level i.e. while executing transaction but not on the upper level where they are scheduled. Limitation on scheduling can be implemented to hold less txns in memory and pass through db when processing slow.
Add some mechanism to slow processing of chains in case of constant error with RPC or network congestion issues until the scenario becomes normal with periodic retries.
For certain errors, re-trying may not make send for txns. For such txn with specified errors, don't retry at all.
Need to work on observability (metrics/logs) to track and react on underlying issues if any.
As a general convention, we should stick to single source either websocket or general RPC or grpc whichever is available, for less complexity in the application while getting events from the chain.

For security part, they have been covered via earlier ticket at https://github.com/icon-project/ICON-Projects-Planning/discussions/426

Relayer basic Flow

Regarding the stability and reliability, most of the unstable parts i.e. syncing between websockets and regular RPC calls have been handled to certain extent. The areas where we can make some modifications are as:

Currently the locks/limitation on number of concurrent transaction is limited in the inner level i.e. while executing transaction but not on the upper level where they are scheduled. Limitation on scheduling can be implemented to hold less txns in memory and pass through db when processing slow.
Add some mechanism to slow processing of chains in case of constant error with RPC or network congestion issues until the scenario becomes normal with periodic retries.
For certain errors, re-trying may not make send for txns. For such txn with specified errors, don't retry at all.
Need to work on observability (metrics/logs) to track and react on underlying issues if any.
As a general convention, we should stick to single source either websocket or general RPC or grpc whichever is available, for less complexity in the application while getting events from the chain.

For security part, they have been covered via earlier ticket at https://github.com/icon-project/ICON-Projects-Planning/discussions/426

Relayer basic Flow

Implement signal handling for cleaner exit,resource cleanup and reload if required.

This is already implemented from the start.

For certain errors, re-trying may not make sense for txns. For such txn with specified errors, don't retry at all.

Very tricky to get this done, sometime it leads to false postive. retrying make sense and does not hurts retrying.

Need to work on observability (metrics/logs) to track and react on underlying issues if any.

I guess this is should be on priority as we're going for monitoring solutions soon, other than that it's battle tested and works very well in current situation.

In the case of signal handling, the resources are not cleaned up properly as we get the socket issue during crashes.
For the case of aborting retry, it should be only for very well known cases and retrying would block the processing so it will have an impact when the processing queues are large.

In the case of signal handling, the resources are not cleaned up properly as we get the socket issue during crashes.

It's very well handled on production use case.
Also this is tricky situation, we have cli in place where it connects to it.
It may lead to race condition.

How can the same code work differently in different scenarios ? Also the server resource in not properly cleaned up after crash I am not sure how it would lead to race condition after the program itself crashes . Did if I miss something ?

How can the same code work differently in different scenarios ? Also the server resource in not properly cleaned up after crash I am not sure how it would lead to race condition after the program itself crashes . Did if I miss something ?

Yeah, service is responsible for cleaning the lingering resources.
There is service descriptor on our installation wiki guide.

In that case i think we should remove the below line from wiki and make it mandatory for everyone to run the relayer as service defined in the wiki otherwise the resource cleanup will be an issue. .
This is only required if you want to run the relay as a service.

I have already stated that on point 6 already.

This step will guide you through the configurating the relay to run as a service on the system using systemd init system.
This is only required if you want to run the relay as a service.

Either we should mark the lack of resource cleanup as a feature and add in documents appropriately for other deployments or we should fix the resource cleanup in the relayer itself and not relaying on deployer scripts.

As per internal discussion, the relayer is mostly stable and the above fixes while helpful might not solve the actual issue. So, it is paused for now and will resume once the monitoring has been implemented with in-depth logs analysis.


Pipe operator

Closes #406
This is currently based on my other pull request 876, i can remove that if needed.

Closes #406

None of the comment are outdated (yet !)
I'd advise looking at tests/typ/pipe.typ to understand the feature easily.
last comment is the most important one.
Looking at the example and the people interested I hope you see know the usefulness of this feature !
Comments / thoughts / reviews ?

As discussed on Discord on multiple occasions, I do not think that the pipe operator brings many benefits to Typst. The argument in favor of it is that it can reduce nesting and the amount of parenthesis, but this is typically already possible with a show: .. rule (at least for content, which is typically needed). The fact that the pipe operator would only work in code contexts (as it is a binary expression and surrounded by space) and not directly in markup also reduces its applicability. All in all, I think it adds to much complexity (both syntactical and semantical) to be worth it.


[Bug]: Netlify Gatsby plugin causes build failures on Gatsby 3.4 site

Summary
On an existing gatsby site which previously deployed with no issues, i'm now seeing the netlify-plugin-gatsby plugin being installed during build & causing the build to fail due to the line:
import dotenv from 'dotenv'; in gatsby-config.js
which causes the error
SyntaxError: Cannot use import statement outside a module
This site had previously been untouched for an extended period of time, with regular builds running successfully.
Steps to reproduce
Build a gatsby 3.4.0 site
Error during most recent builds:

Previous successful build at the same point:

A link to a reproduction repository
No response
Plugin version
3.5.1
More information about your build

[ ] I am building using the CLI
[ ] I am building using file-based configuration (netlify.toml)

What OS are you using?
None
Your netlify.toml file

`netlify.toml`
# Paste content of your `netlify.toml` file here

Configuration

`gatsby-config.js` and options
# Paste content of your `gatsby-config.js` file, and/or command line options here. Check there is no private info in there.

Environment

Environment
# Paste output from `npx envinfo` here.

Gatsby info

gatsby info
# Paste output from `gatsby info` here.

Your _redirects file

`_redirects`
# Paste content of your `_redirects` file here

Builds logs (or link to your logs)

Failed Build Log
3:57:39 PM: build-image version: 9495be345de05eb8e91837e5d92c5afd0dbd65f6 (focal)
3:57:39 PM: buildbot version: 9495be345de05eb8e91837e5d92c5afd0dbd65f6
3:57:39 PM: Fetching cached dependencies
3:57:39 PM: Starting to download cache of 215.1MB
3:57:40 PM: Finished downloading cache in 723ms
3:57:40 PM: Starting to extract cache
3:57:42 PM: Finished extracting cache in 2.121s
3:57:42 PM: Finished fetching cache in 2.906s
3:57:42 PM: Starting to prepare the repo for build
3:57:42 PM: Preparing Git Reference refs/heads/master
3:57:43 PM: Parsing package.json dependencies
3:57:44 PM: Different publish path detected, going to use the one specified in the Netlify configuration file: 'gatsby/public' versus 'public' in the Netlify UI
3:57:44 PM: Starting build script
3:57:44 PM: Installing dependencies
3:57:44 PM: Python version set to 2.7
3:57:44 PM: Started restoring cached Node.js version
3:57:45 PM: Finished restoring cached Node.js version
3:57:45 PM: v12.18.0 is already installed.
3:57:45 PM: Now using node v12.18.0 (npm v6.14.4)
3:57:45 PM: Started restoring cached build plugins
3:57:45 PM: Finished restoring cached build plugins
3:57:46 PM: Attempting Ruby version 2.7.1, read from environment
3:57:46 PM: Started restoring cached Ruby version
3:57:46 PM: Finished restoring cached Ruby version
3:57:46 PM: Using Ruby version 2.7.1
3:57:46 PM: Using PHP version 8.0
3:57:46 PM: Started restoring cached corepack dependencies
3:57:46 PM: Finished restoring cached corepack dependencies
3:57:46 PM: No npm workspaces detected
3:57:46 PM: Started restoring cached node modules
3:57:46 PM: Finished restoring cached node modules
3:57:46 PM: Bypassing sha validation. Running pre & post install scripts
3:57:46 PM: Installing npm packages using npm version 6.14.4
3:57:53 PM: npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.
3:57:53 PM: npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.
3:57:53 PM: npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.
3:57:53 PM: npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.
3:57:53 PM: npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.
3:57:53 PM: npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>|| >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta but none is installed. You must install peer dependencies yourself.
3:57:53 PM: npm WARN optional SKIPPING OPTIONAL DEPENDENCY<EMAIL_ADDRESS>(node_modules/fsevents):
3:57:53 PM: npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for<EMAIL_ADDRESS>wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
3:57:53 PM: npm WARN optional SKIPPING OPTIONAL DEPENDENCY<EMAIL_ADDRESS>(node_modules/webpack-dev-server/node_modules/fsevents):
3:57:53 PM: npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for<EMAIL_ADDRESS>wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
3:57:53 PM: audited 2517 packages in 6.378s
3:57:54 PM: 221 packages are looking for funding
3:57:54 PM:   run `npm fund` for details
3:57:54 PM: found 329 vulnerabilities (10 low, 133 moderate, 151 high, 35 critical)
3:57:54 PM:   run `npm audit fix` to fix them, or `npm audit` for details
3:57:54 PM: npm packages installed
3:57:54 PM: Started restoring cached go cache
3:57:54 PM: Finished restoring cached go cache
3:57:54 PM: Installing Go version 1.14.4 (requested 1.14.4)
3:57:57 PM: go version go1.14.4 linux/amd64
3:57:58 PM: Detected 1 framework(s)
3:57:58 PM: "gatsby" at version "3.4.0"
3:57:58 PM: Installing missing commands
3:57:58 PM: Verify run directory
3:57:58 PM: Section completed: initializing
3:57:59 PM:
3:57:59 PM:   Netlify Build
3:57:59 PM: ────────────────────────────────────────────────────────────────
3:57:59 PM:
3:57:59 PM: ❯ Version
3:57:59 PM:   @netlify/build 29.5.4
3:57:59 PM:
3:57:59 PM: ❯ Flags
3:57:59 PM:   baseRelDir: true
3:57:59 PM:   buildId: 63e47d32e198733cc805d7b5
3:57:59 PM:   deployId: 63e47d3d97f34300088337ee
3:57:59 PM:
3:57:59 PM: ❯ Current directory
3:57:59 PM:   /opt/build/repo/gatsby
3:57:59 PM:
3:57:59 PM: ❯ Config file
3:57:59 PM:   No config file was defined: using default values.
3:57:59 PM:
3:57:59 PM: ❯ Context
3:57:59 PM:   production
3:57:59 PM:
3:57:59 PM: ❯ Installing plugins
3:57:59 PM:    -<EMAIL_ADDRESS>3:58:13 PM:
3:58:13 PM: ❯ Loading plugins
3:58:13 PM:    -<EMAIL_ADDRESS>from undefined
3:58:14 PM:
3:58:14 PM:   1. @netlify/plugin-gatsby (onPreBuild event)
3:58:14 PM: ────────────────────────────────────────────────────────────────
3:58:14 PM:
3:58:14 PM: No Gatsby cache found. Building fresh.
3:58:14 PM:
3:58:14 PM:   Plugin "@netlify/plugin-gatsby" failed
3:58:14 PM: ────────────────────────────────────────────────────────────────
3:58:14 PM:
3:58:14 PM:   Error message
3:58:14 PM:   /opt/build/repo/gatsby/gatsby-config.js:1
3:58:14 PM:   import dotenv from 'dotenv';
3:58:14 PM:   ^^^^^^
3:58:14 PM:
3:58:14 PM:   SyntaxError: Cannot use import statement outside a module
3:58:14 PM:
3:58:14 PM:   Plugin details
3:58:14 PM:   Package:        @netlify/plugin-gatsby
3:58:14 PM:   Version:        3.5.1
3:58:14 PM:   Repository:     git+https://github.com/netlify/netlify-plugin-gatsby.git
3:58:14 PM:   npm link:       https://www.npmjs.com/package/@netlify/plugin-gatsby
3:58:14 PM:   Report issues:  https://github.com/netlify/netlify-plugin-gatsby/issues
3:58:15 PM: Failed during stage 'building site': Build script returned non-zero exit code: 2 (https://ntl.fyi/exit-code-2)
3:58:14 PM:
3:58:14 PM:   Error location
3:58:14 PM:   In "onPreBuild" event in "@netlify/plugin-gatsby" from undefined
3:58:14 PM:
3:58:14 PM:   Resolved config
3:58:14 PM:   build:
3:58:14 PM:     base: /opt/build/repo/gatsby
3:58:14 PM:     command: npm run build
3:58:14 PM:     commandOrigin: ui
3:58:14 PM:     environment:
3:58:14 PM:       - INCOMING_HOOK_BODY
3:58:14 PM:       - INCOMING_HOOK_TITLE
3:58:14 PM:       - INCOMING_HOOK_URL
3:58:14 PM:     publish: /opt/build/repo/gatsby/public
3:58:14 PM:     publishOrigin: ui
3:58:14 PM:   plugins:
3:58:14 PM:     - inputs: {}
3:58:14 PM:       package: '@netlify/plugin-gatsby'
3:58:15 PM: Caching artifacts
3:58:15 PM: Started saving node modules
3:58:15 PM: Finished saving node modules
3:58:15 PM: Started saving build plugins
3:58:15 PM: Finished saving build plugins
3:58:15 PM: Started saving corepack cache
3:58:15 PM: Finished saving corepack cache
3:58:15 PM: Started saving pip cache
3:58:15 PM: Finished saving pip cache
3:58:15 PM: Started saving emacs cask dependencies
3:58:15 PM: Finished saving emacs cask dependencies
3:58:15 PM: Started saving maven dependencies
3:58:15 PM: Finished saving maven dependencies
3:58:15 PM: Started saving boot dependencies
3:58:15 PM: Finished saving boot dependencies
3:58:15 PM: Started saving rust rustup cache
3:58:15 PM: Finished saving rust rustup cache
3:58:15 PM: Started saving go dependencies
3:58:15 PM: Finished saving go dependencies
3:58:15 PM: Build failed due to a user error: Build script returned non-zero exit code: 2
3:58:15 PM: Failing build: Failed to build site
3:58:15 PM: Finished processing build request in 36.452s

Successful Build Log
10:24:01 AM: Build ready to start
10:24:02 AM: build-image version: 1ca34a93198b041e44214013884c57d146a23fed (focal)
10:24:02 AM: build-image tag: v4.16.4
10:24:02 AM: buildbot version: 2577a19e1559072eeb7a6727cec389b63b90401c
10:24:02 AM: Fetching cached dependencies
10:24:02 AM: Starting to download cache of 213.5MB
10:24:05 AM: Finished downloading cache in 2.177s
10:24:05 AM: Starting to extract cache
10:24:06 AM: Finished extracting cache in 1.855s
10:24:06 AM: Finished fetching cache in 4.104s
10:24:06 AM: Starting to prepare the repo for build
10:24:07 AM: Preparing Git Reference refs/heads/master
10:24:07 AM: Parsing package.json dependencies
10:24:08 AM: Different publish path detected, going to use the one specified in the Netlify configuration file: 'gatsby/public' versus 'public' in the Netlify UI
10:24:08 AM: Starting build script
10:24:08 AM: Installing dependencies
10:24:08 AM: Python version set to 2.7
10:24:08 AM: Started restoring cached Node.js version
10:24:09 AM: Finished restoring cached Node.js version
10:24:10 AM: v12.18.0 is already installed.
10:24:10 AM: Now using node v12.18.0 (npm v6.14.4)
10:24:10 AM: Started restoring cached build plugins
10:24:10 AM: Finished restoring cached build plugins
10:24:10 AM: Attempting Ruby version 2.7.1, read from environment
10:24:10 AM: Started restoring cached Ruby version
10:24:10 AM: Finished restoring cached Ruby version
10:24:10 AM: Using Ruby version 2.7.1
10:24:10 AM: Using PHP version 8.0
10:24:10 AM: Started restoring cached corepack dependencies
10:24:10 AM: mv: cannot move '/opt/build/cache/.node/corepack' to '/opt/buildhome/.node/corepack': No such file or directory
10:24:10 AM: Finished restoring cached corepack dependencies
10:24:10 AM: No npm workspaces detected
10:24:10 AM: Started restoring cached node modules
10:24:10 AM: Finished restoring cached node modules
10:24:10 AM: Bypassing sha validation. Running pre & post install scripts
10:24:11 AM: Installing npm packages using npm version 6.14.4
10:24:17 AM: npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.
10:24:17 AM: npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.
10:24:17 AM: npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.
10:24:17 AM: npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.
10:24:17 AM: npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.
10:24:17 AM: npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>|| >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta but none is installed. You must install peer dependencies yourself.
10:24:17 AM: npm WARN optional SKIPPING OPTIONAL DEPENDENCY<EMAIL_ADDRESS>(node_modules/webpack-dev-server/node_modules/fsevents):
10:24:17 AM: npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for<EMAIL_ADDRESS>wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
10:24:17 AM: npm WARN optional SKIPPING OPTIONAL DEPENDENCY<EMAIL_ADDRESS>(node_modules/fsevents):
10:24:17 AM: npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for<EMAIL_ADDRESS>wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
10:24:17 AM: audited 2517 packages in 6.319s
10:24:18 AM: 221 packages are looking for funding
10:24:18 AM:   run `npm fund` for details
10:24:18 AM: found 322 vulnerabilities (10 low, 131 moderate, 146 high, 35 critical)
10:24:18 AM:   run `npm audit fix` to fix them, or `npm audit` for details
10:24:18 AM: npm packages installed
10:24:18 AM: Started restoring cached go cache
10:24:18 AM: Finished restoring cached go cache
10:24:18 AM: Installing Go version 1.14.4 (requested 1.14.4)
10:24:22 AM: unset GOOS;
10:24:22 AM: unset GOARCH;
10:24:22 AM: export GOROOT='/opt/buildhome/.gimme/versions/go1.14.4.linux.amd64';
10:24:22 AM: export PATH="/opt/buildhome/.gimme/versions/go1.14.4.linux.amd64/bin:${PATH}";
10:24:22 AM: go version >&2;
10:24:22 AM: export GIMME_ENV="/opt/buildhome/.gimme/env/go1.14.4.linux.amd64.env"
10:24:22 AM: go version go1.14.4 linux/amd64
10:24:22 AM: Detected 1 framework(s)
10:24:22 AM: "gatsby" at version "3.4.0"
10:24:22 AM: Installing missing commands
10:24:22 AM: Verify run directory
10:24:22 AM: Section completed: initializing
10:24:23 AM:
10:24:23 AM:   Netlify Build
10:24:23 AM: ────────────────────────────────────────────────────────────────
10:24:23 AM:
10:24:23 AM: ❯ Version
10:24:23 AM:   @netlify/build 29.5.1
10:24:23 AM:
10:24:23 AM: ❯ Flags
10:24:23 AM:   baseRelDir: true
10:24:23 AM:   buildId: 63d068911279db538b5362b3
10:24:23 AM:   deployId: 63d068911ce62d000844de55
10:24:23 AM:
10:24:23 AM: ❯ Current directory
10:24:23 AM:   /opt/build/repo/gatsby
10:24:23 AM:
10:24:23 AM: ❯ Config file
10:24:23 AM:   No config file was defined: using default values.
10:24:23 AM:
10:24:23 AM: ❯ Context
10:24:23 AM:   production
10:24:23 AM:
10:24:23 AM:   1. Build command from Netlify app
10:24:23 AM: ────────────────────────────────────────────────────────────────
10:24:23 AM:
10:24:23 AM: $ npm run build
10:24:24 AM: ><EMAIL_ADDRESS>build /opt/build/repo/gatsby
10:24:24 AM: > cross-env NODE_OPTIONS="-r esm" gatsby build
10:24:29 AM: success open and validate gatsby-configs - 0.041s
10:24:30 AM: success load plugins - 1.203s
10:24:30 AM: success onPreInit - 0.022s
10:24:30 AM: success initialize cache - 0.003s
10:24:30 AM: success copy gatsby files - 0.036s
10:24:30 AM: warning [sanity] Using `watchMode` when not in develop mode might prevent your build from completing
10:24:30 AM: info [sanity] Fetching remote GraphQL schema
10:24:31 AM: info [sanity] Transforming to Gatsby-compatible GraphQL SDL
10:24:31 AM: info [sanity] Stitching GraphQL schemas from SDL
10:24:31 AM: success onPreBootstrap - 0.319s
10:24:31 AM: success createSchemaCustomization - 0.010s
10:24:31 AM: info [sanity] Fetching export stream for dataset
10:24:34 AM: info [sanity] Watch mode enabled, starting a listener
10:24:35 AM: info [sanity] Done! Exported 2190 documents.
10:24:35 AM: success Checking for changed pages - 0.000s
10:24:35 AM: success source and transform nodes - 3.811s
10:24:35 AM: success building schema - 0.672s
10:24:36 AM: success createPages - 0.101s
10:24:36 AM: success createPagesStatefully - 0.051s
10:24:36 AM: info Total nodes: 2302, SitePage nodes: 72 (use --verbose for breakdown)
10:24:36 AM: success Checking for changed pages - 0.000s
10:24:36 AM: success update schema - 0.126s
10:24:36 AM: success onPreExtractQueries - 0.002s
10:24:37 AM: success extract queries from components - 1.462s
10:24:37 AM: success write out redirect data - 0.001s
10:24:37 AM: success Build manifest and related icons - 0.033s
10:24:37 AM: success onPostBootstrap - 0.034s
10:24:37 AM: info bootstrap finished - 13.668s
10:24:37 AM: success run static queries - 0.007s - 1/1 143.13/s
10:24:38 AM: success run page queries - 0.522s - 71/71 135.98/s
10:24:38 AM: success write out requires - 0.003s
10:24:38 AM: STAGE::  build-javascript
10:24:39 AM: warning Browserslist: caniuse-lite is outdated. Please run:
10:24:39 AM: npx browserslist@latest --update-db
10:24:39 AM: Why you should do it regularly:
10:24:39 AM: https://github.com/browserslist/browserslist#browsers-data-updating
10:24:54 AM: Browserslist: caniuse-lite is outdated. Please run:
10:24:54 AM: npx browserslist@latest --update-db
10:24:54 AM: Why you should do it regularly:
10:24:54 AM: https://github.com/browserslist/browserslist#browsers-data-updating
10:24:57 AM: warning Css Minimizer Plugin: cssnano: /opt/build/repo/gatsby/styles.6513ce135ed6876845a3.css:613:5: Error in parsing SVG: Non-whitespace before first tag.
10:24:57 AM: Line: 0
10:24:57 AM: Column: 1
10:24:57 AM: Char: d
10:24:57 AM: warning Css Minimizer Plugin: cssnano: /opt/build/repo/gatsby/styles.6513ce135ed6876845a3.css:613:5: Error in parsing SVG: Non-whitespace before first tag.
10:24:57 AM: Line: 0
10:24:57 AM: Column: 1
10:24:57 AM: Char: d
10:24:57 AM: warning Css Minimizer Plugin: cssnano: /opt/build/repo/gatsby/styles.6513ce135ed6876845a3.css:613:5: Error in parsing SVG: Non-whitespace before first tag.
10:24:57 AM: Line: 0
10:24:57 AM: Column: 1
10:24:57 AM: Char: d
10:24:57 AM: success Building production JavaScript and CSS bundles - 18.881s
10:24:57 AM: success Rewriting compilation hashes - 0.001s
10:24:57 AM: STAGE::  build-html
10:25:00 AM: success Building HTML renderer - 3.179s
10:25:01 AM: success Building static HTML for pages - 1.017s - 71/71 69.82/s
10:25:01 AM: success onPostBuild - 0.027s
10:25:01 AM: info Done building in 37.599843229 sec
10:25:02 AM:
10:25:02 AM: (build.command completed in 38.3s)
10:25:02 AM:
10:25:02 AM:   2. Deploy site
10:25:02 AM: ────────────────────────────────────────────────────────────────
10:25:02 AM:
10:25:02 AM: Starting to deploy site from 'gatsby/public'
10:25:02 AM: Calculating files to upload
10:25:02 AM: 0 new files to upload
10:25:02 AM: 0 new functions to upload
10:25:02 AM: Section completed: deploying
10:25:02 AM: Site deploy was successfully initiated
10:25:02 AM:
10:25:02 AM: (Deploy site completed in 378ms)
10:25:02 AM:
10:25:02 AM:   Netlify Build Complete
10:25:02 AM: ────────────────────────────────────────────────────────────────
10:25:02 AM:
10:25:02 AM: (Netlify Build completed in 38.7s)
10:25:02 AM: Caching artifacts
10:25:02 AM: Started saving node modules
10:25:02 AM: Finished saving node modules
10:25:02 AM: Started saving build plugins
10:25:02 AM: Finished saving build plugins
10:25:02 AM: Started saving pip cache
10:25:02 AM: Finished saving pip cache
10:25:02 AM: Started saving emacs cask dependencies
10:25:03 AM: Finished saving emacs cask dependencies
10:25:03 AM: Started saving maven dependencies
10:25:03 AM: Finished saving maven dependencies
10:25:03 AM: Started saving boot dependencies
10:25:03 AM: Finished saving boot dependencies
10:25:03 AM: Started saving rust rustup cache
10:25:03 AM: Finished saving rust rustup cache
10:25:03 AM: Started saving go dependencies
10:25:03 AM: Finished saving go dependencies
10:25:03 AM: Build script success
10:25:03 AM: Section completed: building
10:25:04 AM: Starting post processing
10:25:04 AM: Post processing - HTML
10:25:04 AM: Uploading Cache of size 215.1MB
10:25:04 AM: Post processing - header rules
10:25:05 AM: Post processing - redirect rules
10:25:05 AM: Post processing done
10:25:05 AM: Section completed: postprocessing
10:25:05 AM: Site is live ✨
10:25:06 AM: Section completed: cleanup
10:25:06 AM: Finished processing build request in 1m3.872s

Function logs

Function logs
# Paste logs here

Hi @Crowl3y
Can you try following to disable automatic installation:

Go to Site Settings -> Build & deploy
In Build Settings there probably is now Runtime: Gatsby:

Edit Settings and you should be able to remove / unselect Gatsby

I will be looking to fix the problem but above should be viable workaround

Hi @pieh, thanks for the quick response. I went into Build Settings and there was no runtime set, so no-go sorry :/

Ah, I don't have context around other ways to disable the plugin unfortunately. I did prepare a potential fix for your scenario in https://github.com/netlify/netlify-plugin-gatsby/pull/562


feat: port Archive.Wiedijk100Theorems.AscendingDescendingSequences

I've obscured the definition of ab so these workarounds and additional maxHeartbeats are unnecesarry anymore.


Eit, i want go to the moon

That is my commit to the report :D

Hi Oscar, this it mi commit to de project ejejjeje sorry for my english


Update authint version

Updates the bittensor version that authinterceptor checks against from 370 -> 510.

Should this be into master or #1394 be into new_staging ?


Estimators Clarification.

Hi guys,
I read the rc init.d scripts and have something I cannot understand:
From: Firmware/ROMFS/px4fmu_common/init.d/rc.fw_apps
we have the default estimator for FW is EKF.
From MC Firmware/ROMFS/px4fmu_common/init.d/rc.mc_apps we have:
3 options INAV, LPE, and the third EKF2.
So now my question is what is the situation for  VTOL?
From: Firmware/ROMFS/px4fmu_common/init.d/rc.vtol_apps
I see estimators only for the MC mode of the VTOL. What is the estimator when the VTOL is in FW? I don't see ekf as option nor we start the ekf in the VTOL.
Can somebody clarify the situation?
Also I cannot understand something. Is EKF2 attitude and position estimator at the same time? This is how I understand it BTW...

Yes EKF2 estimates both attitude and position.

@tubeme: Can you please put ``` around your pasted code? Otherwise, it's hard to read.

@julianoes Sorry for the mess... Couldn't format it. Now it is better.

See this page: http://dev.px4.io/advanced-switching_state_estimators.html
@tumbili: what about VTOL?

I saw this page. Actually it was added just after I posted this issue...
But again did not find the answer there about VTOL?

For multirotors and VTOL use the parameter SYS_MC_EST_GROUP to chose between the following configurations.
At the moment only the depriciated EKF estimator is used for planes (non VTOL). It will soon be replaced by EKF2.

It is written like this in the dev guide.


Task 4: Create a Directory and a File

Issue: #5
commands used
mkdir Task4
touch Task4/Task4.txt

Hey @Navigam1108
Thanks for opening this PR 🚀. Mentor will review your pull request soon and till then, keep contributing and stay calm.
Thanks for contributing in OpenCode'24 ✨✨!

Hey @Navigam1108
Your PR has been merged 🥳🥳 and you have earned 10 points.
Thanks for contributing in OpenCode'24 ✨✨


VideoRoom: RoomId wrong type

Janus VideoRoom does not require that the roomId is of type int. It is allowed to use strings instead if the option: string_ids is set to true.
Holds also for all participants uuid.

Yes that might have missed out but maybe in next release we can accommodate for string as room id. Although if you want you can open a pr and i would gladly accept it since i am bit busy these days

I'll see what I can do. I rather help improving this plugin, than creating one on my own.

Should not have been closed. roomId should be of type dynamic.
string_ids == false: Janus expects int, and returns int for publisherId
string_ids == true: Janus expects string, and returns string for publisherId
I will run my code again, and provide a list of places where updates are required.

ahh i see fixing it right away

@UserSense you can verify now should work fine across all major plugins

I will do a check for videoRoom with string_ids == true.

At the moment I found the following in VideoRoom:
interfacese/video_room/video_room/events/video_room_event.dart
copyWith
int? room, -> dynamic room,
VideoRoomEvent.fromMap
map['room'] as int, -> map['room'],
interfacese/video_room/video_room/events/video_room_joined_event.dart
int? id; -> dynamic id; in VideoRoomJoinedEvent
int? id; -> dynamic id; in Publishers
Example response when joining, both room and id are strings in this case.
{videoroom: joined, room: 198, description: Room 198, id: e7f8e202-61ca-4b7e-bec0-828610f1e917, private_id: 348602811, publishers: [], attendees: []}
interfacese/video_room/video_room/events/video_room_list_participants.dart
int? id; -> dynamic id; in Participants

hi, the issue does not seem to have been fixed

now check made some fixes

Closing then, let me know if you see any discrepancies related to this change or the issue in general


LensAssembly x PlanarShape

Minor changes to LensAssembly to make it easier to work with, e.g. combining Rectangles, Hexagons and Ellipses into one PlanarShape Vector.

Codecov Report

Merging #273 (eb62718) into main (351427d) will decrease coverage by 4.32%.
The diff coverage is 62.50%.

@@            Coverage Diff             @@
##             main     #273      +/-   ##
==========================================
- Coverage   53.93%   49.61%   -4.33%
==========================================
  Files          78       78
  Lines        7056     7030      -26
==========================================
- Hits         3806     3488     -318
- Misses       3250     3542     +292

Impacted Files
Coverage Δ

src/Optical/LensAssembly.jl
54.62% <60.86%> (+5.68%)
:arrow_up:

src/Optical/Paraxial.jl
69.56% <100.00%> (ø)

src/Vis/VisRepeatingStructures.jl
0.00% <0.00%> (-93.03%)
:arrow_down:

src/RepeatingStructures/Lattice.jl
7.14% <0.00%> (-64.29%)
:arrow_down:

src/Geometry/CSG/CSG.jl
31.08% <0.00%> (-52.13%)
:arrow_down:

src/RepeatingStructures/Cluster.jl
0.00% <0.00%> (-51.86%)
:arrow_down:

src/RepeatingStructures/HexagonalLattice.jl
0.00% <0.00%> (-46.48%)
:arrow_down:

src/Examples/repeating_structure_examples.jl
0.00% <0.00%> (-28.27%)
:arrow_down:

src/Vis/Visualization.jl
0.00% <0.00%> (-8.88%)
:arrow_down:

src/Geometry/Primitives/Sphere.jl
84.90% <0.00%> (-7.55%)
:arrow_down:

... and 8 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 351427d...eb62718. Read the comment docs.

@alfredclwong the allocations test is still failing so I assume this is not ready to be approved?


Refactor batching server to support coingecko and polygon.io

What changed

Updates relevant dependencies
Replaces structopt with clap for argument parsing
Adds implementations for querying prices from polygon.io, coingecko, and 'custom' endpoints (for now just the AMPE price from the squid)
Removes queries to the DIA endpoint
The supply field uses the data of the '24-hour trading volume' field. This aligns to the previous implementation which was using the 24 hour trading volume reported by DIA, though the data apparently differs a lot. This doesn't matter too much as we don't use the supply field for anything.
Simplifies the overall structure and unifies types.

How it works
The PriceApi in src/api/mod.rs is the high-level interface that can be used to query quotations for all supported assets. The PriceApiImpl will try to query prices from all supported endpoints. While the get_quotations() function returns a Result, it will never return an error, it will just log any errors that are encountered for any endpoint. I decided to implement it this way because it can always happen that a query fails for some reason and we would not like the batching server to stop because of this. All we can do is log (and possibly also send a reporting message somewhere).
We are now using a hardcoded mapping in convert_to_coingecko_id() in src/api/coingecko.rs. We should soon change the CustomMetadata of our runtimes, replacing the diaKeys field with a new type that allows to directly specify the coingecko identifier. This change would require a runtime upgrade (with a migration) and a root transaction to set the new metadata fields though. For the time being, the hardcoded mapping will require us to touch the code every time we want to add support for a new asset.
The API keys needed for Polygon and Coingecko can be passed as CLI arguments or via env variables.
Notes
While the response from polygon.io contains the timestamp of the last bid/ask placed, see here, I refrained from using that timestamp and instead used the timestamp of when the query was performed. This is because even if the last bid/ask was placed a while ago (according to the timestamp in the response), this does not necessarily mean that the price info is stale but could mean that trading is closed.
Testing
I tested this with the Foucoco runtime in Zombienet and the offchain-worker was able to feed the prices appropriately.
Closes #20.

I refactored this again to:

support ENV variables for all configuration parameters
query fiat prices in a batch instead of single requests
ignore the capitalization of supplied currencies (all currencies are transformed to and compared with uppercase letters)

I tested it again with the offchain worker on Foucoco zombienet and it looks good to me. @pendulum-chain/devs please have another look.


fixes abi contract reference for acquire_data

Codecov Report
Patch and project coverage have no change.

Comparison is base (61e08bf) 75.07% compared to head (c8e6866) 75.07%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #567   +/-   ##
=======================================
  Coverage   75.07%   75.07%
=======================================
  Files          55       55
  Lines        3362     3362
=======================================
  Hits         2524     2524
  Misses        838      838

Flag
Coverage Δ

unittests
75.07% <ø> (ø)

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

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Change the assignment paradigm of the allocatable array in test-drive demos

Currently, test-drive uses this paradigm:
testsuites = [ &
    new_testsuite("suite1", collect_suite1), &
    new_testsuite("suite2", collect_suite2) &
    ]

In fpm test -V with default flags will result in the following warning:
test\check.f90:17:54:

   17 |     type(testsuite_type), allocatable :: testsuites(:)
      |                                                      ^
note: 'testsuites' declared here
test\check.f90:28:18:

   28 |                  ]
      |                  ^
Warning: 'testsuites.dim[0].lbound' may be used uninitialized [-Wmaybe-uninitialized]

Should we pursue zero warnings here and use the following allocation style to update the test-drive demos?
allocate (testsuites, source=[ &
          new_testsuite("suite1", collect_suite1), &
          new_testsuite("suite2", collect_suite2) &
          ])

This looks like a false-positive message from the compiler to me. There is
no such use. If this change pacifies the compiler, then perhaps such a
change is desirable, but I must say the code looks more complicated and it
seems less efficient to me (that does not really matter in this case, but
it constructs the combined array, then allocates space to store that amount
of memory, copies the contents and then cleans up the temporary).
How about:
allocate( testsuites(0) )
testsuites = ...
with a proper comment as to why?
Op vr 2 sep. 2022 om 04:06 schreef zoziha @.***>:

Currently, test-drive uses this paradigm:
testsuites = [ &
new_testsuite("suite1", collect_suite1), &
new_testsuite("suite2", collect_suite2) &
]
In fpm test -V with default flags will result in the following warning:
test\check.f90:17:54:
17 |     type(testsuite_type), allocatable :: testsuites(:)
|                                                      ^
note: 'testsuites' declared here
test\check.f90:28:18:
28 |                  ]
|                  ^
Warning: 'testsuites.dim[0].lbound' may be used uninitialized [-Wmaybe-uninitialized]
Should we pursue zero warnings here and use the following allocation
style to update the test-drive demos?
allocate (testsuites, source=[ &
new_testsuite("suite1", collect_suite1), &
new_testsuite("suite2", collect_suite2) &
])
—
Reply to this email directly, view it on GitHub
https://github.com/fortran-lang/test-drive/issues/22, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAN6YRYW4ETYD54XPNZXJVDV4FOITANCNFSM6AAAAAAQC335YY
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

This is indeed a false positive warning. We use automatic LHS allocation here. An alternative would be to allocate the array with a dummy size of zero and than assign.

Actually, I think LHS is the most efficient, it only involves fewer operations; but I also feel that allocate(.., source=..) will be optimized by the compiler, I tried to write performance test code below, it seems that we are too worrying about the impact of a small amount of allocation on performance, I believe that the number of unit tests for ordinary users will not reach the order of N=10000000. Even if it is achieved, the efficiency difference of these schemes will be very close:

Bench Code with N=10000000
!> Time functions
module time_m

    implicit none
    private

    public :: tic, toc

    integer, save :: time_save !! save the time

contains

    !> Start timer
    impure subroutine tic()
        call system_clock(time_save)
    end subroutine tic

    !> Stop timer and return the time
    impure subroutine toc(t)
        class(*), optional :: t    !! time in seconds
        integer :: time_now, time_rate

        call system_clock(time_now, time_rate)

        associate (dt => real(time_now - time_save)/time_rate)

            if (present(t)) then
                select type (t)
                type is (real)
                    t = dt
                type is (double precision)
                    t = real(dt, 8)
                type is (integer)
                    t = nint(dt)
                type is (character(*))
                    write (*, "(2a,g0.3,a)") t, ', time elapsed: ', dt, " s"
                class default
                    write (*, '(a)') 'Error: unknown type of t in toc()'
                end select
            else
                write (*, "(a,g0.3,a)") 'Time elapsed: ', dt, " s"
            end if

        end associate

    end subroutine toc

end module time_m

program main

    use time_m, only: tic, toc
    implicit none

    type node_t
        real(8), allocatable :: item(:)
    end type node_t

    integer, parameter :: N = 10000000
    type(node_t) :: x(N), y(N), z(N)
    integer :: i

    call tic()
    do i = 1, N
        x(i)%item = [real(8) :: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    end do
    call toc("1. LHS")

    call tic()
    do i = 1, N
        allocate (z(i)%item, source=[real(8) :: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
    end do
    call toc("2. allocate(z, source=..)")

    call tic()
    do i = 1, N
        allocate (y(i)%item(0))
        y(i)%item = [real(8) :: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    end do
    call toc("3. allocate(y(0)), LHS")

end program main

>> fpm run --profile release   # On Windows-MSYS2 gfortran, N=10000000 (on my laptop)
1. LHS, time elapsed: 1.73 s
2. allocate(z, source=..), time elapsed: 1.86 s
3. allocate(y(0)), LHS, time elapsed: 3.30 s

On godbolt.org with N=300000:
# ifort 2021.6.0
1. LHS, time elapsed: .593E-01 s
2. allocate(z, source=..), time elapsed: .636E-01 s
3. allocate(y(0)), LHS, time elapsed: .893E-01 s
# gfortran 12.2
1. LHS, time elapsed: 0.410E-1 s
2. allocate(z, source=..), time elapsed: 0.420E-1 s
3. allocate(y(0)), LHS, time elapsed: 0.570E-1 s

From the bench results, we can see that the performances of 1 and 2 are close, but the efficiency ranking is 1 > 2 > 3.
Using allocate(.., source=..) does make the code look a little unintuitive (complicated), but in fact allocate(.., source=..) is the way we may use most.

The collect interface is only invoked once, the actual performance critical part is running the body of the tests which are referenced via a procedure pointer. I wouldn't worry too much about the performance difference between those solutions.


Bug: failed to create ipfs node

sudo bacalhau serve \
   --node-type compute,requester \
   --peer none \
   --private-internal-ipfs=false \
   --job-selection-accept-networked
2024/02/24 05:11:33 failed to sufficiently increase receive buffer size (was: 208 kiB, wanted: 2048 kiB, got: 416 kiB). See https://github.com/quic-go/quic-go/wiki/UDP-Receive-Buffer-Size for details.
error creating IPFS node: failed to serve API: failed to listen on api multiaddr: listen tcp6 [::1]:0: bind: cannot assign requested address
root@C.9774587:~/data/ipfs$

System info:
nproc
128

Note: that the buffer size warning pops up in older versions but it doesn't crash


Handling empty string as a "split char by char" pattern

Fixes #16

cool, merging.

merged into 1.0.0


Remove Cycle in Linked-List in C, C++, Java & Python

Is your feature request related to a problem? Please describe.
Given a linked list. If the linked list contains a loop, return True and remove the loop.
A linked list contains a cycle if it consists of a node that can be reached again by continuously following the next pointer.
Additional context

@Kumar-laxmi I would like to work on this issue. Could you please assign it to me.
Thank you!

@Kumar-laxmi please assign this to me under SSOC'23. I'm ready to contribute in all 4 languages

Assigned!
@shanvijha30 : C, C++, Java & Python

I would like to work on this issue, kindly assign this to me.

@Kumar-laxmi .It would be a great opportunity to work on it in cpp. Please assign me this.

Hi, I would like to contribute for this issue, in Java. Can you please assign it to me.


Fix WPS execute outputs parsing assuming string

Related Issue / Discussion
When parsing the XML of the WPS execute request (in parse_post_execute):
https://github.com/geopython/pywps/blob/88d2d4d5d0b4c1d1c39b0eaacf3e22d0b835d01b/pywps/app/WPSRequest.py#L280
The outputs that do not provide a mimetype explicitly are defaulted to None:
https://github.com/geopython/pywps/blob/88d2d4d5d0b4c1d1c39b0eaacf3e22d0b835d01b/pywps/app/WPSRequest.py#L590
When those output definitions eventually reach the following call, the field mimetype exists and is None, making both the mimetype != '' compare and 'MimeType ' + mimetype + ' not valid' fail (raises cannot concatenate non-string).
https://github.com/geopython/pywps/blob/cd71ee76c0f425e1267c842713bb634f800e7e2a/pywps/app/Process.py#L453-L479
This PR simply sets it to the default ''
Additional Information
Contribution Agreement
(as per https://github.com/geopython/pywps/blob/master/CONTRIBUTING.rst#contributions-and-licensing)

[x] I'd like to contribute [feature X|bugfix Y|docs|something else] to PyWPS. I confirm that my contributions to PyWPS will be compatible with the PyWPS license guidelines at the time of contribution.
[x] I have already previously agreed to the PyWPS Contributions and Licensing Guidelines

Coverage remained the same at 0.0% when pulling 9e9dc236a96c986312b1987b4c94fa0c3bafbe79 on fmigneault:fix-mimetype-none into 16355299bc3147dd8215d0d13b78c49b4380c50e on geopython:pywps-4.4.

@fmigneault thanks :) Should we do a cherry-pick to bring this to the main branch?

@cehbrecht Yes. I believe this will still be an issue in main.


http://doi.org/10.15128/r25x21tf409. Download interrupted after a period of time.

http://doi.org/10.15128/r25x21tf409. Download interrupted after a period of time.

I have just tested this from an off-site location using the provided download scripts and all seems to work fine as the downloads pass all of the MD5 checks:
user@host[/tmp/fire-detection-cnn]  date
Thu 27 Aug 10:39:22 BST 2020
user@host[/tmp/fire-detection-cnn] sh ./download-models.sh; sh ./download-dataset.sh
Downloading ICIP 2018 Fire Detection CNN (FireNet / InceptionV1-OnFire) models ...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  636M  100  636M    0     0  2881k      0  0:03:46  0:03:46 --:--:-- 4144k
checking the MD5 checksum for downloaded ICIP 2018 Fire Detection CNN (FireNet / InceptionV1-OnFire) models ...
dunnings-2018-fire-detection-pretrained-models.zip: OK
Unpacking the compressed file (using unzip -q)...
Tidying up...
... completed -> required ICIP 2018 Fire Detection CNN (FireNet / InceptionV1-OnFire) models are now in models/

Downloading ICLMA 2019 Fire Detection CNN (InceptionV3-OnFire / InceptionV4-OnFire) models ...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  151M  100  151M    0     0  2615k      0  0:00:59  0:00:59 --:--:-- 2570k
checking the MD5 checksum for downloaded ICLMA 2019 Fire Detection CNN (InceptionV3-OnFire / InceptionV4-OnFire) models ...
samarth-2019-fire-detection-pretrained-models.zip: OK
Unpacking the compressed file (using unzip -q)...
Tidying up...
... completed -> required ICLMA 2019 Fire Detection CNN (InceptionV3-OnFire / InceptionV4-OnFire) models are now in models/
Downloading ICIP 2018 (Dunnings) dataset ...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 10.4G  100 10.4G    0     0  2787k      0  1:05:39  1:05:39 --:--:-- 3683k
checking the MD5 checksum for downloaded ICIP 2018 (Dunnings) dataset ...
fire-dataset-dunnings-r2d217qp536-version1.zip: OK
....

If you are downloading using other tools or a browser perhaps use an alternative tool that supports resuming interrupted downloads or alternatively use the provided download scripts directly. There appears to be no issue with the server when tested, so it must be with the tools you are using or your internet connection as far as I can tell.


a broken query stops dnstap_receiver to work.

dnstap_reciever stops working when receiving a dns query with (qdcount>0) and (no qtype&qclass), which is broken as a query but some abuser sends. Please take a look at the following error message.

Task exception was never retrieved
future: <Task finished coro=<cb_onconnect() done, defined at /path/to/dnstap-receiver/dnstap_receiver/inputs/input_socket.py:13> exception=error('unpack requires a buffer of 4 bytes')>
Traceback (most recent call last):
  File "/path/to/dnstap-receiver/dnstap_receiver/inputs/input_socket.py", line 67, in cb_onconnect
    await dnstap_decoder.cb_ondnstap(dnstap_protobuf, payload, cfg, queues_list, stats, geoip_reader, cache)
  File "/path/to/dnstap-receiver/dnstap_receiver/inputs/dnstap_decoder.py", line 128, in cb_ondnstap
    qname, qtype = dns_parser.decode_question(dns_payload)
  File "/path/to/dnstap-receiver/dnstap_receiver/dns/parser.py", line 20, in decode_question
    qtype, qclass  = struct.unpack('!HH', buf[1:5])
struct.error: unpack requires a buffer of 4 bytes

This dnstap_receiver locates behind nsd with the following dnstap configuration.

dnstap:
        dnstap-enable: yes
        dnstap-socket-path: "/var/run/nsd/dnstap.sock"
        dnstap-send-identity: no
        dnstap-send-version: no
        dnstap-log-auth-query-messages: yes

and invoking command line is as follows.

dnstap_receiver -v -u /var/run/nsd/dnstap.sock -c my.conf

[my.conf]
filter:
  qname-regex: "[a-z0-9]{63}.example.org."
output:
  stdout:
    enable: true
    format: json
web-api:
  enable: false

We might need to catch the task exception. My quick hack follows. (not tested enough)

$ diff -u dnstap_decoder.py.orig dnstap_decoder.py
--- dnstap_decoder.py.orig	2021-06-29 23:32:38.831166000 +0900
+++ dnstap_decoder.py	2021-07-01 16:30:16.538717000 +0900
@@ -125,10 +125,14 @@

     # common params
     if dns_qdcount:
-        qname, qtype = dns_parser.decode_question(dns_payload)
-        tap["qname"] = qname.decode(errors="ignore")
-        tap["rrtype"] = dns_rdatatypes.RDATATYPES[qtype]
-
+        try:
+            qname, qtype = dns_parser.decode_question(dns_payload)
+        except:
+            clogger.warn('Dnstap decorder - no qname/qtype though dns_qdcount > 0: %s' % dns_payload)
+        else:
+            tap["qname"] = qname.decode(errors="ignore")
+            tap["rrtype"] = dns_rdatatypes.RDATATYPES[qtype]
+
     tap["rcode"] = dns_rcodes.RCODES[dns_rcode]
     tap["id"] = dns_id

Thank you very much for your developing such a nice software. It helps me a lot.

thanks to report this issue.
I pushed a commit to be more permissive during the decoding.

Thank you very much for your patch. I am running new version and will watch what will happen.
btw, here are real world examples of the abusing dns messages just for your information.
2021-07-03 20:06:30,062 WARNING Dnstap decorder - no qname/qtype though dns_qdcount > 0: b'\x00\x00)%(\x00\x00\x00\x00\x00\x00\x00'
2021-07-04 02:14:28,019 WARNING Dnstap decorder - no qname/qtype though dns_qdcount > 0: b'\xdd\x11\x01 \x00\x01\x00\x00\x00\x00\x00\x00\x07version\x04bind\xc0\x1b\x00\x10\x00\x03'

Thank you very much and I think the problem has been fixed by your patch.

Fix included in the new v4.4.0 release.


Use of akaze instead of hahog

Hi,
I want to see what are the results of using only akaze algorithm in the feature detection and extraction. i guess Hahog is default. what changes do I have to make and where do I have to make them to run using only akaze?
Please help.

You can set the option
feature_type: AKAZE

in your config.yaml file.
You can check the list of options available here https://github.com/mapillary/OpenSfM/blob/master/opensfm/config.py#L10


Zlib decompress fix

#336 fixed.

Can't this argument to decompress be somehow calculated before call?

We shouldn't be relying on urllib3 for decompression right now, actually.

The fact that we are is a bug.

We shouldn't be relying on urllib3 for decompression right now, actually.
The fact that we are is a bug.

@kennethreitz I would agree. FWIW, I've come across some issues using requests (urllib3) with some gzipped responses.

This is a new bug that was introduced temporarily to fix a bug with our decompression. I'll use urllib3's deflate functions, but from requests.

@kennethreitz Any reasonable guesses as to when it might be squashed? Thanks very much.

Fixed urllib3 bug. Decided to always use stream decoding.


How to generate tags file which can be recognized by ycmd using GNU GLOBAL?

Firstly, through looking up ycmd's varibles about tags, I set ycmd-tag-files  to auto and the ycmd-default-tags-file-name to GTAGS(I use GNU GLOBAL as tagging system). I found it doesn't work.
Secondly, by viewing the history  issue #150 , I realized it that tags file should be generated with --fields=+l option using ctags.  So, How to  generate tags file which can be recognized by ycmd using GNU GLOBAL? Additionally, I use pygments and universal ctags as plug-in parser in a python project.

See here in YouCompleteMe readme the only supported format is with exubarant ctags.
GNU Global is not supported.

@ptrv Ok. Just now I used command ctags -e -R --fields+=l to generate ‘TAGS’ file, and set ycmd-default-tags-file-name to TAGS. But finally it didn't collect identifiers from TAGS.

you shouldn't use the -e option. That is not supported for ycmd. That's why you can leave the default value of ycmd-default-tags-file-name

d:/WorkSpace//TAGS and d:/WorkSpace/tags are the same file
Error loading tags-file: (user-error File d:/WorkSpace/TAGS is not a valid tags table)

It seems tags file would be turn to TAGS automatically

@ptrv Help me solve this.

d:/WorkSpace//TAGS and d:/WorkSpace/tags are the same file
Error loading tags-file: (user-error File d:/WorkSpace/TAGS is not a valid tags table)

What is reporting this? ycmd, some emacs package, or what?

How to know the package which report this?

Where are you seeing it? Is ycmd printing it in the ycmd-server buffer?
On Wed, Sep 27, 2017 at 8:32 AM moyotar<EMAIL_ADDRESS>wrote:

How to know the package which report this?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/abingham/emacs-ycmd/issues/445#issuecomment-332422859,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAE1eBvSv9na_q_hGvHXI5H53OGslWK4ks5smev4gaJpZM4PaavE
.

In *Messages* buffer.

@abingham Maybe it doesn't affect ycmd. In *ycmd-server*, I find nothing about tags file.

I think the problem is related to the case insensitive file system. If you have both files tags and TAGS Emacs will always find TAGS first, even if you have spacified tags. I had the same problem on MacOS with case insensitive file system. So either remove TAGS or set a different file name for the tags file for ycmd with the option ycmd-default-tags-file-name. How exactly you have to create the tags file please look up in the ycmd or youcompleteme project. You cannot use ctags with the -e option.

I used ctags -f "mytags" -R --fields=+l to generate tags file and set ycmd-default-tags-file-name to mytags. But, it didn't collect any thing from tags file and had nothing output about tags file.


AWS UnauthorizedOperation

Hi,
Been using Teevity and moved over to using a dockerized container. Currently I'm having an issue with any AWS calls it seems but having a hard time tracking down which one exactly.
Any chance anyone could help out here?
| Error 2020-01-07 21:45:30,727 [localhost-startStop-1] ERROR BootStrap  - Startup failed
Message: You are not authorized to perform this operation.  On a local machine? On an EC2
instance? Somewhere else (Fargate, ...)?
Which mechanism are you using to provide AWS rights to your container (
AWS AK/SK in the properties file, IAM Role, ...)?

And finally, you mentioned you have been using Teevity/Ice already.
In that previous setup, how were you providing the credentials?
Thanks!
Nicolas
--
Nicolas Fonrose | Teevity | Founder
+<IP_ADDRESS>.43.31
https://teevity.com - Cloud Costs Analytics for AWS, GCP and Azure powered
by NetflixOSS Ice
twitter - @nfonrose / @teevity
On Tue, Jan 7, 2020 at 11:10 PM Boojs<EMAIL_ADDRESS>wrote:

Hi,
Been using Teevity and moved over to using a dockerized container.
Currently I'm having an issue with any AWS calls it seems but having a hard
time tracking down which one exactly.
Any chance anyone could help out here?
`| Error 2020-01-07 21:45:30,727 [localhost-startStop-1] ERROR BootStrap -
Startup failed
Message: You are not authorized to perform this operation.
Reply to this email directly, view it on GitHub
https://github.com/jonbrouse/docker-ice/issues/45?email_source=notifications&email_token=AAAJJJMQZAXZ3KLMSVKGLMLQ4T4W3A5CNFSM4KD7ZFEKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4IETO24Q,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAJJJIHX4RXWLCTJFQ5723Q4T4W3ANCNFSM4KD7ZFEA
.


Add very heavy rain icon

Codecov Report

Merging #189 (1c2ee71) into main (691ff58) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main     #189   +/-   ##
=======================================
  Coverage   91.82%   91.83%
=======================================
  Files          10       10
  Lines         832      833    +1
=======================================
+ Hits          764      765    +1
  Misses         68       68

Impacted Files
Coverage Δ

weather_command/_weather.py
100.00% <100.00%> (ø)

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 691ff58...1c2ee71. Read the comment docs.


[FEAT] Ability to Delete and Readd Users

This would be a partial workaround hopefully for the user's sensors not populating in Home Assistant. If we had the option to delete a user. then readd them and retrain so that it would see them as a new user and upon the first detection, should create the proper sensor. My son's sensor won't show up and he's one of the main people who will be using this so I thought it would be a good feature to add. Currently you can untrain images, but the user is still there and all you can do is retrain images for the user again or create a new person with a different name which just isnt practical. Let me know if there is anything I can do to help! And kick as work man!!!

Figured I’d add this question here instead of creating a new issue but if you think it should have a separate feature request, just let me know and I’ll make one.
I need to be able to untrain an image from a person. Obviously from time to time an image that isn’t who it should be gets accidentally trained. Just happened to me where I clicked on the wrong picture while selecting a bunch in the list of matches to be trained. If I foot the train section my only option is to untrain all images, which would be fine if I could then remove the offending image, but it doesn’t look like I can do that. Anyway, thanks again as always and have a very Merry Holidays!

Hey @LordNex, thanks for the detailed request and happy holidays! Also thank you for checking out and using Double Take, it really means a lot!
I believe there should be a way to accomplish what you are looking for, maybe the UI is just a bit confusing.
If you untrain all the images for a current user, you can then delete the user. The button should turn from "untrain" to "remove".

Also, for a sensor to show up, a successful match needs to occur. Is there a chance there just hasn't been a match of your son yet within Double Take?
For your second question, you should be able to untrain a single, multiple, or all images for a user.
If you select images and then use the trash button on the right hand side, you can untrain/delete just those images.

Let me know if that makes sense and will solve the issues you were having.

Thanks for getting back to me so fast. I hope you had a wonderful Christmas Holiday.
His sensor finally did show up. I had to reboot everything and get things just right so I knew it would do a proper recognition, and then it showed up.
And as far as removing a user and retraining images. That was exactly what I was looking for. Just never thought to untrain the images first. A little blurb in the help dock might be helpful to others.
The only issue I have left is related to how Double take connects to DeepStack, But there is an already open ticket from someone else that I've been commenting on and I'll update that as I have new info. Again, very cool and badass programming skills man. I've been in IT for over 20 years and have just now really started to get into programming. But while going down the rabbit hole that I was bound and determined to have my house recognize me and my family, let us in, and greet us like on Back to the Future 2 or something. I would have had to hack together IFTTT with a ton of automation and scripts to get what you've so elegantly accomplished. When I can I plan on throwing a few dollars your way as its well worth it.
I've leave this for you to close if you wish or use to update other people on. Thanks again!

Sorry for the delay. Thank you for all the compliments. If you run into any issues in the future or have other ideas feel free to open a new request.


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-target_6a008b20-9028-42be-b0c5-e2f2f37cadc6/pull/1 is merged into live branch.
Auto archive content to https://github.com/opstest2/docs-archive-test-target_6a008b20-9028-42be-b0c5-e2f2f37cadc6.git

Docs Build status updates of commit cab675d:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error: RepositoryUnauthorizedWithSourceCommit] Git data access to 'https://github.com/opstest2/docs-archive-test-source' (branch: Release_Archive_main_2022-01-25-03-17-30) is not authorized.. It looks like this might be the first time user: v-alji submitted a pull request to this repo. Before user can run builds in a pull request, he/she can enable 'v-alji' GitHub account in Docs by visiting Docs Portal (https://ops.microsoft.com). After enabling his/her account (v-alji), close and then reopen this pull request to start another build.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Middleman blog - categories and sub categories

I want to do something like this
blog.custom_collections = {
    category: {
      link: ':category.html',
      template: 'category.html'
    },
    subcategory: {
      link: '{category}/{subcategory}.html',
      template: 'subcategory.html'
    }
  }

then using, http://localhost:4567/category.html, i should see all articles listed under that category
and tthen using http://localhost:4567/category/subcategory.html,  i should see all articles listed under that subcategory which are inturn part of the main category
Here is live example:
http://www.shamalasuresh.com/category/bootstrap-themes/
http://www.shamalasuresh.com/category/bootstrap-themes/bootstrap-admin-dashboard-themes/
is this possible with middleman blog?
Thanks,
Suresh

It's possible, but you'd have to write some code. Something like:
resources.reduce({}) do |sum, r|
  r.data.category.each do |c|
    sum[c] ||= []
    sum[c] << r
  end

  sum
end.each do |category, resources|
  proxy "/#{category}.html", "category.html", locals: {
    category: category,
    resources: resources
  }
end

The above is pseudo code, but you get the idea.

I'm doing some issue-gardening 🌿🌷🌾 and came across this issue.
Sorry that this has lingered for quite a while! Did the suggestion by @tdreyno work? I'd suggest closing this issue.